Generated files from "codesearch-gen-chromiumos-amd64-generic" build 437, revision 161bcbe53d26aafa2a5835c934610d2e9259e93a
diff --git a/chroot/usr/lib64/perl5/5.24.4/x86_64-linux/CORE/config.h b/chroot/usr/lib64/perl5/5.24.4/x86_64-linux/CORE/config.h
index 17ee250..2397e0d 100644
--- a/chroot/usr/lib64/perl5/5.24.4/x86_64-linux/CORE/config.h
+++ b/chroot/usr/lib64/perl5/5.24.4/x86_64-linux/CORE/config.h
@@ -9,9 +9,9 @@
 
 /* Package name      : perl5
  * Source directory  : .
- * Configuration time: Thu Jun 16 14:26:35 PDT 2022
+ * Configuration time: Tue Jun  7 00:31:34 PDT 2022
  * Configured by     : Gentoo
- * Target system     : linux chromeos-ci-full-us-central2-c-x32-3-q2lp 5.4.0-117-generic #132~18.04.1-ubuntu smp thu jun 2 23:36:48 utc 2022 x86_64 intel(r) xeon(r) cpu @ 2.20ghz genuineintel gnulinux 
+ * Target system     : linux chromeos-ci-full-us-central2-c-x32-0-f62o 5.4.0-113-generic #127~18.04.1-ubuntu smp wed may 18 15:40:23 utc 2022 x86_64 intel(r) xeon(r) cpu @ 2.20ghz genuineintel gnulinux 
  */
 
 #ifndef _config_h_
@@ -1538,7 +1538,7 @@
  *	feature tests from Configure are generally more reliable.
  */
 #define OSNAME "linux"		/**/
-#define OSVERS "5.4.0-117-generic"		/**/
+#define OSVERS "5.4.0-113-generic"		/**/
 
 /* CAT2:
  *	This macro concatenates 2 tokens together.
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_device_policy.pb.cc b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_device_policy.pb.cc
new file mode 100644
index 0000000..e3fe146
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_device_policy.pb.cc
@@ -0,0 +1,39052 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: chrome_device_policy.proto
+
+#include "chrome_device_policy.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AccessibilitySettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AllowBluetoothProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AllowKioskAppControlChromeVersionProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AllowNewUsersProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AllowRedeemChromeOsRegistrationOffersProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AndroidKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AttestationSettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AutoCleanupSettigsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AutoUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_policy_5fcommon_5fdefinitions_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_BooleanPolicyProto_policy_5fcommon_5fdefinitions_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CameraEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CastReceiverNameProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DataRoamingEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAdvancedBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAllowedBluetoothServicesProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceArcDataSnapshotHoursProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAuthDataCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceBootOnAcProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceBorealisAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceCrostiniArcAdbSideloadingAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceDebugPacketCaptureAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceDisplayResolutionProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceDockMacAddressSourceProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceEcryptfsMigrationStrategyProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceExternalPrintServersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceExternalPrintServersProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceFamilyLinkAccountsAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceGpoCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceHeartbeatSettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceI18nShortcutsEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceKerberosEncryptionTypesProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceKeylockerForStorageEncryptionEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_DeviceLocalAccountInfoProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceLocalAccountsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLogUploadSettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenAutoSelectCertificateForUrls_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenExtensionsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenPrivacyScreenEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenWebUILazyLoadingProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceMachinePasswordChangeRateProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceNativePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceNativePrintersBlacklistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceNativePrintersProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceNativePrintersWhitelistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceOffHoursProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceOpenNetworkConfigurationProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePciPeripheralDataAccessEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePciPeripheralDataAccessEnabledProtoV2_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePolicyRefreshRateProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePowerPeakShiftProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePowerwashAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePrintersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePrintersBlocklistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePrintersProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceQuirksDownloadEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRebootOnUserSignoutProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceReportingProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRestrictedManagedGuestSessionEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceScheduledRebootProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceScheduledUpdateCheckProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceSecondFactorAuthenticationProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceShowLowDiskSpaceNotificationProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceSystemWideTracingEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUnaffiliatedCrostiniAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUsbPowerShareProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUserPolicyLoopbackProcessingModeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWallpaperImageProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWiFiAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWiFiFastTransitionEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWilcoDtcAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWilcoDtcConfigurationProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DisplayRotationDefaultProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EncryptedReportingPipelineConfigurationProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EphemeralUsersEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ExtensionCacheSizeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FeatureFlagsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GuestModeEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_HostnameUserConfigurableProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_policy_5fcommon_5fdefinitions_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_IntegerPolicyProto_policy_5fcommon_5fdefinitions_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_KioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginAuthenticationBehaviorProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginScreenDomainAutoCompleteProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginScreenInputMethodsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginScreenLocalesProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginScreenPowerManagementProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginVideoCaptureAllowedUrlsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ManagedGuestSessionPrivacyWarningsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_MetricsEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkHostnameProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkThrottlingEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_AppPackEntryProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_OBSOLETE_AppPackProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_DeviceLoginScreenSitePerProcessProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_DeviceProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_ForcedLogoutTimeoutsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_MinimumRequiredVersionProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_PinnedAppsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_ScreenSaverProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_StartUpUrlsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_SupervisedUsersSettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PluginVmAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PluginVmLicenseKeyProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_policy_5fcommon_5fdefinitions_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RebootOnShutdownProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ReleaseChannelProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RequiredClientCertificateForDeviceProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RevenDeviceHWDataUsageEnabledProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SAMLSettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SamlLoginAuthenticationTypeProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ShowUserNamesOnSigninProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_policy_5fcommon_5fdefinitions_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_StringListPolicyProto_policy_5fcommon_5fdefinitions_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_policy_5fcommon_5fdefinitions_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_StringPolicyProto_policy_5fcommon_5fdefinitions_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemSettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemTimezoneProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemUse24HourClockProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TPMFirmwareUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UnaffiliatedArcAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UptimeLimitProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UsbDetachableAllowlistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UsbDetachableWhitelistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UsbDeviceIdInclusiveProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UsbDeviceIdProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UserAllowlistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UserWhitelistProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_VariationsParameterProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_VirtualMachinesAllowedProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_WebKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_WeeklyTimeIntervalProto_chrome_5fdevice_5fpolicy_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_WeeklyTimeProto_chrome_5fdevice_5fpolicy_2eproto;
+namespace enterprise_management {
+class DevicePolicyRefreshRateProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePolicyRefreshRateProto> _instance;
+} _DevicePolicyRefreshRateProto_default_instance_;
+class UserWhitelistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UserWhitelistProto> _instance;
+} _UserWhitelistProto_default_instance_;
+class UserAllowlistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UserAllowlistProto> _instance;
+} _UserAllowlistProto_default_instance_;
+class AllowNewUsersProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AllowNewUsersProto> _instance;
+} _AllowNewUsersProto_default_instance_;
+class GuestModeEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<GuestModeEnabledProto> _instance;
+} _GuestModeEnabledProto_default_instance_;
+class ShowUserNamesOnSigninProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ShowUserNamesOnSigninProto> _instance;
+} _ShowUserNamesOnSigninProto_default_instance_;
+class DataRoamingEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DataRoamingEnabledProto> _instance;
+} _DataRoamingEnabledProto_default_instance_;
+class OBSOLETE_DeviceProxySettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_DeviceProxySettingsProto> _instance;
+} _OBSOLETE_DeviceProxySettingsProto_default_instance_;
+class CameraEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CameraEnabledProto> _instance;
+} _CameraEnabledProto_default_instance_;
+class MetricsEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<MetricsEnabledProto> _instance;
+} _MetricsEnabledProto_default_instance_;
+class ReleaseChannelProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ReleaseChannelProto> _instance;
+} _ReleaseChannelProto_default_instance_;
+class DeviceOpenNetworkConfigurationProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceOpenNetworkConfigurationProto> _instance;
+} _DeviceOpenNetworkConfigurationProto_default_instance_;
+class NetworkHostnameProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<NetworkHostnameProto> _instance;
+} _NetworkHostnameProto_default_instance_;
+class HostnameUserConfigurableProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<HostnameUserConfigurableProto> _instance;
+} _HostnameUserConfigurableProto_default_instance_;
+class DeviceReportingProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceReportingProto> _instance;
+} _DeviceReportingProto_default_instance_;
+class EphemeralUsersEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<EphemeralUsersEnabledProto> _instance;
+} _EphemeralUsersEnabledProto_default_instance_;
+class DeviceKeylockerForStorageEncryptionEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceKeylockerForStorageEncryptionEnabledProto> _instance;
+} _DeviceKeylockerForStorageEncryptionEnabledProto_default_instance_;
+class OBSOLETE_AppPackEntryProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_AppPackEntryProto> _instance;
+} _OBSOLETE_AppPackEntryProto_default_instance_;
+class OBSOLETE_AppPackProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_AppPackProto> _instance;
+} _OBSOLETE_AppPackProto_default_instance_;
+class OBSOLETE_PinnedAppsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_PinnedAppsProto> _instance;
+} _OBSOLETE_PinnedAppsProto_default_instance_;
+class OBSOLETE_ForcedLogoutTimeoutsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_ForcedLogoutTimeoutsProto> _instance;
+} _OBSOLETE_ForcedLogoutTimeoutsProto_default_instance_;
+class OBSOLETE_ScreenSaverProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_ScreenSaverProto> _instance;
+} _OBSOLETE_ScreenSaverProto_default_instance_;
+class AutoUpdateSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AutoUpdateSettingsProto> _instance;
+} _AutoUpdateSettingsProto_default_instance_;
+class OBSOLETE_StartUpUrlsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_StartUpUrlsProto> _instance;
+} _OBSOLETE_StartUpUrlsProto_default_instance_;
+class SystemTimezoneProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemTimezoneProto> _instance;
+} _SystemTimezoneProto_default_instance_;
+class SystemUse24HourClockProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemUse24HourClockProto> _instance;
+} _SystemUse24HourClockProto_default_instance_;
+class KioskAppInfoProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<KioskAppInfoProto> _instance;
+} _KioskAppInfoProto_default_instance_;
+class AndroidKioskAppInfoProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AndroidKioskAppInfoProto> _instance;
+} _AndroidKioskAppInfoProto_default_instance_;
+class WebKioskAppInfoProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<WebKioskAppInfoProto> _instance;
+} _WebKioskAppInfoProto_default_instance_;
+class DeviceLocalAccountInfoProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceLocalAccountInfoProto> _instance;
+} _DeviceLocalAccountInfoProto_default_instance_;
+class DeviceLocalAccountsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceLocalAccountsProto> _instance;
+} _DeviceLocalAccountsProto_default_instance_;
+class ManagedGuestSessionPrivacyWarningsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ManagedGuestSessionPrivacyWarningsProto> _instance;
+} _ManagedGuestSessionPrivacyWarningsProto_default_instance_;
+class AllowRedeemChromeOsRegistrationOffersProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AllowRedeemChromeOsRegistrationOffersProto> _instance;
+} _AllowRedeemChromeOsRegistrationOffersProto_default_instance_;
+class FeatureFlagsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<FeatureFlagsProto> _instance;
+} _FeatureFlagsProto_default_instance_;
+class UptimeLimitProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UptimeLimitProto> _instance;
+} _UptimeLimitProto_default_instance_;
+class VariationsParameterProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<VariationsParameterProto> _instance;
+} _VariationsParameterProto_default_instance_;
+class AttestationSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AttestationSettingsProto> _instance;
+} _AttestationSettingsProto_default_instance_;
+class AccessibilitySettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AccessibilitySettingsProto> _instance;
+} _AccessibilitySettingsProto_default_instance_;
+class OBSOLETE_SupervisedUsersSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_SupervisedUsersSettingsProto> _instance;
+} _OBSOLETE_SupervisedUsersSettingsProto_default_instance_;
+class LoginScreenPowerManagementProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LoginScreenPowerManagementProto> _instance;
+} _LoginScreenPowerManagementProto_default_instance_;
+class AutoCleanupSettigsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AutoCleanupSettigsProto> _instance;
+} _AutoCleanupSettigsProto_default_instance_;
+class SystemSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemSettingsProto> _instance;
+} _SystemSettingsProto_default_instance_;
+class SAMLSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SAMLSettingsProto> _instance;
+} _SAMLSettingsProto_default_instance_;
+class RebootOnShutdownProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RebootOnShutdownProto> _instance;
+} _RebootOnShutdownProto_default_instance_;
+class DeviceHeartbeatSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceHeartbeatSettingsProto> _instance;
+} _DeviceHeartbeatSettingsProto_default_instance_;
+class ExtensionCacheSizeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ExtensionCacheSizeProto> _instance;
+} _ExtensionCacheSizeProto_default_instance_;
+class LoginScreenDomainAutoCompleteProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LoginScreenDomainAutoCompleteProto> _instance;
+} _LoginScreenDomainAutoCompleteProto_default_instance_;
+class DeviceLogUploadSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceLogUploadSettingsProto> _instance;
+} _DeviceLogUploadSettingsProto_default_instance_;
+class DisplayRotationDefaultProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DisplayRotationDefaultProto> _instance;
+} _DisplayRotationDefaultProto_default_instance_;
+class DeviceLoginScreenPrivacyScreenEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceLoginScreenPrivacyScreenEnabledProto> _instance;
+} _DeviceLoginScreenPrivacyScreenEnabledProto_default_instance_;
+class DeviceDisplayResolutionProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceDisplayResolutionProto> _instance;
+} _DeviceDisplayResolutionProto_default_instance_;
+class AllowKioskAppControlChromeVersionProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AllowKioskAppControlChromeVersionProto> _instance;
+} _AllowKioskAppControlChromeVersionProto_default_instance_;
+class LoginAuthenticationBehaviorProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LoginAuthenticationBehaviorProto> _instance;
+} _LoginAuthenticationBehaviorProto_default_instance_;
+class UsbDeviceIdProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UsbDeviceIdProto> _instance;
+} _UsbDeviceIdProto_default_instance_;
+class UsbDetachableWhitelistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UsbDetachableWhitelistProto> _instance;
+} _UsbDetachableWhitelistProto_default_instance_;
+class UsbDeviceIdInclusiveProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UsbDeviceIdInclusiveProto> _instance;
+} _UsbDeviceIdInclusiveProto_default_instance_;
+class UsbDetachableAllowlistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UsbDetachableAllowlistProto> _instance;
+} _UsbDetachableAllowlistProto_default_instance_;
+class AllowBluetoothProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AllowBluetoothProto> _instance;
+} _AllowBluetoothProto_default_instance_;
+class DeviceWiFiAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceWiFiAllowedProto> _instance;
+} _DeviceWiFiAllowedProto_default_instance_;
+class DeviceQuirksDownloadEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceQuirksDownloadEnabledProto> _instance;
+} _DeviceQuirksDownloadEnabledProto_default_instance_;
+class LoginVideoCaptureAllowedUrlsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LoginVideoCaptureAllowedUrlsProto> _instance;
+} _LoginVideoCaptureAllowedUrlsProto_default_instance_;
+class DeviceWiFiFastTransitionEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceWiFiFastTransitionEnabledProto> _instance;
+} _DeviceWiFiFastTransitionEnabledProto_default_instance_;
+class NetworkThrottlingEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<NetworkThrottlingEnabledProto> _instance;
+} _NetworkThrottlingEnabledProto_default_instance_;
+class DeviceLoginScreenExtensionsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceLoginScreenExtensionsProto> _instance;
+} _DeviceLoginScreenExtensionsProto_default_instance_;
+class LoginScreenLocalesProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LoginScreenLocalesProto> _instance;
+} _LoginScreenLocalesProto_default_instance_;
+class LoginScreenInputMethodsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LoginScreenInputMethodsProto> _instance;
+} _LoginScreenInputMethodsProto_default_instance_;
+class DeviceWallpaperImageProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceWallpaperImageProto> _instance;
+} _DeviceWallpaperImageProto_default_instance_;
+class DeviceEcryptfsMigrationStrategyProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceEcryptfsMigrationStrategyProto> _instance;
+} _DeviceEcryptfsMigrationStrategyProto_default_instance_;
+class DeviceSecondFactorAuthenticationProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceSecondFactorAuthenticationProto> _instance;
+} _DeviceSecondFactorAuthenticationProto_default_instance_;
+class CastReceiverNameProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CastReceiverNameProto> _instance;
+} _CastReceiverNameProto_default_instance_;
+class WeeklyTimeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<WeeklyTimeProto> _instance;
+} _WeeklyTimeProto_default_instance_;
+class WeeklyTimeIntervalProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<WeeklyTimeIntervalProto> _instance;
+} _WeeklyTimeIntervalProto_default_instance_;
+class DeviceOffHoursProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceOffHoursProto> _instance;
+} _DeviceOffHoursProto_default_instance_;
+class DeviceNativePrintersProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceNativePrintersProto> _instance;
+} _DeviceNativePrintersProto_default_instance_;
+class DeviceNativePrintersAccessModeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceNativePrintersAccessModeProto> _instance;
+} _DeviceNativePrintersAccessModeProto_default_instance_;
+class DeviceNativePrintersBlacklistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceNativePrintersBlacklistProto> _instance;
+} _DeviceNativePrintersBlacklistProto_default_instance_;
+class DeviceNativePrintersWhitelistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceNativePrintersWhitelistProto> _instance;
+} _DeviceNativePrintersWhitelistProto_default_instance_;
+class DevicePrintersProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePrintersProto> _instance;
+} _DevicePrintersProto_default_instance_;
+class DevicePrintersAccessModeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePrintersAccessModeProto> _instance;
+} _DevicePrintersAccessModeProto_default_instance_;
+class DevicePrintersBlocklistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePrintersBlocklistProto> _instance;
+} _DevicePrintersBlocklistProto_default_instance_;
+class DevicePrintersAllowlistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePrintersAllowlistProto> _instance;
+} _DevicePrintersAllowlistProto_default_instance_;
+class DeviceExternalPrintServersProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceExternalPrintServersProto> _instance;
+} _DeviceExternalPrintServersProto_default_instance_;
+class DeviceExternalPrintServersAllowlistProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceExternalPrintServersAllowlistProto> _instance;
+} _DeviceExternalPrintServersAllowlistProto_default_instance_;
+class TPMFirmwareUpdateSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<TPMFirmwareUpdateSettingsProto> _instance;
+} _TPMFirmwareUpdateSettingsProto_default_instance_;
+class OBSOLETE_MinimumRequiredVersionProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_MinimumRequiredVersionProto> _instance;
+} _OBSOLETE_MinimumRequiredVersionProto_default_instance_;
+class DeviceLoginScreenAutoSelectCertificateForUrlsDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceLoginScreenAutoSelectCertificateForUrls> _instance;
+} _DeviceLoginScreenAutoSelectCertificateForUrls_default_instance_;
+class UnaffiliatedArcAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UnaffiliatedArcAllowedProto> _instance;
+} _UnaffiliatedArcAllowedProto_default_instance_;
+class DeviceKerberosEncryptionTypesProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceKerberosEncryptionTypesProto> _instance;
+} _DeviceKerberosEncryptionTypesProto_default_instance_;
+class DeviceUserPolicyLoopbackProcessingModeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceUserPolicyLoopbackProcessingModeProto> _instance;
+} _DeviceUserPolicyLoopbackProcessingModeProto_default_instance_;
+class OBSOLETE_DeviceLoginScreenIsolateOriginsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_DeviceLoginScreenIsolateOriginsProto> _instance;
+} _OBSOLETE_DeviceLoginScreenIsolateOriginsProto_default_instance_;
+class OBSOLETE_DeviceLoginScreenSitePerProcessProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OBSOLETE_DeviceLoginScreenSitePerProcessProto> _instance;
+} _OBSOLETE_DeviceLoginScreenSitePerProcessProto_default_instance_;
+class VirtualMachinesAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<VirtualMachinesAllowedProto> _instance;
+} _VirtualMachinesAllowedProto_default_instance_;
+class DeviceMachinePasswordChangeRateProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceMachinePasswordChangeRateProto> _instance;
+} _DeviceMachinePasswordChangeRateProto_default_instance_;
+class DeviceGpoCacheLifetimeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceGpoCacheLifetimeProto> _instance;
+} _DeviceGpoCacheLifetimeProto_default_instance_;
+class DeviceAuthDataCacheLifetimeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAuthDataCacheLifetimeProto> _instance;
+} _DeviceAuthDataCacheLifetimeProto_default_instance_;
+class SamlLoginAuthenticationTypeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SamlLoginAuthenticationTypeProto> _instance;
+} _SamlLoginAuthenticationTypeProto_default_instance_;
+class DeviceUnaffiliatedCrostiniAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceUnaffiliatedCrostiniAllowedProto> _instance;
+} _DeviceUnaffiliatedCrostiniAllowedProto_default_instance_;
+class PluginVmAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PluginVmAllowedProto> _instance;
+} _PluginVmAllowedProto_default_instance_;
+class PluginVmLicenseKeyProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PluginVmLicenseKeyProto> _instance;
+} _PluginVmLicenseKeyProto_default_instance_;
+class DeviceRebootOnUserSignoutProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceRebootOnUserSignoutProto> _instance;
+} _DeviceRebootOnUserSignoutProto_default_instance_;
+class DeviceWilcoDtcAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceWilcoDtcAllowedProto> _instance;
+} _DeviceWilcoDtcAllowedProto_default_instance_;
+class DeviceWilcoDtcConfigurationProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceWilcoDtcConfigurationProto> _instance;
+} _DeviceWilcoDtcConfigurationProto_default_instance_;
+class DevicePowerPeakShiftProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePowerPeakShiftProto> _instance;
+} _DevicePowerPeakShiftProto_default_instance_;
+class DeviceBootOnAcProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceBootOnAcProto> _instance;
+} _DeviceBootOnAcProto_default_instance_;
+class DeviceDockMacAddressSourceProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceDockMacAddressSourceProto> _instance;
+} _DeviceDockMacAddressSourceProto_default_instance_;
+class DeviceAdvancedBatteryChargeModeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAdvancedBatteryChargeModeProto> _instance;
+} _DeviceAdvancedBatteryChargeModeProto_default_instance_;
+class DeviceBatteryChargeModeProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceBatteryChargeModeProto> _instance;
+} _DeviceBatteryChargeModeProto_default_instance_;
+class DeviceUsbPowerShareProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceUsbPowerShareProto> _instance;
+} _DeviceUsbPowerShareProto_default_instance_;
+class DeviceScheduledUpdateCheckProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceScheduledUpdateCheckProto> _instance;
+} _DeviceScheduledUpdateCheckProto_default_instance_;
+class DevicePowerwashAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePowerwashAllowedProto> _instance;
+} _DevicePowerwashAllowedProto_default_instance_;
+class DeviceLoginScreenWebUsbAllowDevicesForUrlsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceLoginScreenWebUsbAllowDevicesForUrlsProto> _instance;
+} _DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_default_instance_;
+class SystemProxySettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProxySettingsProto> _instance;
+} _SystemProxySettingsProto_default_instance_;
+class RequiredClientCertificateForDeviceProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RequiredClientCertificateForDeviceProto> _instance;
+} _RequiredClientCertificateForDeviceProto_default_instance_;
+class DeviceCrostiniArcAdbSideloadingAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceCrostiniArcAdbSideloadingAllowedProto> _instance;
+} _DeviceCrostiniArcAdbSideloadingAllowedProto_default_instance_;
+class DeviceShowLowDiskSpaceNotificationProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceShowLowDiskSpaceNotificationProto> _instance;
+} _DeviceShowLowDiskSpaceNotificationProto_default_instance_;
+class DeviceFamilyLinkAccountsAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceFamilyLinkAccountsAllowedProto> _instance;
+} _DeviceFamilyLinkAccountsAllowedProto_default_instance_;
+class DeviceArcDataSnapshotHoursProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceArcDataSnapshotHoursProto> _instance;
+} _DeviceArcDataSnapshotHoursProto_default_instance_;
+class DeviceSystemWideTracingEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceSystemWideTracingEnabledProto> _instance;
+} _DeviceSystemWideTracingEnabledProto_default_instance_;
+class DevicePciPeripheralDataAccessEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePciPeripheralDataAccessEnabledProto> _instance;
+} _DevicePciPeripheralDataAccessEnabledProto_default_instance_;
+class DevicePciPeripheralDataAccessEnabledProtoV2DefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePciPeripheralDataAccessEnabledProtoV2> _instance;
+} _DevicePciPeripheralDataAccessEnabledProtoV2_default_instance_;
+class DeviceBorealisAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceBorealisAllowedProto> _instance;
+} _DeviceBorealisAllowedProto_default_instance_;
+class DeviceAllowedBluetoothServicesProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAllowedBluetoothServicesProto> _instance;
+} _DeviceAllowedBluetoothServicesProto_default_instance_;
+class DeviceDebugPacketCaptureAllowedProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceDebugPacketCaptureAllowedProto> _instance;
+} _DeviceDebugPacketCaptureAllowedProto_default_instance_;
+class DeviceScheduledRebootProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceScheduledRebootProto> _instance;
+} _DeviceScheduledRebootProto_default_instance_;
+class DeviceRestrictedManagedGuestSessionEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceRestrictedManagedGuestSessionEnabledProto> _instance;
+} _DeviceRestrictedManagedGuestSessionEnabledProto_default_instance_;
+class DeviceI18nShortcutsEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceI18nShortcutsEnabledProto> _instance;
+} _DeviceI18nShortcutsEnabledProto_default_instance_;
+class RevenDeviceHWDataUsageEnabledProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RevenDeviceHWDataUsageEnabledProto> _instance;
+} _RevenDeviceHWDataUsageEnabledProto_default_instance_;
+class DeviceLoginScreenWebUILazyLoadingProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceLoginScreenWebUILazyLoadingProto> _instance;
+} _DeviceLoginScreenWebUILazyLoadingProto_default_instance_;
+class EncryptedReportingPipelineConfigurationProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<EncryptedReportingPipelineConfigurationProto> _instance;
+} _EncryptedReportingPipelineConfigurationProto_default_instance_;
+class ChromeDeviceSettingsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeDeviceSettingsProto> _instance;
+} _ChromeDeviceSettingsProto_default_instance_;
+}  // namespace enterprise_management
+static void InitDefaultsscc_info_AccessibilitySettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AccessibilitySettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::AccessibilitySettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AccessibilitySettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AccessibilitySettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_AccessibilitySettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto.base,}};
+
+static void InitDefaultsscc_info_AllowBluetoothProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AllowBluetoothProto_default_instance_;
+    new (ptr) ::enterprise_management::AllowBluetoothProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AllowBluetoothProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AllowBluetoothProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AllowBluetoothProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_AllowKioskAppControlChromeVersionProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AllowKioskAppControlChromeVersionProto_default_instance_;
+    new (ptr) ::enterprise_management::AllowKioskAppControlChromeVersionProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AllowKioskAppControlChromeVersionProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AllowKioskAppControlChromeVersionProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AllowKioskAppControlChromeVersionProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_AllowNewUsersProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AllowNewUsersProto_default_instance_;
+    new (ptr) ::enterprise_management::AllowNewUsersProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AllowNewUsersProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AllowNewUsersProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AllowNewUsersProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_AllowRedeemChromeOsRegistrationOffersProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AllowRedeemChromeOsRegistrationOffersProto_default_instance_;
+    new (ptr) ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AllowRedeemChromeOsRegistrationOffersProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AllowRedeemChromeOsRegistrationOffersProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_AndroidKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AndroidKioskAppInfoProto_default_instance_;
+    new (ptr) ::enterprise_management::AndroidKioskAppInfoProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AndroidKioskAppInfoProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AndroidKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AndroidKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_AttestationSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AttestationSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::AttestationSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AttestationSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AttestationSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AttestationSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_AutoCleanupSettigsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AutoCleanupSettigsProto_default_instance_;
+    new (ptr) ::enterprise_management::AutoCleanupSettigsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AutoCleanupSettigsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AutoCleanupSettigsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AutoCleanupSettigsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_AutoUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AutoUpdateSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::AutoUpdateSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AutoUpdateSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AutoUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AutoUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_CameraEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CameraEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::CameraEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CameraEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CameraEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CameraEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_CastReceiverNameProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CastReceiverNameProto_default_instance_;
+    new (ptr) ::enterprise_management::CastReceiverNameProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CastReceiverNameProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CastReceiverNameProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CastReceiverNameProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_ChromeDeviceSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeDeviceSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::ChromeDeviceSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeDeviceSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<124> scc_info_ChromeDeviceSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 124, 0, InitDefaultsscc_info_ChromeDeviceSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_DevicePolicyRefreshRateProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_UserWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_GuestModeEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_DeviceProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_CameraEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_ShowUserNamesOnSigninProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DataRoamingEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AllowNewUsersProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_MetricsEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_ReleaseChannelProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceOpenNetworkConfigurationProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceReportingProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_EphemeralUsersEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_AppPackProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_ForcedLogoutTimeoutsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_ScreenSaverProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AutoUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_StartUpUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_PinnedAppsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_SystemTimezoneProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceLocalAccountsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AllowRedeemChromeOsRegistrationOffersProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_FeatureFlagsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_UptimeLimitProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_VariationsParameterProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AttestationSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AccessibilitySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_SupervisedUsersSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_LoginScreenPowerManagementProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_SystemUse24HourClockProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AutoCleanupSettigsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_SystemSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_SAMLSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_RebootOnShutdownProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceHeartbeatSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_ExtensionCacheSizeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_LoginScreenDomainAutoCompleteProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceLogUploadSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DisplayRotationDefaultProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AllowKioskAppControlChromeVersionProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_LoginAuthenticationBehaviorProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_UsbDetachableWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AllowBluetoothProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceQuirksDownloadEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_LoginVideoCaptureAllowedUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceLoginScreenExtensionsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_NetworkThrottlingEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceWallpaperImageProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_LoginScreenLocalesProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_LoginScreenInputMethodsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceEcryptfsMigrationStrategyProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceSecondFactorAuthenticationProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_CastReceiverNameProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceOffHoursProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceNativePrintersProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceNativePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceNativePrintersBlacklistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceNativePrintersWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_TPMFirmwareUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_MinimumRequiredVersionProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceLoginScreenAutoSelectCertificateForUrls_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_UnaffiliatedArcAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_NetworkHostnameProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceKerberosEncryptionTypesProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceUserPolicyLoopbackProcessingModeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_OBSOLETE_DeviceLoginScreenSitePerProcessProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_VirtualMachinesAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceMachinePasswordChangeRateProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_SamlLoginAuthenticationTypeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceUnaffiliatedCrostiniAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceWiFiFastTransitionEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceDisplayResolutionProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_PluginVmAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceGpoCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceAuthDataCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_PluginVmLicenseKeyProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceRebootOnUserSignoutProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceWilcoDtcAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceWilcoDtcConfigurationProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceWiFiAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DevicePowerPeakShiftProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceBootOnAcProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceDockMacAddressSourceProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceAdvancedBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceUsbPowerShareProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceScheduledUpdateCheckProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DevicePowerwashAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_BooleanPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base,
+      &scc_info_StringListPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base,
+      &scc_info_StringPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base,
+      &scc_info_SystemProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_IntegerPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base,
+      &scc_info_DeviceLoginScreenPrivacyScreenEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_RequiredClientCertificateForDeviceProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceCrostiniArcAdbSideloadingAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_ManagedGuestSessionPrivacyWarningsProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceExternalPrintServersProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceExternalPrintServersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DevicePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DevicePrintersBlocklistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DevicePrintersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DevicePrintersProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceShowLowDiskSpaceNotificationProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_UserAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_UsbDetachableAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceFamilyLinkAccountsAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceArcDataSnapshotHoursProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceSystemWideTracingEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DevicePciPeripheralDataAccessEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceBorealisAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceAllowedBluetoothServicesProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceDebugPacketCaptureAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceScheduledRebootProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DevicePciPeripheralDataAccessEnabledProtoV2_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceRestrictedManagedGuestSessionEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_HostnameUserConfigurableProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceI18nShortcutsEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_RevenDeviceHWDataUsageEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceLoginScreenWebUILazyLoadingProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_DeviceKeylockerForStorageEncryptionEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_EncryptedReportingPipelineConfigurationProto_chrome_5fdevice_5fpolicy_2eproto.base,}};
+
+static void InitDefaultsscc_info_DataRoamingEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DataRoamingEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DataRoamingEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DataRoamingEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DataRoamingEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DataRoamingEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAdvancedBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAdvancedBatteryChargeModeProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAdvancedBatteryChargeModeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAdvancedBatteryChargeModeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAdvancedBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAdvancedBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAllowedBluetoothServicesProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAllowedBluetoothServicesProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAllowedBluetoothServicesProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAllowedBluetoothServicesProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAllowedBluetoothServicesProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAllowedBluetoothServicesProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceArcDataSnapshotHoursProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceArcDataSnapshotHoursProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceArcDataSnapshotHoursProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceArcDataSnapshotHoursProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceArcDataSnapshotHoursProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceArcDataSnapshotHoursProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAuthDataCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAuthDataCacheLifetimeProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAuthDataCacheLifetimeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAuthDataCacheLifetimeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAuthDataCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAuthDataCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceBatteryChargeModeProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceBatteryChargeModeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceBatteryChargeModeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceBootOnAcProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceBootOnAcProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceBootOnAcProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceBootOnAcProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceBootOnAcProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceBootOnAcProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceBorealisAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceBorealisAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceBorealisAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceBorealisAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceBorealisAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceBorealisAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceCrostiniArcAdbSideloadingAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceCrostiniArcAdbSideloadingAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceCrostiniArcAdbSideloadingAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceCrostiniArcAdbSideloadingAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceDebugPacketCaptureAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceDebugPacketCaptureAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceDebugPacketCaptureAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceDebugPacketCaptureAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceDebugPacketCaptureAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceDebugPacketCaptureAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceDisplayResolutionProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceDisplayResolutionProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceDisplayResolutionProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceDisplayResolutionProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceDisplayResolutionProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceDisplayResolutionProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceDockMacAddressSourceProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceDockMacAddressSourceProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceDockMacAddressSourceProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceDockMacAddressSourceProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceDockMacAddressSourceProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceDockMacAddressSourceProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceEcryptfsMigrationStrategyProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceEcryptfsMigrationStrategyProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceEcryptfsMigrationStrategyProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceEcryptfsMigrationStrategyProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceEcryptfsMigrationStrategyProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceEcryptfsMigrationStrategyProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceExternalPrintServersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceExternalPrintServersAllowlistProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceExternalPrintServersAllowlistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceExternalPrintServersAllowlistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceExternalPrintServersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceExternalPrintServersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceExternalPrintServersProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceExternalPrintServersProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceExternalPrintServersProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceExternalPrintServersProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceExternalPrintServersProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceExternalPrintServersProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceFamilyLinkAccountsAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceFamilyLinkAccountsAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceFamilyLinkAccountsAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceFamilyLinkAccountsAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceGpoCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceGpoCacheLifetimeProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceGpoCacheLifetimeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceGpoCacheLifetimeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceGpoCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceGpoCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceHeartbeatSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceHeartbeatSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceHeartbeatSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceHeartbeatSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceHeartbeatSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceHeartbeatSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceI18nShortcutsEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceI18nShortcutsEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceI18nShortcutsEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceI18nShortcutsEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceI18nShortcutsEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceI18nShortcutsEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceKerberosEncryptionTypesProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceKerberosEncryptionTypesProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceKerberosEncryptionTypesProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceKerberosEncryptionTypesProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceKerberosEncryptionTypesProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceKerberosEncryptionTypesProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceKeylockerForStorageEncryptionEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceKeylockerForStorageEncryptionEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceKeylockerForStorageEncryptionEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceKeylockerForStorageEncryptionEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceLocalAccountInfoProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceLocalAccountInfoProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceLocalAccountInfoProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceLocalAccountInfoProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_DeviceLocalAccountInfoProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, 0, InitDefaultsscc_info_DeviceLocalAccountInfoProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_KioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_AndroidKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base,
+      &scc_info_WebKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceLocalAccountsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceLocalAccountsProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceLocalAccountsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceLocalAccountsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceLocalAccountsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_DeviceLocalAccountsProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_DeviceLocalAccountInfoProto_chrome_5fdevice_5fpolicy_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceLogUploadSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceLogUploadSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceLogUploadSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceLogUploadSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLogUploadSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceLogUploadSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceLoginScreenAutoSelectCertificateForUrls_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceLoginScreenAutoSelectCertificateForUrls_default_instance_;
+    new (ptr) ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenAutoSelectCertificateForUrls_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceLoginScreenAutoSelectCertificateForUrls_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceLoginScreenExtensionsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceLoginScreenExtensionsProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceLoginScreenExtensionsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceLoginScreenExtensionsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenExtensionsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceLoginScreenExtensionsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceLoginScreenPrivacyScreenEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceLoginScreenPrivacyScreenEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenPrivacyScreenEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceLoginScreenPrivacyScreenEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceLoginScreenWebUILazyLoadingProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceLoginScreenWebUILazyLoadingProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenWebUILazyLoadingProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceLoginScreenWebUILazyLoadingProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceMachinePasswordChangeRateProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceMachinePasswordChangeRateProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceMachinePasswordChangeRateProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceMachinePasswordChangeRateProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceMachinePasswordChangeRateProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceMachinePasswordChangeRateProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceNativePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceNativePrintersAccessModeProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceNativePrintersAccessModeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceNativePrintersAccessModeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceNativePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceNativePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceNativePrintersBlacklistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceNativePrintersBlacklistProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceNativePrintersBlacklistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceNativePrintersBlacklistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceNativePrintersBlacklistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceNativePrintersBlacklistProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceNativePrintersProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceNativePrintersProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceNativePrintersProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceNativePrintersProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceNativePrintersProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceNativePrintersProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceNativePrintersWhitelistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceNativePrintersWhitelistProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceNativePrintersWhitelistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceNativePrintersWhitelistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceNativePrintersWhitelistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceNativePrintersWhitelistProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceOffHoursProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceOffHoursProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceOffHoursProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceOffHoursProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceOffHoursProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_DeviceOffHoursProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_WeeklyTimeIntervalProto_chrome_5fdevice_5fpolicy_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceOpenNetworkConfigurationProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceOpenNetworkConfigurationProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceOpenNetworkConfigurationProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceOpenNetworkConfigurationProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceOpenNetworkConfigurationProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceOpenNetworkConfigurationProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePciPeripheralDataAccessEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePciPeripheralDataAccessEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePciPeripheralDataAccessEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePciPeripheralDataAccessEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePciPeripheralDataAccessEnabledProtoV2_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePciPeripheralDataAccessEnabledProtoV2_default_instance_;
+    new (ptr) ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePciPeripheralDataAccessEnabledProtoV2_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePciPeripheralDataAccessEnabledProtoV2_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePolicyRefreshRateProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePolicyRefreshRateProto_default_instance_;
+    new (ptr) ::enterprise_management::DevicePolicyRefreshRateProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePolicyRefreshRateProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePolicyRefreshRateProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePolicyRefreshRateProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePowerPeakShiftProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePowerPeakShiftProto_default_instance_;
+    new (ptr) ::enterprise_management::DevicePowerPeakShiftProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePowerPeakShiftProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePowerPeakShiftProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePowerPeakShiftProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePowerwashAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePowerwashAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::DevicePowerwashAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePowerwashAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePowerwashAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePowerwashAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePrintersAccessModeProto_default_instance_;
+    new (ptr) ::enterprise_management::DevicePrintersAccessModeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePrintersAccessModeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePrintersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePrintersAllowlistProto_default_instance_;
+    new (ptr) ::enterprise_management::DevicePrintersAllowlistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePrintersAllowlistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePrintersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePrintersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePrintersBlocklistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePrintersBlocklistProto_default_instance_;
+    new (ptr) ::enterprise_management::DevicePrintersBlocklistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePrintersBlocklistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePrintersBlocklistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePrintersBlocklistProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePrintersProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePrintersProto_default_instance_;
+    new (ptr) ::enterprise_management::DevicePrintersProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePrintersProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePrintersProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePrintersProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceQuirksDownloadEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceQuirksDownloadEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceQuirksDownloadEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceQuirksDownloadEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceQuirksDownloadEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceQuirksDownloadEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceRebootOnUserSignoutProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceRebootOnUserSignoutProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceRebootOnUserSignoutProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceRebootOnUserSignoutProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRebootOnUserSignoutProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceRebootOnUserSignoutProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceReportingProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceReportingProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceReportingProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceReportingProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceReportingProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceReportingProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceRestrictedManagedGuestSessionEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceRestrictedManagedGuestSessionEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRestrictedManagedGuestSessionEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceRestrictedManagedGuestSessionEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceScheduledRebootProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceScheduledRebootProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceScheduledRebootProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceScheduledRebootProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceScheduledRebootProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceScheduledRebootProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceScheduledUpdateCheckProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceScheduledUpdateCheckProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceScheduledUpdateCheckProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceScheduledUpdateCheckProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceScheduledUpdateCheckProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceScheduledUpdateCheckProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceSecondFactorAuthenticationProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceSecondFactorAuthenticationProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceSecondFactorAuthenticationProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceSecondFactorAuthenticationProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceSecondFactorAuthenticationProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceSecondFactorAuthenticationProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceShowLowDiskSpaceNotificationProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceShowLowDiskSpaceNotificationProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceShowLowDiskSpaceNotificationProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceShowLowDiskSpaceNotificationProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceSystemWideTracingEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceSystemWideTracingEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceSystemWideTracingEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceSystemWideTracingEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceSystemWideTracingEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceSystemWideTracingEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceUnaffiliatedCrostiniAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceUnaffiliatedCrostiniAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUnaffiliatedCrostiniAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceUnaffiliatedCrostiniAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceUsbPowerShareProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceUsbPowerShareProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceUsbPowerShareProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceUsbPowerShareProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUsbPowerShareProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceUsbPowerShareProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceUserPolicyLoopbackProcessingModeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceUserPolicyLoopbackProcessingModeProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUserPolicyLoopbackProcessingModeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceUserPolicyLoopbackProcessingModeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceWallpaperImageProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceWallpaperImageProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceWallpaperImageProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceWallpaperImageProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWallpaperImageProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceWallpaperImageProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceWiFiAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceWiFiAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceWiFiAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceWiFiAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWiFiAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceWiFiAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceWiFiFastTransitionEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceWiFiFastTransitionEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceWiFiFastTransitionEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceWiFiFastTransitionEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWiFiFastTransitionEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceWiFiFastTransitionEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceWilcoDtcAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceWilcoDtcAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceWilcoDtcAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceWilcoDtcAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWilcoDtcAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceWilcoDtcAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceWilcoDtcConfigurationProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceWilcoDtcConfigurationProto_default_instance_;
+    new (ptr) ::enterprise_management::DeviceWilcoDtcConfigurationProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceWilcoDtcConfigurationProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceWilcoDtcConfigurationProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceWilcoDtcConfigurationProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_DisplayRotationDefaultProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DisplayRotationDefaultProto_default_instance_;
+    new (ptr) ::enterprise_management::DisplayRotationDefaultProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DisplayRotationDefaultProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DisplayRotationDefaultProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DisplayRotationDefaultProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_EncryptedReportingPipelineConfigurationProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_EncryptedReportingPipelineConfigurationProto_default_instance_;
+    new (ptr) ::enterprise_management::EncryptedReportingPipelineConfigurationProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::EncryptedReportingPipelineConfigurationProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EncryptedReportingPipelineConfigurationProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_EncryptedReportingPipelineConfigurationProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_EphemeralUsersEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_EphemeralUsersEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::EphemeralUsersEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::EphemeralUsersEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EphemeralUsersEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_EphemeralUsersEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_ExtensionCacheSizeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ExtensionCacheSizeProto_default_instance_;
+    new (ptr) ::enterprise_management::ExtensionCacheSizeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ExtensionCacheSizeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ExtensionCacheSizeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ExtensionCacheSizeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_FeatureFlagsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_FeatureFlagsProto_default_instance_;
+    new (ptr) ::enterprise_management::FeatureFlagsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::FeatureFlagsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FeatureFlagsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_FeatureFlagsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_GuestModeEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_GuestModeEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::GuestModeEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::GuestModeEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GuestModeEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_GuestModeEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_HostnameUserConfigurableProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_HostnameUserConfigurableProto_default_instance_;
+    new (ptr) ::enterprise_management::HostnameUserConfigurableProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::HostnameUserConfigurableProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_HostnameUserConfigurableProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_HostnameUserConfigurableProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_KioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_KioskAppInfoProto_default_instance_;
+    new (ptr) ::enterprise_management::KioskAppInfoProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::KioskAppInfoProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_KioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_KioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_LoginAuthenticationBehaviorProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LoginAuthenticationBehaviorProto_default_instance_;
+    new (ptr) ::enterprise_management::LoginAuthenticationBehaviorProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LoginAuthenticationBehaviorProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginAuthenticationBehaviorProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_LoginAuthenticationBehaviorProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_LoginScreenDomainAutoCompleteProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LoginScreenDomainAutoCompleteProto_default_instance_;
+    new (ptr) ::enterprise_management::LoginScreenDomainAutoCompleteProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LoginScreenDomainAutoCompleteProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginScreenDomainAutoCompleteProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_LoginScreenDomainAutoCompleteProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_LoginScreenInputMethodsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LoginScreenInputMethodsProto_default_instance_;
+    new (ptr) ::enterprise_management::LoginScreenInputMethodsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LoginScreenInputMethodsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginScreenInputMethodsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_LoginScreenInputMethodsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_LoginScreenLocalesProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LoginScreenLocalesProto_default_instance_;
+    new (ptr) ::enterprise_management::LoginScreenLocalesProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LoginScreenLocalesProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginScreenLocalesProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_LoginScreenLocalesProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_LoginScreenPowerManagementProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LoginScreenPowerManagementProto_default_instance_;
+    new (ptr) ::enterprise_management::LoginScreenPowerManagementProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LoginScreenPowerManagementProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginScreenPowerManagementProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_LoginScreenPowerManagementProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_LoginVideoCaptureAllowedUrlsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LoginVideoCaptureAllowedUrlsProto_default_instance_;
+    new (ptr) ::enterprise_management::LoginVideoCaptureAllowedUrlsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LoginVideoCaptureAllowedUrlsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LoginVideoCaptureAllowedUrlsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_LoginVideoCaptureAllowedUrlsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_ManagedGuestSessionPrivacyWarningsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ManagedGuestSessionPrivacyWarningsProto_default_instance_;
+    new (ptr) ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ManagedGuestSessionPrivacyWarningsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ManagedGuestSessionPrivacyWarningsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_MetricsEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_MetricsEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::MetricsEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::MetricsEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_MetricsEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_MetricsEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_NetworkHostnameProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_NetworkHostnameProto_default_instance_;
+    new (ptr) ::enterprise_management::NetworkHostnameProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::NetworkHostnameProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkHostnameProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_NetworkHostnameProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_NetworkThrottlingEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_NetworkThrottlingEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::NetworkThrottlingEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::NetworkThrottlingEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkThrottlingEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_NetworkThrottlingEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_AppPackEntryProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_AppPackEntryProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_AppPackEntryProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_AppPackEntryProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_AppPackEntryProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_AppPackEntryProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_AppPackProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_AppPackProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_AppPackProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_AppPackProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_OBSOLETE_AppPackProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_OBSOLETE_AppPackProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_OBSOLETE_AppPackEntryProto_chrome_5fdevice_5fpolicy_2eproto.base,}};
+
+static void InitDefaultsscc_info_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_DeviceLoginScreenSitePerProcessProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_DeviceLoginScreenSitePerProcessProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_DeviceLoginScreenSitePerProcessProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_DeviceLoginScreenSitePerProcessProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_DeviceProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_DeviceProxySettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_DeviceProxySettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_DeviceProxySettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_DeviceProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_DeviceProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_ForcedLogoutTimeoutsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_ForcedLogoutTimeoutsProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_ForcedLogoutTimeoutsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_ForcedLogoutTimeoutsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_MinimumRequiredVersionProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_MinimumRequiredVersionProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_MinimumRequiredVersionProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_MinimumRequiredVersionProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_PinnedAppsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_PinnedAppsProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_PinnedAppsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_PinnedAppsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_PinnedAppsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_PinnedAppsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_ScreenSaverProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_ScreenSaverProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_ScreenSaverProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_ScreenSaverProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_ScreenSaverProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_ScreenSaverProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_StartUpUrlsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_StartUpUrlsProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_StartUpUrlsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_StartUpUrlsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_StartUpUrlsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_StartUpUrlsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_OBSOLETE_SupervisedUsersSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OBSOLETE_SupervisedUsersSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OBSOLETE_SupervisedUsersSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OBSOLETE_SupervisedUsersSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_PluginVmAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PluginVmAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::PluginVmAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PluginVmAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PluginVmAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PluginVmAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_PluginVmLicenseKeyProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PluginVmLicenseKeyProto_default_instance_;
+    new (ptr) ::enterprise_management::PluginVmLicenseKeyProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PluginVmLicenseKeyProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PluginVmLicenseKeyProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PluginVmLicenseKeyProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_RebootOnShutdownProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RebootOnShutdownProto_default_instance_;
+    new (ptr) ::enterprise_management::RebootOnShutdownProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RebootOnShutdownProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RebootOnShutdownProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RebootOnShutdownProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_ReleaseChannelProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ReleaseChannelProto_default_instance_;
+    new (ptr) ::enterprise_management::ReleaseChannelProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ReleaseChannelProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ReleaseChannelProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ReleaseChannelProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_RequiredClientCertificateForDeviceProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RequiredClientCertificateForDeviceProto_default_instance_;
+    new (ptr) ::enterprise_management::RequiredClientCertificateForDeviceProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RequiredClientCertificateForDeviceProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RequiredClientCertificateForDeviceProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RequiredClientCertificateForDeviceProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_RevenDeviceHWDataUsageEnabledProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RevenDeviceHWDataUsageEnabledProto_default_instance_;
+    new (ptr) ::enterprise_management::RevenDeviceHWDataUsageEnabledProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RevenDeviceHWDataUsageEnabledProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RevenDeviceHWDataUsageEnabledProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RevenDeviceHWDataUsageEnabledProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_SAMLSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SAMLSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::SAMLSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SAMLSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SAMLSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SAMLSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_SamlLoginAuthenticationTypeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SamlLoginAuthenticationTypeProto_default_instance_;
+    new (ptr) ::enterprise_management::SamlLoginAuthenticationTypeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SamlLoginAuthenticationTypeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SamlLoginAuthenticationTypeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SamlLoginAuthenticationTypeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_ShowUserNamesOnSigninProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ShowUserNamesOnSigninProto_default_instance_;
+    new (ptr) ::enterprise_management::ShowUserNamesOnSigninProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ShowUserNamesOnSigninProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ShowUserNamesOnSigninProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ShowUserNamesOnSigninProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SystemProxySettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::SystemProxySettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SystemProxySettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SystemSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::SystemSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SystemSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemTimezoneProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SystemTimezoneProto_default_instance_;
+    new (ptr) ::enterprise_management::SystemTimezoneProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SystemTimezoneProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemTimezoneProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemTimezoneProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemUse24HourClockProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SystemUse24HourClockProto_default_instance_;
+    new (ptr) ::enterprise_management::SystemUse24HourClockProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SystemUse24HourClockProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemUse24HourClockProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemUse24HourClockProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_TPMFirmwareUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_TPMFirmwareUpdateSettingsProto_default_instance_;
+    new (ptr) ::enterprise_management::TPMFirmwareUpdateSettingsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::TPMFirmwareUpdateSettingsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TPMFirmwareUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_TPMFirmwareUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_UnaffiliatedArcAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UnaffiliatedArcAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::UnaffiliatedArcAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UnaffiliatedArcAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UnaffiliatedArcAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_UnaffiliatedArcAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_UptimeLimitProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UptimeLimitProto_default_instance_;
+    new (ptr) ::enterprise_management::UptimeLimitProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UptimeLimitProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UptimeLimitProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_UptimeLimitProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_UsbDetachableAllowlistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UsbDetachableAllowlistProto_default_instance_;
+    new (ptr) ::enterprise_management::UsbDetachableAllowlistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UsbDetachableAllowlistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UsbDetachableAllowlistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_UsbDetachableAllowlistProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_UsbDeviceIdInclusiveProto_chrome_5fdevice_5fpolicy_2eproto.base,}};
+
+static void InitDefaultsscc_info_UsbDetachableWhitelistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UsbDetachableWhitelistProto_default_instance_;
+    new (ptr) ::enterprise_management::UsbDetachableWhitelistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UsbDetachableWhitelistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UsbDetachableWhitelistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_UsbDetachableWhitelistProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_UsbDeviceIdProto_chrome_5fdevice_5fpolicy_2eproto.base,}};
+
+static void InitDefaultsscc_info_UsbDeviceIdInclusiveProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UsbDeviceIdInclusiveProto_default_instance_;
+    new (ptr) ::enterprise_management::UsbDeviceIdInclusiveProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UsbDeviceIdInclusiveProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UsbDeviceIdInclusiveProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_UsbDeviceIdInclusiveProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_UsbDeviceIdProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UsbDeviceIdProto_default_instance_;
+    new (ptr) ::enterprise_management::UsbDeviceIdProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UsbDeviceIdProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UsbDeviceIdProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_UsbDeviceIdProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_UserAllowlistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UserAllowlistProto_default_instance_;
+    new (ptr) ::enterprise_management::UserAllowlistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UserAllowlistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UserAllowlistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_UserAllowlistProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_UserWhitelistProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UserWhitelistProto_default_instance_;
+    new (ptr) ::enterprise_management::UserWhitelistProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UserWhitelistProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UserWhitelistProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_UserWhitelistProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_VariationsParameterProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_VariationsParameterProto_default_instance_;
+    new (ptr) ::enterprise_management::VariationsParameterProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::VariationsParameterProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_VariationsParameterProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_VariationsParameterProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_VirtualMachinesAllowedProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_VirtualMachinesAllowedProto_default_instance_;
+    new (ptr) ::enterprise_management::VirtualMachinesAllowedProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::VirtualMachinesAllowedProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_VirtualMachinesAllowedProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_VirtualMachinesAllowedProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_WebKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_WebKioskAppInfoProto_default_instance_;
+    new (ptr) ::enterprise_management::WebKioskAppInfoProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::WebKioskAppInfoProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_WebKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_WebKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+static void InitDefaultsscc_info_WeeklyTimeIntervalProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_WeeklyTimeIntervalProto_default_instance_;
+    new (ptr) ::enterprise_management::WeeklyTimeIntervalProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::WeeklyTimeIntervalProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_WeeklyTimeIntervalProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_WeeklyTimeIntervalProto_chrome_5fdevice_5fpolicy_2eproto}, {
+      &scc_info_WeeklyTimeProto_chrome_5fdevice_5fpolicy_2eproto.base,}};
+
+static void InitDefaultsscc_info_WeeklyTimeProto_chrome_5fdevice_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_WeeklyTimeProto_default_instance_;
+    new (ptr) ::enterprise_management::WeeklyTimeProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::WeeklyTimeProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_WeeklyTimeProto_chrome_5fdevice_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_WeeklyTimeProto_chrome_5fdevice_5fpolicy_2eproto}, {}};
+
+namespace enterprise_management {
+bool AutoUpdateSettingsProto_ConnectionType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AutoUpdateSettingsProto_ConnectionType_strings[5] = {};
+
+static const char AutoUpdateSettingsProto_ConnectionType_names[] =
+  "CONNECTION_TYPE_BLUETOOTH"
+  "CONNECTION_TYPE_CELLULAR"
+  "CONNECTION_TYPE_ETHERNET"
+  "CONNECTION_TYPE_WIFI"
+  "CONNECTION_TYPE_WIMAX";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AutoUpdateSettingsProto_ConnectionType_entries[] = {
+  { {AutoUpdateSettingsProto_ConnectionType_names + 0, 25}, 3 },
+  { {AutoUpdateSettingsProto_ConnectionType_names + 25, 24}, 4 },
+  { {AutoUpdateSettingsProto_ConnectionType_names + 49, 24}, 0 },
+  { {AutoUpdateSettingsProto_ConnectionType_names + 73, 20}, 1 },
+  { {AutoUpdateSettingsProto_ConnectionType_names + 93, 21}, 2 },
+};
+
+static const int AutoUpdateSettingsProto_ConnectionType_entries_by_number[] = {
+  2, // 0 -> CONNECTION_TYPE_ETHERNET
+  3, // 1 -> CONNECTION_TYPE_WIFI
+  4, // 2 -> CONNECTION_TYPE_WIMAX
+  0, // 3 -> CONNECTION_TYPE_BLUETOOTH
+  1, // 4 -> CONNECTION_TYPE_CELLULAR
+};
+
+const std::string& AutoUpdateSettingsProto_ConnectionType_Name(
+    AutoUpdateSettingsProto_ConnectionType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AutoUpdateSettingsProto_ConnectionType_entries,
+          AutoUpdateSettingsProto_ConnectionType_entries_by_number,
+          5, AutoUpdateSettingsProto_ConnectionType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AutoUpdateSettingsProto_ConnectionType_entries,
+      AutoUpdateSettingsProto_ConnectionType_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AutoUpdateSettingsProto_ConnectionType_strings[idx].get();
+}
+bool AutoUpdateSettingsProto_ConnectionType_Parse(
+    const std::string& name, AutoUpdateSettingsProto_ConnectionType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AutoUpdateSettingsProto_ConnectionType_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<AutoUpdateSettingsProto_ConnectionType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::CONNECTION_TYPE_ETHERNET;
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::CONNECTION_TYPE_WIFI;
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::CONNECTION_TYPE_WIMAX;
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::CONNECTION_TYPE_BLUETOOTH;
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::CONNECTION_TYPE_CELLULAR;
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::ConnectionType_MIN;
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::ConnectionType_MAX;
+constexpr int AutoUpdateSettingsProto::ConnectionType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AutoUpdateSettingsProto_RollbackToTargetVersion_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AutoUpdateSettingsProto_RollbackToTargetVersion_strings[4] = {};
+
+static const char AutoUpdateSettingsProto_RollbackToTargetVersion_names[] =
+  "ROLLBACK_AND_POWERWASH"
+  "ROLLBACK_AND_RESTORE_IF_POSSIBLE"
+  "ROLLBACK_DISABLED"
+  "ROLLBACK_UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AutoUpdateSettingsProto_RollbackToTargetVersion_entries[] = {
+  { {AutoUpdateSettingsProto_RollbackToTargetVersion_names + 0, 22}, 2 },
+  { {AutoUpdateSettingsProto_RollbackToTargetVersion_names + 22, 32}, 3 },
+  { {AutoUpdateSettingsProto_RollbackToTargetVersion_names + 54, 17}, 1 },
+  { {AutoUpdateSettingsProto_RollbackToTargetVersion_names + 71, 20}, 0 },
+};
+
+static const int AutoUpdateSettingsProto_RollbackToTargetVersion_entries_by_number[] = {
+  3, // 0 -> ROLLBACK_UNSPECIFIED
+  2, // 1 -> ROLLBACK_DISABLED
+  0, // 2 -> ROLLBACK_AND_POWERWASH
+  1, // 3 -> ROLLBACK_AND_RESTORE_IF_POSSIBLE
+};
+
+const std::string& AutoUpdateSettingsProto_RollbackToTargetVersion_Name(
+    AutoUpdateSettingsProto_RollbackToTargetVersion value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AutoUpdateSettingsProto_RollbackToTargetVersion_entries,
+          AutoUpdateSettingsProto_RollbackToTargetVersion_entries_by_number,
+          4, AutoUpdateSettingsProto_RollbackToTargetVersion_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AutoUpdateSettingsProto_RollbackToTargetVersion_entries,
+      AutoUpdateSettingsProto_RollbackToTargetVersion_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AutoUpdateSettingsProto_RollbackToTargetVersion_strings[idx].get();
+}
+bool AutoUpdateSettingsProto_RollbackToTargetVersion_Parse(
+    const std::string& name, AutoUpdateSettingsProto_RollbackToTargetVersion* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AutoUpdateSettingsProto_RollbackToTargetVersion_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<AutoUpdateSettingsProto_RollbackToTargetVersion>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto::ROLLBACK_UNSPECIFIED;
+constexpr AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto::ROLLBACK_DISABLED;
+constexpr AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto::ROLLBACK_AND_POWERWASH;
+constexpr AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto::ROLLBACK_AND_RESTORE_IF_POSSIBLE;
+constexpr AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto::RollbackToTargetVersion_MIN;
+constexpr AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto::RollbackToTargetVersion_MAX;
+constexpr int AutoUpdateSettingsProto::RollbackToTargetVersion_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AutoUpdateSettingsProto_ChannelDowngradeBehavior_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AutoUpdateSettingsProto_ChannelDowngradeBehavior_strings[4] = {};
+
+static const char AutoUpdateSettingsProto_ChannelDowngradeBehavior_names[] =
+  "ALLOW_USER_TO_CONFIGURE"
+  "CHANNEL_DOWNGRADE_BEHAVIOR_UNSPECIFIED"
+  "ROLLBACK"
+  "WAIT_FOR_VERSION_CATCH_UP";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AutoUpdateSettingsProto_ChannelDowngradeBehavior_entries[] = {
+  { {AutoUpdateSettingsProto_ChannelDowngradeBehavior_names + 0, 23}, 3 },
+  { {AutoUpdateSettingsProto_ChannelDowngradeBehavior_names + 23, 38}, 0 },
+  { {AutoUpdateSettingsProto_ChannelDowngradeBehavior_names + 61, 8}, 2 },
+  { {AutoUpdateSettingsProto_ChannelDowngradeBehavior_names + 69, 25}, 1 },
+};
+
+static const int AutoUpdateSettingsProto_ChannelDowngradeBehavior_entries_by_number[] = {
+  1, // 0 -> CHANNEL_DOWNGRADE_BEHAVIOR_UNSPECIFIED
+  3, // 1 -> WAIT_FOR_VERSION_CATCH_UP
+  2, // 2 -> ROLLBACK
+  0, // 3 -> ALLOW_USER_TO_CONFIGURE
+};
+
+const std::string& AutoUpdateSettingsProto_ChannelDowngradeBehavior_Name(
+    AutoUpdateSettingsProto_ChannelDowngradeBehavior value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AutoUpdateSettingsProto_ChannelDowngradeBehavior_entries,
+          AutoUpdateSettingsProto_ChannelDowngradeBehavior_entries_by_number,
+          4, AutoUpdateSettingsProto_ChannelDowngradeBehavior_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AutoUpdateSettingsProto_ChannelDowngradeBehavior_entries,
+      AutoUpdateSettingsProto_ChannelDowngradeBehavior_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AutoUpdateSettingsProto_ChannelDowngradeBehavior_strings[idx].get();
+}
+bool AutoUpdateSettingsProto_ChannelDowngradeBehavior_Parse(
+    const std::string& name, AutoUpdateSettingsProto_ChannelDowngradeBehavior* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AutoUpdateSettingsProto_ChannelDowngradeBehavior_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<AutoUpdateSettingsProto_ChannelDowngradeBehavior>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto::CHANNEL_DOWNGRADE_BEHAVIOR_UNSPECIFIED;
+constexpr AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto::WAIT_FOR_VERSION_CATCH_UP;
+constexpr AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto::ROLLBACK;
+constexpr AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto::ALLOW_USER_TO_CONFIGURE;
+constexpr AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto::ChannelDowngradeBehavior_MIN;
+constexpr AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto::ChannelDowngradeBehavior_MAX;
+constexpr int AutoUpdateSettingsProto::ChannelDowngradeBehavior_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemTimezoneProto_AutomaticTimezoneDetectionType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemTimezoneProto_AutomaticTimezoneDetectionType_strings[5] = {};
+
+static const char SystemTimezoneProto_AutomaticTimezoneDetectionType_names[] =
+  "DISABLED"
+  "IP_ONLY"
+  "SEND_ALL_LOCATION_INFO"
+  "SEND_WIFI_ACCESS_POINTS"
+  "USERS_DECIDE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemTimezoneProto_AutomaticTimezoneDetectionType_entries[] = {
+  { {SystemTimezoneProto_AutomaticTimezoneDetectionType_names + 0, 8}, 1 },
+  { {SystemTimezoneProto_AutomaticTimezoneDetectionType_names + 8, 7}, 2 },
+  { {SystemTimezoneProto_AutomaticTimezoneDetectionType_names + 15, 22}, 4 },
+  { {SystemTimezoneProto_AutomaticTimezoneDetectionType_names + 37, 23}, 3 },
+  { {SystemTimezoneProto_AutomaticTimezoneDetectionType_names + 60, 12}, 0 },
+};
+
+static const int SystemTimezoneProto_AutomaticTimezoneDetectionType_entries_by_number[] = {
+  4, // 0 -> USERS_DECIDE
+  0, // 1 -> DISABLED
+  1, // 2 -> IP_ONLY
+  3, // 3 -> SEND_WIFI_ACCESS_POINTS
+  2, // 4 -> SEND_ALL_LOCATION_INFO
+};
+
+const std::string& SystemTimezoneProto_AutomaticTimezoneDetectionType_Name(
+    SystemTimezoneProto_AutomaticTimezoneDetectionType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemTimezoneProto_AutomaticTimezoneDetectionType_entries,
+          SystemTimezoneProto_AutomaticTimezoneDetectionType_entries_by_number,
+          5, SystemTimezoneProto_AutomaticTimezoneDetectionType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemTimezoneProto_AutomaticTimezoneDetectionType_entries,
+      SystemTimezoneProto_AutomaticTimezoneDetectionType_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemTimezoneProto_AutomaticTimezoneDetectionType_strings[idx].get();
+}
+bool SystemTimezoneProto_AutomaticTimezoneDetectionType_Parse(
+    const std::string& name, SystemTimezoneProto_AutomaticTimezoneDetectionType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemTimezoneProto_AutomaticTimezoneDetectionType_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemTimezoneProto_AutomaticTimezoneDetectionType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::USERS_DECIDE;
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::DISABLED;
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::IP_ONLY;
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::SEND_WIFI_ACCESS_POINTS;
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::SEND_ALL_LOCATION_INFO;
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::AutomaticTimezoneDetectionType_MIN;
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::AutomaticTimezoneDetectionType_MAX;
+constexpr int SystemTimezoneProto::AutomaticTimezoneDetectionType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceLocalAccountInfoProto_AccountType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceLocalAccountInfoProto_AccountType_strings[5] = {};
+
+static const char DeviceLocalAccountInfoProto_AccountType_names[] =
+  "ACCOUNT_TYPE_KIOSK_ANDROID_APP"
+  "ACCOUNT_TYPE_KIOSK_APP"
+  "ACCOUNT_TYPE_PUBLIC_SESSION"
+  "ACCOUNT_TYPE_SAML_PUBLIC_SESSION"
+  "ACCOUNT_TYPE_WEB_KIOSK_APP";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceLocalAccountInfoProto_AccountType_entries[] = {
+  { {DeviceLocalAccountInfoProto_AccountType_names + 0, 30}, 2 },
+  { {DeviceLocalAccountInfoProto_AccountType_names + 30, 22}, 1 },
+  { {DeviceLocalAccountInfoProto_AccountType_names + 52, 27}, 0 },
+  { {DeviceLocalAccountInfoProto_AccountType_names + 79, 32}, 3 },
+  { {DeviceLocalAccountInfoProto_AccountType_names + 111, 26}, 4 },
+};
+
+static const int DeviceLocalAccountInfoProto_AccountType_entries_by_number[] = {
+  2, // 0 -> ACCOUNT_TYPE_PUBLIC_SESSION
+  1, // 1 -> ACCOUNT_TYPE_KIOSK_APP
+  0, // 2 -> ACCOUNT_TYPE_KIOSK_ANDROID_APP
+  3, // 3 -> ACCOUNT_TYPE_SAML_PUBLIC_SESSION
+  4, // 4 -> ACCOUNT_TYPE_WEB_KIOSK_APP
+};
+
+const std::string& DeviceLocalAccountInfoProto_AccountType_Name(
+    DeviceLocalAccountInfoProto_AccountType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceLocalAccountInfoProto_AccountType_entries,
+          DeviceLocalAccountInfoProto_AccountType_entries_by_number,
+          5, DeviceLocalAccountInfoProto_AccountType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceLocalAccountInfoProto_AccountType_entries,
+      DeviceLocalAccountInfoProto_AccountType_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceLocalAccountInfoProto_AccountType_strings[idx].get();
+}
+bool DeviceLocalAccountInfoProto_AccountType_Parse(
+    const std::string& name, DeviceLocalAccountInfoProto_AccountType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceLocalAccountInfoProto_AccountType_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceLocalAccountInfoProto_AccountType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::ACCOUNT_TYPE_PUBLIC_SESSION;
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::ACCOUNT_TYPE_KIOSK_APP;
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::ACCOUNT_TYPE_KIOSK_ANDROID_APP;
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::ACCOUNT_TYPE_SAML_PUBLIC_SESSION;
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::ACCOUNT_TYPE_WEB_KIOSK_APP;
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::AccountType_MIN;
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::AccountType_MAX;
+constexpr int DeviceLocalAccountInfoProto::AccountType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AccessibilitySettingsProto_ScreenMagnifierType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AccessibilitySettingsProto_ScreenMagnifierType_strings[2] = {};
+
+static const char AccessibilitySettingsProto_ScreenMagnifierType_names[] =
+  "SCREEN_MAGNIFIER_TYPE_FULL"
+  "SCREEN_MAGNIFIER_TYPE_NONE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AccessibilitySettingsProto_ScreenMagnifierType_entries[] = {
+  { {AccessibilitySettingsProto_ScreenMagnifierType_names + 0, 26}, 1 },
+  { {AccessibilitySettingsProto_ScreenMagnifierType_names + 26, 26}, 0 },
+};
+
+static const int AccessibilitySettingsProto_ScreenMagnifierType_entries_by_number[] = {
+  1, // 0 -> SCREEN_MAGNIFIER_TYPE_NONE
+  0, // 1 -> SCREEN_MAGNIFIER_TYPE_FULL
+};
+
+const std::string& AccessibilitySettingsProto_ScreenMagnifierType_Name(
+    AccessibilitySettingsProto_ScreenMagnifierType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AccessibilitySettingsProto_ScreenMagnifierType_entries,
+          AccessibilitySettingsProto_ScreenMagnifierType_entries_by_number,
+          2, AccessibilitySettingsProto_ScreenMagnifierType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AccessibilitySettingsProto_ScreenMagnifierType_entries,
+      AccessibilitySettingsProto_ScreenMagnifierType_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AccessibilitySettingsProto_ScreenMagnifierType_strings[idx].get();
+}
+bool AccessibilitySettingsProto_ScreenMagnifierType_Parse(
+    const std::string& name, AccessibilitySettingsProto_ScreenMagnifierType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AccessibilitySettingsProto_ScreenMagnifierType_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<AccessibilitySettingsProto_ScreenMagnifierType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AccessibilitySettingsProto_ScreenMagnifierType AccessibilitySettingsProto::SCREEN_MAGNIFIER_TYPE_NONE;
+constexpr AccessibilitySettingsProto_ScreenMagnifierType AccessibilitySettingsProto::SCREEN_MAGNIFIER_TYPE_FULL;
+constexpr AccessibilitySettingsProto_ScreenMagnifierType AccessibilitySettingsProto::ScreenMagnifierType_MIN;
+constexpr AccessibilitySettingsProto_ScreenMagnifierType AccessibilitySettingsProto::ScreenMagnifierType_MAX;
+constexpr int AccessibilitySettingsProto::ScreenMagnifierType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DisplayRotationDefaultProto_Rotation_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DisplayRotationDefaultProto_Rotation_strings[4] = {};
+
+static const char DisplayRotationDefaultProto_Rotation_names[] =
+  "ROTATE_0"
+  "ROTATE_180"
+  "ROTATE_270"
+  "ROTATE_90";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DisplayRotationDefaultProto_Rotation_entries[] = {
+  { {DisplayRotationDefaultProto_Rotation_names + 0, 8}, 0 },
+  { {DisplayRotationDefaultProto_Rotation_names + 8, 10}, 2 },
+  { {DisplayRotationDefaultProto_Rotation_names + 18, 10}, 3 },
+  { {DisplayRotationDefaultProto_Rotation_names + 28, 9}, 1 },
+};
+
+static const int DisplayRotationDefaultProto_Rotation_entries_by_number[] = {
+  0, // 0 -> ROTATE_0
+  3, // 1 -> ROTATE_90
+  1, // 2 -> ROTATE_180
+  2, // 3 -> ROTATE_270
+};
+
+const std::string& DisplayRotationDefaultProto_Rotation_Name(
+    DisplayRotationDefaultProto_Rotation value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DisplayRotationDefaultProto_Rotation_entries,
+          DisplayRotationDefaultProto_Rotation_entries_by_number,
+          4, DisplayRotationDefaultProto_Rotation_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DisplayRotationDefaultProto_Rotation_entries,
+      DisplayRotationDefaultProto_Rotation_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DisplayRotationDefaultProto_Rotation_strings[idx].get();
+}
+bool DisplayRotationDefaultProto_Rotation_Parse(
+    const std::string& name, DisplayRotationDefaultProto_Rotation* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DisplayRotationDefaultProto_Rotation_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<DisplayRotationDefaultProto_Rotation>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto::ROTATE_0;
+constexpr DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto::ROTATE_90;
+constexpr DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto::ROTATE_180;
+constexpr DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto::ROTATE_270;
+constexpr DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto::Rotation_MIN;
+constexpr DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto::Rotation_MAX;
+constexpr int DisplayRotationDefaultProto::Rotation_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool LoginAuthenticationBehaviorProto_LoginBehavior_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> LoginAuthenticationBehaviorProto_LoginBehavior_strings[2] = {};
+
+static const char LoginAuthenticationBehaviorProto_LoginBehavior_names[] =
+  "GAIA"
+  "SAML_INTERSTITIAL";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry LoginAuthenticationBehaviorProto_LoginBehavior_entries[] = {
+  { {LoginAuthenticationBehaviorProto_LoginBehavior_names + 0, 4}, 0 },
+  { {LoginAuthenticationBehaviorProto_LoginBehavior_names + 4, 17}, 1 },
+};
+
+static const int LoginAuthenticationBehaviorProto_LoginBehavior_entries_by_number[] = {
+  0, // 0 -> GAIA
+  1, // 1 -> SAML_INTERSTITIAL
+};
+
+const std::string& LoginAuthenticationBehaviorProto_LoginBehavior_Name(
+    LoginAuthenticationBehaviorProto_LoginBehavior value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          LoginAuthenticationBehaviorProto_LoginBehavior_entries,
+          LoginAuthenticationBehaviorProto_LoginBehavior_entries_by_number,
+          2, LoginAuthenticationBehaviorProto_LoginBehavior_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      LoginAuthenticationBehaviorProto_LoginBehavior_entries,
+      LoginAuthenticationBehaviorProto_LoginBehavior_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     LoginAuthenticationBehaviorProto_LoginBehavior_strings[idx].get();
+}
+bool LoginAuthenticationBehaviorProto_LoginBehavior_Parse(
+    const std::string& name, LoginAuthenticationBehaviorProto_LoginBehavior* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      LoginAuthenticationBehaviorProto_LoginBehavior_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<LoginAuthenticationBehaviorProto_LoginBehavior>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr LoginAuthenticationBehaviorProto_LoginBehavior LoginAuthenticationBehaviorProto::GAIA;
+constexpr LoginAuthenticationBehaviorProto_LoginBehavior LoginAuthenticationBehaviorProto::SAML_INTERSTITIAL;
+constexpr LoginAuthenticationBehaviorProto_LoginBehavior LoginAuthenticationBehaviorProto::LoginBehavior_MIN;
+constexpr LoginAuthenticationBehaviorProto_LoginBehavior LoginAuthenticationBehaviorProto::LoginBehavior_MAX;
+constexpr int LoginAuthenticationBehaviorProto::LoginBehavior_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_strings[3] = {};
+
+static const char DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_names[] =
+  "ALLOW_MIGRATION"
+  "DISALLOW_ARC"
+  "UNSET";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_entries[] = {
+  { {DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_names + 0, 15}, 2 },
+  { {DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_names + 15, 12}, 1 },
+  { {DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_names + 27, 5}, 0 },
+};
+
+static const int DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_entries_by_number[] = {
+  2, // 0 -> UNSET
+  1, // 1 -> DISALLOW_ARC
+  0, // 2 -> ALLOW_MIGRATION
+};
+
+const std::string& DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Name(
+    DeviceEcryptfsMigrationStrategyProto_MigrationStrategy value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_entries,
+          DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_entries_by_number,
+          3, DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_entries,
+      DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_strings[idx].get();
+}
+bool DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Parse(
+    const std::string& name, DeviceEcryptfsMigrationStrategyProto_MigrationStrategy* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceEcryptfsMigrationStrategyProto_MigrationStrategy>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto::UNSET;
+constexpr DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto::DISALLOW_ARC;
+constexpr DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto::ALLOW_MIGRATION;
+constexpr DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto::MigrationStrategy_MIN;
+constexpr DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto::MigrationStrategy_MAX;
+constexpr int DeviceEcryptfsMigrationStrategyProto::MigrationStrategy_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceSecondFactorAuthenticationProto_U2fMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceSecondFactorAuthenticationProto_U2fMode_strings[4] = {};
+
+static const char DeviceSecondFactorAuthenticationProto_U2fMode_names[] =
+  "DISABLED"
+  "U2F"
+  "U2F_EXTENDED"
+  "UNSET";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceSecondFactorAuthenticationProto_U2fMode_entries[] = {
+  { {DeviceSecondFactorAuthenticationProto_U2fMode_names + 0, 8}, 1 },
+  { {DeviceSecondFactorAuthenticationProto_U2fMode_names + 8, 3}, 2 },
+  { {DeviceSecondFactorAuthenticationProto_U2fMode_names + 11, 12}, 3 },
+  { {DeviceSecondFactorAuthenticationProto_U2fMode_names + 23, 5}, 0 },
+};
+
+static const int DeviceSecondFactorAuthenticationProto_U2fMode_entries_by_number[] = {
+  3, // 0 -> UNSET
+  0, // 1 -> DISABLED
+  1, // 2 -> U2F
+  2, // 3 -> U2F_EXTENDED
+};
+
+const std::string& DeviceSecondFactorAuthenticationProto_U2fMode_Name(
+    DeviceSecondFactorAuthenticationProto_U2fMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceSecondFactorAuthenticationProto_U2fMode_entries,
+          DeviceSecondFactorAuthenticationProto_U2fMode_entries_by_number,
+          4, DeviceSecondFactorAuthenticationProto_U2fMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceSecondFactorAuthenticationProto_U2fMode_entries,
+      DeviceSecondFactorAuthenticationProto_U2fMode_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceSecondFactorAuthenticationProto_U2fMode_strings[idx].get();
+}
+bool DeviceSecondFactorAuthenticationProto_U2fMode_Parse(
+    const std::string& name, DeviceSecondFactorAuthenticationProto_U2fMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceSecondFactorAuthenticationProto_U2fMode_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceSecondFactorAuthenticationProto_U2fMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto::UNSET;
+constexpr DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto::DISABLED;
+constexpr DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto::U2F;
+constexpr DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto::U2F_EXTENDED;
+constexpr DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto::U2fMode_MIN;
+constexpr DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto::U2fMode_MAX;
+constexpr int DeviceSecondFactorAuthenticationProto::U2fMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool WeeklyTimeProto_DayOfWeek_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> WeeklyTimeProto_DayOfWeek_strings[8] = {};
+
+static const char WeeklyTimeProto_DayOfWeek_names[] =
+  "DAY_OF_WEEK_UNSPECIFIED"
+  "FRIDAY"
+  "MONDAY"
+  "SATURDAY"
+  "SUNDAY"
+  "THURSDAY"
+  "TUESDAY"
+  "WEDNESDAY";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry WeeklyTimeProto_DayOfWeek_entries[] = {
+  { {WeeklyTimeProto_DayOfWeek_names + 0, 23}, 0 },
+  { {WeeklyTimeProto_DayOfWeek_names + 23, 6}, 5 },
+  { {WeeklyTimeProto_DayOfWeek_names + 29, 6}, 1 },
+  { {WeeklyTimeProto_DayOfWeek_names + 35, 8}, 6 },
+  { {WeeklyTimeProto_DayOfWeek_names + 43, 6}, 7 },
+  { {WeeklyTimeProto_DayOfWeek_names + 49, 8}, 4 },
+  { {WeeklyTimeProto_DayOfWeek_names + 57, 7}, 2 },
+  { {WeeklyTimeProto_DayOfWeek_names + 64, 9}, 3 },
+};
+
+static const int WeeklyTimeProto_DayOfWeek_entries_by_number[] = {
+  0, // 0 -> DAY_OF_WEEK_UNSPECIFIED
+  2, // 1 -> MONDAY
+  6, // 2 -> TUESDAY
+  7, // 3 -> WEDNESDAY
+  5, // 4 -> THURSDAY
+  1, // 5 -> FRIDAY
+  3, // 6 -> SATURDAY
+  4, // 7 -> SUNDAY
+};
+
+const std::string& WeeklyTimeProto_DayOfWeek_Name(
+    WeeklyTimeProto_DayOfWeek value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          WeeklyTimeProto_DayOfWeek_entries,
+          WeeklyTimeProto_DayOfWeek_entries_by_number,
+          8, WeeklyTimeProto_DayOfWeek_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      WeeklyTimeProto_DayOfWeek_entries,
+      WeeklyTimeProto_DayOfWeek_entries_by_number,
+      8, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     WeeklyTimeProto_DayOfWeek_strings[idx].get();
+}
+bool WeeklyTimeProto_DayOfWeek_Parse(
+    const std::string& name, WeeklyTimeProto_DayOfWeek* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      WeeklyTimeProto_DayOfWeek_entries, 8, name, &int_value);
+  if (success) {
+    *value = static_cast<WeeklyTimeProto_DayOfWeek>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::DAY_OF_WEEK_UNSPECIFIED;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::MONDAY;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::TUESDAY;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::WEDNESDAY;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::THURSDAY;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::FRIDAY;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::SATURDAY;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::SUNDAY;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::DayOfWeek_MIN;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto::DayOfWeek_MAX;
+constexpr int WeeklyTimeProto::DayOfWeek_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceNativePrintersAccessModeProto_AccessMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceNativePrintersAccessModeProto_AccessMode_strings[3] = {};
+
+static const char DeviceNativePrintersAccessModeProto_AccessMode_names[] =
+  "ACCESS_MODE_ALL"
+  "ACCESS_MODE_BLACKLIST"
+  "ACCESS_MODE_WHITELIST";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceNativePrintersAccessModeProto_AccessMode_entries[] = {
+  { {DeviceNativePrintersAccessModeProto_AccessMode_names + 0, 15}, 2 },
+  { {DeviceNativePrintersAccessModeProto_AccessMode_names + 15, 21}, 0 },
+  { {DeviceNativePrintersAccessModeProto_AccessMode_names + 36, 21}, 1 },
+};
+
+static const int DeviceNativePrintersAccessModeProto_AccessMode_entries_by_number[] = {
+  1, // 0 -> ACCESS_MODE_BLACKLIST
+  2, // 1 -> ACCESS_MODE_WHITELIST
+  0, // 2 -> ACCESS_MODE_ALL
+};
+
+const std::string& DeviceNativePrintersAccessModeProto_AccessMode_Name(
+    DeviceNativePrintersAccessModeProto_AccessMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceNativePrintersAccessModeProto_AccessMode_entries,
+          DeviceNativePrintersAccessModeProto_AccessMode_entries_by_number,
+          3, DeviceNativePrintersAccessModeProto_AccessMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceNativePrintersAccessModeProto_AccessMode_entries,
+      DeviceNativePrintersAccessModeProto_AccessMode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceNativePrintersAccessModeProto_AccessMode_strings[idx].get();
+}
+bool DeviceNativePrintersAccessModeProto_AccessMode_Parse(
+    const std::string& name, DeviceNativePrintersAccessModeProto_AccessMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceNativePrintersAccessModeProto_AccessMode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceNativePrintersAccessModeProto_AccessMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto::ACCESS_MODE_BLACKLIST;
+constexpr DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto::ACCESS_MODE_WHITELIST;
+constexpr DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto::ACCESS_MODE_ALL;
+constexpr DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto::AccessMode_MIN;
+constexpr DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto::AccessMode_MAX;
+constexpr int DeviceNativePrintersAccessModeProto::AccessMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DevicePrintersAccessModeProto_AccessMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DevicePrintersAccessModeProto_AccessMode_strings[3] = {};
+
+static const char DevicePrintersAccessModeProto_AccessMode_names[] =
+  "ACCESS_MODE_ALL"
+  "ACCESS_MODE_ALLOWLIST"
+  "ACCESS_MODE_BLOCKLIST";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DevicePrintersAccessModeProto_AccessMode_entries[] = {
+  { {DevicePrintersAccessModeProto_AccessMode_names + 0, 15}, 2 },
+  { {DevicePrintersAccessModeProto_AccessMode_names + 15, 21}, 1 },
+  { {DevicePrintersAccessModeProto_AccessMode_names + 36, 21}, 0 },
+};
+
+static const int DevicePrintersAccessModeProto_AccessMode_entries_by_number[] = {
+  2, // 0 -> ACCESS_MODE_BLOCKLIST
+  1, // 1 -> ACCESS_MODE_ALLOWLIST
+  0, // 2 -> ACCESS_MODE_ALL
+};
+
+const std::string& DevicePrintersAccessModeProto_AccessMode_Name(
+    DevicePrintersAccessModeProto_AccessMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DevicePrintersAccessModeProto_AccessMode_entries,
+          DevicePrintersAccessModeProto_AccessMode_entries_by_number,
+          3, DevicePrintersAccessModeProto_AccessMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DevicePrintersAccessModeProto_AccessMode_entries,
+      DevicePrintersAccessModeProto_AccessMode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DevicePrintersAccessModeProto_AccessMode_strings[idx].get();
+}
+bool DevicePrintersAccessModeProto_AccessMode_Parse(
+    const std::string& name, DevicePrintersAccessModeProto_AccessMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DevicePrintersAccessModeProto_AccessMode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DevicePrintersAccessModeProto_AccessMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto::ACCESS_MODE_BLOCKLIST;
+constexpr DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto::ACCESS_MODE_ALLOWLIST;
+constexpr DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto::ACCESS_MODE_ALL;
+constexpr DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto::AccessMode_MIN;
+constexpr DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto::AccessMode_MAX;
+constexpr int DevicePrintersAccessModeProto::AccessMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool TPMFirmwareUpdateSettingsProto_AutoUpdateMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> TPMFirmwareUpdateSettingsProto_AutoUpdateMode_strings[5] = {};
+
+static const char TPMFirmwareUpdateSettingsProto_AutoUpdateMode_names[] =
+  "AUTO_UPDATE_MODE_UNSPECIFIED"
+  "ENROLLMENT"
+  "NEVER"
+  "USER_ACKNOWLEDGMENT"
+  "WITHOUT_ACKNOWLEDGMENT";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry TPMFirmwareUpdateSettingsProto_AutoUpdateMode_entries[] = {
+  { {TPMFirmwareUpdateSettingsProto_AutoUpdateMode_names + 0, 28}, 0 },
+  { {TPMFirmwareUpdateSettingsProto_AutoUpdateMode_names + 28, 10}, 4 },
+  { {TPMFirmwareUpdateSettingsProto_AutoUpdateMode_names + 38, 5}, 1 },
+  { {TPMFirmwareUpdateSettingsProto_AutoUpdateMode_names + 43, 19}, 2 },
+  { {TPMFirmwareUpdateSettingsProto_AutoUpdateMode_names + 62, 22}, 3 },
+};
+
+static const int TPMFirmwareUpdateSettingsProto_AutoUpdateMode_entries_by_number[] = {
+  0, // 0 -> AUTO_UPDATE_MODE_UNSPECIFIED
+  2, // 1 -> NEVER
+  3, // 2 -> USER_ACKNOWLEDGMENT
+  4, // 3 -> WITHOUT_ACKNOWLEDGMENT
+  1, // 4 -> ENROLLMENT
+};
+
+const std::string& TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Name(
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          TPMFirmwareUpdateSettingsProto_AutoUpdateMode_entries,
+          TPMFirmwareUpdateSettingsProto_AutoUpdateMode_entries_by_number,
+          5, TPMFirmwareUpdateSettingsProto_AutoUpdateMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      TPMFirmwareUpdateSettingsProto_AutoUpdateMode_entries,
+      TPMFirmwareUpdateSettingsProto_AutoUpdateMode_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     TPMFirmwareUpdateSettingsProto_AutoUpdateMode_strings[idx].get();
+}
+bool TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Parse(
+    const std::string& name, TPMFirmwareUpdateSettingsProto_AutoUpdateMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      TPMFirmwareUpdateSettingsProto_AutoUpdateMode_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<TPMFirmwareUpdateSettingsProto_AutoUpdateMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::AUTO_UPDATE_MODE_UNSPECIFIED;
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::NEVER;
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::USER_ACKNOWLEDGMENT;
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::WITHOUT_ACKNOWLEDGMENT;
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::ENROLLMENT;
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::AutoUpdateMode_MIN;
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::AutoUpdateMode_MAX;
+constexpr int TPMFirmwareUpdateSettingsProto::AutoUpdateMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceKerberosEncryptionTypesProto_Types_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceKerberosEncryptionTypesProto_Types_strings[3] = {};
+
+static const char DeviceKerberosEncryptionTypesProto_Types_names[] =
+  "ENC_TYPES_ALL"
+  "ENC_TYPES_LEGACY"
+  "ENC_TYPES_STRONG";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceKerberosEncryptionTypesProto_Types_entries[] = {
+  { {DeviceKerberosEncryptionTypesProto_Types_names + 0, 13}, 0 },
+  { {DeviceKerberosEncryptionTypesProto_Types_names + 13, 16}, 2 },
+  { {DeviceKerberosEncryptionTypesProto_Types_names + 29, 16}, 1 },
+};
+
+static const int DeviceKerberosEncryptionTypesProto_Types_entries_by_number[] = {
+  0, // 0 -> ENC_TYPES_ALL
+  2, // 1 -> ENC_TYPES_STRONG
+  1, // 2 -> ENC_TYPES_LEGACY
+};
+
+const std::string& DeviceKerberosEncryptionTypesProto_Types_Name(
+    DeviceKerberosEncryptionTypesProto_Types value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceKerberosEncryptionTypesProto_Types_entries,
+          DeviceKerberosEncryptionTypesProto_Types_entries_by_number,
+          3, DeviceKerberosEncryptionTypesProto_Types_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceKerberosEncryptionTypesProto_Types_entries,
+      DeviceKerberosEncryptionTypesProto_Types_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceKerberosEncryptionTypesProto_Types_strings[idx].get();
+}
+bool DeviceKerberosEncryptionTypesProto_Types_Parse(
+    const std::string& name, DeviceKerberosEncryptionTypesProto_Types* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceKerberosEncryptionTypesProto_Types_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceKerberosEncryptionTypesProto_Types>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto::ENC_TYPES_ALL;
+constexpr DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto::ENC_TYPES_STRONG;
+constexpr DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto::ENC_TYPES_LEGACY;
+constexpr DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto::Types_MIN;
+constexpr DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto::Types_MAX;
+constexpr int DeviceKerberosEncryptionTypesProto::Types_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceUserPolicyLoopbackProcessingModeProto_Mode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceUserPolicyLoopbackProcessingModeProto_Mode_strings[3] = {};
+
+static const char DeviceUserPolicyLoopbackProcessingModeProto_Mode_names[] =
+  "USER_POLICY_MODE_DEFAULT"
+  "USER_POLICY_MODE_MERGE"
+  "USER_POLICY_MODE_REPLACE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceUserPolicyLoopbackProcessingModeProto_Mode_entries[] = {
+  { {DeviceUserPolicyLoopbackProcessingModeProto_Mode_names + 0, 24}, 0 },
+  { {DeviceUserPolicyLoopbackProcessingModeProto_Mode_names + 24, 22}, 1 },
+  { {DeviceUserPolicyLoopbackProcessingModeProto_Mode_names + 46, 24}, 2 },
+};
+
+static const int DeviceUserPolicyLoopbackProcessingModeProto_Mode_entries_by_number[] = {
+  0, // 0 -> USER_POLICY_MODE_DEFAULT
+  1, // 1 -> USER_POLICY_MODE_MERGE
+  2, // 2 -> USER_POLICY_MODE_REPLACE
+};
+
+const std::string& DeviceUserPolicyLoopbackProcessingModeProto_Mode_Name(
+    DeviceUserPolicyLoopbackProcessingModeProto_Mode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceUserPolicyLoopbackProcessingModeProto_Mode_entries,
+          DeviceUserPolicyLoopbackProcessingModeProto_Mode_entries_by_number,
+          3, DeviceUserPolicyLoopbackProcessingModeProto_Mode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceUserPolicyLoopbackProcessingModeProto_Mode_entries,
+      DeviceUserPolicyLoopbackProcessingModeProto_Mode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceUserPolicyLoopbackProcessingModeProto_Mode_strings[idx].get();
+}
+bool DeviceUserPolicyLoopbackProcessingModeProto_Mode_Parse(
+    const std::string& name, DeviceUserPolicyLoopbackProcessingModeProto_Mode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceUserPolicyLoopbackProcessingModeProto_Mode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceUserPolicyLoopbackProcessingModeProto_Mode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto::USER_POLICY_MODE_DEFAULT;
+constexpr DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto::USER_POLICY_MODE_MERGE;
+constexpr DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto::USER_POLICY_MODE_REPLACE;
+constexpr DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto::Mode_MIN;
+constexpr DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto::Mode_MAX;
+constexpr int DeviceUserPolicyLoopbackProcessingModeProto::Mode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SamlLoginAuthenticationTypeProto_Type_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SamlLoginAuthenticationTypeProto_Type_strings[2] = {};
+
+static const char SamlLoginAuthenticationTypeProto_Type_names[] =
+  "TYPE_CLIENT_CERTIFICATE"
+  "TYPE_DEFAULT";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SamlLoginAuthenticationTypeProto_Type_entries[] = {
+  { {SamlLoginAuthenticationTypeProto_Type_names + 0, 23}, 1 },
+  { {SamlLoginAuthenticationTypeProto_Type_names + 23, 12}, 0 },
+};
+
+static const int SamlLoginAuthenticationTypeProto_Type_entries_by_number[] = {
+  1, // 0 -> TYPE_DEFAULT
+  0, // 1 -> TYPE_CLIENT_CERTIFICATE
+};
+
+const std::string& SamlLoginAuthenticationTypeProto_Type_Name(
+    SamlLoginAuthenticationTypeProto_Type value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SamlLoginAuthenticationTypeProto_Type_entries,
+          SamlLoginAuthenticationTypeProto_Type_entries_by_number,
+          2, SamlLoginAuthenticationTypeProto_Type_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SamlLoginAuthenticationTypeProto_Type_entries,
+      SamlLoginAuthenticationTypeProto_Type_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SamlLoginAuthenticationTypeProto_Type_strings[idx].get();
+}
+bool SamlLoginAuthenticationTypeProto_Type_Parse(
+    const std::string& name, SamlLoginAuthenticationTypeProto_Type* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SamlLoginAuthenticationTypeProto_Type_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<SamlLoginAuthenticationTypeProto_Type>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SamlLoginAuthenticationTypeProto_Type SamlLoginAuthenticationTypeProto::TYPE_DEFAULT;
+constexpr SamlLoginAuthenticationTypeProto_Type SamlLoginAuthenticationTypeProto::TYPE_CLIENT_CERTIFICATE;
+constexpr SamlLoginAuthenticationTypeProto_Type SamlLoginAuthenticationTypeProto::Type_MIN;
+constexpr SamlLoginAuthenticationTypeProto_Type SamlLoginAuthenticationTypeProto::Type_MAX;
+constexpr int SamlLoginAuthenticationTypeProto::Type_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_strings[5] = {};
+
+static const char DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_names[] =
+  "ALWAYS"
+  "ARC_SESSION"
+  "NEVER"
+  "REBOOT_ON_SIGNOUT_MODE_UNSPECIFIED"
+  "VM_STARTED_OR_ARC_SESSION";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_entries[] = {
+  { {DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_names + 0, 6}, 3 },
+  { {DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_names + 6, 11}, 2 },
+  { {DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_names + 17, 5}, 1 },
+  { {DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_names + 22, 34}, 0 },
+  { {DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_names + 56, 25}, 4 },
+};
+
+static const int DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_entries_by_number[] = {
+  3, // 0 -> REBOOT_ON_SIGNOUT_MODE_UNSPECIFIED
+  2, // 1 -> NEVER
+  1, // 2 -> ARC_SESSION
+  0, // 3 -> ALWAYS
+  4, // 4 -> VM_STARTED_OR_ARC_SESSION
+};
+
+const std::string& DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Name(
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_entries,
+          DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_entries_by_number,
+          5, DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_entries,
+      DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_strings[idx].get();
+}
+bool DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Parse(
+    const std::string& name, DeviceRebootOnUserSignoutProto_RebootOnSignoutMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceRebootOnUserSignoutProto_RebootOnSignoutMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::REBOOT_ON_SIGNOUT_MODE_UNSPECIFIED;
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::NEVER;
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::ARC_SESSION;
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::ALWAYS;
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::VM_STARTED_OR_ARC_SESSION;
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::RebootOnSignoutMode_MIN;
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::RebootOnSignoutMode_MAX;
+constexpr int DeviceRebootOnUserSignoutProto::RebootOnSignoutMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceDockMacAddressSourceProto_Source_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceDockMacAddressSourceProto_Source_strings[4] = {};
+
+static const char DeviceDockMacAddressSourceProto_Source_names[] =
+  "DEVICE_DOCK_MAC_ADDRESS"
+  "DEVICE_NIC_MAC_ADDRESS"
+  "DOCK_NIC_MAC_ADDRESS"
+  "SOURCE_UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceDockMacAddressSourceProto_Source_entries[] = {
+  { {DeviceDockMacAddressSourceProto_Source_names + 0, 23}, 1 },
+  { {DeviceDockMacAddressSourceProto_Source_names + 23, 22}, 2 },
+  { {DeviceDockMacAddressSourceProto_Source_names + 45, 20}, 3 },
+  { {DeviceDockMacAddressSourceProto_Source_names + 65, 18}, 0 },
+};
+
+static const int DeviceDockMacAddressSourceProto_Source_entries_by_number[] = {
+  3, // 0 -> SOURCE_UNSPECIFIED
+  0, // 1 -> DEVICE_DOCK_MAC_ADDRESS
+  1, // 2 -> DEVICE_NIC_MAC_ADDRESS
+  2, // 3 -> DOCK_NIC_MAC_ADDRESS
+};
+
+const std::string& DeviceDockMacAddressSourceProto_Source_Name(
+    DeviceDockMacAddressSourceProto_Source value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceDockMacAddressSourceProto_Source_entries,
+          DeviceDockMacAddressSourceProto_Source_entries_by_number,
+          4, DeviceDockMacAddressSourceProto_Source_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceDockMacAddressSourceProto_Source_entries,
+      DeviceDockMacAddressSourceProto_Source_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceDockMacAddressSourceProto_Source_strings[idx].get();
+}
+bool DeviceDockMacAddressSourceProto_Source_Parse(
+    const std::string& name, DeviceDockMacAddressSourceProto_Source* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceDockMacAddressSourceProto_Source_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceDockMacAddressSourceProto_Source>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto::SOURCE_UNSPECIFIED;
+constexpr DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto::DEVICE_DOCK_MAC_ADDRESS;
+constexpr DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto::DEVICE_NIC_MAC_ADDRESS;
+constexpr DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto::DOCK_NIC_MAC_ADDRESS;
+constexpr DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto::Source_MIN;
+constexpr DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto::Source_MAX;
+constexpr int DeviceDockMacAddressSourceProto::Source_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceBatteryChargeModeProto_BatteryChargeMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceBatteryChargeModeProto_BatteryChargeMode_strings[6] = {};
+
+static const char DeviceBatteryChargeModeProto_BatteryChargeMode_names[] =
+  "ADAPTIVE"
+  "CUSTOM"
+  "EXPRESS_CHARGE"
+  "MODE_UNSPECIFIED"
+  "PRIMARILY_AC_USE"
+  "STANDARD";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceBatteryChargeModeProto_BatteryChargeMode_entries[] = {
+  { {DeviceBatteryChargeModeProto_BatteryChargeMode_names + 0, 8}, 4 },
+  { {DeviceBatteryChargeModeProto_BatteryChargeMode_names + 8, 6}, 5 },
+  { {DeviceBatteryChargeModeProto_BatteryChargeMode_names + 14, 14}, 2 },
+  { {DeviceBatteryChargeModeProto_BatteryChargeMode_names + 28, 16}, 0 },
+  { {DeviceBatteryChargeModeProto_BatteryChargeMode_names + 44, 16}, 3 },
+  { {DeviceBatteryChargeModeProto_BatteryChargeMode_names + 60, 8}, 1 },
+};
+
+static const int DeviceBatteryChargeModeProto_BatteryChargeMode_entries_by_number[] = {
+  3, // 0 -> MODE_UNSPECIFIED
+  5, // 1 -> STANDARD
+  2, // 2 -> EXPRESS_CHARGE
+  4, // 3 -> PRIMARILY_AC_USE
+  0, // 4 -> ADAPTIVE
+  1, // 5 -> CUSTOM
+};
+
+const std::string& DeviceBatteryChargeModeProto_BatteryChargeMode_Name(
+    DeviceBatteryChargeModeProto_BatteryChargeMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceBatteryChargeModeProto_BatteryChargeMode_entries,
+          DeviceBatteryChargeModeProto_BatteryChargeMode_entries_by_number,
+          6, DeviceBatteryChargeModeProto_BatteryChargeMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceBatteryChargeModeProto_BatteryChargeMode_entries,
+      DeviceBatteryChargeModeProto_BatteryChargeMode_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceBatteryChargeModeProto_BatteryChargeMode_strings[idx].get();
+}
+bool DeviceBatteryChargeModeProto_BatteryChargeMode_Parse(
+    const std::string& name, DeviceBatteryChargeModeProto_BatteryChargeMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceBatteryChargeModeProto_BatteryChargeMode_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceBatteryChargeModeProto_BatteryChargeMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::MODE_UNSPECIFIED;
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::STANDARD;
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::EXPRESS_CHARGE;
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::PRIMARILY_AC_USE;
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::ADAPTIVE;
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::CUSTOM;
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::BatteryChargeMode_MIN;
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::BatteryChargeMode_MAX;
+constexpr int DeviceBatteryChargeModeProto::BatteryChargeMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_strings[3] = {};
+
+static const char DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_names[] =
+  "ALLOW_FOR_AFFILIATED_USERS"
+  "DISALLOW"
+  "DISALLOW_WITH_POWERWASH";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_entries[] = {
+  { {DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_names + 0, 26}, 2 },
+  { {DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_names + 26, 8}, 0 },
+  { {DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_names + 34, 23}, 1 },
+};
+
+static const int DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_entries_by_number[] = {
+  1, // 0 -> DISALLOW
+  2, // 1 -> DISALLOW_WITH_POWERWASH
+  0, // 2 -> ALLOW_FOR_AFFILIATED_USERS
+};
+
+const std::string& DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Name(
+    DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_entries,
+          DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_entries_by_number,
+          3, DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_entries,
+      DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_strings[idx].get();
+}
+bool DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Parse(
+    const std::string& name, DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto::DISALLOW;
+constexpr DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto::DISALLOW_WITH_POWERWASH;
+constexpr DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto::ALLOW_FOR_AFFILIATED_USERS;
+constexpr DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto::AllowanceMode_MIN;
+constexpr DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto::AllowanceMode_MAX;
+constexpr int DeviceCrostiniArcAdbSideloadingAllowedProto::AllowanceMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+
+// ===================================================================
+
+void DevicePolicyRefreshRateProto::InitAsDefaultInstance() {
+}
+class DevicePolicyRefreshRateProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePolicyRefreshRateProto>()._has_bits_);
+  static void set_has_device_policy_refresh_rate(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DevicePolicyRefreshRateProto::DevicePolicyRefreshRateProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePolicyRefreshRateProto)
+}
+DevicePolicyRefreshRateProto::DevicePolicyRefreshRateProto(const DevicePolicyRefreshRateProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_policy_refresh_rate_ = from.device_policy_refresh_rate_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePolicyRefreshRateProto)
+}
+
+void DevicePolicyRefreshRateProto::SharedCtor() {
+  device_policy_refresh_rate_ = PROTOBUF_LONGLONG(0);
+}
+
+DevicePolicyRefreshRateProto::~DevicePolicyRefreshRateProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePolicyRefreshRateProto)
+  SharedDtor();
+}
+
+void DevicePolicyRefreshRateProto::SharedDtor() {
+}
+
+void DevicePolicyRefreshRateProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePolicyRefreshRateProto& DevicePolicyRefreshRateProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePolicyRefreshRateProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePolicyRefreshRateProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePolicyRefreshRateProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_policy_refresh_rate_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePolicyRefreshRateProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 device_policy_refresh_rate = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_device_policy_refresh_rate(&has_bits);
+          device_policy_refresh_rate_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePolicyRefreshRateProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePolicyRefreshRateProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 device_policy_refresh_rate = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_device_policy_refresh_rate(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePolicyRefreshRateProto)
+  return target;
+}
+
+size_t DevicePolicyRefreshRateProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePolicyRefreshRateProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional int64 device_policy_refresh_rate = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+        this->_internal_device_policy_refresh_rate());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePolicyRefreshRateProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePolicyRefreshRateProto*>(
+      &from));
+}
+
+void DevicePolicyRefreshRateProto::MergeFrom(const DevicePolicyRefreshRateProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePolicyRefreshRateProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_policy_refresh_rate()) {
+    _internal_set_device_policy_refresh_rate(from._internal_device_policy_refresh_rate());
+  }
+}
+
+void DevicePolicyRefreshRateProto::CopyFrom(const DevicePolicyRefreshRateProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePolicyRefreshRateProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePolicyRefreshRateProto::IsInitialized() const {
+  return true;
+}
+
+void DevicePolicyRefreshRateProto::InternalSwap(DevicePolicyRefreshRateProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_policy_refresh_rate_, other->device_policy_refresh_rate_);
+}
+
+std::string DevicePolicyRefreshRateProto::GetTypeName() const {
+  return "enterprise_management.DevicePolicyRefreshRateProto";
+}
+
+
+// ===================================================================
+
+void UserWhitelistProto::InitAsDefaultInstance() {
+}
+class UserWhitelistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UserWhitelistProto>()._has_bits_);
+};
+
+UserWhitelistProto::UserWhitelistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UserWhitelistProto)
+}
+UserWhitelistProto::UserWhitelistProto(const UserWhitelistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      user_whitelist_(from.user_whitelist_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UserWhitelistProto)
+}
+
+void UserWhitelistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UserWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+UserWhitelistProto::~UserWhitelistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UserWhitelistProto)
+  SharedDtor();
+}
+
+void UserWhitelistProto::SharedDtor() {
+}
+
+void UserWhitelistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UserWhitelistProto& UserWhitelistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UserWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UserWhitelistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UserWhitelistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  user_whitelist_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UserWhitelistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string user_whitelist = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_user_whitelist();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UserWhitelistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UserWhitelistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string user_whitelist = 1;
+  for (int i = 0, n = this->_internal_user_whitelist_size(); i < n; i++) {
+    const auto& s = this->_internal_user_whitelist(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UserWhitelistProto)
+  return target;
+}
+
+size_t UserWhitelistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UserWhitelistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string user_whitelist = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(user_whitelist_.size());
+  for (int i = 0, n = user_whitelist_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      user_whitelist_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UserWhitelistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UserWhitelistProto*>(
+      &from));
+}
+
+void UserWhitelistProto::MergeFrom(const UserWhitelistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UserWhitelistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  user_whitelist_.MergeFrom(from.user_whitelist_);
+}
+
+void UserWhitelistProto::CopyFrom(const UserWhitelistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UserWhitelistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UserWhitelistProto::IsInitialized() const {
+  return true;
+}
+
+void UserWhitelistProto::InternalSwap(UserWhitelistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  user_whitelist_.InternalSwap(&other->user_whitelist_);
+}
+
+std::string UserWhitelistProto::GetTypeName() const {
+  return "enterprise_management.UserWhitelistProto";
+}
+
+
+// ===================================================================
+
+void UserAllowlistProto::InitAsDefaultInstance() {
+}
+class UserAllowlistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UserAllowlistProto>()._has_bits_);
+};
+
+UserAllowlistProto::UserAllowlistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UserAllowlistProto)
+}
+UserAllowlistProto::UserAllowlistProto(const UserAllowlistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      user_allowlist_(from.user_allowlist_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UserAllowlistProto)
+}
+
+void UserAllowlistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UserAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+UserAllowlistProto::~UserAllowlistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UserAllowlistProto)
+  SharedDtor();
+}
+
+void UserAllowlistProto::SharedDtor() {
+}
+
+void UserAllowlistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UserAllowlistProto& UserAllowlistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UserAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UserAllowlistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UserAllowlistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  user_allowlist_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UserAllowlistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string user_allowlist = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_user_allowlist();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UserAllowlistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UserAllowlistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string user_allowlist = 1;
+  for (int i = 0, n = this->_internal_user_allowlist_size(); i < n; i++) {
+    const auto& s = this->_internal_user_allowlist(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UserAllowlistProto)
+  return target;
+}
+
+size_t UserAllowlistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UserAllowlistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string user_allowlist = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(user_allowlist_.size());
+  for (int i = 0, n = user_allowlist_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      user_allowlist_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UserAllowlistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UserAllowlistProto*>(
+      &from));
+}
+
+void UserAllowlistProto::MergeFrom(const UserAllowlistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UserAllowlistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  user_allowlist_.MergeFrom(from.user_allowlist_);
+}
+
+void UserAllowlistProto::CopyFrom(const UserAllowlistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UserAllowlistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UserAllowlistProto::IsInitialized() const {
+  return true;
+}
+
+void UserAllowlistProto::InternalSwap(UserAllowlistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  user_allowlist_.InternalSwap(&other->user_allowlist_);
+}
+
+std::string UserAllowlistProto::GetTypeName() const {
+  return "enterprise_management.UserAllowlistProto";
+}
+
+
+// ===================================================================
+
+void AllowNewUsersProto::InitAsDefaultInstance() {
+}
+class AllowNewUsersProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AllowNewUsersProto>()._has_bits_);
+  static void set_has_allow_new_users(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+AllowNewUsersProto::AllowNewUsersProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AllowNewUsersProto)
+}
+AllowNewUsersProto::AllowNewUsersProto(const AllowNewUsersProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  allow_new_users_ = from.allow_new_users_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AllowNewUsersProto)
+}
+
+void AllowNewUsersProto::SharedCtor() {
+  allow_new_users_ = true;
+}
+
+AllowNewUsersProto::~AllowNewUsersProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AllowNewUsersProto)
+  SharedDtor();
+}
+
+void AllowNewUsersProto::SharedDtor() {
+}
+
+void AllowNewUsersProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AllowNewUsersProto& AllowNewUsersProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AllowNewUsersProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AllowNewUsersProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AllowNewUsersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allow_new_users_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AllowNewUsersProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool allow_new_users = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_allow_new_users(&has_bits);
+          allow_new_users_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AllowNewUsersProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AllowNewUsersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool allow_new_users = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_allow_new_users(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AllowNewUsersProto)
+  return target;
+}
+
+size_t AllowNewUsersProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AllowNewUsersProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool allow_new_users = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AllowNewUsersProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AllowNewUsersProto*>(
+      &from));
+}
+
+void AllowNewUsersProto::MergeFrom(const AllowNewUsersProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AllowNewUsersProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_allow_new_users()) {
+    _internal_set_allow_new_users(from._internal_allow_new_users());
+  }
+}
+
+void AllowNewUsersProto::CopyFrom(const AllowNewUsersProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AllowNewUsersProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AllowNewUsersProto::IsInitialized() const {
+  return true;
+}
+
+void AllowNewUsersProto::InternalSwap(AllowNewUsersProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(allow_new_users_, other->allow_new_users_);
+}
+
+std::string AllowNewUsersProto::GetTypeName() const {
+  return "enterprise_management.AllowNewUsersProto";
+}
+
+
+// ===================================================================
+
+void GuestModeEnabledProto::InitAsDefaultInstance() {
+}
+class GuestModeEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<GuestModeEnabledProto>()._has_bits_);
+  static void set_has_guest_mode_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+GuestModeEnabledProto::GuestModeEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.GuestModeEnabledProto)
+}
+GuestModeEnabledProto::GuestModeEnabledProto(const GuestModeEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  guest_mode_enabled_ = from.guest_mode_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.GuestModeEnabledProto)
+}
+
+void GuestModeEnabledProto::SharedCtor() {
+  guest_mode_enabled_ = true;
+}
+
+GuestModeEnabledProto::~GuestModeEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.GuestModeEnabledProto)
+  SharedDtor();
+}
+
+void GuestModeEnabledProto::SharedDtor() {
+}
+
+void GuestModeEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const GuestModeEnabledProto& GuestModeEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_GuestModeEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void GuestModeEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.GuestModeEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  guest_mode_enabled_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* GuestModeEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool guest_mode_enabled = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_guest_mode_enabled(&has_bits);
+          guest_mode_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* GuestModeEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.GuestModeEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool guest_mode_enabled = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_guest_mode_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.GuestModeEnabledProto)
+  return target;
+}
+
+size_t GuestModeEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.GuestModeEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool guest_mode_enabled = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void GuestModeEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const GuestModeEnabledProto*>(
+      &from));
+}
+
+void GuestModeEnabledProto::MergeFrom(const GuestModeEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.GuestModeEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_guest_mode_enabled()) {
+    _internal_set_guest_mode_enabled(from._internal_guest_mode_enabled());
+  }
+}
+
+void GuestModeEnabledProto::CopyFrom(const GuestModeEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.GuestModeEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool GuestModeEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void GuestModeEnabledProto::InternalSwap(GuestModeEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(guest_mode_enabled_, other->guest_mode_enabled_);
+}
+
+std::string GuestModeEnabledProto::GetTypeName() const {
+  return "enterprise_management.GuestModeEnabledProto";
+}
+
+
+// ===================================================================
+
+void ShowUserNamesOnSigninProto::InitAsDefaultInstance() {
+}
+class ShowUserNamesOnSigninProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ShowUserNamesOnSigninProto>()._has_bits_);
+  static void set_has_show_user_names(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ShowUserNamesOnSigninProto::ShowUserNamesOnSigninProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ShowUserNamesOnSigninProto)
+}
+ShowUserNamesOnSigninProto::ShowUserNamesOnSigninProto(const ShowUserNamesOnSigninProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  show_user_names_ = from.show_user_names_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ShowUserNamesOnSigninProto)
+}
+
+void ShowUserNamesOnSigninProto::SharedCtor() {
+  show_user_names_ = true;
+}
+
+ShowUserNamesOnSigninProto::~ShowUserNamesOnSigninProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ShowUserNamesOnSigninProto)
+  SharedDtor();
+}
+
+void ShowUserNamesOnSigninProto::SharedDtor() {
+}
+
+void ShowUserNamesOnSigninProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ShowUserNamesOnSigninProto& ShowUserNamesOnSigninProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ShowUserNamesOnSigninProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ShowUserNamesOnSigninProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ShowUserNamesOnSigninProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  show_user_names_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ShowUserNamesOnSigninProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool show_user_names = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_show_user_names(&has_bits);
+          show_user_names_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ShowUserNamesOnSigninProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ShowUserNamesOnSigninProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool show_user_names = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_show_user_names(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ShowUserNamesOnSigninProto)
+  return target;
+}
+
+size_t ShowUserNamesOnSigninProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ShowUserNamesOnSigninProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool show_user_names = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ShowUserNamesOnSigninProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ShowUserNamesOnSigninProto*>(
+      &from));
+}
+
+void ShowUserNamesOnSigninProto::MergeFrom(const ShowUserNamesOnSigninProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ShowUserNamesOnSigninProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_show_user_names()) {
+    _internal_set_show_user_names(from._internal_show_user_names());
+  }
+}
+
+void ShowUserNamesOnSigninProto::CopyFrom(const ShowUserNamesOnSigninProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ShowUserNamesOnSigninProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ShowUserNamesOnSigninProto::IsInitialized() const {
+  return true;
+}
+
+void ShowUserNamesOnSigninProto::InternalSwap(ShowUserNamesOnSigninProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(show_user_names_, other->show_user_names_);
+}
+
+std::string ShowUserNamesOnSigninProto::GetTypeName() const {
+  return "enterprise_management.ShowUserNamesOnSigninProto";
+}
+
+
+// ===================================================================
+
+void DataRoamingEnabledProto::InitAsDefaultInstance() {
+}
+class DataRoamingEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DataRoamingEnabledProto>()._has_bits_);
+  static void set_has_data_roaming_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DataRoamingEnabledProto::DataRoamingEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DataRoamingEnabledProto)
+}
+DataRoamingEnabledProto::DataRoamingEnabledProto(const DataRoamingEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  data_roaming_enabled_ = from.data_roaming_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DataRoamingEnabledProto)
+}
+
+void DataRoamingEnabledProto::SharedCtor() {
+  data_roaming_enabled_ = false;
+}
+
+DataRoamingEnabledProto::~DataRoamingEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DataRoamingEnabledProto)
+  SharedDtor();
+}
+
+void DataRoamingEnabledProto::SharedDtor() {
+}
+
+void DataRoamingEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DataRoamingEnabledProto& DataRoamingEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DataRoamingEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DataRoamingEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DataRoamingEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  data_roaming_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DataRoamingEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool data_roaming_enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_data_roaming_enabled(&has_bits);
+          data_roaming_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DataRoamingEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DataRoamingEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool data_roaming_enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_data_roaming_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DataRoamingEnabledProto)
+  return target;
+}
+
+size_t DataRoamingEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DataRoamingEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool data_roaming_enabled = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DataRoamingEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DataRoamingEnabledProto*>(
+      &from));
+}
+
+void DataRoamingEnabledProto::MergeFrom(const DataRoamingEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DataRoamingEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_data_roaming_enabled()) {
+    _internal_set_data_roaming_enabled(from._internal_data_roaming_enabled());
+  }
+}
+
+void DataRoamingEnabledProto::CopyFrom(const DataRoamingEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DataRoamingEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DataRoamingEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DataRoamingEnabledProto::InternalSwap(DataRoamingEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(data_roaming_enabled_, other->data_roaming_enabled_);
+}
+
+std::string DataRoamingEnabledProto::GetTypeName() const {
+  return "enterprise_management.DataRoamingEnabledProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_DeviceProxySettingsProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_DeviceProxySettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_DeviceProxySettingsProto>()._has_bits_);
+  static void set_has_obsolete_proxy_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_obsolete_proxy_server(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_obsolete_proxy_pac_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_obsolete_proxy_bypass_list(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+OBSOLETE_DeviceProxySettingsProto::OBSOLETE_DeviceProxySettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+}
+OBSOLETE_DeviceProxySettingsProto::OBSOLETE_DeviceProxySettingsProto(const OBSOLETE_DeviceProxySettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  obsolete_proxy_mode_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_proxy_mode()) {
+    obsolete_proxy_mode_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_proxy_mode_);
+  }
+  obsolete_proxy_server_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_proxy_server()) {
+    obsolete_proxy_server_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_proxy_server_);
+  }
+  obsolete_proxy_pac_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_proxy_pac_url()) {
+    obsolete_proxy_pac_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_proxy_pac_url_);
+  }
+  obsolete_proxy_bypass_list_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_proxy_bypass_list()) {
+    obsolete_proxy_bypass_list_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_proxy_bypass_list_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+}
+
+void OBSOLETE_DeviceProxySettingsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OBSOLETE_DeviceProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  obsolete_proxy_mode_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_proxy_server_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_proxy_pac_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_proxy_bypass_list_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+OBSOLETE_DeviceProxySettingsProto::~OBSOLETE_DeviceProxySettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+  SharedDtor();
+}
+
+void OBSOLETE_DeviceProxySettingsProto::SharedDtor() {
+  obsolete_proxy_mode_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_proxy_server_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_proxy_pac_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_proxy_bypass_list_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void OBSOLETE_DeviceProxySettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_DeviceProxySettingsProto& OBSOLETE_DeviceProxySettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_DeviceProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_DeviceProxySettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      obsolete_proxy_mode_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      obsolete_proxy_server_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      obsolete_proxy_pac_url_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      obsolete_proxy_bypass_list_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_DeviceProxySettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string OBSOLETE_proxy_mode = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_obsolete_proxy_mode();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string OBSOLETE_proxy_server = 2 [deprecated = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_obsolete_proxy_server();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string OBSOLETE_proxy_pac_url = 3 [deprecated = true];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_obsolete_proxy_pac_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string OBSOLETE_proxy_bypass_list = 4 [deprecated = true];
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_obsolete_proxy_bypass_list();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_DeviceProxySettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string OBSOLETE_proxy_mode = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_obsolete_proxy_mode(), target);
+  }
+
+  // optional string OBSOLETE_proxy_server = 2 [deprecated = true];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_obsolete_proxy_server(), target);
+  }
+
+  // optional string OBSOLETE_proxy_pac_url = 3 [deprecated = true];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_obsolete_proxy_pac_url(), target);
+  }
+
+  // optional string OBSOLETE_proxy_bypass_list = 4 [deprecated = true];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_obsolete_proxy_bypass_list(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+  return target;
+}
+
+size_t OBSOLETE_DeviceProxySettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string OBSOLETE_proxy_mode = 1 [deprecated = true];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obsolete_proxy_mode());
+    }
+
+    // optional string OBSOLETE_proxy_server = 2 [deprecated = true];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obsolete_proxy_server());
+    }
+
+    // optional string OBSOLETE_proxy_pac_url = 3 [deprecated = true];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obsolete_proxy_pac_url());
+    }
+
+    // optional string OBSOLETE_proxy_bypass_list = 4 [deprecated = true];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obsolete_proxy_bypass_list());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_DeviceProxySettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_DeviceProxySettingsProto*>(
+      &from));
+}
+
+void OBSOLETE_DeviceProxySettingsProto::MergeFrom(const OBSOLETE_DeviceProxySettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      obsolete_proxy_mode_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_proxy_mode_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      obsolete_proxy_server_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_proxy_server_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      obsolete_proxy_pac_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_proxy_pac_url_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      obsolete_proxy_bypass_list_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_proxy_bypass_list_);
+    }
+  }
+}
+
+void OBSOLETE_DeviceProxySettingsProto::CopyFrom(const OBSOLETE_DeviceProxySettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_DeviceProxySettingsProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_DeviceProxySettingsProto::InternalSwap(OBSOLETE_DeviceProxySettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  obsolete_proxy_mode_.Swap(&other->obsolete_proxy_mode_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  obsolete_proxy_server_.Swap(&other->obsolete_proxy_server_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  obsolete_proxy_pac_url_.Swap(&other->obsolete_proxy_pac_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  obsolete_proxy_bypass_list_.Swap(&other->obsolete_proxy_bypass_list_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string OBSOLETE_DeviceProxySettingsProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_DeviceProxySettingsProto";
+}
+
+
+// ===================================================================
+
+void CameraEnabledProto::InitAsDefaultInstance() {
+}
+class CameraEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CameraEnabledProto>()._has_bits_);
+  static void set_has_camera_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+CameraEnabledProto::CameraEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CameraEnabledProto)
+}
+CameraEnabledProto::CameraEnabledProto(const CameraEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  camera_enabled_ = from.camera_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CameraEnabledProto)
+}
+
+void CameraEnabledProto::SharedCtor() {
+  camera_enabled_ = false;
+}
+
+CameraEnabledProto::~CameraEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CameraEnabledProto)
+  SharedDtor();
+}
+
+void CameraEnabledProto::SharedDtor() {
+}
+
+void CameraEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CameraEnabledProto& CameraEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CameraEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CameraEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CameraEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  camera_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CameraEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool camera_enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_camera_enabled(&has_bits);
+          camera_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CameraEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CameraEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool camera_enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_camera_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CameraEnabledProto)
+  return target;
+}
+
+size_t CameraEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CameraEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool camera_enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CameraEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CameraEnabledProto*>(
+      &from));
+}
+
+void CameraEnabledProto::MergeFrom(const CameraEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CameraEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_camera_enabled()) {
+    _internal_set_camera_enabled(from._internal_camera_enabled());
+  }
+}
+
+void CameraEnabledProto::CopyFrom(const CameraEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CameraEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CameraEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void CameraEnabledProto::InternalSwap(CameraEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(camera_enabled_, other->camera_enabled_);
+}
+
+std::string CameraEnabledProto::GetTypeName() const {
+  return "enterprise_management.CameraEnabledProto";
+}
+
+
+// ===================================================================
+
+void MetricsEnabledProto::InitAsDefaultInstance() {
+}
+class MetricsEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<MetricsEnabledProto>()._has_bits_);
+  static void set_has_metrics_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+MetricsEnabledProto::MetricsEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.MetricsEnabledProto)
+}
+MetricsEnabledProto::MetricsEnabledProto(const MetricsEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  metrics_enabled_ = from.metrics_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.MetricsEnabledProto)
+}
+
+void MetricsEnabledProto::SharedCtor() {
+  metrics_enabled_ = false;
+}
+
+MetricsEnabledProto::~MetricsEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.MetricsEnabledProto)
+  SharedDtor();
+}
+
+void MetricsEnabledProto::SharedDtor() {
+}
+
+void MetricsEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const MetricsEnabledProto& MetricsEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_MetricsEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void MetricsEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.MetricsEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  metrics_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* MetricsEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool metrics_enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_metrics_enabled(&has_bits);
+          metrics_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* MetricsEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.MetricsEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool metrics_enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_metrics_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.MetricsEnabledProto)
+  return target;
+}
+
+size_t MetricsEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.MetricsEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool metrics_enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void MetricsEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const MetricsEnabledProto*>(
+      &from));
+}
+
+void MetricsEnabledProto::MergeFrom(const MetricsEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.MetricsEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_metrics_enabled()) {
+    _internal_set_metrics_enabled(from._internal_metrics_enabled());
+  }
+}
+
+void MetricsEnabledProto::CopyFrom(const MetricsEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.MetricsEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool MetricsEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void MetricsEnabledProto::InternalSwap(MetricsEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(metrics_enabled_, other->metrics_enabled_);
+}
+
+std::string MetricsEnabledProto::GetTypeName() const {
+  return "enterprise_management.MetricsEnabledProto";
+}
+
+
+// ===================================================================
+
+void ReleaseChannelProto::InitAsDefaultInstance() {
+}
+class ReleaseChannelProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ReleaseChannelProto>()._has_bits_);
+  static void set_has_release_channel(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_release_channel_delegated(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_release_lts_tag(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+ReleaseChannelProto::ReleaseChannelProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ReleaseChannelProto)
+}
+ReleaseChannelProto::ReleaseChannelProto(const ReleaseChannelProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  release_channel_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_release_channel()) {
+    release_channel_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.release_channel_);
+  }
+  release_lts_tag_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_release_lts_tag()) {
+    release_lts_tag_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.release_lts_tag_);
+  }
+  release_channel_delegated_ = from.release_channel_delegated_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ReleaseChannelProto)
+}
+
+void ReleaseChannelProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ReleaseChannelProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  release_channel_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  release_lts_tag_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  release_channel_delegated_ = false;
+}
+
+ReleaseChannelProto::~ReleaseChannelProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ReleaseChannelProto)
+  SharedDtor();
+}
+
+void ReleaseChannelProto::SharedDtor() {
+  release_channel_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  release_lts_tag_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ReleaseChannelProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ReleaseChannelProto& ReleaseChannelProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ReleaseChannelProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ReleaseChannelProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ReleaseChannelProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      release_channel_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      release_lts_tag_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  release_channel_delegated_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ReleaseChannelProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string release_channel = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_release_channel();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool release_channel_delegated = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_release_channel_delegated(&has_bits);
+          release_channel_delegated_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string release_lts_tag = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_release_lts_tag();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ReleaseChannelProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ReleaseChannelProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string release_channel = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_release_channel(), target);
+  }
+
+  // optional bool release_channel_delegated = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_release_channel_delegated(), target);
+  }
+
+  // optional string release_lts_tag = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_release_lts_tag(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ReleaseChannelProto)
+  return target;
+}
+
+size_t ReleaseChannelProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ReleaseChannelProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string release_channel = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_release_channel());
+    }
+
+    // optional string release_lts_tag = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_release_lts_tag());
+    }
+
+    // optional bool release_channel_delegated = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ReleaseChannelProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ReleaseChannelProto*>(
+      &from));
+}
+
+void ReleaseChannelProto::MergeFrom(const ReleaseChannelProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ReleaseChannelProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      release_channel_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.release_channel_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      release_lts_tag_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.release_lts_tag_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      release_channel_delegated_ = from.release_channel_delegated_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ReleaseChannelProto::CopyFrom(const ReleaseChannelProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ReleaseChannelProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ReleaseChannelProto::IsInitialized() const {
+  return true;
+}
+
+void ReleaseChannelProto::InternalSwap(ReleaseChannelProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  release_channel_.Swap(&other->release_channel_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  release_lts_tag_.Swap(&other->release_lts_tag_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(release_channel_delegated_, other->release_channel_delegated_);
+}
+
+std::string ReleaseChannelProto::GetTypeName() const {
+  return "enterprise_management.ReleaseChannelProto";
+}
+
+
+// ===================================================================
+
+void DeviceOpenNetworkConfigurationProto::InitAsDefaultInstance() {
+}
+class DeviceOpenNetworkConfigurationProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceOpenNetworkConfigurationProto>()._has_bits_);
+  static void set_has_open_network_configuration(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceOpenNetworkConfigurationProto::DeviceOpenNetworkConfigurationProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceOpenNetworkConfigurationProto)
+}
+DeviceOpenNetworkConfigurationProto::DeviceOpenNetworkConfigurationProto(const DeviceOpenNetworkConfigurationProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  open_network_configuration_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_open_network_configuration()) {
+    open_network_configuration_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.open_network_configuration_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceOpenNetworkConfigurationProto)
+}
+
+void DeviceOpenNetworkConfigurationProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceOpenNetworkConfigurationProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  open_network_configuration_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceOpenNetworkConfigurationProto::~DeviceOpenNetworkConfigurationProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceOpenNetworkConfigurationProto)
+  SharedDtor();
+}
+
+void DeviceOpenNetworkConfigurationProto::SharedDtor() {
+  open_network_configuration_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceOpenNetworkConfigurationProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceOpenNetworkConfigurationProto& DeviceOpenNetworkConfigurationProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceOpenNetworkConfigurationProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceOpenNetworkConfigurationProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceOpenNetworkConfigurationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    open_network_configuration_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceOpenNetworkConfigurationProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string open_network_configuration = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_open_network_configuration();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceOpenNetworkConfigurationProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceOpenNetworkConfigurationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string open_network_configuration = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_open_network_configuration(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceOpenNetworkConfigurationProto)
+  return target;
+}
+
+size_t DeviceOpenNetworkConfigurationProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceOpenNetworkConfigurationProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string open_network_configuration = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_open_network_configuration());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceOpenNetworkConfigurationProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceOpenNetworkConfigurationProto*>(
+      &from));
+}
+
+void DeviceOpenNetworkConfigurationProto::MergeFrom(const DeviceOpenNetworkConfigurationProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceOpenNetworkConfigurationProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_open_network_configuration()) {
+    _has_bits_[0] |= 0x00000001u;
+    open_network_configuration_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.open_network_configuration_);
+  }
+}
+
+void DeviceOpenNetworkConfigurationProto::CopyFrom(const DeviceOpenNetworkConfigurationProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceOpenNetworkConfigurationProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceOpenNetworkConfigurationProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceOpenNetworkConfigurationProto::InternalSwap(DeviceOpenNetworkConfigurationProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  open_network_configuration_.Swap(&other->open_network_configuration_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceOpenNetworkConfigurationProto::GetTypeName() const {
+  return "enterprise_management.DeviceOpenNetworkConfigurationProto";
+}
+
+
+// ===================================================================
+
+void NetworkHostnameProto::InitAsDefaultInstance() {
+}
+class NetworkHostnameProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<NetworkHostnameProto>()._has_bits_);
+  static void set_has_device_hostname_template(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+NetworkHostnameProto::NetworkHostnameProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.NetworkHostnameProto)
+}
+NetworkHostnameProto::NetworkHostnameProto(const NetworkHostnameProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_hostname_template_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_hostname_template()) {
+    device_hostname_template_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_hostname_template_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.NetworkHostnameProto)
+}
+
+void NetworkHostnameProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_NetworkHostnameProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  device_hostname_template_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+NetworkHostnameProto::~NetworkHostnameProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.NetworkHostnameProto)
+  SharedDtor();
+}
+
+void NetworkHostnameProto::SharedDtor() {
+  device_hostname_template_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void NetworkHostnameProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const NetworkHostnameProto& NetworkHostnameProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_NetworkHostnameProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void NetworkHostnameProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.NetworkHostnameProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    device_hostname_template_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* NetworkHostnameProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_hostname_template = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_hostname_template();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* NetworkHostnameProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.NetworkHostnameProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_hostname_template = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_hostname_template(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.NetworkHostnameProto)
+  return target;
+}
+
+size_t NetworkHostnameProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.NetworkHostnameProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string device_hostname_template = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_hostname_template());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void NetworkHostnameProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const NetworkHostnameProto*>(
+      &from));
+}
+
+void NetworkHostnameProto::MergeFrom(const NetworkHostnameProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.NetworkHostnameProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_hostname_template()) {
+    _has_bits_[0] |= 0x00000001u;
+    device_hostname_template_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_hostname_template_);
+  }
+}
+
+void NetworkHostnameProto::CopyFrom(const NetworkHostnameProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.NetworkHostnameProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool NetworkHostnameProto::IsInitialized() const {
+  return true;
+}
+
+void NetworkHostnameProto::InternalSwap(NetworkHostnameProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_hostname_template_.Swap(&other->device_hostname_template_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string NetworkHostnameProto::GetTypeName() const {
+  return "enterprise_management.NetworkHostnameProto";
+}
+
+
+// ===================================================================
+
+void HostnameUserConfigurableProto::InitAsDefaultInstance() {
+}
+class HostnameUserConfigurableProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<HostnameUserConfigurableProto>()._has_bits_);
+  static void set_has_device_hostname_user_configurable(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+HostnameUserConfigurableProto::HostnameUserConfigurableProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.HostnameUserConfigurableProto)
+}
+HostnameUserConfigurableProto::HostnameUserConfigurableProto(const HostnameUserConfigurableProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_hostname_user_configurable_ = from.device_hostname_user_configurable_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.HostnameUserConfigurableProto)
+}
+
+void HostnameUserConfigurableProto::SharedCtor() {
+  device_hostname_user_configurable_ = false;
+}
+
+HostnameUserConfigurableProto::~HostnameUserConfigurableProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.HostnameUserConfigurableProto)
+  SharedDtor();
+}
+
+void HostnameUserConfigurableProto::SharedDtor() {
+}
+
+void HostnameUserConfigurableProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const HostnameUserConfigurableProto& HostnameUserConfigurableProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_HostnameUserConfigurableProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void HostnameUserConfigurableProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.HostnameUserConfigurableProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_hostname_user_configurable_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* HostnameUserConfigurableProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool device_hostname_user_configurable = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_device_hostname_user_configurable(&has_bits);
+          device_hostname_user_configurable_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* HostnameUserConfigurableProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.HostnameUserConfigurableProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool device_hostname_user_configurable = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_device_hostname_user_configurable(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.HostnameUserConfigurableProto)
+  return target;
+}
+
+size_t HostnameUserConfigurableProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.HostnameUserConfigurableProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool device_hostname_user_configurable = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void HostnameUserConfigurableProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const HostnameUserConfigurableProto*>(
+      &from));
+}
+
+void HostnameUserConfigurableProto::MergeFrom(const HostnameUserConfigurableProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.HostnameUserConfigurableProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_hostname_user_configurable()) {
+    _internal_set_device_hostname_user_configurable(from._internal_device_hostname_user_configurable());
+  }
+}
+
+void HostnameUserConfigurableProto::CopyFrom(const HostnameUserConfigurableProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.HostnameUserConfigurableProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool HostnameUserConfigurableProto::IsInitialized() const {
+  return true;
+}
+
+void HostnameUserConfigurableProto::InternalSwap(HostnameUserConfigurableProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_hostname_user_configurable_, other->device_hostname_user_configurable_);
+}
+
+std::string HostnameUserConfigurableProto::GetTypeName() const {
+  return "enterprise_management.HostnameUserConfigurableProto";
+}
+
+
+// ===================================================================
+
+void DeviceReportingProto::InitAsDefaultInstance() {
+}
+class DeviceReportingProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceReportingProto>()._has_bits_);
+  static void set_has_report_version_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 33554432u;
+  }
+  static void set_has_report_activity_times(HasBits* has_bits) {
+    (*has_bits)[0] |= 67108864u;
+  }
+  static void set_has_report_boot_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 134217728u;
+  }
+  static void set_has_report_location(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_report_network_interfaces(HasBits* has_bits) {
+    (*has_bits)[0] |= 268435456u;
+  }
+  static void set_has_report_users(HasBits* has_bits) {
+    (*has_bits)[0] |= 536870912u;
+  }
+  static void set_has_report_hardware_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 1073741824u;
+  }
+  static void set_has_report_session_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 2147483648u;
+  }
+  static void set_has_report_os_update_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_report_running_kiosk_app(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_report_power_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_report_storage_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_report_board_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_report_cpu_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_report_graphics_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_report_crash_report_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_report_timezone_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_report_memory_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_report_backlight_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_report_app_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_report_bluetooth_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static void set_has_report_fan_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static void set_has_report_vpd_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static void set_has_report_system_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static void set_has_report_print_jobs(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static void set_has_report_login_logout(HasBits* has_bits) {
+    (*has_bits)[0] |= 262144u;
+  }
+  static void set_has_report_audio_status(HasBits* has_bits) {
+    (*has_bits)[1] |= 1u;
+  }
+  static void set_has_report_network_configuration(HasBits* has_bits) {
+    (*has_bits)[0] |= 4194304u;
+  }
+  static void set_has_report_network_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 8388608u;
+  }
+  static void set_has_report_security_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 524288u;
+  }
+  static void set_has_report_crd_sessions(HasBits* has_bits) {
+    (*has_bits)[0] |= 1048576u;
+  }
+  static void set_has_report_peripherals(HasBits* has_bits) {
+    (*has_bits)[0] |= 2097152u;
+  }
+  static void set_has_device_status_frequency(HasBits* has_bits) {
+    (*has_bits)[1] |= 2u;
+  }
+  static void set_has_enable_granular_reporting(HasBits* has_bits) {
+    (*has_bits)[0] |= 16777216u;
+  }
+  static void set_has_report_network_telemetry_collection_rate_ms(HasBits* has_bits) {
+    (*has_bits)[1] |= 4u;
+  }
+  static void set_has_report_network_telemetry_event_checking_rate_ms(HasBits* has_bits) {
+    (*has_bits)[1] |= 8u;
+  }
+  static void set_has_report_device_audio_status_checking_rate_ms(HasBits* has_bits) {
+    (*has_bits)[1] |= 16u;
+  }
+};
+
+DeviceReportingProto::DeviceReportingProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceReportingProto)
+}
+DeviceReportingProto::DeviceReportingProto(const DeviceReportingProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&report_location_, &from.report_location_,
+    static_cast<size_t>(reinterpret_cast<char*>(&report_device_audio_status_checking_rate_ms_) -
+    reinterpret_cast<char*>(&report_location_)) + sizeof(report_device_audio_status_checking_rate_ms_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceReportingProto)
+}
+
+void DeviceReportingProto::SharedCtor() {
+  ::memset(&report_location_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&report_peripherals_) -
+      reinterpret_cast<char*>(&report_location_)) + sizeof(report_peripherals_));
+  report_network_configuration_ = true;
+  report_network_status_ = true;
+  enable_granular_reporting_ = true;
+  report_version_info_ = true;
+  report_activity_times_ = true;
+  report_boot_mode_ = true;
+  report_network_interfaces_ = true;
+  report_users_ = true;
+  report_hardware_status_ = true;
+  report_session_status_ = true;
+  report_audio_status_ = true;
+  device_status_frequency_ = PROTOBUF_LONGLONG(10800000);
+  report_network_telemetry_collection_rate_ms_ = PROTOBUF_LONGLONG(3600000);
+  report_network_telemetry_event_checking_rate_ms_ = PROTOBUF_LONGLONG(600000);
+  report_device_audio_status_checking_rate_ms_ = PROTOBUF_LONGLONG(600000);
+}
+
+DeviceReportingProto::~DeviceReportingProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceReportingProto)
+  SharedDtor();
+}
+
+void DeviceReportingProto::SharedDtor() {
+}
+
+void DeviceReportingProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceReportingProto& DeviceReportingProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceReportingProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceReportingProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceReportingProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    ::memset(&report_location_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&report_graphics_status_) -
+        reinterpret_cast<char*>(&report_location_)) + sizeof(report_graphics_status_));
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    ::memset(&report_crash_report_info_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&report_vpd_info_) -
+        reinterpret_cast<char*>(&report_crash_report_info_)) + sizeof(report_vpd_info_));
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    ::memset(&report_system_info_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&report_peripherals_) -
+        reinterpret_cast<char*>(&report_system_info_)) + sizeof(report_peripherals_));
+    report_network_configuration_ = true;
+    report_network_status_ = true;
+  }
+  if (cached_has_bits & 0xff000000u) {
+    enable_granular_reporting_ = true;
+    report_version_info_ = true;
+    report_activity_times_ = true;
+    report_boot_mode_ = true;
+    report_network_interfaces_ = true;
+    report_users_ = true;
+    report_hardware_status_ = true;
+    report_session_status_ = true;
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x0000001fu) {
+    report_audio_status_ = true;
+    device_status_frequency_ = PROTOBUF_LONGLONG(10800000);
+    report_network_telemetry_collection_rate_ms_ = PROTOBUF_LONGLONG(3600000);
+    report_network_telemetry_event_checking_rate_ms_ = PROTOBUF_LONGLONG(600000);
+    report_device_audio_status_checking_rate_ms_ = PROTOBUF_LONGLONG(600000);
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceReportingProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool report_version_info = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_report_version_info(&_has_bits_);
+          report_version_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_activity_times = 2 [default = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_report_activity_times(&_has_bits_);
+          report_activity_times_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_boot_mode = 3 [default = true];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_report_boot_mode(&_has_bits_);
+          report_boot_mode_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_location = 4 [default = false];
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_report_location(&_has_bits_);
+          report_location_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_network_interfaces = 5 [default = true];
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_report_network_interfaces(&_has_bits_);
+          report_network_interfaces_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_users = 6 [default = true];
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_report_users(&_has_bits_);
+          report_users_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_hardware_status = 7 [default = true];
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_report_hardware_status(&_has_bits_);
+          report_hardware_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_session_status = 8 [default = true];
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_report_session_status(&_has_bits_);
+          report_session_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 device_status_frequency = 9 [default = 10800000];
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_device_status_frequency(&_has_bits_);
+          device_status_frequency_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_os_update_status = 10 [default = false];
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          _Internal::set_has_report_os_update_status(&_has_bits_);
+          report_os_update_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_running_kiosk_app = 11 [default = false];
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          _Internal::set_has_report_running_kiosk_app(&_has_bits_);
+          report_running_kiosk_app_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_power_status = 12 [default = false];
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 96)) {
+          _Internal::set_has_report_power_status(&_has_bits_);
+          report_power_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_storage_status = 13 [default = false];
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 104)) {
+          _Internal::set_has_report_storage_status(&_has_bits_);
+          report_storage_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_board_status = 14 [default = false];
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 112)) {
+          _Internal::set_has_report_board_status(&_has_bits_);
+          report_board_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_cpu_info = 15 [default = false];
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 120)) {
+          _Internal::set_has_report_cpu_info(&_has_bits_);
+          report_cpu_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_graphics_status = 16 [default = false];
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 128)) {
+          _Internal::set_has_report_graphics_status(&_has_bits_);
+          report_graphics_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_crash_report_info = 17 [default = false];
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 136)) {
+          _Internal::set_has_report_crash_report_info(&_has_bits_);
+          report_crash_report_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_timezone_info = 18 [default = false];
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 144)) {
+          _Internal::set_has_report_timezone_info(&_has_bits_);
+          report_timezone_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_memory_info = 19 [default = false];
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 152)) {
+          _Internal::set_has_report_memory_info(&_has_bits_);
+          report_memory_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_backlight_info = 20 [default = false];
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 160)) {
+          _Internal::set_has_report_backlight_info(&_has_bits_);
+          report_backlight_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_app_info = 21 [default = false];
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 168)) {
+          _Internal::set_has_report_app_info(&_has_bits_);
+          report_app_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_bluetooth_info = 22 [default = false];
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 176)) {
+          _Internal::set_has_report_bluetooth_info(&_has_bits_);
+          report_bluetooth_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_fan_info = 23 [default = false];
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 184)) {
+          _Internal::set_has_report_fan_info(&_has_bits_);
+          report_fan_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_vpd_info = 24 [default = false];
+      case 24:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 192)) {
+          _Internal::set_has_report_vpd_info(&_has_bits_);
+          report_vpd_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_system_info = 25 [default = false];
+      case 25:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 200)) {
+          _Internal::set_has_report_system_info(&_has_bits_);
+          report_system_info_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_print_jobs = 26 [default = false];
+      case 26:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 208)) {
+          _Internal::set_has_report_print_jobs(&_has_bits_);
+          report_print_jobs_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_login_logout = 27 [default = false];
+      case 27:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 216)) {
+          _Internal::set_has_report_login_logout(&_has_bits_);
+          report_login_logout_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_audio_status = 28 [default = true];
+      case 28:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 224)) {
+          _Internal::set_has_report_audio_status(&_has_bits_);
+          report_audio_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_network_configuration = 29 [default = true];
+      case 29:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 232)) {
+          _Internal::set_has_report_network_configuration(&_has_bits_);
+          report_network_configuration_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_network_status = 30 [default = true];
+      case 30:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 240)) {
+          _Internal::set_has_report_network_status(&_has_bits_);
+          report_network_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_security_status = 31 [default = false];
+      case 31:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 248)) {
+          _Internal::set_has_report_security_status(&_has_bits_);
+          report_security_status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool enable_granular_reporting = 32 [default = true];
+      case 32:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 0)) {
+          _Internal::set_has_enable_granular_reporting(&_has_bits_);
+          enable_granular_reporting_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 report_network_telemetry_collection_rate_ms = 33 [default = 3600000];
+      case 33:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_report_network_telemetry_collection_rate_ms(&_has_bits_);
+          report_network_telemetry_collection_rate_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 report_network_telemetry_event_checking_rate_ms = 34 [default = 600000];
+      case 34:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_report_network_telemetry_event_checking_rate_ms(&_has_bits_);
+          report_network_telemetry_event_checking_rate_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 report_device_audio_status_checking_rate_ms = 35 [default = 600000];
+      case 35:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_report_device_audio_status_checking_rate_ms(&_has_bits_);
+          report_device_audio_status_checking_rate_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_crd_sessions = 36 [default = false];
+      case 36:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_report_crd_sessions(&_has_bits_);
+          report_crd_sessions_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool report_peripherals = 37 [default = false];
+      case 37:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_report_peripherals(&_has_bits_);
+          report_peripherals_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceReportingProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceReportingProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool report_version_info = 1 [default = true];
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_report_version_info(), target);
+  }
+
+  // optional bool report_activity_times = 2 [default = true];
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_report_activity_times(), target);
+  }
+
+  // optional bool report_boot_mode = 3 [default = true];
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_report_boot_mode(), target);
+  }
+
+  // optional bool report_location = 4 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_report_location(), target);
+  }
+
+  // optional bool report_network_interfaces = 5 [default = true];
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(5, this->_internal_report_network_interfaces(), target);
+  }
+
+  // optional bool report_users = 6 [default = true];
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(6, this->_internal_report_users(), target);
+  }
+
+  // optional bool report_hardware_status = 7 [default = true];
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(7, this->_internal_report_hardware_status(), target);
+  }
+
+  // optional bool report_session_status = 8 [default = true];
+  if (cached_has_bits & 0x80000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(8, this->_internal_report_session_status(), target);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional int64 device_status_frequency = 9 [default = 10800000];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(9, this->_internal_device_status_frequency(), target);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool report_os_update_status = 10 [default = false];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(10, this->_internal_report_os_update_status(), target);
+  }
+
+  // optional bool report_running_kiosk_app = 11 [default = false];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(11, this->_internal_report_running_kiosk_app(), target);
+  }
+
+  // optional bool report_power_status = 12 [default = false];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(12, this->_internal_report_power_status(), target);
+  }
+
+  // optional bool report_storage_status = 13 [default = false];
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(13, this->_internal_report_storage_status(), target);
+  }
+
+  // optional bool report_board_status = 14 [default = false];
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(14, this->_internal_report_board_status(), target);
+  }
+
+  // optional bool report_cpu_info = 15 [default = false];
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(15, this->_internal_report_cpu_info(), target);
+  }
+
+  // optional bool report_graphics_status = 16 [default = false];
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(16, this->_internal_report_graphics_status(), target);
+  }
+
+  // optional bool report_crash_report_info = 17 [default = false];
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(17, this->_internal_report_crash_report_info(), target);
+  }
+
+  // optional bool report_timezone_info = 18 [default = false];
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(18, this->_internal_report_timezone_info(), target);
+  }
+
+  // optional bool report_memory_info = 19 [default = false];
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(19, this->_internal_report_memory_info(), target);
+  }
+
+  // optional bool report_backlight_info = 20 [default = false];
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(20, this->_internal_report_backlight_info(), target);
+  }
+
+  // optional bool report_app_info = 21 [default = false];
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(21, this->_internal_report_app_info(), target);
+  }
+
+  // optional bool report_bluetooth_info = 22 [default = false];
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(22, this->_internal_report_bluetooth_info(), target);
+  }
+
+  // optional bool report_fan_info = 23 [default = false];
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(23, this->_internal_report_fan_info(), target);
+  }
+
+  // optional bool report_vpd_info = 24 [default = false];
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(24, this->_internal_report_vpd_info(), target);
+  }
+
+  // optional bool report_system_info = 25 [default = false];
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(25, this->_internal_report_system_info(), target);
+  }
+
+  // optional bool report_print_jobs = 26 [default = false];
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(26, this->_internal_report_print_jobs(), target);
+  }
+
+  // optional bool report_login_logout = 27 [default = false];
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(27, this->_internal_report_login_logout(), target);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional bool report_audio_status = 28 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(28, this->_internal_report_audio_status(), target);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool report_network_configuration = 29 [default = true];
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(29, this->_internal_report_network_configuration(), target);
+  }
+
+  // optional bool report_network_status = 30 [default = true];
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(30, this->_internal_report_network_status(), target);
+  }
+
+  // optional bool report_security_status = 31 [default = false];
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(31, this->_internal_report_security_status(), target);
+  }
+
+  // optional bool enable_granular_reporting = 32 [default = true];
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(32, this->_internal_enable_granular_reporting(), target);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional int64 report_network_telemetry_collection_rate_ms = 33 [default = 3600000];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(33, this->_internal_report_network_telemetry_collection_rate_ms(), target);
+  }
+
+  // optional int64 report_network_telemetry_event_checking_rate_ms = 34 [default = 600000];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(34, this->_internal_report_network_telemetry_event_checking_rate_ms(), target);
+  }
+
+  // optional int64 report_device_audio_status_checking_rate_ms = 35 [default = 600000];
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(35, this->_internal_report_device_audio_status_checking_rate_ms(), target);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool report_crd_sessions = 36 [default = false];
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(36, this->_internal_report_crd_sessions(), target);
+  }
+
+  // optional bool report_peripherals = 37 [default = false];
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(37, this->_internal_report_peripherals(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceReportingProto)
+  return target;
+}
+
+size_t DeviceReportingProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceReportingProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional bool report_location = 4 [default = false];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_os_update_status = 10 [default = false];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_running_kiosk_app = 11 [default = false];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_power_status = 12 [default = false];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_storage_status = 13 [default = false];
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_board_status = 14 [default = false];
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_cpu_info = 15 [default = false];
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_graphics_status = 16 [default = false];
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 2 + 1;
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional bool report_crash_report_info = 17 [default = false];
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_timezone_info = 18 [default = false];
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_memory_info = 19 [default = false];
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_backlight_info = 20 [default = false];
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_app_info = 21 [default = false];
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_bluetooth_info = 22 [default = false];
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_fan_info = 23 [default = false];
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_vpd_info = 24 [default = false];
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 + 1;
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional bool report_system_info = 25 [default = false];
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_print_jobs = 26 [default = false];
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_login_logout = 27 [default = false];
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_security_status = 31 [default = false];
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_crd_sessions = 36 [default = false];
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_peripherals = 37 [default = false];
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_network_configuration = 29 [default = true];
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_network_status = 30 [default = true];
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 + 1;
+    }
+
+  }
+  if (cached_has_bits & 0xff000000u) {
+    // optional bool enable_granular_reporting = 32 [default = true];
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool report_version_info = 1 [default = true];
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_activity_times = 2 [default = true];
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_boot_mode = 3 [default = true];
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_network_interfaces = 5 [default = true];
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_users = 6 [default = true];
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_hardware_status = 7 [default = true];
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool report_session_status = 8 [default = true];
+    if (cached_has_bits & 0x80000000u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional bool report_audio_status = 28 [default = true];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 2 + 1;
+    }
+
+    // optional int64 device_status_frequency = 9 [default = 10800000];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_device_status_frequency());
+    }
+
+    // optional int64 report_network_telemetry_collection_rate_ms = 33 [default = 3600000];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_report_network_telemetry_collection_rate_ms());
+    }
+
+    // optional int64 report_network_telemetry_event_checking_rate_ms = 34 [default = 600000];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_report_network_telemetry_event_checking_rate_ms());
+    }
+
+    // optional int64 report_device_audio_status_checking_rate_ms = 35 [default = 600000];
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_report_device_audio_status_checking_rate_ms());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceReportingProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceReportingProto*>(
+      &from));
+}
+
+void DeviceReportingProto::MergeFrom(const DeviceReportingProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceReportingProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      report_location_ = from.report_location_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      report_os_update_status_ = from.report_os_update_status_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      report_running_kiosk_app_ = from.report_running_kiosk_app_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      report_power_status_ = from.report_power_status_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      report_storage_status_ = from.report_storage_status_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      report_board_status_ = from.report_board_status_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      report_cpu_info_ = from.report_cpu_info_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      report_graphics_status_ = from.report_graphics_status_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      report_crash_report_info_ = from.report_crash_report_info_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      report_timezone_info_ = from.report_timezone_info_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      report_memory_info_ = from.report_memory_info_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      report_backlight_info_ = from.report_backlight_info_;
+    }
+    if (cached_has_bits & 0x00001000u) {
+      report_app_info_ = from.report_app_info_;
+    }
+    if (cached_has_bits & 0x00002000u) {
+      report_bluetooth_info_ = from.report_bluetooth_info_;
+    }
+    if (cached_has_bits & 0x00004000u) {
+      report_fan_info_ = from.report_fan_info_;
+    }
+    if (cached_has_bits & 0x00008000u) {
+      report_vpd_info_ = from.report_vpd_info_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      report_system_info_ = from.report_system_info_;
+    }
+    if (cached_has_bits & 0x00020000u) {
+      report_print_jobs_ = from.report_print_jobs_;
+    }
+    if (cached_has_bits & 0x00040000u) {
+      report_login_logout_ = from.report_login_logout_;
+    }
+    if (cached_has_bits & 0x00080000u) {
+      report_security_status_ = from.report_security_status_;
+    }
+    if (cached_has_bits & 0x00100000u) {
+      report_crd_sessions_ = from.report_crd_sessions_;
+    }
+    if (cached_has_bits & 0x00200000u) {
+      report_peripherals_ = from.report_peripherals_;
+    }
+    if (cached_has_bits & 0x00400000u) {
+      report_network_configuration_ = from.report_network_configuration_;
+    }
+    if (cached_has_bits & 0x00800000u) {
+      report_network_status_ = from.report_network_status_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      enable_granular_reporting_ = from.enable_granular_reporting_;
+    }
+    if (cached_has_bits & 0x02000000u) {
+      report_version_info_ = from.report_version_info_;
+    }
+    if (cached_has_bits & 0x04000000u) {
+      report_activity_times_ = from.report_activity_times_;
+    }
+    if (cached_has_bits & 0x08000000u) {
+      report_boot_mode_ = from.report_boot_mode_;
+    }
+    if (cached_has_bits & 0x10000000u) {
+      report_network_interfaces_ = from.report_network_interfaces_;
+    }
+    if (cached_has_bits & 0x20000000u) {
+      report_users_ = from.report_users_;
+    }
+    if (cached_has_bits & 0x40000000u) {
+      report_hardware_status_ = from.report_hardware_status_;
+    }
+    if (cached_has_bits & 0x80000000u) {
+      report_session_status_ = from.report_session_status_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  cached_has_bits = from._has_bits_[1];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      report_audio_status_ = from.report_audio_status_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      device_status_frequency_ = from.device_status_frequency_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      report_network_telemetry_collection_rate_ms_ = from.report_network_telemetry_collection_rate_ms_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      report_network_telemetry_event_checking_rate_ms_ = from.report_network_telemetry_event_checking_rate_ms_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      report_device_audio_status_checking_rate_ms_ = from.report_device_audio_status_checking_rate_ms_;
+    }
+    _has_bits_[1] |= cached_has_bits;
+  }
+}
+
+void DeviceReportingProto::CopyFrom(const DeviceReportingProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceReportingProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceReportingProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceReportingProto::InternalSwap(DeviceReportingProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(_has_bits_[1], other->_has_bits_[1]);
+  swap(report_location_, other->report_location_);
+  swap(report_os_update_status_, other->report_os_update_status_);
+  swap(report_running_kiosk_app_, other->report_running_kiosk_app_);
+  swap(report_power_status_, other->report_power_status_);
+  swap(report_storage_status_, other->report_storage_status_);
+  swap(report_board_status_, other->report_board_status_);
+  swap(report_cpu_info_, other->report_cpu_info_);
+  swap(report_graphics_status_, other->report_graphics_status_);
+  swap(report_crash_report_info_, other->report_crash_report_info_);
+  swap(report_timezone_info_, other->report_timezone_info_);
+  swap(report_memory_info_, other->report_memory_info_);
+  swap(report_backlight_info_, other->report_backlight_info_);
+  swap(report_app_info_, other->report_app_info_);
+  swap(report_bluetooth_info_, other->report_bluetooth_info_);
+  swap(report_fan_info_, other->report_fan_info_);
+  swap(report_vpd_info_, other->report_vpd_info_);
+  swap(report_system_info_, other->report_system_info_);
+  swap(report_print_jobs_, other->report_print_jobs_);
+  swap(report_login_logout_, other->report_login_logout_);
+  swap(report_security_status_, other->report_security_status_);
+  swap(report_crd_sessions_, other->report_crd_sessions_);
+  swap(report_peripherals_, other->report_peripherals_);
+  swap(report_network_configuration_, other->report_network_configuration_);
+  swap(report_network_status_, other->report_network_status_);
+  swap(enable_granular_reporting_, other->enable_granular_reporting_);
+  swap(report_version_info_, other->report_version_info_);
+  swap(report_activity_times_, other->report_activity_times_);
+  swap(report_boot_mode_, other->report_boot_mode_);
+  swap(report_network_interfaces_, other->report_network_interfaces_);
+  swap(report_users_, other->report_users_);
+  swap(report_hardware_status_, other->report_hardware_status_);
+  swap(report_session_status_, other->report_session_status_);
+  swap(report_audio_status_, other->report_audio_status_);
+  swap(device_status_frequency_, other->device_status_frequency_);
+  swap(report_network_telemetry_collection_rate_ms_, other->report_network_telemetry_collection_rate_ms_);
+  swap(report_network_telemetry_event_checking_rate_ms_, other->report_network_telemetry_event_checking_rate_ms_);
+  swap(report_device_audio_status_checking_rate_ms_, other->report_device_audio_status_checking_rate_ms_);
+}
+
+std::string DeviceReportingProto::GetTypeName() const {
+  return "enterprise_management.DeviceReportingProto";
+}
+
+
+// ===================================================================
+
+void EphemeralUsersEnabledProto::InitAsDefaultInstance() {
+}
+class EphemeralUsersEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<EphemeralUsersEnabledProto>()._has_bits_);
+  static void set_has_ephemeral_users_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+EphemeralUsersEnabledProto::EphemeralUsersEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.EphemeralUsersEnabledProto)
+}
+EphemeralUsersEnabledProto::EphemeralUsersEnabledProto(const EphemeralUsersEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ephemeral_users_enabled_ = from.ephemeral_users_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.EphemeralUsersEnabledProto)
+}
+
+void EphemeralUsersEnabledProto::SharedCtor() {
+  ephemeral_users_enabled_ = false;
+}
+
+EphemeralUsersEnabledProto::~EphemeralUsersEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.EphemeralUsersEnabledProto)
+  SharedDtor();
+}
+
+void EphemeralUsersEnabledProto::SharedDtor() {
+}
+
+void EphemeralUsersEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const EphemeralUsersEnabledProto& EphemeralUsersEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_EphemeralUsersEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void EphemeralUsersEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.EphemeralUsersEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  ephemeral_users_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* EphemeralUsersEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool ephemeral_users_enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_ephemeral_users_enabled(&has_bits);
+          ephemeral_users_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* EphemeralUsersEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.EphemeralUsersEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool ephemeral_users_enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_ephemeral_users_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.EphemeralUsersEnabledProto)
+  return target;
+}
+
+size_t EphemeralUsersEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.EphemeralUsersEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool ephemeral_users_enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void EphemeralUsersEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const EphemeralUsersEnabledProto*>(
+      &from));
+}
+
+void EphemeralUsersEnabledProto::MergeFrom(const EphemeralUsersEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.EphemeralUsersEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_ephemeral_users_enabled()) {
+    _internal_set_ephemeral_users_enabled(from._internal_ephemeral_users_enabled());
+  }
+}
+
+void EphemeralUsersEnabledProto::CopyFrom(const EphemeralUsersEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.EphemeralUsersEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool EphemeralUsersEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void EphemeralUsersEnabledProto::InternalSwap(EphemeralUsersEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(ephemeral_users_enabled_, other->ephemeral_users_enabled_);
+}
+
+std::string EphemeralUsersEnabledProto::GetTypeName() const {
+  return "enterprise_management.EphemeralUsersEnabledProto";
+}
+
+
+// ===================================================================
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::InitAsDefaultInstance() {
+}
+class DeviceKeylockerForStorageEncryptionEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceKeylockerForStorageEncryptionEnabledProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceKeylockerForStorageEncryptionEnabledProto::DeviceKeylockerForStorageEncryptionEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+}
+DeviceKeylockerForStorageEncryptionEnabledProto::DeviceKeylockerForStorageEncryptionEnabledProto(const DeviceKeylockerForStorageEncryptionEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+}
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::SharedCtor() {
+  enabled_ = false;
+}
+
+DeviceKeylockerForStorageEncryptionEnabledProto::~DeviceKeylockerForStorageEncryptionEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+  SharedDtor();
+}
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::SharedDtor() {
+}
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceKeylockerForStorageEncryptionEnabledProto& DeviceKeylockerForStorageEncryptionEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceKeylockerForStorageEncryptionEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceKeylockerForStorageEncryptionEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceKeylockerForStorageEncryptionEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+  return target;
+}
+
+size_t DeviceKeylockerForStorageEncryptionEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceKeylockerForStorageEncryptionEnabledProto*>(
+      &from));
+}
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::MergeFrom(const DeviceKeylockerForStorageEncryptionEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::CopyFrom(const DeviceKeylockerForStorageEncryptionEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceKeylockerForStorageEncryptionEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceKeylockerForStorageEncryptionEnabledProto::InternalSwap(DeviceKeylockerForStorageEncryptionEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceKeylockerForStorageEncryptionEnabledProto::GetTypeName() const {
+  return "enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_AppPackEntryProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_AppPackEntryProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_AppPackEntryProto>()._has_bits_);
+  static void set_has_obsolete_extension_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_obsolete_update_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_obsolete_online_only(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+OBSOLETE_AppPackEntryProto::OBSOLETE_AppPackEntryProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_AppPackEntryProto)
+}
+OBSOLETE_AppPackEntryProto::OBSOLETE_AppPackEntryProto(const OBSOLETE_AppPackEntryProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  obsolete_extension_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_extension_id()) {
+    obsolete_extension_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_extension_id_);
+  }
+  obsolete_update_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_update_url()) {
+    obsolete_update_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_update_url_);
+  }
+  obsolete_online_only_ = from.obsolete_online_only_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_AppPackEntryProto)
+}
+
+void OBSOLETE_AppPackEntryProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OBSOLETE_AppPackEntryProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  obsolete_extension_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_update_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_online_only_ = false;
+}
+
+OBSOLETE_AppPackEntryProto::~OBSOLETE_AppPackEntryProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_AppPackEntryProto)
+  SharedDtor();
+}
+
+void OBSOLETE_AppPackEntryProto::SharedDtor() {
+  obsolete_extension_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_update_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void OBSOLETE_AppPackEntryProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_AppPackEntryProto& OBSOLETE_AppPackEntryProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_AppPackEntryProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_AppPackEntryProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_AppPackEntryProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      obsolete_extension_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      obsolete_update_url_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  obsolete_online_only_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_AppPackEntryProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string OBSOLETE_extension_id = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_obsolete_extension_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string OBSOLETE_update_url = 2 [deprecated = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_obsolete_update_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool OBSOLETE_online_only = 3 [deprecated = true];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_obsolete_online_only(&has_bits);
+          obsolete_online_only_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_AppPackEntryProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_AppPackEntryProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string OBSOLETE_extension_id = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_obsolete_extension_id(), target);
+  }
+
+  // optional string OBSOLETE_update_url = 2 [deprecated = true];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_obsolete_update_url(), target);
+  }
+
+  // optional bool OBSOLETE_online_only = 3 [deprecated = true];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_obsolete_online_only(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_AppPackEntryProto)
+  return target;
+}
+
+size_t OBSOLETE_AppPackEntryProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_AppPackEntryProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string OBSOLETE_extension_id = 1 [deprecated = true];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obsolete_extension_id());
+    }
+
+    // optional string OBSOLETE_update_url = 2 [deprecated = true];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obsolete_update_url());
+    }
+
+    // optional bool OBSOLETE_online_only = 3 [deprecated = true];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_AppPackEntryProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_AppPackEntryProto*>(
+      &from));
+}
+
+void OBSOLETE_AppPackEntryProto::MergeFrom(const OBSOLETE_AppPackEntryProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_AppPackEntryProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      obsolete_extension_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_extension_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      obsolete_update_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_update_url_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      obsolete_online_only_ = from.obsolete_online_only_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void OBSOLETE_AppPackEntryProto::CopyFrom(const OBSOLETE_AppPackEntryProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_AppPackEntryProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_AppPackEntryProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_AppPackEntryProto::InternalSwap(OBSOLETE_AppPackEntryProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  obsolete_extension_id_.Swap(&other->obsolete_extension_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  obsolete_update_url_.Swap(&other->obsolete_update_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(obsolete_online_only_, other->obsolete_online_only_);
+}
+
+std::string OBSOLETE_AppPackEntryProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_AppPackEntryProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_AppPackProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_AppPackProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_AppPackProto>()._has_bits_);
+};
+
+OBSOLETE_AppPackProto::OBSOLETE_AppPackProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_AppPackProto)
+}
+OBSOLETE_AppPackProto::OBSOLETE_AppPackProto(const OBSOLETE_AppPackProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      app_pack_(from.app_pack_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_AppPackProto)
+}
+
+void OBSOLETE_AppPackProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OBSOLETE_AppPackProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+OBSOLETE_AppPackProto::~OBSOLETE_AppPackProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_AppPackProto)
+  SharedDtor();
+}
+
+void OBSOLETE_AppPackProto::SharedDtor() {
+}
+
+void OBSOLETE_AppPackProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_AppPackProto& OBSOLETE_AppPackProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_AppPackProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_AppPackProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_AppPackProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  app_pack_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_AppPackProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.OBSOLETE_AppPackEntryProto app_pack = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_app_pack(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_AppPackProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_AppPackProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.OBSOLETE_AppPackEntryProto app_pack = 1 [deprecated = true];
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_app_pack_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_app_pack(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_AppPackProto)
+  return target;
+}
+
+size_t OBSOLETE_AppPackProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_AppPackProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.OBSOLETE_AppPackEntryProto app_pack = 1 [deprecated = true];
+  total_size += 1UL * this->_internal_app_pack_size();
+  for (const auto& msg : this->app_pack_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_AppPackProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_AppPackProto*>(
+      &from));
+}
+
+void OBSOLETE_AppPackProto::MergeFrom(const OBSOLETE_AppPackProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_AppPackProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  app_pack_.MergeFrom(from.app_pack_);
+}
+
+void OBSOLETE_AppPackProto::CopyFrom(const OBSOLETE_AppPackProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_AppPackProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_AppPackProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_AppPackProto::InternalSwap(OBSOLETE_AppPackProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  app_pack_.InternalSwap(&other->app_pack_);
+}
+
+std::string OBSOLETE_AppPackProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_AppPackProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_PinnedAppsProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_PinnedAppsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_PinnedAppsProto>()._has_bits_);
+};
+
+OBSOLETE_PinnedAppsProto::OBSOLETE_PinnedAppsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_PinnedAppsProto)
+}
+OBSOLETE_PinnedAppsProto::OBSOLETE_PinnedAppsProto(const OBSOLETE_PinnedAppsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      obsolete_app_id_(from.obsolete_app_id_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_PinnedAppsProto)
+}
+
+void OBSOLETE_PinnedAppsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OBSOLETE_PinnedAppsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+OBSOLETE_PinnedAppsProto::~OBSOLETE_PinnedAppsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_PinnedAppsProto)
+  SharedDtor();
+}
+
+void OBSOLETE_PinnedAppsProto::SharedDtor() {
+}
+
+void OBSOLETE_PinnedAppsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_PinnedAppsProto& OBSOLETE_PinnedAppsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_PinnedAppsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_PinnedAppsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_PinnedAppsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  obsolete_app_id_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_PinnedAppsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string OBSOLETE_app_id = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_obsolete_app_id();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_PinnedAppsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_PinnedAppsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string OBSOLETE_app_id = 1 [deprecated = true];
+  for (int i = 0, n = this->_internal_obsolete_app_id_size(); i < n; i++) {
+    const auto& s = this->_internal_obsolete_app_id(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_PinnedAppsProto)
+  return target;
+}
+
+size_t OBSOLETE_PinnedAppsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_PinnedAppsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string OBSOLETE_app_id = 1 [deprecated = true];
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(obsolete_app_id_.size());
+  for (int i = 0, n = obsolete_app_id_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      obsolete_app_id_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_PinnedAppsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_PinnedAppsProto*>(
+      &from));
+}
+
+void OBSOLETE_PinnedAppsProto::MergeFrom(const OBSOLETE_PinnedAppsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_PinnedAppsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  obsolete_app_id_.MergeFrom(from.obsolete_app_id_);
+}
+
+void OBSOLETE_PinnedAppsProto::CopyFrom(const OBSOLETE_PinnedAppsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_PinnedAppsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_PinnedAppsProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_PinnedAppsProto::InternalSwap(OBSOLETE_PinnedAppsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  obsolete_app_id_.InternalSwap(&other->obsolete_app_id_);
+}
+
+std::string OBSOLETE_PinnedAppsProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_PinnedAppsProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_ForcedLogoutTimeoutsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_ForcedLogoutTimeoutsProto>()._has_bits_);
+  static void set_has_obsolete_idle_logout_timeout(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_obsolete_idle_logout_warning_duration(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+OBSOLETE_ForcedLogoutTimeoutsProto::OBSOLETE_ForcedLogoutTimeoutsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+}
+OBSOLETE_ForcedLogoutTimeoutsProto::OBSOLETE_ForcedLogoutTimeoutsProto(const OBSOLETE_ForcedLogoutTimeoutsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&obsolete_idle_logout_timeout_, &from.obsolete_idle_logout_timeout_,
+    static_cast<size_t>(reinterpret_cast<char*>(&obsolete_idle_logout_warning_duration_) -
+    reinterpret_cast<char*>(&obsolete_idle_logout_timeout_)) + sizeof(obsolete_idle_logout_warning_duration_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+}
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::SharedCtor() {
+  ::memset(&obsolete_idle_logout_timeout_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&obsolete_idle_logout_warning_duration_) -
+      reinterpret_cast<char*>(&obsolete_idle_logout_timeout_)) + sizeof(obsolete_idle_logout_warning_duration_));
+}
+
+OBSOLETE_ForcedLogoutTimeoutsProto::~OBSOLETE_ForcedLogoutTimeoutsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+  SharedDtor();
+}
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::SharedDtor() {
+}
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_ForcedLogoutTimeoutsProto& OBSOLETE_ForcedLogoutTimeoutsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_ForcedLogoutTimeoutsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&obsolete_idle_logout_timeout_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&obsolete_idle_logout_warning_duration_) -
+        reinterpret_cast<char*>(&obsolete_idle_logout_timeout_)) + sizeof(obsolete_idle_logout_warning_duration_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_ForcedLogoutTimeoutsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 OBSOLETE_idle_logout_timeout = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_obsolete_idle_logout_timeout(&has_bits);
+          obsolete_idle_logout_timeout_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 OBSOLETE_idle_logout_warning_duration = 2 [deprecated = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_obsolete_idle_logout_warning_duration(&has_bits);
+          obsolete_idle_logout_warning_duration_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_ForcedLogoutTimeoutsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 OBSOLETE_idle_logout_timeout = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_obsolete_idle_logout_timeout(), target);
+  }
+
+  // optional int64 OBSOLETE_idle_logout_warning_duration = 2 [deprecated = true];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_obsolete_idle_logout_warning_duration(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+  return target;
+}
+
+size_t OBSOLETE_ForcedLogoutTimeoutsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int64 OBSOLETE_idle_logout_timeout = 1 [deprecated = true];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_obsolete_idle_logout_timeout());
+    }
+
+    // optional int64 OBSOLETE_idle_logout_warning_duration = 2 [deprecated = true];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_obsolete_idle_logout_warning_duration());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_ForcedLogoutTimeoutsProto*>(
+      &from));
+}
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::MergeFrom(const OBSOLETE_ForcedLogoutTimeoutsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      obsolete_idle_logout_timeout_ = from.obsolete_idle_logout_timeout_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      obsolete_idle_logout_warning_duration_ = from.obsolete_idle_logout_warning_duration_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::CopyFrom(const OBSOLETE_ForcedLogoutTimeoutsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_ForcedLogoutTimeoutsProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_ForcedLogoutTimeoutsProto::InternalSwap(OBSOLETE_ForcedLogoutTimeoutsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(obsolete_idle_logout_timeout_, other->obsolete_idle_logout_timeout_);
+  swap(obsolete_idle_logout_warning_duration_, other->obsolete_idle_logout_warning_duration_);
+}
+
+std::string OBSOLETE_ForcedLogoutTimeoutsProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_ScreenSaverProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_ScreenSaverProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_ScreenSaverProto>()._has_bits_);
+  static void set_has_obsolete_screen_saver_extension_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_obsolete_screen_saver_timeout(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+OBSOLETE_ScreenSaverProto::OBSOLETE_ScreenSaverProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_ScreenSaverProto)
+}
+OBSOLETE_ScreenSaverProto::OBSOLETE_ScreenSaverProto(const OBSOLETE_ScreenSaverProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  obsolete_screen_saver_extension_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_screen_saver_extension_id()) {
+    obsolete_screen_saver_extension_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_screen_saver_extension_id_);
+  }
+  obsolete_screen_saver_timeout_ = from.obsolete_screen_saver_timeout_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_ScreenSaverProto)
+}
+
+void OBSOLETE_ScreenSaverProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OBSOLETE_ScreenSaverProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  obsolete_screen_saver_extension_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obsolete_screen_saver_timeout_ = PROTOBUF_LONGLONG(0);
+}
+
+OBSOLETE_ScreenSaverProto::~OBSOLETE_ScreenSaverProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_ScreenSaverProto)
+  SharedDtor();
+}
+
+void OBSOLETE_ScreenSaverProto::SharedDtor() {
+  obsolete_screen_saver_extension_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void OBSOLETE_ScreenSaverProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_ScreenSaverProto& OBSOLETE_ScreenSaverProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_ScreenSaverProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_ScreenSaverProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_ScreenSaverProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    obsolete_screen_saver_extension_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  obsolete_screen_saver_timeout_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_ScreenSaverProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string OBSOLETE_screen_saver_extension_id = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_obsolete_screen_saver_extension_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 OBSOLETE_screen_saver_timeout = 2 [deprecated = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_obsolete_screen_saver_timeout(&has_bits);
+          obsolete_screen_saver_timeout_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_ScreenSaverProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_ScreenSaverProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string OBSOLETE_screen_saver_extension_id = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_obsolete_screen_saver_extension_id(), target);
+  }
+
+  // optional int64 OBSOLETE_screen_saver_timeout = 2 [deprecated = true];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_obsolete_screen_saver_timeout(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_ScreenSaverProto)
+  return target;
+}
+
+size_t OBSOLETE_ScreenSaverProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_ScreenSaverProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string OBSOLETE_screen_saver_extension_id = 1 [deprecated = true];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obsolete_screen_saver_extension_id());
+    }
+
+    // optional int64 OBSOLETE_screen_saver_timeout = 2 [deprecated = true];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_obsolete_screen_saver_timeout());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_ScreenSaverProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_ScreenSaverProto*>(
+      &from));
+}
+
+void OBSOLETE_ScreenSaverProto::MergeFrom(const OBSOLETE_ScreenSaverProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_ScreenSaverProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      obsolete_screen_saver_extension_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_screen_saver_extension_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      obsolete_screen_saver_timeout_ = from.obsolete_screen_saver_timeout_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void OBSOLETE_ScreenSaverProto::CopyFrom(const OBSOLETE_ScreenSaverProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_ScreenSaverProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_ScreenSaverProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_ScreenSaverProto::InternalSwap(OBSOLETE_ScreenSaverProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  obsolete_screen_saver_extension_id_.Swap(&other->obsolete_screen_saver_extension_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(obsolete_screen_saver_timeout_, other->obsolete_screen_saver_timeout_);
+}
+
+std::string OBSOLETE_ScreenSaverProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_ScreenSaverProto";
+}
+
+
+// ===================================================================
+
+void AutoUpdateSettingsProto::InitAsDefaultInstance() {
+}
+class AutoUpdateSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AutoUpdateSettingsProto>()._has_bits_);
+  static void set_has_update_disabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_target_version_prefix(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_target_version_display_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_scatter_factor_in_seconds(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_obsolete_reboot_after_update(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_http_downloads_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_reboot_after_update(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_p2p_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_rollback_to_target_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static void set_has_rollback_allowed_milestones(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_disallowed_time_intervals(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_staging_schedule(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_device_quick_fix_build_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_channel_downgrade_behavior(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static void set_has_target_version_selector(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+};
+
+AutoUpdateSettingsProto::AutoUpdateSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AutoUpdateSettingsProto)
+}
+AutoUpdateSettingsProto::AutoUpdateSettingsProto(const AutoUpdateSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      allowed_connection_types_(from.allowed_connection_types_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  target_version_prefix_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_target_version_prefix()) {
+    target_version_prefix_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.target_version_prefix_);
+  }
+  target_version_display_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_target_version_display_name()) {
+    target_version_display_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.target_version_display_name_);
+  }
+  disallowed_time_intervals_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_disallowed_time_intervals()) {
+    disallowed_time_intervals_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.disallowed_time_intervals_);
+  }
+  staging_schedule_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_staging_schedule()) {
+    staging_schedule_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.staging_schedule_);
+  }
+  device_quick_fix_build_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_quick_fix_build_token()) {
+    device_quick_fix_build_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_quick_fix_build_token_);
+  }
+  target_version_selector_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_target_version_selector()) {
+    target_version_selector_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.target_version_selector_);
+  }
+  ::memcpy(&scatter_factor_in_seconds_, &from.scatter_factor_in_seconds_,
+    static_cast<size_t>(reinterpret_cast<char*>(&channel_downgrade_behavior_) -
+    reinterpret_cast<char*>(&scatter_factor_in_seconds_)) + sizeof(channel_downgrade_behavior_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AutoUpdateSettingsProto)
+}
+
+void AutoUpdateSettingsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AutoUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  target_version_prefix_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  target_version_display_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  disallowed_time_intervals_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  staging_schedule_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_quick_fix_build_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  target_version_selector_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&scatter_factor_in_seconds_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&rollback_allowed_milestones_) -
+      reinterpret_cast<char*>(&scatter_factor_in_seconds_)) + sizeof(rollback_allowed_milestones_));
+  rollback_to_target_version_ = 1;
+  channel_downgrade_behavior_ = 1;
+}
+
+AutoUpdateSettingsProto::~AutoUpdateSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AutoUpdateSettingsProto)
+  SharedDtor();
+}
+
+void AutoUpdateSettingsProto::SharedDtor() {
+  target_version_prefix_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  target_version_display_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  disallowed_time_intervals_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  staging_schedule_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_quick_fix_build_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  target_version_selector_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AutoUpdateSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AutoUpdateSettingsProto& AutoUpdateSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AutoUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AutoUpdateSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AutoUpdateSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allowed_connection_types_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      target_version_prefix_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      target_version_display_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      disallowed_time_intervals_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      staging_schedule_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      device_quick_fix_build_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      target_version_selector_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x000000c0u) {
+    ::memset(&scatter_factor_in_seconds_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&update_disabled_) -
+        reinterpret_cast<char*>(&scatter_factor_in_seconds_)) + sizeof(update_disabled_));
+  }
+  if (cached_has_bits & 0x00007f00u) {
+    ::memset(&obsolete_reboot_after_update_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&rollback_allowed_milestones_) -
+        reinterpret_cast<char*>(&obsolete_reboot_after_update_)) + sizeof(rollback_allowed_milestones_));
+    rollback_to_target_version_ = 1;
+    channel_downgrade_behavior_ = 1;
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AutoUpdateSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool update_disabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_update_disabled(&has_bits);
+          update_disabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string target_version_prefix = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_target_version_prefix();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string target_version_display_name = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_target_version_display_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 scatter_factor_in_seconds = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_scatter_factor_in_seconds(&has_bits);
+          scatter_factor_in_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.AutoUpdateSettingsProto.ConnectionType allowed_connection_types = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+            CHK_(ptr);
+            if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AutoUpdateSettingsProto_ConnectionType_IsValid(val))) {
+              _internal_add_allowed_connection_types(static_cast<::enterprise_management::AutoUpdateSettingsProto_ConnectionType>(val));
+            } else {
+              ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(5, val, mutable_unknown_fields());
+            }
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<40>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedEnumParser(_internal_mutable_allowed_connection_types(), ptr, ctx, ::enterprise_management::AutoUpdateSettingsProto_ConnectionType_IsValid, &_internal_metadata_, 5);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool OBSOLETE_reboot_after_update = 6 [deprecated = true];
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_obsolete_reboot_after_update(&has_bits);
+          obsolete_reboot_after_update_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool http_downloads_enabled = 7 [default = false];
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_http_downloads_enabled(&has_bits);
+          http_downloads_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool reboot_after_update = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_reboot_after_update(&has_bits);
+          reboot_after_update_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool p2p_enabled = 9 [default = false];
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_p2p_enabled(&has_bits);
+          p2p_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AutoUpdateSettingsProto.RollbackToTargetVersion rollback_to_target_version = 10 [default = ROLLBACK_DISABLED];
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion_IsValid(val))) {
+            _internal_set_rollback_to_target_version(static_cast<::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(10, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 rollback_allowed_milestones = 11 [default = 0];
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          _Internal::set_has_rollback_allowed_milestones(&has_bits);
+          rollback_allowed_milestones_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string disallowed_time_intervals = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          auto str = _internal_mutable_disallowed_time_intervals();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string staging_schedule = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          auto str = _internal_mutable_staging_schedule();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_quick_fix_build_token = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          auto str = _internal_mutable_device_quick_fix_build_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AutoUpdateSettingsProto.ChannelDowngradeBehavior channel_downgrade_behavior = 16 [default = WAIT_FOR_VERSION_CATCH_UP];
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 128)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior_IsValid(val))) {
+            _internal_set_channel_downgrade_behavior(static_cast<::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(16, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string target_version_selector = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          auto str = _internal_mutable_target_version_selector();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AutoUpdateSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AutoUpdateSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool update_disabled = 1;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_update_disabled(), target);
+  }
+
+  // optional string target_version_prefix = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_target_version_prefix(), target);
+  }
+
+  // optional string target_version_display_name = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_target_version_display_name(), target);
+  }
+
+  // optional int64 scatter_factor_in_seconds = 4;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_scatter_factor_in_seconds(), target);
+  }
+
+  // repeated .enterprise_management.AutoUpdateSettingsProto.ConnectionType allowed_connection_types = 5;
+  for (int i = 0, n = this->_internal_allowed_connection_types_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+        5, this->_internal_allowed_connection_types(i), target);
+  }
+
+  // optional bool OBSOLETE_reboot_after_update = 6 [deprecated = true];
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(6, this->_internal_obsolete_reboot_after_update(), target);
+  }
+
+  // optional bool http_downloads_enabled = 7 [default = false];
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(7, this->_internal_http_downloads_enabled(), target);
+  }
+
+  // optional bool reboot_after_update = 8;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(8, this->_internal_reboot_after_update(), target);
+  }
+
+  // optional bool p2p_enabled = 9 [default = false];
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(9, this->_internal_p2p_enabled(), target);
+  }
+
+  // optional .enterprise_management.AutoUpdateSettingsProto.RollbackToTargetVersion rollback_to_target_version = 10 [default = ROLLBACK_DISABLED];
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      10, this->_internal_rollback_to_target_version(), target);
+  }
+
+  // optional int32 rollback_allowed_milestones = 11 [default = 0];
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(11, this->_internal_rollback_allowed_milestones(), target);
+  }
+
+  // optional string disallowed_time_intervals = 12;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        12, this->_internal_disallowed_time_intervals(), target);
+  }
+
+  // optional string staging_schedule = 14;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        14, this->_internal_staging_schedule(), target);
+  }
+
+  // optional string device_quick_fix_build_token = 15;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        15, this->_internal_device_quick_fix_build_token(), target);
+  }
+
+  // optional .enterprise_management.AutoUpdateSettingsProto.ChannelDowngradeBehavior channel_downgrade_behavior = 16 [default = WAIT_FOR_VERSION_CATCH_UP];
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      16, this->_internal_channel_downgrade_behavior(), target);
+  }
+
+  // optional string target_version_selector = 17;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteStringMaybeAliased(
+        17, this->_internal_target_version_selector(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AutoUpdateSettingsProto)
+  return target;
+}
+
+size_t AutoUpdateSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AutoUpdateSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.AutoUpdateSettingsProto.ConnectionType allowed_connection_types = 5;
+  {
+    size_t data_size = 0;
+    unsigned int count = static_cast<unsigned int>(this->_internal_allowed_connection_types_size());for (unsigned int i = 0; i < count; i++) {
+      data_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(
+        this->_internal_allowed_connection_types(static_cast<int>(i)));
+    }
+    total_size += (1UL * count) + data_size;
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string target_version_prefix = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_target_version_prefix());
+    }
+
+    // optional string target_version_display_name = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_target_version_display_name());
+    }
+
+    // optional string disallowed_time_intervals = 12;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_disallowed_time_intervals());
+    }
+
+    // optional string staging_schedule = 14;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_staging_schedule());
+    }
+
+    // optional string device_quick_fix_build_token = 15;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_quick_fix_build_token());
+    }
+
+    // optional string target_version_selector = 17;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_target_version_selector());
+    }
+
+    // optional int64 scatter_factor_in_seconds = 4;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_scatter_factor_in_seconds());
+    }
+
+    // optional bool update_disabled = 1;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (cached_has_bits & 0x00007f00u) {
+    // optional bool OBSOLETE_reboot_after_update = 6 [deprecated = true];
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool http_downloads_enabled = 7 [default = false];
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool reboot_after_update = 8;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool p2p_enabled = 9 [default = false];
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 + 1;
+    }
+
+    // optional int32 rollback_allowed_milestones = 11 [default = 0];
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_rollback_allowed_milestones());
+    }
+
+    // optional .enterprise_management.AutoUpdateSettingsProto.RollbackToTargetVersion rollback_to_target_version = 10 [default = ROLLBACK_DISABLED];
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_rollback_to_target_version());
+    }
+
+    // optional .enterprise_management.AutoUpdateSettingsProto.ChannelDowngradeBehavior channel_downgrade_behavior = 16 [default = WAIT_FOR_VERSION_CATCH_UP];
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_channel_downgrade_behavior());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AutoUpdateSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AutoUpdateSettingsProto*>(
+      &from));
+}
+
+void AutoUpdateSettingsProto::MergeFrom(const AutoUpdateSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AutoUpdateSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  allowed_connection_types_.MergeFrom(from.allowed_connection_types_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      target_version_prefix_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.target_version_prefix_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      target_version_display_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.target_version_display_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      disallowed_time_intervals_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.disallowed_time_intervals_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      staging_schedule_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.staging_schedule_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      device_quick_fix_build_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_quick_fix_build_token_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      target_version_selector_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.target_version_selector_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      scatter_factor_in_seconds_ = from.scatter_factor_in_seconds_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      update_disabled_ = from.update_disabled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00007f00u) {
+    if (cached_has_bits & 0x00000100u) {
+      obsolete_reboot_after_update_ = from.obsolete_reboot_after_update_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      http_downloads_enabled_ = from.http_downloads_enabled_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      reboot_after_update_ = from.reboot_after_update_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      p2p_enabled_ = from.p2p_enabled_;
+    }
+    if (cached_has_bits & 0x00001000u) {
+      rollback_allowed_milestones_ = from.rollback_allowed_milestones_;
+    }
+    if (cached_has_bits & 0x00002000u) {
+      rollback_to_target_version_ = from.rollback_to_target_version_;
+    }
+    if (cached_has_bits & 0x00004000u) {
+      channel_downgrade_behavior_ = from.channel_downgrade_behavior_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void AutoUpdateSettingsProto::CopyFrom(const AutoUpdateSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AutoUpdateSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AutoUpdateSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void AutoUpdateSettingsProto::InternalSwap(AutoUpdateSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  allowed_connection_types_.InternalSwap(&other->allowed_connection_types_);
+  target_version_prefix_.Swap(&other->target_version_prefix_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  target_version_display_name_.Swap(&other->target_version_display_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  disallowed_time_intervals_.Swap(&other->disallowed_time_intervals_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  staging_schedule_.Swap(&other->staging_schedule_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_quick_fix_build_token_.Swap(&other->device_quick_fix_build_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  target_version_selector_.Swap(&other->target_version_selector_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(scatter_factor_in_seconds_, other->scatter_factor_in_seconds_);
+  swap(update_disabled_, other->update_disabled_);
+  swap(obsolete_reboot_after_update_, other->obsolete_reboot_after_update_);
+  swap(http_downloads_enabled_, other->http_downloads_enabled_);
+  swap(reboot_after_update_, other->reboot_after_update_);
+  swap(p2p_enabled_, other->p2p_enabled_);
+  swap(rollback_allowed_milestones_, other->rollback_allowed_milestones_);
+  swap(rollback_to_target_version_, other->rollback_to_target_version_);
+  swap(channel_downgrade_behavior_, other->channel_downgrade_behavior_);
+}
+
+std::string AutoUpdateSettingsProto::GetTypeName() const {
+  return "enterprise_management.AutoUpdateSettingsProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_StartUpUrlsProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_StartUpUrlsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_StartUpUrlsProto>()._has_bits_);
+};
+
+OBSOLETE_StartUpUrlsProto::OBSOLETE_StartUpUrlsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_StartUpUrlsProto)
+}
+OBSOLETE_StartUpUrlsProto::OBSOLETE_StartUpUrlsProto(const OBSOLETE_StartUpUrlsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      obsolete_start_up_urls_(from.obsolete_start_up_urls_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_StartUpUrlsProto)
+}
+
+void OBSOLETE_StartUpUrlsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OBSOLETE_StartUpUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+OBSOLETE_StartUpUrlsProto::~OBSOLETE_StartUpUrlsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_StartUpUrlsProto)
+  SharedDtor();
+}
+
+void OBSOLETE_StartUpUrlsProto::SharedDtor() {
+}
+
+void OBSOLETE_StartUpUrlsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_StartUpUrlsProto& OBSOLETE_StartUpUrlsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_StartUpUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_StartUpUrlsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_StartUpUrlsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  obsolete_start_up_urls_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_StartUpUrlsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string OBSOLETE_start_up_urls = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_obsolete_start_up_urls();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_StartUpUrlsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_StartUpUrlsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string OBSOLETE_start_up_urls = 1 [deprecated = true];
+  for (int i = 0, n = this->_internal_obsolete_start_up_urls_size(); i < n; i++) {
+    const auto& s = this->_internal_obsolete_start_up_urls(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_StartUpUrlsProto)
+  return target;
+}
+
+size_t OBSOLETE_StartUpUrlsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_StartUpUrlsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string OBSOLETE_start_up_urls = 1 [deprecated = true];
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(obsolete_start_up_urls_.size());
+  for (int i = 0, n = obsolete_start_up_urls_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      obsolete_start_up_urls_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_StartUpUrlsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_StartUpUrlsProto*>(
+      &from));
+}
+
+void OBSOLETE_StartUpUrlsProto::MergeFrom(const OBSOLETE_StartUpUrlsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_StartUpUrlsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  obsolete_start_up_urls_.MergeFrom(from.obsolete_start_up_urls_);
+}
+
+void OBSOLETE_StartUpUrlsProto::CopyFrom(const OBSOLETE_StartUpUrlsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_StartUpUrlsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_StartUpUrlsProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_StartUpUrlsProto::InternalSwap(OBSOLETE_StartUpUrlsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  obsolete_start_up_urls_.InternalSwap(&other->obsolete_start_up_urls_);
+}
+
+std::string OBSOLETE_StartUpUrlsProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_StartUpUrlsProto";
+}
+
+
+// ===================================================================
+
+void SystemTimezoneProto::InitAsDefaultInstance() {
+}
+class SystemTimezoneProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemTimezoneProto>()._has_bits_);
+  static void set_has_timezone(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_timezone_detection_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+SystemTimezoneProto::SystemTimezoneProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SystemTimezoneProto)
+}
+SystemTimezoneProto::SystemTimezoneProto(const SystemTimezoneProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  timezone_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_timezone()) {
+    timezone_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.timezone_);
+  }
+  timezone_detection_type_ = from.timezone_detection_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SystemTimezoneProto)
+}
+
+void SystemTimezoneProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemTimezoneProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  timezone_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  timezone_detection_type_ = 0;
+}
+
+SystemTimezoneProto::~SystemTimezoneProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SystemTimezoneProto)
+  SharedDtor();
+}
+
+void SystemTimezoneProto::SharedDtor() {
+  timezone_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemTimezoneProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemTimezoneProto& SystemTimezoneProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemTimezoneProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemTimezoneProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SystemTimezoneProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    timezone_.ClearNonDefaultToEmptyNoArena();
+  }
+  timezone_detection_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemTimezoneProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string timezone = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_timezone();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SystemTimezoneProto.AutomaticTimezoneDetectionType timezone_detection_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType_IsValid(val))) {
+            _internal_set_timezone_detection_type(static_cast<::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemTimezoneProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SystemTimezoneProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string timezone = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_timezone(), target);
+  }
+
+  // optional .enterprise_management.SystemTimezoneProto.AutomaticTimezoneDetectionType timezone_detection_type = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_timezone_detection_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SystemTimezoneProto)
+  return target;
+}
+
+size_t SystemTimezoneProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SystemTimezoneProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string timezone = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_timezone());
+    }
+
+    // optional .enterprise_management.SystemTimezoneProto.AutomaticTimezoneDetectionType timezone_detection_type = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_timezone_detection_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemTimezoneProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemTimezoneProto*>(
+      &from));
+}
+
+void SystemTimezoneProto::MergeFrom(const SystemTimezoneProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SystemTimezoneProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      timezone_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.timezone_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      timezone_detection_type_ = from.timezone_detection_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemTimezoneProto::CopyFrom(const SystemTimezoneProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SystemTimezoneProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemTimezoneProto::IsInitialized() const {
+  return true;
+}
+
+void SystemTimezoneProto::InternalSwap(SystemTimezoneProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  timezone_.Swap(&other->timezone_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(timezone_detection_type_, other->timezone_detection_type_);
+}
+
+std::string SystemTimezoneProto::GetTypeName() const {
+  return "enterprise_management.SystemTimezoneProto";
+}
+
+
+// ===================================================================
+
+void SystemUse24HourClockProto::InitAsDefaultInstance() {
+}
+class SystemUse24HourClockProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemUse24HourClockProto>()._has_bits_);
+  static void set_has_use_24hour_clock(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SystemUse24HourClockProto::SystemUse24HourClockProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SystemUse24HourClockProto)
+}
+SystemUse24HourClockProto::SystemUse24HourClockProto(const SystemUse24HourClockProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  use_24hour_clock_ = from.use_24hour_clock_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SystemUse24HourClockProto)
+}
+
+void SystemUse24HourClockProto::SharedCtor() {
+  use_24hour_clock_ = false;
+}
+
+SystemUse24HourClockProto::~SystemUse24HourClockProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SystemUse24HourClockProto)
+  SharedDtor();
+}
+
+void SystemUse24HourClockProto::SharedDtor() {
+}
+
+void SystemUse24HourClockProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemUse24HourClockProto& SystemUse24HourClockProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemUse24HourClockProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemUse24HourClockProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SystemUse24HourClockProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  use_24hour_clock_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemUse24HourClockProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool use_24hour_clock = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_use_24hour_clock(&has_bits);
+          use_24hour_clock_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemUse24HourClockProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SystemUse24HourClockProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool use_24hour_clock = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_use_24hour_clock(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SystemUse24HourClockProto)
+  return target;
+}
+
+size_t SystemUse24HourClockProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SystemUse24HourClockProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool use_24hour_clock = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemUse24HourClockProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemUse24HourClockProto*>(
+      &from));
+}
+
+void SystemUse24HourClockProto::MergeFrom(const SystemUse24HourClockProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SystemUse24HourClockProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_use_24hour_clock()) {
+    _internal_set_use_24hour_clock(from._internal_use_24hour_clock());
+  }
+}
+
+void SystemUse24HourClockProto::CopyFrom(const SystemUse24HourClockProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SystemUse24HourClockProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemUse24HourClockProto::IsInitialized() const {
+  return true;
+}
+
+void SystemUse24HourClockProto::InternalSwap(SystemUse24HourClockProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(use_24hour_clock_, other->use_24hour_clock_);
+}
+
+std::string SystemUse24HourClockProto::GetTypeName() const {
+  return "enterprise_management.SystemUse24HourClockProto";
+}
+
+
+// ===================================================================
+
+void KioskAppInfoProto::InitAsDefaultInstance() {
+}
+class KioskAppInfoProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<KioskAppInfoProto>()._has_bits_);
+  static void set_has_app_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_update_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+KioskAppInfoProto::KioskAppInfoProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.KioskAppInfoProto)
+}
+KioskAppInfoProto::KioskAppInfoProto(const KioskAppInfoProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_id()) {
+    app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+  }
+  update_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_update_url()) {
+    update_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.update_url_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.KioskAppInfoProto)
+}
+
+void KioskAppInfoProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_KioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  update_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+KioskAppInfoProto::~KioskAppInfoProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.KioskAppInfoProto)
+  SharedDtor();
+}
+
+void KioskAppInfoProto::SharedDtor() {
+  app_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  update_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void KioskAppInfoProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const KioskAppInfoProto& KioskAppInfoProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_KioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void KioskAppInfoProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.KioskAppInfoProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      app_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      update_url_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* KioskAppInfoProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string app_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_app_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string update_url = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_update_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* KioskAppInfoProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.KioskAppInfoProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string app_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_app_id(), target);
+  }
+
+  // optional string update_url = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_update_url(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.KioskAppInfoProto)
+  return target;
+}
+
+size_t KioskAppInfoProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.KioskAppInfoProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string app_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_id());
+    }
+
+    // optional string update_url = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_update_url());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void KioskAppInfoProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const KioskAppInfoProto*>(
+      &from));
+}
+
+void KioskAppInfoProto::MergeFrom(const KioskAppInfoProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.KioskAppInfoProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      update_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.update_url_);
+    }
+  }
+}
+
+void KioskAppInfoProto::CopyFrom(const KioskAppInfoProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.KioskAppInfoProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool KioskAppInfoProto::IsInitialized() const {
+  return true;
+}
+
+void KioskAppInfoProto::InternalSwap(KioskAppInfoProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  app_id_.Swap(&other->app_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  update_url_.Swap(&other->update_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string KioskAppInfoProto::GetTypeName() const {
+  return "enterprise_management.KioskAppInfoProto";
+}
+
+
+// ===================================================================
+
+void AndroidKioskAppInfoProto::InitAsDefaultInstance() {
+}
+class AndroidKioskAppInfoProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AndroidKioskAppInfoProto>()._has_bits_);
+  static void set_has_package_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_class_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_action(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_display_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+AndroidKioskAppInfoProto::AndroidKioskAppInfoProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AndroidKioskAppInfoProto)
+}
+AndroidKioskAppInfoProto::AndroidKioskAppInfoProto(const AndroidKioskAppInfoProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  package_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_package_name()) {
+    package_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_name_);
+  }
+  class_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_class_name()) {
+    class_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.class_name_);
+  }
+  action_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_action()) {
+    action_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.action_);
+  }
+  display_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_display_name()) {
+    display_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.display_name_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AndroidKioskAppInfoProto)
+}
+
+void AndroidKioskAppInfoProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AndroidKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  package_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  class_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  action_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  display_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+AndroidKioskAppInfoProto::~AndroidKioskAppInfoProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AndroidKioskAppInfoProto)
+  SharedDtor();
+}
+
+void AndroidKioskAppInfoProto::SharedDtor() {
+  package_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  class_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  action_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  display_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AndroidKioskAppInfoProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AndroidKioskAppInfoProto& AndroidKioskAppInfoProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AndroidKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AndroidKioskAppInfoProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AndroidKioskAppInfoProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      package_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      class_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      action_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      display_name_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AndroidKioskAppInfoProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string package_name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_package_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string class_name = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_class_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string action = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_action();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string display_name = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_display_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AndroidKioskAppInfoProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AndroidKioskAppInfoProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string package_name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_package_name(), target);
+  }
+
+  // optional string class_name = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_class_name(), target);
+  }
+
+  // optional string action = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_action(), target);
+  }
+
+  // optional string display_name = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_display_name(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AndroidKioskAppInfoProto)
+  return target;
+}
+
+size_t AndroidKioskAppInfoProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AndroidKioskAppInfoProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string package_name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_package_name());
+    }
+
+    // optional string class_name = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_class_name());
+    }
+
+    // optional string action = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_action());
+    }
+
+    // optional string display_name = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_display_name());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AndroidKioskAppInfoProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AndroidKioskAppInfoProto*>(
+      &from));
+}
+
+void AndroidKioskAppInfoProto::MergeFrom(const AndroidKioskAppInfoProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AndroidKioskAppInfoProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      package_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      class_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.class_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      action_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.action_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      display_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.display_name_);
+    }
+  }
+}
+
+void AndroidKioskAppInfoProto::CopyFrom(const AndroidKioskAppInfoProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AndroidKioskAppInfoProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AndroidKioskAppInfoProto::IsInitialized() const {
+  return true;
+}
+
+void AndroidKioskAppInfoProto::InternalSwap(AndroidKioskAppInfoProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  package_name_.Swap(&other->package_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  class_name_.Swap(&other->class_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  action_.Swap(&other->action_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  display_name_.Swap(&other->display_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string AndroidKioskAppInfoProto::GetTypeName() const {
+  return "enterprise_management.AndroidKioskAppInfoProto";
+}
+
+
+// ===================================================================
+
+void WebKioskAppInfoProto::InitAsDefaultInstance() {
+}
+class WebKioskAppInfoProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<WebKioskAppInfoProto>()._has_bits_);
+  static void set_has_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_title(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_icon_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+WebKioskAppInfoProto::WebKioskAppInfoProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.WebKioskAppInfoProto)
+}
+WebKioskAppInfoProto::WebKioskAppInfoProto(const WebKioskAppInfoProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_url()) {
+    url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.url_);
+  }
+  title_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_title()) {
+    title_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.title_);
+  }
+  icon_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_icon_url()) {
+    icon_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.icon_url_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.WebKioskAppInfoProto)
+}
+
+void WebKioskAppInfoProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_WebKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  title_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  icon_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+WebKioskAppInfoProto::~WebKioskAppInfoProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.WebKioskAppInfoProto)
+  SharedDtor();
+}
+
+void WebKioskAppInfoProto::SharedDtor() {
+  url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  title_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  icon_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void WebKioskAppInfoProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const WebKioskAppInfoProto& WebKioskAppInfoProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_WebKioskAppInfoProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void WebKioskAppInfoProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.WebKioskAppInfoProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      url_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      title_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      icon_url_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* WebKioskAppInfoProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string url = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string title = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_title();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string icon_url = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_icon_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* WebKioskAppInfoProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.WebKioskAppInfoProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string url = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_url(), target);
+  }
+
+  // optional string title = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_title(), target);
+  }
+
+  // optional string icon_url = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_icon_url(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.WebKioskAppInfoProto)
+  return target;
+}
+
+size_t WebKioskAppInfoProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.WebKioskAppInfoProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string url = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_url());
+    }
+
+    // optional string title = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_title());
+    }
+
+    // optional string icon_url = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_icon_url());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void WebKioskAppInfoProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const WebKioskAppInfoProto*>(
+      &from));
+}
+
+void WebKioskAppInfoProto::MergeFrom(const WebKioskAppInfoProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.WebKioskAppInfoProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.url_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      title_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.title_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      icon_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.icon_url_);
+    }
+  }
+}
+
+void WebKioskAppInfoProto::CopyFrom(const WebKioskAppInfoProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.WebKioskAppInfoProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool WebKioskAppInfoProto::IsInitialized() const {
+  return true;
+}
+
+void WebKioskAppInfoProto::InternalSwap(WebKioskAppInfoProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  url_.Swap(&other->url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  title_.Swap(&other->title_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  icon_url_.Swap(&other->icon_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string WebKioskAppInfoProto::GetTypeName() const {
+  return "enterprise_management.WebKioskAppInfoProto";
+}
+
+
+// ===================================================================
+
+void DeviceLocalAccountInfoProto::InitAsDefaultInstance() {
+  ::enterprise_management::_DeviceLocalAccountInfoProto_default_instance_._instance.get_mutable()->kiosk_app_ = const_cast< ::enterprise_management::KioskAppInfoProto*>(
+      ::enterprise_management::KioskAppInfoProto::internal_default_instance());
+  ::enterprise_management::_DeviceLocalAccountInfoProto_default_instance_._instance.get_mutable()->android_kiosk_app_ = const_cast< ::enterprise_management::AndroidKioskAppInfoProto*>(
+      ::enterprise_management::AndroidKioskAppInfoProto::internal_default_instance());
+  ::enterprise_management::_DeviceLocalAccountInfoProto_default_instance_._instance.get_mutable()->web_kiosk_app_ = const_cast< ::enterprise_management::WebKioskAppInfoProto*>(
+      ::enterprise_management::WebKioskAppInfoProto::internal_default_instance());
+}
+class DeviceLocalAccountInfoProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceLocalAccountInfoProto>()._has_bits_);
+  static void set_has_deprecated_public_session_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_account_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::enterprise_management::KioskAppInfoProto& kiosk_app(const DeviceLocalAccountInfoProto* msg);
+  static void set_has_kiosk_app(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::AndroidKioskAppInfoProto& android_kiosk_app(const DeviceLocalAccountInfoProto* msg);
+  static void set_has_android_kiosk_app(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::enterprise_management::WebKioskAppInfoProto& web_kiosk_app(const DeviceLocalAccountInfoProto* msg);
+  static void set_has_web_kiosk_app(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+const ::enterprise_management::KioskAppInfoProto&
+DeviceLocalAccountInfoProto::_Internal::kiosk_app(const DeviceLocalAccountInfoProto* msg) {
+  return *msg->kiosk_app_;
+}
+const ::enterprise_management::AndroidKioskAppInfoProto&
+DeviceLocalAccountInfoProto::_Internal::android_kiosk_app(const DeviceLocalAccountInfoProto* msg) {
+  return *msg->android_kiosk_app_;
+}
+const ::enterprise_management::WebKioskAppInfoProto&
+DeviceLocalAccountInfoProto::_Internal::web_kiosk_app(const DeviceLocalAccountInfoProto* msg) {
+  return *msg->web_kiosk_app_;
+}
+DeviceLocalAccountInfoProto::DeviceLocalAccountInfoProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceLocalAccountInfoProto)
+}
+DeviceLocalAccountInfoProto::DeviceLocalAccountInfoProto(const DeviceLocalAccountInfoProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  deprecated_public_session_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_deprecated_public_session_id()) {
+    deprecated_public_session_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.deprecated_public_session_id_);
+  }
+  account_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_account_id()) {
+    account_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.account_id_);
+  }
+  if (from._internal_has_kiosk_app()) {
+    kiosk_app_ = new ::enterprise_management::KioskAppInfoProto(*from.kiosk_app_);
+  } else {
+    kiosk_app_ = nullptr;
+  }
+  if (from._internal_has_android_kiosk_app()) {
+    android_kiosk_app_ = new ::enterprise_management::AndroidKioskAppInfoProto(*from.android_kiosk_app_);
+  } else {
+    android_kiosk_app_ = nullptr;
+  }
+  if (from._internal_has_web_kiosk_app()) {
+    web_kiosk_app_ = new ::enterprise_management::WebKioskAppInfoProto(*from.web_kiosk_app_);
+  } else {
+    web_kiosk_app_ = nullptr;
+  }
+  type_ = from.type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceLocalAccountInfoProto)
+}
+
+void DeviceLocalAccountInfoProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceLocalAccountInfoProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  deprecated_public_session_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  account_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&kiosk_app_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&type_) -
+      reinterpret_cast<char*>(&kiosk_app_)) + sizeof(type_));
+}
+
+DeviceLocalAccountInfoProto::~DeviceLocalAccountInfoProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceLocalAccountInfoProto)
+  SharedDtor();
+}
+
+void DeviceLocalAccountInfoProto::SharedDtor() {
+  deprecated_public_session_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  account_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete kiosk_app_;
+  if (this != internal_default_instance()) delete android_kiosk_app_;
+  if (this != internal_default_instance()) delete web_kiosk_app_;
+}
+
+void DeviceLocalAccountInfoProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceLocalAccountInfoProto& DeviceLocalAccountInfoProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceLocalAccountInfoProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceLocalAccountInfoProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceLocalAccountInfoProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      deprecated_public_session_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      account_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(kiosk_app_ != nullptr);
+      kiosk_app_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(android_kiosk_app_ != nullptr);
+      android_kiosk_app_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(web_kiosk_app_ != nullptr);
+      web_kiosk_app_->Clear();
+    }
+  }
+  type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceLocalAccountInfoProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string deprecated_public_session_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_deprecated_public_session_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string account_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_account_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceLocalAccountInfoProto.AccountType type = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceLocalAccountInfoProto_AccountType_IsValid(val))) {
+            _internal_set_type(static_cast<::enterprise_management::DeviceLocalAccountInfoProto_AccountType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.KioskAppInfoProto kiosk_app = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_kiosk_app(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AndroidKioskAppInfoProto android_kiosk_app = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_android_kiosk_app(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.WebKioskAppInfoProto web_kiosk_app = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_web_kiosk_app(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceLocalAccountInfoProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceLocalAccountInfoProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string deprecated_public_session_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_deprecated_public_session_id(), target);
+  }
+
+  // optional string account_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_account_id(), target);
+  }
+
+  // optional .enterprise_management.DeviceLocalAccountInfoProto.AccountType type = 3;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_type(), target);
+  }
+
+  // optional .enterprise_management.KioskAppInfoProto kiosk_app = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::kiosk_app(this), target, stream);
+  }
+
+  // optional .enterprise_management.AndroidKioskAppInfoProto android_kiosk_app = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        5, _Internal::android_kiosk_app(this), target, stream);
+  }
+
+  // optional .enterprise_management.WebKioskAppInfoProto web_kiosk_app = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        6, _Internal::web_kiosk_app(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceLocalAccountInfoProto)
+  return target;
+}
+
+size_t DeviceLocalAccountInfoProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceLocalAccountInfoProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string deprecated_public_session_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_deprecated_public_session_id());
+    }
+
+    // optional string account_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_account_id());
+    }
+
+    // optional .enterprise_management.KioskAppInfoProto kiosk_app = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *kiosk_app_);
+    }
+
+    // optional .enterprise_management.AndroidKioskAppInfoProto android_kiosk_app = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *android_kiosk_app_);
+    }
+
+    // optional .enterprise_management.WebKioskAppInfoProto web_kiosk_app = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *web_kiosk_app_);
+    }
+
+    // optional .enterprise_management.DeviceLocalAccountInfoProto.AccountType type = 3;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceLocalAccountInfoProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceLocalAccountInfoProto*>(
+      &from));
+}
+
+void DeviceLocalAccountInfoProto::MergeFrom(const DeviceLocalAccountInfoProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceLocalAccountInfoProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      deprecated_public_session_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.deprecated_public_session_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      account_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.account_id_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_kiosk_app()->::enterprise_management::KioskAppInfoProto::MergeFrom(from._internal_kiosk_app());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_android_kiosk_app()->::enterprise_management::AndroidKioskAppInfoProto::MergeFrom(from._internal_android_kiosk_app());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_web_kiosk_app()->::enterprise_management::WebKioskAppInfoProto::MergeFrom(from._internal_web_kiosk_app());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      type_ = from.type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceLocalAccountInfoProto::CopyFrom(const DeviceLocalAccountInfoProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceLocalAccountInfoProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceLocalAccountInfoProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceLocalAccountInfoProto::InternalSwap(DeviceLocalAccountInfoProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  deprecated_public_session_id_.Swap(&other->deprecated_public_session_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  account_id_.Swap(&other->account_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(kiosk_app_, other->kiosk_app_);
+  swap(android_kiosk_app_, other->android_kiosk_app_);
+  swap(web_kiosk_app_, other->web_kiosk_app_);
+  swap(type_, other->type_);
+}
+
+std::string DeviceLocalAccountInfoProto::GetTypeName() const {
+  return "enterprise_management.DeviceLocalAccountInfoProto";
+}
+
+
+// ===================================================================
+
+void DeviceLocalAccountsProto::InitAsDefaultInstance() {
+}
+class DeviceLocalAccountsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceLocalAccountsProto>()._has_bits_);
+  static void set_has_auto_login_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_auto_login_delay(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_enable_auto_login_bailout(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_prompt_for_network_when_offline(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+DeviceLocalAccountsProto::DeviceLocalAccountsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceLocalAccountsProto)
+}
+DeviceLocalAccountsProto::DeviceLocalAccountsProto(const DeviceLocalAccountsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      account_(from.account_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  auto_login_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_auto_login_id()) {
+    auto_login_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auto_login_id_);
+  }
+  ::memcpy(&auto_login_delay_, &from.auto_login_delay_,
+    static_cast<size_t>(reinterpret_cast<char*>(&prompt_for_network_when_offline_) -
+    reinterpret_cast<char*>(&auto_login_delay_)) + sizeof(prompt_for_network_when_offline_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceLocalAccountsProto)
+}
+
+void DeviceLocalAccountsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceLocalAccountsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  auto_login_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  auto_login_delay_ = PROTOBUF_LONGLONG(0);
+  enable_auto_login_bailout_ = true;
+  prompt_for_network_when_offline_ = true;
+}
+
+DeviceLocalAccountsProto::~DeviceLocalAccountsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceLocalAccountsProto)
+  SharedDtor();
+}
+
+void DeviceLocalAccountsProto::SharedDtor() {
+  auto_login_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceLocalAccountsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceLocalAccountsProto& DeviceLocalAccountsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceLocalAccountsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceLocalAccountsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceLocalAccountsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  account_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    auto_login_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x0000000eu) {
+    auto_login_delay_ = PROTOBUF_LONGLONG(0);
+    enable_auto_login_bailout_ = true;
+    prompt_for_network_when_offline_ = true;
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceLocalAccountsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.DeviceLocalAccountInfoProto account = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_account(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional string auto_login_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_auto_login_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 auto_login_delay = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_auto_login_delay(&has_bits);
+          auto_login_delay_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool enable_auto_login_bailout = 4 [default = true];
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_enable_auto_login_bailout(&has_bits);
+          enable_auto_login_bailout_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool prompt_for_network_when_offline = 5 [default = true];
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_prompt_for_network_when_offline(&has_bits);
+          prompt_for_network_when_offline_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceLocalAccountsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceLocalAccountsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.DeviceLocalAccountInfoProto account = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_account_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_account(i), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional string auto_login_id = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_auto_login_id(), target);
+  }
+
+  // optional int64 auto_login_delay = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_auto_login_delay(), target);
+  }
+
+  // optional bool enable_auto_login_bailout = 4 [default = true];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_enable_auto_login_bailout(), target);
+  }
+
+  // optional bool prompt_for_network_when_offline = 5 [default = true];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(5, this->_internal_prompt_for_network_when_offline(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceLocalAccountsProto)
+  return target;
+}
+
+size_t DeviceLocalAccountsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceLocalAccountsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.DeviceLocalAccountInfoProto account = 1;
+  total_size += 1UL * this->_internal_account_size();
+  for (const auto& msg : this->account_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string auto_login_id = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_auto_login_id());
+    }
+
+    // optional int64 auto_login_delay = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_auto_login_delay());
+    }
+
+    // optional bool enable_auto_login_bailout = 4 [default = true];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool prompt_for_network_when_offline = 5 [default = true];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceLocalAccountsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceLocalAccountsProto*>(
+      &from));
+}
+
+void DeviceLocalAccountsProto::MergeFrom(const DeviceLocalAccountsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceLocalAccountsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  account_.MergeFrom(from.account_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      auto_login_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auto_login_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      auto_login_delay_ = from.auto_login_delay_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      enable_auto_login_bailout_ = from.enable_auto_login_bailout_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      prompt_for_network_when_offline_ = from.prompt_for_network_when_offline_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceLocalAccountsProto::CopyFrom(const DeviceLocalAccountsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceLocalAccountsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceLocalAccountsProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceLocalAccountsProto::InternalSwap(DeviceLocalAccountsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  account_.InternalSwap(&other->account_);
+  auto_login_id_.Swap(&other->auto_login_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(auto_login_delay_, other->auto_login_delay_);
+  swap(enable_auto_login_bailout_, other->enable_auto_login_bailout_);
+  swap(prompt_for_network_when_offline_, other->prompt_for_network_when_offline_);
+}
+
+std::string DeviceLocalAccountsProto::GetTypeName() const {
+  return "enterprise_management.DeviceLocalAccountsProto";
+}
+
+
+// ===================================================================
+
+void ManagedGuestSessionPrivacyWarningsProto::InitAsDefaultInstance() {
+}
+class ManagedGuestSessionPrivacyWarningsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ManagedGuestSessionPrivacyWarningsProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ManagedGuestSessionPrivacyWarningsProto::ManagedGuestSessionPrivacyWarningsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+}
+ManagedGuestSessionPrivacyWarningsProto::ManagedGuestSessionPrivacyWarningsProto(const ManagedGuestSessionPrivacyWarningsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+}
+
+void ManagedGuestSessionPrivacyWarningsProto::SharedCtor() {
+  enabled_ = true;
+}
+
+ManagedGuestSessionPrivacyWarningsProto::~ManagedGuestSessionPrivacyWarningsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+  SharedDtor();
+}
+
+void ManagedGuestSessionPrivacyWarningsProto::SharedDtor() {
+}
+
+void ManagedGuestSessionPrivacyWarningsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ManagedGuestSessionPrivacyWarningsProto& ManagedGuestSessionPrivacyWarningsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ManagedGuestSessionPrivacyWarningsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ManagedGuestSessionPrivacyWarningsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ManagedGuestSessionPrivacyWarningsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ManagedGuestSessionPrivacyWarningsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+  return target;
+}
+
+size_t ManagedGuestSessionPrivacyWarningsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ManagedGuestSessionPrivacyWarningsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ManagedGuestSessionPrivacyWarningsProto*>(
+      &from));
+}
+
+void ManagedGuestSessionPrivacyWarningsProto::MergeFrom(const ManagedGuestSessionPrivacyWarningsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void ManagedGuestSessionPrivacyWarningsProto::CopyFrom(const ManagedGuestSessionPrivacyWarningsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ManagedGuestSessionPrivacyWarningsProto::IsInitialized() const {
+  return true;
+}
+
+void ManagedGuestSessionPrivacyWarningsProto::InternalSwap(ManagedGuestSessionPrivacyWarningsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string ManagedGuestSessionPrivacyWarningsProto::GetTypeName() const {
+  return "enterprise_management.ManagedGuestSessionPrivacyWarningsProto";
+}
+
+
+// ===================================================================
+
+void AllowRedeemChromeOsRegistrationOffersProto::InitAsDefaultInstance() {
+}
+class AllowRedeemChromeOsRegistrationOffersProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AllowRedeemChromeOsRegistrationOffersProto>()._has_bits_);
+  static void set_has_allow_redeem_offers(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+AllowRedeemChromeOsRegistrationOffersProto::AllowRedeemChromeOsRegistrationOffersProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+}
+AllowRedeemChromeOsRegistrationOffersProto::AllowRedeemChromeOsRegistrationOffersProto(const AllowRedeemChromeOsRegistrationOffersProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  allow_redeem_offers_ = from.allow_redeem_offers_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+}
+
+void AllowRedeemChromeOsRegistrationOffersProto::SharedCtor() {
+  allow_redeem_offers_ = true;
+}
+
+AllowRedeemChromeOsRegistrationOffersProto::~AllowRedeemChromeOsRegistrationOffersProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+  SharedDtor();
+}
+
+void AllowRedeemChromeOsRegistrationOffersProto::SharedDtor() {
+}
+
+void AllowRedeemChromeOsRegistrationOffersProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AllowRedeemChromeOsRegistrationOffersProto& AllowRedeemChromeOsRegistrationOffersProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AllowRedeemChromeOsRegistrationOffersProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AllowRedeemChromeOsRegistrationOffersProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allow_redeem_offers_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AllowRedeemChromeOsRegistrationOffersProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool allow_redeem_offers = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_allow_redeem_offers(&has_bits);
+          allow_redeem_offers_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AllowRedeemChromeOsRegistrationOffersProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool allow_redeem_offers = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_allow_redeem_offers(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+  return target;
+}
+
+size_t AllowRedeemChromeOsRegistrationOffersProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool allow_redeem_offers = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AllowRedeemChromeOsRegistrationOffersProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AllowRedeemChromeOsRegistrationOffersProto*>(
+      &from));
+}
+
+void AllowRedeemChromeOsRegistrationOffersProto::MergeFrom(const AllowRedeemChromeOsRegistrationOffersProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_allow_redeem_offers()) {
+    _internal_set_allow_redeem_offers(from._internal_allow_redeem_offers());
+  }
+}
+
+void AllowRedeemChromeOsRegistrationOffersProto::CopyFrom(const AllowRedeemChromeOsRegistrationOffersProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AllowRedeemChromeOsRegistrationOffersProto::IsInitialized() const {
+  return true;
+}
+
+void AllowRedeemChromeOsRegistrationOffersProto::InternalSwap(AllowRedeemChromeOsRegistrationOffersProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(allow_redeem_offers_, other->allow_redeem_offers_);
+}
+
+std::string AllowRedeemChromeOsRegistrationOffersProto::GetTypeName() const {
+  return "enterprise_management.AllowRedeemChromeOsRegistrationOffersProto";
+}
+
+
+// ===================================================================
+
+void FeatureFlagsProto::InitAsDefaultInstance() {
+}
+class FeatureFlagsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<FeatureFlagsProto>()._has_bits_);
+};
+
+FeatureFlagsProto::FeatureFlagsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.FeatureFlagsProto)
+}
+FeatureFlagsProto::FeatureFlagsProto(const FeatureFlagsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      switches_(from.switches_),
+      feature_flags_(from.feature_flags_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.FeatureFlagsProto)
+}
+
+void FeatureFlagsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FeatureFlagsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+FeatureFlagsProto::~FeatureFlagsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.FeatureFlagsProto)
+  SharedDtor();
+}
+
+void FeatureFlagsProto::SharedDtor() {
+}
+
+void FeatureFlagsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const FeatureFlagsProto& FeatureFlagsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_FeatureFlagsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void FeatureFlagsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.FeatureFlagsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  switches_.Clear();
+  feature_flags_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* FeatureFlagsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string switches = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_switches();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated string feature_flags = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_feature_flags();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* FeatureFlagsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.FeatureFlagsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string switches = 1 [deprecated = true];
+  for (int i = 0, n = this->_internal_switches_size(); i < n; i++) {
+    const auto& s = this->_internal_switches(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  // repeated string feature_flags = 2;
+  for (int i = 0, n = this->_internal_feature_flags_size(); i < n; i++) {
+    const auto& s = this->_internal_feature_flags(i);
+    target = stream->WriteString(2, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.FeatureFlagsProto)
+  return target;
+}
+
+size_t FeatureFlagsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.FeatureFlagsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string switches = 1 [deprecated = true];
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(switches_.size());
+  for (int i = 0, n = switches_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      switches_.Get(i));
+  }
+
+  // repeated string feature_flags = 2;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(feature_flags_.size());
+  for (int i = 0, n = feature_flags_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      feature_flags_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void FeatureFlagsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const FeatureFlagsProto*>(
+      &from));
+}
+
+void FeatureFlagsProto::MergeFrom(const FeatureFlagsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.FeatureFlagsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  switches_.MergeFrom(from.switches_);
+  feature_flags_.MergeFrom(from.feature_flags_);
+}
+
+void FeatureFlagsProto::CopyFrom(const FeatureFlagsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.FeatureFlagsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool FeatureFlagsProto::IsInitialized() const {
+  return true;
+}
+
+void FeatureFlagsProto::InternalSwap(FeatureFlagsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  switches_.InternalSwap(&other->switches_);
+  feature_flags_.InternalSwap(&other->feature_flags_);
+}
+
+std::string FeatureFlagsProto::GetTypeName() const {
+  return "enterprise_management.FeatureFlagsProto";
+}
+
+
+// ===================================================================
+
+void UptimeLimitProto::InitAsDefaultInstance() {
+}
+class UptimeLimitProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UptimeLimitProto>()._has_bits_);
+  static void set_has_obsolete_uptime_limit(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_uptime_limit(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+UptimeLimitProto::UptimeLimitProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UptimeLimitProto)
+}
+UptimeLimitProto::UptimeLimitProto(const UptimeLimitProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&obsolete_uptime_limit_, &from.obsolete_uptime_limit_,
+    static_cast<size_t>(reinterpret_cast<char*>(&uptime_limit_) -
+    reinterpret_cast<char*>(&obsolete_uptime_limit_)) + sizeof(uptime_limit_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UptimeLimitProto)
+}
+
+void UptimeLimitProto::SharedCtor() {
+  ::memset(&obsolete_uptime_limit_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&uptime_limit_) -
+      reinterpret_cast<char*>(&obsolete_uptime_limit_)) + sizeof(uptime_limit_));
+}
+
+UptimeLimitProto::~UptimeLimitProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UptimeLimitProto)
+  SharedDtor();
+}
+
+void UptimeLimitProto::SharedDtor() {
+}
+
+void UptimeLimitProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UptimeLimitProto& UptimeLimitProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UptimeLimitProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UptimeLimitProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UptimeLimitProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&obsolete_uptime_limit_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&uptime_limit_) -
+        reinterpret_cast<char*>(&obsolete_uptime_limit_)) + sizeof(uptime_limit_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UptimeLimitProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 OBSOLETE_uptime_limit = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_obsolete_uptime_limit(&has_bits);
+          obsolete_uptime_limit_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 uptime_limit = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_uptime_limit(&has_bits);
+          uptime_limit_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UptimeLimitProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UptimeLimitProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 OBSOLETE_uptime_limit = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_obsolete_uptime_limit(), target);
+  }
+
+  // optional int64 uptime_limit = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_uptime_limit(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UptimeLimitProto)
+  return target;
+}
+
+size_t UptimeLimitProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UptimeLimitProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int64 OBSOLETE_uptime_limit = 1 [deprecated = true];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_obsolete_uptime_limit());
+    }
+
+    // optional int64 uptime_limit = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_uptime_limit());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UptimeLimitProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UptimeLimitProto*>(
+      &from));
+}
+
+void UptimeLimitProto::MergeFrom(const UptimeLimitProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UptimeLimitProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      obsolete_uptime_limit_ = from.obsolete_uptime_limit_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      uptime_limit_ = from.uptime_limit_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void UptimeLimitProto::CopyFrom(const UptimeLimitProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UptimeLimitProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UptimeLimitProto::IsInitialized() const {
+  return true;
+}
+
+void UptimeLimitProto::InternalSwap(UptimeLimitProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(obsolete_uptime_limit_, other->obsolete_uptime_limit_);
+  swap(uptime_limit_, other->uptime_limit_);
+}
+
+std::string UptimeLimitProto::GetTypeName() const {
+  return "enterprise_management.UptimeLimitProto";
+}
+
+
+// ===================================================================
+
+void VariationsParameterProto::InitAsDefaultInstance() {
+}
+class VariationsParameterProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<VariationsParameterProto>()._has_bits_);
+  static void set_has_parameter(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+VariationsParameterProto::VariationsParameterProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.VariationsParameterProto)
+}
+VariationsParameterProto::VariationsParameterProto(const VariationsParameterProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  parameter_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_parameter()) {
+    parameter_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.parameter_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.VariationsParameterProto)
+}
+
+void VariationsParameterProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_VariationsParameterProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  parameter_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+VariationsParameterProto::~VariationsParameterProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.VariationsParameterProto)
+  SharedDtor();
+}
+
+void VariationsParameterProto::SharedDtor() {
+  parameter_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void VariationsParameterProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const VariationsParameterProto& VariationsParameterProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_VariationsParameterProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void VariationsParameterProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.VariationsParameterProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    parameter_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* VariationsParameterProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string parameter = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_parameter();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* VariationsParameterProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.VariationsParameterProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string parameter = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_parameter(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.VariationsParameterProto)
+  return target;
+}
+
+size_t VariationsParameterProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.VariationsParameterProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string parameter = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_parameter());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void VariationsParameterProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const VariationsParameterProto*>(
+      &from));
+}
+
+void VariationsParameterProto::MergeFrom(const VariationsParameterProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.VariationsParameterProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_parameter()) {
+    _has_bits_[0] |= 0x00000001u;
+    parameter_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.parameter_);
+  }
+}
+
+void VariationsParameterProto::CopyFrom(const VariationsParameterProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.VariationsParameterProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool VariationsParameterProto::IsInitialized() const {
+  return true;
+}
+
+void VariationsParameterProto::InternalSwap(VariationsParameterProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  parameter_.Swap(&other->parameter_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string VariationsParameterProto::GetTypeName() const {
+  return "enterprise_management.VariationsParameterProto";
+}
+
+
+// ===================================================================
+
+void AttestationSettingsProto::InitAsDefaultInstance() {
+}
+class AttestationSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AttestationSettingsProto>()._has_bits_);
+  static void set_has_attestation_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_content_protection_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+AttestationSettingsProto::AttestationSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AttestationSettingsProto)
+}
+AttestationSettingsProto::AttestationSettingsProto(const AttestationSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&attestation_enabled_, &from.attestation_enabled_,
+    static_cast<size_t>(reinterpret_cast<char*>(&content_protection_enabled_) -
+    reinterpret_cast<char*>(&attestation_enabled_)) + sizeof(content_protection_enabled_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AttestationSettingsProto)
+}
+
+void AttestationSettingsProto::SharedCtor() {
+  attestation_enabled_ = false;
+  content_protection_enabled_ = true;
+}
+
+AttestationSettingsProto::~AttestationSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AttestationSettingsProto)
+  SharedDtor();
+}
+
+void AttestationSettingsProto::SharedDtor() {
+}
+
+void AttestationSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AttestationSettingsProto& AttestationSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AttestationSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AttestationSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AttestationSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    attestation_enabled_ = false;
+    content_protection_enabled_ = true;
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AttestationSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool attestation_enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_attestation_enabled(&has_bits);
+          attestation_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool content_protection_enabled = 2 [default = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_content_protection_enabled(&has_bits);
+          content_protection_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AttestationSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AttestationSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool attestation_enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_attestation_enabled(), target);
+  }
+
+  // optional bool content_protection_enabled = 2 [default = true];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_content_protection_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AttestationSettingsProto)
+  return target;
+}
+
+size_t AttestationSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AttestationSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional bool attestation_enabled = 1 [default = false];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool content_protection_enabled = 2 [default = true];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AttestationSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AttestationSettingsProto*>(
+      &from));
+}
+
+void AttestationSettingsProto::MergeFrom(const AttestationSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AttestationSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      attestation_enabled_ = from.attestation_enabled_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      content_protection_enabled_ = from.content_protection_enabled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void AttestationSettingsProto::CopyFrom(const AttestationSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AttestationSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AttestationSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void AttestationSettingsProto::InternalSwap(AttestationSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(attestation_enabled_, other->attestation_enabled_);
+  swap(content_protection_enabled_, other->content_protection_enabled_);
+}
+
+std::string AttestationSettingsProto::GetTypeName() const {
+  return "enterprise_management.AttestationSettingsProto";
+}
+
+
+// ===================================================================
+
+void AccessibilitySettingsProto::InitAsDefaultInstance() {
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_large_cursor_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_spoken_feedback_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_high_contrast_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_virtual_keyboard_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_dictation_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_select_to_speak_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_cursor_highlight_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_caret_highlight_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_mono_audio_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_autoclick_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_sticky_keys_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_keyboard_focus_highlight_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_screen_magnifier_type_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_show_options_in_system_tray_menu_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_AccessibilitySettingsProto_default_instance_._instance.get_mutable()->login_screen_shortcuts_enabled_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+}
+class AccessibilitySettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AccessibilitySettingsProto>()._has_bits_);
+  static void set_has_login_screen_default_large_cursor_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static void set_has_login_screen_default_spoken_feedback_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static void set_has_login_screen_default_high_contrast_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static void set_has_login_screen_default_screen_magnifier_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 524288u;
+  }
+  static void set_has_login_screen_default_virtual_keyboard_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 262144u;
+  }
+  static void set_has_login_screen_large_cursor_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1048576u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_large_cursor_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_large_cursor_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_login_screen_spoken_feedback_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 2097152u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_spoken_feedback_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_spoken_feedback_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_login_screen_high_contrast_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 4194304u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_high_contrast_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_high_contrast_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_login_screen_virtual_keyboard_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 8388608u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_virtual_keyboard_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_virtual_keyboard_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_login_screen_dictation_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 16777216u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_dictation_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_dictation_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_login_screen_select_to_speak_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 33554432u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_select_to_speak_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_select_to_speak_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_login_screen_cursor_highlight_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 67108864u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_cursor_highlight_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_cursor_highlight_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_login_screen_caret_highlight_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 134217728u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_caret_highlight_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_caret_highlight_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_login_screen_mono_audio_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 268435456u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_mono_audio_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_mono_audio_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_login_screen_autoclick_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 536870912u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_autoclick_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_autoclick_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_login_screen_sticky_keys_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1073741824u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_sticky_keys_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_sticky_keys_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_login_screen_keyboard_focus_highlight_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 2147483648u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_keyboard_focus_highlight_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_keyboard_focus_highlight_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_login_screen_screen_magnifier_type(HasBits* has_bits) {
+    (*has_bits)[1] |= 4u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_screen_magnifier_type_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_screen_magnifier_type_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_login_screen_show_options_in_system_tray_menu_enabled(HasBits* has_bits) {
+    (*has_bits)[1] |= 1u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_show_options_in_system_tray_menu_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_show_options_in_system_tray_menu_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static void set_has_login_screen_shortcuts_enabled(HasBits* has_bits) {
+    (*has_bits)[1] |= 2u;
+  }
+  static const ::enterprise_management::PolicyOptions& login_screen_shortcuts_enabled_options(const AccessibilitySettingsProto* msg);
+  static void set_has_login_screen_shortcuts_enabled_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+};
+
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_large_cursor_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_large_cursor_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_spoken_feedback_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_spoken_feedback_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_high_contrast_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_high_contrast_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_virtual_keyboard_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_virtual_keyboard_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_dictation_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_dictation_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_select_to_speak_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_select_to_speak_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_cursor_highlight_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_cursor_highlight_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_caret_highlight_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_caret_highlight_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_mono_audio_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_mono_audio_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_autoclick_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_autoclick_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_sticky_keys_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_sticky_keys_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_keyboard_focus_highlight_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_keyboard_focus_highlight_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_screen_magnifier_type_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_screen_magnifier_type_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_show_options_in_system_tray_menu_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_show_options_in_system_tray_menu_enabled_options_;
+}
+const ::enterprise_management::PolicyOptions&
+AccessibilitySettingsProto::_Internal::login_screen_shortcuts_enabled_options(const AccessibilitySettingsProto* msg) {
+  return *msg->login_screen_shortcuts_enabled_options_;
+}
+void AccessibilitySettingsProto::clear_login_screen_large_cursor_enabled_options() {
+  if (login_screen_large_cursor_enabled_options_ != nullptr) login_screen_large_cursor_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+void AccessibilitySettingsProto::clear_login_screen_spoken_feedback_enabled_options() {
+  if (login_screen_spoken_feedback_enabled_options_ != nullptr) login_screen_spoken_feedback_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+void AccessibilitySettingsProto::clear_login_screen_high_contrast_enabled_options() {
+  if (login_screen_high_contrast_enabled_options_ != nullptr) login_screen_high_contrast_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+void AccessibilitySettingsProto::clear_login_screen_virtual_keyboard_enabled_options() {
+  if (login_screen_virtual_keyboard_enabled_options_ != nullptr) login_screen_virtual_keyboard_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000008u;
+}
+void AccessibilitySettingsProto::clear_login_screen_dictation_enabled_options() {
+  if (login_screen_dictation_enabled_options_ != nullptr) login_screen_dictation_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+void AccessibilitySettingsProto::clear_login_screen_select_to_speak_enabled_options() {
+  if (login_screen_select_to_speak_enabled_options_ != nullptr) login_screen_select_to_speak_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000020u;
+}
+void AccessibilitySettingsProto::clear_login_screen_cursor_highlight_enabled_options() {
+  if (login_screen_cursor_highlight_enabled_options_ != nullptr) login_screen_cursor_highlight_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000040u;
+}
+void AccessibilitySettingsProto::clear_login_screen_caret_highlight_enabled_options() {
+  if (login_screen_caret_highlight_enabled_options_ != nullptr) login_screen_caret_highlight_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000080u;
+}
+void AccessibilitySettingsProto::clear_login_screen_mono_audio_enabled_options() {
+  if (login_screen_mono_audio_enabled_options_ != nullptr) login_screen_mono_audio_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000100u;
+}
+void AccessibilitySettingsProto::clear_login_screen_autoclick_enabled_options() {
+  if (login_screen_autoclick_enabled_options_ != nullptr) login_screen_autoclick_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000200u;
+}
+void AccessibilitySettingsProto::clear_login_screen_sticky_keys_enabled_options() {
+  if (login_screen_sticky_keys_enabled_options_ != nullptr) login_screen_sticky_keys_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000400u;
+}
+void AccessibilitySettingsProto::clear_login_screen_keyboard_focus_highlight_enabled_options() {
+  if (login_screen_keyboard_focus_highlight_enabled_options_ != nullptr) login_screen_keyboard_focus_highlight_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00000800u;
+}
+void AccessibilitySettingsProto::clear_login_screen_screen_magnifier_type_options() {
+  if (login_screen_screen_magnifier_type_options_ != nullptr) login_screen_screen_magnifier_type_options_->Clear();
+  _has_bits_[0] &= ~0x00001000u;
+}
+void AccessibilitySettingsProto::clear_login_screen_show_options_in_system_tray_menu_enabled_options() {
+  if (login_screen_show_options_in_system_tray_menu_enabled_options_ != nullptr) login_screen_show_options_in_system_tray_menu_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00002000u;
+}
+void AccessibilitySettingsProto::clear_login_screen_shortcuts_enabled_options() {
+  if (login_screen_shortcuts_enabled_options_ != nullptr) login_screen_shortcuts_enabled_options_->Clear();
+  _has_bits_[0] &= ~0x00004000u;
+}
+AccessibilitySettingsProto::AccessibilitySettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AccessibilitySettingsProto)
+}
+AccessibilitySettingsProto::AccessibilitySettingsProto(const AccessibilitySettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_login_screen_large_cursor_enabled_options()) {
+    login_screen_large_cursor_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_large_cursor_enabled_options_);
+  } else {
+    login_screen_large_cursor_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_spoken_feedback_enabled_options()) {
+    login_screen_spoken_feedback_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_spoken_feedback_enabled_options_);
+  } else {
+    login_screen_spoken_feedback_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_high_contrast_enabled_options()) {
+    login_screen_high_contrast_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_high_contrast_enabled_options_);
+  } else {
+    login_screen_high_contrast_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_virtual_keyboard_enabled_options()) {
+    login_screen_virtual_keyboard_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_virtual_keyboard_enabled_options_);
+  } else {
+    login_screen_virtual_keyboard_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_dictation_enabled_options()) {
+    login_screen_dictation_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_dictation_enabled_options_);
+  } else {
+    login_screen_dictation_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_select_to_speak_enabled_options()) {
+    login_screen_select_to_speak_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_select_to_speak_enabled_options_);
+  } else {
+    login_screen_select_to_speak_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_cursor_highlight_enabled_options()) {
+    login_screen_cursor_highlight_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_cursor_highlight_enabled_options_);
+  } else {
+    login_screen_cursor_highlight_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_caret_highlight_enabled_options()) {
+    login_screen_caret_highlight_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_caret_highlight_enabled_options_);
+  } else {
+    login_screen_caret_highlight_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_mono_audio_enabled_options()) {
+    login_screen_mono_audio_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_mono_audio_enabled_options_);
+  } else {
+    login_screen_mono_audio_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_autoclick_enabled_options()) {
+    login_screen_autoclick_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_autoclick_enabled_options_);
+  } else {
+    login_screen_autoclick_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_sticky_keys_enabled_options()) {
+    login_screen_sticky_keys_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_sticky_keys_enabled_options_);
+  } else {
+    login_screen_sticky_keys_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_keyboard_focus_highlight_enabled_options()) {
+    login_screen_keyboard_focus_highlight_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_keyboard_focus_highlight_enabled_options_);
+  } else {
+    login_screen_keyboard_focus_highlight_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_screen_magnifier_type_options()) {
+    login_screen_screen_magnifier_type_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_screen_magnifier_type_options_);
+  } else {
+    login_screen_screen_magnifier_type_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_show_options_in_system_tray_menu_enabled_options()) {
+    login_screen_show_options_in_system_tray_menu_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_show_options_in_system_tray_menu_enabled_options_);
+  } else {
+    login_screen_show_options_in_system_tray_menu_enabled_options_ = nullptr;
+  }
+  if (from._internal_has_login_screen_shortcuts_enabled_options()) {
+    login_screen_shortcuts_enabled_options_ = new ::enterprise_management::PolicyOptions(*from.login_screen_shortcuts_enabled_options_);
+  } else {
+    login_screen_shortcuts_enabled_options_ = nullptr;
+  }
+  ::memcpy(&login_screen_default_large_cursor_enabled_, &from.login_screen_default_large_cursor_enabled_,
+    static_cast<size_t>(reinterpret_cast<char*>(&login_screen_screen_magnifier_type_) -
+    reinterpret_cast<char*>(&login_screen_default_large_cursor_enabled_)) + sizeof(login_screen_screen_magnifier_type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AccessibilitySettingsProto)
+}
+
+void AccessibilitySettingsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AccessibilitySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  ::memset(&login_screen_large_cursor_enabled_options_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&login_screen_screen_magnifier_type_) -
+      reinterpret_cast<char*>(&login_screen_large_cursor_enabled_options_)) + sizeof(login_screen_screen_magnifier_type_));
+}
+
+AccessibilitySettingsProto::~AccessibilitySettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AccessibilitySettingsProto)
+  SharedDtor();
+}
+
+void AccessibilitySettingsProto::SharedDtor() {
+  if (this != internal_default_instance()) delete login_screen_large_cursor_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_spoken_feedback_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_high_contrast_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_virtual_keyboard_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_dictation_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_select_to_speak_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_cursor_highlight_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_caret_highlight_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_mono_audio_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_autoclick_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_sticky_keys_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_keyboard_focus_highlight_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_screen_magnifier_type_options_;
+  if (this != internal_default_instance()) delete login_screen_show_options_in_system_tray_menu_enabled_options_;
+  if (this != internal_default_instance()) delete login_screen_shortcuts_enabled_options_;
+}
+
+void AccessibilitySettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AccessibilitySettingsProto& AccessibilitySettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AccessibilitySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AccessibilitySettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AccessibilitySettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(login_screen_large_cursor_enabled_options_ != nullptr);
+      login_screen_large_cursor_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(login_screen_spoken_feedback_enabled_options_ != nullptr);
+      login_screen_spoken_feedback_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(login_screen_high_contrast_enabled_options_ != nullptr);
+      login_screen_high_contrast_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(login_screen_virtual_keyboard_enabled_options_ != nullptr);
+      login_screen_virtual_keyboard_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(login_screen_dictation_enabled_options_ != nullptr);
+      login_screen_dictation_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(login_screen_select_to_speak_enabled_options_ != nullptr);
+      login_screen_select_to_speak_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(login_screen_cursor_highlight_enabled_options_ != nullptr);
+      login_screen_cursor_highlight_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(login_screen_caret_highlight_enabled_options_ != nullptr);
+      login_screen_caret_highlight_enabled_options_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00007f00u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(login_screen_mono_audio_enabled_options_ != nullptr);
+      login_screen_mono_audio_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(login_screen_autoclick_enabled_options_ != nullptr);
+      login_screen_autoclick_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(login_screen_sticky_keys_enabled_options_ != nullptr);
+      login_screen_sticky_keys_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(login_screen_keyboard_focus_highlight_enabled_options_ != nullptr);
+      login_screen_keyboard_focus_highlight_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      GOOGLE_DCHECK(login_screen_screen_magnifier_type_options_ != nullptr);
+      login_screen_screen_magnifier_type_options_->Clear();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      GOOGLE_DCHECK(login_screen_show_options_in_system_tray_menu_enabled_options_ != nullptr);
+      login_screen_show_options_in_system_tray_menu_enabled_options_->Clear();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      GOOGLE_DCHECK(login_screen_shortcuts_enabled_options_ != nullptr);
+      login_screen_shortcuts_enabled_options_->Clear();
+    }
+  }
+  login_screen_default_large_cursor_enabled_ = false;
+  if (cached_has_bits & 0x00ff0000u) {
+    ::memset(&login_screen_default_spoken_feedback_enabled_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&login_screen_virtual_keyboard_enabled_) -
+        reinterpret_cast<char*>(&login_screen_default_spoken_feedback_enabled_)) + sizeof(login_screen_virtual_keyboard_enabled_));
+  }
+  if (cached_has_bits & 0xff000000u) {
+    ::memset(&login_screen_dictation_enabled_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&login_screen_keyboard_focus_highlight_enabled_) -
+        reinterpret_cast<char*>(&login_screen_dictation_enabled_)) + sizeof(login_screen_keyboard_focus_highlight_enabled_));
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x00000007u) {
+    ::memset(&login_screen_show_options_in_system_tray_menu_enabled_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&login_screen_screen_magnifier_type_) -
+        reinterpret_cast<char*>(&login_screen_show_options_in_system_tray_menu_enabled_)) + sizeof(login_screen_screen_magnifier_type_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AccessibilitySettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool login_screen_default_large_cursor_enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_login_screen_default_large_cursor_enabled(&_has_bits_);
+          login_screen_default_large_cursor_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_default_spoken_feedback_enabled = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_login_screen_default_spoken_feedback_enabled(&_has_bits_);
+          login_screen_default_spoken_feedback_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_default_high_contrast_enabled = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_login_screen_default_high_contrast_enabled(&_has_bits_);
+          login_screen_default_high_contrast_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AccessibilitySettingsProto.ScreenMagnifierType login_screen_default_screen_magnifier_type = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType_IsValid(val))) {
+            _internal_set_login_screen_default_screen_magnifier_type(static_cast<::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_default_virtual_keyboard_enabled = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_login_screen_default_virtual_keyboard_enabled(&_has_bits_);
+          login_screen_default_virtual_keyboard_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_large_cursor_enabled = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_login_screen_large_cursor_enabled(&_has_bits_);
+          login_screen_large_cursor_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_large_cursor_enabled_options = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_large_cursor_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_spoken_feedback_enabled = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_login_screen_spoken_feedback_enabled(&_has_bits_);
+          login_screen_spoken_feedback_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_spoken_feedback_enabled_options = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_spoken_feedback_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_high_contrast_enabled = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          _Internal::set_has_login_screen_high_contrast_enabled(&_has_bits_);
+          login_screen_high_contrast_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_high_contrast_enabled_options = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_high_contrast_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_virtual_keyboard_enabled = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 96)) {
+          _Internal::set_has_login_screen_virtual_keyboard_enabled(&_has_bits_);
+          login_screen_virtual_keyboard_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_virtual_keyboard_enabled_options = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_virtual_keyboard_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_dictation_enabled = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 112)) {
+          _Internal::set_has_login_screen_dictation_enabled(&_has_bits_);
+          login_screen_dictation_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_dictation_enabled_options = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_dictation_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_select_to_speak_enabled = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 128)) {
+          _Internal::set_has_login_screen_select_to_speak_enabled(&_has_bits_);
+          login_screen_select_to_speak_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_select_to_speak_enabled_options = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_select_to_speak_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_cursor_highlight_enabled = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 144)) {
+          _Internal::set_has_login_screen_cursor_highlight_enabled(&_has_bits_);
+          login_screen_cursor_highlight_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_cursor_highlight_enabled_options = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 154)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_cursor_highlight_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_caret_highlight_enabled = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 160)) {
+          _Internal::set_has_login_screen_caret_highlight_enabled(&_has_bits_);
+          login_screen_caret_highlight_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_caret_highlight_enabled_options = 21;
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_caret_highlight_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_mono_audio_enabled = 22;
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 176)) {
+          _Internal::set_has_login_screen_mono_audio_enabled(&_has_bits_);
+          login_screen_mono_audio_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_mono_audio_enabled_options = 23;
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_mono_audio_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_autoclick_enabled = 24;
+      case 24:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 192)) {
+          _Internal::set_has_login_screen_autoclick_enabled(&_has_bits_);
+          login_screen_autoclick_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_autoclick_enabled_options = 25;
+      case 25:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_autoclick_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_sticky_keys_enabled = 26;
+      case 26:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 208)) {
+          _Internal::set_has_login_screen_sticky_keys_enabled(&_has_bits_);
+          login_screen_sticky_keys_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_sticky_keys_enabled_options = 27;
+      case 27:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_sticky_keys_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_keyboard_focus_highlight_enabled = 28;
+      case 28:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 224)) {
+          _Internal::set_has_login_screen_keyboard_focus_highlight_enabled(&_has_bits_);
+          login_screen_keyboard_focus_highlight_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_keyboard_focus_highlight_enabled_options = 29;
+      case 29:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 234)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_keyboard_focus_highlight_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 login_screen_screen_magnifier_type = 30;
+      case 30:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 240)) {
+          _Internal::set_has_login_screen_screen_magnifier_type(&_has_bits_);
+          login_screen_screen_magnifier_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_screen_magnifier_type_options = 31;
+      case 31:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_screen_magnifier_type_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_show_options_in_system_tray_menu_enabled = 32;
+      case 32:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 0)) {
+          _Internal::set_has_login_screen_show_options_in_system_tray_menu_enabled(&_has_bits_);
+          login_screen_show_options_in_system_tray_menu_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_show_options_in_system_tray_menu_enabled_options = 33;
+      case 33:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_show_options_in_system_tray_menu_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool login_screen_shortcuts_enabled = 34;
+      case 34:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_login_screen_shortcuts_enabled(&_has_bits_);
+          login_screen_shortcuts_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyOptions login_screen_shortcuts_enabled_options = 35;
+      case 35:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_shortcuts_enabled_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AccessibilitySettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AccessibilitySettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool login_screen_default_large_cursor_enabled = 1;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_login_screen_default_large_cursor_enabled(), target);
+  }
+
+  // optional bool login_screen_default_spoken_feedback_enabled = 2;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_login_screen_default_spoken_feedback_enabled(), target);
+  }
+
+  // optional bool login_screen_default_high_contrast_enabled = 3;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_login_screen_default_high_contrast_enabled(), target);
+  }
+
+  // optional .enterprise_management.AccessibilitySettingsProto.ScreenMagnifierType login_screen_default_screen_magnifier_type = 4;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_login_screen_default_screen_magnifier_type(), target);
+  }
+
+  // optional bool login_screen_default_virtual_keyboard_enabled = 5;
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(5, this->_internal_login_screen_default_virtual_keyboard_enabled(), target);
+  }
+
+  // optional bool login_screen_large_cursor_enabled = 6;
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(6, this->_internal_login_screen_large_cursor_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_large_cursor_enabled_options = 7;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        7, _Internal::login_screen_large_cursor_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_spoken_feedback_enabled = 8;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(8, this->_internal_login_screen_spoken_feedback_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_spoken_feedback_enabled_options = 9;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        9, _Internal::login_screen_spoken_feedback_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_high_contrast_enabled = 10;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(10, this->_internal_login_screen_high_contrast_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_high_contrast_enabled_options = 11;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        11, _Internal::login_screen_high_contrast_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_virtual_keyboard_enabled = 12;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(12, this->_internal_login_screen_virtual_keyboard_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_virtual_keyboard_enabled_options = 13;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        13, _Internal::login_screen_virtual_keyboard_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_dictation_enabled = 14;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(14, this->_internal_login_screen_dictation_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_dictation_enabled_options = 15;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        15, _Internal::login_screen_dictation_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_select_to_speak_enabled = 16;
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(16, this->_internal_login_screen_select_to_speak_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_select_to_speak_enabled_options = 17;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        17, _Internal::login_screen_select_to_speak_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_cursor_highlight_enabled = 18;
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(18, this->_internal_login_screen_cursor_highlight_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_cursor_highlight_enabled_options = 19;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        19, _Internal::login_screen_cursor_highlight_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_caret_highlight_enabled = 20;
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(20, this->_internal_login_screen_caret_highlight_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_caret_highlight_enabled_options = 21;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        21, _Internal::login_screen_caret_highlight_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_mono_audio_enabled = 22;
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(22, this->_internal_login_screen_mono_audio_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_mono_audio_enabled_options = 23;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        23, _Internal::login_screen_mono_audio_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_autoclick_enabled = 24;
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(24, this->_internal_login_screen_autoclick_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_autoclick_enabled_options = 25;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        25, _Internal::login_screen_autoclick_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_sticky_keys_enabled = 26;
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(26, this->_internal_login_screen_sticky_keys_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_sticky_keys_enabled_options = 27;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        27, _Internal::login_screen_sticky_keys_enabled_options(this), target, stream);
+  }
+
+  // optional bool login_screen_keyboard_focus_highlight_enabled = 28;
+  if (cached_has_bits & 0x80000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(28, this->_internal_login_screen_keyboard_focus_highlight_enabled(), target);
+  }
+
+  // optional .enterprise_management.PolicyOptions login_screen_keyboard_focus_highlight_enabled_options = 29;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        29, _Internal::login_screen_keyboard_focus_highlight_enabled_options(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional int64 login_screen_screen_magnifier_type = 30;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(30, this->_internal_login_screen_screen_magnifier_type(), target);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PolicyOptions login_screen_screen_magnifier_type_options = 31;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        31, _Internal::login_screen_screen_magnifier_type_options(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional bool login_screen_show_options_in_system_tray_menu_enabled = 32;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(32, this->_internal_login_screen_show_options_in_system_tray_menu_enabled(), target);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PolicyOptions login_screen_show_options_in_system_tray_menu_enabled_options = 33;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        33, _Internal::login_screen_show_options_in_system_tray_menu_enabled_options(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional bool login_screen_shortcuts_enabled = 34;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(34, this->_internal_login_screen_shortcuts_enabled(), target);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PolicyOptions login_screen_shortcuts_enabled_options = 35;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        35, _Internal::login_screen_shortcuts_enabled_options(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AccessibilitySettingsProto)
+  return target;
+}
+
+size_t AccessibilitySettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AccessibilitySettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional .enterprise_management.PolicyOptions login_screen_large_cursor_enabled_options = 7;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_large_cursor_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_spoken_feedback_enabled_options = 9;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_spoken_feedback_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_high_contrast_enabled_options = 11;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_high_contrast_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_virtual_keyboard_enabled_options = 13;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_virtual_keyboard_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_dictation_enabled_options = 15;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_dictation_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_select_to_speak_enabled_options = 17;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_select_to_speak_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_cursor_highlight_enabled_options = 19;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_cursor_highlight_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_caret_highlight_enabled_options = 21;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_caret_highlight_enabled_options_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.PolicyOptions login_screen_mono_audio_enabled_options = 23;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_mono_audio_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_autoclick_enabled_options = 25;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_autoclick_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_sticky_keys_enabled_options = 27;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_sticky_keys_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_keyboard_focus_highlight_enabled_options = 29;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_keyboard_focus_highlight_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_screen_magnifier_type_options = 31;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_screen_magnifier_type_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_show_options_in_system_tray_menu_enabled_options = 33;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_show_options_in_system_tray_menu_enabled_options_);
+    }
+
+    // optional .enterprise_management.PolicyOptions login_screen_shortcuts_enabled_options = 35;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_shortcuts_enabled_options_);
+    }
+
+    // optional bool login_screen_default_large_cursor_enabled = 1;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional bool login_screen_default_spoken_feedback_enabled = 2;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool login_screen_default_high_contrast_enabled = 3;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool login_screen_default_virtual_keyboard_enabled = 5;
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .enterprise_management.AccessibilitySettingsProto.ScreenMagnifierType login_screen_default_screen_magnifier_type = 4;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_login_screen_default_screen_magnifier_type());
+    }
+
+    // optional bool login_screen_large_cursor_enabled = 6;
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool login_screen_spoken_feedback_enabled = 8;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool login_screen_high_contrast_enabled = 10;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool login_screen_virtual_keyboard_enabled = 12;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (cached_has_bits & 0xff000000u) {
+    // optional bool login_screen_dictation_enabled = 14;
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool login_screen_select_to_speak_enabled = 16;
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool login_screen_cursor_highlight_enabled = 18;
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool login_screen_caret_highlight_enabled = 20;
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool login_screen_mono_audio_enabled = 22;
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool login_screen_autoclick_enabled = 24;
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool login_screen_sticky_keys_enabled = 26;
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool login_screen_keyboard_focus_highlight_enabled = 28;
+    if (cached_has_bits & 0x80000000u) {
+      total_size += 2 + 1;
+    }
+
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x00000007u) {
+    // optional bool login_screen_show_options_in_system_tray_menu_enabled = 32;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 2 + 1;
+    }
+
+    // optional bool login_screen_shortcuts_enabled = 34;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 2 + 1;
+    }
+
+    // optional int64 login_screen_screen_magnifier_type = 30;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_login_screen_screen_magnifier_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AccessibilitySettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AccessibilitySettingsProto*>(
+      &from));
+}
+
+void AccessibilitySettingsProto::MergeFrom(const AccessibilitySettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AccessibilitySettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_login_screen_large_cursor_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_large_cursor_enabled_options());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_login_screen_spoken_feedback_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_spoken_feedback_enabled_options());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_login_screen_high_contrast_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_high_contrast_enabled_options());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_login_screen_virtual_keyboard_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_virtual_keyboard_enabled_options());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_login_screen_dictation_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_dictation_enabled_options());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_login_screen_select_to_speak_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_select_to_speak_enabled_options());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_login_screen_cursor_highlight_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_cursor_highlight_enabled_options());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_login_screen_caret_highlight_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_caret_highlight_enabled_options());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_login_screen_mono_audio_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_mono_audio_enabled_options());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_login_screen_autoclick_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_autoclick_enabled_options());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_login_screen_sticky_keys_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_sticky_keys_enabled_options());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_login_screen_keyboard_focus_highlight_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_keyboard_focus_highlight_enabled_options());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _internal_mutable_login_screen_screen_magnifier_type_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_screen_magnifier_type_options());
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _internal_mutable_login_screen_show_options_in_system_tray_menu_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_show_options_in_system_tray_menu_enabled_options());
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _internal_mutable_login_screen_shortcuts_enabled_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_login_screen_shortcuts_enabled_options());
+    }
+    if (cached_has_bits & 0x00008000u) {
+      login_screen_default_large_cursor_enabled_ = from.login_screen_default_large_cursor_enabled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      login_screen_default_spoken_feedback_enabled_ = from.login_screen_default_spoken_feedback_enabled_;
+    }
+    if (cached_has_bits & 0x00020000u) {
+      login_screen_default_high_contrast_enabled_ = from.login_screen_default_high_contrast_enabled_;
+    }
+    if (cached_has_bits & 0x00040000u) {
+      login_screen_default_virtual_keyboard_enabled_ = from.login_screen_default_virtual_keyboard_enabled_;
+    }
+    if (cached_has_bits & 0x00080000u) {
+      login_screen_default_screen_magnifier_type_ = from.login_screen_default_screen_magnifier_type_;
+    }
+    if (cached_has_bits & 0x00100000u) {
+      login_screen_large_cursor_enabled_ = from.login_screen_large_cursor_enabled_;
+    }
+    if (cached_has_bits & 0x00200000u) {
+      login_screen_spoken_feedback_enabled_ = from.login_screen_spoken_feedback_enabled_;
+    }
+    if (cached_has_bits & 0x00400000u) {
+      login_screen_high_contrast_enabled_ = from.login_screen_high_contrast_enabled_;
+    }
+    if (cached_has_bits & 0x00800000u) {
+      login_screen_virtual_keyboard_enabled_ = from.login_screen_virtual_keyboard_enabled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      login_screen_dictation_enabled_ = from.login_screen_dictation_enabled_;
+    }
+    if (cached_has_bits & 0x02000000u) {
+      login_screen_select_to_speak_enabled_ = from.login_screen_select_to_speak_enabled_;
+    }
+    if (cached_has_bits & 0x04000000u) {
+      login_screen_cursor_highlight_enabled_ = from.login_screen_cursor_highlight_enabled_;
+    }
+    if (cached_has_bits & 0x08000000u) {
+      login_screen_caret_highlight_enabled_ = from.login_screen_caret_highlight_enabled_;
+    }
+    if (cached_has_bits & 0x10000000u) {
+      login_screen_mono_audio_enabled_ = from.login_screen_mono_audio_enabled_;
+    }
+    if (cached_has_bits & 0x20000000u) {
+      login_screen_autoclick_enabled_ = from.login_screen_autoclick_enabled_;
+    }
+    if (cached_has_bits & 0x40000000u) {
+      login_screen_sticky_keys_enabled_ = from.login_screen_sticky_keys_enabled_;
+    }
+    if (cached_has_bits & 0x80000000u) {
+      login_screen_keyboard_focus_highlight_enabled_ = from.login_screen_keyboard_focus_highlight_enabled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  cached_has_bits = from._has_bits_[1];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      login_screen_show_options_in_system_tray_menu_enabled_ = from.login_screen_show_options_in_system_tray_menu_enabled_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      login_screen_shortcuts_enabled_ = from.login_screen_shortcuts_enabled_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      login_screen_screen_magnifier_type_ = from.login_screen_screen_magnifier_type_;
+    }
+    _has_bits_[1] |= cached_has_bits;
+  }
+}
+
+void AccessibilitySettingsProto::CopyFrom(const AccessibilitySettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AccessibilitySettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AccessibilitySettingsProto::IsInitialized() const {
+  return true;
+}
+
+void AccessibilitySettingsProto::InternalSwap(AccessibilitySettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(_has_bits_[1], other->_has_bits_[1]);
+  swap(login_screen_large_cursor_enabled_options_, other->login_screen_large_cursor_enabled_options_);
+  swap(login_screen_spoken_feedback_enabled_options_, other->login_screen_spoken_feedback_enabled_options_);
+  swap(login_screen_high_contrast_enabled_options_, other->login_screen_high_contrast_enabled_options_);
+  swap(login_screen_virtual_keyboard_enabled_options_, other->login_screen_virtual_keyboard_enabled_options_);
+  swap(login_screen_dictation_enabled_options_, other->login_screen_dictation_enabled_options_);
+  swap(login_screen_select_to_speak_enabled_options_, other->login_screen_select_to_speak_enabled_options_);
+  swap(login_screen_cursor_highlight_enabled_options_, other->login_screen_cursor_highlight_enabled_options_);
+  swap(login_screen_caret_highlight_enabled_options_, other->login_screen_caret_highlight_enabled_options_);
+  swap(login_screen_mono_audio_enabled_options_, other->login_screen_mono_audio_enabled_options_);
+  swap(login_screen_autoclick_enabled_options_, other->login_screen_autoclick_enabled_options_);
+  swap(login_screen_sticky_keys_enabled_options_, other->login_screen_sticky_keys_enabled_options_);
+  swap(login_screen_keyboard_focus_highlight_enabled_options_, other->login_screen_keyboard_focus_highlight_enabled_options_);
+  swap(login_screen_screen_magnifier_type_options_, other->login_screen_screen_magnifier_type_options_);
+  swap(login_screen_show_options_in_system_tray_menu_enabled_options_, other->login_screen_show_options_in_system_tray_menu_enabled_options_);
+  swap(login_screen_shortcuts_enabled_options_, other->login_screen_shortcuts_enabled_options_);
+  swap(login_screen_default_large_cursor_enabled_, other->login_screen_default_large_cursor_enabled_);
+  swap(login_screen_default_spoken_feedback_enabled_, other->login_screen_default_spoken_feedback_enabled_);
+  swap(login_screen_default_high_contrast_enabled_, other->login_screen_default_high_contrast_enabled_);
+  swap(login_screen_default_virtual_keyboard_enabled_, other->login_screen_default_virtual_keyboard_enabled_);
+  swap(login_screen_default_screen_magnifier_type_, other->login_screen_default_screen_magnifier_type_);
+  swap(login_screen_large_cursor_enabled_, other->login_screen_large_cursor_enabled_);
+  swap(login_screen_spoken_feedback_enabled_, other->login_screen_spoken_feedback_enabled_);
+  swap(login_screen_high_contrast_enabled_, other->login_screen_high_contrast_enabled_);
+  swap(login_screen_virtual_keyboard_enabled_, other->login_screen_virtual_keyboard_enabled_);
+  swap(login_screen_dictation_enabled_, other->login_screen_dictation_enabled_);
+  swap(login_screen_select_to_speak_enabled_, other->login_screen_select_to_speak_enabled_);
+  swap(login_screen_cursor_highlight_enabled_, other->login_screen_cursor_highlight_enabled_);
+  swap(login_screen_caret_highlight_enabled_, other->login_screen_caret_highlight_enabled_);
+  swap(login_screen_mono_audio_enabled_, other->login_screen_mono_audio_enabled_);
+  swap(login_screen_autoclick_enabled_, other->login_screen_autoclick_enabled_);
+  swap(login_screen_sticky_keys_enabled_, other->login_screen_sticky_keys_enabled_);
+  swap(login_screen_keyboard_focus_highlight_enabled_, other->login_screen_keyboard_focus_highlight_enabled_);
+  swap(login_screen_show_options_in_system_tray_menu_enabled_, other->login_screen_show_options_in_system_tray_menu_enabled_);
+  swap(login_screen_shortcuts_enabled_, other->login_screen_shortcuts_enabled_);
+  swap(login_screen_screen_magnifier_type_, other->login_screen_screen_magnifier_type_);
+}
+
+std::string AccessibilitySettingsProto::GetTypeName() const {
+  return "enterprise_management.AccessibilitySettingsProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_SupervisedUsersSettingsProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_SupervisedUsersSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_SupervisedUsersSettingsProto>()._has_bits_);
+  static void set_has_obsolete_supervised_users_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+OBSOLETE_SupervisedUsersSettingsProto::OBSOLETE_SupervisedUsersSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+}
+OBSOLETE_SupervisedUsersSettingsProto::OBSOLETE_SupervisedUsersSettingsProto(const OBSOLETE_SupervisedUsersSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  obsolete_supervised_users_enabled_ = from.obsolete_supervised_users_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+}
+
+void OBSOLETE_SupervisedUsersSettingsProto::SharedCtor() {
+  obsolete_supervised_users_enabled_ = false;
+}
+
+OBSOLETE_SupervisedUsersSettingsProto::~OBSOLETE_SupervisedUsersSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+  SharedDtor();
+}
+
+void OBSOLETE_SupervisedUsersSettingsProto::SharedDtor() {
+}
+
+void OBSOLETE_SupervisedUsersSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_SupervisedUsersSettingsProto& OBSOLETE_SupervisedUsersSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_SupervisedUsersSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_SupervisedUsersSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  obsolete_supervised_users_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_SupervisedUsersSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool OBSOLETE_supervised_users_enabled = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_obsolete_supervised_users_enabled(&has_bits);
+          obsolete_supervised_users_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_SupervisedUsersSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool OBSOLETE_supervised_users_enabled = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_obsolete_supervised_users_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+  return target;
+}
+
+size_t OBSOLETE_SupervisedUsersSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool OBSOLETE_supervised_users_enabled = 1 [deprecated = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_SupervisedUsersSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_SupervisedUsersSettingsProto*>(
+      &from));
+}
+
+void OBSOLETE_SupervisedUsersSettingsProto::MergeFrom(const OBSOLETE_SupervisedUsersSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_obsolete_supervised_users_enabled()) {
+    _internal_set_obsolete_supervised_users_enabled(from._internal_obsolete_supervised_users_enabled());
+  }
+}
+
+void OBSOLETE_SupervisedUsersSettingsProto::CopyFrom(const OBSOLETE_SupervisedUsersSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_SupervisedUsersSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_SupervisedUsersSettingsProto::InternalSwap(OBSOLETE_SupervisedUsersSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(obsolete_supervised_users_enabled_, other->obsolete_supervised_users_enabled_);
+}
+
+std::string OBSOLETE_SupervisedUsersSettingsProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_SupervisedUsersSettingsProto";
+}
+
+
+// ===================================================================
+
+void LoginScreenPowerManagementProto::InitAsDefaultInstance() {
+}
+class LoginScreenPowerManagementProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LoginScreenPowerManagementProto>()._has_bits_);
+  static void set_has_login_screen_power_management(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+LoginScreenPowerManagementProto::LoginScreenPowerManagementProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LoginScreenPowerManagementProto)
+}
+LoginScreenPowerManagementProto::LoginScreenPowerManagementProto(const LoginScreenPowerManagementProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  login_screen_power_management_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_login_screen_power_management()) {
+    login_screen_power_management_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.login_screen_power_management_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LoginScreenPowerManagementProto)
+}
+
+void LoginScreenPowerManagementProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_LoginScreenPowerManagementProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  login_screen_power_management_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+LoginScreenPowerManagementProto::~LoginScreenPowerManagementProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LoginScreenPowerManagementProto)
+  SharedDtor();
+}
+
+void LoginScreenPowerManagementProto::SharedDtor() {
+  login_screen_power_management_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void LoginScreenPowerManagementProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LoginScreenPowerManagementProto& LoginScreenPowerManagementProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LoginScreenPowerManagementProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LoginScreenPowerManagementProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LoginScreenPowerManagementProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    login_screen_power_management_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LoginScreenPowerManagementProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string login_screen_power_management = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_login_screen_power_management();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LoginScreenPowerManagementProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LoginScreenPowerManagementProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string login_screen_power_management = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_login_screen_power_management(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LoginScreenPowerManagementProto)
+  return target;
+}
+
+size_t LoginScreenPowerManagementProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LoginScreenPowerManagementProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string login_screen_power_management = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_login_screen_power_management());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LoginScreenPowerManagementProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LoginScreenPowerManagementProto*>(
+      &from));
+}
+
+void LoginScreenPowerManagementProto::MergeFrom(const LoginScreenPowerManagementProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LoginScreenPowerManagementProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_login_screen_power_management()) {
+    _has_bits_[0] |= 0x00000001u;
+    login_screen_power_management_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.login_screen_power_management_);
+  }
+}
+
+void LoginScreenPowerManagementProto::CopyFrom(const LoginScreenPowerManagementProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LoginScreenPowerManagementProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LoginScreenPowerManagementProto::IsInitialized() const {
+  return true;
+}
+
+void LoginScreenPowerManagementProto::InternalSwap(LoginScreenPowerManagementProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  login_screen_power_management_.Swap(&other->login_screen_power_management_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string LoginScreenPowerManagementProto::GetTypeName() const {
+  return "enterprise_management.LoginScreenPowerManagementProto";
+}
+
+
+// ===================================================================
+
+void AutoCleanupSettigsProto::InitAsDefaultInstance() {
+}
+class AutoCleanupSettigsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AutoCleanupSettigsProto>()._has_bits_);
+  static void set_has_clean_up_strategy(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+AutoCleanupSettigsProto::AutoCleanupSettigsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AutoCleanupSettigsProto)
+}
+AutoCleanupSettigsProto::AutoCleanupSettigsProto(const AutoCleanupSettigsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  clean_up_strategy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_clean_up_strategy()) {
+    clean_up_strategy_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.clean_up_strategy_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AutoCleanupSettigsProto)
+}
+
+void AutoCleanupSettigsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AutoCleanupSettigsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  clean_up_strategy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+AutoCleanupSettigsProto::~AutoCleanupSettigsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AutoCleanupSettigsProto)
+  SharedDtor();
+}
+
+void AutoCleanupSettigsProto::SharedDtor() {
+  clean_up_strategy_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AutoCleanupSettigsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AutoCleanupSettigsProto& AutoCleanupSettigsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AutoCleanupSettigsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AutoCleanupSettigsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AutoCleanupSettigsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    clean_up_strategy_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AutoCleanupSettigsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string clean_up_strategy = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_clean_up_strategy();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AutoCleanupSettigsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AutoCleanupSettigsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string clean_up_strategy = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_clean_up_strategy(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AutoCleanupSettigsProto)
+  return target;
+}
+
+size_t AutoCleanupSettigsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AutoCleanupSettigsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string clean_up_strategy = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_clean_up_strategy());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AutoCleanupSettigsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AutoCleanupSettigsProto*>(
+      &from));
+}
+
+void AutoCleanupSettigsProto::MergeFrom(const AutoCleanupSettigsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AutoCleanupSettigsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_clean_up_strategy()) {
+    _has_bits_[0] |= 0x00000001u;
+    clean_up_strategy_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.clean_up_strategy_);
+  }
+}
+
+void AutoCleanupSettigsProto::CopyFrom(const AutoCleanupSettigsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AutoCleanupSettigsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AutoCleanupSettigsProto::IsInitialized() const {
+  return true;
+}
+
+void AutoCleanupSettigsProto::InternalSwap(AutoCleanupSettigsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  clean_up_strategy_.Swap(&other->clean_up_strategy_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string AutoCleanupSettigsProto::GetTypeName() const {
+  return "enterprise_management.AutoCleanupSettigsProto";
+}
+
+
+// ===================================================================
+
+void SystemSettingsProto::InitAsDefaultInstance() {
+}
+class SystemSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemSettingsProto>()._has_bits_);
+  static void set_has_block_devmode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SystemSettingsProto::SystemSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SystemSettingsProto)
+}
+SystemSettingsProto::SystemSettingsProto(const SystemSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  block_devmode_ = from.block_devmode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SystemSettingsProto)
+}
+
+void SystemSettingsProto::SharedCtor() {
+  block_devmode_ = false;
+}
+
+SystemSettingsProto::~SystemSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SystemSettingsProto)
+  SharedDtor();
+}
+
+void SystemSettingsProto::SharedDtor() {
+}
+
+void SystemSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemSettingsProto& SystemSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SystemSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  block_devmode_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool block_devmode = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_block_devmode(&has_bits);
+          block_devmode_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SystemSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool block_devmode = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_block_devmode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SystemSettingsProto)
+  return target;
+}
+
+size_t SystemSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SystemSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool block_devmode = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemSettingsProto*>(
+      &from));
+}
+
+void SystemSettingsProto::MergeFrom(const SystemSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SystemSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_block_devmode()) {
+    _internal_set_block_devmode(from._internal_block_devmode());
+  }
+}
+
+void SystemSettingsProto::CopyFrom(const SystemSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SystemSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void SystemSettingsProto::InternalSwap(SystemSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(block_devmode_, other->block_devmode_);
+}
+
+std::string SystemSettingsProto::GetTypeName() const {
+  return "enterprise_management.SystemSettingsProto";
+}
+
+
+// ===================================================================
+
+void SAMLSettingsProto::InitAsDefaultInstance() {
+}
+class SAMLSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SAMLSettingsProto>()._has_bits_);
+  static void set_has_transfer_saml_cookies(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SAMLSettingsProto::SAMLSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SAMLSettingsProto)
+}
+SAMLSettingsProto::SAMLSettingsProto(const SAMLSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  transfer_saml_cookies_ = from.transfer_saml_cookies_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SAMLSettingsProto)
+}
+
+void SAMLSettingsProto::SharedCtor() {
+  transfer_saml_cookies_ = false;
+}
+
+SAMLSettingsProto::~SAMLSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SAMLSettingsProto)
+  SharedDtor();
+}
+
+void SAMLSettingsProto::SharedDtor() {
+}
+
+void SAMLSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SAMLSettingsProto& SAMLSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SAMLSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SAMLSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SAMLSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  transfer_saml_cookies_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SAMLSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool transfer_saml_cookies = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_transfer_saml_cookies(&has_bits);
+          transfer_saml_cookies_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SAMLSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SAMLSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool transfer_saml_cookies = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_transfer_saml_cookies(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SAMLSettingsProto)
+  return target;
+}
+
+size_t SAMLSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SAMLSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool transfer_saml_cookies = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SAMLSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SAMLSettingsProto*>(
+      &from));
+}
+
+void SAMLSettingsProto::MergeFrom(const SAMLSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SAMLSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_transfer_saml_cookies()) {
+    _internal_set_transfer_saml_cookies(from._internal_transfer_saml_cookies());
+  }
+}
+
+void SAMLSettingsProto::CopyFrom(const SAMLSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SAMLSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SAMLSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void SAMLSettingsProto::InternalSwap(SAMLSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(transfer_saml_cookies_, other->transfer_saml_cookies_);
+}
+
+std::string SAMLSettingsProto::GetTypeName() const {
+  return "enterprise_management.SAMLSettingsProto";
+}
+
+
+// ===================================================================
+
+void RebootOnShutdownProto::InitAsDefaultInstance() {
+}
+class RebootOnShutdownProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RebootOnShutdownProto>()._has_bits_);
+  static void set_has_reboot_on_shutdown(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+RebootOnShutdownProto::RebootOnShutdownProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RebootOnShutdownProto)
+}
+RebootOnShutdownProto::RebootOnShutdownProto(const RebootOnShutdownProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  reboot_on_shutdown_ = from.reboot_on_shutdown_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RebootOnShutdownProto)
+}
+
+void RebootOnShutdownProto::SharedCtor() {
+  reboot_on_shutdown_ = false;
+}
+
+RebootOnShutdownProto::~RebootOnShutdownProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RebootOnShutdownProto)
+  SharedDtor();
+}
+
+void RebootOnShutdownProto::SharedDtor() {
+}
+
+void RebootOnShutdownProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RebootOnShutdownProto& RebootOnShutdownProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RebootOnShutdownProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RebootOnShutdownProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RebootOnShutdownProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  reboot_on_shutdown_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RebootOnShutdownProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool reboot_on_shutdown = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_reboot_on_shutdown(&has_bits);
+          reboot_on_shutdown_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RebootOnShutdownProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RebootOnShutdownProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool reboot_on_shutdown = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_reboot_on_shutdown(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RebootOnShutdownProto)
+  return target;
+}
+
+size_t RebootOnShutdownProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RebootOnShutdownProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool reboot_on_shutdown = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RebootOnShutdownProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RebootOnShutdownProto*>(
+      &from));
+}
+
+void RebootOnShutdownProto::MergeFrom(const RebootOnShutdownProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RebootOnShutdownProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_reboot_on_shutdown()) {
+    _internal_set_reboot_on_shutdown(from._internal_reboot_on_shutdown());
+  }
+}
+
+void RebootOnShutdownProto::CopyFrom(const RebootOnShutdownProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RebootOnShutdownProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RebootOnShutdownProto::IsInitialized() const {
+  return true;
+}
+
+void RebootOnShutdownProto::InternalSwap(RebootOnShutdownProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(reboot_on_shutdown_, other->reboot_on_shutdown_);
+}
+
+std::string RebootOnShutdownProto::GetTypeName() const {
+  return "enterprise_management.RebootOnShutdownProto";
+}
+
+
+// ===================================================================
+
+void DeviceHeartbeatSettingsProto::InitAsDefaultInstance() {
+}
+class DeviceHeartbeatSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceHeartbeatSettingsProto>()._has_bits_);
+  static void set_has_heartbeat_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_heartbeat_frequency(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+DeviceHeartbeatSettingsProto::DeviceHeartbeatSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceHeartbeatSettingsProto)
+}
+DeviceHeartbeatSettingsProto::DeviceHeartbeatSettingsProto(const DeviceHeartbeatSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&heartbeat_enabled_, &from.heartbeat_enabled_,
+    static_cast<size_t>(reinterpret_cast<char*>(&heartbeat_frequency_) -
+    reinterpret_cast<char*>(&heartbeat_enabled_)) + sizeof(heartbeat_frequency_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceHeartbeatSettingsProto)
+}
+
+void DeviceHeartbeatSettingsProto::SharedCtor() {
+  heartbeat_enabled_ = false;
+  heartbeat_frequency_ = PROTOBUF_LONGLONG(120000);
+}
+
+DeviceHeartbeatSettingsProto::~DeviceHeartbeatSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceHeartbeatSettingsProto)
+  SharedDtor();
+}
+
+void DeviceHeartbeatSettingsProto::SharedDtor() {
+}
+
+void DeviceHeartbeatSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceHeartbeatSettingsProto& DeviceHeartbeatSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceHeartbeatSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceHeartbeatSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceHeartbeatSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    heartbeat_enabled_ = false;
+    heartbeat_frequency_ = PROTOBUF_LONGLONG(120000);
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceHeartbeatSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool heartbeat_enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_heartbeat_enabled(&has_bits);
+          heartbeat_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 heartbeat_frequency = 2 [default = 120000];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_heartbeat_frequency(&has_bits);
+          heartbeat_frequency_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceHeartbeatSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceHeartbeatSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool heartbeat_enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_heartbeat_enabled(), target);
+  }
+
+  // optional int64 heartbeat_frequency = 2 [default = 120000];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_heartbeat_frequency(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceHeartbeatSettingsProto)
+  return target;
+}
+
+size_t DeviceHeartbeatSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceHeartbeatSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional bool heartbeat_enabled = 1 [default = false];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 1;
+    }
+
+    // optional int64 heartbeat_frequency = 2 [default = 120000];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_heartbeat_frequency());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceHeartbeatSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceHeartbeatSettingsProto*>(
+      &from));
+}
+
+void DeviceHeartbeatSettingsProto::MergeFrom(const DeviceHeartbeatSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceHeartbeatSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      heartbeat_enabled_ = from.heartbeat_enabled_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      heartbeat_frequency_ = from.heartbeat_frequency_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceHeartbeatSettingsProto::CopyFrom(const DeviceHeartbeatSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceHeartbeatSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceHeartbeatSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceHeartbeatSettingsProto::InternalSwap(DeviceHeartbeatSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(heartbeat_enabled_, other->heartbeat_enabled_);
+  swap(heartbeat_frequency_, other->heartbeat_frequency_);
+}
+
+std::string DeviceHeartbeatSettingsProto::GetTypeName() const {
+  return "enterprise_management.DeviceHeartbeatSettingsProto";
+}
+
+
+// ===================================================================
+
+void ExtensionCacheSizeProto::InitAsDefaultInstance() {
+}
+class ExtensionCacheSizeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ExtensionCacheSizeProto>()._has_bits_);
+  static void set_has_extension_cache_size(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ExtensionCacheSizeProto::ExtensionCacheSizeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ExtensionCacheSizeProto)
+}
+ExtensionCacheSizeProto::ExtensionCacheSizeProto(const ExtensionCacheSizeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  extension_cache_size_ = from.extension_cache_size_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ExtensionCacheSizeProto)
+}
+
+void ExtensionCacheSizeProto::SharedCtor() {
+  extension_cache_size_ = PROTOBUF_LONGLONG(0);
+}
+
+ExtensionCacheSizeProto::~ExtensionCacheSizeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ExtensionCacheSizeProto)
+  SharedDtor();
+}
+
+void ExtensionCacheSizeProto::SharedDtor() {
+}
+
+void ExtensionCacheSizeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ExtensionCacheSizeProto& ExtensionCacheSizeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ExtensionCacheSizeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ExtensionCacheSizeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ExtensionCacheSizeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  extension_cache_size_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ExtensionCacheSizeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 extension_cache_size = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_extension_cache_size(&has_bits);
+          extension_cache_size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ExtensionCacheSizeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ExtensionCacheSizeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 extension_cache_size = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_extension_cache_size(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ExtensionCacheSizeProto)
+  return target;
+}
+
+size_t ExtensionCacheSizeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ExtensionCacheSizeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional int64 extension_cache_size = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+        this->_internal_extension_cache_size());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ExtensionCacheSizeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ExtensionCacheSizeProto*>(
+      &from));
+}
+
+void ExtensionCacheSizeProto::MergeFrom(const ExtensionCacheSizeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ExtensionCacheSizeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_extension_cache_size()) {
+    _internal_set_extension_cache_size(from._internal_extension_cache_size());
+  }
+}
+
+void ExtensionCacheSizeProto::CopyFrom(const ExtensionCacheSizeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ExtensionCacheSizeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ExtensionCacheSizeProto::IsInitialized() const {
+  return true;
+}
+
+void ExtensionCacheSizeProto::InternalSwap(ExtensionCacheSizeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(extension_cache_size_, other->extension_cache_size_);
+}
+
+std::string ExtensionCacheSizeProto::GetTypeName() const {
+  return "enterprise_management.ExtensionCacheSizeProto";
+}
+
+
+// ===================================================================
+
+void LoginScreenDomainAutoCompleteProto::InitAsDefaultInstance() {
+}
+class LoginScreenDomainAutoCompleteProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LoginScreenDomainAutoCompleteProto>()._has_bits_);
+  static void set_has_login_screen_domain_auto_complete(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+LoginScreenDomainAutoCompleteProto::LoginScreenDomainAutoCompleteProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LoginScreenDomainAutoCompleteProto)
+}
+LoginScreenDomainAutoCompleteProto::LoginScreenDomainAutoCompleteProto(const LoginScreenDomainAutoCompleteProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  login_screen_domain_auto_complete_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_login_screen_domain_auto_complete()) {
+    login_screen_domain_auto_complete_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.login_screen_domain_auto_complete_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LoginScreenDomainAutoCompleteProto)
+}
+
+void LoginScreenDomainAutoCompleteProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_LoginScreenDomainAutoCompleteProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  login_screen_domain_auto_complete_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+LoginScreenDomainAutoCompleteProto::~LoginScreenDomainAutoCompleteProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LoginScreenDomainAutoCompleteProto)
+  SharedDtor();
+}
+
+void LoginScreenDomainAutoCompleteProto::SharedDtor() {
+  login_screen_domain_auto_complete_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void LoginScreenDomainAutoCompleteProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LoginScreenDomainAutoCompleteProto& LoginScreenDomainAutoCompleteProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LoginScreenDomainAutoCompleteProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LoginScreenDomainAutoCompleteProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LoginScreenDomainAutoCompleteProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    login_screen_domain_auto_complete_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LoginScreenDomainAutoCompleteProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string login_screen_domain_auto_complete = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_login_screen_domain_auto_complete();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LoginScreenDomainAutoCompleteProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LoginScreenDomainAutoCompleteProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string login_screen_domain_auto_complete = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_login_screen_domain_auto_complete(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LoginScreenDomainAutoCompleteProto)
+  return target;
+}
+
+size_t LoginScreenDomainAutoCompleteProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LoginScreenDomainAutoCompleteProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string login_screen_domain_auto_complete = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_login_screen_domain_auto_complete());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LoginScreenDomainAutoCompleteProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LoginScreenDomainAutoCompleteProto*>(
+      &from));
+}
+
+void LoginScreenDomainAutoCompleteProto::MergeFrom(const LoginScreenDomainAutoCompleteProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LoginScreenDomainAutoCompleteProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_login_screen_domain_auto_complete()) {
+    _has_bits_[0] |= 0x00000001u;
+    login_screen_domain_auto_complete_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.login_screen_domain_auto_complete_);
+  }
+}
+
+void LoginScreenDomainAutoCompleteProto::CopyFrom(const LoginScreenDomainAutoCompleteProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LoginScreenDomainAutoCompleteProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LoginScreenDomainAutoCompleteProto::IsInitialized() const {
+  return true;
+}
+
+void LoginScreenDomainAutoCompleteProto::InternalSwap(LoginScreenDomainAutoCompleteProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  login_screen_domain_auto_complete_.Swap(&other->login_screen_domain_auto_complete_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string LoginScreenDomainAutoCompleteProto::GetTypeName() const {
+  return "enterprise_management.LoginScreenDomainAutoCompleteProto";
+}
+
+
+// ===================================================================
+
+void DeviceLogUploadSettingsProto::InitAsDefaultInstance() {
+}
+class DeviceLogUploadSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceLogUploadSettingsProto>()._has_bits_);
+  static void set_has_system_log_upload_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceLogUploadSettingsProto::DeviceLogUploadSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceLogUploadSettingsProto)
+}
+DeviceLogUploadSettingsProto::DeviceLogUploadSettingsProto(const DeviceLogUploadSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  system_log_upload_enabled_ = from.system_log_upload_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceLogUploadSettingsProto)
+}
+
+void DeviceLogUploadSettingsProto::SharedCtor() {
+  system_log_upload_enabled_ = false;
+}
+
+DeviceLogUploadSettingsProto::~DeviceLogUploadSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceLogUploadSettingsProto)
+  SharedDtor();
+}
+
+void DeviceLogUploadSettingsProto::SharedDtor() {
+}
+
+void DeviceLogUploadSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceLogUploadSettingsProto& DeviceLogUploadSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceLogUploadSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceLogUploadSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceLogUploadSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  system_log_upload_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceLogUploadSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool system_log_upload_enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_system_log_upload_enabled(&has_bits);
+          system_log_upload_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceLogUploadSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceLogUploadSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool system_log_upload_enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_system_log_upload_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceLogUploadSettingsProto)
+  return target;
+}
+
+size_t DeviceLogUploadSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceLogUploadSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool system_log_upload_enabled = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceLogUploadSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceLogUploadSettingsProto*>(
+      &from));
+}
+
+void DeviceLogUploadSettingsProto::MergeFrom(const DeviceLogUploadSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceLogUploadSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_system_log_upload_enabled()) {
+    _internal_set_system_log_upload_enabled(from._internal_system_log_upload_enabled());
+  }
+}
+
+void DeviceLogUploadSettingsProto::CopyFrom(const DeviceLogUploadSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceLogUploadSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceLogUploadSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceLogUploadSettingsProto::InternalSwap(DeviceLogUploadSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(system_log_upload_enabled_, other->system_log_upload_enabled_);
+}
+
+std::string DeviceLogUploadSettingsProto::GetTypeName() const {
+  return "enterprise_management.DeviceLogUploadSettingsProto";
+}
+
+
+// ===================================================================
+
+void DisplayRotationDefaultProto::InitAsDefaultInstance() {
+}
+class DisplayRotationDefaultProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DisplayRotationDefaultProto>()._has_bits_);
+  static void set_has_display_rotation_default(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DisplayRotationDefaultProto::DisplayRotationDefaultProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DisplayRotationDefaultProto)
+}
+DisplayRotationDefaultProto::DisplayRotationDefaultProto(const DisplayRotationDefaultProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  display_rotation_default_ = from.display_rotation_default_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DisplayRotationDefaultProto)
+}
+
+void DisplayRotationDefaultProto::SharedCtor() {
+  display_rotation_default_ = 0;
+}
+
+DisplayRotationDefaultProto::~DisplayRotationDefaultProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DisplayRotationDefaultProto)
+  SharedDtor();
+}
+
+void DisplayRotationDefaultProto::SharedDtor() {
+}
+
+void DisplayRotationDefaultProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DisplayRotationDefaultProto& DisplayRotationDefaultProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DisplayRotationDefaultProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DisplayRotationDefaultProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DisplayRotationDefaultProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  display_rotation_default_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DisplayRotationDefaultProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DisplayRotationDefaultProto.Rotation display_rotation_default = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DisplayRotationDefaultProto_Rotation_IsValid(val))) {
+            _internal_set_display_rotation_default(static_cast<::enterprise_management::DisplayRotationDefaultProto_Rotation>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DisplayRotationDefaultProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DisplayRotationDefaultProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DisplayRotationDefaultProto.Rotation display_rotation_default = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_display_rotation_default(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DisplayRotationDefaultProto)
+  return target;
+}
+
+size_t DisplayRotationDefaultProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DisplayRotationDefaultProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DisplayRotationDefaultProto.Rotation display_rotation_default = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_display_rotation_default());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DisplayRotationDefaultProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DisplayRotationDefaultProto*>(
+      &from));
+}
+
+void DisplayRotationDefaultProto::MergeFrom(const DisplayRotationDefaultProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DisplayRotationDefaultProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_display_rotation_default()) {
+    _internal_set_display_rotation_default(from._internal_display_rotation_default());
+  }
+}
+
+void DisplayRotationDefaultProto::CopyFrom(const DisplayRotationDefaultProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DisplayRotationDefaultProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DisplayRotationDefaultProto::IsInitialized() const {
+  return true;
+}
+
+void DisplayRotationDefaultProto::InternalSwap(DisplayRotationDefaultProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(display_rotation_default_, other->display_rotation_default_);
+}
+
+std::string DisplayRotationDefaultProto::GetTypeName() const {
+  return "enterprise_management.DisplayRotationDefaultProto";
+}
+
+
+// ===================================================================
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::InitAsDefaultInstance() {
+}
+class DeviceLoginScreenPrivacyScreenEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceLoginScreenPrivacyScreenEnabledProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceLoginScreenPrivacyScreenEnabledProto::DeviceLoginScreenPrivacyScreenEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+}
+DeviceLoginScreenPrivacyScreenEnabledProto::DeviceLoginScreenPrivacyScreenEnabledProto(const DeviceLoginScreenPrivacyScreenEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+}
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::SharedCtor() {
+  enabled_ = false;
+}
+
+DeviceLoginScreenPrivacyScreenEnabledProto::~DeviceLoginScreenPrivacyScreenEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+  SharedDtor();
+}
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::SharedDtor() {
+}
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceLoginScreenPrivacyScreenEnabledProto& DeviceLoginScreenPrivacyScreenEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceLoginScreenPrivacyScreenEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceLoginScreenPrivacyScreenEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceLoginScreenPrivacyScreenEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+  return target;
+}
+
+size_t DeviceLoginScreenPrivacyScreenEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceLoginScreenPrivacyScreenEnabledProto*>(
+      &from));
+}
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::MergeFrom(const DeviceLoginScreenPrivacyScreenEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::CopyFrom(const DeviceLoginScreenPrivacyScreenEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceLoginScreenPrivacyScreenEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceLoginScreenPrivacyScreenEnabledProto::InternalSwap(DeviceLoginScreenPrivacyScreenEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceLoginScreenPrivacyScreenEnabledProto::GetTypeName() const {
+  return "enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto";
+}
+
+
+// ===================================================================
+
+void DeviceDisplayResolutionProto::InitAsDefaultInstance() {
+}
+class DeviceDisplayResolutionProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceDisplayResolutionProto>()._has_bits_);
+  static void set_has_device_display_resolution(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceDisplayResolutionProto::DeviceDisplayResolutionProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceDisplayResolutionProto)
+}
+DeviceDisplayResolutionProto::DeviceDisplayResolutionProto(const DeviceDisplayResolutionProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_display_resolution_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_display_resolution()) {
+    device_display_resolution_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_display_resolution_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceDisplayResolutionProto)
+}
+
+void DeviceDisplayResolutionProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceDisplayResolutionProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  device_display_resolution_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceDisplayResolutionProto::~DeviceDisplayResolutionProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceDisplayResolutionProto)
+  SharedDtor();
+}
+
+void DeviceDisplayResolutionProto::SharedDtor() {
+  device_display_resolution_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceDisplayResolutionProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceDisplayResolutionProto& DeviceDisplayResolutionProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceDisplayResolutionProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceDisplayResolutionProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceDisplayResolutionProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    device_display_resolution_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceDisplayResolutionProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_display_resolution = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_display_resolution();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceDisplayResolutionProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceDisplayResolutionProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_display_resolution = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_display_resolution(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceDisplayResolutionProto)
+  return target;
+}
+
+size_t DeviceDisplayResolutionProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceDisplayResolutionProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string device_display_resolution = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_display_resolution());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceDisplayResolutionProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceDisplayResolutionProto*>(
+      &from));
+}
+
+void DeviceDisplayResolutionProto::MergeFrom(const DeviceDisplayResolutionProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceDisplayResolutionProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_display_resolution()) {
+    _has_bits_[0] |= 0x00000001u;
+    device_display_resolution_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_display_resolution_);
+  }
+}
+
+void DeviceDisplayResolutionProto::CopyFrom(const DeviceDisplayResolutionProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceDisplayResolutionProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceDisplayResolutionProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceDisplayResolutionProto::InternalSwap(DeviceDisplayResolutionProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_display_resolution_.Swap(&other->device_display_resolution_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceDisplayResolutionProto::GetTypeName() const {
+  return "enterprise_management.DeviceDisplayResolutionProto";
+}
+
+
+// ===================================================================
+
+void AllowKioskAppControlChromeVersionProto::InitAsDefaultInstance() {
+}
+class AllowKioskAppControlChromeVersionProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AllowKioskAppControlChromeVersionProto>()._has_bits_);
+  static void set_has_allow_kiosk_app_control_chrome_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+AllowKioskAppControlChromeVersionProto::AllowKioskAppControlChromeVersionProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AllowKioskAppControlChromeVersionProto)
+}
+AllowKioskAppControlChromeVersionProto::AllowKioskAppControlChromeVersionProto(const AllowKioskAppControlChromeVersionProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  allow_kiosk_app_control_chrome_version_ = from.allow_kiosk_app_control_chrome_version_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AllowKioskAppControlChromeVersionProto)
+}
+
+void AllowKioskAppControlChromeVersionProto::SharedCtor() {
+  allow_kiosk_app_control_chrome_version_ = false;
+}
+
+AllowKioskAppControlChromeVersionProto::~AllowKioskAppControlChromeVersionProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AllowKioskAppControlChromeVersionProto)
+  SharedDtor();
+}
+
+void AllowKioskAppControlChromeVersionProto::SharedDtor() {
+}
+
+void AllowKioskAppControlChromeVersionProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AllowKioskAppControlChromeVersionProto& AllowKioskAppControlChromeVersionProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AllowKioskAppControlChromeVersionProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AllowKioskAppControlChromeVersionProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AllowKioskAppControlChromeVersionProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allow_kiosk_app_control_chrome_version_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AllowKioskAppControlChromeVersionProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool allow_kiosk_app_control_chrome_version = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_allow_kiosk_app_control_chrome_version(&has_bits);
+          allow_kiosk_app_control_chrome_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AllowKioskAppControlChromeVersionProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AllowKioskAppControlChromeVersionProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool allow_kiosk_app_control_chrome_version = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_allow_kiosk_app_control_chrome_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AllowKioskAppControlChromeVersionProto)
+  return target;
+}
+
+size_t AllowKioskAppControlChromeVersionProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AllowKioskAppControlChromeVersionProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool allow_kiosk_app_control_chrome_version = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AllowKioskAppControlChromeVersionProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AllowKioskAppControlChromeVersionProto*>(
+      &from));
+}
+
+void AllowKioskAppControlChromeVersionProto::MergeFrom(const AllowKioskAppControlChromeVersionProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AllowKioskAppControlChromeVersionProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_allow_kiosk_app_control_chrome_version()) {
+    _internal_set_allow_kiosk_app_control_chrome_version(from._internal_allow_kiosk_app_control_chrome_version());
+  }
+}
+
+void AllowKioskAppControlChromeVersionProto::CopyFrom(const AllowKioskAppControlChromeVersionProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AllowKioskAppControlChromeVersionProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AllowKioskAppControlChromeVersionProto::IsInitialized() const {
+  return true;
+}
+
+void AllowKioskAppControlChromeVersionProto::InternalSwap(AllowKioskAppControlChromeVersionProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(allow_kiosk_app_control_chrome_version_, other->allow_kiosk_app_control_chrome_version_);
+}
+
+std::string AllowKioskAppControlChromeVersionProto::GetTypeName() const {
+  return "enterprise_management.AllowKioskAppControlChromeVersionProto";
+}
+
+
+// ===================================================================
+
+void LoginAuthenticationBehaviorProto::InitAsDefaultInstance() {
+}
+class LoginAuthenticationBehaviorProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LoginAuthenticationBehaviorProto>()._has_bits_);
+  static void set_has_login_authentication_behavior(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+LoginAuthenticationBehaviorProto::LoginAuthenticationBehaviorProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LoginAuthenticationBehaviorProto)
+}
+LoginAuthenticationBehaviorProto::LoginAuthenticationBehaviorProto(const LoginAuthenticationBehaviorProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  login_authentication_behavior_ = from.login_authentication_behavior_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LoginAuthenticationBehaviorProto)
+}
+
+void LoginAuthenticationBehaviorProto::SharedCtor() {
+  login_authentication_behavior_ = 0;
+}
+
+LoginAuthenticationBehaviorProto::~LoginAuthenticationBehaviorProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LoginAuthenticationBehaviorProto)
+  SharedDtor();
+}
+
+void LoginAuthenticationBehaviorProto::SharedDtor() {
+}
+
+void LoginAuthenticationBehaviorProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LoginAuthenticationBehaviorProto& LoginAuthenticationBehaviorProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LoginAuthenticationBehaviorProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LoginAuthenticationBehaviorProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LoginAuthenticationBehaviorProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  login_authentication_behavior_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LoginAuthenticationBehaviorProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.LoginAuthenticationBehaviorProto.LoginBehavior login_authentication_behavior = 1 [default = GAIA];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior_IsValid(val))) {
+            _internal_set_login_authentication_behavior(static_cast<::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LoginAuthenticationBehaviorProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LoginAuthenticationBehaviorProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.LoginAuthenticationBehaviorProto.LoginBehavior login_authentication_behavior = 1 [default = GAIA];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_login_authentication_behavior(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LoginAuthenticationBehaviorProto)
+  return target;
+}
+
+size_t LoginAuthenticationBehaviorProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LoginAuthenticationBehaviorProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.LoginAuthenticationBehaviorProto.LoginBehavior login_authentication_behavior = 1 [default = GAIA];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_login_authentication_behavior());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LoginAuthenticationBehaviorProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LoginAuthenticationBehaviorProto*>(
+      &from));
+}
+
+void LoginAuthenticationBehaviorProto::MergeFrom(const LoginAuthenticationBehaviorProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LoginAuthenticationBehaviorProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_login_authentication_behavior()) {
+    _internal_set_login_authentication_behavior(from._internal_login_authentication_behavior());
+  }
+}
+
+void LoginAuthenticationBehaviorProto::CopyFrom(const LoginAuthenticationBehaviorProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LoginAuthenticationBehaviorProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LoginAuthenticationBehaviorProto::IsInitialized() const {
+  return true;
+}
+
+void LoginAuthenticationBehaviorProto::InternalSwap(LoginAuthenticationBehaviorProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(login_authentication_behavior_, other->login_authentication_behavior_);
+}
+
+std::string LoginAuthenticationBehaviorProto::GetTypeName() const {
+  return "enterprise_management.LoginAuthenticationBehaviorProto";
+}
+
+
+// ===================================================================
+
+void UsbDeviceIdProto::InitAsDefaultInstance() {
+}
+class UsbDeviceIdProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UsbDeviceIdProto>()._has_bits_);
+  static void set_has_vendor_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_product_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+UsbDeviceIdProto::UsbDeviceIdProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UsbDeviceIdProto)
+}
+UsbDeviceIdProto::UsbDeviceIdProto(const UsbDeviceIdProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&vendor_id_, &from.vendor_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&product_id_) -
+    reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UsbDeviceIdProto)
+}
+
+void UsbDeviceIdProto::SharedCtor() {
+  ::memset(&vendor_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&product_id_) -
+      reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+}
+
+UsbDeviceIdProto::~UsbDeviceIdProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UsbDeviceIdProto)
+  SharedDtor();
+}
+
+void UsbDeviceIdProto::SharedDtor() {
+}
+
+void UsbDeviceIdProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UsbDeviceIdProto& UsbDeviceIdProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UsbDeviceIdProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UsbDeviceIdProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UsbDeviceIdProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&vendor_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&product_id_) -
+        reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UsbDeviceIdProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 vendor_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_vendor_id(&has_bits);
+          vendor_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 product_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_product_id(&has_bits);
+          product_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UsbDeviceIdProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UsbDeviceIdProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 vendor_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_vendor_id(), target);
+  }
+
+  // optional int32 product_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_product_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UsbDeviceIdProto)
+  return target;
+}
+
+size_t UsbDeviceIdProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UsbDeviceIdProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int32 vendor_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_vendor_id());
+    }
+
+    // optional int32 product_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_product_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UsbDeviceIdProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UsbDeviceIdProto*>(
+      &from));
+}
+
+void UsbDeviceIdProto::MergeFrom(const UsbDeviceIdProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UsbDeviceIdProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      vendor_id_ = from.vendor_id_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      product_id_ = from.product_id_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void UsbDeviceIdProto::CopyFrom(const UsbDeviceIdProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UsbDeviceIdProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UsbDeviceIdProto::IsInitialized() const {
+  return true;
+}
+
+void UsbDeviceIdProto::InternalSwap(UsbDeviceIdProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(vendor_id_, other->vendor_id_);
+  swap(product_id_, other->product_id_);
+}
+
+std::string UsbDeviceIdProto::GetTypeName() const {
+  return "enterprise_management.UsbDeviceIdProto";
+}
+
+
+// ===================================================================
+
+void UsbDetachableWhitelistProto::InitAsDefaultInstance() {
+}
+class UsbDetachableWhitelistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UsbDetachableWhitelistProto>()._has_bits_);
+};
+
+UsbDetachableWhitelistProto::UsbDetachableWhitelistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UsbDetachableWhitelistProto)
+}
+UsbDetachableWhitelistProto::UsbDetachableWhitelistProto(const UsbDetachableWhitelistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      id_(from.id_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UsbDetachableWhitelistProto)
+}
+
+void UsbDetachableWhitelistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UsbDetachableWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+UsbDetachableWhitelistProto::~UsbDetachableWhitelistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UsbDetachableWhitelistProto)
+  SharedDtor();
+}
+
+void UsbDetachableWhitelistProto::SharedDtor() {
+}
+
+void UsbDetachableWhitelistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UsbDetachableWhitelistProto& UsbDetachableWhitelistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UsbDetachableWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UsbDetachableWhitelistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UsbDetachableWhitelistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  id_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UsbDetachableWhitelistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.UsbDeviceIdProto id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_id(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UsbDetachableWhitelistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UsbDetachableWhitelistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.UsbDeviceIdProto id = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_id_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_id(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UsbDetachableWhitelistProto)
+  return target;
+}
+
+size_t UsbDetachableWhitelistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UsbDetachableWhitelistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.UsbDeviceIdProto id = 1;
+  total_size += 1UL * this->_internal_id_size();
+  for (const auto& msg : this->id_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UsbDetachableWhitelistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UsbDetachableWhitelistProto*>(
+      &from));
+}
+
+void UsbDetachableWhitelistProto::MergeFrom(const UsbDetachableWhitelistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UsbDetachableWhitelistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  id_.MergeFrom(from.id_);
+}
+
+void UsbDetachableWhitelistProto::CopyFrom(const UsbDetachableWhitelistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UsbDetachableWhitelistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UsbDetachableWhitelistProto::IsInitialized() const {
+  return true;
+}
+
+void UsbDetachableWhitelistProto::InternalSwap(UsbDetachableWhitelistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  id_.InternalSwap(&other->id_);
+}
+
+std::string UsbDetachableWhitelistProto::GetTypeName() const {
+  return "enterprise_management.UsbDetachableWhitelistProto";
+}
+
+
+// ===================================================================
+
+void UsbDeviceIdInclusiveProto::InitAsDefaultInstance() {
+}
+class UsbDeviceIdInclusiveProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UsbDeviceIdInclusiveProto>()._has_bits_);
+  static void set_has_vendor_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_product_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+UsbDeviceIdInclusiveProto::UsbDeviceIdInclusiveProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UsbDeviceIdInclusiveProto)
+}
+UsbDeviceIdInclusiveProto::UsbDeviceIdInclusiveProto(const UsbDeviceIdInclusiveProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&vendor_id_, &from.vendor_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&product_id_) -
+    reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UsbDeviceIdInclusiveProto)
+}
+
+void UsbDeviceIdInclusiveProto::SharedCtor() {
+  ::memset(&vendor_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&product_id_) -
+      reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+}
+
+UsbDeviceIdInclusiveProto::~UsbDeviceIdInclusiveProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UsbDeviceIdInclusiveProto)
+  SharedDtor();
+}
+
+void UsbDeviceIdInclusiveProto::SharedDtor() {
+}
+
+void UsbDeviceIdInclusiveProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UsbDeviceIdInclusiveProto& UsbDeviceIdInclusiveProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UsbDeviceIdInclusiveProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UsbDeviceIdInclusiveProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UsbDeviceIdInclusiveProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&vendor_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&product_id_) -
+        reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UsbDeviceIdInclusiveProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 vendor_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_vendor_id(&has_bits);
+          vendor_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 product_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_product_id(&has_bits);
+          product_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UsbDeviceIdInclusiveProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UsbDeviceIdInclusiveProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 vendor_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_vendor_id(), target);
+  }
+
+  // optional int32 product_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_product_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UsbDeviceIdInclusiveProto)
+  return target;
+}
+
+size_t UsbDeviceIdInclusiveProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UsbDeviceIdInclusiveProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int32 vendor_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_vendor_id());
+    }
+
+    // optional int32 product_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_product_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UsbDeviceIdInclusiveProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UsbDeviceIdInclusiveProto*>(
+      &from));
+}
+
+void UsbDeviceIdInclusiveProto::MergeFrom(const UsbDeviceIdInclusiveProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UsbDeviceIdInclusiveProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      vendor_id_ = from.vendor_id_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      product_id_ = from.product_id_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void UsbDeviceIdInclusiveProto::CopyFrom(const UsbDeviceIdInclusiveProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UsbDeviceIdInclusiveProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UsbDeviceIdInclusiveProto::IsInitialized() const {
+  return true;
+}
+
+void UsbDeviceIdInclusiveProto::InternalSwap(UsbDeviceIdInclusiveProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(vendor_id_, other->vendor_id_);
+  swap(product_id_, other->product_id_);
+}
+
+std::string UsbDeviceIdInclusiveProto::GetTypeName() const {
+  return "enterprise_management.UsbDeviceIdInclusiveProto";
+}
+
+
+// ===================================================================
+
+void UsbDetachableAllowlistProto::InitAsDefaultInstance() {
+}
+class UsbDetachableAllowlistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UsbDetachableAllowlistProto>()._has_bits_);
+};
+
+UsbDetachableAllowlistProto::UsbDetachableAllowlistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UsbDetachableAllowlistProto)
+}
+UsbDetachableAllowlistProto::UsbDetachableAllowlistProto(const UsbDetachableAllowlistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      id_(from.id_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UsbDetachableAllowlistProto)
+}
+
+void UsbDetachableAllowlistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UsbDetachableAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+UsbDetachableAllowlistProto::~UsbDetachableAllowlistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UsbDetachableAllowlistProto)
+  SharedDtor();
+}
+
+void UsbDetachableAllowlistProto::SharedDtor() {
+}
+
+void UsbDetachableAllowlistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UsbDetachableAllowlistProto& UsbDetachableAllowlistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UsbDetachableAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UsbDetachableAllowlistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UsbDetachableAllowlistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  id_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UsbDetachableAllowlistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.UsbDeviceIdInclusiveProto id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_id(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UsbDetachableAllowlistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UsbDetachableAllowlistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.UsbDeviceIdInclusiveProto id = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_id_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_id(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UsbDetachableAllowlistProto)
+  return target;
+}
+
+size_t UsbDetachableAllowlistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UsbDetachableAllowlistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.UsbDeviceIdInclusiveProto id = 1;
+  total_size += 1UL * this->_internal_id_size();
+  for (const auto& msg : this->id_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UsbDetachableAllowlistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UsbDetachableAllowlistProto*>(
+      &from));
+}
+
+void UsbDetachableAllowlistProto::MergeFrom(const UsbDetachableAllowlistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UsbDetachableAllowlistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  id_.MergeFrom(from.id_);
+}
+
+void UsbDetachableAllowlistProto::CopyFrom(const UsbDetachableAllowlistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UsbDetachableAllowlistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UsbDetachableAllowlistProto::IsInitialized() const {
+  return true;
+}
+
+void UsbDetachableAllowlistProto::InternalSwap(UsbDetachableAllowlistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  id_.InternalSwap(&other->id_);
+}
+
+std::string UsbDetachableAllowlistProto::GetTypeName() const {
+  return "enterprise_management.UsbDetachableAllowlistProto";
+}
+
+
+// ===================================================================
+
+void AllowBluetoothProto::InitAsDefaultInstance() {
+}
+class AllowBluetoothProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AllowBluetoothProto>()._has_bits_);
+  static void set_has_allow_bluetooth(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+AllowBluetoothProto::AllowBluetoothProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AllowBluetoothProto)
+}
+AllowBluetoothProto::AllowBluetoothProto(const AllowBluetoothProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  allow_bluetooth_ = from.allow_bluetooth_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AllowBluetoothProto)
+}
+
+void AllowBluetoothProto::SharedCtor() {
+  allow_bluetooth_ = true;
+}
+
+AllowBluetoothProto::~AllowBluetoothProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AllowBluetoothProto)
+  SharedDtor();
+}
+
+void AllowBluetoothProto::SharedDtor() {
+}
+
+void AllowBluetoothProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AllowBluetoothProto& AllowBluetoothProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AllowBluetoothProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AllowBluetoothProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AllowBluetoothProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allow_bluetooth_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AllowBluetoothProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool allow_bluetooth = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_allow_bluetooth(&has_bits);
+          allow_bluetooth_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AllowBluetoothProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AllowBluetoothProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool allow_bluetooth = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_allow_bluetooth(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AllowBluetoothProto)
+  return target;
+}
+
+size_t AllowBluetoothProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AllowBluetoothProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool allow_bluetooth = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AllowBluetoothProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AllowBluetoothProto*>(
+      &from));
+}
+
+void AllowBluetoothProto::MergeFrom(const AllowBluetoothProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AllowBluetoothProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_allow_bluetooth()) {
+    _internal_set_allow_bluetooth(from._internal_allow_bluetooth());
+  }
+}
+
+void AllowBluetoothProto::CopyFrom(const AllowBluetoothProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AllowBluetoothProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AllowBluetoothProto::IsInitialized() const {
+  return true;
+}
+
+void AllowBluetoothProto::InternalSwap(AllowBluetoothProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(allow_bluetooth_, other->allow_bluetooth_);
+}
+
+std::string AllowBluetoothProto::GetTypeName() const {
+  return "enterprise_management.AllowBluetoothProto";
+}
+
+
+// ===================================================================
+
+void DeviceWiFiAllowedProto::InitAsDefaultInstance() {
+}
+class DeviceWiFiAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceWiFiAllowedProto>()._has_bits_);
+  static void set_has_device_wifi_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceWiFiAllowedProto::DeviceWiFiAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceWiFiAllowedProto)
+}
+DeviceWiFiAllowedProto::DeviceWiFiAllowedProto(const DeviceWiFiAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_wifi_allowed_ = from.device_wifi_allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceWiFiAllowedProto)
+}
+
+void DeviceWiFiAllowedProto::SharedCtor() {
+  device_wifi_allowed_ = true;
+}
+
+DeviceWiFiAllowedProto::~DeviceWiFiAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceWiFiAllowedProto)
+  SharedDtor();
+}
+
+void DeviceWiFiAllowedProto::SharedDtor() {
+}
+
+void DeviceWiFiAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceWiFiAllowedProto& DeviceWiFiAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceWiFiAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceWiFiAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceWiFiAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_wifi_allowed_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceWiFiAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool device_wifi_allowed = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_device_wifi_allowed(&has_bits);
+          device_wifi_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceWiFiAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceWiFiAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool device_wifi_allowed = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_device_wifi_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceWiFiAllowedProto)
+  return target;
+}
+
+size_t DeviceWiFiAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceWiFiAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool device_wifi_allowed = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceWiFiAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceWiFiAllowedProto*>(
+      &from));
+}
+
+void DeviceWiFiAllowedProto::MergeFrom(const DeviceWiFiAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceWiFiAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_wifi_allowed()) {
+    _internal_set_device_wifi_allowed(from._internal_device_wifi_allowed());
+  }
+}
+
+void DeviceWiFiAllowedProto::CopyFrom(const DeviceWiFiAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceWiFiAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceWiFiAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceWiFiAllowedProto::InternalSwap(DeviceWiFiAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_wifi_allowed_, other->device_wifi_allowed_);
+}
+
+std::string DeviceWiFiAllowedProto::GetTypeName() const {
+  return "enterprise_management.DeviceWiFiAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceQuirksDownloadEnabledProto::InitAsDefaultInstance() {
+}
+class DeviceQuirksDownloadEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceQuirksDownloadEnabledProto>()._has_bits_);
+  static void set_has_quirks_download_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceQuirksDownloadEnabledProto::DeviceQuirksDownloadEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceQuirksDownloadEnabledProto)
+}
+DeviceQuirksDownloadEnabledProto::DeviceQuirksDownloadEnabledProto(const DeviceQuirksDownloadEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  quirks_download_enabled_ = from.quirks_download_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceQuirksDownloadEnabledProto)
+}
+
+void DeviceQuirksDownloadEnabledProto::SharedCtor() {
+  quirks_download_enabled_ = false;
+}
+
+DeviceQuirksDownloadEnabledProto::~DeviceQuirksDownloadEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceQuirksDownloadEnabledProto)
+  SharedDtor();
+}
+
+void DeviceQuirksDownloadEnabledProto::SharedDtor() {
+}
+
+void DeviceQuirksDownloadEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceQuirksDownloadEnabledProto& DeviceQuirksDownloadEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceQuirksDownloadEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceQuirksDownloadEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceQuirksDownloadEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  quirks_download_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceQuirksDownloadEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool quirks_download_enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_quirks_download_enabled(&has_bits);
+          quirks_download_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceQuirksDownloadEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceQuirksDownloadEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool quirks_download_enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_quirks_download_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceQuirksDownloadEnabledProto)
+  return target;
+}
+
+size_t DeviceQuirksDownloadEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceQuirksDownloadEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool quirks_download_enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceQuirksDownloadEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceQuirksDownloadEnabledProto*>(
+      &from));
+}
+
+void DeviceQuirksDownloadEnabledProto::MergeFrom(const DeviceQuirksDownloadEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceQuirksDownloadEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_quirks_download_enabled()) {
+    _internal_set_quirks_download_enabled(from._internal_quirks_download_enabled());
+  }
+}
+
+void DeviceQuirksDownloadEnabledProto::CopyFrom(const DeviceQuirksDownloadEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceQuirksDownloadEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceQuirksDownloadEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceQuirksDownloadEnabledProto::InternalSwap(DeviceQuirksDownloadEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(quirks_download_enabled_, other->quirks_download_enabled_);
+}
+
+std::string DeviceQuirksDownloadEnabledProto::GetTypeName() const {
+  return "enterprise_management.DeviceQuirksDownloadEnabledProto";
+}
+
+
+// ===================================================================
+
+void LoginVideoCaptureAllowedUrlsProto::InitAsDefaultInstance() {
+}
+class LoginVideoCaptureAllowedUrlsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LoginVideoCaptureAllowedUrlsProto>()._has_bits_);
+};
+
+LoginVideoCaptureAllowedUrlsProto::LoginVideoCaptureAllowedUrlsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+}
+LoginVideoCaptureAllowedUrlsProto::LoginVideoCaptureAllowedUrlsProto(const LoginVideoCaptureAllowedUrlsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      urls_(from.urls_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+}
+
+void LoginVideoCaptureAllowedUrlsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_LoginVideoCaptureAllowedUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+LoginVideoCaptureAllowedUrlsProto::~LoginVideoCaptureAllowedUrlsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+  SharedDtor();
+}
+
+void LoginVideoCaptureAllowedUrlsProto::SharedDtor() {
+}
+
+void LoginVideoCaptureAllowedUrlsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LoginVideoCaptureAllowedUrlsProto& LoginVideoCaptureAllowedUrlsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LoginVideoCaptureAllowedUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LoginVideoCaptureAllowedUrlsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  urls_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LoginVideoCaptureAllowedUrlsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string urls = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_urls();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LoginVideoCaptureAllowedUrlsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string urls = 1;
+  for (int i = 0, n = this->_internal_urls_size(); i < n; i++) {
+    const auto& s = this->_internal_urls(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+  return target;
+}
+
+size_t LoginVideoCaptureAllowedUrlsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string urls = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(urls_.size());
+  for (int i = 0, n = urls_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      urls_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LoginVideoCaptureAllowedUrlsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LoginVideoCaptureAllowedUrlsProto*>(
+      &from));
+}
+
+void LoginVideoCaptureAllowedUrlsProto::MergeFrom(const LoginVideoCaptureAllowedUrlsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  urls_.MergeFrom(from.urls_);
+}
+
+void LoginVideoCaptureAllowedUrlsProto::CopyFrom(const LoginVideoCaptureAllowedUrlsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LoginVideoCaptureAllowedUrlsProto::IsInitialized() const {
+  return true;
+}
+
+void LoginVideoCaptureAllowedUrlsProto::InternalSwap(LoginVideoCaptureAllowedUrlsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  urls_.InternalSwap(&other->urls_);
+}
+
+std::string LoginVideoCaptureAllowedUrlsProto::GetTypeName() const {
+  return "enterprise_management.LoginVideoCaptureAllowedUrlsProto";
+}
+
+
+// ===================================================================
+
+void DeviceWiFiFastTransitionEnabledProto::InitAsDefaultInstance() {
+}
+class DeviceWiFiFastTransitionEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceWiFiFastTransitionEnabledProto>()._has_bits_);
+  static void set_has_device_wifi_fast_transition_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceWiFiFastTransitionEnabledProto::DeviceWiFiFastTransitionEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+}
+DeviceWiFiFastTransitionEnabledProto::DeviceWiFiFastTransitionEnabledProto(const DeviceWiFiFastTransitionEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_wifi_fast_transition_enabled_ = from.device_wifi_fast_transition_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+}
+
+void DeviceWiFiFastTransitionEnabledProto::SharedCtor() {
+  device_wifi_fast_transition_enabled_ = false;
+}
+
+DeviceWiFiFastTransitionEnabledProto::~DeviceWiFiFastTransitionEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+  SharedDtor();
+}
+
+void DeviceWiFiFastTransitionEnabledProto::SharedDtor() {
+}
+
+void DeviceWiFiFastTransitionEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceWiFiFastTransitionEnabledProto& DeviceWiFiFastTransitionEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceWiFiFastTransitionEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceWiFiFastTransitionEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_wifi_fast_transition_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceWiFiFastTransitionEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool device_wifi_fast_transition_enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_device_wifi_fast_transition_enabled(&has_bits);
+          device_wifi_fast_transition_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceWiFiFastTransitionEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool device_wifi_fast_transition_enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_device_wifi_fast_transition_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+  return target;
+}
+
+size_t DeviceWiFiFastTransitionEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool device_wifi_fast_transition_enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceWiFiFastTransitionEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceWiFiFastTransitionEnabledProto*>(
+      &from));
+}
+
+void DeviceWiFiFastTransitionEnabledProto::MergeFrom(const DeviceWiFiFastTransitionEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_wifi_fast_transition_enabled()) {
+    _internal_set_device_wifi_fast_transition_enabled(from._internal_device_wifi_fast_transition_enabled());
+  }
+}
+
+void DeviceWiFiFastTransitionEnabledProto::CopyFrom(const DeviceWiFiFastTransitionEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceWiFiFastTransitionEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceWiFiFastTransitionEnabledProto::InternalSwap(DeviceWiFiFastTransitionEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_wifi_fast_transition_enabled_, other->device_wifi_fast_transition_enabled_);
+}
+
+std::string DeviceWiFiFastTransitionEnabledProto::GetTypeName() const {
+  return "enterprise_management.DeviceWiFiFastTransitionEnabledProto";
+}
+
+
+// ===================================================================
+
+void NetworkThrottlingEnabledProto::InitAsDefaultInstance() {
+}
+class NetworkThrottlingEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<NetworkThrottlingEnabledProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_upload_rate_kbits(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_download_rate_kbits(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+NetworkThrottlingEnabledProto::NetworkThrottlingEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.NetworkThrottlingEnabledProto)
+}
+NetworkThrottlingEnabledProto::NetworkThrottlingEnabledProto(const NetworkThrottlingEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&enabled_, &from.enabled_,
+    static_cast<size_t>(reinterpret_cast<char*>(&download_rate_kbits_) -
+    reinterpret_cast<char*>(&enabled_)) + sizeof(download_rate_kbits_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.NetworkThrottlingEnabledProto)
+}
+
+void NetworkThrottlingEnabledProto::SharedCtor() {
+  ::memset(&enabled_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&download_rate_kbits_) -
+      reinterpret_cast<char*>(&enabled_)) + sizeof(download_rate_kbits_));
+}
+
+NetworkThrottlingEnabledProto::~NetworkThrottlingEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.NetworkThrottlingEnabledProto)
+  SharedDtor();
+}
+
+void NetworkThrottlingEnabledProto::SharedDtor() {
+}
+
+void NetworkThrottlingEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const NetworkThrottlingEnabledProto& NetworkThrottlingEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_NetworkThrottlingEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void NetworkThrottlingEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.NetworkThrottlingEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    ::memset(&enabled_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&download_rate_kbits_) -
+        reinterpret_cast<char*>(&enabled_)) + sizeof(download_rate_kbits_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* NetworkThrottlingEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 upload_rate_kbits = 2 [default = 0];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_upload_rate_kbits(&has_bits);
+          upload_rate_kbits_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 download_rate_kbits = 3 [default = 0];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_download_rate_kbits(&has_bits);
+          download_rate_kbits_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* NetworkThrottlingEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.NetworkThrottlingEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  // optional int32 upload_rate_kbits = 2 [default = 0];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_upload_rate_kbits(), target);
+  }
+
+  // optional int32 download_rate_kbits = 3 [default = 0];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_download_rate_kbits(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.NetworkThrottlingEnabledProto)
+  return target;
+}
+
+size_t NetworkThrottlingEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.NetworkThrottlingEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional bool enabled = 1 [default = false];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 1;
+    }
+
+    // optional int32 upload_rate_kbits = 2 [default = 0];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_upload_rate_kbits());
+    }
+
+    // optional int32 download_rate_kbits = 3 [default = 0];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_download_rate_kbits());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void NetworkThrottlingEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const NetworkThrottlingEnabledProto*>(
+      &from));
+}
+
+void NetworkThrottlingEnabledProto::MergeFrom(const NetworkThrottlingEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.NetworkThrottlingEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      enabled_ = from.enabled_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      upload_rate_kbits_ = from.upload_rate_kbits_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      download_rate_kbits_ = from.download_rate_kbits_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void NetworkThrottlingEnabledProto::CopyFrom(const NetworkThrottlingEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.NetworkThrottlingEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool NetworkThrottlingEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void NetworkThrottlingEnabledProto::InternalSwap(NetworkThrottlingEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+  swap(upload_rate_kbits_, other->upload_rate_kbits_);
+  swap(download_rate_kbits_, other->download_rate_kbits_);
+}
+
+std::string NetworkThrottlingEnabledProto::GetTypeName() const {
+  return "enterprise_management.NetworkThrottlingEnabledProto";
+}
+
+
+// ===================================================================
+
+void DeviceLoginScreenExtensionsProto::InitAsDefaultInstance() {
+}
+class DeviceLoginScreenExtensionsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceLoginScreenExtensionsProto>()._has_bits_);
+};
+
+DeviceLoginScreenExtensionsProto::DeviceLoginScreenExtensionsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceLoginScreenExtensionsProto)
+}
+DeviceLoginScreenExtensionsProto::DeviceLoginScreenExtensionsProto(const DeviceLoginScreenExtensionsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      device_login_screen_extensions_(from.device_login_screen_extensions_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceLoginScreenExtensionsProto)
+}
+
+void DeviceLoginScreenExtensionsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceLoginScreenExtensionsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+DeviceLoginScreenExtensionsProto::~DeviceLoginScreenExtensionsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceLoginScreenExtensionsProto)
+  SharedDtor();
+}
+
+void DeviceLoginScreenExtensionsProto::SharedDtor() {
+}
+
+void DeviceLoginScreenExtensionsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceLoginScreenExtensionsProto& DeviceLoginScreenExtensionsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceLoginScreenExtensionsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceLoginScreenExtensionsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceLoginScreenExtensionsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_login_screen_extensions_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceLoginScreenExtensionsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string device_login_screen_extensions = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_device_login_screen_extensions();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceLoginScreenExtensionsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceLoginScreenExtensionsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string device_login_screen_extensions = 1;
+  for (int i = 0, n = this->_internal_device_login_screen_extensions_size(); i < n; i++) {
+    const auto& s = this->_internal_device_login_screen_extensions(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceLoginScreenExtensionsProto)
+  return target;
+}
+
+size_t DeviceLoginScreenExtensionsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceLoginScreenExtensionsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string device_login_screen_extensions = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(device_login_screen_extensions_.size());
+  for (int i = 0, n = device_login_screen_extensions_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      device_login_screen_extensions_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceLoginScreenExtensionsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceLoginScreenExtensionsProto*>(
+      &from));
+}
+
+void DeviceLoginScreenExtensionsProto::MergeFrom(const DeviceLoginScreenExtensionsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceLoginScreenExtensionsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  device_login_screen_extensions_.MergeFrom(from.device_login_screen_extensions_);
+}
+
+void DeviceLoginScreenExtensionsProto::CopyFrom(const DeviceLoginScreenExtensionsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceLoginScreenExtensionsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceLoginScreenExtensionsProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceLoginScreenExtensionsProto::InternalSwap(DeviceLoginScreenExtensionsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_login_screen_extensions_.InternalSwap(&other->device_login_screen_extensions_);
+}
+
+std::string DeviceLoginScreenExtensionsProto::GetTypeName() const {
+  return "enterprise_management.DeviceLoginScreenExtensionsProto";
+}
+
+
+// ===================================================================
+
+void LoginScreenLocalesProto::InitAsDefaultInstance() {
+}
+class LoginScreenLocalesProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LoginScreenLocalesProto>()._has_bits_);
+};
+
+LoginScreenLocalesProto::LoginScreenLocalesProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LoginScreenLocalesProto)
+}
+LoginScreenLocalesProto::LoginScreenLocalesProto(const LoginScreenLocalesProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      login_screen_locales_(from.login_screen_locales_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LoginScreenLocalesProto)
+}
+
+void LoginScreenLocalesProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_LoginScreenLocalesProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+LoginScreenLocalesProto::~LoginScreenLocalesProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LoginScreenLocalesProto)
+  SharedDtor();
+}
+
+void LoginScreenLocalesProto::SharedDtor() {
+}
+
+void LoginScreenLocalesProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LoginScreenLocalesProto& LoginScreenLocalesProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LoginScreenLocalesProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LoginScreenLocalesProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LoginScreenLocalesProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  login_screen_locales_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LoginScreenLocalesProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string login_screen_locales = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_login_screen_locales();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LoginScreenLocalesProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LoginScreenLocalesProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string login_screen_locales = 1;
+  for (int i = 0, n = this->_internal_login_screen_locales_size(); i < n; i++) {
+    const auto& s = this->_internal_login_screen_locales(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LoginScreenLocalesProto)
+  return target;
+}
+
+size_t LoginScreenLocalesProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LoginScreenLocalesProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string login_screen_locales = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(login_screen_locales_.size());
+  for (int i = 0, n = login_screen_locales_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      login_screen_locales_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LoginScreenLocalesProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LoginScreenLocalesProto*>(
+      &from));
+}
+
+void LoginScreenLocalesProto::MergeFrom(const LoginScreenLocalesProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LoginScreenLocalesProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  login_screen_locales_.MergeFrom(from.login_screen_locales_);
+}
+
+void LoginScreenLocalesProto::CopyFrom(const LoginScreenLocalesProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LoginScreenLocalesProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LoginScreenLocalesProto::IsInitialized() const {
+  return true;
+}
+
+void LoginScreenLocalesProto::InternalSwap(LoginScreenLocalesProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  login_screen_locales_.InternalSwap(&other->login_screen_locales_);
+}
+
+std::string LoginScreenLocalesProto::GetTypeName() const {
+  return "enterprise_management.LoginScreenLocalesProto";
+}
+
+
+// ===================================================================
+
+void LoginScreenInputMethodsProto::InitAsDefaultInstance() {
+}
+class LoginScreenInputMethodsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LoginScreenInputMethodsProto>()._has_bits_);
+};
+
+LoginScreenInputMethodsProto::LoginScreenInputMethodsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LoginScreenInputMethodsProto)
+}
+LoginScreenInputMethodsProto::LoginScreenInputMethodsProto(const LoginScreenInputMethodsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      login_screen_input_methods_(from.login_screen_input_methods_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LoginScreenInputMethodsProto)
+}
+
+void LoginScreenInputMethodsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_LoginScreenInputMethodsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+LoginScreenInputMethodsProto::~LoginScreenInputMethodsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LoginScreenInputMethodsProto)
+  SharedDtor();
+}
+
+void LoginScreenInputMethodsProto::SharedDtor() {
+}
+
+void LoginScreenInputMethodsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LoginScreenInputMethodsProto& LoginScreenInputMethodsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LoginScreenInputMethodsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LoginScreenInputMethodsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LoginScreenInputMethodsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  login_screen_input_methods_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LoginScreenInputMethodsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string login_screen_input_methods = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_login_screen_input_methods();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LoginScreenInputMethodsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LoginScreenInputMethodsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string login_screen_input_methods = 1;
+  for (int i = 0, n = this->_internal_login_screen_input_methods_size(); i < n; i++) {
+    const auto& s = this->_internal_login_screen_input_methods(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LoginScreenInputMethodsProto)
+  return target;
+}
+
+size_t LoginScreenInputMethodsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LoginScreenInputMethodsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string login_screen_input_methods = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(login_screen_input_methods_.size());
+  for (int i = 0, n = login_screen_input_methods_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      login_screen_input_methods_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LoginScreenInputMethodsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LoginScreenInputMethodsProto*>(
+      &from));
+}
+
+void LoginScreenInputMethodsProto::MergeFrom(const LoginScreenInputMethodsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LoginScreenInputMethodsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  login_screen_input_methods_.MergeFrom(from.login_screen_input_methods_);
+}
+
+void LoginScreenInputMethodsProto::CopyFrom(const LoginScreenInputMethodsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LoginScreenInputMethodsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LoginScreenInputMethodsProto::IsInitialized() const {
+  return true;
+}
+
+void LoginScreenInputMethodsProto::InternalSwap(LoginScreenInputMethodsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  login_screen_input_methods_.InternalSwap(&other->login_screen_input_methods_);
+}
+
+std::string LoginScreenInputMethodsProto::GetTypeName() const {
+  return "enterprise_management.LoginScreenInputMethodsProto";
+}
+
+
+// ===================================================================
+
+void DeviceWallpaperImageProto::InitAsDefaultInstance() {
+}
+class DeviceWallpaperImageProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceWallpaperImageProto>()._has_bits_);
+  static void set_has_device_wallpaper_image(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceWallpaperImageProto::DeviceWallpaperImageProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceWallpaperImageProto)
+}
+DeviceWallpaperImageProto::DeviceWallpaperImageProto(const DeviceWallpaperImageProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_wallpaper_image_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_wallpaper_image()) {
+    device_wallpaper_image_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_wallpaper_image_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceWallpaperImageProto)
+}
+
+void DeviceWallpaperImageProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceWallpaperImageProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  device_wallpaper_image_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceWallpaperImageProto::~DeviceWallpaperImageProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceWallpaperImageProto)
+  SharedDtor();
+}
+
+void DeviceWallpaperImageProto::SharedDtor() {
+  device_wallpaper_image_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceWallpaperImageProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceWallpaperImageProto& DeviceWallpaperImageProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceWallpaperImageProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceWallpaperImageProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceWallpaperImageProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    device_wallpaper_image_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceWallpaperImageProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_wallpaper_image = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_wallpaper_image();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceWallpaperImageProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceWallpaperImageProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_wallpaper_image = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_wallpaper_image(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceWallpaperImageProto)
+  return target;
+}
+
+size_t DeviceWallpaperImageProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceWallpaperImageProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string device_wallpaper_image = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_wallpaper_image());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceWallpaperImageProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceWallpaperImageProto*>(
+      &from));
+}
+
+void DeviceWallpaperImageProto::MergeFrom(const DeviceWallpaperImageProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceWallpaperImageProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_wallpaper_image()) {
+    _has_bits_[0] |= 0x00000001u;
+    device_wallpaper_image_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_wallpaper_image_);
+  }
+}
+
+void DeviceWallpaperImageProto::CopyFrom(const DeviceWallpaperImageProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceWallpaperImageProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceWallpaperImageProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceWallpaperImageProto::InternalSwap(DeviceWallpaperImageProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_wallpaper_image_.Swap(&other->device_wallpaper_image_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceWallpaperImageProto::GetTypeName() const {
+  return "enterprise_management.DeviceWallpaperImageProto";
+}
+
+
+// ===================================================================
+
+void DeviceEcryptfsMigrationStrategyProto::InitAsDefaultInstance() {
+}
+class DeviceEcryptfsMigrationStrategyProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceEcryptfsMigrationStrategyProto>()._has_bits_);
+  static void set_has_migration_strategy(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceEcryptfsMigrationStrategyProto::DeviceEcryptfsMigrationStrategyProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+}
+DeviceEcryptfsMigrationStrategyProto::DeviceEcryptfsMigrationStrategyProto(const DeviceEcryptfsMigrationStrategyProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  migration_strategy_ = from.migration_strategy_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+}
+
+void DeviceEcryptfsMigrationStrategyProto::SharedCtor() {
+  migration_strategy_ = 0;
+}
+
+DeviceEcryptfsMigrationStrategyProto::~DeviceEcryptfsMigrationStrategyProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+  SharedDtor();
+}
+
+void DeviceEcryptfsMigrationStrategyProto::SharedDtor() {
+}
+
+void DeviceEcryptfsMigrationStrategyProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceEcryptfsMigrationStrategyProto& DeviceEcryptfsMigrationStrategyProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceEcryptfsMigrationStrategyProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceEcryptfsMigrationStrategyProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  migration_strategy_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceEcryptfsMigrationStrategyProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto.MigrationStrategy migration_strategy = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_IsValid(val))) {
+            _internal_set_migration_strategy(static_cast<::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceEcryptfsMigrationStrategyProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto.MigrationStrategy migration_strategy = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_migration_strategy(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+  return target;
+}
+
+size_t DeviceEcryptfsMigrationStrategyProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto.MigrationStrategy migration_strategy = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_migration_strategy());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceEcryptfsMigrationStrategyProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceEcryptfsMigrationStrategyProto*>(
+      &from));
+}
+
+void DeviceEcryptfsMigrationStrategyProto::MergeFrom(const DeviceEcryptfsMigrationStrategyProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_migration_strategy()) {
+    _internal_set_migration_strategy(from._internal_migration_strategy());
+  }
+}
+
+void DeviceEcryptfsMigrationStrategyProto::CopyFrom(const DeviceEcryptfsMigrationStrategyProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceEcryptfsMigrationStrategyProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceEcryptfsMigrationStrategyProto::InternalSwap(DeviceEcryptfsMigrationStrategyProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(migration_strategy_, other->migration_strategy_);
+}
+
+std::string DeviceEcryptfsMigrationStrategyProto::GetTypeName() const {
+  return "enterprise_management.DeviceEcryptfsMigrationStrategyProto";
+}
+
+
+// ===================================================================
+
+void DeviceSecondFactorAuthenticationProto::InitAsDefaultInstance() {
+}
+class DeviceSecondFactorAuthenticationProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceSecondFactorAuthenticationProto>()._has_bits_);
+  static void set_has_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceSecondFactorAuthenticationProto::DeviceSecondFactorAuthenticationProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceSecondFactorAuthenticationProto)
+}
+DeviceSecondFactorAuthenticationProto::DeviceSecondFactorAuthenticationProto(const DeviceSecondFactorAuthenticationProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  mode_ = from.mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceSecondFactorAuthenticationProto)
+}
+
+void DeviceSecondFactorAuthenticationProto::SharedCtor() {
+  mode_ = 0;
+}
+
+DeviceSecondFactorAuthenticationProto::~DeviceSecondFactorAuthenticationProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceSecondFactorAuthenticationProto)
+  SharedDtor();
+}
+
+void DeviceSecondFactorAuthenticationProto::SharedDtor() {
+}
+
+void DeviceSecondFactorAuthenticationProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceSecondFactorAuthenticationProto& DeviceSecondFactorAuthenticationProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceSecondFactorAuthenticationProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceSecondFactorAuthenticationProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceSecondFactorAuthenticationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  mode_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceSecondFactorAuthenticationProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceSecondFactorAuthenticationProto.U2fMode mode = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode_IsValid(val))) {
+            _internal_set_mode(static_cast<::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceSecondFactorAuthenticationProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceSecondFactorAuthenticationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceSecondFactorAuthenticationProto.U2fMode mode = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_mode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceSecondFactorAuthenticationProto)
+  return target;
+}
+
+size_t DeviceSecondFactorAuthenticationProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceSecondFactorAuthenticationProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceSecondFactorAuthenticationProto.U2fMode mode = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_mode());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceSecondFactorAuthenticationProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceSecondFactorAuthenticationProto*>(
+      &from));
+}
+
+void DeviceSecondFactorAuthenticationProto::MergeFrom(const DeviceSecondFactorAuthenticationProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceSecondFactorAuthenticationProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_mode()) {
+    _internal_set_mode(from._internal_mode());
+  }
+}
+
+void DeviceSecondFactorAuthenticationProto::CopyFrom(const DeviceSecondFactorAuthenticationProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceSecondFactorAuthenticationProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceSecondFactorAuthenticationProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceSecondFactorAuthenticationProto::InternalSwap(DeviceSecondFactorAuthenticationProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(mode_, other->mode_);
+}
+
+std::string DeviceSecondFactorAuthenticationProto::GetTypeName() const {
+  return "enterprise_management.DeviceSecondFactorAuthenticationProto";
+}
+
+
+// ===================================================================
+
+void CastReceiverNameProto::InitAsDefaultInstance() {
+}
+class CastReceiverNameProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CastReceiverNameProto>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+CastReceiverNameProto::CastReceiverNameProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CastReceiverNameProto)
+}
+CastReceiverNameProto::CastReceiverNameProto(const CastReceiverNameProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CastReceiverNameProto)
+}
+
+void CastReceiverNameProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CastReceiverNameProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+CastReceiverNameProto::~CastReceiverNameProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CastReceiverNameProto)
+  SharedDtor();
+}
+
+void CastReceiverNameProto::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CastReceiverNameProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CastReceiverNameProto& CastReceiverNameProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CastReceiverNameProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CastReceiverNameProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CastReceiverNameProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    name_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CastReceiverNameProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CastReceiverNameProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CastReceiverNameProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CastReceiverNameProto)
+  return target;
+}
+
+size_t CastReceiverNameProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CastReceiverNameProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string name = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_name());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CastReceiverNameProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CastReceiverNameProto*>(
+      &from));
+}
+
+void CastReceiverNameProto::MergeFrom(const CastReceiverNameProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CastReceiverNameProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_name()) {
+    _has_bits_[0] |= 0x00000001u;
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+}
+
+void CastReceiverNameProto::CopyFrom(const CastReceiverNameProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CastReceiverNameProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CastReceiverNameProto::IsInitialized() const {
+  return true;
+}
+
+void CastReceiverNameProto::InternalSwap(CastReceiverNameProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string CastReceiverNameProto::GetTypeName() const {
+  return "enterprise_management.CastReceiverNameProto";
+}
+
+
+// ===================================================================
+
+void WeeklyTimeProto::InitAsDefaultInstance() {
+}
+class WeeklyTimeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<WeeklyTimeProto>()._has_bits_);
+  static void set_has_day_of_week(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_time(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+WeeklyTimeProto::WeeklyTimeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.WeeklyTimeProto)
+}
+WeeklyTimeProto::WeeklyTimeProto(const WeeklyTimeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&day_of_week_, &from.day_of_week_,
+    static_cast<size_t>(reinterpret_cast<char*>(&time_) -
+    reinterpret_cast<char*>(&day_of_week_)) + sizeof(time_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.WeeklyTimeProto)
+}
+
+void WeeklyTimeProto::SharedCtor() {
+  ::memset(&day_of_week_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&time_) -
+      reinterpret_cast<char*>(&day_of_week_)) + sizeof(time_));
+}
+
+WeeklyTimeProto::~WeeklyTimeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.WeeklyTimeProto)
+  SharedDtor();
+}
+
+void WeeklyTimeProto::SharedDtor() {
+}
+
+void WeeklyTimeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const WeeklyTimeProto& WeeklyTimeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_WeeklyTimeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void WeeklyTimeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.WeeklyTimeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&day_of_week_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&time_) -
+        reinterpret_cast<char*>(&day_of_week_)) + sizeof(time_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* WeeklyTimeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.WeeklyTimeProto.DayOfWeek day_of_week = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::WeeklyTimeProto_DayOfWeek_IsValid(val))) {
+            _internal_set_day_of_week(static_cast<::enterprise_management::WeeklyTimeProto_DayOfWeek>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 time = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_time(&has_bits);
+          time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* WeeklyTimeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.WeeklyTimeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.WeeklyTimeProto.DayOfWeek day_of_week = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_day_of_week(), target);
+  }
+
+  // optional int32 time = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_time(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.WeeklyTimeProto)
+  return target;
+}
+
+size_t WeeklyTimeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.WeeklyTimeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.WeeklyTimeProto.DayOfWeek day_of_week = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_day_of_week());
+    }
+
+    // optional int32 time = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_time());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void WeeklyTimeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const WeeklyTimeProto*>(
+      &from));
+}
+
+void WeeklyTimeProto::MergeFrom(const WeeklyTimeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.WeeklyTimeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      day_of_week_ = from.day_of_week_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      time_ = from.time_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void WeeklyTimeProto::CopyFrom(const WeeklyTimeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.WeeklyTimeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool WeeklyTimeProto::IsInitialized() const {
+  return true;
+}
+
+void WeeklyTimeProto::InternalSwap(WeeklyTimeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(day_of_week_, other->day_of_week_);
+  swap(time_, other->time_);
+}
+
+std::string WeeklyTimeProto::GetTypeName() const {
+  return "enterprise_management.WeeklyTimeProto";
+}
+
+
+// ===================================================================
+
+void WeeklyTimeIntervalProto::InitAsDefaultInstance() {
+  ::enterprise_management::_WeeklyTimeIntervalProto_default_instance_._instance.get_mutable()->start_ = const_cast< ::enterprise_management::WeeklyTimeProto*>(
+      ::enterprise_management::WeeklyTimeProto::internal_default_instance());
+  ::enterprise_management::_WeeklyTimeIntervalProto_default_instance_._instance.get_mutable()->end_ = const_cast< ::enterprise_management::WeeklyTimeProto*>(
+      ::enterprise_management::WeeklyTimeProto::internal_default_instance());
+}
+class WeeklyTimeIntervalProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<WeeklyTimeIntervalProto>()._has_bits_);
+  static const ::enterprise_management::WeeklyTimeProto& start(const WeeklyTimeIntervalProto* msg);
+  static void set_has_start(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::WeeklyTimeProto& end(const WeeklyTimeIntervalProto* msg);
+  static void set_has_end(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::WeeklyTimeProto&
+WeeklyTimeIntervalProto::_Internal::start(const WeeklyTimeIntervalProto* msg) {
+  return *msg->start_;
+}
+const ::enterprise_management::WeeklyTimeProto&
+WeeklyTimeIntervalProto::_Internal::end(const WeeklyTimeIntervalProto* msg) {
+  return *msg->end_;
+}
+WeeklyTimeIntervalProto::WeeklyTimeIntervalProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.WeeklyTimeIntervalProto)
+}
+WeeklyTimeIntervalProto::WeeklyTimeIntervalProto(const WeeklyTimeIntervalProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_start()) {
+    start_ = new ::enterprise_management::WeeklyTimeProto(*from.start_);
+  } else {
+    start_ = nullptr;
+  }
+  if (from._internal_has_end()) {
+    end_ = new ::enterprise_management::WeeklyTimeProto(*from.end_);
+  } else {
+    end_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.WeeklyTimeIntervalProto)
+}
+
+void WeeklyTimeIntervalProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_WeeklyTimeIntervalProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  ::memset(&start_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&end_) -
+      reinterpret_cast<char*>(&start_)) + sizeof(end_));
+}
+
+WeeklyTimeIntervalProto::~WeeklyTimeIntervalProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.WeeklyTimeIntervalProto)
+  SharedDtor();
+}
+
+void WeeklyTimeIntervalProto::SharedDtor() {
+  if (this != internal_default_instance()) delete start_;
+  if (this != internal_default_instance()) delete end_;
+}
+
+void WeeklyTimeIntervalProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const WeeklyTimeIntervalProto& WeeklyTimeIntervalProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_WeeklyTimeIntervalProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void WeeklyTimeIntervalProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.WeeklyTimeIntervalProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(start_ != nullptr);
+      start_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(end_ != nullptr);
+      end_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* WeeklyTimeIntervalProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.WeeklyTimeProto start = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_start(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.WeeklyTimeProto end = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_end(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* WeeklyTimeIntervalProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.WeeklyTimeIntervalProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.WeeklyTimeProto start = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::start(this), target, stream);
+  }
+
+  // optional .enterprise_management.WeeklyTimeProto end = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::end(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.WeeklyTimeIntervalProto)
+  return target;
+}
+
+size_t WeeklyTimeIntervalProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.WeeklyTimeIntervalProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.WeeklyTimeProto start = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *start_);
+    }
+
+    // optional .enterprise_management.WeeklyTimeProto end = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *end_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void WeeklyTimeIntervalProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const WeeklyTimeIntervalProto*>(
+      &from));
+}
+
+void WeeklyTimeIntervalProto::MergeFrom(const WeeklyTimeIntervalProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.WeeklyTimeIntervalProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_start()->::enterprise_management::WeeklyTimeProto::MergeFrom(from._internal_start());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_end()->::enterprise_management::WeeklyTimeProto::MergeFrom(from._internal_end());
+    }
+  }
+}
+
+void WeeklyTimeIntervalProto::CopyFrom(const WeeklyTimeIntervalProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.WeeklyTimeIntervalProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool WeeklyTimeIntervalProto::IsInitialized() const {
+  return true;
+}
+
+void WeeklyTimeIntervalProto::InternalSwap(WeeklyTimeIntervalProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(start_, other->start_);
+  swap(end_, other->end_);
+}
+
+std::string WeeklyTimeIntervalProto::GetTypeName() const {
+  return "enterprise_management.WeeklyTimeIntervalProto";
+}
+
+
+// ===================================================================
+
+void DeviceOffHoursProto::InitAsDefaultInstance() {
+}
+class DeviceOffHoursProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceOffHoursProto>()._has_bits_);
+  static void set_has_timezone(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceOffHoursProto::DeviceOffHoursProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceOffHoursProto)
+}
+DeviceOffHoursProto::DeviceOffHoursProto(const DeviceOffHoursProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      intervals_(from.intervals_),
+      ignored_policy_proto_tags_(from.ignored_policy_proto_tags_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  timezone_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_timezone()) {
+    timezone_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.timezone_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceOffHoursProto)
+}
+
+void DeviceOffHoursProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceOffHoursProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  timezone_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceOffHoursProto::~DeviceOffHoursProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceOffHoursProto)
+  SharedDtor();
+}
+
+void DeviceOffHoursProto::SharedDtor() {
+  timezone_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceOffHoursProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceOffHoursProto& DeviceOffHoursProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceOffHoursProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceOffHoursProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceOffHoursProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  intervals_.Clear();
+  ignored_policy_proto_tags_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    timezone_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceOffHoursProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.WeeklyTimeIntervalProto intervals = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_intervals(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional string timezone = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_timezone();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated int32 ignored_policy_proto_tags = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            _internal_add_ignored_policy_proto_tags(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<24>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_ignored_policy_proto_tags(), ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceOffHoursProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceOffHoursProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.WeeklyTimeIntervalProto intervals = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_intervals_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_intervals(i), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional string timezone = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_timezone(), target);
+  }
+
+  // repeated int32 ignored_policy_proto_tags = 3;
+  for (int i = 0, n = this->_internal_ignored_policy_proto_tags_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_ignored_policy_proto_tags(i), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceOffHoursProto)
+  return target;
+}
+
+size_t DeviceOffHoursProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceOffHoursProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.WeeklyTimeIntervalProto intervals = 1;
+  total_size += 1UL * this->_internal_intervals_size();
+  for (const auto& msg : this->intervals_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated int32 ignored_policy_proto_tags = 3;
+  {
+    size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      Int32Size(this->ignored_policy_proto_tags_);
+    total_size += 1 *
+                  ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_ignored_policy_proto_tags_size());
+    total_size += data_size;
+  }
+
+  // optional string timezone = 2;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_timezone());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceOffHoursProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceOffHoursProto*>(
+      &from));
+}
+
+void DeviceOffHoursProto::MergeFrom(const DeviceOffHoursProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceOffHoursProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  intervals_.MergeFrom(from.intervals_);
+  ignored_policy_proto_tags_.MergeFrom(from.ignored_policy_proto_tags_);
+  if (from._internal_has_timezone()) {
+    _has_bits_[0] |= 0x00000001u;
+    timezone_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.timezone_);
+  }
+}
+
+void DeviceOffHoursProto::CopyFrom(const DeviceOffHoursProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceOffHoursProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceOffHoursProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceOffHoursProto::InternalSwap(DeviceOffHoursProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  intervals_.InternalSwap(&other->intervals_);
+  ignored_policy_proto_tags_.InternalSwap(&other->ignored_policy_proto_tags_);
+  timezone_.Swap(&other->timezone_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceOffHoursProto::GetTypeName() const {
+  return "enterprise_management.DeviceOffHoursProto";
+}
+
+
+// ===================================================================
+
+void DeviceNativePrintersProto::InitAsDefaultInstance() {
+}
+class DeviceNativePrintersProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceNativePrintersProto>()._has_bits_);
+  static void set_has_external_policy(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceNativePrintersProto::DeviceNativePrintersProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceNativePrintersProto)
+}
+DeviceNativePrintersProto::DeviceNativePrintersProto(const DeviceNativePrintersProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  external_policy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_external_policy()) {
+    external_policy_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.external_policy_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceNativePrintersProto)
+}
+
+void DeviceNativePrintersProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceNativePrintersProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  external_policy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceNativePrintersProto::~DeviceNativePrintersProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceNativePrintersProto)
+  SharedDtor();
+}
+
+void DeviceNativePrintersProto::SharedDtor() {
+  external_policy_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceNativePrintersProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceNativePrintersProto& DeviceNativePrintersProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceNativePrintersProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceNativePrintersProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceNativePrintersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    external_policy_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceNativePrintersProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string external_policy = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_external_policy();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceNativePrintersProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceNativePrintersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string external_policy = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_external_policy(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceNativePrintersProto)
+  return target;
+}
+
+size_t DeviceNativePrintersProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceNativePrintersProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string external_policy = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_external_policy());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceNativePrintersProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceNativePrintersProto*>(
+      &from));
+}
+
+void DeviceNativePrintersProto::MergeFrom(const DeviceNativePrintersProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceNativePrintersProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_external_policy()) {
+    _has_bits_[0] |= 0x00000001u;
+    external_policy_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.external_policy_);
+  }
+}
+
+void DeviceNativePrintersProto::CopyFrom(const DeviceNativePrintersProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceNativePrintersProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceNativePrintersProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceNativePrintersProto::InternalSwap(DeviceNativePrintersProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  external_policy_.Swap(&other->external_policy_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceNativePrintersProto::GetTypeName() const {
+  return "enterprise_management.DeviceNativePrintersProto";
+}
+
+
+// ===================================================================
+
+void DeviceNativePrintersAccessModeProto::InitAsDefaultInstance() {
+}
+class DeviceNativePrintersAccessModeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceNativePrintersAccessModeProto>()._has_bits_);
+  static void set_has_access_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceNativePrintersAccessModeProto::DeviceNativePrintersAccessModeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceNativePrintersAccessModeProto)
+}
+DeviceNativePrintersAccessModeProto::DeviceNativePrintersAccessModeProto(const DeviceNativePrintersAccessModeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  access_mode_ = from.access_mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceNativePrintersAccessModeProto)
+}
+
+void DeviceNativePrintersAccessModeProto::SharedCtor() {
+  access_mode_ = 0;
+}
+
+DeviceNativePrintersAccessModeProto::~DeviceNativePrintersAccessModeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceNativePrintersAccessModeProto)
+  SharedDtor();
+}
+
+void DeviceNativePrintersAccessModeProto::SharedDtor() {
+}
+
+void DeviceNativePrintersAccessModeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceNativePrintersAccessModeProto& DeviceNativePrintersAccessModeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceNativePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceNativePrintersAccessModeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceNativePrintersAccessModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  access_mode_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceNativePrintersAccessModeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceNativePrintersAccessModeProto.AccessMode access_mode = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode_IsValid(val))) {
+            _internal_set_access_mode(static_cast<::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceNativePrintersAccessModeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceNativePrintersAccessModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceNativePrintersAccessModeProto.AccessMode access_mode = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_access_mode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceNativePrintersAccessModeProto)
+  return target;
+}
+
+size_t DeviceNativePrintersAccessModeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceNativePrintersAccessModeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceNativePrintersAccessModeProto.AccessMode access_mode = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_access_mode());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceNativePrintersAccessModeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceNativePrintersAccessModeProto*>(
+      &from));
+}
+
+void DeviceNativePrintersAccessModeProto::MergeFrom(const DeviceNativePrintersAccessModeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceNativePrintersAccessModeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_access_mode()) {
+    _internal_set_access_mode(from._internal_access_mode());
+  }
+}
+
+void DeviceNativePrintersAccessModeProto::CopyFrom(const DeviceNativePrintersAccessModeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceNativePrintersAccessModeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceNativePrintersAccessModeProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceNativePrintersAccessModeProto::InternalSwap(DeviceNativePrintersAccessModeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(access_mode_, other->access_mode_);
+}
+
+std::string DeviceNativePrintersAccessModeProto::GetTypeName() const {
+  return "enterprise_management.DeviceNativePrintersAccessModeProto";
+}
+
+
+// ===================================================================
+
+void DeviceNativePrintersBlacklistProto::InitAsDefaultInstance() {
+}
+class DeviceNativePrintersBlacklistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceNativePrintersBlacklistProto>()._has_bits_);
+};
+
+DeviceNativePrintersBlacklistProto::DeviceNativePrintersBlacklistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceNativePrintersBlacklistProto)
+}
+DeviceNativePrintersBlacklistProto::DeviceNativePrintersBlacklistProto(const DeviceNativePrintersBlacklistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      blacklist_(from.blacklist_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceNativePrintersBlacklistProto)
+}
+
+void DeviceNativePrintersBlacklistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceNativePrintersBlacklistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+DeviceNativePrintersBlacklistProto::~DeviceNativePrintersBlacklistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceNativePrintersBlacklistProto)
+  SharedDtor();
+}
+
+void DeviceNativePrintersBlacklistProto::SharedDtor() {
+}
+
+void DeviceNativePrintersBlacklistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceNativePrintersBlacklistProto& DeviceNativePrintersBlacklistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceNativePrintersBlacklistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceNativePrintersBlacklistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceNativePrintersBlacklistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  blacklist_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceNativePrintersBlacklistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string blacklist = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_blacklist();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceNativePrintersBlacklistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceNativePrintersBlacklistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string blacklist = 1;
+  for (int i = 0, n = this->_internal_blacklist_size(); i < n; i++) {
+    const auto& s = this->_internal_blacklist(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceNativePrintersBlacklistProto)
+  return target;
+}
+
+size_t DeviceNativePrintersBlacklistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceNativePrintersBlacklistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string blacklist = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(blacklist_.size());
+  for (int i = 0, n = blacklist_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      blacklist_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceNativePrintersBlacklistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceNativePrintersBlacklistProto*>(
+      &from));
+}
+
+void DeviceNativePrintersBlacklistProto::MergeFrom(const DeviceNativePrintersBlacklistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceNativePrintersBlacklistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  blacklist_.MergeFrom(from.blacklist_);
+}
+
+void DeviceNativePrintersBlacklistProto::CopyFrom(const DeviceNativePrintersBlacklistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceNativePrintersBlacklistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceNativePrintersBlacklistProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceNativePrintersBlacklistProto::InternalSwap(DeviceNativePrintersBlacklistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  blacklist_.InternalSwap(&other->blacklist_);
+}
+
+std::string DeviceNativePrintersBlacklistProto::GetTypeName() const {
+  return "enterprise_management.DeviceNativePrintersBlacklistProto";
+}
+
+
+// ===================================================================
+
+void DeviceNativePrintersWhitelistProto::InitAsDefaultInstance() {
+}
+class DeviceNativePrintersWhitelistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceNativePrintersWhitelistProto>()._has_bits_);
+};
+
+DeviceNativePrintersWhitelistProto::DeviceNativePrintersWhitelistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceNativePrintersWhitelistProto)
+}
+DeviceNativePrintersWhitelistProto::DeviceNativePrintersWhitelistProto(const DeviceNativePrintersWhitelistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      whitelist_(from.whitelist_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceNativePrintersWhitelistProto)
+}
+
+void DeviceNativePrintersWhitelistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceNativePrintersWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+DeviceNativePrintersWhitelistProto::~DeviceNativePrintersWhitelistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceNativePrintersWhitelistProto)
+  SharedDtor();
+}
+
+void DeviceNativePrintersWhitelistProto::SharedDtor() {
+}
+
+void DeviceNativePrintersWhitelistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceNativePrintersWhitelistProto& DeviceNativePrintersWhitelistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceNativePrintersWhitelistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceNativePrintersWhitelistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceNativePrintersWhitelistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  whitelist_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceNativePrintersWhitelistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string whitelist = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_whitelist();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceNativePrintersWhitelistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceNativePrintersWhitelistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string whitelist = 1;
+  for (int i = 0, n = this->_internal_whitelist_size(); i < n; i++) {
+    const auto& s = this->_internal_whitelist(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceNativePrintersWhitelistProto)
+  return target;
+}
+
+size_t DeviceNativePrintersWhitelistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceNativePrintersWhitelistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string whitelist = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(whitelist_.size());
+  for (int i = 0, n = whitelist_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      whitelist_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceNativePrintersWhitelistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceNativePrintersWhitelistProto*>(
+      &from));
+}
+
+void DeviceNativePrintersWhitelistProto::MergeFrom(const DeviceNativePrintersWhitelistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceNativePrintersWhitelistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  whitelist_.MergeFrom(from.whitelist_);
+}
+
+void DeviceNativePrintersWhitelistProto::CopyFrom(const DeviceNativePrintersWhitelistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceNativePrintersWhitelistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceNativePrintersWhitelistProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceNativePrintersWhitelistProto::InternalSwap(DeviceNativePrintersWhitelistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  whitelist_.InternalSwap(&other->whitelist_);
+}
+
+std::string DeviceNativePrintersWhitelistProto::GetTypeName() const {
+  return "enterprise_management.DeviceNativePrintersWhitelistProto";
+}
+
+
+// ===================================================================
+
+void DevicePrintersProto::InitAsDefaultInstance() {
+}
+class DevicePrintersProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePrintersProto>()._has_bits_);
+  static void set_has_external_policy(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DevicePrintersProto::DevicePrintersProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePrintersProto)
+}
+DevicePrintersProto::DevicePrintersProto(const DevicePrintersProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  external_policy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_external_policy()) {
+    external_policy_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.external_policy_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePrintersProto)
+}
+
+void DevicePrintersProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DevicePrintersProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  external_policy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DevicePrintersProto::~DevicePrintersProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePrintersProto)
+  SharedDtor();
+}
+
+void DevicePrintersProto::SharedDtor() {
+  external_policy_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DevicePrintersProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePrintersProto& DevicePrintersProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePrintersProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePrintersProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePrintersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    external_policy_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePrintersProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string external_policy = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_external_policy();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePrintersProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePrintersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string external_policy = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_external_policy(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePrintersProto)
+  return target;
+}
+
+size_t DevicePrintersProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePrintersProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string external_policy = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_external_policy());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePrintersProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePrintersProto*>(
+      &from));
+}
+
+void DevicePrintersProto::MergeFrom(const DevicePrintersProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePrintersProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_external_policy()) {
+    _has_bits_[0] |= 0x00000001u;
+    external_policy_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.external_policy_);
+  }
+}
+
+void DevicePrintersProto::CopyFrom(const DevicePrintersProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePrintersProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePrintersProto::IsInitialized() const {
+  return true;
+}
+
+void DevicePrintersProto::InternalSwap(DevicePrintersProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  external_policy_.Swap(&other->external_policy_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DevicePrintersProto::GetTypeName() const {
+  return "enterprise_management.DevicePrintersProto";
+}
+
+
+// ===================================================================
+
+void DevicePrintersAccessModeProto::InitAsDefaultInstance() {
+}
+class DevicePrintersAccessModeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePrintersAccessModeProto>()._has_bits_);
+  static void set_has_access_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DevicePrintersAccessModeProto::DevicePrintersAccessModeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePrintersAccessModeProto)
+}
+DevicePrintersAccessModeProto::DevicePrintersAccessModeProto(const DevicePrintersAccessModeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  access_mode_ = from.access_mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePrintersAccessModeProto)
+}
+
+void DevicePrintersAccessModeProto::SharedCtor() {
+  access_mode_ = 0;
+}
+
+DevicePrintersAccessModeProto::~DevicePrintersAccessModeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePrintersAccessModeProto)
+  SharedDtor();
+}
+
+void DevicePrintersAccessModeProto::SharedDtor() {
+}
+
+void DevicePrintersAccessModeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePrintersAccessModeProto& DevicePrintersAccessModeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePrintersAccessModeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePrintersAccessModeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePrintersAccessModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  access_mode_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePrintersAccessModeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DevicePrintersAccessModeProto.AccessMode access_mode = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DevicePrintersAccessModeProto_AccessMode_IsValid(val))) {
+            _internal_set_access_mode(static_cast<::enterprise_management::DevicePrintersAccessModeProto_AccessMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePrintersAccessModeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePrintersAccessModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DevicePrintersAccessModeProto.AccessMode access_mode = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_access_mode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePrintersAccessModeProto)
+  return target;
+}
+
+size_t DevicePrintersAccessModeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePrintersAccessModeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DevicePrintersAccessModeProto.AccessMode access_mode = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_access_mode());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePrintersAccessModeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePrintersAccessModeProto*>(
+      &from));
+}
+
+void DevicePrintersAccessModeProto::MergeFrom(const DevicePrintersAccessModeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePrintersAccessModeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_access_mode()) {
+    _internal_set_access_mode(from._internal_access_mode());
+  }
+}
+
+void DevicePrintersAccessModeProto::CopyFrom(const DevicePrintersAccessModeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePrintersAccessModeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePrintersAccessModeProto::IsInitialized() const {
+  return true;
+}
+
+void DevicePrintersAccessModeProto::InternalSwap(DevicePrintersAccessModeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(access_mode_, other->access_mode_);
+}
+
+std::string DevicePrintersAccessModeProto::GetTypeName() const {
+  return "enterprise_management.DevicePrintersAccessModeProto";
+}
+
+
+// ===================================================================
+
+void DevicePrintersBlocklistProto::InitAsDefaultInstance() {
+}
+class DevicePrintersBlocklistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePrintersBlocklistProto>()._has_bits_);
+};
+
+DevicePrintersBlocklistProto::DevicePrintersBlocklistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePrintersBlocklistProto)
+}
+DevicePrintersBlocklistProto::DevicePrintersBlocklistProto(const DevicePrintersBlocklistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      blocklist_(from.blocklist_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePrintersBlocklistProto)
+}
+
+void DevicePrintersBlocklistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DevicePrintersBlocklistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+DevicePrintersBlocklistProto::~DevicePrintersBlocklistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePrintersBlocklistProto)
+  SharedDtor();
+}
+
+void DevicePrintersBlocklistProto::SharedDtor() {
+}
+
+void DevicePrintersBlocklistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePrintersBlocklistProto& DevicePrintersBlocklistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePrintersBlocklistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePrintersBlocklistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePrintersBlocklistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  blocklist_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePrintersBlocklistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string blocklist = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_blocklist();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePrintersBlocklistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePrintersBlocklistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string blocklist = 1;
+  for (int i = 0, n = this->_internal_blocklist_size(); i < n; i++) {
+    const auto& s = this->_internal_blocklist(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePrintersBlocklistProto)
+  return target;
+}
+
+size_t DevicePrintersBlocklistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePrintersBlocklistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string blocklist = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(blocklist_.size());
+  for (int i = 0, n = blocklist_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      blocklist_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePrintersBlocklistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePrintersBlocklistProto*>(
+      &from));
+}
+
+void DevicePrintersBlocklistProto::MergeFrom(const DevicePrintersBlocklistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePrintersBlocklistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  blocklist_.MergeFrom(from.blocklist_);
+}
+
+void DevicePrintersBlocklistProto::CopyFrom(const DevicePrintersBlocklistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePrintersBlocklistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePrintersBlocklistProto::IsInitialized() const {
+  return true;
+}
+
+void DevicePrintersBlocklistProto::InternalSwap(DevicePrintersBlocklistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  blocklist_.InternalSwap(&other->blocklist_);
+}
+
+std::string DevicePrintersBlocklistProto::GetTypeName() const {
+  return "enterprise_management.DevicePrintersBlocklistProto";
+}
+
+
+// ===================================================================
+
+void DevicePrintersAllowlistProto::InitAsDefaultInstance() {
+}
+class DevicePrintersAllowlistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePrintersAllowlistProto>()._has_bits_);
+};
+
+DevicePrintersAllowlistProto::DevicePrintersAllowlistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePrintersAllowlistProto)
+}
+DevicePrintersAllowlistProto::DevicePrintersAllowlistProto(const DevicePrintersAllowlistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      allowlist_(from.allowlist_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePrintersAllowlistProto)
+}
+
+void DevicePrintersAllowlistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DevicePrintersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+DevicePrintersAllowlistProto::~DevicePrintersAllowlistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePrintersAllowlistProto)
+  SharedDtor();
+}
+
+void DevicePrintersAllowlistProto::SharedDtor() {
+}
+
+void DevicePrintersAllowlistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePrintersAllowlistProto& DevicePrintersAllowlistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePrintersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePrintersAllowlistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePrintersAllowlistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allowlist_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePrintersAllowlistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string allowlist = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_allowlist();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePrintersAllowlistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePrintersAllowlistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string allowlist = 1;
+  for (int i = 0, n = this->_internal_allowlist_size(); i < n; i++) {
+    const auto& s = this->_internal_allowlist(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePrintersAllowlistProto)
+  return target;
+}
+
+size_t DevicePrintersAllowlistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePrintersAllowlistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string allowlist = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(allowlist_.size());
+  for (int i = 0, n = allowlist_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      allowlist_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePrintersAllowlistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePrintersAllowlistProto*>(
+      &from));
+}
+
+void DevicePrintersAllowlistProto::MergeFrom(const DevicePrintersAllowlistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePrintersAllowlistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  allowlist_.MergeFrom(from.allowlist_);
+}
+
+void DevicePrintersAllowlistProto::CopyFrom(const DevicePrintersAllowlistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePrintersAllowlistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePrintersAllowlistProto::IsInitialized() const {
+  return true;
+}
+
+void DevicePrintersAllowlistProto::InternalSwap(DevicePrintersAllowlistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  allowlist_.InternalSwap(&other->allowlist_);
+}
+
+std::string DevicePrintersAllowlistProto::GetTypeName() const {
+  return "enterprise_management.DevicePrintersAllowlistProto";
+}
+
+
+// ===================================================================
+
+void DeviceExternalPrintServersProto::InitAsDefaultInstance() {
+}
+class DeviceExternalPrintServersProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceExternalPrintServersProto>()._has_bits_);
+  static void set_has_external_policy(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceExternalPrintServersProto::DeviceExternalPrintServersProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceExternalPrintServersProto)
+}
+DeviceExternalPrintServersProto::DeviceExternalPrintServersProto(const DeviceExternalPrintServersProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  external_policy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_external_policy()) {
+    external_policy_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.external_policy_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceExternalPrintServersProto)
+}
+
+void DeviceExternalPrintServersProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceExternalPrintServersProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  external_policy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceExternalPrintServersProto::~DeviceExternalPrintServersProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceExternalPrintServersProto)
+  SharedDtor();
+}
+
+void DeviceExternalPrintServersProto::SharedDtor() {
+  external_policy_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceExternalPrintServersProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceExternalPrintServersProto& DeviceExternalPrintServersProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceExternalPrintServersProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceExternalPrintServersProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceExternalPrintServersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    external_policy_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceExternalPrintServersProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string external_policy = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_external_policy();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceExternalPrintServersProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceExternalPrintServersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string external_policy = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_external_policy(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceExternalPrintServersProto)
+  return target;
+}
+
+size_t DeviceExternalPrintServersProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceExternalPrintServersProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string external_policy = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_external_policy());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceExternalPrintServersProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceExternalPrintServersProto*>(
+      &from));
+}
+
+void DeviceExternalPrintServersProto::MergeFrom(const DeviceExternalPrintServersProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceExternalPrintServersProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_external_policy()) {
+    _has_bits_[0] |= 0x00000001u;
+    external_policy_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.external_policy_);
+  }
+}
+
+void DeviceExternalPrintServersProto::CopyFrom(const DeviceExternalPrintServersProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceExternalPrintServersProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceExternalPrintServersProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceExternalPrintServersProto::InternalSwap(DeviceExternalPrintServersProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  external_policy_.Swap(&other->external_policy_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceExternalPrintServersProto::GetTypeName() const {
+  return "enterprise_management.DeviceExternalPrintServersProto";
+}
+
+
+// ===================================================================
+
+void DeviceExternalPrintServersAllowlistProto::InitAsDefaultInstance() {
+}
+class DeviceExternalPrintServersAllowlistProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceExternalPrintServersAllowlistProto>()._has_bits_);
+};
+
+DeviceExternalPrintServersAllowlistProto::DeviceExternalPrintServersAllowlistProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+}
+DeviceExternalPrintServersAllowlistProto::DeviceExternalPrintServersAllowlistProto(const DeviceExternalPrintServersAllowlistProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      allowlist_(from.allowlist_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+}
+
+void DeviceExternalPrintServersAllowlistProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceExternalPrintServersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+DeviceExternalPrintServersAllowlistProto::~DeviceExternalPrintServersAllowlistProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+  SharedDtor();
+}
+
+void DeviceExternalPrintServersAllowlistProto::SharedDtor() {
+}
+
+void DeviceExternalPrintServersAllowlistProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceExternalPrintServersAllowlistProto& DeviceExternalPrintServersAllowlistProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceExternalPrintServersAllowlistProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceExternalPrintServersAllowlistProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allowlist_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceExternalPrintServersAllowlistProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string allowlist = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_allowlist();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceExternalPrintServersAllowlistProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string allowlist = 1;
+  for (int i = 0, n = this->_internal_allowlist_size(); i < n; i++) {
+    const auto& s = this->_internal_allowlist(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+  return target;
+}
+
+size_t DeviceExternalPrintServersAllowlistProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string allowlist = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(allowlist_.size());
+  for (int i = 0, n = allowlist_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      allowlist_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceExternalPrintServersAllowlistProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceExternalPrintServersAllowlistProto*>(
+      &from));
+}
+
+void DeviceExternalPrintServersAllowlistProto::MergeFrom(const DeviceExternalPrintServersAllowlistProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  allowlist_.MergeFrom(from.allowlist_);
+}
+
+void DeviceExternalPrintServersAllowlistProto::CopyFrom(const DeviceExternalPrintServersAllowlistProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceExternalPrintServersAllowlistProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceExternalPrintServersAllowlistProto::InternalSwap(DeviceExternalPrintServersAllowlistProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  allowlist_.InternalSwap(&other->allowlist_);
+}
+
+std::string DeviceExternalPrintServersAllowlistProto::GetTypeName() const {
+  return "enterprise_management.DeviceExternalPrintServersAllowlistProto";
+}
+
+
+// ===================================================================
+
+void TPMFirmwareUpdateSettingsProto::InitAsDefaultInstance() {
+}
+class TPMFirmwareUpdateSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<TPMFirmwareUpdateSettingsProto>()._has_bits_);
+  static void set_has_allow_user_initiated_powerwash(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_allow_user_initiated_preserve_device_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_auto_update_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+TPMFirmwareUpdateSettingsProto::TPMFirmwareUpdateSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.TPMFirmwareUpdateSettingsProto)
+}
+TPMFirmwareUpdateSettingsProto::TPMFirmwareUpdateSettingsProto(const TPMFirmwareUpdateSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&allow_user_initiated_powerwash_, &from.allow_user_initiated_powerwash_,
+    static_cast<size_t>(reinterpret_cast<char*>(&auto_update_mode_) -
+    reinterpret_cast<char*>(&allow_user_initiated_powerwash_)) + sizeof(auto_update_mode_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.TPMFirmwareUpdateSettingsProto)
+}
+
+void TPMFirmwareUpdateSettingsProto::SharedCtor() {
+  ::memset(&allow_user_initiated_powerwash_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&allow_user_initiated_preserve_device_state_) -
+      reinterpret_cast<char*>(&allow_user_initiated_powerwash_)) + sizeof(allow_user_initiated_preserve_device_state_));
+  auto_update_mode_ = 1;
+}
+
+TPMFirmwareUpdateSettingsProto::~TPMFirmwareUpdateSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.TPMFirmwareUpdateSettingsProto)
+  SharedDtor();
+}
+
+void TPMFirmwareUpdateSettingsProto::SharedDtor() {
+}
+
+void TPMFirmwareUpdateSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const TPMFirmwareUpdateSettingsProto& TPMFirmwareUpdateSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_TPMFirmwareUpdateSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void TPMFirmwareUpdateSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.TPMFirmwareUpdateSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  ::memset(&allow_user_initiated_powerwash_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&allow_user_initiated_preserve_device_state_) -
+      reinterpret_cast<char*>(&allow_user_initiated_powerwash_)) + sizeof(allow_user_initiated_preserve_device_state_));
+  auto_update_mode_ = 1;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* TPMFirmwareUpdateSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool allow_user_initiated_powerwash = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_allow_user_initiated_powerwash(&has_bits);
+          allow_user_initiated_powerwash_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool allow_user_initiated_preserve_device_state = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_allow_user_initiated_preserve_device_state(&has_bits);
+          allow_user_initiated_preserve_device_state_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.TPMFirmwareUpdateSettingsProto.AutoUpdateMode auto_update_mode = 3 [default = NEVER];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode_IsValid(val))) {
+            _internal_set_auto_update_mode(static_cast<::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* TPMFirmwareUpdateSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.TPMFirmwareUpdateSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool allow_user_initiated_powerwash = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_allow_user_initiated_powerwash(), target);
+  }
+
+  // optional bool allow_user_initiated_preserve_device_state = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_allow_user_initiated_preserve_device_state(), target);
+  }
+
+  // optional .enterprise_management.TPMFirmwareUpdateSettingsProto.AutoUpdateMode auto_update_mode = 3 [default = NEVER];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_auto_update_mode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.TPMFirmwareUpdateSettingsProto)
+  return target;
+}
+
+size_t TPMFirmwareUpdateSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.TPMFirmwareUpdateSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional bool allow_user_initiated_powerwash = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool allow_user_initiated_preserve_device_state = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .enterprise_management.TPMFirmwareUpdateSettingsProto.AutoUpdateMode auto_update_mode = 3 [default = NEVER];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_auto_update_mode());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void TPMFirmwareUpdateSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const TPMFirmwareUpdateSettingsProto*>(
+      &from));
+}
+
+void TPMFirmwareUpdateSettingsProto::MergeFrom(const TPMFirmwareUpdateSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.TPMFirmwareUpdateSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      allow_user_initiated_powerwash_ = from.allow_user_initiated_powerwash_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      allow_user_initiated_preserve_device_state_ = from.allow_user_initiated_preserve_device_state_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      auto_update_mode_ = from.auto_update_mode_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void TPMFirmwareUpdateSettingsProto::CopyFrom(const TPMFirmwareUpdateSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.TPMFirmwareUpdateSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool TPMFirmwareUpdateSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void TPMFirmwareUpdateSettingsProto::InternalSwap(TPMFirmwareUpdateSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(allow_user_initiated_powerwash_, other->allow_user_initiated_powerwash_);
+  swap(allow_user_initiated_preserve_device_state_, other->allow_user_initiated_preserve_device_state_);
+  swap(auto_update_mode_, other->auto_update_mode_);
+}
+
+std::string TPMFirmwareUpdateSettingsProto::GetTypeName() const {
+  return "enterprise_management.TPMFirmwareUpdateSettingsProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_MinimumRequiredVersionProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_MinimumRequiredVersionProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_MinimumRequiredVersionProto>()._has_bits_);
+  static void set_has_obsolete_chrome_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+OBSOLETE_MinimumRequiredVersionProto::OBSOLETE_MinimumRequiredVersionProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+}
+OBSOLETE_MinimumRequiredVersionProto::OBSOLETE_MinimumRequiredVersionProto(const OBSOLETE_MinimumRequiredVersionProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  obsolete_chrome_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_chrome_version()) {
+    obsolete_chrome_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_chrome_version_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+}
+
+void OBSOLETE_MinimumRequiredVersionProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OBSOLETE_MinimumRequiredVersionProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  obsolete_chrome_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+OBSOLETE_MinimumRequiredVersionProto::~OBSOLETE_MinimumRequiredVersionProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+  SharedDtor();
+}
+
+void OBSOLETE_MinimumRequiredVersionProto::SharedDtor() {
+  obsolete_chrome_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void OBSOLETE_MinimumRequiredVersionProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_MinimumRequiredVersionProto& OBSOLETE_MinimumRequiredVersionProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_MinimumRequiredVersionProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_MinimumRequiredVersionProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    obsolete_chrome_version_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_MinimumRequiredVersionProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string OBSOLETE_chrome_version = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_obsolete_chrome_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_MinimumRequiredVersionProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string OBSOLETE_chrome_version = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_obsolete_chrome_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+  return target;
+}
+
+size_t OBSOLETE_MinimumRequiredVersionProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string OBSOLETE_chrome_version = 1 [deprecated = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_obsolete_chrome_version());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_MinimumRequiredVersionProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_MinimumRequiredVersionProto*>(
+      &from));
+}
+
+void OBSOLETE_MinimumRequiredVersionProto::MergeFrom(const OBSOLETE_MinimumRequiredVersionProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_obsolete_chrome_version()) {
+    _has_bits_[0] |= 0x00000001u;
+    obsolete_chrome_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_chrome_version_);
+  }
+}
+
+void OBSOLETE_MinimumRequiredVersionProto::CopyFrom(const OBSOLETE_MinimumRequiredVersionProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_MinimumRequiredVersionProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_MinimumRequiredVersionProto::InternalSwap(OBSOLETE_MinimumRequiredVersionProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  obsolete_chrome_version_.Swap(&other->obsolete_chrome_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string OBSOLETE_MinimumRequiredVersionProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_MinimumRequiredVersionProto";
+}
+
+
+// ===================================================================
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::InitAsDefaultInstance() {
+}
+class DeviceLoginScreenAutoSelectCertificateForUrls::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceLoginScreenAutoSelectCertificateForUrls>()._has_bits_);
+};
+
+DeviceLoginScreenAutoSelectCertificateForUrls::DeviceLoginScreenAutoSelectCertificateForUrls()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+}
+DeviceLoginScreenAutoSelectCertificateForUrls::DeviceLoginScreenAutoSelectCertificateForUrls(const DeviceLoginScreenAutoSelectCertificateForUrls& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      login_screen_auto_select_certificate_rules_(from.login_screen_auto_select_certificate_rules_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+}
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceLoginScreenAutoSelectCertificateForUrls_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+DeviceLoginScreenAutoSelectCertificateForUrls::~DeviceLoginScreenAutoSelectCertificateForUrls() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+  SharedDtor();
+}
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::SharedDtor() {
+}
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceLoginScreenAutoSelectCertificateForUrls& DeviceLoginScreenAutoSelectCertificateForUrls::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceLoginScreenAutoSelectCertificateForUrls_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  login_screen_auto_select_certificate_rules_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceLoginScreenAutoSelectCertificateForUrls::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string login_screen_auto_select_certificate_rules = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_login_screen_auto_select_certificate_rules();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceLoginScreenAutoSelectCertificateForUrls::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string login_screen_auto_select_certificate_rules = 1;
+  for (int i = 0, n = this->_internal_login_screen_auto_select_certificate_rules_size(); i < n; i++) {
+    const auto& s = this->_internal_login_screen_auto_select_certificate_rules(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+  return target;
+}
+
+size_t DeviceLoginScreenAutoSelectCertificateForUrls::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string login_screen_auto_select_certificate_rules = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(login_screen_auto_select_certificate_rules_.size());
+  for (int i = 0, n = login_screen_auto_select_certificate_rules_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      login_screen_auto_select_certificate_rules_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceLoginScreenAutoSelectCertificateForUrls*>(
+      &from));
+}
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::MergeFrom(const DeviceLoginScreenAutoSelectCertificateForUrls& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  login_screen_auto_select_certificate_rules_.MergeFrom(from.login_screen_auto_select_certificate_rules_);
+}
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::CopyFrom(const DeviceLoginScreenAutoSelectCertificateForUrls& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceLoginScreenAutoSelectCertificateForUrls::IsInitialized() const {
+  return true;
+}
+
+void DeviceLoginScreenAutoSelectCertificateForUrls::InternalSwap(DeviceLoginScreenAutoSelectCertificateForUrls* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  login_screen_auto_select_certificate_rules_.InternalSwap(&other->login_screen_auto_select_certificate_rules_);
+}
+
+std::string DeviceLoginScreenAutoSelectCertificateForUrls::GetTypeName() const {
+  return "enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls";
+}
+
+
+// ===================================================================
+
+void UnaffiliatedArcAllowedProto::InitAsDefaultInstance() {
+}
+class UnaffiliatedArcAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UnaffiliatedArcAllowedProto>()._has_bits_);
+  static void set_has_unaffiliated_arc_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+UnaffiliatedArcAllowedProto::UnaffiliatedArcAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UnaffiliatedArcAllowedProto)
+}
+UnaffiliatedArcAllowedProto::UnaffiliatedArcAllowedProto(const UnaffiliatedArcAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  unaffiliated_arc_allowed_ = from.unaffiliated_arc_allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UnaffiliatedArcAllowedProto)
+}
+
+void UnaffiliatedArcAllowedProto::SharedCtor() {
+  unaffiliated_arc_allowed_ = false;
+}
+
+UnaffiliatedArcAllowedProto::~UnaffiliatedArcAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UnaffiliatedArcAllowedProto)
+  SharedDtor();
+}
+
+void UnaffiliatedArcAllowedProto::SharedDtor() {
+}
+
+void UnaffiliatedArcAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UnaffiliatedArcAllowedProto& UnaffiliatedArcAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UnaffiliatedArcAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UnaffiliatedArcAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UnaffiliatedArcAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  unaffiliated_arc_allowed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UnaffiliatedArcAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool unaffiliated_arc_allowed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_unaffiliated_arc_allowed(&has_bits);
+          unaffiliated_arc_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UnaffiliatedArcAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UnaffiliatedArcAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool unaffiliated_arc_allowed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_unaffiliated_arc_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UnaffiliatedArcAllowedProto)
+  return target;
+}
+
+size_t UnaffiliatedArcAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UnaffiliatedArcAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool unaffiliated_arc_allowed = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UnaffiliatedArcAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UnaffiliatedArcAllowedProto*>(
+      &from));
+}
+
+void UnaffiliatedArcAllowedProto::MergeFrom(const UnaffiliatedArcAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UnaffiliatedArcAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_unaffiliated_arc_allowed()) {
+    _internal_set_unaffiliated_arc_allowed(from._internal_unaffiliated_arc_allowed());
+  }
+}
+
+void UnaffiliatedArcAllowedProto::CopyFrom(const UnaffiliatedArcAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UnaffiliatedArcAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UnaffiliatedArcAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void UnaffiliatedArcAllowedProto::InternalSwap(UnaffiliatedArcAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(unaffiliated_arc_allowed_, other->unaffiliated_arc_allowed_);
+}
+
+std::string UnaffiliatedArcAllowedProto::GetTypeName() const {
+  return "enterprise_management.UnaffiliatedArcAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceKerberosEncryptionTypesProto::InitAsDefaultInstance() {
+}
+class DeviceKerberosEncryptionTypesProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceKerberosEncryptionTypesProto>()._has_bits_);
+  static void set_has_types(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceKerberosEncryptionTypesProto::DeviceKerberosEncryptionTypesProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceKerberosEncryptionTypesProto)
+}
+DeviceKerberosEncryptionTypesProto::DeviceKerberosEncryptionTypesProto(const DeviceKerberosEncryptionTypesProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  types_ = from.types_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceKerberosEncryptionTypesProto)
+}
+
+void DeviceKerberosEncryptionTypesProto::SharedCtor() {
+  types_ = 1;
+}
+
+DeviceKerberosEncryptionTypesProto::~DeviceKerberosEncryptionTypesProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceKerberosEncryptionTypesProto)
+  SharedDtor();
+}
+
+void DeviceKerberosEncryptionTypesProto::SharedDtor() {
+}
+
+void DeviceKerberosEncryptionTypesProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceKerberosEncryptionTypesProto& DeviceKerberosEncryptionTypesProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceKerberosEncryptionTypesProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceKerberosEncryptionTypesProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceKerberosEncryptionTypesProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  types_ = 1;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceKerberosEncryptionTypesProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceKerberosEncryptionTypesProto.Types types = 1 [default = ENC_TYPES_STRONG];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceKerberosEncryptionTypesProto_Types_IsValid(val))) {
+            _internal_set_types(static_cast<::enterprise_management::DeviceKerberosEncryptionTypesProto_Types>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceKerberosEncryptionTypesProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceKerberosEncryptionTypesProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceKerberosEncryptionTypesProto.Types types = 1 [default = ENC_TYPES_STRONG];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_types(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceKerberosEncryptionTypesProto)
+  return target;
+}
+
+size_t DeviceKerberosEncryptionTypesProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceKerberosEncryptionTypesProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceKerberosEncryptionTypesProto.Types types = 1 [default = ENC_TYPES_STRONG];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_types());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceKerberosEncryptionTypesProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceKerberosEncryptionTypesProto*>(
+      &from));
+}
+
+void DeviceKerberosEncryptionTypesProto::MergeFrom(const DeviceKerberosEncryptionTypesProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceKerberosEncryptionTypesProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_types()) {
+    _internal_set_types(from._internal_types());
+  }
+}
+
+void DeviceKerberosEncryptionTypesProto::CopyFrom(const DeviceKerberosEncryptionTypesProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceKerberosEncryptionTypesProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceKerberosEncryptionTypesProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceKerberosEncryptionTypesProto::InternalSwap(DeviceKerberosEncryptionTypesProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(types_, other->types_);
+}
+
+std::string DeviceKerberosEncryptionTypesProto::GetTypeName() const {
+  return "enterprise_management.DeviceKerberosEncryptionTypesProto";
+}
+
+
+// ===================================================================
+
+void DeviceUserPolicyLoopbackProcessingModeProto::InitAsDefaultInstance() {
+}
+class DeviceUserPolicyLoopbackProcessingModeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceUserPolicyLoopbackProcessingModeProto>()._has_bits_);
+  static void set_has_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceUserPolicyLoopbackProcessingModeProto::DeviceUserPolicyLoopbackProcessingModeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+}
+DeviceUserPolicyLoopbackProcessingModeProto::DeviceUserPolicyLoopbackProcessingModeProto(const DeviceUserPolicyLoopbackProcessingModeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  mode_ = from.mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+}
+
+void DeviceUserPolicyLoopbackProcessingModeProto::SharedCtor() {
+  mode_ = 0;
+}
+
+DeviceUserPolicyLoopbackProcessingModeProto::~DeviceUserPolicyLoopbackProcessingModeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+  SharedDtor();
+}
+
+void DeviceUserPolicyLoopbackProcessingModeProto::SharedDtor() {
+}
+
+void DeviceUserPolicyLoopbackProcessingModeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceUserPolicyLoopbackProcessingModeProto& DeviceUserPolicyLoopbackProcessingModeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceUserPolicyLoopbackProcessingModeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceUserPolicyLoopbackProcessingModeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  mode_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceUserPolicyLoopbackProcessingModeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto.Mode mode = 1 [default = USER_POLICY_MODE_DEFAULT];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode_IsValid(val))) {
+            _internal_set_mode(static_cast<::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceUserPolicyLoopbackProcessingModeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto.Mode mode = 1 [default = USER_POLICY_MODE_DEFAULT];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_mode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+  return target;
+}
+
+size_t DeviceUserPolicyLoopbackProcessingModeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto.Mode mode = 1 [default = USER_POLICY_MODE_DEFAULT];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_mode());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceUserPolicyLoopbackProcessingModeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceUserPolicyLoopbackProcessingModeProto*>(
+      &from));
+}
+
+void DeviceUserPolicyLoopbackProcessingModeProto::MergeFrom(const DeviceUserPolicyLoopbackProcessingModeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_mode()) {
+    _internal_set_mode(from._internal_mode());
+  }
+}
+
+void DeviceUserPolicyLoopbackProcessingModeProto::CopyFrom(const DeviceUserPolicyLoopbackProcessingModeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceUserPolicyLoopbackProcessingModeProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceUserPolicyLoopbackProcessingModeProto::InternalSwap(DeviceUserPolicyLoopbackProcessingModeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(mode_, other->mode_);
+}
+
+std::string DeviceUserPolicyLoopbackProcessingModeProto::GetTypeName() const {
+  return "enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_DeviceLoginScreenIsolateOriginsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_DeviceLoginScreenIsolateOriginsProto>()._has_bits_);
+  static void set_has_obsolete_isolate_origins(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+OBSOLETE_DeviceLoginScreenIsolateOriginsProto::OBSOLETE_DeviceLoginScreenIsolateOriginsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+}
+OBSOLETE_DeviceLoginScreenIsolateOriginsProto::OBSOLETE_DeviceLoginScreenIsolateOriginsProto(const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  obsolete_isolate_origins_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obsolete_isolate_origins()) {
+    obsolete_isolate_origins_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_isolate_origins_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+}
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  obsolete_isolate_origins_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+OBSOLETE_DeviceLoginScreenIsolateOriginsProto::~OBSOLETE_DeviceLoginScreenIsolateOriginsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+  SharedDtor();
+}
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::SharedDtor() {
+  obsolete_isolate_origins_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& OBSOLETE_DeviceLoginScreenIsolateOriginsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    obsolete_isolate_origins_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_DeviceLoginScreenIsolateOriginsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string OBSOLETE_isolate_origins = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_obsolete_isolate_origins();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_DeviceLoginScreenIsolateOriginsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string OBSOLETE_isolate_origins = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_obsolete_isolate_origins(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+  return target;
+}
+
+size_t OBSOLETE_DeviceLoginScreenIsolateOriginsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string OBSOLETE_isolate_origins = 1 [deprecated = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_obsolete_isolate_origins());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_DeviceLoginScreenIsolateOriginsProto*>(
+      &from));
+}
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::MergeFrom(const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_obsolete_isolate_origins()) {
+    _has_bits_[0] |= 0x00000001u;
+    obsolete_isolate_origins_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obsolete_isolate_origins_);
+  }
+}
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::CopyFrom(const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_DeviceLoginScreenIsolateOriginsProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::InternalSwap(OBSOLETE_DeviceLoginScreenIsolateOriginsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  obsolete_isolate_origins_.Swap(&other->obsolete_isolate_origins_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string OBSOLETE_DeviceLoginScreenIsolateOriginsProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto";
+}
+
+
+// ===================================================================
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::InitAsDefaultInstance() {
+}
+class OBSOLETE_DeviceLoginScreenSitePerProcessProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OBSOLETE_DeviceLoginScreenSitePerProcessProto>()._has_bits_);
+  static void set_has_obsolete_site_per_process(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+OBSOLETE_DeviceLoginScreenSitePerProcessProto::OBSOLETE_DeviceLoginScreenSitePerProcessProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+}
+OBSOLETE_DeviceLoginScreenSitePerProcessProto::OBSOLETE_DeviceLoginScreenSitePerProcessProto(const OBSOLETE_DeviceLoginScreenSitePerProcessProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  obsolete_site_per_process_ = from.obsolete_site_per_process_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+}
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::SharedCtor() {
+  obsolete_site_per_process_ = false;
+}
+
+OBSOLETE_DeviceLoginScreenSitePerProcessProto::~OBSOLETE_DeviceLoginScreenSitePerProcessProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+  SharedDtor();
+}
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::SharedDtor() {
+}
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OBSOLETE_DeviceLoginScreenSitePerProcessProto& OBSOLETE_DeviceLoginScreenSitePerProcessProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OBSOLETE_DeviceLoginScreenSitePerProcessProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  obsolete_site_per_process_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OBSOLETE_DeviceLoginScreenSitePerProcessProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool OBSOLETE_site_per_process = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_obsolete_site_per_process(&has_bits);
+          obsolete_site_per_process_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OBSOLETE_DeviceLoginScreenSitePerProcessProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool OBSOLETE_site_per_process = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_obsolete_site_per_process(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+  return target;
+}
+
+size_t OBSOLETE_DeviceLoginScreenSitePerProcessProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool OBSOLETE_site_per_process = 1 [deprecated = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OBSOLETE_DeviceLoginScreenSitePerProcessProto*>(
+      &from));
+}
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::MergeFrom(const OBSOLETE_DeviceLoginScreenSitePerProcessProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_obsolete_site_per_process()) {
+    _internal_set_obsolete_site_per_process(from._internal_obsolete_site_per_process());
+  }
+}
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::CopyFrom(const OBSOLETE_DeviceLoginScreenSitePerProcessProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OBSOLETE_DeviceLoginScreenSitePerProcessProto::IsInitialized() const {
+  return true;
+}
+
+void OBSOLETE_DeviceLoginScreenSitePerProcessProto::InternalSwap(OBSOLETE_DeviceLoginScreenSitePerProcessProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(obsolete_site_per_process_, other->obsolete_site_per_process_);
+}
+
+std::string OBSOLETE_DeviceLoginScreenSitePerProcessProto::GetTypeName() const {
+  return "enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto";
+}
+
+
+// ===================================================================
+
+void VirtualMachinesAllowedProto::InitAsDefaultInstance() {
+}
+class VirtualMachinesAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<VirtualMachinesAllowedProto>()._has_bits_);
+  static void set_has_virtual_machines_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+VirtualMachinesAllowedProto::VirtualMachinesAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.VirtualMachinesAllowedProto)
+}
+VirtualMachinesAllowedProto::VirtualMachinesAllowedProto(const VirtualMachinesAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  virtual_machines_allowed_ = from.virtual_machines_allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.VirtualMachinesAllowedProto)
+}
+
+void VirtualMachinesAllowedProto::SharedCtor() {
+  virtual_machines_allowed_ = false;
+}
+
+VirtualMachinesAllowedProto::~VirtualMachinesAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.VirtualMachinesAllowedProto)
+  SharedDtor();
+}
+
+void VirtualMachinesAllowedProto::SharedDtor() {
+}
+
+void VirtualMachinesAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const VirtualMachinesAllowedProto& VirtualMachinesAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_VirtualMachinesAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void VirtualMachinesAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.VirtualMachinesAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  virtual_machines_allowed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* VirtualMachinesAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool virtual_machines_allowed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_virtual_machines_allowed(&has_bits);
+          virtual_machines_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* VirtualMachinesAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.VirtualMachinesAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool virtual_machines_allowed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_virtual_machines_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.VirtualMachinesAllowedProto)
+  return target;
+}
+
+size_t VirtualMachinesAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.VirtualMachinesAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool virtual_machines_allowed = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void VirtualMachinesAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const VirtualMachinesAllowedProto*>(
+      &from));
+}
+
+void VirtualMachinesAllowedProto::MergeFrom(const VirtualMachinesAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.VirtualMachinesAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_virtual_machines_allowed()) {
+    _internal_set_virtual_machines_allowed(from._internal_virtual_machines_allowed());
+  }
+}
+
+void VirtualMachinesAllowedProto::CopyFrom(const VirtualMachinesAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.VirtualMachinesAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool VirtualMachinesAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void VirtualMachinesAllowedProto::InternalSwap(VirtualMachinesAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(virtual_machines_allowed_, other->virtual_machines_allowed_);
+}
+
+std::string VirtualMachinesAllowedProto::GetTypeName() const {
+  return "enterprise_management.VirtualMachinesAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceMachinePasswordChangeRateProto::InitAsDefaultInstance() {
+}
+class DeviceMachinePasswordChangeRateProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceMachinePasswordChangeRateProto>()._has_bits_);
+  static void set_has_rate_days(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceMachinePasswordChangeRateProto::DeviceMachinePasswordChangeRateProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceMachinePasswordChangeRateProto)
+}
+DeviceMachinePasswordChangeRateProto::DeviceMachinePasswordChangeRateProto(const DeviceMachinePasswordChangeRateProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  rate_days_ = from.rate_days_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceMachinePasswordChangeRateProto)
+}
+
+void DeviceMachinePasswordChangeRateProto::SharedCtor() {
+  rate_days_ = 0;
+}
+
+DeviceMachinePasswordChangeRateProto::~DeviceMachinePasswordChangeRateProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceMachinePasswordChangeRateProto)
+  SharedDtor();
+}
+
+void DeviceMachinePasswordChangeRateProto::SharedDtor() {
+}
+
+void DeviceMachinePasswordChangeRateProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceMachinePasswordChangeRateProto& DeviceMachinePasswordChangeRateProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceMachinePasswordChangeRateProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceMachinePasswordChangeRateProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceMachinePasswordChangeRateProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  rate_days_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceMachinePasswordChangeRateProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 rate_days = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_rate_days(&has_bits);
+          rate_days_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceMachinePasswordChangeRateProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceMachinePasswordChangeRateProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 rate_days = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_rate_days(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceMachinePasswordChangeRateProto)
+  return target;
+}
+
+size_t DeviceMachinePasswordChangeRateProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceMachinePasswordChangeRateProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional int32 rate_days = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_rate_days());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceMachinePasswordChangeRateProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceMachinePasswordChangeRateProto*>(
+      &from));
+}
+
+void DeviceMachinePasswordChangeRateProto::MergeFrom(const DeviceMachinePasswordChangeRateProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceMachinePasswordChangeRateProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_rate_days()) {
+    _internal_set_rate_days(from._internal_rate_days());
+  }
+}
+
+void DeviceMachinePasswordChangeRateProto::CopyFrom(const DeviceMachinePasswordChangeRateProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceMachinePasswordChangeRateProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceMachinePasswordChangeRateProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceMachinePasswordChangeRateProto::InternalSwap(DeviceMachinePasswordChangeRateProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(rate_days_, other->rate_days_);
+}
+
+std::string DeviceMachinePasswordChangeRateProto::GetTypeName() const {
+  return "enterprise_management.DeviceMachinePasswordChangeRateProto";
+}
+
+
+// ===================================================================
+
+void DeviceGpoCacheLifetimeProto::InitAsDefaultInstance() {
+}
+class DeviceGpoCacheLifetimeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceGpoCacheLifetimeProto>()._has_bits_);
+  static void set_has_lifetime_hours(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceGpoCacheLifetimeProto::DeviceGpoCacheLifetimeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceGpoCacheLifetimeProto)
+}
+DeviceGpoCacheLifetimeProto::DeviceGpoCacheLifetimeProto(const DeviceGpoCacheLifetimeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  lifetime_hours_ = from.lifetime_hours_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceGpoCacheLifetimeProto)
+}
+
+void DeviceGpoCacheLifetimeProto::SharedCtor() {
+  lifetime_hours_ = 0;
+}
+
+DeviceGpoCacheLifetimeProto::~DeviceGpoCacheLifetimeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceGpoCacheLifetimeProto)
+  SharedDtor();
+}
+
+void DeviceGpoCacheLifetimeProto::SharedDtor() {
+}
+
+void DeviceGpoCacheLifetimeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceGpoCacheLifetimeProto& DeviceGpoCacheLifetimeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceGpoCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceGpoCacheLifetimeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceGpoCacheLifetimeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  lifetime_hours_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceGpoCacheLifetimeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 lifetime_hours = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_lifetime_hours(&has_bits);
+          lifetime_hours_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceGpoCacheLifetimeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceGpoCacheLifetimeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 lifetime_hours = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_lifetime_hours(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceGpoCacheLifetimeProto)
+  return target;
+}
+
+size_t DeviceGpoCacheLifetimeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceGpoCacheLifetimeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional int32 lifetime_hours = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_lifetime_hours());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceGpoCacheLifetimeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceGpoCacheLifetimeProto*>(
+      &from));
+}
+
+void DeviceGpoCacheLifetimeProto::MergeFrom(const DeviceGpoCacheLifetimeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceGpoCacheLifetimeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_lifetime_hours()) {
+    _internal_set_lifetime_hours(from._internal_lifetime_hours());
+  }
+}
+
+void DeviceGpoCacheLifetimeProto::CopyFrom(const DeviceGpoCacheLifetimeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceGpoCacheLifetimeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceGpoCacheLifetimeProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceGpoCacheLifetimeProto::InternalSwap(DeviceGpoCacheLifetimeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(lifetime_hours_, other->lifetime_hours_);
+}
+
+std::string DeviceGpoCacheLifetimeProto::GetTypeName() const {
+  return "enterprise_management.DeviceGpoCacheLifetimeProto";
+}
+
+
+// ===================================================================
+
+void DeviceAuthDataCacheLifetimeProto::InitAsDefaultInstance() {
+}
+class DeviceAuthDataCacheLifetimeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAuthDataCacheLifetimeProto>()._has_bits_);
+  static void set_has_lifetime_hours(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceAuthDataCacheLifetimeProto::DeviceAuthDataCacheLifetimeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+}
+DeviceAuthDataCacheLifetimeProto::DeviceAuthDataCacheLifetimeProto(const DeviceAuthDataCacheLifetimeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  lifetime_hours_ = from.lifetime_hours_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+}
+
+void DeviceAuthDataCacheLifetimeProto::SharedCtor() {
+  lifetime_hours_ = 0;
+}
+
+DeviceAuthDataCacheLifetimeProto::~DeviceAuthDataCacheLifetimeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+  SharedDtor();
+}
+
+void DeviceAuthDataCacheLifetimeProto::SharedDtor() {
+}
+
+void DeviceAuthDataCacheLifetimeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAuthDataCacheLifetimeProto& DeviceAuthDataCacheLifetimeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAuthDataCacheLifetimeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAuthDataCacheLifetimeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  lifetime_hours_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAuthDataCacheLifetimeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 lifetime_hours = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_lifetime_hours(&has_bits);
+          lifetime_hours_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAuthDataCacheLifetimeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 lifetime_hours = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_lifetime_hours(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+  return target;
+}
+
+size_t DeviceAuthDataCacheLifetimeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional int32 lifetime_hours = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_lifetime_hours());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAuthDataCacheLifetimeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAuthDataCacheLifetimeProto*>(
+      &from));
+}
+
+void DeviceAuthDataCacheLifetimeProto::MergeFrom(const DeviceAuthDataCacheLifetimeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_lifetime_hours()) {
+    _internal_set_lifetime_hours(from._internal_lifetime_hours());
+  }
+}
+
+void DeviceAuthDataCacheLifetimeProto::CopyFrom(const DeviceAuthDataCacheLifetimeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAuthDataCacheLifetimeProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceAuthDataCacheLifetimeProto::InternalSwap(DeviceAuthDataCacheLifetimeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(lifetime_hours_, other->lifetime_hours_);
+}
+
+std::string DeviceAuthDataCacheLifetimeProto::GetTypeName() const {
+  return "enterprise_management.DeviceAuthDataCacheLifetimeProto";
+}
+
+
+// ===================================================================
+
+void SamlLoginAuthenticationTypeProto::InitAsDefaultInstance() {
+}
+class SamlLoginAuthenticationTypeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SamlLoginAuthenticationTypeProto>()._has_bits_);
+  static void set_has_saml_login_authentication_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SamlLoginAuthenticationTypeProto::SamlLoginAuthenticationTypeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SamlLoginAuthenticationTypeProto)
+}
+SamlLoginAuthenticationTypeProto::SamlLoginAuthenticationTypeProto(const SamlLoginAuthenticationTypeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  saml_login_authentication_type_ = from.saml_login_authentication_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SamlLoginAuthenticationTypeProto)
+}
+
+void SamlLoginAuthenticationTypeProto::SharedCtor() {
+  saml_login_authentication_type_ = 0;
+}
+
+SamlLoginAuthenticationTypeProto::~SamlLoginAuthenticationTypeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SamlLoginAuthenticationTypeProto)
+  SharedDtor();
+}
+
+void SamlLoginAuthenticationTypeProto::SharedDtor() {
+}
+
+void SamlLoginAuthenticationTypeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SamlLoginAuthenticationTypeProto& SamlLoginAuthenticationTypeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SamlLoginAuthenticationTypeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SamlLoginAuthenticationTypeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SamlLoginAuthenticationTypeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  saml_login_authentication_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SamlLoginAuthenticationTypeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.SamlLoginAuthenticationTypeProto.Type saml_login_authentication_type = 1 [default = TYPE_DEFAULT];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::SamlLoginAuthenticationTypeProto_Type_IsValid(val))) {
+            _internal_set_saml_login_authentication_type(static_cast<::enterprise_management::SamlLoginAuthenticationTypeProto_Type>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SamlLoginAuthenticationTypeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SamlLoginAuthenticationTypeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.SamlLoginAuthenticationTypeProto.Type saml_login_authentication_type = 1 [default = TYPE_DEFAULT];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_saml_login_authentication_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SamlLoginAuthenticationTypeProto)
+  return target;
+}
+
+size_t SamlLoginAuthenticationTypeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SamlLoginAuthenticationTypeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.SamlLoginAuthenticationTypeProto.Type saml_login_authentication_type = 1 [default = TYPE_DEFAULT];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_saml_login_authentication_type());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SamlLoginAuthenticationTypeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SamlLoginAuthenticationTypeProto*>(
+      &from));
+}
+
+void SamlLoginAuthenticationTypeProto::MergeFrom(const SamlLoginAuthenticationTypeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SamlLoginAuthenticationTypeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_saml_login_authentication_type()) {
+    _internal_set_saml_login_authentication_type(from._internal_saml_login_authentication_type());
+  }
+}
+
+void SamlLoginAuthenticationTypeProto::CopyFrom(const SamlLoginAuthenticationTypeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SamlLoginAuthenticationTypeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SamlLoginAuthenticationTypeProto::IsInitialized() const {
+  return true;
+}
+
+void SamlLoginAuthenticationTypeProto::InternalSwap(SamlLoginAuthenticationTypeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(saml_login_authentication_type_, other->saml_login_authentication_type_);
+}
+
+std::string SamlLoginAuthenticationTypeProto::GetTypeName() const {
+  return "enterprise_management.SamlLoginAuthenticationTypeProto";
+}
+
+
+// ===================================================================
+
+void DeviceUnaffiliatedCrostiniAllowedProto::InitAsDefaultInstance() {
+}
+class DeviceUnaffiliatedCrostiniAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceUnaffiliatedCrostiniAllowedProto>()._has_bits_);
+  static void set_has_device_unaffiliated_crostini_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceUnaffiliatedCrostiniAllowedProto::DeviceUnaffiliatedCrostiniAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+}
+DeviceUnaffiliatedCrostiniAllowedProto::DeviceUnaffiliatedCrostiniAllowedProto(const DeviceUnaffiliatedCrostiniAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_unaffiliated_crostini_allowed_ = from.device_unaffiliated_crostini_allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+}
+
+void DeviceUnaffiliatedCrostiniAllowedProto::SharedCtor() {
+  device_unaffiliated_crostini_allowed_ = false;
+}
+
+DeviceUnaffiliatedCrostiniAllowedProto::~DeviceUnaffiliatedCrostiniAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+  SharedDtor();
+}
+
+void DeviceUnaffiliatedCrostiniAllowedProto::SharedDtor() {
+}
+
+void DeviceUnaffiliatedCrostiniAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceUnaffiliatedCrostiniAllowedProto& DeviceUnaffiliatedCrostiniAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceUnaffiliatedCrostiniAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceUnaffiliatedCrostiniAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_unaffiliated_crostini_allowed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceUnaffiliatedCrostiniAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool device_unaffiliated_crostini_allowed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_device_unaffiliated_crostini_allowed(&has_bits);
+          device_unaffiliated_crostini_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceUnaffiliatedCrostiniAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool device_unaffiliated_crostini_allowed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_device_unaffiliated_crostini_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+  return target;
+}
+
+size_t DeviceUnaffiliatedCrostiniAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool device_unaffiliated_crostini_allowed = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceUnaffiliatedCrostiniAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceUnaffiliatedCrostiniAllowedProto*>(
+      &from));
+}
+
+void DeviceUnaffiliatedCrostiniAllowedProto::MergeFrom(const DeviceUnaffiliatedCrostiniAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_unaffiliated_crostini_allowed()) {
+    _internal_set_device_unaffiliated_crostini_allowed(from._internal_device_unaffiliated_crostini_allowed());
+  }
+}
+
+void DeviceUnaffiliatedCrostiniAllowedProto::CopyFrom(const DeviceUnaffiliatedCrostiniAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceUnaffiliatedCrostiniAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceUnaffiliatedCrostiniAllowedProto::InternalSwap(DeviceUnaffiliatedCrostiniAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_unaffiliated_crostini_allowed_, other->device_unaffiliated_crostini_allowed_);
+}
+
+std::string DeviceUnaffiliatedCrostiniAllowedProto::GetTypeName() const {
+  return "enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto";
+}
+
+
+// ===================================================================
+
+void PluginVmAllowedProto::InitAsDefaultInstance() {
+}
+class PluginVmAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PluginVmAllowedProto>()._has_bits_);
+  static void set_has_plugin_vm_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+PluginVmAllowedProto::PluginVmAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PluginVmAllowedProto)
+}
+PluginVmAllowedProto::PluginVmAllowedProto(const PluginVmAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  plugin_vm_allowed_ = from.plugin_vm_allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PluginVmAllowedProto)
+}
+
+void PluginVmAllowedProto::SharedCtor() {
+  plugin_vm_allowed_ = false;
+}
+
+PluginVmAllowedProto::~PluginVmAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PluginVmAllowedProto)
+  SharedDtor();
+}
+
+void PluginVmAllowedProto::SharedDtor() {
+}
+
+void PluginVmAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PluginVmAllowedProto& PluginVmAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PluginVmAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PluginVmAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PluginVmAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  plugin_vm_allowed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PluginVmAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool plugin_vm_allowed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_plugin_vm_allowed(&has_bits);
+          plugin_vm_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PluginVmAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PluginVmAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool plugin_vm_allowed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_plugin_vm_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PluginVmAllowedProto)
+  return target;
+}
+
+size_t PluginVmAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PluginVmAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool plugin_vm_allowed = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PluginVmAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PluginVmAllowedProto*>(
+      &from));
+}
+
+void PluginVmAllowedProto::MergeFrom(const PluginVmAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PluginVmAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_plugin_vm_allowed()) {
+    _internal_set_plugin_vm_allowed(from._internal_plugin_vm_allowed());
+  }
+}
+
+void PluginVmAllowedProto::CopyFrom(const PluginVmAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PluginVmAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PluginVmAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void PluginVmAllowedProto::InternalSwap(PluginVmAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(plugin_vm_allowed_, other->plugin_vm_allowed_);
+}
+
+std::string PluginVmAllowedProto::GetTypeName() const {
+  return "enterprise_management.PluginVmAllowedProto";
+}
+
+
+// ===================================================================
+
+void PluginVmLicenseKeyProto::InitAsDefaultInstance() {
+}
+class PluginVmLicenseKeyProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PluginVmLicenseKeyProto>()._has_bits_);
+  static void set_has_plugin_vm_license_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+PluginVmLicenseKeyProto::PluginVmLicenseKeyProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PluginVmLicenseKeyProto)
+}
+PluginVmLicenseKeyProto::PluginVmLicenseKeyProto(const PluginVmLicenseKeyProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  plugin_vm_license_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_plugin_vm_license_key()) {
+    plugin_vm_license_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.plugin_vm_license_key_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PluginVmLicenseKeyProto)
+}
+
+void PluginVmLicenseKeyProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PluginVmLicenseKeyProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  plugin_vm_license_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+PluginVmLicenseKeyProto::~PluginVmLicenseKeyProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PluginVmLicenseKeyProto)
+  SharedDtor();
+}
+
+void PluginVmLicenseKeyProto::SharedDtor() {
+  plugin_vm_license_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PluginVmLicenseKeyProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PluginVmLicenseKeyProto& PluginVmLicenseKeyProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PluginVmLicenseKeyProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PluginVmLicenseKeyProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PluginVmLicenseKeyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    plugin_vm_license_key_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PluginVmLicenseKeyProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string plugin_vm_license_key = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_plugin_vm_license_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PluginVmLicenseKeyProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PluginVmLicenseKeyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string plugin_vm_license_key = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_plugin_vm_license_key(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PluginVmLicenseKeyProto)
+  return target;
+}
+
+size_t PluginVmLicenseKeyProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PluginVmLicenseKeyProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string plugin_vm_license_key = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_plugin_vm_license_key());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PluginVmLicenseKeyProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PluginVmLicenseKeyProto*>(
+      &from));
+}
+
+void PluginVmLicenseKeyProto::MergeFrom(const PluginVmLicenseKeyProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PluginVmLicenseKeyProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_plugin_vm_license_key()) {
+    _has_bits_[0] |= 0x00000001u;
+    plugin_vm_license_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.plugin_vm_license_key_);
+  }
+}
+
+void PluginVmLicenseKeyProto::CopyFrom(const PluginVmLicenseKeyProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PluginVmLicenseKeyProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PluginVmLicenseKeyProto::IsInitialized() const {
+  return true;
+}
+
+void PluginVmLicenseKeyProto::InternalSwap(PluginVmLicenseKeyProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  plugin_vm_license_key_.Swap(&other->plugin_vm_license_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string PluginVmLicenseKeyProto::GetTypeName() const {
+  return "enterprise_management.PluginVmLicenseKeyProto";
+}
+
+
+// ===================================================================
+
+void DeviceRebootOnUserSignoutProto::InitAsDefaultInstance() {
+}
+class DeviceRebootOnUserSignoutProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceRebootOnUserSignoutProto>()._has_bits_);
+  static void set_has_reboot_on_signout_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceRebootOnUserSignoutProto::DeviceRebootOnUserSignoutProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceRebootOnUserSignoutProto)
+}
+DeviceRebootOnUserSignoutProto::DeviceRebootOnUserSignoutProto(const DeviceRebootOnUserSignoutProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  reboot_on_signout_mode_ = from.reboot_on_signout_mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceRebootOnUserSignoutProto)
+}
+
+void DeviceRebootOnUserSignoutProto::SharedCtor() {
+  reboot_on_signout_mode_ = 1;
+}
+
+DeviceRebootOnUserSignoutProto::~DeviceRebootOnUserSignoutProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceRebootOnUserSignoutProto)
+  SharedDtor();
+}
+
+void DeviceRebootOnUserSignoutProto::SharedDtor() {
+}
+
+void DeviceRebootOnUserSignoutProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceRebootOnUserSignoutProto& DeviceRebootOnUserSignoutProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceRebootOnUserSignoutProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceRebootOnUserSignoutProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceRebootOnUserSignoutProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  reboot_on_signout_mode_ = 1;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceRebootOnUserSignoutProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceRebootOnUserSignoutProto.RebootOnSignoutMode reboot_on_signout_mode = 1 [default = NEVER];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_IsValid(val))) {
+            _internal_set_reboot_on_signout_mode(static_cast<::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceRebootOnUserSignoutProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceRebootOnUserSignoutProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceRebootOnUserSignoutProto.RebootOnSignoutMode reboot_on_signout_mode = 1 [default = NEVER];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_reboot_on_signout_mode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceRebootOnUserSignoutProto)
+  return target;
+}
+
+size_t DeviceRebootOnUserSignoutProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceRebootOnUserSignoutProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceRebootOnUserSignoutProto.RebootOnSignoutMode reboot_on_signout_mode = 1 [default = NEVER];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_reboot_on_signout_mode());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceRebootOnUserSignoutProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceRebootOnUserSignoutProto*>(
+      &from));
+}
+
+void DeviceRebootOnUserSignoutProto::MergeFrom(const DeviceRebootOnUserSignoutProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceRebootOnUserSignoutProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_reboot_on_signout_mode()) {
+    _internal_set_reboot_on_signout_mode(from._internal_reboot_on_signout_mode());
+  }
+}
+
+void DeviceRebootOnUserSignoutProto::CopyFrom(const DeviceRebootOnUserSignoutProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceRebootOnUserSignoutProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceRebootOnUserSignoutProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceRebootOnUserSignoutProto::InternalSwap(DeviceRebootOnUserSignoutProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(reboot_on_signout_mode_, other->reboot_on_signout_mode_);
+}
+
+std::string DeviceRebootOnUserSignoutProto::GetTypeName() const {
+  return "enterprise_management.DeviceRebootOnUserSignoutProto";
+}
+
+
+// ===================================================================
+
+void DeviceWilcoDtcAllowedProto::InitAsDefaultInstance() {
+}
+class DeviceWilcoDtcAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceWilcoDtcAllowedProto>()._has_bits_);
+  static void set_has_device_wilco_dtc_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceWilcoDtcAllowedProto::DeviceWilcoDtcAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceWilcoDtcAllowedProto)
+}
+DeviceWilcoDtcAllowedProto::DeviceWilcoDtcAllowedProto(const DeviceWilcoDtcAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_wilco_dtc_allowed_ = from.device_wilco_dtc_allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceWilcoDtcAllowedProto)
+}
+
+void DeviceWilcoDtcAllowedProto::SharedCtor() {
+  device_wilco_dtc_allowed_ = false;
+}
+
+DeviceWilcoDtcAllowedProto::~DeviceWilcoDtcAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceWilcoDtcAllowedProto)
+  SharedDtor();
+}
+
+void DeviceWilcoDtcAllowedProto::SharedDtor() {
+}
+
+void DeviceWilcoDtcAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceWilcoDtcAllowedProto& DeviceWilcoDtcAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceWilcoDtcAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceWilcoDtcAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceWilcoDtcAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_wilco_dtc_allowed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceWilcoDtcAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool device_wilco_dtc_allowed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_device_wilco_dtc_allowed(&has_bits);
+          device_wilco_dtc_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceWilcoDtcAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceWilcoDtcAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool device_wilco_dtc_allowed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_device_wilco_dtc_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceWilcoDtcAllowedProto)
+  return target;
+}
+
+size_t DeviceWilcoDtcAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceWilcoDtcAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool device_wilco_dtc_allowed = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceWilcoDtcAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceWilcoDtcAllowedProto*>(
+      &from));
+}
+
+void DeviceWilcoDtcAllowedProto::MergeFrom(const DeviceWilcoDtcAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceWilcoDtcAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_wilco_dtc_allowed()) {
+    _internal_set_device_wilco_dtc_allowed(from._internal_device_wilco_dtc_allowed());
+  }
+}
+
+void DeviceWilcoDtcAllowedProto::CopyFrom(const DeviceWilcoDtcAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceWilcoDtcAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceWilcoDtcAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceWilcoDtcAllowedProto::InternalSwap(DeviceWilcoDtcAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_wilco_dtc_allowed_, other->device_wilco_dtc_allowed_);
+}
+
+std::string DeviceWilcoDtcAllowedProto::GetTypeName() const {
+  return "enterprise_management.DeviceWilcoDtcAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceWilcoDtcConfigurationProto::InitAsDefaultInstance() {
+}
+class DeviceWilcoDtcConfigurationProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceWilcoDtcConfigurationProto>()._has_bits_);
+  static void set_has_device_wilco_dtc_configuration(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceWilcoDtcConfigurationProto::DeviceWilcoDtcConfigurationProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceWilcoDtcConfigurationProto)
+}
+DeviceWilcoDtcConfigurationProto::DeviceWilcoDtcConfigurationProto(const DeviceWilcoDtcConfigurationProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_wilco_dtc_configuration_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_wilco_dtc_configuration()) {
+    device_wilco_dtc_configuration_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_wilco_dtc_configuration_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceWilcoDtcConfigurationProto)
+}
+
+void DeviceWilcoDtcConfigurationProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceWilcoDtcConfigurationProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  device_wilco_dtc_configuration_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceWilcoDtcConfigurationProto::~DeviceWilcoDtcConfigurationProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceWilcoDtcConfigurationProto)
+  SharedDtor();
+}
+
+void DeviceWilcoDtcConfigurationProto::SharedDtor() {
+  device_wilco_dtc_configuration_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceWilcoDtcConfigurationProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceWilcoDtcConfigurationProto& DeviceWilcoDtcConfigurationProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceWilcoDtcConfigurationProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceWilcoDtcConfigurationProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceWilcoDtcConfigurationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    device_wilco_dtc_configuration_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceWilcoDtcConfigurationProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_wilco_dtc_configuration = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_wilco_dtc_configuration();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceWilcoDtcConfigurationProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceWilcoDtcConfigurationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_wilco_dtc_configuration = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_wilco_dtc_configuration(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceWilcoDtcConfigurationProto)
+  return target;
+}
+
+size_t DeviceWilcoDtcConfigurationProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceWilcoDtcConfigurationProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string device_wilco_dtc_configuration = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_wilco_dtc_configuration());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceWilcoDtcConfigurationProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceWilcoDtcConfigurationProto*>(
+      &from));
+}
+
+void DeviceWilcoDtcConfigurationProto::MergeFrom(const DeviceWilcoDtcConfigurationProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceWilcoDtcConfigurationProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_wilco_dtc_configuration()) {
+    _has_bits_[0] |= 0x00000001u;
+    device_wilco_dtc_configuration_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_wilco_dtc_configuration_);
+  }
+}
+
+void DeviceWilcoDtcConfigurationProto::CopyFrom(const DeviceWilcoDtcConfigurationProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceWilcoDtcConfigurationProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceWilcoDtcConfigurationProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceWilcoDtcConfigurationProto::InternalSwap(DeviceWilcoDtcConfigurationProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_wilco_dtc_configuration_.Swap(&other->device_wilco_dtc_configuration_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceWilcoDtcConfigurationProto::GetTypeName() const {
+  return "enterprise_management.DeviceWilcoDtcConfigurationProto";
+}
+
+
+// ===================================================================
+
+void DevicePowerPeakShiftProto::InitAsDefaultInstance() {
+}
+class DevicePowerPeakShiftProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePowerPeakShiftProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_battery_threshold(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_day_configs(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DevicePowerPeakShiftProto::DevicePowerPeakShiftProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePowerPeakShiftProto)
+}
+DevicePowerPeakShiftProto::DevicePowerPeakShiftProto(const DevicePowerPeakShiftProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  day_configs_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_day_configs()) {
+    day_configs_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.day_configs_);
+  }
+  ::memcpy(&enabled_, &from.enabled_,
+    static_cast<size_t>(reinterpret_cast<char*>(&battery_threshold_) -
+    reinterpret_cast<char*>(&enabled_)) + sizeof(battery_threshold_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePowerPeakShiftProto)
+}
+
+void DevicePowerPeakShiftProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DevicePowerPeakShiftProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  day_configs_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&enabled_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&battery_threshold_) -
+      reinterpret_cast<char*>(&enabled_)) + sizeof(battery_threshold_));
+}
+
+DevicePowerPeakShiftProto::~DevicePowerPeakShiftProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePowerPeakShiftProto)
+  SharedDtor();
+}
+
+void DevicePowerPeakShiftProto::SharedDtor() {
+  day_configs_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DevicePowerPeakShiftProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePowerPeakShiftProto& DevicePowerPeakShiftProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePowerPeakShiftProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePowerPeakShiftProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePowerPeakShiftProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    day_configs_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&enabled_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&battery_threshold_) -
+        reinterpret_cast<char*>(&enabled_)) + sizeof(battery_threshold_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePowerPeakShiftProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 battery_threshold = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_battery_threshold(&has_bits);
+          battery_threshold_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string day_configs = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_day_configs();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePowerPeakShiftProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePowerPeakShiftProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  // optional int32 battery_threshold = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_battery_threshold(), target);
+  }
+
+  // optional string day_configs = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_day_configs(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePowerPeakShiftProto)
+  return target;
+}
+
+size_t DevicePowerPeakShiftProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePowerPeakShiftProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string day_configs = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_day_configs());
+    }
+
+    // optional bool enabled = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+    // optional int32 battery_threshold = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_battery_threshold());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePowerPeakShiftProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePowerPeakShiftProto*>(
+      &from));
+}
+
+void DevicePowerPeakShiftProto::MergeFrom(const DevicePowerPeakShiftProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePowerPeakShiftProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      day_configs_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.day_configs_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      enabled_ = from.enabled_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      battery_threshold_ = from.battery_threshold_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DevicePowerPeakShiftProto::CopyFrom(const DevicePowerPeakShiftProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePowerPeakShiftProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePowerPeakShiftProto::IsInitialized() const {
+  return true;
+}
+
+void DevicePowerPeakShiftProto::InternalSwap(DevicePowerPeakShiftProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  day_configs_.Swap(&other->day_configs_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(enabled_, other->enabled_);
+  swap(battery_threshold_, other->battery_threshold_);
+}
+
+std::string DevicePowerPeakShiftProto::GetTypeName() const {
+  return "enterprise_management.DevicePowerPeakShiftProto";
+}
+
+
+// ===================================================================
+
+void DeviceBootOnAcProto::InitAsDefaultInstance() {
+}
+class DeviceBootOnAcProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceBootOnAcProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceBootOnAcProto::DeviceBootOnAcProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceBootOnAcProto)
+}
+DeviceBootOnAcProto::DeviceBootOnAcProto(const DeviceBootOnAcProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceBootOnAcProto)
+}
+
+void DeviceBootOnAcProto::SharedCtor() {
+  enabled_ = false;
+}
+
+DeviceBootOnAcProto::~DeviceBootOnAcProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceBootOnAcProto)
+  SharedDtor();
+}
+
+void DeviceBootOnAcProto::SharedDtor() {
+}
+
+void DeviceBootOnAcProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceBootOnAcProto& DeviceBootOnAcProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceBootOnAcProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceBootOnAcProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceBootOnAcProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceBootOnAcProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceBootOnAcProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceBootOnAcProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceBootOnAcProto)
+  return target;
+}
+
+size_t DeviceBootOnAcProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceBootOnAcProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceBootOnAcProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceBootOnAcProto*>(
+      &from));
+}
+
+void DeviceBootOnAcProto::MergeFrom(const DeviceBootOnAcProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceBootOnAcProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DeviceBootOnAcProto::CopyFrom(const DeviceBootOnAcProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceBootOnAcProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceBootOnAcProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceBootOnAcProto::InternalSwap(DeviceBootOnAcProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceBootOnAcProto::GetTypeName() const {
+  return "enterprise_management.DeviceBootOnAcProto";
+}
+
+
+// ===================================================================
+
+void DeviceDockMacAddressSourceProto::InitAsDefaultInstance() {
+}
+class DeviceDockMacAddressSourceProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceDockMacAddressSourceProto>()._has_bits_);
+  static void set_has_source(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceDockMacAddressSourceProto::DeviceDockMacAddressSourceProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceDockMacAddressSourceProto)
+}
+DeviceDockMacAddressSourceProto::DeviceDockMacAddressSourceProto(const DeviceDockMacAddressSourceProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  source_ = from.source_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceDockMacAddressSourceProto)
+}
+
+void DeviceDockMacAddressSourceProto::SharedCtor() {
+  source_ = 0;
+}
+
+DeviceDockMacAddressSourceProto::~DeviceDockMacAddressSourceProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceDockMacAddressSourceProto)
+  SharedDtor();
+}
+
+void DeviceDockMacAddressSourceProto::SharedDtor() {
+}
+
+void DeviceDockMacAddressSourceProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceDockMacAddressSourceProto& DeviceDockMacAddressSourceProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceDockMacAddressSourceProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceDockMacAddressSourceProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceDockMacAddressSourceProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  source_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceDockMacAddressSourceProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceDockMacAddressSourceProto.Source source = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceDockMacAddressSourceProto_Source_IsValid(val))) {
+            _internal_set_source(static_cast<::enterprise_management::DeviceDockMacAddressSourceProto_Source>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceDockMacAddressSourceProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceDockMacAddressSourceProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceDockMacAddressSourceProto.Source source = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_source(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceDockMacAddressSourceProto)
+  return target;
+}
+
+size_t DeviceDockMacAddressSourceProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceDockMacAddressSourceProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceDockMacAddressSourceProto.Source source = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_source());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceDockMacAddressSourceProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceDockMacAddressSourceProto*>(
+      &from));
+}
+
+void DeviceDockMacAddressSourceProto::MergeFrom(const DeviceDockMacAddressSourceProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceDockMacAddressSourceProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_source()) {
+    _internal_set_source(from._internal_source());
+  }
+}
+
+void DeviceDockMacAddressSourceProto::CopyFrom(const DeviceDockMacAddressSourceProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceDockMacAddressSourceProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceDockMacAddressSourceProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceDockMacAddressSourceProto::InternalSwap(DeviceDockMacAddressSourceProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(source_, other->source_);
+}
+
+std::string DeviceDockMacAddressSourceProto::GetTypeName() const {
+  return "enterprise_management.DeviceDockMacAddressSourceProto";
+}
+
+
+// ===================================================================
+
+void DeviceAdvancedBatteryChargeModeProto::InitAsDefaultInstance() {
+}
+class DeviceAdvancedBatteryChargeModeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAdvancedBatteryChargeModeProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_day_configs(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceAdvancedBatteryChargeModeProto::DeviceAdvancedBatteryChargeModeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+}
+DeviceAdvancedBatteryChargeModeProto::DeviceAdvancedBatteryChargeModeProto(const DeviceAdvancedBatteryChargeModeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  day_configs_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_day_configs()) {
+    day_configs_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.day_configs_);
+  }
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+}
+
+void DeviceAdvancedBatteryChargeModeProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceAdvancedBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  day_configs_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  enabled_ = false;
+}
+
+DeviceAdvancedBatteryChargeModeProto::~DeviceAdvancedBatteryChargeModeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+  SharedDtor();
+}
+
+void DeviceAdvancedBatteryChargeModeProto::SharedDtor() {
+  day_configs_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceAdvancedBatteryChargeModeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAdvancedBatteryChargeModeProto& DeviceAdvancedBatteryChargeModeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAdvancedBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAdvancedBatteryChargeModeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    day_configs_.ClearNonDefaultToEmptyNoArena();
+  }
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAdvancedBatteryChargeModeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string day_configs = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_day_configs();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAdvancedBatteryChargeModeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  // optional string day_configs = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_day_configs(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+  return target;
+}
+
+size_t DeviceAdvancedBatteryChargeModeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string day_configs = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_day_configs());
+    }
+
+    // optional bool enabled = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAdvancedBatteryChargeModeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAdvancedBatteryChargeModeProto*>(
+      &from));
+}
+
+void DeviceAdvancedBatteryChargeModeProto::MergeFrom(const DeviceAdvancedBatteryChargeModeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      day_configs_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.day_configs_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      enabled_ = from.enabled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceAdvancedBatteryChargeModeProto::CopyFrom(const DeviceAdvancedBatteryChargeModeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAdvancedBatteryChargeModeProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceAdvancedBatteryChargeModeProto::InternalSwap(DeviceAdvancedBatteryChargeModeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  day_configs_.Swap(&other->day_configs_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceAdvancedBatteryChargeModeProto::GetTypeName() const {
+  return "enterprise_management.DeviceAdvancedBatteryChargeModeProto";
+}
+
+
+// ===================================================================
+
+void DeviceBatteryChargeModeProto::InitAsDefaultInstance() {
+}
+class DeviceBatteryChargeModeProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceBatteryChargeModeProto>()._has_bits_);
+  static void set_has_battery_charge_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_custom_charge_start(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_custom_charge_stop(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+DeviceBatteryChargeModeProto::DeviceBatteryChargeModeProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceBatteryChargeModeProto)
+}
+DeviceBatteryChargeModeProto::DeviceBatteryChargeModeProto(const DeviceBatteryChargeModeProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&battery_charge_mode_, &from.battery_charge_mode_,
+    static_cast<size_t>(reinterpret_cast<char*>(&custom_charge_stop_) -
+    reinterpret_cast<char*>(&battery_charge_mode_)) + sizeof(custom_charge_stop_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceBatteryChargeModeProto)
+}
+
+void DeviceBatteryChargeModeProto::SharedCtor() {
+  ::memset(&battery_charge_mode_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&custom_charge_stop_) -
+      reinterpret_cast<char*>(&battery_charge_mode_)) + sizeof(custom_charge_stop_));
+}
+
+DeviceBatteryChargeModeProto::~DeviceBatteryChargeModeProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceBatteryChargeModeProto)
+  SharedDtor();
+}
+
+void DeviceBatteryChargeModeProto::SharedDtor() {
+}
+
+void DeviceBatteryChargeModeProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceBatteryChargeModeProto& DeviceBatteryChargeModeProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceBatteryChargeModeProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceBatteryChargeModeProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceBatteryChargeModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    ::memset(&battery_charge_mode_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&custom_charge_stop_) -
+        reinterpret_cast<char*>(&battery_charge_mode_)) + sizeof(custom_charge_stop_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceBatteryChargeModeProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceBatteryChargeModeProto.BatteryChargeMode battery_charge_mode = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode_IsValid(val))) {
+            _internal_set_battery_charge_mode(static_cast<::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 custom_charge_start = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_custom_charge_start(&has_bits);
+          custom_charge_start_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 custom_charge_stop = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_custom_charge_stop(&has_bits);
+          custom_charge_stop_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceBatteryChargeModeProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceBatteryChargeModeProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceBatteryChargeModeProto.BatteryChargeMode battery_charge_mode = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_battery_charge_mode(), target);
+  }
+
+  // optional int32 custom_charge_start = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_custom_charge_start(), target);
+  }
+
+  // optional int32 custom_charge_stop = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_custom_charge_stop(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceBatteryChargeModeProto)
+  return target;
+}
+
+size_t DeviceBatteryChargeModeProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceBatteryChargeModeProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional .enterprise_management.DeviceBatteryChargeModeProto.BatteryChargeMode battery_charge_mode = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_battery_charge_mode());
+    }
+
+    // optional int32 custom_charge_start = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_custom_charge_start());
+    }
+
+    // optional int32 custom_charge_stop = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_custom_charge_stop());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceBatteryChargeModeProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceBatteryChargeModeProto*>(
+      &from));
+}
+
+void DeviceBatteryChargeModeProto::MergeFrom(const DeviceBatteryChargeModeProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceBatteryChargeModeProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      battery_charge_mode_ = from.battery_charge_mode_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      custom_charge_start_ = from.custom_charge_start_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      custom_charge_stop_ = from.custom_charge_stop_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceBatteryChargeModeProto::CopyFrom(const DeviceBatteryChargeModeProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceBatteryChargeModeProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceBatteryChargeModeProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceBatteryChargeModeProto::InternalSwap(DeviceBatteryChargeModeProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(battery_charge_mode_, other->battery_charge_mode_);
+  swap(custom_charge_start_, other->custom_charge_start_);
+  swap(custom_charge_stop_, other->custom_charge_stop_);
+}
+
+std::string DeviceBatteryChargeModeProto::GetTypeName() const {
+  return "enterprise_management.DeviceBatteryChargeModeProto";
+}
+
+
+// ===================================================================
+
+void DeviceUsbPowerShareProto::InitAsDefaultInstance() {
+}
+class DeviceUsbPowerShareProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceUsbPowerShareProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceUsbPowerShareProto::DeviceUsbPowerShareProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceUsbPowerShareProto)
+}
+DeviceUsbPowerShareProto::DeviceUsbPowerShareProto(const DeviceUsbPowerShareProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceUsbPowerShareProto)
+}
+
+void DeviceUsbPowerShareProto::SharedCtor() {
+  enabled_ = false;
+}
+
+DeviceUsbPowerShareProto::~DeviceUsbPowerShareProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceUsbPowerShareProto)
+  SharedDtor();
+}
+
+void DeviceUsbPowerShareProto::SharedDtor() {
+}
+
+void DeviceUsbPowerShareProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceUsbPowerShareProto& DeviceUsbPowerShareProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceUsbPowerShareProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceUsbPowerShareProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceUsbPowerShareProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceUsbPowerShareProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceUsbPowerShareProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceUsbPowerShareProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceUsbPowerShareProto)
+  return target;
+}
+
+size_t DeviceUsbPowerShareProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceUsbPowerShareProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceUsbPowerShareProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceUsbPowerShareProto*>(
+      &from));
+}
+
+void DeviceUsbPowerShareProto::MergeFrom(const DeviceUsbPowerShareProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceUsbPowerShareProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DeviceUsbPowerShareProto::CopyFrom(const DeviceUsbPowerShareProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceUsbPowerShareProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceUsbPowerShareProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceUsbPowerShareProto::InternalSwap(DeviceUsbPowerShareProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceUsbPowerShareProto::GetTypeName() const {
+  return "enterprise_management.DeviceUsbPowerShareProto";
+}
+
+
+// ===================================================================
+
+void DeviceScheduledUpdateCheckProto::InitAsDefaultInstance() {
+}
+class DeviceScheduledUpdateCheckProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceScheduledUpdateCheckProto>()._has_bits_);
+  static void set_has_device_scheduled_update_check_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceScheduledUpdateCheckProto::DeviceScheduledUpdateCheckProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceScheduledUpdateCheckProto)
+}
+DeviceScheduledUpdateCheckProto::DeviceScheduledUpdateCheckProto(const DeviceScheduledUpdateCheckProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_scheduled_update_check_settings_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_scheduled_update_check_settings()) {
+    device_scheduled_update_check_settings_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_scheduled_update_check_settings_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceScheduledUpdateCheckProto)
+}
+
+void DeviceScheduledUpdateCheckProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceScheduledUpdateCheckProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  device_scheduled_update_check_settings_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceScheduledUpdateCheckProto::~DeviceScheduledUpdateCheckProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceScheduledUpdateCheckProto)
+  SharedDtor();
+}
+
+void DeviceScheduledUpdateCheckProto::SharedDtor() {
+  device_scheduled_update_check_settings_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceScheduledUpdateCheckProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceScheduledUpdateCheckProto& DeviceScheduledUpdateCheckProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceScheduledUpdateCheckProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceScheduledUpdateCheckProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceScheduledUpdateCheckProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    device_scheduled_update_check_settings_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceScheduledUpdateCheckProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_scheduled_update_check_settings = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_scheduled_update_check_settings();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceScheduledUpdateCheckProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceScheduledUpdateCheckProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_scheduled_update_check_settings = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_scheduled_update_check_settings(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceScheduledUpdateCheckProto)
+  return target;
+}
+
+size_t DeviceScheduledUpdateCheckProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceScheduledUpdateCheckProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string device_scheduled_update_check_settings = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_scheduled_update_check_settings());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceScheduledUpdateCheckProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceScheduledUpdateCheckProto*>(
+      &from));
+}
+
+void DeviceScheduledUpdateCheckProto::MergeFrom(const DeviceScheduledUpdateCheckProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceScheduledUpdateCheckProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_scheduled_update_check_settings()) {
+    _has_bits_[0] |= 0x00000001u;
+    device_scheduled_update_check_settings_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_scheduled_update_check_settings_);
+  }
+}
+
+void DeviceScheduledUpdateCheckProto::CopyFrom(const DeviceScheduledUpdateCheckProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceScheduledUpdateCheckProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceScheduledUpdateCheckProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceScheduledUpdateCheckProto::InternalSwap(DeviceScheduledUpdateCheckProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_scheduled_update_check_settings_.Swap(&other->device_scheduled_update_check_settings_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceScheduledUpdateCheckProto::GetTypeName() const {
+  return "enterprise_management.DeviceScheduledUpdateCheckProto";
+}
+
+
+// ===================================================================
+
+void DevicePowerwashAllowedProto::InitAsDefaultInstance() {
+}
+class DevicePowerwashAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePowerwashAllowedProto>()._has_bits_);
+  static void set_has_device_powerwash_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DevicePowerwashAllowedProto::DevicePowerwashAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePowerwashAllowedProto)
+}
+DevicePowerwashAllowedProto::DevicePowerwashAllowedProto(const DevicePowerwashAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_powerwash_allowed_ = from.device_powerwash_allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePowerwashAllowedProto)
+}
+
+void DevicePowerwashAllowedProto::SharedCtor() {
+  device_powerwash_allowed_ = false;
+}
+
+DevicePowerwashAllowedProto::~DevicePowerwashAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePowerwashAllowedProto)
+  SharedDtor();
+}
+
+void DevicePowerwashAllowedProto::SharedDtor() {
+}
+
+void DevicePowerwashAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePowerwashAllowedProto& DevicePowerwashAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePowerwashAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePowerwashAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePowerwashAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_powerwash_allowed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePowerwashAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool device_powerwash_allowed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_device_powerwash_allowed(&has_bits);
+          device_powerwash_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePowerwashAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePowerwashAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool device_powerwash_allowed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_device_powerwash_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePowerwashAllowedProto)
+  return target;
+}
+
+size_t DevicePowerwashAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePowerwashAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool device_powerwash_allowed = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePowerwashAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePowerwashAllowedProto*>(
+      &from));
+}
+
+void DevicePowerwashAllowedProto::MergeFrom(const DevicePowerwashAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePowerwashAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_powerwash_allowed()) {
+    _internal_set_device_powerwash_allowed(from._internal_device_powerwash_allowed());
+  }
+}
+
+void DevicePowerwashAllowedProto::CopyFrom(const DevicePowerwashAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePowerwashAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePowerwashAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void DevicePowerwashAllowedProto::InternalSwap(DevicePowerwashAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_powerwash_allowed_, other->device_powerwash_allowed_);
+}
+
+std::string DevicePowerwashAllowedProto::GetTypeName() const {
+  return "enterprise_management.DevicePowerwashAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::InitAsDefaultInstance() {
+}
+class DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceLoginScreenWebUsbAllowDevicesForUrlsProto>()._has_bits_);
+  static void set_has_device_login_screen_webusb_allow_devices_for_urls(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+}
+DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto(const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_login_screen_webusb_allow_devices_for_urls_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_login_screen_webusb_allow_devices_for_urls()) {
+    device_login_screen_webusb_allow_devices_for_urls_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_login_screen_webusb_allow_devices_for_urls_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+}
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  device_login_screen_webusb_allow_devices_for_urls_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::~DeviceLoginScreenWebUsbAllowDevicesForUrlsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+  SharedDtor();
+}
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::SharedDtor() {
+  device_login_screen_webusb_allow_devices_for_urls_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    device_login_screen_webusb_allow_devices_for_urls_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_login_screen_webusb_allow_devices_for_urls = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_login_screen_webusb_allow_devices_for_urls();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_login_screen_webusb_allow_devices_for_urls = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_login_screen_webusb_allow_devices_for_urls(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+  return target;
+}
+
+size_t DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string device_login_screen_webusb_allow_devices_for_urls = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_login_screen_webusb_allow_devices_for_urls());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto*>(
+      &from));
+}
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::MergeFrom(const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_login_screen_webusb_allow_devices_for_urls()) {
+    _has_bits_[0] |= 0x00000001u;
+    device_login_screen_webusb_allow_devices_for_urls_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_login_screen_webusb_allow_devices_for_urls_);
+  }
+}
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::CopyFrom(const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::InternalSwap(DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_login_screen_webusb_allow_devices_for_urls_.Swap(&other->device_login_screen_webusb_allow_devices_for_urls_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::GetTypeName() const {
+  return "enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto";
+}
+
+
+// ===================================================================
+
+void SystemProxySettingsProto::InitAsDefaultInstance() {
+}
+class SystemProxySettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProxySettingsProto>()._has_bits_);
+  static void set_has_system_proxy_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SystemProxySettingsProto::SystemProxySettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SystemProxySettingsProto)
+}
+SystemProxySettingsProto::SystemProxySettingsProto(const SystemProxySettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  system_proxy_settings_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_system_proxy_settings()) {
+    system_proxy_settings_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.system_proxy_settings_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SystemProxySettingsProto)
+}
+
+void SystemProxySettingsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  system_proxy_settings_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+SystemProxySettingsProto::~SystemProxySettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SystemProxySettingsProto)
+  SharedDtor();
+}
+
+void SystemProxySettingsProto::SharedDtor() {
+  system_proxy_settings_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProxySettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProxySettingsProto& SystemProxySettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProxySettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProxySettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SystemProxySettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    system_proxy_settings_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProxySettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string system_proxy_settings = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_system_proxy_settings();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProxySettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SystemProxySettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string system_proxy_settings = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_system_proxy_settings(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SystemProxySettingsProto)
+  return target;
+}
+
+size_t SystemProxySettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SystemProxySettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string system_proxy_settings = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_system_proxy_settings());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProxySettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProxySettingsProto*>(
+      &from));
+}
+
+void SystemProxySettingsProto::MergeFrom(const SystemProxySettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SystemProxySettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_system_proxy_settings()) {
+    _has_bits_[0] |= 0x00000001u;
+    system_proxy_settings_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.system_proxy_settings_);
+  }
+}
+
+void SystemProxySettingsProto::CopyFrom(const SystemProxySettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SystemProxySettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProxySettingsProto::IsInitialized() const {
+  return true;
+}
+
+void SystemProxySettingsProto::InternalSwap(SystemProxySettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  system_proxy_settings_.Swap(&other->system_proxy_settings_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string SystemProxySettingsProto::GetTypeName() const {
+  return "enterprise_management.SystemProxySettingsProto";
+}
+
+
+// ===================================================================
+
+void RequiredClientCertificateForDeviceProto::InitAsDefaultInstance() {
+}
+class RequiredClientCertificateForDeviceProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RequiredClientCertificateForDeviceProto>()._has_bits_);
+  static void set_has_required_client_certificate_for_device(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+RequiredClientCertificateForDeviceProto::RequiredClientCertificateForDeviceProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RequiredClientCertificateForDeviceProto)
+}
+RequiredClientCertificateForDeviceProto::RequiredClientCertificateForDeviceProto(const RequiredClientCertificateForDeviceProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  required_client_certificate_for_device_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_required_client_certificate_for_device()) {
+    required_client_certificate_for_device_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.required_client_certificate_for_device_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RequiredClientCertificateForDeviceProto)
+}
+
+void RequiredClientCertificateForDeviceProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RequiredClientCertificateForDeviceProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  required_client_certificate_for_device_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+RequiredClientCertificateForDeviceProto::~RequiredClientCertificateForDeviceProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RequiredClientCertificateForDeviceProto)
+  SharedDtor();
+}
+
+void RequiredClientCertificateForDeviceProto::SharedDtor() {
+  required_client_certificate_for_device_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void RequiredClientCertificateForDeviceProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RequiredClientCertificateForDeviceProto& RequiredClientCertificateForDeviceProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RequiredClientCertificateForDeviceProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RequiredClientCertificateForDeviceProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RequiredClientCertificateForDeviceProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    required_client_certificate_for_device_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RequiredClientCertificateForDeviceProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string required_client_certificate_for_device = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_required_client_certificate_for_device();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RequiredClientCertificateForDeviceProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RequiredClientCertificateForDeviceProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string required_client_certificate_for_device = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_required_client_certificate_for_device(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RequiredClientCertificateForDeviceProto)
+  return target;
+}
+
+size_t RequiredClientCertificateForDeviceProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RequiredClientCertificateForDeviceProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string required_client_certificate_for_device = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_required_client_certificate_for_device());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RequiredClientCertificateForDeviceProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RequiredClientCertificateForDeviceProto*>(
+      &from));
+}
+
+void RequiredClientCertificateForDeviceProto::MergeFrom(const RequiredClientCertificateForDeviceProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RequiredClientCertificateForDeviceProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_required_client_certificate_for_device()) {
+    _has_bits_[0] |= 0x00000001u;
+    required_client_certificate_for_device_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.required_client_certificate_for_device_);
+  }
+}
+
+void RequiredClientCertificateForDeviceProto::CopyFrom(const RequiredClientCertificateForDeviceProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RequiredClientCertificateForDeviceProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RequiredClientCertificateForDeviceProto::IsInitialized() const {
+  return true;
+}
+
+void RequiredClientCertificateForDeviceProto::InternalSwap(RequiredClientCertificateForDeviceProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  required_client_certificate_for_device_.Swap(&other->required_client_certificate_for_device_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string RequiredClientCertificateForDeviceProto::GetTypeName() const {
+  return "enterprise_management.RequiredClientCertificateForDeviceProto";
+}
+
+
+// ===================================================================
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::InitAsDefaultInstance() {
+}
+class DeviceCrostiniArcAdbSideloadingAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceCrostiniArcAdbSideloadingAllowedProto>()._has_bits_);
+  static void set_has_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceCrostiniArcAdbSideloadingAllowedProto::DeviceCrostiniArcAdbSideloadingAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+}
+DeviceCrostiniArcAdbSideloadingAllowedProto::DeviceCrostiniArcAdbSideloadingAllowedProto(const DeviceCrostiniArcAdbSideloadingAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  mode_ = from.mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+}
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::SharedCtor() {
+  mode_ = 0;
+}
+
+DeviceCrostiniArcAdbSideloadingAllowedProto::~DeviceCrostiniArcAdbSideloadingAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+  SharedDtor();
+}
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::SharedDtor() {
+}
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceCrostiniArcAdbSideloadingAllowedProto& DeviceCrostiniArcAdbSideloadingAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceCrostiniArcAdbSideloadingAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  mode_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceCrostiniArcAdbSideloadingAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto.AllowanceMode mode = 1 [default = DISALLOW];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_IsValid(val))) {
+            _internal_set_mode(static_cast<::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceCrostiniArcAdbSideloadingAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto.AllowanceMode mode = 1 [default = DISALLOW];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_mode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+  return target;
+}
+
+size_t DeviceCrostiniArcAdbSideloadingAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto.AllowanceMode mode = 1 [default = DISALLOW];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_mode());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceCrostiniArcAdbSideloadingAllowedProto*>(
+      &from));
+}
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::MergeFrom(const DeviceCrostiniArcAdbSideloadingAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_mode()) {
+    _internal_set_mode(from._internal_mode());
+  }
+}
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::CopyFrom(const DeviceCrostiniArcAdbSideloadingAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceCrostiniArcAdbSideloadingAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceCrostiniArcAdbSideloadingAllowedProto::InternalSwap(DeviceCrostiniArcAdbSideloadingAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(mode_, other->mode_);
+}
+
+std::string DeviceCrostiniArcAdbSideloadingAllowedProto::GetTypeName() const {
+  return "enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceShowLowDiskSpaceNotificationProto::InitAsDefaultInstance() {
+}
+class DeviceShowLowDiskSpaceNotificationProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceShowLowDiskSpaceNotificationProto>()._has_bits_);
+  static void set_has_device_show_low_disk_space_notification(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceShowLowDiskSpaceNotificationProto::DeviceShowLowDiskSpaceNotificationProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+}
+DeviceShowLowDiskSpaceNotificationProto::DeviceShowLowDiskSpaceNotificationProto(const DeviceShowLowDiskSpaceNotificationProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_show_low_disk_space_notification_ = from.device_show_low_disk_space_notification_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+}
+
+void DeviceShowLowDiskSpaceNotificationProto::SharedCtor() {
+  device_show_low_disk_space_notification_ = false;
+}
+
+DeviceShowLowDiskSpaceNotificationProto::~DeviceShowLowDiskSpaceNotificationProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+  SharedDtor();
+}
+
+void DeviceShowLowDiskSpaceNotificationProto::SharedDtor() {
+}
+
+void DeviceShowLowDiskSpaceNotificationProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceShowLowDiskSpaceNotificationProto& DeviceShowLowDiskSpaceNotificationProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceShowLowDiskSpaceNotificationProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceShowLowDiskSpaceNotificationProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_show_low_disk_space_notification_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceShowLowDiskSpaceNotificationProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool device_show_low_disk_space_notification = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_device_show_low_disk_space_notification(&has_bits);
+          device_show_low_disk_space_notification_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceShowLowDiskSpaceNotificationProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool device_show_low_disk_space_notification = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_device_show_low_disk_space_notification(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+  return target;
+}
+
+size_t DeviceShowLowDiskSpaceNotificationProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool device_show_low_disk_space_notification = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceShowLowDiskSpaceNotificationProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceShowLowDiskSpaceNotificationProto*>(
+      &from));
+}
+
+void DeviceShowLowDiskSpaceNotificationProto::MergeFrom(const DeviceShowLowDiskSpaceNotificationProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_show_low_disk_space_notification()) {
+    _internal_set_device_show_low_disk_space_notification(from._internal_device_show_low_disk_space_notification());
+  }
+}
+
+void DeviceShowLowDiskSpaceNotificationProto::CopyFrom(const DeviceShowLowDiskSpaceNotificationProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceShowLowDiskSpaceNotificationProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceShowLowDiskSpaceNotificationProto::InternalSwap(DeviceShowLowDiskSpaceNotificationProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_show_low_disk_space_notification_, other->device_show_low_disk_space_notification_);
+}
+
+std::string DeviceShowLowDiskSpaceNotificationProto::GetTypeName() const {
+  return "enterprise_management.DeviceShowLowDiskSpaceNotificationProto";
+}
+
+
+// ===================================================================
+
+void DeviceFamilyLinkAccountsAllowedProto::InitAsDefaultInstance() {
+}
+class DeviceFamilyLinkAccountsAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceFamilyLinkAccountsAllowedProto>()._has_bits_);
+  static void set_has_family_link_accounts_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceFamilyLinkAccountsAllowedProto::DeviceFamilyLinkAccountsAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+}
+DeviceFamilyLinkAccountsAllowedProto::DeviceFamilyLinkAccountsAllowedProto(const DeviceFamilyLinkAccountsAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  family_link_accounts_allowed_ = from.family_link_accounts_allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+}
+
+void DeviceFamilyLinkAccountsAllowedProto::SharedCtor() {
+  family_link_accounts_allowed_ = false;
+}
+
+DeviceFamilyLinkAccountsAllowedProto::~DeviceFamilyLinkAccountsAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+  SharedDtor();
+}
+
+void DeviceFamilyLinkAccountsAllowedProto::SharedDtor() {
+}
+
+void DeviceFamilyLinkAccountsAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceFamilyLinkAccountsAllowedProto& DeviceFamilyLinkAccountsAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceFamilyLinkAccountsAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceFamilyLinkAccountsAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  family_link_accounts_allowed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceFamilyLinkAccountsAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool family_link_accounts_allowed = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_family_link_accounts_allowed(&has_bits);
+          family_link_accounts_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceFamilyLinkAccountsAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool family_link_accounts_allowed = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_family_link_accounts_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+  return target;
+}
+
+size_t DeviceFamilyLinkAccountsAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool family_link_accounts_allowed = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceFamilyLinkAccountsAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceFamilyLinkAccountsAllowedProto*>(
+      &from));
+}
+
+void DeviceFamilyLinkAccountsAllowedProto::MergeFrom(const DeviceFamilyLinkAccountsAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_family_link_accounts_allowed()) {
+    _internal_set_family_link_accounts_allowed(from._internal_family_link_accounts_allowed());
+  }
+}
+
+void DeviceFamilyLinkAccountsAllowedProto::CopyFrom(const DeviceFamilyLinkAccountsAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceFamilyLinkAccountsAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceFamilyLinkAccountsAllowedProto::InternalSwap(DeviceFamilyLinkAccountsAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(family_link_accounts_allowed_, other->family_link_accounts_allowed_);
+}
+
+std::string DeviceFamilyLinkAccountsAllowedProto::GetTypeName() const {
+  return "enterprise_management.DeviceFamilyLinkAccountsAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceArcDataSnapshotHoursProto::InitAsDefaultInstance() {
+}
+class DeviceArcDataSnapshotHoursProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceArcDataSnapshotHoursProto>()._has_bits_);
+  static void set_has_arc_data_snapshot_hours(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceArcDataSnapshotHoursProto::DeviceArcDataSnapshotHoursProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceArcDataSnapshotHoursProto)
+}
+DeviceArcDataSnapshotHoursProto::DeviceArcDataSnapshotHoursProto(const DeviceArcDataSnapshotHoursProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  arc_data_snapshot_hours_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_arc_data_snapshot_hours()) {
+    arc_data_snapshot_hours_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.arc_data_snapshot_hours_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceArcDataSnapshotHoursProto)
+}
+
+void DeviceArcDataSnapshotHoursProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceArcDataSnapshotHoursProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  arc_data_snapshot_hours_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceArcDataSnapshotHoursProto::~DeviceArcDataSnapshotHoursProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceArcDataSnapshotHoursProto)
+  SharedDtor();
+}
+
+void DeviceArcDataSnapshotHoursProto::SharedDtor() {
+  arc_data_snapshot_hours_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceArcDataSnapshotHoursProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceArcDataSnapshotHoursProto& DeviceArcDataSnapshotHoursProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceArcDataSnapshotHoursProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceArcDataSnapshotHoursProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceArcDataSnapshotHoursProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    arc_data_snapshot_hours_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceArcDataSnapshotHoursProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string arc_data_snapshot_hours = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_arc_data_snapshot_hours();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceArcDataSnapshotHoursProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceArcDataSnapshotHoursProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string arc_data_snapshot_hours = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_arc_data_snapshot_hours(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceArcDataSnapshotHoursProto)
+  return target;
+}
+
+size_t DeviceArcDataSnapshotHoursProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceArcDataSnapshotHoursProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string arc_data_snapshot_hours = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_arc_data_snapshot_hours());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceArcDataSnapshotHoursProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceArcDataSnapshotHoursProto*>(
+      &from));
+}
+
+void DeviceArcDataSnapshotHoursProto::MergeFrom(const DeviceArcDataSnapshotHoursProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceArcDataSnapshotHoursProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_arc_data_snapshot_hours()) {
+    _has_bits_[0] |= 0x00000001u;
+    arc_data_snapshot_hours_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.arc_data_snapshot_hours_);
+  }
+}
+
+void DeviceArcDataSnapshotHoursProto::CopyFrom(const DeviceArcDataSnapshotHoursProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceArcDataSnapshotHoursProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceArcDataSnapshotHoursProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceArcDataSnapshotHoursProto::InternalSwap(DeviceArcDataSnapshotHoursProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  arc_data_snapshot_hours_.Swap(&other->arc_data_snapshot_hours_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceArcDataSnapshotHoursProto::GetTypeName() const {
+  return "enterprise_management.DeviceArcDataSnapshotHoursProto";
+}
+
+
+// ===================================================================
+
+void DeviceSystemWideTracingEnabledProto::InitAsDefaultInstance() {
+}
+class DeviceSystemWideTracingEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceSystemWideTracingEnabledProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceSystemWideTracingEnabledProto::DeviceSystemWideTracingEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceSystemWideTracingEnabledProto)
+}
+DeviceSystemWideTracingEnabledProto::DeviceSystemWideTracingEnabledProto(const DeviceSystemWideTracingEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceSystemWideTracingEnabledProto)
+}
+
+void DeviceSystemWideTracingEnabledProto::SharedCtor() {
+  enabled_ = false;
+}
+
+DeviceSystemWideTracingEnabledProto::~DeviceSystemWideTracingEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceSystemWideTracingEnabledProto)
+  SharedDtor();
+}
+
+void DeviceSystemWideTracingEnabledProto::SharedDtor() {
+}
+
+void DeviceSystemWideTracingEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceSystemWideTracingEnabledProto& DeviceSystemWideTracingEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceSystemWideTracingEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceSystemWideTracingEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceSystemWideTracingEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceSystemWideTracingEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceSystemWideTracingEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceSystemWideTracingEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceSystemWideTracingEnabledProto)
+  return target;
+}
+
+size_t DeviceSystemWideTracingEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceSystemWideTracingEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceSystemWideTracingEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceSystemWideTracingEnabledProto*>(
+      &from));
+}
+
+void DeviceSystemWideTracingEnabledProto::MergeFrom(const DeviceSystemWideTracingEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceSystemWideTracingEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DeviceSystemWideTracingEnabledProto::CopyFrom(const DeviceSystemWideTracingEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceSystemWideTracingEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceSystemWideTracingEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceSystemWideTracingEnabledProto::InternalSwap(DeviceSystemWideTracingEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceSystemWideTracingEnabledProto::GetTypeName() const {
+  return "enterprise_management.DeviceSystemWideTracingEnabledProto";
+}
+
+
+// ===================================================================
+
+void DevicePciPeripheralDataAccessEnabledProto::InitAsDefaultInstance() {
+}
+class DevicePciPeripheralDataAccessEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePciPeripheralDataAccessEnabledProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DevicePciPeripheralDataAccessEnabledProto::DevicePciPeripheralDataAccessEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+}
+DevicePciPeripheralDataAccessEnabledProto::DevicePciPeripheralDataAccessEnabledProto(const DevicePciPeripheralDataAccessEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+}
+
+void DevicePciPeripheralDataAccessEnabledProto::SharedCtor() {
+  enabled_ = false;
+}
+
+DevicePciPeripheralDataAccessEnabledProto::~DevicePciPeripheralDataAccessEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+  SharedDtor();
+}
+
+void DevicePciPeripheralDataAccessEnabledProto::SharedDtor() {
+}
+
+void DevicePciPeripheralDataAccessEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePciPeripheralDataAccessEnabledProto& DevicePciPeripheralDataAccessEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePciPeripheralDataAccessEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePciPeripheralDataAccessEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePciPeripheralDataAccessEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePciPeripheralDataAccessEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+  return target;
+}
+
+size_t DevicePciPeripheralDataAccessEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePciPeripheralDataAccessEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePciPeripheralDataAccessEnabledProto*>(
+      &from));
+}
+
+void DevicePciPeripheralDataAccessEnabledProto::MergeFrom(const DevicePciPeripheralDataAccessEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DevicePciPeripheralDataAccessEnabledProto::CopyFrom(const DevicePciPeripheralDataAccessEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePciPeripheralDataAccessEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DevicePciPeripheralDataAccessEnabledProto::InternalSwap(DevicePciPeripheralDataAccessEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DevicePciPeripheralDataAccessEnabledProto::GetTypeName() const {
+  return "enterprise_management.DevicePciPeripheralDataAccessEnabledProto";
+}
+
+
+// ===================================================================
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::InitAsDefaultInstance() {
+}
+class DevicePciPeripheralDataAccessEnabledProtoV2::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePciPeripheralDataAccessEnabledProtoV2>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DevicePciPeripheralDataAccessEnabledProtoV2::DevicePciPeripheralDataAccessEnabledProtoV2()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+}
+DevicePciPeripheralDataAccessEnabledProtoV2::DevicePciPeripheralDataAccessEnabledProtoV2(const DevicePciPeripheralDataAccessEnabledProtoV2& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+}
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::SharedCtor() {
+  enabled_ = false;
+}
+
+DevicePciPeripheralDataAccessEnabledProtoV2::~DevicePciPeripheralDataAccessEnabledProtoV2() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+  SharedDtor();
+}
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::SharedDtor() {
+}
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePciPeripheralDataAccessEnabledProtoV2& DevicePciPeripheralDataAccessEnabledProtoV2::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePciPeripheralDataAccessEnabledProtoV2_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePciPeripheralDataAccessEnabledProtoV2::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePciPeripheralDataAccessEnabledProtoV2::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+  return target;
+}
+
+size_t DevicePciPeripheralDataAccessEnabledProtoV2::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePciPeripheralDataAccessEnabledProtoV2*>(
+      &from));
+}
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::MergeFrom(const DevicePciPeripheralDataAccessEnabledProtoV2& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::CopyFrom(const DevicePciPeripheralDataAccessEnabledProtoV2& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePciPeripheralDataAccessEnabledProtoV2::IsInitialized() const {
+  return true;
+}
+
+void DevicePciPeripheralDataAccessEnabledProtoV2::InternalSwap(DevicePciPeripheralDataAccessEnabledProtoV2* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DevicePciPeripheralDataAccessEnabledProtoV2::GetTypeName() const {
+  return "enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2";
+}
+
+
+// ===================================================================
+
+void DeviceBorealisAllowedProto::InitAsDefaultInstance() {
+}
+class DeviceBorealisAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceBorealisAllowedProto>()._has_bits_);
+  static void set_has_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceBorealisAllowedProto::DeviceBorealisAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceBorealisAllowedProto)
+}
+DeviceBorealisAllowedProto::DeviceBorealisAllowedProto(const DeviceBorealisAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  allowed_ = from.allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceBorealisAllowedProto)
+}
+
+void DeviceBorealisAllowedProto::SharedCtor() {
+  allowed_ = true;
+}
+
+DeviceBorealisAllowedProto::~DeviceBorealisAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceBorealisAllowedProto)
+  SharedDtor();
+}
+
+void DeviceBorealisAllowedProto::SharedDtor() {
+}
+
+void DeviceBorealisAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceBorealisAllowedProto& DeviceBorealisAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceBorealisAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceBorealisAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceBorealisAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allowed_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceBorealisAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool allowed = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_allowed(&has_bits);
+          allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceBorealisAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceBorealisAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool allowed = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceBorealisAllowedProto)
+  return target;
+}
+
+size_t DeviceBorealisAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceBorealisAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool allowed = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceBorealisAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceBorealisAllowedProto*>(
+      &from));
+}
+
+void DeviceBorealisAllowedProto::MergeFrom(const DeviceBorealisAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceBorealisAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_allowed()) {
+    _internal_set_allowed(from._internal_allowed());
+  }
+}
+
+void DeviceBorealisAllowedProto::CopyFrom(const DeviceBorealisAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceBorealisAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceBorealisAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceBorealisAllowedProto::InternalSwap(DeviceBorealisAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(allowed_, other->allowed_);
+}
+
+std::string DeviceBorealisAllowedProto::GetTypeName() const {
+  return "enterprise_management.DeviceBorealisAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceAllowedBluetoothServicesProto::InitAsDefaultInstance() {
+}
+class DeviceAllowedBluetoothServicesProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAllowedBluetoothServicesProto>()._has_bits_);
+};
+
+DeviceAllowedBluetoothServicesProto::DeviceAllowedBluetoothServicesProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAllowedBluetoothServicesProto)
+}
+DeviceAllowedBluetoothServicesProto::DeviceAllowedBluetoothServicesProto(const DeviceAllowedBluetoothServicesProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      allowlist_(from.allowlist_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAllowedBluetoothServicesProto)
+}
+
+void DeviceAllowedBluetoothServicesProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceAllowedBluetoothServicesProto_chrome_5fdevice_5fpolicy_2eproto.base);
+}
+
+DeviceAllowedBluetoothServicesProto::~DeviceAllowedBluetoothServicesProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAllowedBluetoothServicesProto)
+  SharedDtor();
+}
+
+void DeviceAllowedBluetoothServicesProto::SharedDtor() {
+}
+
+void DeviceAllowedBluetoothServicesProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAllowedBluetoothServicesProto& DeviceAllowedBluetoothServicesProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAllowedBluetoothServicesProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAllowedBluetoothServicesProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAllowedBluetoothServicesProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allowlist_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAllowedBluetoothServicesProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string allowlist = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_allowlist();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAllowedBluetoothServicesProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAllowedBluetoothServicesProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string allowlist = 1;
+  for (int i = 0, n = this->_internal_allowlist_size(); i < n; i++) {
+    const auto& s = this->_internal_allowlist(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAllowedBluetoothServicesProto)
+  return target;
+}
+
+size_t DeviceAllowedBluetoothServicesProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAllowedBluetoothServicesProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string allowlist = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(allowlist_.size());
+  for (int i = 0, n = allowlist_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      allowlist_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAllowedBluetoothServicesProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAllowedBluetoothServicesProto*>(
+      &from));
+}
+
+void DeviceAllowedBluetoothServicesProto::MergeFrom(const DeviceAllowedBluetoothServicesProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAllowedBluetoothServicesProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  allowlist_.MergeFrom(from.allowlist_);
+}
+
+void DeviceAllowedBluetoothServicesProto::CopyFrom(const DeviceAllowedBluetoothServicesProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAllowedBluetoothServicesProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAllowedBluetoothServicesProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceAllowedBluetoothServicesProto::InternalSwap(DeviceAllowedBluetoothServicesProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  allowlist_.InternalSwap(&other->allowlist_);
+}
+
+std::string DeviceAllowedBluetoothServicesProto::GetTypeName() const {
+  return "enterprise_management.DeviceAllowedBluetoothServicesProto";
+}
+
+
+// ===================================================================
+
+void DeviceDebugPacketCaptureAllowedProto::InitAsDefaultInstance() {
+}
+class DeviceDebugPacketCaptureAllowedProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceDebugPacketCaptureAllowedProto>()._has_bits_);
+  static void set_has_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceDebugPacketCaptureAllowedProto::DeviceDebugPacketCaptureAllowedProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+}
+DeviceDebugPacketCaptureAllowedProto::DeviceDebugPacketCaptureAllowedProto(const DeviceDebugPacketCaptureAllowedProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  allowed_ = from.allowed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+}
+
+void DeviceDebugPacketCaptureAllowedProto::SharedCtor() {
+  allowed_ = false;
+}
+
+DeviceDebugPacketCaptureAllowedProto::~DeviceDebugPacketCaptureAllowedProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+  SharedDtor();
+}
+
+void DeviceDebugPacketCaptureAllowedProto::SharedDtor() {
+}
+
+void DeviceDebugPacketCaptureAllowedProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceDebugPacketCaptureAllowedProto& DeviceDebugPacketCaptureAllowedProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceDebugPacketCaptureAllowedProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceDebugPacketCaptureAllowedProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  allowed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceDebugPacketCaptureAllowedProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool allowed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_allowed(&has_bits);
+          allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceDebugPacketCaptureAllowedProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool allowed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_allowed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+  return target;
+}
+
+size_t DeviceDebugPacketCaptureAllowedProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool allowed = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceDebugPacketCaptureAllowedProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceDebugPacketCaptureAllowedProto*>(
+      &from));
+}
+
+void DeviceDebugPacketCaptureAllowedProto::MergeFrom(const DeviceDebugPacketCaptureAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_allowed()) {
+    _internal_set_allowed(from._internal_allowed());
+  }
+}
+
+void DeviceDebugPacketCaptureAllowedProto::CopyFrom(const DeviceDebugPacketCaptureAllowedProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceDebugPacketCaptureAllowedProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceDebugPacketCaptureAllowedProto::InternalSwap(DeviceDebugPacketCaptureAllowedProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(allowed_, other->allowed_);
+}
+
+std::string DeviceDebugPacketCaptureAllowedProto::GetTypeName() const {
+  return "enterprise_management.DeviceDebugPacketCaptureAllowedProto";
+}
+
+
+// ===================================================================
+
+void DeviceScheduledRebootProto::InitAsDefaultInstance() {
+}
+class DeviceScheduledRebootProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceScheduledRebootProto>()._has_bits_);
+  static void set_has_device_scheduled_reboot_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceScheduledRebootProto::DeviceScheduledRebootProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceScheduledRebootProto)
+}
+DeviceScheduledRebootProto::DeviceScheduledRebootProto(const DeviceScheduledRebootProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_scheduled_reboot_settings_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_scheduled_reboot_settings()) {
+    device_scheduled_reboot_settings_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_scheduled_reboot_settings_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceScheduledRebootProto)
+}
+
+void DeviceScheduledRebootProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceScheduledRebootProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  device_scheduled_reboot_settings_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceScheduledRebootProto::~DeviceScheduledRebootProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceScheduledRebootProto)
+  SharedDtor();
+}
+
+void DeviceScheduledRebootProto::SharedDtor() {
+  device_scheduled_reboot_settings_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceScheduledRebootProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceScheduledRebootProto& DeviceScheduledRebootProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceScheduledRebootProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceScheduledRebootProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceScheduledRebootProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    device_scheduled_reboot_settings_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceScheduledRebootProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_scheduled_reboot_settings = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_scheduled_reboot_settings();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceScheduledRebootProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceScheduledRebootProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_scheduled_reboot_settings = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_scheduled_reboot_settings(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceScheduledRebootProto)
+  return target;
+}
+
+size_t DeviceScheduledRebootProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceScheduledRebootProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string device_scheduled_reboot_settings = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_scheduled_reboot_settings());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceScheduledRebootProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceScheduledRebootProto*>(
+      &from));
+}
+
+void DeviceScheduledRebootProto::MergeFrom(const DeviceScheduledRebootProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceScheduledRebootProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_scheduled_reboot_settings()) {
+    _has_bits_[0] |= 0x00000001u;
+    device_scheduled_reboot_settings_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_scheduled_reboot_settings_);
+  }
+}
+
+void DeviceScheduledRebootProto::CopyFrom(const DeviceScheduledRebootProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceScheduledRebootProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceScheduledRebootProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceScheduledRebootProto::InternalSwap(DeviceScheduledRebootProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_scheduled_reboot_settings_.Swap(&other->device_scheduled_reboot_settings_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceScheduledRebootProto::GetTypeName() const {
+  return "enterprise_management.DeviceScheduledRebootProto";
+}
+
+
+// ===================================================================
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::InitAsDefaultInstance() {
+}
+class DeviceRestrictedManagedGuestSessionEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceRestrictedManagedGuestSessionEnabledProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceRestrictedManagedGuestSessionEnabledProto::DeviceRestrictedManagedGuestSessionEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+}
+DeviceRestrictedManagedGuestSessionEnabledProto::DeviceRestrictedManagedGuestSessionEnabledProto(const DeviceRestrictedManagedGuestSessionEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+}
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::SharedCtor() {
+  enabled_ = false;
+}
+
+DeviceRestrictedManagedGuestSessionEnabledProto::~DeviceRestrictedManagedGuestSessionEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+  SharedDtor();
+}
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::SharedDtor() {
+}
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceRestrictedManagedGuestSessionEnabledProto& DeviceRestrictedManagedGuestSessionEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceRestrictedManagedGuestSessionEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceRestrictedManagedGuestSessionEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceRestrictedManagedGuestSessionEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+  return target;
+}
+
+size_t DeviceRestrictedManagedGuestSessionEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceRestrictedManagedGuestSessionEnabledProto*>(
+      &from));
+}
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::MergeFrom(const DeviceRestrictedManagedGuestSessionEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::CopyFrom(const DeviceRestrictedManagedGuestSessionEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceRestrictedManagedGuestSessionEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceRestrictedManagedGuestSessionEnabledProto::InternalSwap(DeviceRestrictedManagedGuestSessionEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceRestrictedManagedGuestSessionEnabledProto::GetTypeName() const {
+  return "enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto";
+}
+
+
+// ===================================================================
+
+void DeviceI18nShortcutsEnabledProto::InitAsDefaultInstance() {
+}
+class DeviceI18nShortcutsEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceI18nShortcutsEnabledProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceI18nShortcutsEnabledProto::DeviceI18nShortcutsEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceI18nShortcutsEnabledProto)
+}
+DeviceI18nShortcutsEnabledProto::DeviceI18nShortcutsEnabledProto(const DeviceI18nShortcutsEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceI18nShortcutsEnabledProto)
+}
+
+void DeviceI18nShortcutsEnabledProto::SharedCtor() {
+  enabled_ = true;
+}
+
+DeviceI18nShortcutsEnabledProto::~DeviceI18nShortcutsEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceI18nShortcutsEnabledProto)
+  SharedDtor();
+}
+
+void DeviceI18nShortcutsEnabledProto::SharedDtor() {
+}
+
+void DeviceI18nShortcutsEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceI18nShortcutsEnabledProto& DeviceI18nShortcutsEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceI18nShortcutsEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceI18nShortcutsEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceI18nShortcutsEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceI18nShortcutsEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceI18nShortcutsEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceI18nShortcutsEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceI18nShortcutsEnabledProto)
+  return target;
+}
+
+size_t DeviceI18nShortcutsEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceI18nShortcutsEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceI18nShortcutsEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceI18nShortcutsEnabledProto*>(
+      &from));
+}
+
+void DeviceI18nShortcutsEnabledProto::MergeFrom(const DeviceI18nShortcutsEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceI18nShortcutsEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DeviceI18nShortcutsEnabledProto::CopyFrom(const DeviceI18nShortcutsEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceI18nShortcutsEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceI18nShortcutsEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceI18nShortcutsEnabledProto::InternalSwap(DeviceI18nShortcutsEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceI18nShortcutsEnabledProto::GetTypeName() const {
+  return "enterprise_management.DeviceI18nShortcutsEnabledProto";
+}
+
+
+// ===================================================================
+
+void RevenDeviceHWDataUsageEnabledProto::InitAsDefaultInstance() {
+}
+class RevenDeviceHWDataUsageEnabledProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RevenDeviceHWDataUsageEnabledProto>()._has_bits_);
+  static void set_has_hardware_data_usage_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+RevenDeviceHWDataUsageEnabledProto::RevenDeviceHWDataUsageEnabledProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+}
+RevenDeviceHWDataUsageEnabledProto::RevenDeviceHWDataUsageEnabledProto(const RevenDeviceHWDataUsageEnabledProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  hardware_data_usage_enabled_ = from.hardware_data_usage_enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+}
+
+void RevenDeviceHWDataUsageEnabledProto::SharedCtor() {
+  hardware_data_usage_enabled_ = false;
+}
+
+RevenDeviceHWDataUsageEnabledProto::~RevenDeviceHWDataUsageEnabledProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+  SharedDtor();
+}
+
+void RevenDeviceHWDataUsageEnabledProto::SharedDtor() {
+}
+
+void RevenDeviceHWDataUsageEnabledProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RevenDeviceHWDataUsageEnabledProto& RevenDeviceHWDataUsageEnabledProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RevenDeviceHWDataUsageEnabledProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RevenDeviceHWDataUsageEnabledProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  hardware_data_usage_enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RevenDeviceHWDataUsageEnabledProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool hardware_data_usage_enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_hardware_data_usage_enabled(&has_bits);
+          hardware_data_usage_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RevenDeviceHWDataUsageEnabledProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool hardware_data_usage_enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_hardware_data_usage_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+  return target;
+}
+
+size_t RevenDeviceHWDataUsageEnabledProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool hardware_data_usage_enabled = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RevenDeviceHWDataUsageEnabledProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RevenDeviceHWDataUsageEnabledProto*>(
+      &from));
+}
+
+void RevenDeviceHWDataUsageEnabledProto::MergeFrom(const RevenDeviceHWDataUsageEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_hardware_data_usage_enabled()) {
+    _internal_set_hardware_data_usage_enabled(from._internal_hardware_data_usage_enabled());
+  }
+}
+
+void RevenDeviceHWDataUsageEnabledProto::CopyFrom(const RevenDeviceHWDataUsageEnabledProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RevenDeviceHWDataUsageEnabledProto::IsInitialized() const {
+  return true;
+}
+
+void RevenDeviceHWDataUsageEnabledProto::InternalSwap(RevenDeviceHWDataUsageEnabledProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(hardware_data_usage_enabled_, other->hardware_data_usage_enabled_);
+}
+
+std::string RevenDeviceHWDataUsageEnabledProto::GetTypeName() const {
+  return "enterprise_management.RevenDeviceHWDataUsageEnabledProto";
+}
+
+
+// ===================================================================
+
+void DeviceLoginScreenWebUILazyLoadingProto::InitAsDefaultInstance() {
+}
+class DeviceLoginScreenWebUILazyLoadingProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceLoginScreenWebUILazyLoadingProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceLoginScreenWebUILazyLoadingProto::DeviceLoginScreenWebUILazyLoadingProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+}
+DeviceLoginScreenWebUILazyLoadingProto::DeviceLoginScreenWebUILazyLoadingProto(const DeviceLoginScreenWebUILazyLoadingProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+}
+
+void DeviceLoginScreenWebUILazyLoadingProto::SharedCtor() {
+  enabled_ = false;
+}
+
+DeviceLoginScreenWebUILazyLoadingProto::~DeviceLoginScreenWebUILazyLoadingProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+  SharedDtor();
+}
+
+void DeviceLoginScreenWebUILazyLoadingProto::SharedDtor() {
+}
+
+void DeviceLoginScreenWebUILazyLoadingProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceLoginScreenWebUILazyLoadingProto& DeviceLoginScreenWebUILazyLoadingProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceLoginScreenWebUILazyLoadingProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceLoginScreenWebUILazyLoadingProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceLoginScreenWebUILazyLoadingProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = false];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceLoginScreenWebUILazyLoadingProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = false];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+  return target;
+}
+
+size_t DeviceLoginScreenWebUILazyLoadingProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1 [default = false];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceLoginScreenWebUILazyLoadingProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceLoginScreenWebUILazyLoadingProto*>(
+      &from));
+}
+
+void DeviceLoginScreenWebUILazyLoadingProto::MergeFrom(const DeviceLoginScreenWebUILazyLoadingProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void DeviceLoginScreenWebUILazyLoadingProto::CopyFrom(const DeviceLoginScreenWebUILazyLoadingProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceLoginScreenWebUILazyLoadingProto::IsInitialized() const {
+  return true;
+}
+
+void DeviceLoginScreenWebUILazyLoadingProto::InternalSwap(DeviceLoginScreenWebUILazyLoadingProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string DeviceLoginScreenWebUILazyLoadingProto::GetTypeName() const {
+  return "enterprise_management.DeviceLoginScreenWebUILazyLoadingProto";
+}
+
+
+// ===================================================================
+
+void EncryptedReportingPipelineConfigurationProto::InitAsDefaultInstance() {
+}
+class EncryptedReportingPipelineConfigurationProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<EncryptedReportingPipelineConfigurationProto>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+EncryptedReportingPipelineConfigurationProto::EncryptedReportingPipelineConfigurationProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+}
+EncryptedReportingPipelineConfigurationProto::EncryptedReportingPipelineConfigurationProto(const EncryptedReportingPipelineConfigurationProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enabled_ = from.enabled_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+}
+
+void EncryptedReportingPipelineConfigurationProto::SharedCtor() {
+  enabled_ = true;
+}
+
+EncryptedReportingPipelineConfigurationProto::~EncryptedReportingPipelineConfigurationProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+  SharedDtor();
+}
+
+void EncryptedReportingPipelineConfigurationProto::SharedDtor() {
+}
+
+void EncryptedReportingPipelineConfigurationProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const EncryptedReportingPipelineConfigurationProto& EncryptedReportingPipelineConfigurationProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_EncryptedReportingPipelineConfigurationProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void EncryptedReportingPipelineConfigurationProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enabled_ = true;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* EncryptedReportingPipelineConfigurationProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1 [default = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* EncryptedReportingPipelineConfigurationProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1 [default = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+  return target;
+}
+
+size_t EncryptedReportingPipelineConfigurationProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enabled = 1 [default = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void EncryptedReportingPipelineConfigurationProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const EncryptedReportingPipelineConfigurationProto*>(
+      &from));
+}
+
+void EncryptedReportingPipelineConfigurationProto::MergeFrom(const EncryptedReportingPipelineConfigurationProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enabled()) {
+    _internal_set_enabled(from._internal_enabled());
+  }
+}
+
+void EncryptedReportingPipelineConfigurationProto::CopyFrom(const EncryptedReportingPipelineConfigurationProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool EncryptedReportingPipelineConfigurationProto::IsInitialized() const {
+  return true;
+}
+
+void EncryptedReportingPipelineConfigurationProto::InternalSwap(EncryptedReportingPipelineConfigurationProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enabled_, other->enabled_);
+}
+
+std::string EncryptedReportingPipelineConfigurationProto::GetTypeName() const {
+  return "enterprise_management.EncryptedReportingPipelineConfigurationProto";
+}
+
+
+// ===================================================================
+
+void ChromeDeviceSettingsProto::InitAsDefaultInstance() {
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_policy_refresh_rate_ = const_cast< ::enterprise_management::DevicePolicyRefreshRateProto*>(
+      ::enterprise_management::DevicePolicyRefreshRateProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->user_whitelist_ = const_cast< ::enterprise_management::UserWhitelistProto*>(
+      ::enterprise_management::UserWhitelistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->guest_mode_enabled_ = const_cast< ::enterprise_management::GuestModeEnabledProto*>(
+      ::enterprise_management::GuestModeEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_proxy_settings_ = const_cast< ::enterprise_management::OBSOLETE_DeviceProxySettingsProto*>(
+      ::enterprise_management::OBSOLETE_DeviceProxySettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->camera_enabled_ = const_cast< ::enterprise_management::CameraEnabledProto*>(
+      ::enterprise_management::CameraEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->show_user_names_ = const_cast< ::enterprise_management::ShowUserNamesOnSigninProto*>(
+      ::enterprise_management::ShowUserNamesOnSigninProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->data_roaming_enabled_ = const_cast< ::enterprise_management::DataRoamingEnabledProto*>(
+      ::enterprise_management::DataRoamingEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->allow_new_users_ = const_cast< ::enterprise_management::AllowNewUsersProto*>(
+      ::enterprise_management::AllowNewUsersProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->metrics_enabled_ = const_cast< ::enterprise_management::MetricsEnabledProto*>(
+      ::enterprise_management::MetricsEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->release_channel_ = const_cast< ::enterprise_management::ReleaseChannelProto*>(
+      ::enterprise_management::ReleaseChannelProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->open_network_configuration_ = const_cast< ::enterprise_management::DeviceOpenNetworkConfigurationProto*>(
+      ::enterprise_management::DeviceOpenNetworkConfigurationProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_reporting_ = const_cast< ::enterprise_management::DeviceReportingProto*>(
+      ::enterprise_management::DeviceReportingProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->ephemeral_users_enabled_ = const_cast< ::enterprise_management::EphemeralUsersEnabledProto*>(
+      ::enterprise_management::EphemeralUsersEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->app_pack_ = const_cast< ::enterprise_management::OBSOLETE_AppPackProto*>(
+      ::enterprise_management::OBSOLETE_AppPackProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->forced_logout_timeouts_ = const_cast< ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto*>(
+      ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_screen_saver_ = const_cast< ::enterprise_management::OBSOLETE_ScreenSaverProto*>(
+      ::enterprise_management::OBSOLETE_ScreenSaverProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->auto_update_settings_ = const_cast< ::enterprise_management::AutoUpdateSettingsProto*>(
+      ::enterprise_management::AutoUpdateSettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->start_up_urls_ = const_cast< ::enterprise_management::OBSOLETE_StartUpUrlsProto*>(
+      ::enterprise_management::OBSOLETE_StartUpUrlsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->pinned_apps_ = const_cast< ::enterprise_management::OBSOLETE_PinnedAppsProto*>(
+      ::enterprise_management::OBSOLETE_PinnedAppsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->system_timezone_ = const_cast< ::enterprise_management::SystemTimezoneProto*>(
+      ::enterprise_management::SystemTimezoneProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_local_accounts_ = const_cast< ::enterprise_management::DeviceLocalAccountsProto*>(
+      ::enterprise_management::DeviceLocalAccountsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->allow_redeem_offers_ = const_cast< ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto*>(
+      ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->feature_flags_ = const_cast< ::enterprise_management::FeatureFlagsProto*>(
+      ::enterprise_management::FeatureFlagsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->uptime_limit_ = const_cast< ::enterprise_management::UptimeLimitProto*>(
+      ::enterprise_management::UptimeLimitProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->variations_parameter_ = const_cast< ::enterprise_management::VariationsParameterProto*>(
+      ::enterprise_management::VariationsParameterProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->attestation_settings_ = const_cast< ::enterprise_management::AttestationSettingsProto*>(
+      ::enterprise_management::AttestationSettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->accessibility_settings_ = const_cast< ::enterprise_management::AccessibilitySettingsProto*>(
+      ::enterprise_management::AccessibilitySettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->supervised_users_settings_ = const_cast< ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto*>(
+      ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_screen_power_management_ = const_cast< ::enterprise_management::LoginScreenPowerManagementProto*>(
+      ::enterprise_management::LoginScreenPowerManagementProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->use_24hour_clock_ = const_cast< ::enterprise_management::SystemUse24HourClockProto*>(
+      ::enterprise_management::SystemUse24HourClockProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->auto_clean_up_settings_ = const_cast< ::enterprise_management::AutoCleanupSettigsProto*>(
+      ::enterprise_management::AutoCleanupSettigsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->system_settings_ = const_cast< ::enterprise_management::SystemSettingsProto*>(
+      ::enterprise_management::SystemSettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->saml_settings_ = const_cast< ::enterprise_management::SAMLSettingsProto*>(
+      ::enterprise_management::SAMLSettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->reboot_on_shutdown_ = const_cast< ::enterprise_management::RebootOnShutdownProto*>(
+      ::enterprise_management::RebootOnShutdownProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_heartbeat_settings_ = const_cast< ::enterprise_management::DeviceHeartbeatSettingsProto*>(
+      ::enterprise_management::DeviceHeartbeatSettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->extension_cache_size_ = const_cast< ::enterprise_management::ExtensionCacheSizeProto*>(
+      ::enterprise_management::ExtensionCacheSizeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_screen_domain_auto_complete_ = const_cast< ::enterprise_management::LoginScreenDomainAutoCompleteProto*>(
+      ::enterprise_management::LoginScreenDomainAutoCompleteProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_log_upload_settings_ = const_cast< ::enterprise_management::DeviceLogUploadSettingsProto*>(
+      ::enterprise_management::DeviceLogUploadSettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->display_rotation_default_ = const_cast< ::enterprise_management::DisplayRotationDefaultProto*>(
+      ::enterprise_management::DisplayRotationDefaultProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->allow_kiosk_app_control_chrome_version_ = const_cast< ::enterprise_management::AllowKioskAppControlChromeVersionProto*>(
+      ::enterprise_management::AllowKioskAppControlChromeVersionProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_authentication_behavior_ = const_cast< ::enterprise_management::LoginAuthenticationBehaviorProto*>(
+      ::enterprise_management::LoginAuthenticationBehaviorProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->usb_detachable_whitelist_ = const_cast< ::enterprise_management::UsbDetachableWhitelistProto*>(
+      ::enterprise_management::UsbDetachableWhitelistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->allow_bluetooth_ = const_cast< ::enterprise_management::AllowBluetoothProto*>(
+      ::enterprise_management::AllowBluetoothProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->quirks_download_enabled_ = const_cast< ::enterprise_management::DeviceQuirksDownloadEnabledProto*>(
+      ::enterprise_management::DeviceQuirksDownloadEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_video_capture_allowed_urls_ = const_cast< ::enterprise_management::LoginVideoCaptureAllowedUrlsProto*>(
+      ::enterprise_management::LoginVideoCaptureAllowedUrlsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_login_screen_extensions_ = const_cast< ::enterprise_management::DeviceLoginScreenExtensionsProto*>(
+      ::enterprise_management::DeviceLoginScreenExtensionsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->network_throttling_ = const_cast< ::enterprise_management::NetworkThrottlingEnabledProto*>(
+      ::enterprise_management::NetworkThrottlingEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_wallpaper_image_ = const_cast< ::enterprise_management::DeviceWallpaperImageProto*>(
+      ::enterprise_management::DeviceWallpaperImageProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_screen_locales_ = const_cast< ::enterprise_management::LoginScreenLocalesProto*>(
+      ::enterprise_management::LoginScreenLocalesProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_screen_input_methods_ = const_cast< ::enterprise_management::LoginScreenInputMethodsProto*>(
+      ::enterprise_management::LoginScreenInputMethodsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_ecryptfs_migration_strategy_ = const_cast< ::enterprise_management::DeviceEcryptfsMigrationStrategyProto*>(
+      ::enterprise_management::DeviceEcryptfsMigrationStrategyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_second_factor_authentication_ = const_cast< ::enterprise_management::DeviceSecondFactorAuthenticationProto*>(
+      ::enterprise_management::DeviceSecondFactorAuthenticationProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->cast_receiver_name_ = const_cast< ::enterprise_management::CastReceiverNameProto*>(
+      ::enterprise_management::CastReceiverNameProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_off_hours_ = const_cast< ::enterprise_management::DeviceOffHoursProto*>(
+      ::enterprise_management::DeviceOffHoursProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->native_device_printers_ = const_cast< ::enterprise_management::DeviceNativePrintersProto*>(
+      ::enterprise_management::DeviceNativePrintersProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->native_device_printers_access_mode_ = const_cast< ::enterprise_management::DeviceNativePrintersAccessModeProto*>(
+      ::enterprise_management::DeviceNativePrintersAccessModeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->native_device_printers_blacklist_ = const_cast< ::enterprise_management::DeviceNativePrintersBlacklistProto*>(
+      ::enterprise_management::DeviceNativePrintersBlacklistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->native_device_printers_whitelist_ = const_cast< ::enterprise_management::DeviceNativePrintersWhitelistProto*>(
+      ::enterprise_management::DeviceNativePrintersWhitelistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->tpm_firmware_update_settings_ = const_cast< ::enterprise_management::TPMFirmwareUpdateSettingsProto*>(
+      ::enterprise_management::TPMFirmwareUpdateSettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->minimum_required_version_ = const_cast< ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto*>(
+      ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_login_screen_auto_select_certificate_for_urls_ = const_cast< ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls*>(
+      ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->unaffiliated_arc_allowed_ = const_cast< ::enterprise_management::UnaffiliatedArcAllowedProto*>(
+      ::enterprise_management::UnaffiliatedArcAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->network_hostname_ = const_cast< ::enterprise_management::NetworkHostnameProto*>(
+      ::enterprise_management::NetworkHostnameProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_kerberos_encryption_types_ = const_cast< ::enterprise_management::DeviceKerberosEncryptionTypesProto*>(
+      ::enterprise_management::DeviceKerberosEncryptionTypesProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_user_policy_loopback_processing_mode_ = const_cast< ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto*>(
+      ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_login_screen_isolate_origins_ = const_cast< ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto*>(
+      ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_login_screen_site_per_process_ = const_cast< ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto*>(
+      ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->virtual_machines_allowed_ = const_cast< ::enterprise_management::VirtualMachinesAllowedProto*>(
+      ::enterprise_management::VirtualMachinesAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_machine_password_change_rate_ = const_cast< ::enterprise_management::DeviceMachinePasswordChangeRateProto*>(
+      ::enterprise_management::DeviceMachinePasswordChangeRateProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->saml_login_authentication_type_ = const_cast< ::enterprise_management::SamlLoginAuthenticationTypeProto*>(
+      ::enterprise_management::SamlLoginAuthenticationTypeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_unaffiliated_crostini_allowed_ = const_cast< ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto*>(
+      ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_wifi_fast_transition_enabled_ = const_cast< ::enterprise_management::DeviceWiFiFastTransitionEnabledProto*>(
+      ::enterprise_management::DeviceWiFiFastTransitionEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_display_resolution_ = const_cast< ::enterprise_management::DeviceDisplayResolutionProto*>(
+      ::enterprise_management::DeviceDisplayResolutionProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->plugin_vm_allowed_ = const_cast< ::enterprise_management::PluginVmAllowedProto*>(
+      ::enterprise_management::PluginVmAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_gpo_cache_lifetime_ = const_cast< ::enterprise_management::DeviceGpoCacheLifetimeProto*>(
+      ::enterprise_management::DeviceGpoCacheLifetimeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_auth_data_cache_lifetime_ = const_cast< ::enterprise_management::DeviceAuthDataCacheLifetimeProto*>(
+      ::enterprise_management::DeviceAuthDataCacheLifetimeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->plugin_vm_license_key_ = const_cast< ::enterprise_management::PluginVmLicenseKeyProto*>(
+      ::enterprise_management::PluginVmLicenseKeyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_reboot_on_user_signout_ = const_cast< ::enterprise_management::DeviceRebootOnUserSignoutProto*>(
+      ::enterprise_management::DeviceRebootOnUserSignoutProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_wilco_dtc_allowed_ = const_cast< ::enterprise_management::DeviceWilcoDtcAllowedProto*>(
+      ::enterprise_management::DeviceWilcoDtcAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_wilco_dtc_configuration_ = const_cast< ::enterprise_management::DeviceWilcoDtcConfigurationProto*>(
+      ::enterprise_management::DeviceWilcoDtcConfigurationProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_wifi_allowed_ = const_cast< ::enterprise_management::DeviceWiFiAllowedProto*>(
+      ::enterprise_management::DeviceWiFiAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_power_peak_shift_ = const_cast< ::enterprise_management::DevicePowerPeakShiftProto*>(
+      ::enterprise_management::DevicePowerPeakShiftProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_boot_on_ac_ = const_cast< ::enterprise_management::DeviceBootOnAcProto*>(
+      ::enterprise_management::DeviceBootOnAcProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_dock_mac_address_source_ = const_cast< ::enterprise_management::DeviceDockMacAddressSourceProto*>(
+      ::enterprise_management::DeviceDockMacAddressSourceProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_advanced_battery_charge_mode_ = const_cast< ::enterprise_management::DeviceAdvancedBatteryChargeModeProto*>(
+      ::enterprise_management::DeviceAdvancedBatteryChargeModeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_battery_charge_mode_ = const_cast< ::enterprise_management::DeviceBatteryChargeModeProto*>(
+      ::enterprise_management::DeviceBatteryChargeModeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_usb_power_share_ = const_cast< ::enterprise_management::DeviceUsbPowerShareProto*>(
+      ::enterprise_management::DeviceUsbPowerShareProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_scheduled_update_check_ = const_cast< ::enterprise_management::DeviceScheduledUpdateCheckProto*>(
+      ::enterprise_management::DeviceScheduledUpdateCheckProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_powerwash_allowed_ = const_cast< ::enterprise_management::DevicePowerwashAllowedProto*>(
+      ::enterprise_management::DevicePowerwashAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_login_screen_webusb_allow_devices_for_urls_ = const_cast< ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto*>(
+      ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_login_screen_system_info_enforced_ = const_cast< ::enterprise_management::BooleanPolicyProto*>(
+      ::enterprise_management::BooleanPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_web_based_attestation_allowed_urls_ = const_cast< ::enterprise_management::StringListPolicyProto*>(
+      ::enterprise_management::StringListPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_show_numeric_keyboard_for_password_ = const_cast< ::enterprise_management::BooleanPolicyProto*>(
+      ::enterprise_management::BooleanPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_screen_primary_mouse_button_switch_ = const_cast< ::enterprise_management::BooleanPolicyProto*>(
+      ::enterprise_management::BooleanPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_minimum_version_ = const_cast< ::enterprise_management::StringPolicyProto*>(
+      ::enterprise_management::StringPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->system_proxy_settings_ = const_cast< ::enterprise_management::SystemProxySettingsProto*>(
+      ::enterprise_management::SystemProxySettingsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_chrome_variations_type_ = const_cast< ::enterprise_management::IntegerPolicyProto*>(
+      ::enterprise_management::IntegerPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_login_screen_privacy_screen_enabled_ = const_cast< ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto*>(
+      ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->required_client_certificate_for_device_ = const_cast< ::enterprise_management::RequiredClientCertificateForDeviceProto*>(
+      ::enterprise_management::RequiredClientCertificateForDeviceProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_crostini_arc_adb_sideloading_allowed_ = const_cast< ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto*>(
+      ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_minimum_version_aue_message_ = const_cast< ::enterprise_management::StringPolicyProto*>(
+      ::enterprise_management::StringPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->managed_guest_session_privacy_warnings_ = const_cast< ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto*>(
+      ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->external_print_servers_ = const_cast< ::enterprise_management::DeviceExternalPrintServersProto*>(
+      ::enterprise_management::DeviceExternalPrintServersProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->external_print_servers_allowlist_ = const_cast< ::enterprise_management::DeviceExternalPrintServersAllowlistProto*>(
+      ::enterprise_management::DeviceExternalPrintServersAllowlistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_printers_access_mode_ = const_cast< ::enterprise_management::DevicePrintersAccessModeProto*>(
+      ::enterprise_management::DevicePrintersAccessModeProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_printers_blocklist_ = const_cast< ::enterprise_management::DevicePrintersBlocklistProto*>(
+      ::enterprise_management::DevicePrintersBlocklistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_printers_allowlist_ = const_cast< ::enterprise_management::DevicePrintersAllowlistProto*>(
+      ::enterprise_management::DevicePrintersAllowlistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_printers_ = const_cast< ::enterprise_management::DevicePrintersProto*>(
+      ::enterprise_management::DevicePrintersProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_show_low_disk_space_notification_ = const_cast< ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto*>(
+      ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->user_allowlist_ = const_cast< ::enterprise_management::UserAllowlistProto*>(
+      ::enterprise_management::UserAllowlistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->usb_detachable_allowlist_ = const_cast< ::enterprise_management::UsbDetachableAllowlistProto*>(
+      ::enterprise_management::UsbDetachableAllowlistProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->family_link_accounts_allowed_ = const_cast< ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto*>(
+      ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->arc_data_snapshot_hours_ = const_cast< ::enterprise_management::DeviceArcDataSnapshotHoursProto*>(
+      ::enterprise_management::DeviceArcDataSnapshotHoursProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_allow_mgs_to_store_display_properties_ = const_cast< ::enterprise_management::BooleanPolicyProto*>(
+      ::enterprise_management::BooleanPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_system_wide_tracing_enabled_ = const_cast< ::enterprise_management::DeviceSystemWideTracingEnabledProto*>(
+      ::enterprise_management::DeviceSystemWideTracingEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_pci_peripheral_data_access_enabled_ = const_cast< ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto*>(
+      ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_borealis_allowed_ = const_cast< ::enterprise_management::DeviceBorealisAllowedProto*>(
+      ::enterprise_management::DeviceBorealisAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_allowed_bluetooth_services_ = const_cast< ::enterprise_management::DeviceAllowedBluetoothServicesProto*>(
+      ::enterprise_management::DeviceAllowedBluetoothServicesProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_debug_packet_capture_allowed_ = const_cast< ::enterprise_management::DeviceDebugPacketCaptureAllowedProto*>(
+      ::enterprise_management::DeviceDebugPacketCaptureAllowedProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_scheduled_reboot_ = const_cast< ::enterprise_management::DeviceScheduledRebootProto*>(
+      ::enterprise_management::DeviceScheduledRebootProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_pci_peripheral_data_access_enabled_v2_ = const_cast< ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2*>(
+      ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_restricted_managed_guest_session_enabled_ = const_cast< ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto*>(
+      ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->hostname_user_configurable_ = const_cast< ::enterprise_management::HostnameUserConfigurableProto*>(
+      ::enterprise_management::HostnameUserConfigurableProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_screen_prompt_on_multiple_matching_certificates_ = const_cast< ::enterprise_management::BooleanPolicyProto*>(
+      ::enterprise_management::BooleanPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->kiosk_crx_manifest_update_url_ignored_ = const_cast< ::enterprise_management::BooleanPolicyProto*>(
+      ::enterprise_management::BooleanPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_i18n_shortcuts_enabled_ = const_cast< ::enterprise_management::DeviceI18nShortcutsEnabledProto*>(
+      ::enterprise_management::DeviceI18nShortcutsEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->chromad_to_cloud_migration_enabled_ = const_cast< ::enterprise_management::BooleanPolicyProto*>(
+      ::enterprise_management::BooleanPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->hardware_data_usage_enabled_ = const_cast< ::enterprise_management::RevenDeviceHWDataUsageEnabledProto*>(
+      ::enterprise_management::RevenDeviceHWDataUsageEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->login_web_ui_lazy_loading_ = const_cast< ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto*>(
+      ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->keylocker_for_storage_encryption_enabled_ = const_cast< ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto*>(
+      ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_run_automatic_cleanup_on_login_ = const_cast< ::enterprise_management::BooleanPolicyProto*>(
+      ::enterprise_management::BooleanPolicyProto::internal_default_instance());
+  ::enterprise_management::_ChromeDeviceSettingsProto_default_instance_._instance.get_mutable()->device_encrypted_reporting_pipeline_enabled_ = const_cast< ::enterprise_management::EncryptedReportingPipelineConfigurationProto*>(
+      ::enterprise_management::EncryptedReportingPipelineConfigurationProto::internal_default_instance());
+}
+class ChromeDeviceSettingsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeDeviceSettingsProto>()._has_bits_);
+  static const ::enterprise_management::DevicePolicyRefreshRateProto& device_policy_refresh_rate(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_policy_refresh_rate(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::UserWhitelistProto& user_whitelist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_user_whitelist(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::enterprise_management::GuestModeEnabledProto& guest_mode_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_guest_mode_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::OBSOLETE_DeviceProxySettingsProto& device_proxy_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_proxy_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::enterprise_management::CameraEnabledProto& camera_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_camera_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static const ::enterprise_management::ShowUserNamesOnSigninProto& show_user_names(const ChromeDeviceSettingsProto* msg);
+  static void set_has_show_user_names(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::enterprise_management::DataRoamingEnabledProto& data_roaming_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_data_roaming_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static const ::enterprise_management::AllowNewUsersProto& allow_new_users(const ChromeDeviceSettingsProto* msg);
+  static void set_has_allow_new_users(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static const ::enterprise_management::MetricsEnabledProto& metrics_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_metrics_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static const ::enterprise_management::ReleaseChannelProto& release_channel(const ChromeDeviceSettingsProto* msg);
+  static void set_has_release_channel(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static const ::enterprise_management::DeviceOpenNetworkConfigurationProto& open_network_configuration(const ChromeDeviceSettingsProto* msg);
+  static void set_has_open_network_configuration(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static const ::enterprise_management::DeviceReportingProto& device_reporting(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_reporting(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static const ::enterprise_management::EphemeralUsersEnabledProto& ephemeral_users_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_ephemeral_users_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static const ::enterprise_management::OBSOLETE_AppPackProto& app_pack(const ChromeDeviceSettingsProto* msg);
+  static void set_has_app_pack(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static const ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto& forced_logout_timeouts(const ChromeDeviceSettingsProto* msg);
+  static void set_has_forced_logout_timeouts(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static const ::enterprise_management::OBSOLETE_ScreenSaverProto& login_screen_saver(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_screen_saver(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static const ::enterprise_management::AutoUpdateSettingsProto& auto_update_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_auto_update_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static const ::enterprise_management::OBSOLETE_StartUpUrlsProto& start_up_urls(const ChromeDeviceSettingsProto* msg);
+  static void set_has_start_up_urls(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static const ::enterprise_management::OBSOLETE_PinnedAppsProto& pinned_apps(const ChromeDeviceSettingsProto* msg);
+  static void set_has_pinned_apps(HasBits* has_bits) {
+    (*has_bits)[0] |= 262144u;
+  }
+  static const ::enterprise_management::SystemTimezoneProto& system_timezone(const ChromeDeviceSettingsProto* msg);
+  static void set_has_system_timezone(HasBits* has_bits) {
+    (*has_bits)[0] |= 524288u;
+  }
+  static const ::enterprise_management::DeviceLocalAccountsProto& device_local_accounts(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_local_accounts(HasBits* has_bits) {
+    (*has_bits)[0] |= 1048576u;
+  }
+  static const ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto& allow_redeem_offers(const ChromeDeviceSettingsProto* msg);
+  static void set_has_allow_redeem_offers(HasBits* has_bits) {
+    (*has_bits)[0] |= 2097152u;
+  }
+  static const ::enterprise_management::FeatureFlagsProto& feature_flags(const ChromeDeviceSettingsProto* msg);
+  static void set_has_feature_flags(HasBits* has_bits) {
+    (*has_bits)[0] |= 4194304u;
+  }
+  static const ::enterprise_management::UptimeLimitProto& uptime_limit(const ChromeDeviceSettingsProto* msg);
+  static void set_has_uptime_limit(HasBits* has_bits) {
+    (*has_bits)[0] |= 8388608u;
+  }
+  static const ::enterprise_management::VariationsParameterProto& variations_parameter(const ChromeDeviceSettingsProto* msg);
+  static void set_has_variations_parameter(HasBits* has_bits) {
+    (*has_bits)[0] |= 16777216u;
+  }
+  static const ::enterprise_management::AttestationSettingsProto& attestation_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_attestation_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 33554432u;
+  }
+  static const ::enterprise_management::AccessibilitySettingsProto& accessibility_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_accessibility_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 67108864u;
+  }
+  static const ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto& supervised_users_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_supervised_users_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 134217728u;
+  }
+  static const ::enterprise_management::LoginScreenPowerManagementProto& login_screen_power_management(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_screen_power_management(HasBits* has_bits) {
+    (*has_bits)[0] |= 268435456u;
+  }
+  static const ::enterprise_management::SystemUse24HourClockProto& use_24hour_clock(const ChromeDeviceSettingsProto* msg);
+  static void set_has_use_24hour_clock(HasBits* has_bits) {
+    (*has_bits)[0] |= 536870912u;
+  }
+  static const ::enterprise_management::AutoCleanupSettigsProto& auto_clean_up_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_auto_clean_up_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 1073741824u;
+  }
+  static const ::enterprise_management::SystemSettingsProto& system_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_system_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 2147483648u;
+  }
+  static const ::enterprise_management::SAMLSettingsProto& saml_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_saml_settings(HasBits* has_bits) {
+    (*has_bits)[1] |= 1u;
+  }
+  static const ::enterprise_management::RebootOnShutdownProto& reboot_on_shutdown(const ChromeDeviceSettingsProto* msg);
+  static void set_has_reboot_on_shutdown(HasBits* has_bits) {
+    (*has_bits)[1] |= 2u;
+  }
+  static const ::enterprise_management::DeviceHeartbeatSettingsProto& device_heartbeat_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_heartbeat_settings(HasBits* has_bits) {
+    (*has_bits)[1] |= 4u;
+  }
+  static const ::enterprise_management::ExtensionCacheSizeProto& extension_cache_size(const ChromeDeviceSettingsProto* msg);
+  static void set_has_extension_cache_size(HasBits* has_bits) {
+    (*has_bits)[1] |= 8u;
+  }
+  static const ::enterprise_management::LoginScreenDomainAutoCompleteProto& login_screen_domain_auto_complete(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_screen_domain_auto_complete(HasBits* has_bits) {
+    (*has_bits)[1] |= 16u;
+  }
+  static const ::enterprise_management::DeviceLogUploadSettingsProto& device_log_upload_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_log_upload_settings(HasBits* has_bits) {
+    (*has_bits)[1] |= 32u;
+  }
+  static const ::enterprise_management::DisplayRotationDefaultProto& display_rotation_default(const ChromeDeviceSettingsProto* msg);
+  static void set_has_display_rotation_default(HasBits* has_bits) {
+    (*has_bits)[1] |= 64u;
+  }
+  static const ::enterprise_management::AllowKioskAppControlChromeVersionProto& allow_kiosk_app_control_chrome_version(const ChromeDeviceSettingsProto* msg);
+  static void set_has_allow_kiosk_app_control_chrome_version(HasBits* has_bits) {
+    (*has_bits)[1] |= 128u;
+  }
+  static const ::enterprise_management::LoginAuthenticationBehaviorProto& login_authentication_behavior(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_authentication_behavior(HasBits* has_bits) {
+    (*has_bits)[1] |= 256u;
+  }
+  static const ::enterprise_management::UsbDetachableWhitelistProto& usb_detachable_whitelist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_usb_detachable_whitelist(HasBits* has_bits) {
+    (*has_bits)[1] |= 512u;
+  }
+  static const ::enterprise_management::AllowBluetoothProto& allow_bluetooth(const ChromeDeviceSettingsProto* msg);
+  static void set_has_allow_bluetooth(HasBits* has_bits) {
+    (*has_bits)[1] |= 1024u;
+  }
+  static const ::enterprise_management::DeviceQuirksDownloadEnabledProto& quirks_download_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_quirks_download_enabled(HasBits* has_bits) {
+    (*has_bits)[1] |= 2048u;
+  }
+  static const ::enterprise_management::LoginVideoCaptureAllowedUrlsProto& login_video_capture_allowed_urls(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_video_capture_allowed_urls(HasBits* has_bits) {
+    (*has_bits)[1] |= 4096u;
+  }
+  static const ::enterprise_management::DeviceLoginScreenExtensionsProto& device_login_screen_extensions(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_login_screen_extensions(HasBits* has_bits) {
+    (*has_bits)[1] |= 8192u;
+  }
+  static const ::enterprise_management::NetworkThrottlingEnabledProto& network_throttling(const ChromeDeviceSettingsProto* msg);
+  static void set_has_network_throttling(HasBits* has_bits) {
+    (*has_bits)[1] |= 16384u;
+  }
+  static const ::enterprise_management::DeviceWallpaperImageProto& device_wallpaper_image(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_wallpaper_image(HasBits* has_bits) {
+    (*has_bits)[1] |= 32768u;
+  }
+  static const ::enterprise_management::LoginScreenLocalesProto& login_screen_locales(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_screen_locales(HasBits* has_bits) {
+    (*has_bits)[1] |= 65536u;
+  }
+  static const ::enterprise_management::LoginScreenInputMethodsProto& login_screen_input_methods(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_screen_input_methods(HasBits* has_bits) {
+    (*has_bits)[1] |= 131072u;
+  }
+  static const ::enterprise_management::DeviceEcryptfsMigrationStrategyProto& device_ecryptfs_migration_strategy(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_ecryptfs_migration_strategy(HasBits* has_bits) {
+    (*has_bits)[1] |= 262144u;
+  }
+  static const ::enterprise_management::DeviceSecondFactorAuthenticationProto& device_second_factor_authentication(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_second_factor_authentication(HasBits* has_bits) {
+    (*has_bits)[1] |= 524288u;
+  }
+  static const ::enterprise_management::CastReceiverNameProto& cast_receiver_name(const ChromeDeviceSettingsProto* msg);
+  static void set_has_cast_receiver_name(HasBits* has_bits) {
+    (*has_bits)[1] |= 1048576u;
+  }
+  static const ::enterprise_management::DeviceOffHoursProto& device_off_hours(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_off_hours(HasBits* has_bits) {
+    (*has_bits)[1] |= 2097152u;
+  }
+  static const ::enterprise_management::DeviceNativePrintersProto& native_device_printers(const ChromeDeviceSettingsProto* msg);
+  static void set_has_native_device_printers(HasBits* has_bits) {
+    (*has_bits)[1] |= 4194304u;
+  }
+  static const ::enterprise_management::DeviceNativePrintersAccessModeProto& native_device_printers_access_mode(const ChromeDeviceSettingsProto* msg);
+  static void set_has_native_device_printers_access_mode(HasBits* has_bits) {
+    (*has_bits)[1] |= 8388608u;
+  }
+  static const ::enterprise_management::DeviceNativePrintersBlacklistProto& native_device_printers_blacklist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_native_device_printers_blacklist(HasBits* has_bits) {
+    (*has_bits)[1] |= 16777216u;
+  }
+  static const ::enterprise_management::DeviceNativePrintersWhitelistProto& native_device_printers_whitelist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_native_device_printers_whitelist(HasBits* has_bits) {
+    (*has_bits)[1] |= 33554432u;
+  }
+  static const ::enterprise_management::TPMFirmwareUpdateSettingsProto& tpm_firmware_update_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_tpm_firmware_update_settings(HasBits* has_bits) {
+    (*has_bits)[1] |= 67108864u;
+  }
+  static const ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto& minimum_required_version(const ChromeDeviceSettingsProto* msg);
+  static void set_has_minimum_required_version(HasBits* has_bits) {
+    (*has_bits)[1] |= 134217728u;
+  }
+  static const ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls& device_login_screen_auto_select_certificate_for_urls(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_login_screen_auto_select_certificate_for_urls(HasBits* has_bits) {
+    (*has_bits)[1] |= 268435456u;
+  }
+  static const ::enterprise_management::UnaffiliatedArcAllowedProto& unaffiliated_arc_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_unaffiliated_arc_allowed(HasBits* has_bits) {
+    (*has_bits)[1] |= 536870912u;
+  }
+  static const ::enterprise_management::NetworkHostnameProto& network_hostname(const ChromeDeviceSettingsProto* msg);
+  static void set_has_network_hostname(HasBits* has_bits) {
+    (*has_bits)[1] |= 1073741824u;
+  }
+  static const ::enterprise_management::DeviceKerberosEncryptionTypesProto& device_kerberos_encryption_types(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_kerberos_encryption_types(HasBits* has_bits) {
+    (*has_bits)[1] |= 2147483648u;
+  }
+  static const ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto& device_user_policy_loopback_processing_mode(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_user_policy_loopback_processing_mode(HasBits* has_bits) {
+    (*has_bits)[2] |= 1u;
+  }
+  static const ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto& device_login_screen_isolate_origins(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_login_screen_isolate_origins(HasBits* has_bits) {
+    (*has_bits)[2] |= 2u;
+  }
+  static const ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto& device_login_screen_site_per_process(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_login_screen_site_per_process(HasBits* has_bits) {
+    (*has_bits)[2] |= 4u;
+  }
+  static const ::enterprise_management::VirtualMachinesAllowedProto& virtual_machines_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_virtual_machines_allowed(HasBits* has_bits) {
+    (*has_bits)[2] |= 8u;
+  }
+  static const ::enterprise_management::DeviceMachinePasswordChangeRateProto& device_machine_password_change_rate(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_machine_password_change_rate(HasBits* has_bits) {
+    (*has_bits)[2] |= 16u;
+  }
+  static const ::enterprise_management::SamlLoginAuthenticationTypeProto& saml_login_authentication_type(const ChromeDeviceSettingsProto* msg);
+  static void set_has_saml_login_authentication_type(HasBits* has_bits) {
+    (*has_bits)[2] |= 32u;
+  }
+  static const ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto& device_unaffiliated_crostini_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_unaffiliated_crostini_allowed(HasBits* has_bits) {
+    (*has_bits)[2] |= 64u;
+  }
+  static const ::enterprise_management::DeviceWiFiFastTransitionEnabledProto& device_wifi_fast_transition_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_wifi_fast_transition_enabled(HasBits* has_bits) {
+    (*has_bits)[2] |= 128u;
+  }
+  static const ::enterprise_management::DeviceDisplayResolutionProto& device_display_resolution(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_display_resolution(HasBits* has_bits) {
+    (*has_bits)[2] |= 256u;
+  }
+  static const ::enterprise_management::PluginVmAllowedProto& plugin_vm_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_plugin_vm_allowed(HasBits* has_bits) {
+    (*has_bits)[2] |= 512u;
+  }
+  static const ::enterprise_management::DeviceGpoCacheLifetimeProto& device_gpo_cache_lifetime(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_gpo_cache_lifetime(HasBits* has_bits) {
+    (*has_bits)[2] |= 1024u;
+  }
+  static const ::enterprise_management::DeviceAuthDataCacheLifetimeProto& device_auth_data_cache_lifetime(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_auth_data_cache_lifetime(HasBits* has_bits) {
+    (*has_bits)[2] |= 2048u;
+  }
+  static const ::enterprise_management::PluginVmLicenseKeyProto& plugin_vm_license_key(const ChromeDeviceSettingsProto* msg);
+  static void set_has_plugin_vm_license_key(HasBits* has_bits) {
+    (*has_bits)[2] |= 4096u;
+  }
+  static const ::enterprise_management::DeviceRebootOnUserSignoutProto& device_reboot_on_user_signout(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_reboot_on_user_signout(HasBits* has_bits) {
+    (*has_bits)[2] |= 8192u;
+  }
+  static const ::enterprise_management::DeviceWilcoDtcAllowedProto& device_wilco_dtc_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_wilco_dtc_allowed(HasBits* has_bits) {
+    (*has_bits)[2] |= 16384u;
+  }
+  static const ::enterprise_management::DeviceWilcoDtcConfigurationProto& device_wilco_dtc_configuration(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_wilco_dtc_configuration(HasBits* has_bits) {
+    (*has_bits)[2] |= 32768u;
+  }
+  static const ::enterprise_management::DeviceWiFiAllowedProto& device_wifi_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_wifi_allowed(HasBits* has_bits) {
+    (*has_bits)[2] |= 65536u;
+  }
+  static const ::enterprise_management::DevicePowerPeakShiftProto& device_power_peak_shift(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_power_peak_shift(HasBits* has_bits) {
+    (*has_bits)[2] |= 131072u;
+  }
+  static const ::enterprise_management::DeviceBootOnAcProto& device_boot_on_ac(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_boot_on_ac(HasBits* has_bits) {
+    (*has_bits)[2] |= 262144u;
+  }
+  static const ::enterprise_management::DeviceDockMacAddressSourceProto& device_dock_mac_address_source(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_dock_mac_address_source(HasBits* has_bits) {
+    (*has_bits)[2] |= 524288u;
+  }
+  static const ::enterprise_management::DeviceAdvancedBatteryChargeModeProto& device_advanced_battery_charge_mode(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_advanced_battery_charge_mode(HasBits* has_bits) {
+    (*has_bits)[2] |= 1048576u;
+  }
+  static const ::enterprise_management::DeviceBatteryChargeModeProto& device_battery_charge_mode(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_battery_charge_mode(HasBits* has_bits) {
+    (*has_bits)[2] |= 2097152u;
+  }
+  static const ::enterprise_management::DeviceUsbPowerShareProto& device_usb_power_share(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_usb_power_share(HasBits* has_bits) {
+    (*has_bits)[2] |= 4194304u;
+  }
+  static const ::enterprise_management::DeviceScheduledUpdateCheckProto& device_scheduled_update_check(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_scheduled_update_check(HasBits* has_bits) {
+    (*has_bits)[2] |= 8388608u;
+  }
+  static const ::enterprise_management::DevicePowerwashAllowedProto& device_powerwash_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_powerwash_allowed(HasBits* has_bits) {
+    (*has_bits)[2] |= 16777216u;
+  }
+  static const ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& device_login_screen_webusb_allow_devices_for_urls(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_login_screen_webusb_allow_devices_for_urls(HasBits* has_bits) {
+    (*has_bits)[2] |= 33554432u;
+  }
+  static const ::enterprise_management::BooleanPolicyProto& device_login_screen_system_info_enforced(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_login_screen_system_info_enforced(HasBits* has_bits) {
+    (*has_bits)[2] |= 67108864u;
+  }
+  static const ::enterprise_management::StringListPolicyProto& device_web_based_attestation_allowed_urls(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_web_based_attestation_allowed_urls(HasBits* has_bits) {
+    (*has_bits)[2] |= 134217728u;
+  }
+  static const ::enterprise_management::BooleanPolicyProto& device_show_numeric_keyboard_for_password(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_show_numeric_keyboard_for_password(HasBits* has_bits) {
+    (*has_bits)[2] |= 268435456u;
+  }
+  static const ::enterprise_management::BooleanPolicyProto& login_screen_primary_mouse_button_switch(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_screen_primary_mouse_button_switch(HasBits* has_bits) {
+    (*has_bits)[2] |= 536870912u;
+  }
+  static const ::enterprise_management::StringPolicyProto& device_minimum_version(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_minimum_version(HasBits* has_bits) {
+    (*has_bits)[2] |= 1073741824u;
+  }
+  static const ::enterprise_management::SystemProxySettingsProto& system_proxy_settings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_system_proxy_settings(HasBits* has_bits) {
+    (*has_bits)[2] |= 2147483648u;
+  }
+  static const ::enterprise_management::IntegerPolicyProto& device_chrome_variations_type(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_chrome_variations_type(HasBits* has_bits) {
+    (*has_bits)[3] |= 1u;
+  }
+  static const ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto& device_login_screen_privacy_screen_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_login_screen_privacy_screen_enabled(HasBits* has_bits) {
+    (*has_bits)[3] |= 2u;
+  }
+  static const ::enterprise_management::RequiredClientCertificateForDeviceProto& required_client_certificate_for_device(const ChromeDeviceSettingsProto* msg);
+  static void set_has_required_client_certificate_for_device(HasBits* has_bits) {
+    (*has_bits)[3] |= 4u;
+  }
+  static const ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto& device_crostini_arc_adb_sideloading_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_crostini_arc_adb_sideloading_allowed(HasBits* has_bits) {
+    (*has_bits)[3] |= 8u;
+  }
+  static const ::enterprise_management::StringPolicyProto& device_minimum_version_aue_message(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_minimum_version_aue_message(HasBits* has_bits) {
+    (*has_bits)[3] |= 16u;
+  }
+  static const ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto& managed_guest_session_privacy_warnings(const ChromeDeviceSettingsProto* msg);
+  static void set_has_managed_guest_session_privacy_warnings(HasBits* has_bits) {
+    (*has_bits)[3] |= 32u;
+  }
+  static const ::enterprise_management::DeviceExternalPrintServersProto& external_print_servers(const ChromeDeviceSettingsProto* msg);
+  static void set_has_external_print_servers(HasBits* has_bits) {
+    (*has_bits)[3] |= 64u;
+  }
+  static const ::enterprise_management::DeviceExternalPrintServersAllowlistProto& external_print_servers_allowlist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_external_print_servers_allowlist(HasBits* has_bits) {
+    (*has_bits)[3] |= 128u;
+  }
+  static const ::enterprise_management::DevicePrintersAccessModeProto& device_printers_access_mode(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_printers_access_mode(HasBits* has_bits) {
+    (*has_bits)[3] |= 256u;
+  }
+  static const ::enterprise_management::DevicePrintersBlocklistProto& device_printers_blocklist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_printers_blocklist(HasBits* has_bits) {
+    (*has_bits)[3] |= 512u;
+  }
+  static const ::enterprise_management::DevicePrintersAllowlistProto& device_printers_allowlist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_printers_allowlist(HasBits* has_bits) {
+    (*has_bits)[3] |= 1024u;
+  }
+  static const ::enterprise_management::DevicePrintersProto& device_printers(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_printers(HasBits* has_bits) {
+    (*has_bits)[3] |= 2048u;
+  }
+  static const ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto& device_show_low_disk_space_notification(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_show_low_disk_space_notification(HasBits* has_bits) {
+    (*has_bits)[3] |= 4096u;
+  }
+  static const ::enterprise_management::UserAllowlistProto& user_allowlist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_user_allowlist(HasBits* has_bits) {
+    (*has_bits)[3] |= 8192u;
+  }
+  static const ::enterprise_management::UsbDetachableAllowlistProto& usb_detachable_allowlist(const ChromeDeviceSettingsProto* msg);
+  static void set_has_usb_detachable_allowlist(HasBits* has_bits) {
+    (*has_bits)[3] |= 16384u;
+  }
+  static const ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto& family_link_accounts_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_family_link_accounts_allowed(HasBits* has_bits) {
+    (*has_bits)[3] |= 32768u;
+  }
+  static const ::enterprise_management::DeviceArcDataSnapshotHoursProto& arc_data_snapshot_hours(const ChromeDeviceSettingsProto* msg);
+  static void set_has_arc_data_snapshot_hours(HasBits* has_bits) {
+    (*has_bits)[3] |= 65536u;
+  }
+  static const ::enterprise_management::BooleanPolicyProto& device_allow_mgs_to_store_display_properties(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_allow_mgs_to_store_display_properties(HasBits* has_bits) {
+    (*has_bits)[3] |= 131072u;
+  }
+  static const ::enterprise_management::DeviceSystemWideTracingEnabledProto& device_system_wide_tracing_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_system_wide_tracing_enabled(HasBits* has_bits) {
+    (*has_bits)[3] |= 262144u;
+  }
+  static const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto& device_pci_peripheral_data_access_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_pci_peripheral_data_access_enabled(HasBits* has_bits) {
+    (*has_bits)[3] |= 524288u;
+  }
+  static const ::enterprise_management::DeviceBorealisAllowedProto& device_borealis_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_borealis_allowed(HasBits* has_bits) {
+    (*has_bits)[3] |= 1048576u;
+  }
+  static const ::enterprise_management::DeviceAllowedBluetoothServicesProto& device_allowed_bluetooth_services(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_allowed_bluetooth_services(HasBits* has_bits) {
+    (*has_bits)[3] |= 2097152u;
+  }
+  static const ::enterprise_management::DeviceDebugPacketCaptureAllowedProto& device_debug_packet_capture_allowed(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_debug_packet_capture_allowed(HasBits* has_bits) {
+    (*has_bits)[3] |= 4194304u;
+  }
+  static const ::enterprise_management::DeviceScheduledRebootProto& device_scheduled_reboot(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_scheduled_reboot(HasBits* has_bits) {
+    (*has_bits)[3] |= 8388608u;
+  }
+  static const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2& device_pci_peripheral_data_access_enabled_v2(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_pci_peripheral_data_access_enabled_v2(HasBits* has_bits) {
+    (*has_bits)[3] |= 16777216u;
+  }
+  static const ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto& device_restricted_managed_guest_session_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_restricted_managed_guest_session_enabled(HasBits* has_bits) {
+    (*has_bits)[3] |= 33554432u;
+  }
+  static const ::enterprise_management::HostnameUserConfigurableProto& hostname_user_configurable(const ChromeDeviceSettingsProto* msg);
+  static void set_has_hostname_user_configurable(HasBits* has_bits) {
+    (*has_bits)[3] |= 67108864u;
+  }
+  static const ::enterprise_management::BooleanPolicyProto& login_screen_prompt_on_multiple_matching_certificates(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_screen_prompt_on_multiple_matching_certificates(HasBits* has_bits) {
+    (*has_bits)[3] |= 134217728u;
+  }
+  static const ::enterprise_management::BooleanPolicyProto& kiosk_crx_manifest_update_url_ignored(const ChromeDeviceSettingsProto* msg);
+  static void set_has_kiosk_crx_manifest_update_url_ignored(HasBits* has_bits) {
+    (*has_bits)[3] |= 268435456u;
+  }
+  static const ::enterprise_management::DeviceI18nShortcutsEnabledProto& device_i18n_shortcuts_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_i18n_shortcuts_enabled(HasBits* has_bits) {
+    (*has_bits)[3] |= 536870912u;
+  }
+  static const ::enterprise_management::BooleanPolicyProto& chromad_to_cloud_migration_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_chromad_to_cloud_migration_enabled(HasBits* has_bits) {
+    (*has_bits)[3] |= 1073741824u;
+  }
+  static const ::enterprise_management::RevenDeviceHWDataUsageEnabledProto& hardware_data_usage_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_hardware_data_usage_enabled(HasBits* has_bits) {
+    (*has_bits)[3] |= 2147483648u;
+  }
+  static const ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto& login_web_ui_lazy_loading(const ChromeDeviceSettingsProto* msg);
+  static void set_has_login_web_ui_lazy_loading(HasBits* has_bits) {
+    (*has_bits)[4] |= 1u;
+  }
+  static const ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto& keylocker_for_storage_encryption_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_keylocker_for_storage_encryption_enabled(HasBits* has_bits) {
+    (*has_bits)[4] |= 2u;
+  }
+  static const ::enterprise_management::BooleanPolicyProto& device_run_automatic_cleanup_on_login(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_run_automatic_cleanup_on_login(HasBits* has_bits) {
+    (*has_bits)[4] |= 4u;
+  }
+  static const ::enterprise_management::EncryptedReportingPipelineConfigurationProto& device_encrypted_reporting_pipeline_enabled(const ChromeDeviceSettingsProto* msg);
+  static void set_has_device_encrypted_reporting_pipeline_enabled(HasBits* has_bits) {
+    (*has_bits)[4] |= 8u;
+  }
+};
+
+const ::enterprise_management::DevicePolicyRefreshRateProto&
+ChromeDeviceSettingsProto::_Internal::device_policy_refresh_rate(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_policy_refresh_rate_;
+}
+const ::enterprise_management::UserWhitelistProto&
+ChromeDeviceSettingsProto::_Internal::user_whitelist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->user_whitelist_;
+}
+const ::enterprise_management::GuestModeEnabledProto&
+ChromeDeviceSettingsProto::_Internal::guest_mode_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->guest_mode_enabled_;
+}
+const ::enterprise_management::OBSOLETE_DeviceProxySettingsProto&
+ChromeDeviceSettingsProto::_Internal::device_proxy_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_proxy_settings_;
+}
+const ::enterprise_management::CameraEnabledProto&
+ChromeDeviceSettingsProto::_Internal::camera_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->camera_enabled_;
+}
+const ::enterprise_management::ShowUserNamesOnSigninProto&
+ChromeDeviceSettingsProto::_Internal::show_user_names(const ChromeDeviceSettingsProto* msg) {
+  return *msg->show_user_names_;
+}
+const ::enterprise_management::DataRoamingEnabledProto&
+ChromeDeviceSettingsProto::_Internal::data_roaming_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->data_roaming_enabled_;
+}
+const ::enterprise_management::AllowNewUsersProto&
+ChromeDeviceSettingsProto::_Internal::allow_new_users(const ChromeDeviceSettingsProto* msg) {
+  return *msg->allow_new_users_;
+}
+const ::enterprise_management::MetricsEnabledProto&
+ChromeDeviceSettingsProto::_Internal::metrics_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->metrics_enabled_;
+}
+const ::enterprise_management::ReleaseChannelProto&
+ChromeDeviceSettingsProto::_Internal::release_channel(const ChromeDeviceSettingsProto* msg) {
+  return *msg->release_channel_;
+}
+const ::enterprise_management::DeviceOpenNetworkConfigurationProto&
+ChromeDeviceSettingsProto::_Internal::open_network_configuration(const ChromeDeviceSettingsProto* msg) {
+  return *msg->open_network_configuration_;
+}
+const ::enterprise_management::DeviceReportingProto&
+ChromeDeviceSettingsProto::_Internal::device_reporting(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_reporting_;
+}
+const ::enterprise_management::EphemeralUsersEnabledProto&
+ChromeDeviceSettingsProto::_Internal::ephemeral_users_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->ephemeral_users_enabled_;
+}
+const ::enterprise_management::OBSOLETE_AppPackProto&
+ChromeDeviceSettingsProto::_Internal::app_pack(const ChromeDeviceSettingsProto* msg) {
+  return *msg->app_pack_;
+}
+const ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto&
+ChromeDeviceSettingsProto::_Internal::forced_logout_timeouts(const ChromeDeviceSettingsProto* msg) {
+  return *msg->forced_logout_timeouts_;
+}
+const ::enterprise_management::OBSOLETE_ScreenSaverProto&
+ChromeDeviceSettingsProto::_Internal::login_screen_saver(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_screen_saver_;
+}
+const ::enterprise_management::AutoUpdateSettingsProto&
+ChromeDeviceSettingsProto::_Internal::auto_update_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->auto_update_settings_;
+}
+const ::enterprise_management::OBSOLETE_StartUpUrlsProto&
+ChromeDeviceSettingsProto::_Internal::start_up_urls(const ChromeDeviceSettingsProto* msg) {
+  return *msg->start_up_urls_;
+}
+const ::enterprise_management::OBSOLETE_PinnedAppsProto&
+ChromeDeviceSettingsProto::_Internal::pinned_apps(const ChromeDeviceSettingsProto* msg) {
+  return *msg->pinned_apps_;
+}
+const ::enterprise_management::SystemTimezoneProto&
+ChromeDeviceSettingsProto::_Internal::system_timezone(const ChromeDeviceSettingsProto* msg) {
+  return *msg->system_timezone_;
+}
+const ::enterprise_management::DeviceLocalAccountsProto&
+ChromeDeviceSettingsProto::_Internal::device_local_accounts(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_local_accounts_;
+}
+const ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto&
+ChromeDeviceSettingsProto::_Internal::allow_redeem_offers(const ChromeDeviceSettingsProto* msg) {
+  return *msg->allow_redeem_offers_;
+}
+const ::enterprise_management::FeatureFlagsProto&
+ChromeDeviceSettingsProto::_Internal::feature_flags(const ChromeDeviceSettingsProto* msg) {
+  return *msg->feature_flags_;
+}
+const ::enterprise_management::UptimeLimitProto&
+ChromeDeviceSettingsProto::_Internal::uptime_limit(const ChromeDeviceSettingsProto* msg) {
+  return *msg->uptime_limit_;
+}
+const ::enterprise_management::VariationsParameterProto&
+ChromeDeviceSettingsProto::_Internal::variations_parameter(const ChromeDeviceSettingsProto* msg) {
+  return *msg->variations_parameter_;
+}
+const ::enterprise_management::AttestationSettingsProto&
+ChromeDeviceSettingsProto::_Internal::attestation_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->attestation_settings_;
+}
+const ::enterprise_management::AccessibilitySettingsProto&
+ChromeDeviceSettingsProto::_Internal::accessibility_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->accessibility_settings_;
+}
+const ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto&
+ChromeDeviceSettingsProto::_Internal::supervised_users_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->supervised_users_settings_;
+}
+const ::enterprise_management::LoginScreenPowerManagementProto&
+ChromeDeviceSettingsProto::_Internal::login_screen_power_management(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_screen_power_management_;
+}
+const ::enterprise_management::SystemUse24HourClockProto&
+ChromeDeviceSettingsProto::_Internal::use_24hour_clock(const ChromeDeviceSettingsProto* msg) {
+  return *msg->use_24hour_clock_;
+}
+const ::enterprise_management::AutoCleanupSettigsProto&
+ChromeDeviceSettingsProto::_Internal::auto_clean_up_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->auto_clean_up_settings_;
+}
+const ::enterprise_management::SystemSettingsProto&
+ChromeDeviceSettingsProto::_Internal::system_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->system_settings_;
+}
+const ::enterprise_management::SAMLSettingsProto&
+ChromeDeviceSettingsProto::_Internal::saml_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->saml_settings_;
+}
+const ::enterprise_management::RebootOnShutdownProto&
+ChromeDeviceSettingsProto::_Internal::reboot_on_shutdown(const ChromeDeviceSettingsProto* msg) {
+  return *msg->reboot_on_shutdown_;
+}
+const ::enterprise_management::DeviceHeartbeatSettingsProto&
+ChromeDeviceSettingsProto::_Internal::device_heartbeat_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_heartbeat_settings_;
+}
+const ::enterprise_management::ExtensionCacheSizeProto&
+ChromeDeviceSettingsProto::_Internal::extension_cache_size(const ChromeDeviceSettingsProto* msg) {
+  return *msg->extension_cache_size_;
+}
+const ::enterprise_management::LoginScreenDomainAutoCompleteProto&
+ChromeDeviceSettingsProto::_Internal::login_screen_domain_auto_complete(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_screen_domain_auto_complete_;
+}
+const ::enterprise_management::DeviceLogUploadSettingsProto&
+ChromeDeviceSettingsProto::_Internal::device_log_upload_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_log_upload_settings_;
+}
+const ::enterprise_management::DisplayRotationDefaultProto&
+ChromeDeviceSettingsProto::_Internal::display_rotation_default(const ChromeDeviceSettingsProto* msg) {
+  return *msg->display_rotation_default_;
+}
+const ::enterprise_management::AllowKioskAppControlChromeVersionProto&
+ChromeDeviceSettingsProto::_Internal::allow_kiosk_app_control_chrome_version(const ChromeDeviceSettingsProto* msg) {
+  return *msg->allow_kiosk_app_control_chrome_version_;
+}
+const ::enterprise_management::LoginAuthenticationBehaviorProto&
+ChromeDeviceSettingsProto::_Internal::login_authentication_behavior(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_authentication_behavior_;
+}
+const ::enterprise_management::UsbDetachableWhitelistProto&
+ChromeDeviceSettingsProto::_Internal::usb_detachable_whitelist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->usb_detachable_whitelist_;
+}
+const ::enterprise_management::AllowBluetoothProto&
+ChromeDeviceSettingsProto::_Internal::allow_bluetooth(const ChromeDeviceSettingsProto* msg) {
+  return *msg->allow_bluetooth_;
+}
+const ::enterprise_management::DeviceQuirksDownloadEnabledProto&
+ChromeDeviceSettingsProto::_Internal::quirks_download_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->quirks_download_enabled_;
+}
+const ::enterprise_management::LoginVideoCaptureAllowedUrlsProto&
+ChromeDeviceSettingsProto::_Internal::login_video_capture_allowed_urls(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_video_capture_allowed_urls_;
+}
+const ::enterprise_management::DeviceLoginScreenExtensionsProto&
+ChromeDeviceSettingsProto::_Internal::device_login_screen_extensions(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_login_screen_extensions_;
+}
+const ::enterprise_management::NetworkThrottlingEnabledProto&
+ChromeDeviceSettingsProto::_Internal::network_throttling(const ChromeDeviceSettingsProto* msg) {
+  return *msg->network_throttling_;
+}
+const ::enterprise_management::DeviceWallpaperImageProto&
+ChromeDeviceSettingsProto::_Internal::device_wallpaper_image(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_wallpaper_image_;
+}
+const ::enterprise_management::LoginScreenLocalesProto&
+ChromeDeviceSettingsProto::_Internal::login_screen_locales(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_screen_locales_;
+}
+const ::enterprise_management::LoginScreenInputMethodsProto&
+ChromeDeviceSettingsProto::_Internal::login_screen_input_methods(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_screen_input_methods_;
+}
+const ::enterprise_management::DeviceEcryptfsMigrationStrategyProto&
+ChromeDeviceSettingsProto::_Internal::device_ecryptfs_migration_strategy(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_ecryptfs_migration_strategy_;
+}
+const ::enterprise_management::DeviceSecondFactorAuthenticationProto&
+ChromeDeviceSettingsProto::_Internal::device_second_factor_authentication(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_second_factor_authentication_;
+}
+const ::enterprise_management::CastReceiverNameProto&
+ChromeDeviceSettingsProto::_Internal::cast_receiver_name(const ChromeDeviceSettingsProto* msg) {
+  return *msg->cast_receiver_name_;
+}
+const ::enterprise_management::DeviceOffHoursProto&
+ChromeDeviceSettingsProto::_Internal::device_off_hours(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_off_hours_;
+}
+const ::enterprise_management::DeviceNativePrintersProto&
+ChromeDeviceSettingsProto::_Internal::native_device_printers(const ChromeDeviceSettingsProto* msg) {
+  return *msg->native_device_printers_;
+}
+const ::enterprise_management::DeviceNativePrintersAccessModeProto&
+ChromeDeviceSettingsProto::_Internal::native_device_printers_access_mode(const ChromeDeviceSettingsProto* msg) {
+  return *msg->native_device_printers_access_mode_;
+}
+const ::enterprise_management::DeviceNativePrintersBlacklistProto&
+ChromeDeviceSettingsProto::_Internal::native_device_printers_blacklist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->native_device_printers_blacklist_;
+}
+const ::enterprise_management::DeviceNativePrintersWhitelistProto&
+ChromeDeviceSettingsProto::_Internal::native_device_printers_whitelist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->native_device_printers_whitelist_;
+}
+const ::enterprise_management::TPMFirmwareUpdateSettingsProto&
+ChromeDeviceSettingsProto::_Internal::tpm_firmware_update_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->tpm_firmware_update_settings_;
+}
+const ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto&
+ChromeDeviceSettingsProto::_Internal::minimum_required_version(const ChromeDeviceSettingsProto* msg) {
+  return *msg->minimum_required_version_;
+}
+const ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls&
+ChromeDeviceSettingsProto::_Internal::device_login_screen_auto_select_certificate_for_urls(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_login_screen_auto_select_certificate_for_urls_;
+}
+const ::enterprise_management::UnaffiliatedArcAllowedProto&
+ChromeDeviceSettingsProto::_Internal::unaffiliated_arc_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->unaffiliated_arc_allowed_;
+}
+const ::enterprise_management::NetworkHostnameProto&
+ChromeDeviceSettingsProto::_Internal::network_hostname(const ChromeDeviceSettingsProto* msg) {
+  return *msg->network_hostname_;
+}
+const ::enterprise_management::DeviceKerberosEncryptionTypesProto&
+ChromeDeviceSettingsProto::_Internal::device_kerberos_encryption_types(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_kerberos_encryption_types_;
+}
+const ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto&
+ChromeDeviceSettingsProto::_Internal::device_user_policy_loopback_processing_mode(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_user_policy_loopback_processing_mode_;
+}
+const ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto&
+ChromeDeviceSettingsProto::_Internal::device_login_screen_isolate_origins(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_login_screen_isolate_origins_;
+}
+const ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto&
+ChromeDeviceSettingsProto::_Internal::device_login_screen_site_per_process(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_login_screen_site_per_process_;
+}
+const ::enterprise_management::VirtualMachinesAllowedProto&
+ChromeDeviceSettingsProto::_Internal::virtual_machines_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->virtual_machines_allowed_;
+}
+const ::enterprise_management::DeviceMachinePasswordChangeRateProto&
+ChromeDeviceSettingsProto::_Internal::device_machine_password_change_rate(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_machine_password_change_rate_;
+}
+const ::enterprise_management::SamlLoginAuthenticationTypeProto&
+ChromeDeviceSettingsProto::_Internal::saml_login_authentication_type(const ChromeDeviceSettingsProto* msg) {
+  return *msg->saml_login_authentication_type_;
+}
+const ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto&
+ChromeDeviceSettingsProto::_Internal::device_unaffiliated_crostini_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_unaffiliated_crostini_allowed_;
+}
+const ::enterprise_management::DeviceWiFiFastTransitionEnabledProto&
+ChromeDeviceSettingsProto::_Internal::device_wifi_fast_transition_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_wifi_fast_transition_enabled_;
+}
+const ::enterprise_management::DeviceDisplayResolutionProto&
+ChromeDeviceSettingsProto::_Internal::device_display_resolution(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_display_resolution_;
+}
+const ::enterprise_management::PluginVmAllowedProto&
+ChromeDeviceSettingsProto::_Internal::plugin_vm_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->plugin_vm_allowed_;
+}
+const ::enterprise_management::DeviceGpoCacheLifetimeProto&
+ChromeDeviceSettingsProto::_Internal::device_gpo_cache_lifetime(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_gpo_cache_lifetime_;
+}
+const ::enterprise_management::DeviceAuthDataCacheLifetimeProto&
+ChromeDeviceSettingsProto::_Internal::device_auth_data_cache_lifetime(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_auth_data_cache_lifetime_;
+}
+const ::enterprise_management::PluginVmLicenseKeyProto&
+ChromeDeviceSettingsProto::_Internal::plugin_vm_license_key(const ChromeDeviceSettingsProto* msg) {
+  return *msg->plugin_vm_license_key_;
+}
+const ::enterprise_management::DeviceRebootOnUserSignoutProto&
+ChromeDeviceSettingsProto::_Internal::device_reboot_on_user_signout(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_reboot_on_user_signout_;
+}
+const ::enterprise_management::DeviceWilcoDtcAllowedProto&
+ChromeDeviceSettingsProto::_Internal::device_wilco_dtc_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_wilco_dtc_allowed_;
+}
+const ::enterprise_management::DeviceWilcoDtcConfigurationProto&
+ChromeDeviceSettingsProto::_Internal::device_wilco_dtc_configuration(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_wilco_dtc_configuration_;
+}
+const ::enterprise_management::DeviceWiFiAllowedProto&
+ChromeDeviceSettingsProto::_Internal::device_wifi_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_wifi_allowed_;
+}
+const ::enterprise_management::DevicePowerPeakShiftProto&
+ChromeDeviceSettingsProto::_Internal::device_power_peak_shift(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_power_peak_shift_;
+}
+const ::enterprise_management::DeviceBootOnAcProto&
+ChromeDeviceSettingsProto::_Internal::device_boot_on_ac(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_boot_on_ac_;
+}
+const ::enterprise_management::DeviceDockMacAddressSourceProto&
+ChromeDeviceSettingsProto::_Internal::device_dock_mac_address_source(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_dock_mac_address_source_;
+}
+const ::enterprise_management::DeviceAdvancedBatteryChargeModeProto&
+ChromeDeviceSettingsProto::_Internal::device_advanced_battery_charge_mode(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_advanced_battery_charge_mode_;
+}
+const ::enterprise_management::DeviceBatteryChargeModeProto&
+ChromeDeviceSettingsProto::_Internal::device_battery_charge_mode(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_battery_charge_mode_;
+}
+const ::enterprise_management::DeviceUsbPowerShareProto&
+ChromeDeviceSettingsProto::_Internal::device_usb_power_share(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_usb_power_share_;
+}
+const ::enterprise_management::DeviceScheduledUpdateCheckProto&
+ChromeDeviceSettingsProto::_Internal::device_scheduled_update_check(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_scheduled_update_check_;
+}
+const ::enterprise_management::DevicePowerwashAllowedProto&
+ChromeDeviceSettingsProto::_Internal::device_powerwash_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_powerwash_allowed_;
+}
+const ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto&
+ChromeDeviceSettingsProto::_Internal::device_login_screen_webusb_allow_devices_for_urls(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_login_screen_webusb_allow_devices_for_urls_;
+}
+const ::enterprise_management::BooleanPolicyProto&
+ChromeDeviceSettingsProto::_Internal::device_login_screen_system_info_enforced(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_login_screen_system_info_enforced_;
+}
+const ::enterprise_management::StringListPolicyProto&
+ChromeDeviceSettingsProto::_Internal::device_web_based_attestation_allowed_urls(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_web_based_attestation_allowed_urls_;
+}
+const ::enterprise_management::BooleanPolicyProto&
+ChromeDeviceSettingsProto::_Internal::device_show_numeric_keyboard_for_password(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_show_numeric_keyboard_for_password_;
+}
+const ::enterprise_management::BooleanPolicyProto&
+ChromeDeviceSettingsProto::_Internal::login_screen_primary_mouse_button_switch(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_screen_primary_mouse_button_switch_;
+}
+const ::enterprise_management::StringPolicyProto&
+ChromeDeviceSettingsProto::_Internal::device_minimum_version(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_minimum_version_;
+}
+const ::enterprise_management::SystemProxySettingsProto&
+ChromeDeviceSettingsProto::_Internal::system_proxy_settings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->system_proxy_settings_;
+}
+const ::enterprise_management::IntegerPolicyProto&
+ChromeDeviceSettingsProto::_Internal::device_chrome_variations_type(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_chrome_variations_type_;
+}
+const ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto&
+ChromeDeviceSettingsProto::_Internal::device_login_screen_privacy_screen_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_login_screen_privacy_screen_enabled_;
+}
+const ::enterprise_management::RequiredClientCertificateForDeviceProto&
+ChromeDeviceSettingsProto::_Internal::required_client_certificate_for_device(const ChromeDeviceSettingsProto* msg) {
+  return *msg->required_client_certificate_for_device_;
+}
+const ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto&
+ChromeDeviceSettingsProto::_Internal::device_crostini_arc_adb_sideloading_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_crostini_arc_adb_sideloading_allowed_;
+}
+const ::enterprise_management::StringPolicyProto&
+ChromeDeviceSettingsProto::_Internal::device_minimum_version_aue_message(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_minimum_version_aue_message_;
+}
+const ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto&
+ChromeDeviceSettingsProto::_Internal::managed_guest_session_privacy_warnings(const ChromeDeviceSettingsProto* msg) {
+  return *msg->managed_guest_session_privacy_warnings_;
+}
+const ::enterprise_management::DeviceExternalPrintServersProto&
+ChromeDeviceSettingsProto::_Internal::external_print_servers(const ChromeDeviceSettingsProto* msg) {
+  return *msg->external_print_servers_;
+}
+const ::enterprise_management::DeviceExternalPrintServersAllowlistProto&
+ChromeDeviceSettingsProto::_Internal::external_print_servers_allowlist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->external_print_servers_allowlist_;
+}
+const ::enterprise_management::DevicePrintersAccessModeProto&
+ChromeDeviceSettingsProto::_Internal::device_printers_access_mode(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_printers_access_mode_;
+}
+const ::enterprise_management::DevicePrintersBlocklistProto&
+ChromeDeviceSettingsProto::_Internal::device_printers_blocklist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_printers_blocklist_;
+}
+const ::enterprise_management::DevicePrintersAllowlistProto&
+ChromeDeviceSettingsProto::_Internal::device_printers_allowlist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_printers_allowlist_;
+}
+const ::enterprise_management::DevicePrintersProto&
+ChromeDeviceSettingsProto::_Internal::device_printers(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_printers_;
+}
+const ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto&
+ChromeDeviceSettingsProto::_Internal::device_show_low_disk_space_notification(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_show_low_disk_space_notification_;
+}
+const ::enterprise_management::UserAllowlistProto&
+ChromeDeviceSettingsProto::_Internal::user_allowlist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->user_allowlist_;
+}
+const ::enterprise_management::UsbDetachableAllowlistProto&
+ChromeDeviceSettingsProto::_Internal::usb_detachable_allowlist(const ChromeDeviceSettingsProto* msg) {
+  return *msg->usb_detachable_allowlist_;
+}
+const ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto&
+ChromeDeviceSettingsProto::_Internal::family_link_accounts_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->family_link_accounts_allowed_;
+}
+const ::enterprise_management::DeviceArcDataSnapshotHoursProto&
+ChromeDeviceSettingsProto::_Internal::arc_data_snapshot_hours(const ChromeDeviceSettingsProto* msg) {
+  return *msg->arc_data_snapshot_hours_;
+}
+const ::enterprise_management::BooleanPolicyProto&
+ChromeDeviceSettingsProto::_Internal::device_allow_mgs_to_store_display_properties(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_allow_mgs_to_store_display_properties_;
+}
+const ::enterprise_management::DeviceSystemWideTracingEnabledProto&
+ChromeDeviceSettingsProto::_Internal::device_system_wide_tracing_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_system_wide_tracing_enabled_;
+}
+const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto&
+ChromeDeviceSettingsProto::_Internal::device_pci_peripheral_data_access_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_pci_peripheral_data_access_enabled_;
+}
+const ::enterprise_management::DeviceBorealisAllowedProto&
+ChromeDeviceSettingsProto::_Internal::device_borealis_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_borealis_allowed_;
+}
+const ::enterprise_management::DeviceAllowedBluetoothServicesProto&
+ChromeDeviceSettingsProto::_Internal::device_allowed_bluetooth_services(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_allowed_bluetooth_services_;
+}
+const ::enterprise_management::DeviceDebugPacketCaptureAllowedProto&
+ChromeDeviceSettingsProto::_Internal::device_debug_packet_capture_allowed(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_debug_packet_capture_allowed_;
+}
+const ::enterprise_management::DeviceScheduledRebootProto&
+ChromeDeviceSettingsProto::_Internal::device_scheduled_reboot(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_scheduled_reboot_;
+}
+const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2&
+ChromeDeviceSettingsProto::_Internal::device_pci_peripheral_data_access_enabled_v2(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_pci_peripheral_data_access_enabled_v2_;
+}
+const ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto&
+ChromeDeviceSettingsProto::_Internal::device_restricted_managed_guest_session_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_restricted_managed_guest_session_enabled_;
+}
+const ::enterprise_management::HostnameUserConfigurableProto&
+ChromeDeviceSettingsProto::_Internal::hostname_user_configurable(const ChromeDeviceSettingsProto* msg) {
+  return *msg->hostname_user_configurable_;
+}
+const ::enterprise_management::BooleanPolicyProto&
+ChromeDeviceSettingsProto::_Internal::login_screen_prompt_on_multiple_matching_certificates(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_screen_prompt_on_multiple_matching_certificates_;
+}
+const ::enterprise_management::BooleanPolicyProto&
+ChromeDeviceSettingsProto::_Internal::kiosk_crx_manifest_update_url_ignored(const ChromeDeviceSettingsProto* msg) {
+  return *msg->kiosk_crx_manifest_update_url_ignored_;
+}
+const ::enterprise_management::DeviceI18nShortcutsEnabledProto&
+ChromeDeviceSettingsProto::_Internal::device_i18n_shortcuts_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_i18n_shortcuts_enabled_;
+}
+const ::enterprise_management::BooleanPolicyProto&
+ChromeDeviceSettingsProto::_Internal::chromad_to_cloud_migration_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->chromad_to_cloud_migration_enabled_;
+}
+const ::enterprise_management::RevenDeviceHWDataUsageEnabledProto&
+ChromeDeviceSettingsProto::_Internal::hardware_data_usage_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->hardware_data_usage_enabled_;
+}
+const ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto&
+ChromeDeviceSettingsProto::_Internal::login_web_ui_lazy_loading(const ChromeDeviceSettingsProto* msg) {
+  return *msg->login_web_ui_lazy_loading_;
+}
+const ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto&
+ChromeDeviceSettingsProto::_Internal::keylocker_for_storage_encryption_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->keylocker_for_storage_encryption_enabled_;
+}
+const ::enterprise_management::BooleanPolicyProto&
+ChromeDeviceSettingsProto::_Internal::device_run_automatic_cleanup_on_login(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_run_automatic_cleanup_on_login_;
+}
+const ::enterprise_management::EncryptedReportingPipelineConfigurationProto&
+ChromeDeviceSettingsProto::_Internal::device_encrypted_reporting_pipeline_enabled(const ChromeDeviceSettingsProto* msg) {
+  return *msg->device_encrypted_reporting_pipeline_enabled_;
+}
+void ChromeDeviceSettingsProto::clear_device_login_screen_system_info_enforced() {
+  if (device_login_screen_system_info_enforced_ != nullptr) device_login_screen_system_info_enforced_->Clear();
+  _has_bits_[2] &= ~0x04000000u;
+}
+void ChromeDeviceSettingsProto::clear_device_web_based_attestation_allowed_urls() {
+  if (device_web_based_attestation_allowed_urls_ != nullptr) device_web_based_attestation_allowed_urls_->Clear();
+  _has_bits_[2] &= ~0x08000000u;
+}
+void ChromeDeviceSettingsProto::clear_device_show_numeric_keyboard_for_password() {
+  if (device_show_numeric_keyboard_for_password_ != nullptr) device_show_numeric_keyboard_for_password_->Clear();
+  _has_bits_[2] &= ~0x10000000u;
+}
+void ChromeDeviceSettingsProto::clear_login_screen_primary_mouse_button_switch() {
+  if (login_screen_primary_mouse_button_switch_ != nullptr) login_screen_primary_mouse_button_switch_->Clear();
+  _has_bits_[2] &= ~0x20000000u;
+}
+void ChromeDeviceSettingsProto::clear_device_minimum_version() {
+  if (device_minimum_version_ != nullptr) device_minimum_version_->Clear();
+  _has_bits_[2] &= ~0x40000000u;
+}
+void ChromeDeviceSettingsProto::clear_device_chrome_variations_type() {
+  if (device_chrome_variations_type_ != nullptr) device_chrome_variations_type_->Clear();
+  _has_bits_[3] &= ~0x00000001u;
+}
+void ChromeDeviceSettingsProto::clear_device_minimum_version_aue_message() {
+  if (device_minimum_version_aue_message_ != nullptr) device_minimum_version_aue_message_->Clear();
+  _has_bits_[3] &= ~0x00000010u;
+}
+void ChromeDeviceSettingsProto::clear_device_allow_mgs_to_store_display_properties() {
+  if (device_allow_mgs_to_store_display_properties_ != nullptr) device_allow_mgs_to_store_display_properties_->Clear();
+  _has_bits_[3] &= ~0x00020000u;
+}
+void ChromeDeviceSettingsProto::clear_login_screen_prompt_on_multiple_matching_certificates() {
+  if (login_screen_prompt_on_multiple_matching_certificates_ != nullptr) login_screen_prompt_on_multiple_matching_certificates_->Clear();
+  _has_bits_[3] &= ~0x08000000u;
+}
+void ChromeDeviceSettingsProto::clear_kiosk_crx_manifest_update_url_ignored() {
+  if (kiosk_crx_manifest_update_url_ignored_ != nullptr) kiosk_crx_manifest_update_url_ignored_->Clear();
+  _has_bits_[3] &= ~0x10000000u;
+}
+void ChromeDeviceSettingsProto::clear_chromad_to_cloud_migration_enabled() {
+  if (chromad_to_cloud_migration_enabled_ != nullptr) chromad_to_cloud_migration_enabled_->Clear();
+  _has_bits_[3] &= ~0x40000000u;
+}
+void ChromeDeviceSettingsProto::clear_device_run_automatic_cleanup_on_login() {
+  if (device_run_automatic_cleanup_on_login_ != nullptr) device_run_automatic_cleanup_on_login_->Clear();
+  _has_bits_[4] &= ~0x00000004u;
+}
+ChromeDeviceSettingsProto::ChromeDeviceSettingsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeDeviceSettingsProto)
+}
+ChromeDeviceSettingsProto::ChromeDeviceSettingsProto(const ChromeDeviceSettingsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_device_policy_refresh_rate()) {
+    device_policy_refresh_rate_ = new ::enterprise_management::DevicePolicyRefreshRateProto(*from.device_policy_refresh_rate_);
+  } else {
+    device_policy_refresh_rate_ = nullptr;
+  }
+  if (from._internal_has_user_whitelist()) {
+    user_whitelist_ = new ::enterprise_management::UserWhitelistProto(*from.user_whitelist_);
+  } else {
+    user_whitelist_ = nullptr;
+  }
+  if (from._internal_has_guest_mode_enabled()) {
+    guest_mode_enabled_ = new ::enterprise_management::GuestModeEnabledProto(*from.guest_mode_enabled_);
+  } else {
+    guest_mode_enabled_ = nullptr;
+  }
+  if (from._internal_has_device_proxy_settings()) {
+    device_proxy_settings_ = new ::enterprise_management::OBSOLETE_DeviceProxySettingsProto(*from.device_proxy_settings_);
+  } else {
+    device_proxy_settings_ = nullptr;
+  }
+  if (from._internal_has_camera_enabled()) {
+    camera_enabled_ = new ::enterprise_management::CameraEnabledProto(*from.camera_enabled_);
+  } else {
+    camera_enabled_ = nullptr;
+  }
+  if (from._internal_has_show_user_names()) {
+    show_user_names_ = new ::enterprise_management::ShowUserNamesOnSigninProto(*from.show_user_names_);
+  } else {
+    show_user_names_ = nullptr;
+  }
+  if (from._internal_has_data_roaming_enabled()) {
+    data_roaming_enabled_ = new ::enterprise_management::DataRoamingEnabledProto(*from.data_roaming_enabled_);
+  } else {
+    data_roaming_enabled_ = nullptr;
+  }
+  if (from._internal_has_allow_new_users()) {
+    allow_new_users_ = new ::enterprise_management::AllowNewUsersProto(*from.allow_new_users_);
+  } else {
+    allow_new_users_ = nullptr;
+  }
+  if (from._internal_has_metrics_enabled()) {
+    metrics_enabled_ = new ::enterprise_management::MetricsEnabledProto(*from.metrics_enabled_);
+  } else {
+    metrics_enabled_ = nullptr;
+  }
+  if (from._internal_has_release_channel()) {
+    release_channel_ = new ::enterprise_management::ReleaseChannelProto(*from.release_channel_);
+  } else {
+    release_channel_ = nullptr;
+  }
+  if (from._internal_has_open_network_configuration()) {
+    open_network_configuration_ = new ::enterprise_management::DeviceOpenNetworkConfigurationProto(*from.open_network_configuration_);
+  } else {
+    open_network_configuration_ = nullptr;
+  }
+  if (from._internal_has_device_reporting()) {
+    device_reporting_ = new ::enterprise_management::DeviceReportingProto(*from.device_reporting_);
+  } else {
+    device_reporting_ = nullptr;
+  }
+  if (from._internal_has_ephemeral_users_enabled()) {
+    ephemeral_users_enabled_ = new ::enterprise_management::EphemeralUsersEnabledProto(*from.ephemeral_users_enabled_);
+  } else {
+    ephemeral_users_enabled_ = nullptr;
+  }
+  if (from._internal_has_app_pack()) {
+    app_pack_ = new ::enterprise_management::OBSOLETE_AppPackProto(*from.app_pack_);
+  } else {
+    app_pack_ = nullptr;
+  }
+  if (from._internal_has_forced_logout_timeouts()) {
+    forced_logout_timeouts_ = new ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto(*from.forced_logout_timeouts_);
+  } else {
+    forced_logout_timeouts_ = nullptr;
+  }
+  if (from._internal_has_login_screen_saver()) {
+    login_screen_saver_ = new ::enterprise_management::OBSOLETE_ScreenSaverProto(*from.login_screen_saver_);
+  } else {
+    login_screen_saver_ = nullptr;
+  }
+  if (from._internal_has_auto_update_settings()) {
+    auto_update_settings_ = new ::enterprise_management::AutoUpdateSettingsProto(*from.auto_update_settings_);
+  } else {
+    auto_update_settings_ = nullptr;
+  }
+  if (from._internal_has_start_up_urls()) {
+    start_up_urls_ = new ::enterprise_management::OBSOLETE_StartUpUrlsProto(*from.start_up_urls_);
+  } else {
+    start_up_urls_ = nullptr;
+  }
+  if (from._internal_has_pinned_apps()) {
+    pinned_apps_ = new ::enterprise_management::OBSOLETE_PinnedAppsProto(*from.pinned_apps_);
+  } else {
+    pinned_apps_ = nullptr;
+  }
+  if (from._internal_has_system_timezone()) {
+    system_timezone_ = new ::enterprise_management::SystemTimezoneProto(*from.system_timezone_);
+  } else {
+    system_timezone_ = nullptr;
+  }
+  if (from._internal_has_device_local_accounts()) {
+    device_local_accounts_ = new ::enterprise_management::DeviceLocalAccountsProto(*from.device_local_accounts_);
+  } else {
+    device_local_accounts_ = nullptr;
+  }
+  if (from._internal_has_allow_redeem_offers()) {
+    allow_redeem_offers_ = new ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto(*from.allow_redeem_offers_);
+  } else {
+    allow_redeem_offers_ = nullptr;
+  }
+  if (from._internal_has_feature_flags()) {
+    feature_flags_ = new ::enterprise_management::FeatureFlagsProto(*from.feature_flags_);
+  } else {
+    feature_flags_ = nullptr;
+  }
+  if (from._internal_has_uptime_limit()) {
+    uptime_limit_ = new ::enterprise_management::UptimeLimitProto(*from.uptime_limit_);
+  } else {
+    uptime_limit_ = nullptr;
+  }
+  if (from._internal_has_variations_parameter()) {
+    variations_parameter_ = new ::enterprise_management::VariationsParameterProto(*from.variations_parameter_);
+  } else {
+    variations_parameter_ = nullptr;
+  }
+  if (from._internal_has_attestation_settings()) {
+    attestation_settings_ = new ::enterprise_management::AttestationSettingsProto(*from.attestation_settings_);
+  } else {
+    attestation_settings_ = nullptr;
+  }
+  if (from._internal_has_accessibility_settings()) {
+    accessibility_settings_ = new ::enterprise_management::AccessibilitySettingsProto(*from.accessibility_settings_);
+  } else {
+    accessibility_settings_ = nullptr;
+  }
+  if (from._internal_has_supervised_users_settings()) {
+    supervised_users_settings_ = new ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto(*from.supervised_users_settings_);
+  } else {
+    supervised_users_settings_ = nullptr;
+  }
+  if (from._internal_has_login_screen_power_management()) {
+    login_screen_power_management_ = new ::enterprise_management::LoginScreenPowerManagementProto(*from.login_screen_power_management_);
+  } else {
+    login_screen_power_management_ = nullptr;
+  }
+  if (from._internal_has_use_24hour_clock()) {
+    use_24hour_clock_ = new ::enterprise_management::SystemUse24HourClockProto(*from.use_24hour_clock_);
+  } else {
+    use_24hour_clock_ = nullptr;
+  }
+  if (from._internal_has_auto_clean_up_settings()) {
+    auto_clean_up_settings_ = new ::enterprise_management::AutoCleanupSettigsProto(*from.auto_clean_up_settings_);
+  } else {
+    auto_clean_up_settings_ = nullptr;
+  }
+  if (from._internal_has_system_settings()) {
+    system_settings_ = new ::enterprise_management::SystemSettingsProto(*from.system_settings_);
+  } else {
+    system_settings_ = nullptr;
+  }
+  if (from._internal_has_saml_settings()) {
+    saml_settings_ = new ::enterprise_management::SAMLSettingsProto(*from.saml_settings_);
+  } else {
+    saml_settings_ = nullptr;
+  }
+  if (from._internal_has_reboot_on_shutdown()) {
+    reboot_on_shutdown_ = new ::enterprise_management::RebootOnShutdownProto(*from.reboot_on_shutdown_);
+  } else {
+    reboot_on_shutdown_ = nullptr;
+  }
+  if (from._internal_has_device_heartbeat_settings()) {
+    device_heartbeat_settings_ = new ::enterprise_management::DeviceHeartbeatSettingsProto(*from.device_heartbeat_settings_);
+  } else {
+    device_heartbeat_settings_ = nullptr;
+  }
+  if (from._internal_has_extension_cache_size()) {
+    extension_cache_size_ = new ::enterprise_management::ExtensionCacheSizeProto(*from.extension_cache_size_);
+  } else {
+    extension_cache_size_ = nullptr;
+  }
+  if (from._internal_has_login_screen_domain_auto_complete()) {
+    login_screen_domain_auto_complete_ = new ::enterprise_management::LoginScreenDomainAutoCompleteProto(*from.login_screen_domain_auto_complete_);
+  } else {
+    login_screen_domain_auto_complete_ = nullptr;
+  }
+  if (from._internal_has_device_log_upload_settings()) {
+    device_log_upload_settings_ = new ::enterprise_management::DeviceLogUploadSettingsProto(*from.device_log_upload_settings_);
+  } else {
+    device_log_upload_settings_ = nullptr;
+  }
+  if (from._internal_has_display_rotation_default()) {
+    display_rotation_default_ = new ::enterprise_management::DisplayRotationDefaultProto(*from.display_rotation_default_);
+  } else {
+    display_rotation_default_ = nullptr;
+  }
+  if (from._internal_has_allow_kiosk_app_control_chrome_version()) {
+    allow_kiosk_app_control_chrome_version_ = new ::enterprise_management::AllowKioskAppControlChromeVersionProto(*from.allow_kiosk_app_control_chrome_version_);
+  } else {
+    allow_kiosk_app_control_chrome_version_ = nullptr;
+  }
+  if (from._internal_has_login_authentication_behavior()) {
+    login_authentication_behavior_ = new ::enterprise_management::LoginAuthenticationBehaviorProto(*from.login_authentication_behavior_);
+  } else {
+    login_authentication_behavior_ = nullptr;
+  }
+  if (from._internal_has_usb_detachable_whitelist()) {
+    usb_detachable_whitelist_ = new ::enterprise_management::UsbDetachableWhitelistProto(*from.usb_detachable_whitelist_);
+  } else {
+    usb_detachable_whitelist_ = nullptr;
+  }
+  if (from._internal_has_allow_bluetooth()) {
+    allow_bluetooth_ = new ::enterprise_management::AllowBluetoothProto(*from.allow_bluetooth_);
+  } else {
+    allow_bluetooth_ = nullptr;
+  }
+  if (from._internal_has_quirks_download_enabled()) {
+    quirks_download_enabled_ = new ::enterprise_management::DeviceQuirksDownloadEnabledProto(*from.quirks_download_enabled_);
+  } else {
+    quirks_download_enabled_ = nullptr;
+  }
+  if (from._internal_has_login_video_capture_allowed_urls()) {
+    login_video_capture_allowed_urls_ = new ::enterprise_management::LoginVideoCaptureAllowedUrlsProto(*from.login_video_capture_allowed_urls_);
+  } else {
+    login_video_capture_allowed_urls_ = nullptr;
+  }
+  if (from._internal_has_device_login_screen_extensions()) {
+    device_login_screen_extensions_ = new ::enterprise_management::DeviceLoginScreenExtensionsProto(*from.device_login_screen_extensions_);
+  } else {
+    device_login_screen_extensions_ = nullptr;
+  }
+  if (from._internal_has_network_throttling()) {
+    network_throttling_ = new ::enterprise_management::NetworkThrottlingEnabledProto(*from.network_throttling_);
+  } else {
+    network_throttling_ = nullptr;
+  }
+  if (from._internal_has_device_wallpaper_image()) {
+    device_wallpaper_image_ = new ::enterprise_management::DeviceWallpaperImageProto(*from.device_wallpaper_image_);
+  } else {
+    device_wallpaper_image_ = nullptr;
+  }
+  if (from._internal_has_login_screen_locales()) {
+    login_screen_locales_ = new ::enterprise_management::LoginScreenLocalesProto(*from.login_screen_locales_);
+  } else {
+    login_screen_locales_ = nullptr;
+  }
+  if (from._internal_has_login_screen_input_methods()) {
+    login_screen_input_methods_ = new ::enterprise_management::LoginScreenInputMethodsProto(*from.login_screen_input_methods_);
+  } else {
+    login_screen_input_methods_ = nullptr;
+  }
+  if (from._internal_has_device_ecryptfs_migration_strategy()) {
+    device_ecryptfs_migration_strategy_ = new ::enterprise_management::DeviceEcryptfsMigrationStrategyProto(*from.device_ecryptfs_migration_strategy_);
+  } else {
+    device_ecryptfs_migration_strategy_ = nullptr;
+  }
+  if (from._internal_has_device_second_factor_authentication()) {
+    device_second_factor_authentication_ = new ::enterprise_management::DeviceSecondFactorAuthenticationProto(*from.device_second_factor_authentication_);
+  } else {
+    device_second_factor_authentication_ = nullptr;
+  }
+  if (from._internal_has_cast_receiver_name()) {
+    cast_receiver_name_ = new ::enterprise_management::CastReceiverNameProto(*from.cast_receiver_name_);
+  } else {
+    cast_receiver_name_ = nullptr;
+  }
+  if (from._internal_has_device_off_hours()) {
+    device_off_hours_ = new ::enterprise_management::DeviceOffHoursProto(*from.device_off_hours_);
+  } else {
+    device_off_hours_ = nullptr;
+  }
+  if (from._internal_has_native_device_printers()) {
+    native_device_printers_ = new ::enterprise_management::DeviceNativePrintersProto(*from.native_device_printers_);
+  } else {
+    native_device_printers_ = nullptr;
+  }
+  if (from._internal_has_native_device_printers_access_mode()) {
+    native_device_printers_access_mode_ = new ::enterprise_management::DeviceNativePrintersAccessModeProto(*from.native_device_printers_access_mode_);
+  } else {
+    native_device_printers_access_mode_ = nullptr;
+  }
+  if (from._internal_has_native_device_printers_blacklist()) {
+    native_device_printers_blacklist_ = new ::enterprise_management::DeviceNativePrintersBlacklistProto(*from.native_device_printers_blacklist_);
+  } else {
+    native_device_printers_blacklist_ = nullptr;
+  }
+  if (from._internal_has_native_device_printers_whitelist()) {
+    native_device_printers_whitelist_ = new ::enterprise_management::DeviceNativePrintersWhitelistProto(*from.native_device_printers_whitelist_);
+  } else {
+    native_device_printers_whitelist_ = nullptr;
+  }
+  if (from._internal_has_tpm_firmware_update_settings()) {
+    tpm_firmware_update_settings_ = new ::enterprise_management::TPMFirmwareUpdateSettingsProto(*from.tpm_firmware_update_settings_);
+  } else {
+    tpm_firmware_update_settings_ = nullptr;
+  }
+  if (from._internal_has_minimum_required_version()) {
+    minimum_required_version_ = new ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto(*from.minimum_required_version_);
+  } else {
+    minimum_required_version_ = nullptr;
+  }
+  if (from._internal_has_device_login_screen_auto_select_certificate_for_urls()) {
+    device_login_screen_auto_select_certificate_for_urls_ = new ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls(*from.device_login_screen_auto_select_certificate_for_urls_);
+  } else {
+    device_login_screen_auto_select_certificate_for_urls_ = nullptr;
+  }
+  if (from._internal_has_unaffiliated_arc_allowed()) {
+    unaffiliated_arc_allowed_ = new ::enterprise_management::UnaffiliatedArcAllowedProto(*from.unaffiliated_arc_allowed_);
+  } else {
+    unaffiliated_arc_allowed_ = nullptr;
+  }
+  if (from._internal_has_network_hostname()) {
+    network_hostname_ = new ::enterprise_management::NetworkHostnameProto(*from.network_hostname_);
+  } else {
+    network_hostname_ = nullptr;
+  }
+  if (from._internal_has_device_kerberos_encryption_types()) {
+    device_kerberos_encryption_types_ = new ::enterprise_management::DeviceKerberosEncryptionTypesProto(*from.device_kerberos_encryption_types_);
+  } else {
+    device_kerberos_encryption_types_ = nullptr;
+  }
+  if (from._internal_has_device_user_policy_loopback_processing_mode()) {
+    device_user_policy_loopback_processing_mode_ = new ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto(*from.device_user_policy_loopback_processing_mode_);
+  } else {
+    device_user_policy_loopback_processing_mode_ = nullptr;
+  }
+  if (from._internal_has_device_login_screen_isolate_origins()) {
+    device_login_screen_isolate_origins_ = new ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto(*from.device_login_screen_isolate_origins_);
+  } else {
+    device_login_screen_isolate_origins_ = nullptr;
+  }
+  if (from._internal_has_device_login_screen_site_per_process()) {
+    device_login_screen_site_per_process_ = new ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto(*from.device_login_screen_site_per_process_);
+  } else {
+    device_login_screen_site_per_process_ = nullptr;
+  }
+  if (from._internal_has_virtual_machines_allowed()) {
+    virtual_machines_allowed_ = new ::enterprise_management::VirtualMachinesAllowedProto(*from.virtual_machines_allowed_);
+  } else {
+    virtual_machines_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_machine_password_change_rate()) {
+    device_machine_password_change_rate_ = new ::enterprise_management::DeviceMachinePasswordChangeRateProto(*from.device_machine_password_change_rate_);
+  } else {
+    device_machine_password_change_rate_ = nullptr;
+  }
+  if (from._internal_has_saml_login_authentication_type()) {
+    saml_login_authentication_type_ = new ::enterprise_management::SamlLoginAuthenticationTypeProto(*from.saml_login_authentication_type_);
+  } else {
+    saml_login_authentication_type_ = nullptr;
+  }
+  if (from._internal_has_device_unaffiliated_crostini_allowed()) {
+    device_unaffiliated_crostini_allowed_ = new ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto(*from.device_unaffiliated_crostini_allowed_);
+  } else {
+    device_unaffiliated_crostini_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_wifi_fast_transition_enabled()) {
+    device_wifi_fast_transition_enabled_ = new ::enterprise_management::DeviceWiFiFastTransitionEnabledProto(*from.device_wifi_fast_transition_enabled_);
+  } else {
+    device_wifi_fast_transition_enabled_ = nullptr;
+  }
+  if (from._internal_has_device_display_resolution()) {
+    device_display_resolution_ = new ::enterprise_management::DeviceDisplayResolutionProto(*from.device_display_resolution_);
+  } else {
+    device_display_resolution_ = nullptr;
+  }
+  if (from._internal_has_plugin_vm_allowed()) {
+    plugin_vm_allowed_ = new ::enterprise_management::PluginVmAllowedProto(*from.plugin_vm_allowed_);
+  } else {
+    plugin_vm_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_gpo_cache_lifetime()) {
+    device_gpo_cache_lifetime_ = new ::enterprise_management::DeviceGpoCacheLifetimeProto(*from.device_gpo_cache_lifetime_);
+  } else {
+    device_gpo_cache_lifetime_ = nullptr;
+  }
+  if (from._internal_has_device_auth_data_cache_lifetime()) {
+    device_auth_data_cache_lifetime_ = new ::enterprise_management::DeviceAuthDataCacheLifetimeProto(*from.device_auth_data_cache_lifetime_);
+  } else {
+    device_auth_data_cache_lifetime_ = nullptr;
+  }
+  if (from._internal_has_plugin_vm_license_key()) {
+    plugin_vm_license_key_ = new ::enterprise_management::PluginVmLicenseKeyProto(*from.plugin_vm_license_key_);
+  } else {
+    plugin_vm_license_key_ = nullptr;
+  }
+  if (from._internal_has_device_reboot_on_user_signout()) {
+    device_reboot_on_user_signout_ = new ::enterprise_management::DeviceRebootOnUserSignoutProto(*from.device_reboot_on_user_signout_);
+  } else {
+    device_reboot_on_user_signout_ = nullptr;
+  }
+  if (from._internal_has_device_wilco_dtc_allowed()) {
+    device_wilco_dtc_allowed_ = new ::enterprise_management::DeviceWilcoDtcAllowedProto(*from.device_wilco_dtc_allowed_);
+  } else {
+    device_wilco_dtc_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_wilco_dtc_configuration()) {
+    device_wilco_dtc_configuration_ = new ::enterprise_management::DeviceWilcoDtcConfigurationProto(*from.device_wilco_dtc_configuration_);
+  } else {
+    device_wilco_dtc_configuration_ = nullptr;
+  }
+  if (from._internal_has_device_wifi_allowed()) {
+    device_wifi_allowed_ = new ::enterprise_management::DeviceWiFiAllowedProto(*from.device_wifi_allowed_);
+  } else {
+    device_wifi_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_power_peak_shift()) {
+    device_power_peak_shift_ = new ::enterprise_management::DevicePowerPeakShiftProto(*from.device_power_peak_shift_);
+  } else {
+    device_power_peak_shift_ = nullptr;
+  }
+  if (from._internal_has_device_boot_on_ac()) {
+    device_boot_on_ac_ = new ::enterprise_management::DeviceBootOnAcProto(*from.device_boot_on_ac_);
+  } else {
+    device_boot_on_ac_ = nullptr;
+  }
+  if (from._internal_has_device_dock_mac_address_source()) {
+    device_dock_mac_address_source_ = new ::enterprise_management::DeviceDockMacAddressSourceProto(*from.device_dock_mac_address_source_);
+  } else {
+    device_dock_mac_address_source_ = nullptr;
+  }
+  if (from._internal_has_device_advanced_battery_charge_mode()) {
+    device_advanced_battery_charge_mode_ = new ::enterprise_management::DeviceAdvancedBatteryChargeModeProto(*from.device_advanced_battery_charge_mode_);
+  } else {
+    device_advanced_battery_charge_mode_ = nullptr;
+  }
+  if (from._internal_has_device_battery_charge_mode()) {
+    device_battery_charge_mode_ = new ::enterprise_management::DeviceBatteryChargeModeProto(*from.device_battery_charge_mode_);
+  } else {
+    device_battery_charge_mode_ = nullptr;
+  }
+  if (from._internal_has_device_usb_power_share()) {
+    device_usb_power_share_ = new ::enterprise_management::DeviceUsbPowerShareProto(*from.device_usb_power_share_);
+  } else {
+    device_usb_power_share_ = nullptr;
+  }
+  if (from._internal_has_device_scheduled_update_check()) {
+    device_scheduled_update_check_ = new ::enterprise_management::DeviceScheduledUpdateCheckProto(*from.device_scheduled_update_check_);
+  } else {
+    device_scheduled_update_check_ = nullptr;
+  }
+  if (from._internal_has_device_powerwash_allowed()) {
+    device_powerwash_allowed_ = new ::enterprise_management::DevicePowerwashAllowedProto(*from.device_powerwash_allowed_);
+  } else {
+    device_powerwash_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_login_screen_webusb_allow_devices_for_urls()) {
+    device_login_screen_webusb_allow_devices_for_urls_ = new ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto(*from.device_login_screen_webusb_allow_devices_for_urls_);
+  } else {
+    device_login_screen_webusb_allow_devices_for_urls_ = nullptr;
+  }
+  if (from._internal_has_device_login_screen_system_info_enforced()) {
+    device_login_screen_system_info_enforced_ = new ::enterprise_management::BooleanPolicyProto(*from.device_login_screen_system_info_enforced_);
+  } else {
+    device_login_screen_system_info_enforced_ = nullptr;
+  }
+  if (from._internal_has_device_web_based_attestation_allowed_urls()) {
+    device_web_based_attestation_allowed_urls_ = new ::enterprise_management::StringListPolicyProto(*from.device_web_based_attestation_allowed_urls_);
+  } else {
+    device_web_based_attestation_allowed_urls_ = nullptr;
+  }
+  if (from._internal_has_device_show_numeric_keyboard_for_password()) {
+    device_show_numeric_keyboard_for_password_ = new ::enterprise_management::BooleanPolicyProto(*from.device_show_numeric_keyboard_for_password_);
+  } else {
+    device_show_numeric_keyboard_for_password_ = nullptr;
+  }
+  if (from._internal_has_login_screen_primary_mouse_button_switch()) {
+    login_screen_primary_mouse_button_switch_ = new ::enterprise_management::BooleanPolicyProto(*from.login_screen_primary_mouse_button_switch_);
+  } else {
+    login_screen_primary_mouse_button_switch_ = nullptr;
+  }
+  if (from._internal_has_device_minimum_version()) {
+    device_minimum_version_ = new ::enterprise_management::StringPolicyProto(*from.device_minimum_version_);
+  } else {
+    device_minimum_version_ = nullptr;
+  }
+  if (from._internal_has_system_proxy_settings()) {
+    system_proxy_settings_ = new ::enterprise_management::SystemProxySettingsProto(*from.system_proxy_settings_);
+  } else {
+    system_proxy_settings_ = nullptr;
+  }
+  if (from._internal_has_device_chrome_variations_type()) {
+    device_chrome_variations_type_ = new ::enterprise_management::IntegerPolicyProto(*from.device_chrome_variations_type_);
+  } else {
+    device_chrome_variations_type_ = nullptr;
+  }
+  if (from._internal_has_device_login_screen_privacy_screen_enabled()) {
+    device_login_screen_privacy_screen_enabled_ = new ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto(*from.device_login_screen_privacy_screen_enabled_);
+  } else {
+    device_login_screen_privacy_screen_enabled_ = nullptr;
+  }
+  if (from._internal_has_required_client_certificate_for_device()) {
+    required_client_certificate_for_device_ = new ::enterprise_management::RequiredClientCertificateForDeviceProto(*from.required_client_certificate_for_device_);
+  } else {
+    required_client_certificate_for_device_ = nullptr;
+  }
+  if (from._internal_has_device_crostini_arc_adb_sideloading_allowed()) {
+    device_crostini_arc_adb_sideloading_allowed_ = new ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto(*from.device_crostini_arc_adb_sideloading_allowed_);
+  } else {
+    device_crostini_arc_adb_sideloading_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_minimum_version_aue_message()) {
+    device_minimum_version_aue_message_ = new ::enterprise_management::StringPolicyProto(*from.device_minimum_version_aue_message_);
+  } else {
+    device_minimum_version_aue_message_ = nullptr;
+  }
+  if (from._internal_has_managed_guest_session_privacy_warnings()) {
+    managed_guest_session_privacy_warnings_ = new ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto(*from.managed_guest_session_privacy_warnings_);
+  } else {
+    managed_guest_session_privacy_warnings_ = nullptr;
+  }
+  if (from._internal_has_external_print_servers()) {
+    external_print_servers_ = new ::enterprise_management::DeviceExternalPrintServersProto(*from.external_print_servers_);
+  } else {
+    external_print_servers_ = nullptr;
+  }
+  if (from._internal_has_external_print_servers_allowlist()) {
+    external_print_servers_allowlist_ = new ::enterprise_management::DeviceExternalPrintServersAllowlistProto(*from.external_print_servers_allowlist_);
+  } else {
+    external_print_servers_allowlist_ = nullptr;
+  }
+  if (from._internal_has_device_printers_access_mode()) {
+    device_printers_access_mode_ = new ::enterprise_management::DevicePrintersAccessModeProto(*from.device_printers_access_mode_);
+  } else {
+    device_printers_access_mode_ = nullptr;
+  }
+  if (from._internal_has_device_printers_blocklist()) {
+    device_printers_blocklist_ = new ::enterprise_management::DevicePrintersBlocklistProto(*from.device_printers_blocklist_);
+  } else {
+    device_printers_blocklist_ = nullptr;
+  }
+  if (from._internal_has_device_printers_allowlist()) {
+    device_printers_allowlist_ = new ::enterprise_management::DevicePrintersAllowlistProto(*from.device_printers_allowlist_);
+  } else {
+    device_printers_allowlist_ = nullptr;
+  }
+  if (from._internal_has_device_printers()) {
+    device_printers_ = new ::enterprise_management::DevicePrintersProto(*from.device_printers_);
+  } else {
+    device_printers_ = nullptr;
+  }
+  if (from._internal_has_device_show_low_disk_space_notification()) {
+    device_show_low_disk_space_notification_ = new ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto(*from.device_show_low_disk_space_notification_);
+  } else {
+    device_show_low_disk_space_notification_ = nullptr;
+  }
+  if (from._internal_has_user_allowlist()) {
+    user_allowlist_ = new ::enterprise_management::UserAllowlistProto(*from.user_allowlist_);
+  } else {
+    user_allowlist_ = nullptr;
+  }
+  if (from._internal_has_usb_detachable_allowlist()) {
+    usb_detachable_allowlist_ = new ::enterprise_management::UsbDetachableAllowlistProto(*from.usb_detachable_allowlist_);
+  } else {
+    usb_detachable_allowlist_ = nullptr;
+  }
+  if (from._internal_has_family_link_accounts_allowed()) {
+    family_link_accounts_allowed_ = new ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto(*from.family_link_accounts_allowed_);
+  } else {
+    family_link_accounts_allowed_ = nullptr;
+  }
+  if (from._internal_has_arc_data_snapshot_hours()) {
+    arc_data_snapshot_hours_ = new ::enterprise_management::DeviceArcDataSnapshotHoursProto(*from.arc_data_snapshot_hours_);
+  } else {
+    arc_data_snapshot_hours_ = nullptr;
+  }
+  if (from._internal_has_device_allow_mgs_to_store_display_properties()) {
+    device_allow_mgs_to_store_display_properties_ = new ::enterprise_management::BooleanPolicyProto(*from.device_allow_mgs_to_store_display_properties_);
+  } else {
+    device_allow_mgs_to_store_display_properties_ = nullptr;
+  }
+  if (from._internal_has_device_system_wide_tracing_enabled()) {
+    device_system_wide_tracing_enabled_ = new ::enterprise_management::DeviceSystemWideTracingEnabledProto(*from.device_system_wide_tracing_enabled_);
+  } else {
+    device_system_wide_tracing_enabled_ = nullptr;
+  }
+  if (from._internal_has_device_pci_peripheral_data_access_enabled()) {
+    device_pci_peripheral_data_access_enabled_ = new ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto(*from.device_pci_peripheral_data_access_enabled_);
+  } else {
+    device_pci_peripheral_data_access_enabled_ = nullptr;
+  }
+  if (from._internal_has_device_borealis_allowed()) {
+    device_borealis_allowed_ = new ::enterprise_management::DeviceBorealisAllowedProto(*from.device_borealis_allowed_);
+  } else {
+    device_borealis_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_allowed_bluetooth_services()) {
+    device_allowed_bluetooth_services_ = new ::enterprise_management::DeviceAllowedBluetoothServicesProto(*from.device_allowed_bluetooth_services_);
+  } else {
+    device_allowed_bluetooth_services_ = nullptr;
+  }
+  if (from._internal_has_device_debug_packet_capture_allowed()) {
+    device_debug_packet_capture_allowed_ = new ::enterprise_management::DeviceDebugPacketCaptureAllowedProto(*from.device_debug_packet_capture_allowed_);
+  } else {
+    device_debug_packet_capture_allowed_ = nullptr;
+  }
+  if (from._internal_has_device_scheduled_reboot()) {
+    device_scheduled_reboot_ = new ::enterprise_management::DeviceScheduledRebootProto(*from.device_scheduled_reboot_);
+  } else {
+    device_scheduled_reboot_ = nullptr;
+  }
+  if (from._internal_has_device_pci_peripheral_data_access_enabled_v2()) {
+    device_pci_peripheral_data_access_enabled_v2_ = new ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2(*from.device_pci_peripheral_data_access_enabled_v2_);
+  } else {
+    device_pci_peripheral_data_access_enabled_v2_ = nullptr;
+  }
+  if (from._internal_has_device_restricted_managed_guest_session_enabled()) {
+    device_restricted_managed_guest_session_enabled_ = new ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto(*from.device_restricted_managed_guest_session_enabled_);
+  } else {
+    device_restricted_managed_guest_session_enabled_ = nullptr;
+  }
+  if (from._internal_has_hostname_user_configurable()) {
+    hostname_user_configurable_ = new ::enterprise_management::HostnameUserConfigurableProto(*from.hostname_user_configurable_);
+  } else {
+    hostname_user_configurable_ = nullptr;
+  }
+  if (from._internal_has_login_screen_prompt_on_multiple_matching_certificates()) {
+    login_screen_prompt_on_multiple_matching_certificates_ = new ::enterprise_management::BooleanPolicyProto(*from.login_screen_prompt_on_multiple_matching_certificates_);
+  } else {
+    login_screen_prompt_on_multiple_matching_certificates_ = nullptr;
+  }
+  if (from._internal_has_kiosk_crx_manifest_update_url_ignored()) {
+    kiosk_crx_manifest_update_url_ignored_ = new ::enterprise_management::BooleanPolicyProto(*from.kiosk_crx_manifest_update_url_ignored_);
+  } else {
+    kiosk_crx_manifest_update_url_ignored_ = nullptr;
+  }
+  if (from._internal_has_device_i18n_shortcuts_enabled()) {
+    device_i18n_shortcuts_enabled_ = new ::enterprise_management::DeviceI18nShortcutsEnabledProto(*from.device_i18n_shortcuts_enabled_);
+  } else {
+    device_i18n_shortcuts_enabled_ = nullptr;
+  }
+  if (from._internal_has_chromad_to_cloud_migration_enabled()) {
+    chromad_to_cloud_migration_enabled_ = new ::enterprise_management::BooleanPolicyProto(*from.chromad_to_cloud_migration_enabled_);
+  } else {
+    chromad_to_cloud_migration_enabled_ = nullptr;
+  }
+  if (from._internal_has_hardware_data_usage_enabled()) {
+    hardware_data_usage_enabled_ = new ::enterprise_management::RevenDeviceHWDataUsageEnabledProto(*from.hardware_data_usage_enabled_);
+  } else {
+    hardware_data_usage_enabled_ = nullptr;
+  }
+  if (from._internal_has_login_web_ui_lazy_loading()) {
+    login_web_ui_lazy_loading_ = new ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto(*from.login_web_ui_lazy_loading_);
+  } else {
+    login_web_ui_lazy_loading_ = nullptr;
+  }
+  if (from._internal_has_keylocker_for_storage_encryption_enabled()) {
+    keylocker_for_storage_encryption_enabled_ = new ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto(*from.keylocker_for_storage_encryption_enabled_);
+  } else {
+    keylocker_for_storage_encryption_enabled_ = nullptr;
+  }
+  if (from._internal_has_device_run_automatic_cleanup_on_login()) {
+    device_run_automatic_cleanup_on_login_ = new ::enterprise_management::BooleanPolicyProto(*from.device_run_automatic_cleanup_on_login_);
+  } else {
+    device_run_automatic_cleanup_on_login_ = nullptr;
+  }
+  if (from._internal_has_device_encrypted_reporting_pipeline_enabled()) {
+    device_encrypted_reporting_pipeline_enabled_ = new ::enterprise_management::EncryptedReportingPipelineConfigurationProto(*from.device_encrypted_reporting_pipeline_enabled_);
+  } else {
+    device_encrypted_reporting_pipeline_enabled_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeDeviceSettingsProto)
+}
+
+void ChromeDeviceSettingsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChromeDeviceSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  ::memset(&device_policy_refresh_rate_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&device_encrypted_reporting_pipeline_enabled_) -
+      reinterpret_cast<char*>(&device_policy_refresh_rate_)) + sizeof(device_encrypted_reporting_pipeline_enabled_));
+}
+
+ChromeDeviceSettingsProto::~ChromeDeviceSettingsProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeDeviceSettingsProto)
+  SharedDtor();
+}
+
+void ChromeDeviceSettingsProto::SharedDtor() {
+  if (this != internal_default_instance()) delete device_policy_refresh_rate_;
+  if (this != internal_default_instance()) delete user_whitelist_;
+  if (this != internal_default_instance()) delete guest_mode_enabled_;
+  if (this != internal_default_instance()) delete device_proxy_settings_;
+  if (this != internal_default_instance()) delete camera_enabled_;
+  if (this != internal_default_instance()) delete show_user_names_;
+  if (this != internal_default_instance()) delete data_roaming_enabled_;
+  if (this != internal_default_instance()) delete allow_new_users_;
+  if (this != internal_default_instance()) delete metrics_enabled_;
+  if (this != internal_default_instance()) delete release_channel_;
+  if (this != internal_default_instance()) delete open_network_configuration_;
+  if (this != internal_default_instance()) delete device_reporting_;
+  if (this != internal_default_instance()) delete ephemeral_users_enabled_;
+  if (this != internal_default_instance()) delete app_pack_;
+  if (this != internal_default_instance()) delete forced_logout_timeouts_;
+  if (this != internal_default_instance()) delete login_screen_saver_;
+  if (this != internal_default_instance()) delete auto_update_settings_;
+  if (this != internal_default_instance()) delete start_up_urls_;
+  if (this != internal_default_instance()) delete pinned_apps_;
+  if (this != internal_default_instance()) delete system_timezone_;
+  if (this != internal_default_instance()) delete device_local_accounts_;
+  if (this != internal_default_instance()) delete allow_redeem_offers_;
+  if (this != internal_default_instance()) delete feature_flags_;
+  if (this != internal_default_instance()) delete uptime_limit_;
+  if (this != internal_default_instance()) delete variations_parameter_;
+  if (this != internal_default_instance()) delete attestation_settings_;
+  if (this != internal_default_instance()) delete accessibility_settings_;
+  if (this != internal_default_instance()) delete supervised_users_settings_;
+  if (this != internal_default_instance()) delete login_screen_power_management_;
+  if (this != internal_default_instance()) delete use_24hour_clock_;
+  if (this != internal_default_instance()) delete auto_clean_up_settings_;
+  if (this != internal_default_instance()) delete system_settings_;
+  if (this != internal_default_instance()) delete saml_settings_;
+  if (this != internal_default_instance()) delete reboot_on_shutdown_;
+  if (this != internal_default_instance()) delete device_heartbeat_settings_;
+  if (this != internal_default_instance()) delete extension_cache_size_;
+  if (this != internal_default_instance()) delete login_screen_domain_auto_complete_;
+  if (this != internal_default_instance()) delete device_log_upload_settings_;
+  if (this != internal_default_instance()) delete display_rotation_default_;
+  if (this != internal_default_instance()) delete allow_kiosk_app_control_chrome_version_;
+  if (this != internal_default_instance()) delete login_authentication_behavior_;
+  if (this != internal_default_instance()) delete usb_detachable_whitelist_;
+  if (this != internal_default_instance()) delete allow_bluetooth_;
+  if (this != internal_default_instance()) delete quirks_download_enabled_;
+  if (this != internal_default_instance()) delete login_video_capture_allowed_urls_;
+  if (this != internal_default_instance()) delete device_login_screen_extensions_;
+  if (this != internal_default_instance()) delete network_throttling_;
+  if (this != internal_default_instance()) delete device_wallpaper_image_;
+  if (this != internal_default_instance()) delete login_screen_locales_;
+  if (this != internal_default_instance()) delete login_screen_input_methods_;
+  if (this != internal_default_instance()) delete device_ecryptfs_migration_strategy_;
+  if (this != internal_default_instance()) delete device_second_factor_authentication_;
+  if (this != internal_default_instance()) delete cast_receiver_name_;
+  if (this != internal_default_instance()) delete device_off_hours_;
+  if (this != internal_default_instance()) delete native_device_printers_;
+  if (this != internal_default_instance()) delete native_device_printers_access_mode_;
+  if (this != internal_default_instance()) delete native_device_printers_blacklist_;
+  if (this != internal_default_instance()) delete native_device_printers_whitelist_;
+  if (this != internal_default_instance()) delete tpm_firmware_update_settings_;
+  if (this != internal_default_instance()) delete minimum_required_version_;
+  if (this != internal_default_instance()) delete device_login_screen_auto_select_certificate_for_urls_;
+  if (this != internal_default_instance()) delete unaffiliated_arc_allowed_;
+  if (this != internal_default_instance()) delete network_hostname_;
+  if (this != internal_default_instance()) delete device_kerberos_encryption_types_;
+  if (this != internal_default_instance()) delete device_user_policy_loopback_processing_mode_;
+  if (this != internal_default_instance()) delete device_login_screen_isolate_origins_;
+  if (this != internal_default_instance()) delete device_login_screen_site_per_process_;
+  if (this != internal_default_instance()) delete virtual_machines_allowed_;
+  if (this != internal_default_instance()) delete device_machine_password_change_rate_;
+  if (this != internal_default_instance()) delete saml_login_authentication_type_;
+  if (this != internal_default_instance()) delete device_unaffiliated_crostini_allowed_;
+  if (this != internal_default_instance()) delete device_wifi_fast_transition_enabled_;
+  if (this != internal_default_instance()) delete device_display_resolution_;
+  if (this != internal_default_instance()) delete plugin_vm_allowed_;
+  if (this != internal_default_instance()) delete device_gpo_cache_lifetime_;
+  if (this != internal_default_instance()) delete device_auth_data_cache_lifetime_;
+  if (this != internal_default_instance()) delete plugin_vm_license_key_;
+  if (this != internal_default_instance()) delete device_reboot_on_user_signout_;
+  if (this != internal_default_instance()) delete device_wilco_dtc_allowed_;
+  if (this != internal_default_instance()) delete device_wilco_dtc_configuration_;
+  if (this != internal_default_instance()) delete device_wifi_allowed_;
+  if (this != internal_default_instance()) delete device_power_peak_shift_;
+  if (this != internal_default_instance()) delete device_boot_on_ac_;
+  if (this != internal_default_instance()) delete device_dock_mac_address_source_;
+  if (this != internal_default_instance()) delete device_advanced_battery_charge_mode_;
+  if (this != internal_default_instance()) delete device_battery_charge_mode_;
+  if (this != internal_default_instance()) delete device_usb_power_share_;
+  if (this != internal_default_instance()) delete device_scheduled_update_check_;
+  if (this != internal_default_instance()) delete device_powerwash_allowed_;
+  if (this != internal_default_instance()) delete device_login_screen_webusb_allow_devices_for_urls_;
+  if (this != internal_default_instance()) delete device_login_screen_system_info_enforced_;
+  if (this != internal_default_instance()) delete device_web_based_attestation_allowed_urls_;
+  if (this != internal_default_instance()) delete device_show_numeric_keyboard_for_password_;
+  if (this != internal_default_instance()) delete login_screen_primary_mouse_button_switch_;
+  if (this != internal_default_instance()) delete device_minimum_version_;
+  if (this != internal_default_instance()) delete system_proxy_settings_;
+  if (this != internal_default_instance()) delete device_chrome_variations_type_;
+  if (this != internal_default_instance()) delete device_login_screen_privacy_screen_enabled_;
+  if (this != internal_default_instance()) delete required_client_certificate_for_device_;
+  if (this != internal_default_instance()) delete device_crostini_arc_adb_sideloading_allowed_;
+  if (this != internal_default_instance()) delete device_minimum_version_aue_message_;
+  if (this != internal_default_instance()) delete managed_guest_session_privacy_warnings_;
+  if (this != internal_default_instance()) delete external_print_servers_;
+  if (this != internal_default_instance()) delete external_print_servers_allowlist_;
+  if (this != internal_default_instance()) delete device_printers_access_mode_;
+  if (this != internal_default_instance()) delete device_printers_blocklist_;
+  if (this != internal_default_instance()) delete device_printers_allowlist_;
+  if (this != internal_default_instance()) delete device_printers_;
+  if (this != internal_default_instance()) delete device_show_low_disk_space_notification_;
+  if (this != internal_default_instance()) delete user_allowlist_;
+  if (this != internal_default_instance()) delete usb_detachable_allowlist_;
+  if (this != internal_default_instance()) delete family_link_accounts_allowed_;
+  if (this != internal_default_instance()) delete arc_data_snapshot_hours_;
+  if (this != internal_default_instance()) delete device_allow_mgs_to_store_display_properties_;
+  if (this != internal_default_instance()) delete device_system_wide_tracing_enabled_;
+  if (this != internal_default_instance()) delete device_pci_peripheral_data_access_enabled_;
+  if (this != internal_default_instance()) delete device_borealis_allowed_;
+  if (this != internal_default_instance()) delete device_allowed_bluetooth_services_;
+  if (this != internal_default_instance()) delete device_debug_packet_capture_allowed_;
+  if (this != internal_default_instance()) delete device_scheduled_reboot_;
+  if (this != internal_default_instance()) delete device_pci_peripheral_data_access_enabled_v2_;
+  if (this != internal_default_instance()) delete device_restricted_managed_guest_session_enabled_;
+  if (this != internal_default_instance()) delete hostname_user_configurable_;
+  if (this != internal_default_instance()) delete login_screen_prompt_on_multiple_matching_certificates_;
+  if (this != internal_default_instance()) delete kiosk_crx_manifest_update_url_ignored_;
+  if (this != internal_default_instance()) delete device_i18n_shortcuts_enabled_;
+  if (this != internal_default_instance()) delete chromad_to_cloud_migration_enabled_;
+  if (this != internal_default_instance()) delete hardware_data_usage_enabled_;
+  if (this != internal_default_instance()) delete login_web_ui_lazy_loading_;
+  if (this != internal_default_instance()) delete keylocker_for_storage_encryption_enabled_;
+  if (this != internal_default_instance()) delete device_run_automatic_cleanup_on_login_;
+  if (this != internal_default_instance()) delete device_encrypted_reporting_pipeline_enabled_;
+}
+
+void ChromeDeviceSettingsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeDeviceSettingsProto& ChromeDeviceSettingsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeDeviceSettingsProto_chrome_5fdevice_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeDeviceSettingsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeDeviceSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(device_policy_refresh_rate_ != nullptr);
+      device_policy_refresh_rate_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(user_whitelist_ != nullptr);
+      user_whitelist_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(guest_mode_enabled_ != nullptr);
+      guest_mode_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(device_proxy_settings_ != nullptr);
+      device_proxy_settings_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(camera_enabled_ != nullptr);
+      camera_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(show_user_names_ != nullptr);
+      show_user_names_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(data_roaming_enabled_ != nullptr);
+      data_roaming_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(allow_new_users_ != nullptr);
+      allow_new_users_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(metrics_enabled_ != nullptr);
+      metrics_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(release_channel_ != nullptr);
+      release_channel_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(open_network_configuration_ != nullptr);
+      open_network_configuration_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(device_reporting_ != nullptr);
+      device_reporting_->Clear();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      GOOGLE_DCHECK(ephemeral_users_enabled_ != nullptr);
+      ephemeral_users_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      GOOGLE_DCHECK(app_pack_ != nullptr);
+      app_pack_->Clear();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      GOOGLE_DCHECK(forced_logout_timeouts_ != nullptr);
+      forced_logout_timeouts_->Clear();
+    }
+    if (cached_has_bits & 0x00008000u) {
+      GOOGLE_DCHECK(login_screen_saver_ != nullptr);
+      login_screen_saver_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      GOOGLE_DCHECK(auto_update_settings_ != nullptr);
+      auto_update_settings_->Clear();
+    }
+    if (cached_has_bits & 0x00020000u) {
+      GOOGLE_DCHECK(start_up_urls_ != nullptr);
+      start_up_urls_->Clear();
+    }
+    if (cached_has_bits & 0x00040000u) {
+      GOOGLE_DCHECK(pinned_apps_ != nullptr);
+      pinned_apps_->Clear();
+    }
+    if (cached_has_bits & 0x00080000u) {
+      GOOGLE_DCHECK(system_timezone_ != nullptr);
+      system_timezone_->Clear();
+    }
+    if (cached_has_bits & 0x00100000u) {
+      GOOGLE_DCHECK(device_local_accounts_ != nullptr);
+      device_local_accounts_->Clear();
+    }
+    if (cached_has_bits & 0x00200000u) {
+      GOOGLE_DCHECK(allow_redeem_offers_ != nullptr);
+      allow_redeem_offers_->Clear();
+    }
+    if (cached_has_bits & 0x00400000u) {
+      GOOGLE_DCHECK(feature_flags_ != nullptr);
+      feature_flags_->Clear();
+    }
+    if (cached_has_bits & 0x00800000u) {
+      GOOGLE_DCHECK(uptime_limit_ != nullptr);
+      uptime_limit_->Clear();
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      GOOGLE_DCHECK(variations_parameter_ != nullptr);
+      variations_parameter_->Clear();
+    }
+    if (cached_has_bits & 0x02000000u) {
+      GOOGLE_DCHECK(attestation_settings_ != nullptr);
+      attestation_settings_->Clear();
+    }
+    if (cached_has_bits & 0x04000000u) {
+      GOOGLE_DCHECK(accessibility_settings_ != nullptr);
+      accessibility_settings_->Clear();
+    }
+    if (cached_has_bits & 0x08000000u) {
+      GOOGLE_DCHECK(supervised_users_settings_ != nullptr);
+      supervised_users_settings_->Clear();
+    }
+    if (cached_has_bits & 0x10000000u) {
+      GOOGLE_DCHECK(login_screen_power_management_ != nullptr);
+      login_screen_power_management_->Clear();
+    }
+    if (cached_has_bits & 0x20000000u) {
+      GOOGLE_DCHECK(use_24hour_clock_ != nullptr);
+      use_24hour_clock_->Clear();
+    }
+    if (cached_has_bits & 0x40000000u) {
+      GOOGLE_DCHECK(auto_clean_up_settings_ != nullptr);
+      auto_clean_up_settings_->Clear();
+    }
+    if (cached_has_bits & 0x80000000u) {
+      GOOGLE_DCHECK(system_settings_ != nullptr);
+      system_settings_->Clear();
+    }
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(saml_settings_ != nullptr);
+      saml_settings_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(reboot_on_shutdown_ != nullptr);
+      reboot_on_shutdown_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(device_heartbeat_settings_ != nullptr);
+      device_heartbeat_settings_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(extension_cache_size_ != nullptr);
+      extension_cache_size_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(login_screen_domain_auto_complete_ != nullptr);
+      login_screen_domain_auto_complete_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(device_log_upload_settings_ != nullptr);
+      device_log_upload_settings_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(display_rotation_default_ != nullptr);
+      display_rotation_default_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(allow_kiosk_app_control_chrome_version_ != nullptr);
+      allow_kiosk_app_control_chrome_version_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(login_authentication_behavior_ != nullptr);
+      login_authentication_behavior_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(usb_detachable_whitelist_ != nullptr);
+      usb_detachable_whitelist_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(allow_bluetooth_ != nullptr);
+      allow_bluetooth_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(quirks_download_enabled_ != nullptr);
+      quirks_download_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      GOOGLE_DCHECK(login_video_capture_allowed_urls_ != nullptr);
+      login_video_capture_allowed_urls_->Clear();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      GOOGLE_DCHECK(device_login_screen_extensions_ != nullptr);
+      device_login_screen_extensions_->Clear();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      GOOGLE_DCHECK(network_throttling_ != nullptr);
+      network_throttling_->Clear();
+    }
+    if (cached_has_bits & 0x00008000u) {
+      GOOGLE_DCHECK(device_wallpaper_image_ != nullptr);
+      device_wallpaper_image_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      GOOGLE_DCHECK(login_screen_locales_ != nullptr);
+      login_screen_locales_->Clear();
+    }
+    if (cached_has_bits & 0x00020000u) {
+      GOOGLE_DCHECK(login_screen_input_methods_ != nullptr);
+      login_screen_input_methods_->Clear();
+    }
+    if (cached_has_bits & 0x00040000u) {
+      GOOGLE_DCHECK(device_ecryptfs_migration_strategy_ != nullptr);
+      device_ecryptfs_migration_strategy_->Clear();
+    }
+    if (cached_has_bits & 0x00080000u) {
+      GOOGLE_DCHECK(device_second_factor_authentication_ != nullptr);
+      device_second_factor_authentication_->Clear();
+    }
+    if (cached_has_bits & 0x00100000u) {
+      GOOGLE_DCHECK(cast_receiver_name_ != nullptr);
+      cast_receiver_name_->Clear();
+    }
+    if (cached_has_bits & 0x00200000u) {
+      GOOGLE_DCHECK(device_off_hours_ != nullptr);
+      device_off_hours_->Clear();
+    }
+    if (cached_has_bits & 0x00400000u) {
+      GOOGLE_DCHECK(native_device_printers_ != nullptr);
+      native_device_printers_->Clear();
+    }
+    if (cached_has_bits & 0x00800000u) {
+      GOOGLE_DCHECK(native_device_printers_access_mode_ != nullptr);
+      native_device_printers_access_mode_->Clear();
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      GOOGLE_DCHECK(native_device_printers_blacklist_ != nullptr);
+      native_device_printers_blacklist_->Clear();
+    }
+    if (cached_has_bits & 0x02000000u) {
+      GOOGLE_DCHECK(native_device_printers_whitelist_ != nullptr);
+      native_device_printers_whitelist_->Clear();
+    }
+    if (cached_has_bits & 0x04000000u) {
+      GOOGLE_DCHECK(tpm_firmware_update_settings_ != nullptr);
+      tpm_firmware_update_settings_->Clear();
+    }
+    if (cached_has_bits & 0x08000000u) {
+      GOOGLE_DCHECK(minimum_required_version_ != nullptr);
+      minimum_required_version_->Clear();
+    }
+    if (cached_has_bits & 0x10000000u) {
+      GOOGLE_DCHECK(device_login_screen_auto_select_certificate_for_urls_ != nullptr);
+      device_login_screen_auto_select_certificate_for_urls_->Clear();
+    }
+    if (cached_has_bits & 0x20000000u) {
+      GOOGLE_DCHECK(unaffiliated_arc_allowed_ != nullptr);
+      unaffiliated_arc_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x40000000u) {
+      GOOGLE_DCHECK(network_hostname_ != nullptr);
+      network_hostname_->Clear();
+    }
+    if (cached_has_bits & 0x80000000u) {
+      GOOGLE_DCHECK(device_kerberos_encryption_types_ != nullptr);
+      device_kerberos_encryption_types_->Clear();
+    }
+  }
+  cached_has_bits = _has_bits_[2];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(device_user_policy_loopback_processing_mode_ != nullptr);
+      device_user_policy_loopback_processing_mode_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(device_login_screen_isolate_origins_ != nullptr);
+      device_login_screen_isolate_origins_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(device_login_screen_site_per_process_ != nullptr);
+      device_login_screen_site_per_process_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(virtual_machines_allowed_ != nullptr);
+      virtual_machines_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(device_machine_password_change_rate_ != nullptr);
+      device_machine_password_change_rate_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(saml_login_authentication_type_ != nullptr);
+      saml_login_authentication_type_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(device_unaffiliated_crostini_allowed_ != nullptr);
+      device_unaffiliated_crostini_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(device_wifi_fast_transition_enabled_ != nullptr);
+      device_wifi_fast_transition_enabled_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(device_display_resolution_ != nullptr);
+      device_display_resolution_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(plugin_vm_allowed_ != nullptr);
+      plugin_vm_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(device_gpo_cache_lifetime_ != nullptr);
+      device_gpo_cache_lifetime_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(device_auth_data_cache_lifetime_ != nullptr);
+      device_auth_data_cache_lifetime_->Clear();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      GOOGLE_DCHECK(plugin_vm_license_key_ != nullptr);
+      plugin_vm_license_key_->Clear();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      GOOGLE_DCHECK(device_reboot_on_user_signout_ != nullptr);
+      device_reboot_on_user_signout_->Clear();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      GOOGLE_DCHECK(device_wilco_dtc_allowed_ != nullptr);
+      device_wilco_dtc_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x00008000u) {
+      GOOGLE_DCHECK(device_wilco_dtc_configuration_ != nullptr);
+      device_wilco_dtc_configuration_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      GOOGLE_DCHECK(device_wifi_allowed_ != nullptr);
+      device_wifi_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x00020000u) {
+      GOOGLE_DCHECK(device_power_peak_shift_ != nullptr);
+      device_power_peak_shift_->Clear();
+    }
+    if (cached_has_bits & 0x00040000u) {
+      GOOGLE_DCHECK(device_boot_on_ac_ != nullptr);
+      device_boot_on_ac_->Clear();
+    }
+    if (cached_has_bits & 0x00080000u) {
+      GOOGLE_DCHECK(device_dock_mac_address_source_ != nullptr);
+      device_dock_mac_address_source_->Clear();
+    }
+    if (cached_has_bits & 0x00100000u) {
+      GOOGLE_DCHECK(device_advanced_battery_charge_mode_ != nullptr);
+      device_advanced_battery_charge_mode_->Clear();
+    }
+    if (cached_has_bits & 0x00200000u) {
+      GOOGLE_DCHECK(device_battery_charge_mode_ != nullptr);
+      device_battery_charge_mode_->Clear();
+    }
+    if (cached_has_bits & 0x00400000u) {
+      GOOGLE_DCHECK(device_usb_power_share_ != nullptr);
+      device_usb_power_share_->Clear();
+    }
+    if (cached_has_bits & 0x00800000u) {
+      GOOGLE_DCHECK(device_scheduled_update_check_ != nullptr);
+      device_scheduled_update_check_->Clear();
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      GOOGLE_DCHECK(device_powerwash_allowed_ != nullptr);
+      device_powerwash_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x02000000u) {
+      GOOGLE_DCHECK(device_login_screen_webusb_allow_devices_for_urls_ != nullptr);
+      device_login_screen_webusb_allow_devices_for_urls_->Clear();
+    }
+    if (cached_has_bits & 0x04000000u) {
+      GOOGLE_DCHECK(device_login_screen_system_info_enforced_ != nullptr);
+      device_login_screen_system_info_enforced_->Clear();
+    }
+    if (cached_has_bits & 0x08000000u) {
+      GOOGLE_DCHECK(device_web_based_attestation_allowed_urls_ != nullptr);
+      device_web_based_attestation_allowed_urls_->Clear();
+    }
+    if (cached_has_bits & 0x10000000u) {
+      GOOGLE_DCHECK(device_show_numeric_keyboard_for_password_ != nullptr);
+      device_show_numeric_keyboard_for_password_->Clear();
+    }
+    if (cached_has_bits & 0x20000000u) {
+      GOOGLE_DCHECK(login_screen_primary_mouse_button_switch_ != nullptr);
+      login_screen_primary_mouse_button_switch_->Clear();
+    }
+    if (cached_has_bits & 0x40000000u) {
+      GOOGLE_DCHECK(device_minimum_version_ != nullptr);
+      device_minimum_version_->Clear();
+    }
+    if (cached_has_bits & 0x80000000u) {
+      GOOGLE_DCHECK(system_proxy_settings_ != nullptr);
+      system_proxy_settings_->Clear();
+    }
+  }
+  cached_has_bits = _has_bits_[3];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(device_chrome_variations_type_ != nullptr);
+      device_chrome_variations_type_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(device_login_screen_privacy_screen_enabled_ != nullptr);
+      device_login_screen_privacy_screen_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(required_client_certificate_for_device_ != nullptr);
+      required_client_certificate_for_device_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(device_crostini_arc_adb_sideloading_allowed_ != nullptr);
+      device_crostini_arc_adb_sideloading_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(device_minimum_version_aue_message_ != nullptr);
+      device_minimum_version_aue_message_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(managed_guest_session_privacy_warnings_ != nullptr);
+      managed_guest_session_privacy_warnings_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(external_print_servers_ != nullptr);
+      external_print_servers_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(external_print_servers_allowlist_ != nullptr);
+      external_print_servers_allowlist_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(device_printers_access_mode_ != nullptr);
+      device_printers_access_mode_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(device_printers_blocklist_ != nullptr);
+      device_printers_blocklist_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(device_printers_allowlist_ != nullptr);
+      device_printers_allowlist_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(device_printers_ != nullptr);
+      device_printers_->Clear();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      GOOGLE_DCHECK(device_show_low_disk_space_notification_ != nullptr);
+      device_show_low_disk_space_notification_->Clear();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      GOOGLE_DCHECK(user_allowlist_ != nullptr);
+      user_allowlist_->Clear();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      GOOGLE_DCHECK(usb_detachable_allowlist_ != nullptr);
+      usb_detachable_allowlist_->Clear();
+    }
+    if (cached_has_bits & 0x00008000u) {
+      GOOGLE_DCHECK(family_link_accounts_allowed_ != nullptr);
+      family_link_accounts_allowed_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      GOOGLE_DCHECK(arc_data_snapshot_hours_ != nullptr);
+      arc_data_snapshot_hours_->Clear();
+    }
+    if (cached_has_bits & 0x00020000u) {
+      GOOGLE_DCHECK(device_allow_mgs_to_store_display_properties_ != nullptr);
+      device_allow_mgs_to_store_display_properties_->Clear();
+    }
+    if (cached_has_bits & 0x00040000u) {
+      GOOGLE_DCHECK(device_system_wide_tracing_enabled_ != nullptr);
+      device_system_wide_tracing_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00080000u) {
+      GOOGLE_DCHECK(device_pci_peripheral_data_access_enabled_ != nullptr);
+      device_pci_peripheral_data_access_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00100000u) {
+      GOOGLE_DCHECK(device_borealis_allowed_ != nullptr);
+      device_borealis_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x00200000u) {
+      GOOGLE_DCHECK(device_allowed_bluetooth_services_ != nullptr);
+      device_allowed_bluetooth_services_->Clear();
+    }
+    if (cached_has_bits & 0x00400000u) {
+      GOOGLE_DCHECK(device_debug_packet_capture_allowed_ != nullptr);
+      device_debug_packet_capture_allowed_->Clear();
+    }
+    if (cached_has_bits & 0x00800000u) {
+      GOOGLE_DCHECK(device_scheduled_reboot_ != nullptr);
+      device_scheduled_reboot_->Clear();
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      GOOGLE_DCHECK(device_pci_peripheral_data_access_enabled_v2_ != nullptr);
+      device_pci_peripheral_data_access_enabled_v2_->Clear();
+    }
+    if (cached_has_bits & 0x02000000u) {
+      GOOGLE_DCHECK(device_restricted_managed_guest_session_enabled_ != nullptr);
+      device_restricted_managed_guest_session_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x04000000u) {
+      GOOGLE_DCHECK(hostname_user_configurable_ != nullptr);
+      hostname_user_configurable_->Clear();
+    }
+    if (cached_has_bits & 0x08000000u) {
+      GOOGLE_DCHECK(login_screen_prompt_on_multiple_matching_certificates_ != nullptr);
+      login_screen_prompt_on_multiple_matching_certificates_->Clear();
+    }
+    if (cached_has_bits & 0x10000000u) {
+      GOOGLE_DCHECK(kiosk_crx_manifest_update_url_ignored_ != nullptr);
+      kiosk_crx_manifest_update_url_ignored_->Clear();
+    }
+    if (cached_has_bits & 0x20000000u) {
+      GOOGLE_DCHECK(device_i18n_shortcuts_enabled_ != nullptr);
+      device_i18n_shortcuts_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x40000000u) {
+      GOOGLE_DCHECK(chromad_to_cloud_migration_enabled_ != nullptr);
+      chromad_to_cloud_migration_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x80000000u) {
+      GOOGLE_DCHECK(hardware_data_usage_enabled_ != nullptr);
+      hardware_data_usage_enabled_->Clear();
+    }
+  }
+  cached_has_bits = _has_bits_[4];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(login_web_ui_lazy_loading_ != nullptr);
+      login_web_ui_lazy_loading_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(keylocker_for_storage_encryption_enabled_ != nullptr);
+      keylocker_for_storage_encryption_enabled_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(device_run_automatic_cleanup_on_login_ != nullptr);
+      device_run_automatic_cleanup_on_login_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(device_encrypted_reporting_pipeline_enabled_ != nullptr);
+      device_encrypted_reporting_pipeline_enabled_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeDeviceSettingsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DevicePolicyRefreshRateProto device_policy_refresh_rate = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_policy_refresh_rate(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.UserWhitelistProto user_whitelist = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_user_whitelist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.GuestModeEnabledProto guest_mode_enabled = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_guest_mode_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_DeviceProxySettingsProto device_proxy_settings = 4 [deprecated = true];
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_proxy_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CameraEnabledProto camera_enabled = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_camera_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ShowUserNamesOnSigninProto show_user_names = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_show_user_names(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DataRoamingEnabledProto data_roaming_enabled = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_data_roaming_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AllowNewUsersProto allow_new_users = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_allow_new_users(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.MetricsEnabledProto metrics_enabled = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_metrics_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ReleaseChannelProto release_channel = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr = ctx->ParseMessage(_internal_mutable_release_channel(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceOpenNetworkConfigurationProto open_network_configuration = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_open_network_configuration(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceReportingProto device_reporting = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_reporting(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.EphemeralUsersEnabledProto ephemeral_users_enabled = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_ephemeral_users_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_AppPackProto app_pack = 14 [deprecated = true];
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          ptr = ctx->ParseMessage(_internal_mutable_app_pack(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto forced_logout_timeouts = 15 [deprecated = true];
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr = ctx->ParseMessage(_internal_mutable_forced_logout_timeouts(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_ScreenSaverProto login_screen_saver = 16 [deprecated = true];
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_saver(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AutoUpdateSettingsProto auto_update_settings = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_auto_update_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_StartUpUrlsProto start_up_urls = 18 [deprecated = true];
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146)) {
+          ptr = ctx->ParseMessage(_internal_mutable_start_up_urls(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_PinnedAppsProto pinned_apps = 19 [deprecated = true];
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 154)) {
+          ptr = ctx->ParseMessage(_internal_mutable_pinned_apps(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SystemTimezoneProto system_timezone = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 162)) {
+          ptr = ctx->ParseMessage(_internal_mutable_system_timezone(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceLocalAccountsProto device_local_accounts = 21;
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_local_accounts(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AllowRedeemChromeOsRegistrationOffersProto allow_redeem_offers = 22;
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 178)) {
+          ptr = ctx->ParseMessage(_internal_mutable_allow_redeem_offers(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.FeatureFlagsProto feature_flags = 23;
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr = ctx->ParseMessage(_internal_mutable_feature_flags(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.UptimeLimitProto uptime_limit = 24;
+      case 24:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 194)) {
+          ptr = ctx->ParseMessage(_internal_mutable_uptime_limit(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.VariationsParameterProto variations_parameter = 25;
+      case 25:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          ptr = ctx->ParseMessage(_internal_mutable_variations_parameter(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AttestationSettingsProto attestation_settings = 26;
+      case 26:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 210)) {
+          ptr = ctx->ParseMessage(_internal_mutable_attestation_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AccessibilitySettingsProto accessibility_settings = 27;
+      case 27:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          ptr = ctx->ParseMessage(_internal_mutable_accessibility_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_SupervisedUsersSettingsProto supervised_users_settings = 28 [deprecated = true];
+      case 28:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 226)) {
+          ptr = ctx->ParseMessage(_internal_mutable_supervised_users_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.LoginScreenPowerManagementProto login_screen_power_management = 29;
+      case 29:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 234)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_power_management(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SystemUse24HourClockProto use_24hour_clock = 30;
+      case 30:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 242)) {
+          ptr = ctx->ParseMessage(_internal_mutable_use_24hour_clock(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AutoCleanupSettigsProto auto_clean_up_settings = 31;
+      case 31:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr = ctx->ParseMessage(_internal_mutable_auto_clean_up_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SystemSettingsProto system_settings = 32;
+      case 32:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 2)) {
+          ptr = ctx->ParseMessage(_internal_mutable_system_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SAMLSettingsProto saml_settings = 33;
+      case 33:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_saml_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.RebootOnShutdownProto reboot_on_shutdown = 34;
+      case 34:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_reboot_on_shutdown(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceHeartbeatSettingsProto device_heartbeat_settings = 35;
+      case 35:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_heartbeat_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionCacheSizeProto extension_cache_size = 36;
+      case 36:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_extension_cache_size(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.LoginScreenDomainAutoCompleteProto login_screen_domain_auto_complete = 37;
+      case 37:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_domain_auto_complete(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceLogUploadSettingsProto device_log_upload_settings = 38;
+      case 38:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_log_upload_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DisplayRotationDefaultProto display_rotation_default = 39;
+      case 39:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_display_rotation_default(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AllowKioskAppControlChromeVersionProto allow_kiosk_app_control_chrome_version = 40;
+      case 40:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_allow_kiosk_app_control_chrome_version(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.LoginAuthenticationBehaviorProto login_authentication_behavior = 41;
+      case 41:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_authentication_behavior(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.UsbDetachableWhitelistProto usb_detachable_whitelist = 42;
+      case 42:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr = ctx->ParseMessage(_internal_mutable_usb_detachable_whitelist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AllowBluetoothProto allow_bluetooth = 43;
+      case 43:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_allow_bluetooth(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceQuirksDownloadEnabledProto quirks_download_enabled = 44;
+      case 44:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          ptr = ctx->ParseMessage(_internal_mutable_quirks_download_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.LoginVideoCaptureAllowedUrlsProto login_video_capture_allowed_urls = 45;
+      case 45:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_video_capture_allowed_urls(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceLoginScreenExtensionsProto device_login_screen_extensions = 46;
+      case 46:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_login_screen_extensions(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.NetworkThrottlingEnabledProto network_throttling = 47;
+      case 47:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr = ctx->ParseMessage(_internal_mutable_network_throttling(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceWallpaperImageProto device_wallpaper_image = 48;
+      case 48:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_wallpaper_image(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.LoginScreenLocalesProto login_screen_locales = 49;
+      case 49:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_locales(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.LoginScreenInputMethodsProto login_screen_input_methods = 50;
+      case 50:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_input_methods(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto device_ecryptfs_migration_strategy = 51 [deprecated = true];
+      case 51:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 154)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_ecryptfs_migration_strategy(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceSecondFactorAuthenticationProto device_second_factor_authentication = 52;
+      case 52:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 162)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_second_factor_authentication(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CastReceiverNameProto cast_receiver_name = 53;
+      case 53:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_cast_receiver_name(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceOffHoursProto device_off_hours = 54;
+      case 54:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 178)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_off_hours(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceNativePrintersProto native_device_printers = 55;
+      case 55:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr = ctx->ParseMessage(_internal_mutable_native_device_printers(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceNativePrintersAccessModeProto native_device_printers_access_mode = 56;
+      case 56:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 194)) {
+          ptr = ctx->ParseMessage(_internal_mutable_native_device_printers_access_mode(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceNativePrintersBlacklistProto native_device_printers_blacklist = 57;
+      case 57:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          ptr = ctx->ParseMessage(_internal_mutable_native_device_printers_blacklist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceNativePrintersWhitelistProto native_device_printers_whitelist = 58;
+      case 58:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 210)) {
+          ptr = ctx->ParseMessage(_internal_mutable_native_device_printers_whitelist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.TPMFirmwareUpdateSettingsProto tpm_firmware_update_settings = 59;
+      case 59:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          ptr = ctx->ParseMessage(_internal_mutable_tpm_firmware_update_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_MinimumRequiredVersionProto minimum_required_version = 60 [deprecated = true];
+      case 60:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 226)) {
+          ptr = ctx->ParseMessage(_internal_mutable_minimum_required_version(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls device_login_screen_auto_select_certificate_for_urls = 62;
+      case 62:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 242)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_login_screen_auto_select_certificate_for_urls(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.UnaffiliatedArcAllowedProto unaffiliated_arc_allowed = 63;
+      case 63:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr = ctx->ParseMessage(_internal_mutable_unaffiliated_arc_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.NetworkHostnameProto network_hostname = 64;
+      case 64:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 2)) {
+          ptr = ctx->ParseMessage(_internal_mutable_network_hostname(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceKerberosEncryptionTypesProto device_kerberos_encryption_types = 65;
+      case 65:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_kerberos_encryption_types(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto device_user_policy_loopback_processing_mode = 66;
+      case 66:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_user_policy_loopback_processing_mode(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto device_login_screen_isolate_origins = 67 [deprecated = true];
+      case 67:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_login_screen_isolate_origins(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto device_login_screen_site_per_process = 68 [deprecated = true];
+      case 68:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_login_screen_site_per_process(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.VirtualMachinesAllowedProto virtual_machines_allowed = 69;
+      case 69:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_virtual_machines_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceMachinePasswordChangeRateProto device_machine_password_change_rate = 70;
+      case 70:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_machine_password_change_rate(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SamlLoginAuthenticationTypeProto saml_login_authentication_type = 71;
+      case 71:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_saml_login_authentication_type(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto device_unaffiliated_crostini_allowed = 72;
+      case 72:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_unaffiliated_crostini_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceWiFiFastTransitionEnabledProto device_wifi_fast_transition_enabled = 73;
+      case 73:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_wifi_fast_transition_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceDisplayResolutionProto device_display_resolution = 74;
+      case 74:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_display_resolution(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PluginVmAllowedProto plugin_vm_allowed = 75;
+      case 75:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_plugin_vm_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceGpoCacheLifetimeProto device_gpo_cache_lifetime = 76;
+      case 76:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_gpo_cache_lifetime(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAuthDataCacheLifetimeProto device_auth_data_cache_lifetime = 77;
+      case 77:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_auth_data_cache_lifetime(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PluginVmLicenseKeyProto plugin_vm_license_key = 78;
+      case 78:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          ptr = ctx->ParseMessage(_internal_mutable_plugin_vm_license_key(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRebootOnUserSignoutProto device_reboot_on_user_signout = 79;
+      case 79:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_reboot_on_user_signout(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceWilcoDtcAllowedProto device_wilco_dtc_allowed = 80;
+      case 80:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_wilco_dtc_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceWilcoDtcConfigurationProto device_wilco_dtc_configuration = 81;
+      case 81:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_wilco_dtc_configuration(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceWiFiAllowedProto device_wifi_allowed = 82;
+      case 82:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_wifi_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePowerPeakShiftProto device_power_peak_shift = 83;
+      case 83:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 154)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_power_peak_shift(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceBootOnAcProto device_boot_on_ac = 84;
+      case 84:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 162)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_boot_on_ac(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceDockMacAddressSourceProto device_dock_mac_address_source = 85;
+      case 85:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_dock_mac_address_source(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAdvancedBatteryChargeModeProto device_advanced_battery_charge_mode = 86;
+      case 86:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 178)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_advanced_battery_charge_mode(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceBatteryChargeModeProto device_battery_charge_mode = 87;
+      case 87:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_battery_charge_mode(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceUsbPowerShareProto device_usb_power_share = 88;
+      case 88:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 194)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_usb_power_share(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceScheduledUpdateCheckProto device_scheduled_update_check = 89;
+      case 89:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_scheduled_update_check(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePowerwashAllowedProto device_powerwash_allowed = 91;
+      case 91:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_powerwash_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto device_login_screen_webusb_allow_devices_for_urls = 92;
+      case 92:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 226)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_login_screen_webusb_allow_devices_for_urls(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BooleanPolicyProto device_login_screen_system_info_enforced = 93;
+      case 93:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 234)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_login_screen_system_info_enforced(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.StringListPolicyProto device_web_based_attestation_allowed_urls = 94;
+      case 94:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 242)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_web_based_attestation_allowed_urls(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BooleanPolicyProto device_show_numeric_keyboard_for_password = 95;
+      case 95:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_show_numeric_keyboard_for_password(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BooleanPolicyProto login_screen_primary_mouse_button_switch = 96;
+      case 96:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 2)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_primary_mouse_button_switch(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.StringPolicyProto device_minimum_version = 97;
+      case 97:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_minimum_version(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SystemProxySettingsProto system_proxy_settings = 98;
+      case 98:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_system_proxy_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.IntegerPolicyProto device_chrome_variations_type = 99;
+      case 99:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_chrome_variations_type(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto device_login_screen_privacy_screen_enabled = 100;
+      case 100:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_login_screen_privacy_screen_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.RequiredClientCertificateForDeviceProto required_client_certificate_for_device = 101;
+      case 101:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_required_client_certificate_for_device(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto device_crostini_arc_adb_sideloading_allowed = 102;
+      case 102:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_crostini_arc_adb_sideloading_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.StringPolicyProto device_minimum_version_aue_message = 103;
+      case 103:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_minimum_version_aue_message(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ManagedGuestSessionPrivacyWarningsProto managed_guest_session_privacy_warnings = 104;
+      case 104:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_managed_guest_session_privacy_warnings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceExternalPrintServersProto external_print_servers = 105;
+      case 105:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_external_print_servers(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceExternalPrintServersAllowlistProto external_print_servers_allowlist = 106;
+      case 106:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr = ctx->ParseMessage(_internal_mutable_external_print_servers_allowlist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePrintersAccessModeProto device_printers_access_mode = 107;
+      case 107:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_printers_access_mode(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePrintersBlocklistProto device_printers_blocklist = 108;
+      case 108:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_printers_blocklist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePrintersAllowlistProto device_printers_allowlist = 109;
+      case 109:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_printers_allowlist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePrintersProto device_printers = 110;
+      case 110:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_printers(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceShowLowDiskSpaceNotificationProto device_show_low_disk_space_notification = 111;
+      case 111:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_show_low_disk_space_notification(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.UserAllowlistProto user_allowlist = 112;
+      case 112:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          ptr = ctx->ParseMessage(_internal_mutable_user_allowlist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.UsbDetachableAllowlistProto usb_detachable_allowlist = 113;
+      case 113:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_usb_detachable_allowlist(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceFamilyLinkAccountsAllowedProto family_link_accounts_allowed = 114;
+      case 114:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146)) {
+          ptr = ctx->ParseMessage(_internal_mutable_family_link_accounts_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceArcDataSnapshotHoursProto arc_data_snapshot_hours = 115;
+      case 115:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 154)) {
+          ptr = ctx->ParseMessage(_internal_mutable_arc_data_snapshot_hours(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BooleanPolicyProto device_allow_mgs_to_store_display_properties = 116;
+      case 116:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 162)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_allow_mgs_to_store_display_properties(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceSystemWideTracingEnabledProto device_system_wide_tracing_enabled = 117;
+      case 117:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_system_wide_tracing_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProto device_pci_peripheral_data_access_enabled = 118;
+      case 118:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 178)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_pci_peripheral_data_access_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceBorealisAllowedProto device_borealis_allowed = 119;
+      case 119:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_borealis_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAllowedBluetoothServicesProto device_allowed_bluetooth_services = 120;
+      case 120:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 194)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_allowed_bluetooth_services(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceDebugPacketCaptureAllowedProto device_debug_packet_capture_allowed = 121;
+      case 121:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_debug_packet_capture_allowed(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceScheduledRebootProto device_scheduled_reboot = 122;
+      case 122:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 210)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_scheduled_reboot(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2 device_pci_peripheral_data_access_enabled_v2 = 123;
+      case 123:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_pci_peripheral_data_access_enabled_v2(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto device_restricted_managed_guest_session_enabled = 124;
+      case 124:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 226)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_restricted_managed_guest_session_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.HostnameUserConfigurableProto hostname_user_configurable = 125;
+      case 125:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 234)) {
+          ptr = ctx->ParseMessage(_internal_mutable_hostname_user_configurable(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BooleanPolicyProto login_screen_prompt_on_multiple_matching_certificates = 126;
+      case 126:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 242)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_screen_prompt_on_multiple_matching_certificates(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BooleanPolicyProto kiosk_crx_manifest_update_url_ignored = 127;
+      case 127:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr = ctx->ParseMessage(_internal_mutable_kiosk_crx_manifest_update_url_ignored(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceI18nShortcutsEnabledProto device_i18n_shortcuts_enabled = 128;
+      case 128:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 2)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_i18n_shortcuts_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BooleanPolicyProto chromad_to_cloud_migration_enabled = 129;
+      case 129:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_chromad_to_cloud_migration_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.RevenDeviceHWDataUsageEnabledProto hardware_data_usage_enabled = 130;
+      case 130:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_hardware_data_usage_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceLoginScreenWebUILazyLoadingProto login_web_ui_lazy_loading = 131;
+      case 131:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_login_web_ui_lazy_loading(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto keylocker_for_storage_encryption_enabled = 132;
+      case 132:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_keylocker_for_storage_encryption_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BooleanPolicyProto device_run_automatic_cleanup_on_login = 133;
+      case 133:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_run_automatic_cleanup_on_login(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.EncryptedReportingPipelineConfigurationProto device_encrypted_reporting_pipeline_enabled = 134;
+      case 134:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_encrypted_reporting_pipeline_enabled(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeDeviceSettingsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeDeviceSettingsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DevicePolicyRefreshRateProto device_policy_refresh_rate = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::device_policy_refresh_rate(this), target, stream);
+  }
+
+  // optional .enterprise_management.UserWhitelistProto user_whitelist = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::user_whitelist(this), target, stream);
+  }
+
+  // optional .enterprise_management.GuestModeEnabledProto guest_mode_enabled = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::guest_mode_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_DeviceProxySettingsProto device_proxy_settings = 4 [deprecated = true];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::device_proxy_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.CameraEnabledProto camera_enabled = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        5, _Internal::camera_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.ShowUserNamesOnSigninProto show_user_names = 6;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        6, _Internal::show_user_names(this), target, stream);
+  }
+
+  // optional .enterprise_management.DataRoamingEnabledProto data_roaming_enabled = 7;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        7, _Internal::data_roaming_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.AllowNewUsersProto allow_new_users = 8;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        8, _Internal::allow_new_users(this), target, stream);
+  }
+
+  // optional .enterprise_management.MetricsEnabledProto metrics_enabled = 9;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        9, _Internal::metrics_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.ReleaseChannelProto release_channel = 10;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        10, _Internal::release_channel(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceOpenNetworkConfigurationProto open_network_configuration = 11;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        11, _Internal::open_network_configuration(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceReportingProto device_reporting = 12;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        12, _Internal::device_reporting(this), target, stream);
+  }
+
+  // optional .enterprise_management.EphemeralUsersEnabledProto ephemeral_users_enabled = 13;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        13, _Internal::ephemeral_users_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_AppPackProto app_pack = 14 [deprecated = true];
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        14, _Internal::app_pack(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto forced_logout_timeouts = 15 [deprecated = true];
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        15, _Internal::forced_logout_timeouts(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_ScreenSaverProto login_screen_saver = 16 [deprecated = true];
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        16, _Internal::login_screen_saver(this), target, stream);
+  }
+
+  // optional .enterprise_management.AutoUpdateSettingsProto auto_update_settings = 17;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        17, _Internal::auto_update_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_StartUpUrlsProto start_up_urls = 18 [deprecated = true];
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        18, _Internal::start_up_urls(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_PinnedAppsProto pinned_apps = 19 [deprecated = true];
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        19, _Internal::pinned_apps(this), target, stream);
+  }
+
+  // optional .enterprise_management.SystemTimezoneProto system_timezone = 20;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        20, _Internal::system_timezone(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceLocalAccountsProto device_local_accounts = 21;
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        21, _Internal::device_local_accounts(this), target, stream);
+  }
+
+  // optional .enterprise_management.AllowRedeemChromeOsRegistrationOffersProto allow_redeem_offers = 22;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        22, _Internal::allow_redeem_offers(this), target, stream);
+  }
+
+  // optional .enterprise_management.FeatureFlagsProto feature_flags = 23;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        23, _Internal::feature_flags(this), target, stream);
+  }
+
+  // optional .enterprise_management.UptimeLimitProto uptime_limit = 24;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        24, _Internal::uptime_limit(this), target, stream);
+  }
+
+  // optional .enterprise_management.VariationsParameterProto variations_parameter = 25;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        25, _Internal::variations_parameter(this), target, stream);
+  }
+
+  // optional .enterprise_management.AttestationSettingsProto attestation_settings = 26;
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        26, _Internal::attestation_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.AccessibilitySettingsProto accessibility_settings = 27;
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        27, _Internal::accessibility_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_SupervisedUsersSettingsProto supervised_users_settings = 28 [deprecated = true];
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        28, _Internal::supervised_users_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.LoginScreenPowerManagementProto login_screen_power_management = 29;
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        29, _Internal::login_screen_power_management(this), target, stream);
+  }
+
+  // optional .enterprise_management.SystemUse24HourClockProto use_24hour_clock = 30;
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        30, _Internal::use_24hour_clock(this), target, stream);
+  }
+
+  // optional .enterprise_management.AutoCleanupSettigsProto auto_clean_up_settings = 31;
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        31, _Internal::auto_clean_up_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.SystemSettingsProto system_settings = 32;
+  if (cached_has_bits & 0x80000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        32, _Internal::system_settings(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional .enterprise_management.SAMLSettingsProto saml_settings = 33;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        33, _Internal::saml_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.RebootOnShutdownProto reboot_on_shutdown = 34;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        34, _Internal::reboot_on_shutdown(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceHeartbeatSettingsProto device_heartbeat_settings = 35;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        35, _Internal::device_heartbeat_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.ExtensionCacheSizeProto extension_cache_size = 36;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        36, _Internal::extension_cache_size(this), target, stream);
+  }
+
+  // optional .enterprise_management.LoginScreenDomainAutoCompleteProto login_screen_domain_auto_complete = 37;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        37, _Internal::login_screen_domain_auto_complete(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceLogUploadSettingsProto device_log_upload_settings = 38;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        38, _Internal::device_log_upload_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.DisplayRotationDefaultProto display_rotation_default = 39;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        39, _Internal::display_rotation_default(this), target, stream);
+  }
+
+  // optional .enterprise_management.AllowKioskAppControlChromeVersionProto allow_kiosk_app_control_chrome_version = 40;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        40, _Internal::allow_kiosk_app_control_chrome_version(this), target, stream);
+  }
+
+  // optional .enterprise_management.LoginAuthenticationBehaviorProto login_authentication_behavior = 41;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        41, _Internal::login_authentication_behavior(this), target, stream);
+  }
+
+  // optional .enterprise_management.UsbDetachableWhitelistProto usb_detachable_whitelist = 42;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        42, _Internal::usb_detachable_whitelist(this), target, stream);
+  }
+
+  // optional .enterprise_management.AllowBluetoothProto allow_bluetooth = 43;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        43, _Internal::allow_bluetooth(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceQuirksDownloadEnabledProto quirks_download_enabled = 44;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        44, _Internal::quirks_download_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.LoginVideoCaptureAllowedUrlsProto login_video_capture_allowed_urls = 45;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        45, _Internal::login_video_capture_allowed_urls(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceLoginScreenExtensionsProto device_login_screen_extensions = 46;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        46, _Internal::device_login_screen_extensions(this), target, stream);
+  }
+
+  // optional .enterprise_management.NetworkThrottlingEnabledProto network_throttling = 47;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        47, _Internal::network_throttling(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceWallpaperImageProto device_wallpaper_image = 48;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        48, _Internal::device_wallpaper_image(this), target, stream);
+  }
+
+  // optional .enterprise_management.LoginScreenLocalesProto login_screen_locales = 49;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        49, _Internal::login_screen_locales(this), target, stream);
+  }
+
+  // optional .enterprise_management.LoginScreenInputMethodsProto login_screen_input_methods = 50;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        50, _Internal::login_screen_input_methods(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto device_ecryptfs_migration_strategy = 51 [deprecated = true];
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        51, _Internal::device_ecryptfs_migration_strategy(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceSecondFactorAuthenticationProto device_second_factor_authentication = 52;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        52, _Internal::device_second_factor_authentication(this), target, stream);
+  }
+
+  // optional .enterprise_management.CastReceiverNameProto cast_receiver_name = 53;
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        53, _Internal::cast_receiver_name(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceOffHoursProto device_off_hours = 54;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        54, _Internal::device_off_hours(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceNativePrintersProto native_device_printers = 55;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        55, _Internal::native_device_printers(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceNativePrintersAccessModeProto native_device_printers_access_mode = 56;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        56, _Internal::native_device_printers_access_mode(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceNativePrintersBlacklistProto native_device_printers_blacklist = 57;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        57, _Internal::native_device_printers_blacklist(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceNativePrintersWhitelistProto native_device_printers_whitelist = 58;
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        58, _Internal::native_device_printers_whitelist(this), target, stream);
+  }
+
+  // optional .enterprise_management.TPMFirmwareUpdateSettingsProto tpm_firmware_update_settings = 59;
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        59, _Internal::tpm_firmware_update_settings(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_MinimumRequiredVersionProto minimum_required_version = 60 [deprecated = true];
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        60, _Internal::minimum_required_version(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls device_login_screen_auto_select_certificate_for_urls = 62;
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        62, _Internal::device_login_screen_auto_select_certificate_for_urls(this), target, stream);
+  }
+
+  // optional .enterprise_management.UnaffiliatedArcAllowedProto unaffiliated_arc_allowed = 63;
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        63, _Internal::unaffiliated_arc_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.NetworkHostnameProto network_hostname = 64;
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        64, _Internal::network_hostname(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceKerberosEncryptionTypesProto device_kerberos_encryption_types = 65;
+  if (cached_has_bits & 0x80000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        65, _Internal::device_kerberos_encryption_types(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[2];
+  // optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto device_user_policy_loopback_processing_mode = 66;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        66, _Internal::device_user_policy_loopback_processing_mode(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto device_login_screen_isolate_origins = 67 [deprecated = true];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        67, _Internal::device_login_screen_isolate_origins(this), target, stream);
+  }
+
+  // optional .enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto device_login_screen_site_per_process = 68 [deprecated = true];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        68, _Internal::device_login_screen_site_per_process(this), target, stream);
+  }
+
+  // optional .enterprise_management.VirtualMachinesAllowedProto virtual_machines_allowed = 69;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        69, _Internal::virtual_machines_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceMachinePasswordChangeRateProto device_machine_password_change_rate = 70;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        70, _Internal::device_machine_password_change_rate(this), target, stream);
+  }
+
+  // optional .enterprise_management.SamlLoginAuthenticationTypeProto saml_login_authentication_type = 71;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        71, _Internal::saml_login_authentication_type(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto device_unaffiliated_crostini_allowed = 72;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        72, _Internal::device_unaffiliated_crostini_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceWiFiFastTransitionEnabledProto device_wifi_fast_transition_enabled = 73;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        73, _Internal::device_wifi_fast_transition_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceDisplayResolutionProto device_display_resolution = 74;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        74, _Internal::device_display_resolution(this), target, stream);
+  }
+
+  // optional .enterprise_management.PluginVmAllowedProto plugin_vm_allowed = 75;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        75, _Internal::plugin_vm_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceGpoCacheLifetimeProto device_gpo_cache_lifetime = 76;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        76, _Internal::device_gpo_cache_lifetime(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAuthDataCacheLifetimeProto device_auth_data_cache_lifetime = 77;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        77, _Internal::device_auth_data_cache_lifetime(this), target, stream);
+  }
+
+  // optional .enterprise_management.PluginVmLicenseKeyProto plugin_vm_license_key = 78;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        78, _Internal::plugin_vm_license_key(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceRebootOnUserSignoutProto device_reboot_on_user_signout = 79;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        79, _Internal::device_reboot_on_user_signout(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceWilcoDtcAllowedProto device_wilco_dtc_allowed = 80;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        80, _Internal::device_wilco_dtc_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceWilcoDtcConfigurationProto device_wilco_dtc_configuration = 81;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        81, _Internal::device_wilco_dtc_configuration(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceWiFiAllowedProto device_wifi_allowed = 82;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        82, _Internal::device_wifi_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePowerPeakShiftProto device_power_peak_shift = 83;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        83, _Internal::device_power_peak_shift(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceBootOnAcProto device_boot_on_ac = 84;
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        84, _Internal::device_boot_on_ac(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceDockMacAddressSourceProto device_dock_mac_address_source = 85;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        85, _Internal::device_dock_mac_address_source(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAdvancedBatteryChargeModeProto device_advanced_battery_charge_mode = 86;
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        86, _Internal::device_advanced_battery_charge_mode(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceBatteryChargeModeProto device_battery_charge_mode = 87;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        87, _Internal::device_battery_charge_mode(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceUsbPowerShareProto device_usb_power_share = 88;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        88, _Internal::device_usb_power_share(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceScheduledUpdateCheckProto device_scheduled_update_check = 89;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        89, _Internal::device_scheduled_update_check(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePowerwashAllowedProto device_powerwash_allowed = 91;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        91, _Internal::device_powerwash_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto device_login_screen_webusb_allow_devices_for_urls = 92;
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        92, _Internal::device_login_screen_webusb_allow_devices_for_urls(this), target, stream);
+  }
+
+  // optional .enterprise_management.BooleanPolicyProto device_login_screen_system_info_enforced = 93;
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        93, _Internal::device_login_screen_system_info_enforced(this), target, stream);
+  }
+
+  // optional .enterprise_management.StringListPolicyProto device_web_based_attestation_allowed_urls = 94;
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        94, _Internal::device_web_based_attestation_allowed_urls(this), target, stream);
+  }
+
+  // optional .enterprise_management.BooleanPolicyProto device_show_numeric_keyboard_for_password = 95;
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        95, _Internal::device_show_numeric_keyboard_for_password(this), target, stream);
+  }
+
+  // optional .enterprise_management.BooleanPolicyProto login_screen_primary_mouse_button_switch = 96;
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        96, _Internal::login_screen_primary_mouse_button_switch(this), target, stream);
+  }
+
+  // optional .enterprise_management.StringPolicyProto device_minimum_version = 97;
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        97, _Internal::device_minimum_version(this), target, stream);
+  }
+
+  // optional .enterprise_management.SystemProxySettingsProto system_proxy_settings = 98;
+  if (cached_has_bits & 0x80000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        98, _Internal::system_proxy_settings(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[3];
+  // optional .enterprise_management.IntegerPolicyProto device_chrome_variations_type = 99;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        99, _Internal::device_chrome_variations_type(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto device_login_screen_privacy_screen_enabled = 100;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        100, _Internal::device_login_screen_privacy_screen_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.RequiredClientCertificateForDeviceProto required_client_certificate_for_device = 101;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        101, _Internal::required_client_certificate_for_device(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto device_crostini_arc_adb_sideloading_allowed = 102;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        102, _Internal::device_crostini_arc_adb_sideloading_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.StringPolicyProto device_minimum_version_aue_message = 103;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        103, _Internal::device_minimum_version_aue_message(this), target, stream);
+  }
+
+  // optional .enterprise_management.ManagedGuestSessionPrivacyWarningsProto managed_guest_session_privacy_warnings = 104;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        104, _Internal::managed_guest_session_privacy_warnings(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceExternalPrintServersProto external_print_servers = 105;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        105, _Internal::external_print_servers(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceExternalPrintServersAllowlistProto external_print_servers_allowlist = 106;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        106, _Internal::external_print_servers_allowlist(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePrintersAccessModeProto device_printers_access_mode = 107;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        107, _Internal::device_printers_access_mode(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePrintersBlocklistProto device_printers_blocklist = 108;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        108, _Internal::device_printers_blocklist(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePrintersAllowlistProto device_printers_allowlist = 109;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        109, _Internal::device_printers_allowlist(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePrintersProto device_printers = 110;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        110, _Internal::device_printers(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceShowLowDiskSpaceNotificationProto device_show_low_disk_space_notification = 111;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        111, _Internal::device_show_low_disk_space_notification(this), target, stream);
+  }
+
+  // optional .enterprise_management.UserAllowlistProto user_allowlist = 112;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        112, _Internal::user_allowlist(this), target, stream);
+  }
+
+  // optional .enterprise_management.UsbDetachableAllowlistProto usb_detachable_allowlist = 113;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        113, _Internal::usb_detachable_allowlist(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceFamilyLinkAccountsAllowedProto family_link_accounts_allowed = 114;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        114, _Internal::family_link_accounts_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceArcDataSnapshotHoursProto arc_data_snapshot_hours = 115;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        115, _Internal::arc_data_snapshot_hours(this), target, stream);
+  }
+
+  // optional .enterprise_management.BooleanPolicyProto device_allow_mgs_to_store_display_properties = 116;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        116, _Internal::device_allow_mgs_to_store_display_properties(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceSystemWideTracingEnabledProto device_system_wide_tracing_enabled = 117;
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        117, _Internal::device_system_wide_tracing_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProto device_pci_peripheral_data_access_enabled = 118;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        118, _Internal::device_pci_peripheral_data_access_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceBorealisAllowedProto device_borealis_allowed = 119;
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        119, _Internal::device_borealis_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAllowedBluetoothServicesProto device_allowed_bluetooth_services = 120;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        120, _Internal::device_allowed_bluetooth_services(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceDebugPacketCaptureAllowedProto device_debug_packet_capture_allowed = 121;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        121, _Internal::device_debug_packet_capture_allowed(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceScheduledRebootProto device_scheduled_reboot = 122;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        122, _Internal::device_scheduled_reboot(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2 device_pci_peripheral_data_access_enabled_v2 = 123;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        123, _Internal::device_pci_peripheral_data_access_enabled_v2(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto device_restricted_managed_guest_session_enabled = 124;
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        124, _Internal::device_restricted_managed_guest_session_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.HostnameUserConfigurableProto hostname_user_configurable = 125;
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        125, _Internal::hostname_user_configurable(this), target, stream);
+  }
+
+  // optional .enterprise_management.BooleanPolicyProto login_screen_prompt_on_multiple_matching_certificates = 126;
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        126, _Internal::login_screen_prompt_on_multiple_matching_certificates(this), target, stream);
+  }
+
+  // optional .enterprise_management.BooleanPolicyProto kiosk_crx_manifest_update_url_ignored = 127;
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        127, _Internal::kiosk_crx_manifest_update_url_ignored(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceI18nShortcutsEnabledProto device_i18n_shortcuts_enabled = 128;
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        128, _Internal::device_i18n_shortcuts_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.BooleanPolicyProto chromad_to_cloud_migration_enabled = 129;
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        129, _Internal::chromad_to_cloud_migration_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.RevenDeviceHWDataUsageEnabledProto hardware_data_usage_enabled = 130;
+  if (cached_has_bits & 0x80000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        130, _Internal::hardware_data_usage_enabled(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[4];
+  // optional .enterprise_management.DeviceLoginScreenWebUILazyLoadingProto login_web_ui_lazy_loading = 131;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        131, _Internal::login_web_ui_lazy_loading(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto keylocker_for_storage_encryption_enabled = 132;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        132, _Internal::keylocker_for_storage_encryption_enabled(this), target, stream);
+  }
+
+  // optional .enterprise_management.BooleanPolicyProto device_run_automatic_cleanup_on_login = 133;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        133, _Internal::device_run_automatic_cleanup_on_login(this), target, stream);
+  }
+
+  // optional .enterprise_management.EncryptedReportingPipelineConfigurationProto device_encrypted_reporting_pipeline_enabled = 134;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        134, _Internal::device_encrypted_reporting_pipeline_enabled(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeDeviceSettingsProto)
+  return target;
+}
+
+size_t ChromeDeviceSettingsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeDeviceSettingsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional .enterprise_management.DevicePolicyRefreshRateProto device_policy_refresh_rate = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_policy_refresh_rate_);
+    }
+
+    // optional .enterprise_management.UserWhitelistProto user_whitelist = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *user_whitelist_);
+    }
+
+    // optional .enterprise_management.GuestModeEnabledProto guest_mode_enabled = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *guest_mode_enabled_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_DeviceProxySettingsProto device_proxy_settings = 4 [deprecated = true];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_proxy_settings_);
+    }
+
+    // optional .enterprise_management.CameraEnabledProto camera_enabled = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *camera_enabled_);
+    }
+
+    // optional .enterprise_management.ShowUserNamesOnSigninProto show_user_names = 6;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *show_user_names_);
+    }
+
+    // optional .enterprise_management.DataRoamingEnabledProto data_roaming_enabled = 7;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *data_roaming_enabled_);
+    }
+
+    // optional .enterprise_management.AllowNewUsersProto allow_new_users = 8;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *allow_new_users_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.MetricsEnabledProto metrics_enabled = 9;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *metrics_enabled_);
+    }
+
+    // optional .enterprise_management.ReleaseChannelProto release_channel = 10;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *release_channel_);
+    }
+
+    // optional .enterprise_management.DeviceOpenNetworkConfigurationProto open_network_configuration = 11;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *open_network_configuration_);
+    }
+
+    // optional .enterprise_management.DeviceReportingProto device_reporting = 12;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_reporting_);
+    }
+
+    // optional .enterprise_management.EphemeralUsersEnabledProto ephemeral_users_enabled = 13;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *ephemeral_users_enabled_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_AppPackProto app_pack = 14 [deprecated = true];
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *app_pack_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto forced_logout_timeouts = 15 [deprecated = true];
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *forced_logout_timeouts_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_ScreenSaverProto login_screen_saver = 16 [deprecated = true];
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_saver_);
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional .enterprise_management.AutoUpdateSettingsProto auto_update_settings = 17;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *auto_update_settings_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_StartUpUrlsProto start_up_urls = 18 [deprecated = true];
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *start_up_urls_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_PinnedAppsProto pinned_apps = 19 [deprecated = true];
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *pinned_apps_);
+    }
+
+    // optional .enterprise_management.SystemTimezoneProto system_timezone = 20;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *system_timezone_);
+    }
+
+    // optional .enterprise_management.DeviceLocalAccountsProto device_local_accounts = 21;
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_local_accounts_);
+    }
+
+    // optional .enterprise_management.AllowRedeemChromeOsRegistrationOffersProto allow_redeem_offers = 22;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *allow_redeem_offers_);
+    }
+
+    // optional .enterprise_management.FeatureFlagsProto feature_flags = 23;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *feature_flags_);
+    }
+
+    // optional .enterprise_management.UptimeLimitProto uptime_limit = 24;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *uptime_limit_);
+    }
+
+  }
+  if (cached_has_bits & 0xff000000u) {
+    // optional .enterprise_management.VariationsParameterProto variations_parameter = 25;
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *variations_parameter_);
+    }
+
+    // optional .enterprise_management.AttestationSettingsProto attestation_settings = 26;
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *attestation_settings_);
+    }
+
+    // optional .enterprise_management.AccessibilitySettingsProto accessibility_settings = 27;
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *accessibility_settings_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_SupervisedUsersSettingsProto supervised_users_settings = 28 [deprecated = true];
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *supervised_users_settings_);
+    }
+
+    // optional .enterprise_management.LoginScreenPowerManagementProto login_screen_power_management = 29;
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_power_management_);
+    }
+
+    // optional .enterprise_management.SystemUse24HourClockProto use_24hour_clock = 30;
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *use_24hour_clock_);
+    }
+
+    // optional .enterprise_management.AutoCleanupSettigsProto auto_clean_up_settings = 31;
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *auto_clean_up_settings_);
+    }
+
+    // optional .enterprise_management.SystemSettingsProto system_settings = 32;
+    if (cached_has_bits & 0x80000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *system_settings_);
+    }
+
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional .enterprise_management.SAMLSettingsProto saml_settings = 33;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *saml_settings_);
+    }
+
+    // optional .enterprise_management.RebootOnShutdownProto reboot_on_shutdown = 34;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *reboot_on_shutdown_);
+    }
+
+    // optional .enterprise_management.DeviceHeartbeatSettingsProto device_heartbeat_settings = 35;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_heartbeat_settings_);
+    }
+
+    // optional .enterprise_management.ExtensionCacheSizeProto extension_cache_size = 36;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *extension_cache_size_);
+    }
+
+    // optional .enterprise_management.LoginScreenDomainAutoCompleteProto login_screen_domain_auto_complete = 37;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_domain_auto_complete_);
+    }
+
+    // optional .enterprise_management.DeviceLogUploadSettingsProto device_log_upload_settings = 38;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_log_upload_settings_);
+    }
+
+    // optional .enterprise_management.DisplayRotationDefaultProto display_rotation_default = 39;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *display_rotation_default_);
+    }
+
+    // optional .enterprise_management.AllowKioskAppControlChromeVersionProto allow_kiosk_app_control_chrome_version = 40;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *allow_kiosk_app_control_chrome_version_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.LoginAuthenticationBehaviorProto login_authentication_behavior = 41;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_authentication_behavior_);
+    }
+
+    // optional .enterprise_management.UsbDetachableWhitelistProto usb_detachable_whitelist = 42;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *usb_detachable_whitelist_);
+    }
+
+    // optional .enterprise_management.AllowBluetoothProto allow_bluetooth = 43;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *allow_bluetooth_);
+    }
+
+    // optional .enterprise_management.DeviceQuirksDownloadEnabledProto quirks_download_enabled = 44;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *quirks_download_enabled_);
+    }
+
+    // optional .enterprise_management.LoginVideoCaptureAllowedUrlsProto login_video_capture_allowed_urls = 45;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_video_capture_allowed_urls_);
+    }
+
+    // optional .enterprise_management.DeviceLoginScreenExtensionsProto device_login_screen_extensions = 46;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_login_screen_extensions_);
+    }
+
+    // optional .enterprise_management.NetworkThrottlingEnabledProto network_throttling = 47;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *network_throttling_);
+    }
+
+    // optional .enterprise_management.DeviceWallpaperImageProto device_wallpaper_image = 48;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_wallpaper_image_);
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional .enterprise_management.LoginScreenLocalesProto login_screen_locales = 49;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_locales_);
+    }
+
+    // optional .enterprise_management.LoginScreenInputMethodsProto login_screen_input_methods = 50;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_input_methods_);
+    }
+
+    // optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto device_ecryptfs_migration_strategy = 51 [deprecated = true];
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_ecryptfs_migration_strategy_);
+    }
+
+    // optional .enterprise_management.DeviceSecondFactorAuthenticationProto device_second_factor_authentication = 52;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_second_factor_authentication_);
+    }
+
+    // optional .enterprise_management.CastReceiverNameProto cast_receiver_name = 53;
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *cast_receiver_name_);
+    }
+
+    // optional .enterprise_management.DeviceOffHoursProto device_off_hours = 54;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_off_hours_);
+    }
+
+    // optional .enterprise_management.DeviceNativePrintersProto native_device_printers = 55;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *native_device_printers_);
+    }
+
+    // optional .enterprise_management.DeviceNativePrintersAccessModeProto native_device_printers_access_mode = 56;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *native_device_printers_access_mode_);
+    }
+
+  }
+  if (cached_has_bits & 0xff000000u) {
+    // optional .enterprise_management.DeviceNativePrintersBlacklistProto native_device_printers_blacklist = 57;
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *native_device_printers_blacklist_);
+    }
+
+    // optional .enterprise_management.DeviceNativePrintersWhitelistProto native_device_printers_whitelist = 58;
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *native_device_printers_whitelist_);
+    }
+
+    // optional .enterprise_management.TPMFirmwareUpdateSettingsProto tpm_firmware_update_settings = 59;
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *tpm_firmware_update_settings_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_MinimumRequiredVersionProto minimum_required_version = 60 [deprecated = true];
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *minimum_required_version_);
+    }
+
+    // optional .enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls device_login_screen_auto_select_certificate_for_urls = 62;
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_login_screen_auto_select_certificate_for_urls_);
+    }
+
+    // optional .enterprise_management.UnaffiliatedArcAllowedProto unaffiliated_arc_allowed = 63;
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *unaffiliated_arc_allowed_);
+    }
+
+    // optional .enterprise_management.NetworkHostnameProto network_hostname = 64;
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *network_hostname_);
+    }
+
+    // optional .enterprise_management.DeviceKerberosEncryptionTypesProto device_kerberos_encryption_types = 65;
+    if (cached_has_bits & 0x80000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_kerberos_encryption_types_);
+    }
+
+  }
+  cached_has_bits = _has_bits_[2];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto device_user_policy_loopback_processing_mode = 66;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_user_policy_loopback_processing_mode_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto device_login_screen_isolate_origins = 67 [deprecated = true];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_login_screen_isolate_origins_);
+    }
+
+    // optional .enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto device_login_screen_site_per_process = 68 [deprecated = true];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_login_screen_site_per_process_);
+    }
+
+    // optional .enterprise_management.VirtualMachinesAllowedProto virtual_machines_allowed = 69;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *virtual_machines_allowed_);
+    }
+
+    // optional .enterprise_management.DeviceMachinePasswordChangeRateProto device_machine_password_change_rate = 70;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_machine_password_change_rate_);
+    }
+
+    // optional .enterprise_management.SamlLoginAuthenticationTypeProto saml_login_authentication_type = 71;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *saml_login_authentication_type_);
+    }
+
+    // optional .enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto device_unaffiliated_crostini_allowed = 72;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_unaffiliated_crostini_allowed_);
+    }
+
+    // optional .enterprise_management.DeviceWiFiFastTransitionEnabledProto device_wifi_fast_transition_enabled = 73;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_wifi_fast_transition_enabled_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.DeviceDisplayResolutionProto device_display_resolution = 74;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_display_resolution_);
+    }
+
+    // optional .enterprise_management.PluginVmAllowedProto plugin_vm_allowed = 75;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *plugin_vm_allowed_);
+    }
+
+    // optional .enterprise_management.DeviceGpoCacheLifetimeProto device_gpo_cache_lifetime = 76;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_gpo_cache_lifetime_);
+    }
+
+    // optional .enterprise_management.DeviceAuthDataCacheLifetimeProto device_auth_data_cache_lifetime = 77;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_auth_data_cache_lifetime_);
+    }
+
+    // optional .enterprise_management.PluginVmLicenseKeyProto plugin_vm_license_key = 78;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *plugin_vm_license_key_);
+    }
+
+    // optional .enterprise_management.DeviceRebootOnUserSignoutProto device_reboot_on_user_signout = 79;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_reboot_on_user_signout_);
+    }
+
+    // optional .enterprise_management.DeviceWilcoDtcAllowedProto device_wilco_dtc_allowed = 80;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_wilco_dtc_allowed_);
+    }
+
+    // optional .enterprise_management.DeviceWilcoDtcConfigurationProto device_wilco_dtc_configuration = 81;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_wilco_dtc_configuration_);
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional .enterprise_management.DeviceWiFiAllowedProto device_wifi_allowed = 82;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_wifi_allowed_);
+    }
+
+    // optional .enterprise_management.DevicePowerPeakShiftProto device_power_peak_shift = 83;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_power_peak_shift_);
+    }
+
+    // optional .enterprise_management.DeviceBootOnAcProto device_boot_on_ac = 84;
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_boot_on_ac_);
+    }
+
+    // optional .enterprise_management.DeviceDockMacAddressSourceProto device_dock_mac_address_source = 85;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_dock_mac_address_source_);
+    }
+
+    // optional .enterprise_management.DeviceAdvancedBatteryChargeModeProto device_advanced_battery_charge_mode = 86;
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_advanced_battery_charge_mode_);
+    }
+
+    // optional .enterprise_management.DeviceBatteryChargeModeProto device_battery_charge_mode = 87;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_battery_charge_mode_);
+    }
+
+    // optional .enterprise_management.DeviceUsbPowerShareProto device_usb_power_share = 88;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_usb_power_share_);
+    }
+
+    // optional .enterprise_management.DeviceScheduledUpdateCheckProto device_scheduled_update_check = 89;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_scheduled_update_check_);
+    }
+
+  }
+  if (cached_has_bits & 0xff000000u) {
+    // optional .enterprise_management.DevicePowerwashAllowedProto device_powerwash_allowed = 91;
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_powerwash_allowed_);
+    }
+
+    // optional .enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto device_login_screen_webusb_allow_devices_for_urls = 92;
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_login_screen_webusb_allow_devices_for_urls_);
+    }
+
+    // optional .enterprise_management.BooleanPolicyProto device_login_screen_system_info_enforced = 93;
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_login_screen_system_info_enforced_);
+    }
+
+    // optional .enterprise_management.StringListPolicyProto device_web_based_attestation_allowed_urls = 94;
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_web_based_attestation_allowed_urls_);
+    }
+
+    // optional .enterprise_management.BooleanPolicyProto device_show_numeric_keyboard_for_password = 95;
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_show_numeric_keyboard_for_password_);
+    }
+
+    // optional .enterprise_management.BooleanPolicyProto login_screen_primary_mouse_button_switch = 96;
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_primary_mouse_button_switch_);
+    }
+
+    // optional .enterprise_management.StringPolicyProto device_minimum_version = 97;
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_minimum_version_);
+    }
+
+    // optional .enterprise_management.SystemProxySettingsProto system_proxy_settings = 98;
+    if (cached_has_bits & 0x80000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *system_proxy_settings_);
+    }
+
+  }
+  cached_has_bits = _has_bits_[3];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional .enterprise_management.IntegerPolicyProto device_chrome_variations_type = 99;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_chrome_variations_type_);
+    }
+
+    // optional .enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto device_login_screen_privacy_screen_enabled = 100;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_login_screen_privacy_screen_enabled_);
+    }
+
+    // optional .enterprise_management.RequiredClientCertificateForDeviceProto required_client_certificate_for_device = 101;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *required_client_certificate_for_device_);
+    }
+
+    // optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto device_crostini_arc_adb_sideloading_allowed = 102;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_crostini_arc_adb_sideloading_allowed_);
+    }
+
+    // optional .enterprise_management.StringPolicyProto device_minimum_version_aue_message = 103;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_minimum_version_aue_message_);
+    }
+
+    // optional .enterprise_management.ManagedGuestSessionPrivacyWarningsProto managed_guest_session_privacy_warnings = 104;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *managed_guest_session_privacy_warnings_);
+    }
+
+    // optional .enterprise_management.DeviceExternalPrintServersProto external_print_servers = 105;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *external_print_servers_);
+    }
+
+    // optional .enterprise_management.DeviceExternalPrintServersAllowlistProto external_print_servers_allowlist = 106;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *external_print_servers_allowlist_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.DevicePrintersAccessModeProto device_printers_access_mode = 107;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_printers_access_mode_);
+    }
+
+    // optional .enterprise_management.DevicePrintersBlocklistProto device_printers_blocklist = 108;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_printers_blocklist_);
+    }
+
+    // optional .enterprise_management.DevicePrintersAllowlistProto device_printers_allowlist = 109;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_printers_allowlist_);
+    }
+
+    // optional .enterprise_management.DevicePrintersProto device_printers = 110;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_printers_);
+    }
+
+    // optional .enterprise_management.DeviceShowLowDiskSpaceNotificationProto device_show_low_disk_space_notification = 111;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_show_low_disk_space_notification_);
+    }
+
+    // optional .enterprise_management.UserAllowlistProto user_allowlist = 112;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *user_allowlist_);
+    }
+
+    // optional .enterprise_management.UsbDetachableAllowlistProto usb_detachable_allowlist = 113;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *usb_detachable_allowlist_);
+    }
+
+    // optional .enterprise_management.DeviceFamilyLinkAccountsAllowedProto family_link_accounts_allowed = 114;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *family_link_accounts_allowed_);
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional .enterprise_management.DeviceArcDataSnapshotHoursProto arc_data_snapshot_hours = 115;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *arc_data_snapshot_hours_);
+    }
+
+    // optional .enterprise_management.BooleanPolicyProto device_allow_mgs_to_store_display_properties = 116;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_allow_mgs_to_store_display_properties_);
+    }
+
+    // optional .enterprise_management.DeviceSystemWideTracingEnabledProto device_system_wide_tracing_enabled = 117;
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_system_wide_tracing_enabled_);
+    }
+
+    // optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProto device_pci_peripheral_data_access_enabled = 118;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_pci_peripheral_data_access_enabled_);
+    }
+
+    // optional .enterprise_management.DeviceBorealisAllowedProto device_borealis_allowed = 119;
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_borealis_allowed_);
+    }
+
+    // optional .enterprise_management.DeviceAllowedBluetoothServicesProto device_allowed_bluetooth_services = 120;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_allowed_bluetooth_services_);
+    }
+
+    // optional .enterprise_management.DeviceDebugPacketCaptureAllowedProto device_debug_packet_capture_allowed = 121;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_debug_packet_capture_allowed_);
+    }
+
+    // optional .enterprise_management.DeviceScheduledRebootProto device_scheduled_reboot = 122;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_scheduled_reboot_);
+    }
+
+  }
+  if (cached_has_bits & 0xff000000u) {
+    // optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2 device_pci_peripheral_data_access_enabled_v2 = 123;
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_pci_peripheral_data_access_enabled_v2_);
+    }
+
+    // optional .enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto device_restricted_managed_guest_session_enabled = 124;
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_restricted_managed_guest_session_enabled_);
+    }
+
+    // optional .enterprise_management.HostnameUserConfigurableProto hostname_user_configurable = 125;
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *hostname_user_configurable_);
+    }
+
+    // optional .enterprise_management.BooleanPolicyProto login_screen_prompt_on_multiple_matching_certificates = 126;
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_screen_prompt_on_multiple_matching_certificates_);
+    }
+
+    // optional .enterprise_management.BooleanPolicyProto kiosk_crx_manifest_update_url_ignored = 127;
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *kiosk_crx_manifest_update_url_ignored_);
+    }
+
+    // optional .enterprise_management.DeviceI18nShortcutsEnabledProto device_i18n_shortcuts_enabled = 128;
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_i18n_shortcuts_enabled_);
+    }
+
+    // optional .enterprise_management.BooleanPolicyProto chromad_to_cloud_migration_enabled = 129;
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *chromad_to_cloud_migration_enabled_);
+    }
+
+    // optional .enterprise_management.RevenDeviceHWDataUsageEnabledProto hardware_data_usage_enabled = 130;
+    if (cached_has_bits & 0x80000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *hardware_data_usage_enabled_);
+    }
+
+  }
+  cached_has_bits = _has_bits_[4];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional .enterprise_management.DeviceLoginScreenWebUILazyLoadingProto login_web_ui_lazy_loading = 131;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *login_web_ui_lazy_loading_);
+    }
+
+    // optional .enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto keylocker_for_storage_encryption_enabled = 132;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *keylocker_for_storage_encryption_enabled_);
+    }
+
+    // optional .enterprise_management.BooleanPolicyProto device_run_automatic_cleanup_on_login = 133;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_run_automatic_cleanup_on_login_);
+    }
+
+    // optional .enterprise_management.EncryptedReportingPipelineConfigurationProto device_encrypted_reporting_pipeline_enabled = 134;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_encrypted_reporting_pipeline_enabled_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeDeviceSettingsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeDeviceSettingsProto*>(
+      &from));
+}
+
+void ChromeDeviceSettingsProto::MergeFrom(const ChromeDeviceSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeDeviceSettingsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_device_policy_refresh_rate()->::enterprise_management::DevicePolicyRefreshRateProto::MergeFrom(from._internal_device_policy_refresh_rate());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_user_whitelist()->::enterprise_management::UserWhitelistProto::MergeFrom(from._internal_user_whitelist());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_guest_mode_enabled()->::enterprise_management::GuestModeEnabledProto::MergeFrom(from._internal_guest_mode_enabled());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_device_proxy_settings()->::enterprise_management::OBSOLETE_DeviceProxySettingsProto::MergeFrom(from._internal_device_proxy_settings());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_camera_enabled()->::enterprise_management::CameraEnabledProto::MergeFrom(from._internal_camera_enabled());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_show_user_names()->::enterprise_management::ShowUserNamesOnSigninProto::MergeFrom(from._internal_show_user_names());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_data_roaming_enabled()->::enterprise_management::DataRoamingEnabledProto::MergeFrom(from._internal_data_roaming_enabled());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_allow_new_users()->::enterprise_management::AllowNewUsersProto::MergeFrom(from._internal_allow_new_users());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_metrics_enabled()->::enterprise_management::MetricsEnabledProto::MergeFrom(from._internal_metrics_enabled());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_release_channel()->::enterprise_management::ReleaseChannelProto::MergeFrom(from._internal_release_channel());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_open_network_configuration()->::enterprise_management::DeviceOpenNetworkConfigurationProto::MergeFrom(from._internal_open_network_configuration());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_device_reporting()->::enterprise_management::DeviceReportingProto::MergeFrom(from._internal_device_reporting());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _internal_mutable_ephemeral_users_enabled()->::enterprise_management::EphemeralUsersEnabledProto::MergeFrom(from._internal_ephemeral_users_enabled());
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _internal_mutable_app_pack()->::enterprise_management::OBSOLETE_AppPackProto::MergeFrom(from._internal_app_pack());
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _internal_mutable_forced_logout_timeouts()->::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto::MergeFrom(from._internal_forced_logout_timeouts());
+    }
+    if (cached_has_bits & 0x00008000u) {
+      _internal_mutable_login_screen_saver()->::enterprise_management::OBSOLETE_ScreenSaverProto::MergeFrom(from._internal_login_screen_saver());
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      _internal_mutable_auto_update_settings()->::enterprise_management::AutoUpdateSettingsProto::MergeFrom(from._internal_auto_update_settings());
+    }
+    if (cached_has_bits & 0x00020000u) {
+      _internal_mutable_start_up_urls()->::enterprise_management::OBSOLETE_StartUpUrlsProto::MergeFrom(from._internal_start_up_urls());
+    }
+    if (cached_has_bits & 0x00040000u) {
+      _internal_mutable_pinned_apps()->::enterprise_management::OBSOLETE_PinnedAppsProto::MergeFrom(from._internal_pinned_apps());
+    }
+    if (cached_has_bits & 0x00080000u) {
+      _internal_mutable_system_timezone()->::enterprise_management::SystemTimezoneProto::MergeFrom(from._internal_system_timezone());
+    }
+    if (cached_has_bits & 0x00100000u) {
+      _internal_mutable_device_local_accounts()->::enterprise_management::DeviceLocalAccountsProto::MergeFrom(from._internal_device_local_accounts());
+    }
+    if (cached_has_bits & 0x00200000u) {
+      _internal_mutable_allow_redeem_offers()->::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto::MergeFrom(from._internal_allow_redeem_offers());
+    }
+    if (cached_has_bits & 0x00400000u) {
+      _internal_mutable_feature_flags()->::enterprise_management::FeatureFlagsProto::MergeFrom(from._internal_feature_flags());
+    }
+    if (cached_has_bits & 0x00800000u) {
+      _internal_mutable_uptime_limit()->::enterprise_management::UptimeLimitProto::MergeFrom(from._internal_uptime_limit());
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      _internal_mutable_variations_parameter()->::enterprise_management::VariationsParameterProto::MergeFrom(from._internal_variations_parameter());
+    }
+    if (cached_has_bits & 0x02000000u) {
+      _internal_mutable_attestation_settings()->::enterprise_management::AttestationSettingsProto::MergeFrom(from._internal_attestation_settings());
+    }
+    if (cached_has_bits & 0x04000000u) {
+      _internal_mutable_accessibility_settings()->::enterprise_management::AccessibilitySettingsProto::MergeFrom(from._internal_accessibility_settings());
+    }
+    if (cached_has_bits & 0x08000000u) {
+      _internal_mutable_supervised_users_settings()->::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto::MergeFrom(from._internal_supervised_users_settings());
+    }
+    if (cached_has_bits & 0x10000000u) {
+      _internal_mutable_login_screen_power_management()->::enterprise_management::LoginScreenPowerManagementProto::MergeFrom(from._internal_login_screen_power_management());
+    }
+    if (cached_has_bits & 0x20000000u) {
+      _internal_mutable_use_24hour_clock()->::enterprise_management::SystemUse24HourClockProto::MergeFrom(from._internal_use_24hour_clock());
+    }
+    if (cached_has_bits & 0x40000000u) {
+      _internal_mutable_auto_clean_up_settings()->::enterprise_management::AutoCleanupSettigsProto::MergeFrom(from._internal_auto_clean_up_settings());
+    }
+    if (cached_has_bits & 0x80000000u) {
+      _internal_mutable_system_settings()->::enterprise_management::SystemSettingsProto::MergeFrom(from._internal_system_settings());
+    }
+  }
+  cached_has_bits = from._has_bits_[1];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_saml_settings()->::enterprise_management::SAMLSettingsProto::MergeFrom(from._internal_saml_settings());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_reboot_on_shutdown()->::enterprise_management::RebootOnShutdownProto::MergeFrom(from._internal_reboot_on_shutdown());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_device_heartbeat_settings()->::enterprise_management::DeviceHeartbeatSettingsProto::MergeFrom(from._internal_device_heartbeat_settings());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_extension_cache_size()->::enterprise_management::ExtensionCacheSizeProto::MergeFrom(from._internal_extension_cache_size());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_login_screen_domain_auto_complete()->::enterprise_management::LoginScreenDomainAutoCompleteProto::MergeFrom(from._internal_login_screen_domain_auto_complete());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_device_log_upload_settings()->::enterprise_management::DeviceLogUploadSettingsProto::MergeFrom(from._internal_device_log_upload_settings());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_display_rotation_default()->::enterprise_management::DisplayRotationDefaultProto::MergeFrom(from._internal_display_rotation_default());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_allow_kiosk_app_control_chrome_version()->::enterprise_management::AllowKioskAppControlChromeVersionProto::MergeFrom(from._internal_allow_kiosk_app_control_chrome_version());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_login_authentication_behavior()->::enterprise_management::LoginAuthenticationBehaviorProto::MergeFrom(from._internal_login_authentication_behavior());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_usb_detachable_whitelist()->::enterprise_management::UsbDetachableWhitelistProto::MergeFrom(from._internal_usb_detachable_whitelist());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_allow_bluetooth()->::enterprise_management::AllowBluetoothProto::MergeFrom(from._internal_allow_bluetooth());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_quirks_download_enabled()->::enterprise_management::DeviceQuirksDownloadEnabledProto::MergeFrom(from._internal_quirks_download_enabled());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _internal_mutable_login_video_capture_allowed_urls()->::enterprise_management::LoginVideoCaptureAllowedUrlsProto::MergeFrom(from._internal_login_video_capture_allowed_urls());
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _internal_mutable_device_login_screen_extensions()->::enterprise_management::DeviceLoginScreenExtensionsProto::MergeFrom(from._internal_device_login_screen_extensions());
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _internal_mutable_network_throttling()->::enterprise_management::NetworkThrottlingEnabledProto::MergeFrom(from._internal_network_throttling());
+    }
+    if (cached_has_bits & 0x00008000u) {
+      _internal_mutable_device_wallpaper_image()->::enterprise_management::DeviceWallpaperImageProto::MergeFrom(from._internal_device_wallpaper_image());
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      _internal_mutable_login_screen_locales()->::enterprise_management::LoginScreenLocalesProto::MergeFrom(from._internal_login_screen_locales());
+    }
+    if (cached_has_bits & 0x00020000u) {
+      _internal_mutable_login_screen_input_methods()->::enterprise_management::LoginScreenInputMethodsProto::MergeFrom(from._internal_login_screen_input_methods());
+    }
+    if (cached_has_bits & 0x00040000u) {
+      _internal_mutable_device_ecryptfs_migration_strategy()->::enterprise_management::DeviceEcryptfsMigrationStrategyProto::MergeFrom(from._internal_device_ecryptfs_migration_strategy());
+    }
+    if (cached_has_bits & 0x00080000u) {
+      _internal_mutable_device_second_factor_authentication()->::enterprise_management::DeviceSecondFactorAuthenticationProto::MergeFrom(from._internal_device_second_factor_authentication());
+    }
+    if (cached_has_bits & 0x00100000u) {
+      _internal_mutable_cast_receiver_name()->::enterprise_management::CastReceiverNameProto::MergeFrom(from._internal_cast_receiver_name());
+    }
+    if (cached_has_bits & 0x00200000u) {
+      _internal_mutable_device_off_hours()->::enterprise_management::DeviceOffHoursProto::MergeFrom(from._internal_device_off_hours());
+    }
+    if (cached_has_bits & 0x00400000u) {
+      _internal_mutable_native_device_printers()->::enterprise_management::DeviceNativePrintersProto::MergeFrom(from._internal_native_device_printers());
+    }
+    if (cached_has_bits & 0x00800000u) {
+      _internal_mutable_native_device_printers_access_mode()->::enterprise_management::DeviceNativePrintersAccessModeProto::MergeFrom(from._internal_native_device_printers_access_mode());
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      _internal_mutable_native_device_printers_blacklist()->::enterprise_management::DeviceNativePrintersBlacklistProto::MergeFrom(from._internal_native_device_printers_blacklist());
+    }
+    if (cached_has_bits & 0x02000000u) {
+      _internal_mutable_native_device_printers_whitelist()->::enterprise_management::DeviceNativePrintersWhitelistProto::MergeFrom(from._internal_native_device_printers_whitelist());
+    }
+    if (cached_has_bits & 0x04000000u) {
+      _internal_mutable_tpm_firmware_update_settings()->::enterprise_management::TPMFirmwareUpdateSettingsProto::MergeFrom(from._internal_tpm_firmware_update_settings());
+    }
+    if (cached_has_bits & 0x08000000u) {
+      _internal_mutable_minimum_required_version()->::enterprise_management::OBSOLETE_MinimumRequiredVersionProto::MergeFrom(from._internal_minimum_required_version());
+    }
+    if (cached_has_bits & 0x10000000u) {
+      _internal_mutable_device_login_screen_auto_select_certificate_for_urls()->::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls::MergeFrom(from._internal_device_login_screen_auto_select_certificate_for_urls());
+    }
+    if (cached_has_bits & 0x20000000u) {
+      _internal_mutable_unaffiliated_arc_allowed()->::enterprise_management::UnaffiliatedArcAllowedProto::MergeFrom(from._internal_unaffiliated_arc_allowed());
+    }
+    if (cached_has_bits & 0x40000000u) {
+      _internal_mutable_network_hostname()->::enterprise_management::NetworkHostnameProto::MergeFrom(from._internal_network_hostname());
+    }
+    if (cached_has_bits & 0x80000000u) {
+      _internal_mutable_device_kerberos_encryption_types()->::enterprise_management::DeviceKerberosEncryptionTypesProto::MergeFrom(from._internal_device_kerberos_encryption_types());
+    }
+  }
+  cached_has_bits = from._has_bits_[2];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_device_user_policy_loopback_processing_mode()->::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto::MergeFrom(from._internal_device_user_policy_loopback_processing_mode());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_device_login_screen_isolate_origins()->::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto::MergeFrom(from._internal_device_login_screen_isolate_origins());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_device_login_screen_site_per_process()->::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto::MergeFrom(from._internal_device_login_screen_site_per_process());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_virtual_machines_allowed()->::enterprise_management::VirtualMachinesAllowedProto::MergeFrom(from._internal_virtual_machines_allowed());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_device_machine_password_change_rate()->::enterprise_management::DeviceMachinePasswordChangeRateProto::MergeFrom(from._internal_device_machine_password_change_rate());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_saml_login_authentication_type()->::enterprise_management::SamlLoginAuthenticationTypeProto::MergeFrom(from._internal_saml_login_authentication_type());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_device_unaffiliated_crostini_allowed()->::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto::MergeFrom(from._internal_device_unaffiliated_crostini_allowed());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_device_wifi_fast_transition_enabled()->::enterprise_management::DeviceWiFiFastTransitionEnabledProto::MergeFrom(from._internal_device_wifi_fast_transition_enabled());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_device_display_resolution()->::enterprise_management::DeviceDisplayResolutionProto::MergeFrom(from._internal_device_display_resolution());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_plugin_vm_allowed()->::enterprise_management::PluginVmAllowedProto::MergeFrom(from._internal_plugin_vm_allowed());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_device_gpo_cache_lifetime()->::enterprise_management::DeviceGpoCacheLifetimeProto::MergeFrom(from._internal_device_gpo_cache_lifetime());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_device_auth_data_cache_lifetime()->::enterprise_management::DeviceAuthDataCacheLifetimeProto::MergeFrom(from._internal_device_auth_data_cache_lifetime());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _internal_mutable_plugin_vm_license_key()->::enterprise_management::PluginVmLicenseKeyProto::MergeFrom(from._internal_plugin_vm_license_key());
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _internal_mutable_device_reboot_on_user_signout()->::enterprise_management::DeviceRebootOnUserSignoutProto::MergeFrom(from._internal_device_reboot_on_user_signout());
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _internal_mutable_device_wilco_dtc_allowed()->::enterprise_management::DeviceWilcoDtcAllowedProto::MergeFrom(from._internal_device_wilco_dtc_allowed());
+    }
+    if (cached_has_bits & 0x00008000u) {
+      _internal_mutable_device_wilco_dtc_configuration()->::enterprise_management::DeviceWilcoDtcConfigurationProto::MergeFrom(from._internal_device_wilco_dtc_configuration());
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      _internal_mutable_device_wifi_allowed()->::enterprise_management::DeviceWiFiAllowedProto::MergeFrom(from._internal_device_wifi_allowed());
+    }
+    if (cached_has_bits & 0x00020000u) {
+      _internal_mutable_device_power_peak_shift()->::enterprise_management::DevicePowerPeakShiftProto::MergeFrom(from._internal_device_power_peak_shift());
+    }
+    if (cached_has_bits & 0x00040000u) {
+      _internal_mutable_device_boot_on_ac()->::enterprise_management::DeviceBootOnAcProto::MergeFrom(from._internal_device_boot_on_ac());
+    }
+    if (cached_has_bits & 0x00080000u) {
+      _internal_mutable_device_dock_mac_address_source()->::enterprise_management::DeviceDockMacAddressSourceProto::MergeFrom(from._internal_device_dock_mac_address_source());
+    }
+    if (cached_has_bits & 0x00100000u) {
+      _internal_mutable_device_advanced_battery_charge_mode()->::enterprise_management::DeviceAdvancedBatteryChargeModeProto::MergeFrom(from._internal_device_advanced_battery_charge_mode());
+    }
+    if (cached_has_bits & 0x00200000u) {
+      _internal_mutable_device_battery_charge_mode()->::enterprise_management::DeviceBatteryChargeModeProto::MergeFrom(from._internal_device_battery_charge_mode());
+    }
+    if (cached_has_bits & 0x00400000u) {
+      _internal_mutable_device_usb_power_share()->::enterprise_management::DeviceUsbPowerShareProto::MergeFrom(from._internal_device_usb_power_share());
+    }
+    if (cached_has_bits & 0x00800000u) {
+      _internal_mutable_device_scheduled_update_check()->::enterprise_management::DeviceScheduledUpdateCheckProto::MergeFrom(from._internal_device_scheduled_update_check());
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      _internal_mutable_device_powerwash_allowed()->::enterprise_management::DevicePowerwashAllowedProto::MergeFrom(from._internal_device_powerwash_allowed());
+    }
+    if (cached_has_bits & 0x02000000u) {
+      _internal_mutable_device_login_screen_webusb_allow_devices_for_urls()->::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::MergeFrom(from._internal_device_login_screen_webusb_allow_devices_for_urls());
+    }
+    if (cached_has_bits & 0x04000000u) {
+      _internal_mutable_device_login_screen_system_info_enforced()->::enterprise_management::BooleanPolicyProto::MergeFrom(from._internal_device_login_screen_system_info_enforced());
+    }
+    if (cached_has_bits & 0x08000000u) {
+      _internal_mutable_device_web_based_attestation_allowed_urls()->::enterprise_management::StringListPolicyProto::MergeFrom(from._internal_device_web_based_attestation_allowed_urls());
+    }
+    if (cached_has_bits & 0x10000000u) {
+      _internal_mutable_device_show_numeric_keyboard_for_password()->::enterprise_management::BooleanPolicyProto::MergeFrom(from._internal_device_show_numeric_keyboard_for_password());
+    }
+    if (cached_has_bits & 0x20000000u) {
+      _internal_mutable_login_screen_primary_mouse_button_switch()->::enterprise_management::BooleanPolicyProto::MergeFrom(from._internal_login_screen_primary_mouse_button_switch());
+    }
+    if (cached_has_bits & 0x40000000u) {
+      _internal_mutable_device_minimum_version()->::enterprise_management::StringPolicyProto::MergeFrom(from._internal_device_minimum_version());
+    }
+    if (cached_has_bits & 0x80000000u) {
+      _internal_mutable_system_proxy_settings()->::enterprise_management::SystemProxySettingsProto::MergeFrom(from._internal_system_proxy_settings());
+    }
+  }
+  cached_has_bits = from._has_bits_[3];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_device_chrome_variations_type()->::enterprise_management::IntegerPolicyProto::MergeFrom(from._internal_device_chrome_variations_type());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_device_login_screen_privacy_screen_enabled()->::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto::MergeFrom(from._internal_device_login_screen_privacy_screen_enabled());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_required_client_certificate_for_device()->::enterprise_management::RequiredClientCertificateForDeviceProto::MergeFrom(from._internal_required_client_certificate_for_device());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_device_crostini_arc_adb_sideloading_allowed()->::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto::MergeFrom(from._internal_device_crostini_arc_adb_sideloading_allowed());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_device_minimum_version_aue_message()->::enterprise_management::StringPolicyProto::MergeFrom(from._internal_device_minimum_version_aue_message());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_managed_guest_session_privacy_warnings()->::enterprise_management::ManagedGuestSessionPrivacyWarningsProto::MergeFrom(from._internal_managed_guest_session_privacy_warnings());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_external_print_servers()->::enterprise_management::DeviceExternalPrintServersProto::MergeFrom(from._internal_external_print_servers());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_external_print_servers_allowlist()->::enterprise_management::DeviceExternalPrintServersAllowlistProto::MergeFrom(from._internal_external_print_servers_allowlist());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_device_printers_access_mode()->::enterprise_management::DevicePrintersAccessModeProto::MergeFrom(from._internal_device_printers_access_mode());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_device_printers_blocklist()->::enterprise_management::DevicePrintersBlocklistProto::MergeFrom(from._internal_device_printers_blocklist());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_device_printers_allowlist()->::enterprise_management::DevicePrintersAllowlistProto::MergeFrom(from._internal_device_printers_allowlist());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_device_printers()->::enterprise_management::DevicePrintersProto::MergeFrom(from._internal_device_printers());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _internal_mutable_device_show_low_disk_space_notification()->::enterprise_management::DeviceShowLowDiskSpaceNotificationProto::MergeFrom(from._internal_device_show_low_disk_space_notification());
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _internal_mutable_user_allowlist()->::enterprise_management::UserAllowlistProto::MergeFrom(from._internal_user_allowlist());
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _internal_mutable_usb_detachable_allowlist()->::enterprise_management::UsbDetachableAllowlistProto::MergeFrom(from._internal_usb_detachable_allowlist());
+    }
+    if (cached_has_bits & 0x00008000u) {
+      _internal_mutable_family_link_accounts_allowed()->::enterprise_management::DeviceFamilyLinkAccountsAllowedProto::MergeFrom(from._internal_family_link_accounts_allowed());
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      _internal_mutable_arc_data_snapshot_hours()->::enterprise_management::DeviceArcDataSnapshotHoursProto::MergeFrom(from._internal_arc_data_snapshot_hours());
+    }
+    if (cached_has_bits & 0x00020000u) {
+      _internal_mutable_device_allow_mgs_to_store_display_properties()->::enterprise_management::BooleanPolicyProto::MergeFrom(from._internal_device_allow_mgs_to_store_display_properties());
+    }
+    if (cached_has_bits & 0x00040000u) {
+      _internal_mutable_device_system_wide_tracing_enabled()->::enterprise_management::DeviceSystemWideTracingEnabledProto::MergeFrom(from._internal_device_system_wide_tracing_enabled());
+    }
+    if (cached_has_bits & 0x00080000u) {
+      _internal_mutable_device_pci_peripheral_data_access_enabled()->::enterprise_management::DevicePciPeripheralDataAccessEnabledProto::MergeFrom(from._internal_device_pci_peripheral_data_access_enabled());
+    }
+    if (cached_has_bits & 0x00100000u) {
+      _internal_mutable_device_borealis_allowed()->::enterprise_management::DeviceBorealisAllowedProto::MergeFrom(from._internal_device_borealis_allowed());
+    }
+    if (cached_has_bits & 0x00200000u) {
+      _internal_mutable_device_allowed_bluetooth_services()->::enterprise_management::DeviceAllowedBluetoothServicesProto::MergeFrom(from._internal_device_allowed_bluetooth_services());
+    }
+    if (cached_has_bits & 0x00400000u) {
+      _internal_mutable_device_debug_packet_capture_allowed()->::enterprise_management::DeviceDebugPacketCaptureAllowedProto::MergeFrom(from._internal_device_debug_packet_capture_allowed());
+    }
+    if (cached_has_bits & 0x00800000u) {
+      _internal_mutable_device_scheduled_reboot()->::enterprise_management::DeviceScheduledRebootProto::MergeFrom(from._internal_device_scheduled_reboot());
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      _internal_mutable_device_pci_peripheral_data_access_enabled_v2()->::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2::MergeFrom(from._internal_device_pci_peripheral_data_access_enabled_v2());
+    }
+    if (cached_has_bits & 0x02000000u) {
+      _internal_mutable_device_restricted_managed_guest_session_enabled()->::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto::MergeFrom(from._internal_device_restricted_managed_guest_session_enabled());
+    }
+    if (cached_has_bits & 0x04000000u) {
+      _internal_mutable_hostname_user_configurable()->::enterprise_management::HostnameUserConfigurableProto::MergeFrom(from._internal_hostname_user_configurable());
+    }
+    if (cached_has_bits & 0x08000000u) {
+      _internal_mutable_login_screen_prompt_on_multiple_matching_certificates()->::enterprise_management::BooleanPolicyProto::MergeFrom(from._internal_login_screen_prompt_on_multiple_matching_certificates());
+    }
+    if (cached_has_bits & 0x10000000u) {
+      _internal_mutable_kiosk_crx_manifest_update_url_ignored()->::enterprise_management::BooleanPolicyProto::MergeFrom(from._internal_kiosk_crx_manifest_update_url_ignored());
+    }
+    if (cached_has_bits & 0x20000000u) {
+      _internal_mutable_device_i18n_shortcuts_enabled()->::enterprise_management::DeviceI18nShortcutsEnabledProto::MergeFrom(from._internal_device_i18n_shortcuts_enabled());
+    }
+    if (cached_has_bits & 0x40000000u) {
+      _internal_mutable_chromad_to_cloud_migration_enabled()->::enterprise_management::BooleanPolicyProto::MergeFrom(from._internal_chromad_to_cloud_migration_enabled());
+    }
+    if (cached_has_bits & 0x80000000u) {
+      _internal_mutable_hardware_data_usage_enabled()->::enterprise_management::RevenDeviceHWDataUsageEnabledProto::MergeFrom(from._internal_hardware_data_usage_enabled());
+    }
+  }
+  cached_has_bits = from._has_bits_[4];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_login_web_ui_lazy_loading()->::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto::MergeFrom(from._internal_login_web_ui_lazy_loading());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_keylocker_for_storage_encryption_enabled()->::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto::MergeFrom(from._internal_keylocker_for_storage_encryption_enabled());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_device_run_automatic_cleanup_on_login()->::enterprise_management::BooleanPolicyProto::MergeFrom(from._internal_device_run_automatic_cleanup_on_login());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_device_encrypted_reporting_pipeline_enabled()->::enterprise_management::EncryptedReportingPipelineConfigurationProto::MergeFrom(from._internal_device_encrypted_reporting_pipeline_enabled());
+    }
+  }
+}
+
+void ChromeDeviceSettingsProto::CopyFrom(const ChromeDeviceSettingsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeDeviceSettingsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeDeviceSettingsProto::IsInitialized() const {
+  return true;
+}
+
+void ChromeDeviceSettingsProto::InternalSwap(ChromeDeviceSettingsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(_has_bits_[1], other->_has_bits_[1]);
+  swap(_has_bits_[2], other->_has_bits_[2]);
+  swap(_has_bits_[3], other->_has_bits_[3]);
+  swap(_has_bits_[4], other->_has_bits_[4]);
+  swap(device_policy_refresh_rate_, other->device_policy_refresh_rate_);
+  swap(user_whitelist_, other->user_whitelist_);
+  swap(guest_mode_enabled_, other->guest_mode_enabled_);
+  swap(device_proxy_settings_, other->device_proxy_settings_);
+  swap(camera_enabled_, other->camera_enabled_);
+  swap(show_user_names_, other->show_user_names_);
+  swap(data_roaming_enabled_, other->data_roaming_enabled_);
+  swap(allow_new_users_, other->allow_new_users_);
+  swap(metrics_enabled_, other->metrics_enabled_);
+  swap(release_channel_, other->release_channel_);
+  swap(open_network_configuration_, other->open_network_configuration_);
+  swap(device_reporting_, other->device_reporting_);
+  swap(ephemeral_users_enabled_, other->ephemeral_users_enabled_);
+  swap(app_pack_, other->app_pack_);
+  swap(forced_logout_timeouts_, other->forced_logout_timeouts_);
+  swap(login_screen_saver_, other->login_screen_saver_);
+  swap(auto_update_settings_, other->auto_update_settings_);
+  swap(start_up_urls_, other->start_up_urls_);
+  swap(pinned_apps_, other->pinned_apps_);
+  swap(system_timezone_, other->system_timezone_);
+  swap(device_local_accounts_, other->device_local_accounts_);
+  swap(allow_redeem_offers_, other->allow_redeem_offers_);
+  swap(feature_flags_, other->feature_flags_);
+  swap(uptime_limit_, other->uptime_limit_);
+  swap(variations_parameter_, other->variations_parameter_);
+  swap(attestation_settings_, other->attestation_settings_);
+  swap(accessibility_settings_, other->accessibility_settings_);
+  swap(supervised_users_settings_, other->supervised_users_settings_);
+  swap(login_screen_power_management_, other->login_screen_power_management_);
+  swap(use_24hour_clock_, other->use_24hour_clock_);
+  swap(auto_clean_up_settings_, other->auto_clean_up_settings_);
+  swap(system_settings_, other->system_settings_);
+  swap(saml_settings_, other->saml_settings_);
+  swap(reboot_on_shutdown_, other->reboot_on_shutdown_);
+  swap(device_heartbeat_settings_, other->device_heartbeat_settings_);
+  swap(extension_cache_size_, other->extension_cache_size_);
+  swap(login_screen_domain_auto_complete_, other->login_screen_domain_auto_complete_);
+  swap(device_log_upload_settings_, other->device_log_upload_settings_);
+  swap(display_rotation_default_, other->display_rotation_default_);
+  swap(allow_kiosk_app_control_chrome_version_, other->allow_kiosk_app_control_chrome_version_);
+  swap(login_authentication_behavior_, other->login_authentication_behavior_);
+  swap(usb_detachable_whitelist_, other->usb_detachable_whitelist_);
+  swap(allow_bluetooth_, other->allow_bluetooth_);
+  swap(quirks_download_enabled_, other->quirks_download_enabled_);
+  swap(login_video_capture_allowed_urls_, other->login_video_capture_allowed_urls_);
+  swap(device_login_screen_extensions_, other->device_login_screen_extensions_);
+  swap(network_throttling_, other->network_throttling_);
+  swap(device_wallpaper_image_, other->device_wallpaper_image_);
+  swap(login_screen_locales_, other->login_screen_locales_);
+  swap(login_screen_input_methods_, other->login_screen_input_methods_);
+  swap(device_ecryptfs_migration_strategy_, other->device_ecryptfs_migration_strategy_);
+  swap(device_second_factor_authentication_, other->device_second_factor_authentication_);
+  swap(cast_receiver_name_, other->cast_receiver_name_);
+  swap(device_off_hours_, other->device_off_hours_);
+  swap(native_device_printers_, other->native_device_printers_);
+  swap(native_device_printers_access_mode_, other->native_device_printers_access_mode_);
+  swap(native_device_printers_blacklist_, other->native_device_printers_blacklist_);
+  swap(native_device_printers_whitelist_, other->native_device_printers_whitelist_);
+  swap(tpm_firmware_update_settings_, other->tpm_firmware_update_settings_);
+  swap(minimum_required_version_, other->minimum_required_version_);
+  swap(device_login_screen_auto_select_certificate_for_urls_, other->device_login_screen_auto_select_certificate_for_urls_);
+  swap(unaffiliated_arc_allowed_, other->unaffiliated_arc_allowed_);
+  swap(network_hostname_, other->network_hostname_);
+  swap(device_kerberos_encryption_types_, other->device_kerberos_encryption_types_);
+  swap(device_user_policy_loopback_processing_mode_, other->device_user_policy_loopback_processing_mode_);
+  swap(device_login_screen_isolate_origins_, other->device_login_screen_isolate_origins_);
+  swap(device_login_screen_site_per_process_, other->device_login_screen_site_per_process_);
+  swap(virtual_machines_allowed_, other->virtual_machines_allowed_);
+  swap(device_machine_password_change_rate_, other->device_machine_password_change_rate_);
+  swap(saml_login_authentication_type_, other->saml_login_authentication_type_);
+  swap(device_unaffiliated_crostini_allowed_, other->device_unaffiliated_crostini_allowed_);
+  swap(device_wifi_fast_transition_enabled_, other->device_wifi_fast_transition_enabled_);
+  swap(device_display_resolution_, other->device_display_resolution_);
+  swap(plugin_vm_allowed_, other->plugin_vm_allowed_);
+  swap(device_gpo_cache_lifetime_, other->device_gpo_cache_lifetime_);
+  swap(device_auth_data_cache_lifetime_, other->device_auth_data_cache_lifetime_);
+  swap(plugin_vm_license_key_, other->plugin_vm_license_key_);
+  swap(device_reboot_on_user_signout_, other->device_reboot_on_user_signout_);
+  swap(device_wilco_dtc_allowed_, other->device_wilco_dtc_allowed_);
+  swap(device_wilco_dtc_configuration_, other->device_wilco_dtc_configuration_);
+  swap(device_wifi_allowed_, other->device_wifi_allowed_);
+  swap(device_power_peak_shift_, other->device_power_peak_shift_);
+  swap(device_boot_on_ac_, other->device_boot_on_ac_);
+  swap(device_dock_mac_address_source_, other->device_dock_mac_address_source_);
+  swap(device_advanced_battery_charge_mode_, other->device_advanced_battery_charge_mode_);
+  swap(device_battery_charge_mode_, other->device_battery_charge_mode_);
+  swap(device_usb_power_share_, other->device_usb_power_share_);
+  swap(device_scheduled_update_check_, other->device_scheduled_update_check_);
+  swap(device_powerwash_allowed_, other->device_powerwash_allowed_);
+  swap(device_login_screen_webusb_allow_devices_for_urls_, other->device_login_screen_webusb_allow_devices_for_urls_);
+  swap(device_login_screen_system_info_enforced_, other->device_login_screen_system_info_enforced_);
+  swap(device_web_based_attestation_allowed_urls_, other->device_web_based_attestation_allowed_urls_);
+  swap(device_show_numeric_keyboard_for_password_, other->device_show_numeric_keyboard_for_password_);
+  swap(login_screen_primary_mouse_button_switch_, other->login_screen_primary_mouse_button_switch_);
+  swap(device_minimum_version_, other->device_minimum_version_);
+  swap(system_proxy_settings_, other->system_proxy_settings_);
+  swap(device_chrome_variations_type_, other->device_chrome_variations_type_);
+  swap(device_login_screen_privacy_screen_enabled_, other->device_login_screen_privacy_screen_enabled_);
+  swap(required_client_certificate_for_device_, other->required_client_certificate_for_device_);
+  swap(device_crostini_arc_adb_sideloading_allowed_, other->device_crostini_arc_adb_sideloading_allowed_);
+  swap(device_minimum_version_aue_message_, other->device_minimum_version_aue_message_);
+  swap(managed_guest_session_privacy_warnings_, other->managed_guest_session_privacy_warnings_);
+  swap(external_print_servers_, other->external_print_servers_);
+  swap(external_print_servers_allowlist_, other->external_print_servers_allowlist_);
+  swap(device_printers_access_mode_, other->device_printers_access_mode_);
+  swap(device_printers_blocklist_, other->device_printers_blocklist_);
+  swap(device_printers_allowlist_, other->device_printers_allowlist_);
+  swap(device_printers_, other->device_printers_);
+  swap(device_show_low_disk_space_notification_, other->device_show_low_disk_space_notification_);
+  swap(user_allowlist_, other->user_allowlist_);
+  swap(usb_detachable_allowlist_, other->usb_detachable_allowlist_);
+  swap(family_link_accounts_allowed_, other->family_link_accounts_allowed_);
+  swap(arc_data_snapshot_hours_, other->arc_data_snapshot_hours_);
+  swap(device_allow_mgs_to_store_display_properties_, other->device_allow_mgs_to_store_display_properties_);
+  swap(device_system_wide_tracing_enabled_, other->device_system_wide_tracing_enabled_);
+  swap(device_pci_peripheral_data_access_enabled_, other->device_pci_peripheral_data_access_enabled_);
+  swap(device_borealis_allowed_, other->device_borealis_allowed_);
+  swap(device_allowed_bluetooth_services_, other->device_allowed_bluetooth_services_);
+  swap(device_debug_packet_capture_allowed_, other->device_debug_packet_capture_allowed_);
+  swap(device_scheduled_reboot_, other->device_scheduled_reboot_);
+  swap(device_pci_peripheral_data_access_enabled_v2_, other->device_pci_peripheral_data_access_enabled_v2_);
+  swap(device_restricted_managed_guest_session_enabled_, other->device_restricted_managed_guest_session_enabled_);
+  swap(hostname_user_configurable_, other->hostname_user_configurable_);
+  swap(login_screen_prompt_on_multiple_matching_certificates_, other->login_screen_prompt_on_multiple_matching_certificates_);
+  swap(kiosk_crx_manifest_update_url_ignored_, other->kiosk_crx_manifest_update_url_ignored_);
+  swap(device_i18n_shortcuts_enabled_, other->device_i18n_shortcuts_enabled_);
+  swap(chromad_to_cloud_migration_enabled_, other->chromad_to_cloud_migration_enabled_);
+  swap(hardware_data_usage_enabled_, other->hardware_data_usage_enabled_);
+  swap(login_web_ui_lazy_loading_, other->login_web_ui_lazy_loading_);
+  swap(keylocker_for_storage_encryption_enabled_, other->keylocker_for_storage_encryption_enabled_);
+  swap(device_run_automatic_cleanup_on_login_, other->device_run_automatic_cleanup_on_login_);
+  swap(device_encrypted_reporting_pipeline_enabled_, other->device_encrypted_reporting_pipeline_enabled_);
+}
+
+std::string ChromeDeviceSettingsProto::GetTypeName() const {
+  return "enterprise_management.ChromeDeviceSettingsProto";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace enterprise_management
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePolicyRefreshRateProto* Arena::CreateMaybeMessage< ::enterprise_management::DevicePolicyRefreshRateProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePolicyRefreshRateProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UserWhitelistProto* Arena::CreateMaybeMessage< ::enterprise_management::UserWhitelistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UserWhitelistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UserAllowlistProto* Arena::CreateMaybeMessage< ::enterprise_management::UserAllowlistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UserAllowlistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AllowNewUsersProto* Arena::CreateMaybeMessage< ::enterprise_management::AllowNewUsersProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AllowNewUsersProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::GuestModeEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::GuestModeEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::GuestModeEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ShowUserNamesOnSigninProto* Arena::CreateMaybeMessage< ::enterprise_management::ShowUserNamesOnSigninProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ShowUserNamesOnSigninProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DataRoamingEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DataRoamingEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DataRoamingEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_DeviceProxySettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_DeviceProxySettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CameraEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::CameraEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CameraEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::MetricsEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::MetricsEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::MetricsEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ReleaseChannelProto* Arena::CreateMaybeMessage< ::enterprise_management::ReleaseChannelProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ReleaseChannelProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceOpenNetworkConfigurationProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceOpenNetworkConfigurationProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceOpenNetworkConfigurationProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::NetworkHostnameProto* Arena::CreateMaybeMessage< ::enterprise_management::NetworkHostnameProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::NetworkHostnameProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::HostnameUserConfigurableProto* Arena::CreateMaybeMessage< ::enterprise_management::HostnameUserConfigurableProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::HostnameUserConfigurableProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceReportingProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceReportingProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceReportingProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::EphemeralUsersEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::EphemeralUsersEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::EphemeralUsersEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_AppPackEntryProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_AppPackEntryProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_AppPackEntryProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_AppPackProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_AppPackProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_AppPackProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_PinnedAppsProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_PinnedAppsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_PinnedAppsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_ScreenSaverProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_ScreenSaverProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_ScreenSaverProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AutoUpdateSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::AutoUpdateSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AutoUpdateSettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_StartUpUrlsProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_StartUpUrlsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_StartUpUrlsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SystemTimezoneProto* Arena::CreateMaybeMessage< ::enterprise_management::SystemTimezoneProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SystemTimezoneProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SystemUse24HourClockProto* Arena::CreateMaybeMessage< ::enterprise_management::SystemUse24HourClockProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SystemUse24HourClockProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::KioskAppInfoProto* Arena::CreateMaybeMessage< ::enterprise_management::KioskAppInfoProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::KioskAppInfoProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AndroidKioskAppInfoProto* Arena::CreateMaybeMessage< ::enterprise_management::AndroidKioskAppInfoProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AndroidKioskAppInfoProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::WebKioskAppInfoProto* Arena::CreateMaybeMessage< ::enterprise_management::WebKioskAppInfoProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::WebKioskAppInfoProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceLocalAccountInfoProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceLocalAccountInfoProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceLocalAccountInfoProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceLocalAccountsProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceLocalAccountsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceLocalAccountsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* Arena::CreateMaybeMessage< ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* Arena::CreateMaybeMessage< ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::FeatureFlagsProto* Arena::CreateMaybeMessage< ::enterprise_management::FeatureFlagsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::FeatureFlagsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UptimeLimitProto* Arena::CreateMaybeMessage< ::enterprise_management::UptimeLimitProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UptimeLimitProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::VariationsParameterProto* Arena::CreateMaybeMessage< ::enterprise_management::VariationsParameterProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::VariationsParameterProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AttestationSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::AttestationSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AttestationSettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AccessibilitySettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::AccessibilitySettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AccessibilitySettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LoginScreenPowerManagementProto* Arena::CreateMaybeMessage< ::enterprise_management::LoginScreenPowerManagementProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LoginScreenPowerManagementProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AutoCleanupSettigsProto* Arena::CreateMaybeMessage< ::enterprise_management::AutoCleanupSettigsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AutoCleanupSettigsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SystemSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::SystemSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SystemSettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SAMLSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::SAMLSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SAMLSettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RebootOnShutdownProto* Arena::CreateMaybeMessage< ::enterprise_management::RebootOnShutdownProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RebootOnShutdownProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceHeartbeatSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceHeartbeatSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceHeartbeatSettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ExtensionCacheSizeProto* Arena::CreateMaybeMessage< ::enterprise_management::ExtensionCacheSizeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ExtensionCacheSizeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LoginScreenDomainAutoCompleteProto* Arena::CreateMaybeMessage< ::enterprise_management::LoginScreenDomainAutoCompleteProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LoginScreenDomainAutoCompleteProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceLogUploadSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceLogUploadSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceLogUploadSettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DisplayRotationDefaultProto* Arena::CreateMaybeMessage< ::enterprise_management::DisplayRotationDefaultProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DisplayRotationDefaultProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceDisplayResolutionProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceDisplayResolutionProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceDisplayResolutionProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AllowKioskAppControlChromeVersionProto* Arena::CreateMaybeMessage< ::enterprise_management::AllowKioskAppControlChromeVersionProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AllowKioskAppControlChromeVersionProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LoginAuthenticationBehaviorProto* Arena::CreateMaybeMessage< ::enterprise_management::LoginAuthenticationBehaviorProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LoginAuthenticationBehaviorProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UsbDeviceIdProto* Arena::CreateMaybeMessage< ::enterprise_management::UsbDeviceIdProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UsbDeviceIdProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UsbDetachableWhitelistProto* Arena::CreateMaybeMessage< ::enterprise_management::UsbDetachableWhitelistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UsbDetachableWhitelistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UsbDeviceIdInclusiveProto* Arena::CreateMaybeMessage< ::enterprise_management::UsbDeviceIdInclusiveProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UsbDeviceIdInclusiveProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UsbDetachableAllowlistProto* Arena::CreateMaybeMessage< ::enterprise_management::UsbDetachableAllowlistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UsbDetachableAllowlistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AllowBluetoothProto* Arena::CreateMaybeMessage< ::enterprise_management::AllowBluetoothProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AllowBluetoothProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceWiFiAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceWiFiAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceWiFiAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceQuirksDownloadEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceQuirksDownloadEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceQuirksDownloadEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* Arena::CreateMaybeMessage< ::enterprise_management::LoginVideoCaptureAllowedUrlsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LoginVideoCaptureAllowedUrlsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceWiFiFastTransitionEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceWiFiFastTransitionEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::NetworkThrottlingEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::NetworkThrottlingEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::NetworkThrottlingEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceLoginScreenExtensionsProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceLoginScreenExtensionsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceLoginScreenExtensionsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LoginScreenLocalesProto* Arena::CreateMaybeMessage< ::enterprise_management::LoginScreenLocalesProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LoginScreenLocalesProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LoginScreenInputMethodsProto* Arena::CreateMaybeMessage< ::enterprise_management::LoginScreenInputMethodsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LoginScreenInputMethodsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceWallpaperImageProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceWallpaperImageProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceWallpaperImageProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceEcryptfsMigrationStrategyProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceEcryptfsMigrationStrategyProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceSecondFactorAuthenticationProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceSecondFactorAuthenticationProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceSecondFactorAuthenticationProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CastReceiverNameProto* Arena::CreateMaybeMessage< ::enterprise_management::CastReceiverNameProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CastReceiverNameProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::WeeklyTimeProto* Arena::CreateMaybeMessage< ::enterprise_management::WeeklyTimeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::WeeklyTimeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::WeeklyTimeIntervalProto* Arena::CreateMaybeMessage< ::enterprise_management::WeeklyTimeIntervalProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::WeeklyTimeIntervalProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceOffHoursProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceOffHoursProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceOffHoursProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceNativePrintersProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceNativePrintersProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceNativePrintersProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceNativePrintersAccessModeProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceNativePrintersAccessModeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceNativePrintersAccessModeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceNativePrintersBlacklistProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceNativePrintersBlacklistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceNativePrintersBlacklistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceNativePrintersWhitelistProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceNativePrintersWhitelistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceNativePrintersWhitelistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePrintersProto* Arena::CreateMaybeMessage< ::enterprise_management::DevicePrintersProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePrintersProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePrintersAccessModeProto* Arena::CreateMaybeMessage< ::enterprise_management::DevicePrintersAccessModeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePrintersAccessModeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePrintersBlocklistProto* Arena::CreateMaybeMessage< ::enterprise_management::DevicePrintersBlocklistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePrintersBlocklistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePrintersAllowlistProto* Arena::CreateMaybeMessage< ::enterprise_management::DevicePrintersAllowlistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePrintersAllowlistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceExternalPrintServersProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceExternalPrintServersProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceExternalPrintServersProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceExternalPrintServersAllowlistProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceExternalPrintServersAllowlistProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceExternalPrintServersAllowlistProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::TPMFirmwareUpdateSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::TPMFirmwareUpdateSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::TPMFirmwareUpdateSettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* Arena::CreateMaybeMessage< ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UnaffiliatedArcAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::UnaffiliatedArcAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UnaffiliatedArcAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceKerberosEncryptionTypesProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceKerberosEncryptionTypesProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceKerberosEncryptionTypesProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* Arena::CreateMaybeMessage< ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::VirtualMachinesAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::VirtualMachinesAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::VirtualMachinesAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceMachinePasswordChangeRateProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceMachinePasswordChangeRateProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceMachinePasswordChangeRateProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceGpoCacheLifetimeProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceGpoCacheLifetimeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceGpoCacheLifetimeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAuthDataCacheLifetimeProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAuthDataCacheLifetimeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAuthDataCacheLifetimeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SamlLoginAuthenticationTypeProto* Arena::CreateMaybeMessage< ::enterprise_management::SamlLoginAuthenticationTypeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SamlLoginAuthenticationTypeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PluginVmAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::PluginVmAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PluginVmAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PluginVmLicenseKeyProto* Arena::CreateMaybeMessage< ::enterprise_management::PluginVmLicenseKeyProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PluginVmLicenseKeyProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceRebootOnUserSignoutProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceRebootOnUserSignoutProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceRebootOnUserSignoutProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceWilcoDtcAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceWilcoDtcAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceWilcoDtcAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceWilcoDtcConfigurationProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceWilcoDtcConfigurationProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceWilcoDtcConfigurationProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePowerPeakShiftProto* Arena::CreateMaybeMessage< ::enterprise_management::DevicePowerPeakShiftProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePowerPeakShiftProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceBootOnAcProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceBootOnAcProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceBootOnAcProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceDockMacAddressSourceProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceDockMacAddressSourceProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceDockMacAddressSourceProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAdvancedBatteryChargeModeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAdvancedBatteryChargeModeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceBatteryChargeModeProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceBatteryChargeModeProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceBatteryChargeModeProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceUsbPowerShareProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceUsbPowerShareProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceUsbPowerShareProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceScheduledUpdateCheckProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceScheduledUpdateCheckProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceScheduledUpdateCheckProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePowerwashAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::DevicePowerwashAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePowerwashAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SystemProxySettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::SystemProxySettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SystemProxySettingsProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RequiredClientCertificateForDeviceProto* Arena::CreateMaybeMessage< ::enterprise_management::RequiredClientCertificateForDeviceProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RequiredClientCertificateForDeviceProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceArcDataSnapshotHoursProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceArcDataSnapshotHoursProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceArcDataSnapshotHoursProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceSystemWideTracingEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceSystemWideTracingEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceSystemWideTracingEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* Arena::CreateMaybeMessage< ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2 >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2 >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceBorealisAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceBorealisAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceBorealisAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAllowedBluetoothServicesProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAllowedBluetoothServicesProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAllowedBluetoothServicesProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceDebugPacketCaptureAllowedProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceDebugPacketCaptureAllowedProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceScheduledRebootProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceScheduledRebootProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceScheduledRebootProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceI18nShortcutsEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceI18nShortcutsEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceI18nShortcutsEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* Arena::CreateMaybeMessage< ::enterprise_management::RevenDeviceHWDataUsageEnabledProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RevenDeviceHWDataUsageEnabledProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* Arena::CreateMaybeMessage< ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::EncryptedReportingPipelineConfigurationProto* Arena::CreateMaybeMessage< ::enterprise_management::EncryptedReportingPipelineConfigurationProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::EncryptedReportingPipelineConfigurationProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeDeviceSettingsProto* Arena::CreateMaybeMessage< ::enterprise_management::ChromeDeviceSettingsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeDeviceSettingsProto >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_device_policy.pb.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_device_policy.pb.h
new file mode 100644
index 0000000..0c70a03
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_device_policy.pb.h
@@ -0,0 +1,42370 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: chrome_device_policy.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_chrome_5fdevice_5fpolicy_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_chrome_5fdevice_5fpolicy_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/generated_enum_util.h>
+#include "policy_common_definitions.pb.h"
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_chrome_5fdevice_5fpolicy_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_chrome_5fdevice_5fpolicy_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[130]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace enterprise_management {
+class AccessibilitySettingsProto;
+class AccessibilitySettingsProtoDefaultTypeInternal;
+extern AccessibilitySettingsProtoDefaultTypeInternal _AccessibilitySettingsProto_default_instance_;
+class AllowBluetoothProto;
+class AllowBluetoothProtoDefaultTypeInternal;
+extern AllowBluetoothProtoDefaultTypeInternal _AllowBluetoothProto_default_instance_;
+class AllowKioskAppControlChromeVersionProto;
+class AllowKioskAppControlChromeVersionProtoDefaultTypeInternal;
+extern AllowKioskAppControlChromeVersionProtoDefaultTypeInternal _AllowKioskAppControlChromeVersionProto_default_instance_;
+class AllowNewUsersProto;
+class AllowNewUsersProtoDefaultTypeInternal;
+extern AllowNewUsersProtoDefaultTypeInternal _AllowNewUsersProto_default_instance_;
+class AllowRedeemChromeOsRegistrationOffersProto;
+class AllowRedeemChromeOsRegistrationOffersProtoDefaultTypeInternal;
+extern AllowRedeemChromeOsRegistrationOffersProtoDefaultTypeInternal _AllowRedeemChromeOsRegistrationOffersProto_default_instance_;
+class AndroidKioskAppInfoProto;
+class AndroidKioskAppInfoProtoDefaultTypeInternal;
+extern AndroidKioskAppInfoProtoDefaultTypeInternal _AndroidKioskAppInfoProto_default_instance_;
+class AttestationSettingsProto;
+class AttestationSettingsProtoDefaultTypeInternal;
+extern AttestationSettingsProtoDefaultTypeInternal _AttestationSettingsProto_default_instance_;
+class AutoCleanupSettigsProto;
+class AutoCleanupSettigsProtoDefaultTypeInternal;
+extern AutoCleanupSettigsProtoDefaultTypeInternal _AutoCleanupSettigsProto_default_instance_;
+class AutoUpdateSettingsProto;
+class AutoUpdateSettingsProtoDefaultTypeInternal;
+extern AutoUpdateSettingsProtoDefaultTypeInternal _AutoUpdateSettingsProto_default_instance_;
+class CameraEnabledProto;
+class CameraEnabledProtoDefaultTypeInternal;
+extern CameraEnabledProtoDefaultTypeInternal _CameraEnabledProto_default_instance_;
+class CastReceiverNameProto;
+class CastReceiverNameProtoDefaultTypeInternal;
+extern CastReceiverNameProtoDefaultTypeInternal _CastReceiverNameProto_default_instance_;
+class ChromeDeviceSettingsProto;
+class ChromeDeviceSettingsProtoDefaultTypeInternal;
+extern ChromeDeviceSettingsProtoDefaultTypeInternal _ChromeDeviceSettingsProto_default_instance_;
+class DataRoamingEnabledProto;
+class DataRoamingEnabledProtoDefaultTypeInternal;
+extern DataRoamingEnabledProtoDefaultTypeInternal _DataRoamingEnabledProto_default_instance_;
+class DeviceAdvancedBatteryChargeModeProto;
+class DeviceAdvancedBatteryChargeModeProtoDefaultTypeInternal;
+extern DeviceAdvancedBatteryChargeModeProtoDefaultTypeInternal _DeviceAdvancedBatteryChargeModeProto_default_instance_;
+class DeviceAllowedBluetoothServicesProto;
+class DeviceAllowedBluetoothServicesProtoDefaultTypeInternal;
+extern DeviceAllowedBluetoothServicesProtoDefaultTypeInternal _DeviceAllowedBluetoothServicesProto_default_instance_;
+class DeviceArcDataSnapshotHoursProto;
+class DeviceArcDataSnapshotHoursProtoDefaultTypeInternal;
+extern DeviceArcDataSnapshotHoursProtoDefaultTypeInternal _DeviceArcDataSnapshotHoursProto_default_instance_;
+class DeviceAuthDataCacheLifetimeProto;
+class DeviceAuthDataCacheLifetimeProtoDefaultTypeInternal;
+extern DeviceAuthDataCacheLifetimeProtoDefaultTypeInternal _DeviceAuthDataCacheLifetimeProto_default_instance_;
+class DeviceBatteryChargeModeProto;
+class DeviceBatteryChargeModeProtoDefaultTypeInternal;
+extern DeviceBatteryChargeModeProtoDefaultTypeInternal _DeviceBatteryChargeModeProto_default_instance_;
+class DeviceBootOnAcProto;
+class DeviceBootOnAcProtoDefaultTypeInternal;
+extern DeviceBootOnAcProtoDefaultTypeInternal _DeviceBootOnAcProto_default_instance_;
+class DeviceBorealisAllowedProto;
+class DeviceBorealisAllowedProtoDefaultTypeInternal;
+extern DeviceBorealisAllowedProtoDefaultTypeInternal _DeviceBorealisAllowedProto_default_instance_;
+class DeviceCrostiniArcAdbSideloadingAllowedProto;
+class DeviceCrostiniArcAdbSideloadingAllowedProtoDefaultTypeInternal;
+extern DeviceCrostiniArcAdbSideloadingAllowedProtoDefaultTypeInternal _DeviceCrostiniArcAdbSideloadingAllowedProto_default_instance_;
+class DeviceDebugPacketCaptureAllowedProto;
+class DeviceDebugPacketCaptureAllowedProtoDefaultTypeInternal;
+extern DeviceDebugPacketCaptureAllowedProtoDefaultTypeInternal _DeviceDebugPacketCaptureAllowedProto_default_instance_;
+class DeviceDisplayResolutionProto;
+class DeviceDisplayResolutionProtoDefaultTypeInternal;
+extern DeviceDisplayResolutionProtoDefaultTypeInternal _DeviceDisplayResolutionProto_default_instance_;
+class DeviceDockMacAddressSourceProto;
+class DeviceDockMacAddressSourceProtoDefaultTypeInternal;
+extern DeviceDockMacAddressSourceProtoDefaultTypeInternal _DeviceDockMacAddressSourceProto_default_instance_;
+class DeviceEcryptfsMigrationStrategyProto;
+class DeviceEcryptfsMigrationStrategyProtoDefaultTypeInternal;
+extern DeviceEcryptfsMigrationStrategyProtoDefaultTypeInternal _DeviceEcryptfsMigrationStrategyProto_default_instance_;
+class DeviceExternalPrintServersAllowlistProto;
+class DeviceExternalPrintServersAllowlistProtoDefaultTypeInternal;
+extern DeviceExternalPrintServersAllowlistProtoDefaultTypeInternal _DeviceExternalPrintServersAllowlistProto_default_instance_;
+class DeviceExternalPrintServersProto;
+class DeviceExternalPrintServersProtoDefaultTypeInternal;
+extern DeviceExternalPrintServersProtoDefaultTypeInternal _DeviceExternalPrintServersProto_default_instance_;
+class DeviceFamilyLinkAccountsAllowedProto;
+class DeviceFamilyLinkAccountsAllowedProtoDefaultTypeInternal;
+extern DeviceFamilyLinkAccountsAllowedProtoDefaultTypeInternal _DeviceFamilyLinkAccountsAllowedProto_default_instance_;
+class DeviceGpoCacheLifetimeProto;
+class DeviceGpoCacheLifetimeProtoDefaultTypeInternal;
+extern DeviceGpoCacheLifetimeProtoDefaultTypeInternal _DeviceGpoCacheLifetimeProto_default_instance_;
+class DeviceHeartbeatSettingsProto;
+class DeviceHeartbeatSettingsProtoDefaultTypeInternal;
+extern DeviceHeartbeatSettingsProtoDefaultTypeInternal _DeviceHeartbeatSettingsProto_default_instance_;
+class DeviceI18nShortcutsEnabledProto;
+class DeviceI18nShortcutsEnabledProtoDefaultTypeInternal;
+extern DeviceI18nShortcutsEnabledProtoDefaultTypeInternal _DeviceI18nShortcutsEnabledProto_default_instance_;
+class DeviceKerberosEncryptionTypesProto;
+class DeviceKerberosEncryptionTypesProtoDefaultTypeInternal;
+extern DeviceKerberosEncryptionTypesProtoDefaultTypeInternal _DeviceKerberosEncryptionTypesProto_default_instance_;
+class DeviceKeylockerForStorageEncryptionEnabledProto;
+class DeviceKeylockerForStorageEncryptionEnabledProtoDefaultTypeInternal;
+extern DeviceKeylockerForStorageEncryptionEnabledProtoDefaultTypeInternal _DeviceKeylockerForStorageEncryptionEnabledProto_default_instance_;
+class DeviceLocalAccountInfoProto;
+class DeviceLocalAccountInfoProtoDefaultTypeInternal;
+extern DeviceLocalAccountInfoProtoDefaultTypeInternal _DeviceLocalAccountInfoProto_default_instance_;
+class DeviceLocalAccountsProto;
+class DeviceLocalAccountsProtoDefaultTypeInternal;
+extern DeviceLocalAccountsProtoDefaultTypeInternal _DeviceLocalAccountsProto_default_instance_;
+class DeviceLogUploadSettingsProto;
+class DeviceLogUploadSettingsProtoDefaultTypeInternal;
+extern DeviceLogUploadSettingsProtoDefaultTypeInternal _DeviceLogUploadSettingsProto_default_instance_;
+class DeviceLoginScreenAutoSelectCertificateForUrls;
+class DeviceLoginScreenAutoSelectCertificateForUrlsDefaultTypeInternal;
+extern DeviceLoginScreenAutoSelectCertificateForUrlsDefaultTypeInternal _DeviceLoginScreenAutoSelectCertificateForUrls_default_instance_;
+class DeviceLoginScreenExtensionsProto;
+class DeviceLoginScreenExtensionsProtoDefaultTypeInternal;
+extern DeviceLoginScreenExtensionsProtoDefaultTypeInternal _DeviceLoginScreenExtensionsProto_default_instance_;
+class DeviceLoginScreenPrivacyScreenEnabledProto;
+class DeviceLoginScreenPrivacyScreenEnabledProtoDefaultTypeInternal;
+extern DeviceLoginScreenPrivacyScreenEnabledProtoDefaultTypeInternal _DeviceLoginScreenPrivacyScreenEnabledProto_default_instance_;
+class DeviceLoginScreenWebUILazyLoadingProto;
+class DeviceLoginScreenWebUILazyLoadingProtoDefaultTypeInternal;
+extern DeviceLoginScreenWebUILazyLoadingProtoDefaultTypeInternal _DeviceLoginScreenWebUILazyLoadingProto_default_instance_;
+class DeviceLoginScreenWebUsbAllowDevicesForUrlsProto;
+class DeviceLoginScreenWebUsbAllowDevicesForUrlsProtoDefaultTypeInternal;
+extern DeviceLoginScreenWebUsbAllowDevicesForUrlsProtoDefaultTypeInternal _DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_default_instance_;
+class DeviceMachinePasswordChangeRateProto;
+class DeviceMachinePasswordChangeRateProtoDefaultTypeInternal;
+extern DeviceMachinePasswordChangeRateProtoDefaultTypeInternal _DeviceMachinePasswordChangeRateProto_default_instance_;
+class DeviceNativePrintersAccessModeProto;
+class DeviceNativePrintersAccessModeProtoDefaultTypeInternal;
+extern DeviceNativePrintersAccessModeProtoDefaultTypeInternal _DeviceNativePrintersAccessModeProto_default_instance_;
+class DeviceNativePrintersBlacklistProto;
+class DeviceNativePrintersBlacklistProtoDefaultTypeInternal;
+extern DeviceNativePrintersBlacklistProtoDefaultTypeInternal _DeviceNativePrintersBlacklistProto_default_instance_;
+class DeviceNativePrintersProto;
+class DeviceNativePrintersProtoDefaultTypeInternal;
+extern DeviceNativePrintersProtoDefaultTypeInternal _DeviceNativePrintersProto_default_instance_;
+class DeviceNativePrintersWhitelistProto;
+class DeviceNativePrintersWhitelistProtoDefaultTypeInternal;
+extern DeviceNativePrintersWhitelistProtoDefaultTypeInternal _DeviceNativePrintersWhitelistProto_default_instance_;
+class DeviceOffHoursProto;
+class DeviceOffHoursProtoDefaultTypeInternal;
+extern DeviceOffHoursProtoDefaultTypeInternal _DeviceOffHoursProto_default_instance_;
+class DeviceOpenNetworkConfigurationProto;
+class DeviceOpenNetworkConfigurationProtoDefaultTypeInternal;
+extern DeviceOpenNetworkConfigurationProtoDefaultTypeInternal _DeviceOpenNetworkConfigurationProto_default_instance_;
+class DevicePciPeripheralDataAccessEnabledProto;
+class DevicePciPeripheralDataAccessEnabledProtoDefaultTypeInternal;
+extern DevicePciPeripheralDataAccessEnabledProtoDefaultTypeInternal _DevicePciPeripheralDataAccessEnabledProto_default_instance_;
+class DevicePciPeripheralDataAccessEnabledProtoV2;
+class DevicePciPeripheralDataAccessEnabledProtoV2DefaultTypeInternal;
+extern DevicePciPeripheralDataAccessEnabledProtoV2DefaultTypeInternal _DevicePciPeripheralDataAccessEnabledProtoV2_default_instance_;
+class DevicePolicyRefreshRateProto;
+class DevicePolicyRefreshRateProtoDefaultTypeInternal;
+extern DevicePolicyRefreshRateProtoDefaultTypeInternal _DevicePolicyRefreshRateProto_default_instance_;
+class DevicePowerPeakShiftProto;
+class DevicePowerPeakShiftProtoDefaultTypeInternal;
+extern DevicePowerPeakShiftProtoDefaultTypeInternal _DevicePowerPeakShiftProto_default_instance_;
+class DevicePowerwashAllowedProto;
+class DevicePowerwashAllowedProtoDefaultTypeInternal;
+extern DevicePowerwashAllowedProtoDefaultTypeInternal _DevicePowerwashAllowedProto_default_instance_;
+class DevicePrintersAccessModeProto;
+class DevicePrintersAccessModeProtoDefaultTypeInternal;
+extern DevicePrintersAccessModeProtoDefaultTypeInternal _DevicePrintersAccessModeProto_default_instance_;
+class DevicePrintersAllowlistProto;
+class DevicePrintersAllowlistProtoDefaultTypeInternal;
+extern DevicePrintersAllowlistProtoDefaultTypeInternal _DevicePrintersAllowlistProto_default_instance_;
+class DevicePrintersBlocklistProto;
+class DevicePrintersBlocklistProtoDefaultTypeInternal;
+extern DevicePrintersBlocklistProtoDefaultTypeInternal _DevicePrintersBlocklistProto_default_instance_;
+class DevicePrintersProto;
+class DevicePrintersProtoDefaultTypeInternal;
+extern DevicePrintersProtoDefaultTypeInternal _DevicePrintersProto_default_instance_;
+class DeviceQuirksDownloadEnabledProto;
+class DeviceQuirksDownloadEnabledProtoDefaultTypeInternal;
+extern DeviceQuirksDownloadEnabledProtoDefaultTypeInternal _DeviceQuirksDownloadEnabledProto_default_instance_;
+class DeviceRebootOnUserSignoutProto;
+class DeviceRebootOnUserSignoutProtoDefaultTypeInternal;
+extern DeviceRebootOnUserSignoutProtoDefaultTypeInternal _DeviceRebootOnUserSignoutProto_default_instance_;
+class DeviceReportingProto;
+class DeviceReportingProtoDefaultTypeInternal;
+extern DeviceReportingProtoDefaultTypeInternal _DeviceReportingProto_default_instance_;
+class DeviceRestrictedManagedGuestSessionEnabledProto;
+class DeviceRestrictedManagedGuestSessionEnabledProtoDefaultTypeInternal;
+extern DeviceRestrictedManagedGuestSessionEnabledProtoDefaultTypeInternal _DeviceRestrictedManagedGuestSessionEnabledProto_default_instance_;
+class DeviceScheduledRebootProto;
+class DeviceScheduledRebootProtoDefaultTypeInternal;
+extern DeviceScheduledRebootProtoDefaultTypeInternal _DeviceScheduledRebootProto_default_instance_;
+class DeviceScheduledUpdateCheckProto;
+class DeviceScheduledUpdateCheckProtoDefaultTypeInternal;
+extern DeviceScheduledUpdateCheckProtoDefaultTypeInternal _DeviceScheduledUpdateCheckProto_default_instance_;
+class DeviceSecondFactorAuthenticationProto;
+class DeviceSecondFactorAuthenticationProtoDefaultTypeInternal;
+extern DeviceSecondFactorAuthenticationProtoDefaultTypeInternal _DeviceSecondFactorAuthenticationProto_default_instance_;
+class DeviceShowLowDiskSpaceNotificationProto;
+class DeviceShowLowDiskSpaceNotificationProtoDefaultTypeInternal;
+extern DeviceShowLowDiskSpaceNotificationProtoDefaultTypeInternal _DeviceShowLowDiskSpaceNotificationProto_default_instance_;
+class DeviceSystemWideTracingEnabledProto;
+class DeviceSystemWideTracingEnabledProtoDefaultTypeInternal;
+extern DeviceSystemWideTracingEnabledProtoDefaultTypeInternal _DeviceSystemWideTracingEnabledProto_default_instance_;
+class DeviceUnaffiliatedCrostiniAllowedProto;
+class DeviceUnaffiliatedCrostiniAllowedProtoDefaultTypeInternal;
+extern DeviceUnaffiliatedCrostiniAllowedProtoDefaultTypeInternal _DeviceUnaffiliatedCrostiniAllowedProto_default_instance_;
+class DeviceUsbPowerShareProto;
+class DeviceUsbPowerShareProtoDefaultTypeInternal;
+extern DeviceUsbPowerShareProtoDefaultTypeInternal _DeviceUsbPowerShareProto_default_instance_;
+class DeviceUserPolicyLoopbackProcessingModeProto;
+class DeviceUserPolicyLoopbackProcessingModeProtoDefaultTypeInternal;
+extern DeviceUserPolicyLoopbackProcessingModeProtoDefaultTypeInternal _DeviceUserPolicyLoopbackProcessingModeProto_default_instance_;
+class DeviceWallpaperImageProto;
+class DeviceWallpaperImageProtoDefaultTypeInternal;
+extern DeviceWallpaperImageProtoDefaultTypeInternal _DeviceWallpaperImageProto_default_instance_;
+class DeviceWiFiAllowedProto;
+class DeviceWiFiAllowedProtoDefaultTypeInternal;
+extern DeviceWiFiAllowedProtoDefaultTypeInternal _DeviceWiFiAllowedProto_default_instance_;
+class DeviceWiFiFastTransitionEnabledProto;
+class DeviceWiFiFastTransitionEnabledProtoDefaultTypeInternal;
+extern DeviceWiFiFastTransitionEnabledProtoDefaultTypeInternal _DeviceWiFiFastTransitionEnabledProto_default_instance_;
+class DeviceWilcoDtcAllowedProto;
+class DeviceWilcoDtcAllowedProtoDefaultTypeInternal;
+extern DeviceWilcoDtcAllowedProtoDefaultTypeInternal _DeviceWilcoDtcAllowedProto_default_instance_;
+class DeviceWilcoDtcConfigurationProto;
+class DeviceWilcoDtcConfigurationProtoDefaultTypeInternal;
+extern DeviceWilcoDtcConfigurationProtoDefaultTypeInternal _DeviceWilcoDtcConfigurationProto_default_instance_;
+class DisplayRotationDefaultProto;
+class DisplayRotationDefaultProtoDefaultTypeInternal;
+extern DisplayRotationDefaultProtoDefaultTypeInternal _DisplayRotationDefaultProto_default_instance_;
+class EncryptedReportingPipelineConfigurationProto;
+class EncryptedReportingPipelineConfigurationProtoDefaultTypeInternal;
+extern EncryptedReportingPipelineConfigurationProtoDefaultTypeInternal _EncryptedReportingPipelineConfigurationProto_default_instance_;
+class EphemeralUsersEnabledProto;
+class EphemeralUsersEnabledProtoDefaultTypeInternal;
+extern EphemeralUsersEnabledProtoDefaultTypeInternal _EphemeralUsersEnabledProto_default_instance_;
+class ExtensionCacheSizeProto;
+class ExtensionCacheSizeProtoDefaultTypeInternal;
+extern ExtensionCacheSizeProtoDefaultTypeInternal _ExtensionCacheSizeProto_default_instance_;
+class FeatureFlagsProto;
+class FeatureFlagsProtoDefaultTypeInternal;
+extern FeatureFlagsProtoDefaultTypeInternal _FeatureFlagsProto_default_instance_;
+class GuestModeEnabledProto;
+class GuestModeEnabledProtoDefaultTypeInternal;
+extern GuestModeEnabledProtoDefaultTypeInternal _GuestModeEnabledProto_default_instance_;
+class HostnameUserConfigurableProto;
+class HostnameUserConfigurableProtoDefaultTypeInternal;
+extern HostnameUserConfigurableProtoDefaultTypeInternal _HostnameUserConfigurableProto_default_instance_;
+class KioskAppInfoProto;
+class KioskAppInfoProtoDefaultTypeInternal;
+extern KioskAppInfoProtoDefaultTypeInternal _KioskAppInfoProto_default_instance_;
+class LoginAuthenticationBehaviorProto;
+class LoginAuthenticationBehaviorProtoDefaultTypeInternal;
+extern LoginAuthenticationBehaviorProtoDefaultTypeInternal _LoginAuthenticationBehaviorProto_default_instance_;
+class LoginScreenDomainAutoCompleteProto;
+class LoginScreenDomainAutoCompleteProtoDefaultTypeInternal;
+extern LoginScreenDomainAutoCompleteProtoDefaultTypeInternal _LoginScreenDomainAutoCompleteProto_default_instance_;
+class LoginScreenInputMethodsProto;
+class LoginScreenInputMethodsProtoDefaultTypeInternal;
+extern LoginScreenInputMethodsProtoDefaultTypeInternal _LoginScreenInputMethodsProto_default_instance_;
+class LoginScreenLocalesProto;
+class LoginScreenLocalesProtoDefaultTypeInternal;
+extern LoginScreenLocalesProtoDefaultTypeInternal _LoginScreenLocalesProto_default_instance_;
+class LoginScreenPowerManagementProto;
+class LoginScreenPowerManagementProtoDefaultTypeInternal;
+extern LoginScreenPowerManagementProtoDefaultTypeInternal _LoginScreenPowerManagementProto_default_instance_;
+class LoginVideoCaptureAllowedUrlsProto;
+class LoginVideoCaptureAllowedUrlsProtoDefaultTypeInternal;
+extern LoginVideoCaptureAllowedUrlsProtoDefaultTypeInternal _LoginVideoCaptureAllowedUrlsProto_default_instance_;
+class ManagedGuestSessionPrivacyWarningsProto;
+class ManagedGuestSessionPrivacyWarningsProtoDefaultTypeInternal;
+extern ManagedGuestSessionPrivacyWarningsProtoDefaultTypeInternal _ManagedGuestSessionPrivacyWarningsProto_default_instance_;
+class MetricsEnabledProto;
+class MetricsEnabledProtoDefaultTypeInternal;
+extern MetricsEnabledProtoDefaultTypeInternal _MetricsEnabledProto_default_instance_;
+class NetworkHostnameProto;
+class NetworkHostnameProtoDefaultTypeInternal;
+extern NetworkHostnameProtoDefaultTypeInternal _NetworkHostnameProto_default_instance_;
+class NetworkThrottlingEnabledProto;
+class NetworkThrottlingEnabledProtoDefaultTypeInternal;
+extern NetworkThrottlingEnabledProtoDefaultTypeInternal _NetworkThrottlingEnabledProto_default_instance_;
+class OBSOLETE_AppPackEntryProto;
+class OBSOLETE_AppPackEntryProtoDefaultTypeInternal;
+extern OBSOLETE_AppPackEntryProtoDefaultTypeInternal _OBSOLETE_AppPackEntryProto_default_instance_;
+class OBSOLETE_AppPackProto;
+class OBSOLETE_AppPackProtoDefaultTypeInternal;
+extern OBSOLETE_AppPackProtoDefaultTypeInternal _OBSOLETE_AppPackProto_default_instance_;
+class OBSOLETE_DeviceLoginScreenIsolateOriginsProto;
+class OBSOLETE_DeviceLoginScreenIsolateOriginsProtoDefaultTypeInternal;
+extern OBSOLETE_DeviceLoginScreenIsolateOriginsProtoDefaultTypeInternal _OBSOLETE_DeviceLoginScreenIsolateOriginsProto_default_instance_;
+class OBSOLETE_DeviceLoginScreenSitePerProcessProto;
+class OBSOLETE_DeviceLoginScreenSitePerProcessProtoDefaultTypeInternal;
+extern OBSOLETE_DeviceLoginScreenSitePerProcessProtoDefaultTypeInternal _OBSOLETE_DeviceLoginScreenSitePerProcessProto_default_instance_;
+class OBSOLETE_DeviceProxySettingsProto;
+class OBSOLETE_DeviceProxySettingsProtoDefaultTypeInternal;
+extern OBSOLETE_DeviceProxySettingsProtoDefaultTypeInternal _OBSOLETE_DeviceProxySettingsProto_default_instance_;
+class OBSOLETE_ForcedLogoutTimeoutsProto;
+class OBSOLETE_ForcedLogoutTimeoutsProtoDefaultTypeInternal;
+extern OBSOLETE_ForcedLogoutTimeoutsProtoDefaultTypeInternal _OBSOLETE_ForcedLogoutTimeoutsProto_default_instance_;
+class OBSOLETE_MinimumRequiredVersionProto;
+class OBSOLETE_MinimumRequiredVersionProtoDefaultTypeInternal;
+extern OBSOLETE_MinimumRequiredVersionProtoDefaultTypeInternal _OBSOLETE_MinimumRequiredVersionProto_default_instance_;
+class OBSOLETE_PinnedAppsProto;
+class OBSOLETE_PinnedAppsProtoDefaultTypeInternal;
+extern OBSOLETE_PinnedAppsProtoDefaultTypeInternal _OBSOLETE_PinnedAppsProto_default_instance_;
+class OBSOLETE_ScreenSaverProto;
+class OBSOLETE_ScreenSaverProtoDefaultTypeInternal;
+extern OBSOLETE_ScreenSaverProtoDefaultTypeInternal _OBSOLETE_ScreenSaverProto_default_instance_;
+class OBSOLETE_StartUpUrlsProto;
+class OBSOLETE_StartUpUrlsProtoDefaultTypeInternal;
+extern OBSOLETE_StartUpUrlsProtoDefaultTypeInternal _OBSOLETE_StartUpUrlsProto_default_instance_;
+class OBSOLETE_SupervisedUsersSettingsProto;
+class OBSOLETE_SupervisedUsersSettingsProtoDefaultTypeInternal;
+extern OBSOLETE_SupervisedUsersSettingsProtoDefaultTypeInternal _OBSOLETE_SupervisedUsersSettingsProto_default_instance_;
+class PluginVmAllowedProto;
+class PluginVmAllowedProtoDefaultTypeInternal;
+extern PluginVmAllowedProtoDefaultTypeInternal _PluginVmAllowedProto_default_instance_;
+class PluginVmLicenseKeyProto;
+class PluginVmLicenseKeyProtoDefaultTypeInternal;
+extern PluginVmLicenseKeyProtoDefaultTypeInternal _PluginVmLicenseKeyProto_default_instance_;
+class RebootOnShutdownProto;
+class RebootOnShutdownProtoDefaultTypeInternal;
+extern RebootOnShutdownProtoDefaultTypeInternal _RebootOnShutdownProto_default_instance_;
+class ReleaseChannelProto;
+class ReleaseChannelProtoDefaultTypeInternal;
+extern ReleaseChannelProtoDefaultTypeInternal _ReleaseChannelProto_default_instance_;
+class RequiredClientCertificateForDeviceProto;
+class RequiredClientCertificateForDeviceProtoDefaultTypeInternal;
+extern RequiredClientCertificateForDeviceProtoDefaultTypeInternal _RequiredClientCertificateForDeviceProto_default_instance_;
+class RevenDeviceHWDataUsageEnabledProto;
+class RevenDeviceHWDataUsageEnabledProtoDefaultTypeInternal;
+extern RevenDeviceHWDataUsageEnabledProtoDefaultTypeInternal _RevenDeviceHWDataUsageEnabledProto_default_instance_;
+class SAMLSettingsProto;
+class SAMLSettingsProtoDefaultTypeInternal;
+extern SAMLSettingsProtoDefaultTypeInternal _SAMLSettingsProto_default_instance_;
+class SamlLoginAuthenticationTypeProto;
+class SamlLoginAuthenticationTypeProtoDefaultTypeInternal;
+extern SamlLoginAuthenticationTypeProtoDefaultTypeInternal _SamlLoginAuthenticationTypeProto_default_instance_;
+class ShowUserNamesOnSigninProto;
+class ShowUserNamesOnSigninProtoDefaultTypeInternal;
+extern ShowUserNamesOnSigninProtoDefaultTypeInternal _ShowUserNamesOnSigninProto_default_instance_;
+class SystemProxySettingsProto;
+class SystemProxySettingsProtoDefaultTypeInternal;
+extern SystemProxySettingsProtoDefaultTypeInternal _SystemProxySettingsProto_default_instance_;
+class SystemSettingsProto;
+class SystemSettingsProtoDefaultTypeInternal;
+extern SystemSettingsProtoDefaultTypeInternal _SystemSettingsProto_default_instance_;
+class SystemTimezoneProto;
+class SystemTimezoneProtoDefaultTypeInternal;
+extern SystemTimezoneProtoDefaultTypeInternal _SystemTimezoneProto_default_instance_;
+class SystemUse24HourClockProto;
+class SystemUse24HourClockProtoDefaultTypeInternal;
+extern SystemUse24HourClockProtoDefaultTypeInternal _SystemUse24HourClockProto_default_instance_;
+class TPMFirmwareUpdateSettingsProto;
+class TPMFirmwareUpdateSettingsProtoDefaultTypeInternal;
+extern TPMFirmwareUpdateSettingsProtoDefaultTypeInternal _TPMFirmwareUpdateSettingsProto_default_instance_;
+class UnaffiliatedArcAllowedProto;
+class UnaffiliatedArcAllowedProtoDefaultTypeInternal;
+extern UnaffiliatedArcAllowedProtoDefaultTypeInternal _UnaffiliatedArcAllowedProto_default_instance_;
+class UptimeLimitProto;
+class UptimeLimitProtoDefaultTypeInternal;
+extern UptimeLimitProtoDefaultTypeInternal _UptimeLimitProto_default_instance_;
+class UsbDetachableAllowlistProto;
+class UsbDetachableAllowlistProtoDefaultTypeInternal;
+extern UsbDetachableAllowlistProtoDefaultTypeInternal _UsbDetachableAllowlistProto_default_instance_;
+class UsbDetachableWhitelistProto;
+class UsbDetachableWhitelistProtoDefaultTypeInternal;
+extern UsbDetachableWhitelistProtoDefaultTypeInternal _UsbDetachableWhitelistProto_default_instance_;
+class UsbDeviceIdInclusiveProto;
+class UsbDeviceIdInclusiveProtoDefaultTypeInternal;
+extern UsbDeviceIdInclusiveProtoDefaultTypeInternal _UsbDeviceIdInclusiveProto_default_instance_;
+class UsbDeviceIdProto;
+class UsbDeviceIdProtoDefaultTypeInternal;
+extern UsbDeviceIdProtoDefaultTypeInternal _UsbDeviceIdProto_default_instance_;
+class UserAllowlistProto;
+class UserAllowlistProtoDefaultTypeInternal;
+extern UserAllowlistProtoDefaultTypeInternal _UserAllowlistProto_default_instance_;
+class UserWhitelistProto;
+class UserWhitelistProtoDefaultTypeInternal;
+extern UserWhitelistProtoDefaultTypeInternal _UserWhitelistProto_default_instance_;
+class VariationsParameterProto;
+class VariationsParameterProtoDefaultTypeInternal;
+extern VariationsParameterProtoDefaultTypeInternal _VariationsParameterProto_default_instance_;
+class VirtualMachinesAllowedProto;
+class VirtualMachinesAllowedProtoDefaultTypeInternal;
+extern VirtualMachinesAllowedProtoDefaultTypeInternal _VirtualMachinesAllowedProto_default_instance_;
+class WebKioskAppInfoProto;
+class WebKioskAppInfoProtoDefaultTypeInternal;
+extern WebKioskAppInfoProtoDefaultTypeInternal _WebKioskAppInfoProto_default_instance_;
+class WeeklyTimeIntervalProto;
+class WeeklyTimeIntervalProtoDefaultTypeInternal;
+extern WeeklyTimeIntervalProtoDefaultTypeInternal _WeeklyTimeIntervalProto_default_instance_;
+class WeeklyTimeProto;
+class WeeklyTimeProtoDefaultTypeInternal;
+extern WeeklyTimeProtoDefaultTypeInternal _WeeklyTimeProto_default_instance_;
+}  // namespace enterprise_management
+PROTOBUF_NAMESPACE_OPEN
+template<> ::enterprise_management::AccessibilitySettingsProto* Arena::CreateMaybeMessage<::enterprise_management::AccessibilitySettingsProto>(Arena*);
+template<> ::enterprise_management::AllowBluetoothProto* Arena::CreateMaybeMessage<::enterprise_management::AllowBluetoothProto>(Arena*);
+template<> ::enterprise_management::AllowKioskAppControlChromeVersionProto* Arena::CreateMaybeMessage<::enterprise_management::AllowKioskAppControlChromeVersionProto>(Arena*);
+template<> ::enterprise_management::AllowNewUsersProto* Arena::CreateMaybeMessage<::enterprise_management::AllowNewUsersProto>(Arena*);
+template<> ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* Arena::CreateMaybeMessage<::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto>(Arena*);
+template<> ::enterprise_management::AndroidKioskAppInfoProto* Arena::CreateMaybeMessage<::enterprise_management::AndroidKioskAppInfoProto>(Arena*);
+template<> ::enterprise_management::AttestationSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::AttestationSettingsProto>(Arena*);
+template<> ::enterprise_management::AutoCleanupSettigsProto* Arena::CreateMaybeMessage<::enterprise_management::AutoCleanupSettigsProto>(Arena*);
+template<> ::enterprise_management::AutoUpdateSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::AutoUpdateSettingsProto>(Arena*);
+template<> ::enterprise_management::CameraEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::CameraEnabledProto>(Arena*);
+template<> ::enterprise_management::CastReceiverNameProto* Arena::CreateMaybeMessage<::enterprise_management::CastReceiverNameProto>(Arena*);
+template<> ::enterprise_management::ChromeDeviceSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::ChromeDeviceSettingsProto>(Arena*);
+template<> ::enterprise_management::DataRoamingEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DataRoamingEnabledProto>(Arena*);
+template<> ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceAdvancedBatteryChargeModeProto>(Arena*);
+template<> ::enterprise_management::DeviceAllowedBluetoothServicesProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceAllowedBluetoothServicesProto>(Arena*);
+template<> ::enterprise_management::DeviceArcDataSnapshotHoursProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceArcDataSnapshotHoursProto>(Arena*);
+template<> ::enterprise_management::DeviceAuthDataCacheLifetimeProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceAuthDataCacheLifetimeProto>(Arena*);
+template<> ::enterprise_management::DeviceBatteryChargeModeProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceBatteryChargeModeProto>(Arena*);
+template<> ::enterprise_management::DeviceBootOnAcProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceBootOnAcProto>(Arena*);
+template<> ::enterprise_management::DeviceBorealisAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceBorealisAllowedProto>(Arena*);
+template<> ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto>(Arena*);
+template<> ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceDebugPacketCaptureAllowedProto>(Arena*);
+template<> ::enterprise_management::DeviceDisplayResolutionProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceDisplayResolutionProto>(Arena*);
+template<> ::enterprise_management::DeviceDockMacAddressSourceProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceDockMacAddressSourceProto>(Arena*);
+template<> ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceEcryptfsMigrationStrategyProto>(Arena*);
+template<> ::enterprise_management::DeviceExternalPrintServersAllowlistProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceExternalPrintServersAllowlistProto>(Arena*);
+template<> ::enterprise_management::DeviceExternalPrintServersProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceExternalPrintServersProto>(Arena*);
+template<> ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceFamilyLinkAccountsAllowedProto>(Arena*);
+template<> ::enterprise_management::DeviceGpoCacheLifetimeProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceGpoCacheLifetimeProto>(Arena*);
+template<> ::enterprise_management::DeviceHeartbeatSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceHeartbeatSettingsProto>(Arena*);
+template<> ::enterprise_management::DeviceI18nShortcutsEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceI18nShortcutsEnabledProto>(Arena*);
+template<> ::enterprise_management::DeviceKerberosEncryptionTypesProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceKerberosEncryptionTypesProto>(Arena*);
+template<> ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto>(Arena*);
+template<> ::enterprise_management::DeviceLocalAccountInfoProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceLocalAccountInfoProto>(Arena*);
+template<> ::enterprise_management::DeviceLocalAccountsProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceLocalAccountsProto>(Arena*);
+template<> ::enterprise_management::DeviceLogUploadSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceLogUploadSettingsProto>(Arena*);
+template<> ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* Arena::CreateMaybeMessage<::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls>(Arena*);
+template<> ::enterprise_management::DeviceLoginScreenExtensionsProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceLoginScreenExtensionsProto>(Arena*);
+template<> ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto>(Arena*);
+template<> ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto>(Arena*);
+template<> ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto>(Arena*);
+template<> ::enterprise_management::DeviceMachinePasswordChangeRateProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceMachinePasswordChangeRateProto>(Arena*);
+template<> ::enterprise_management::DeviceNativePrintersAccessModeProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceNativePrintersAccessModeProto>(Arena*);
+template<> ::enterprise_management::DeviceNativePrintersBlacklistProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceNativePrintersBlacklistProto>(Arena*);
+template<> ::enterprise_management::DeviceNativePrintersProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceNativePrintersProto>(Arena*);
+template<> ::enterprise_management::DeviceNativePrintersWhitelistProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceNativePrintersWhitelistProto>(Arena*);
+template<> ::enterprise_management::DeviceOffHoursProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceOffHoursProto>(Arena*);
+template<> ::enterprise_management::DeviceOpenNetworkConfigurationProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceOpenNetworkConfigurationProto>(Arena*);
+template<> ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DevicePciPeripheralDataAccessEnabledProto>(Arena*);
+template<> ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* Arena::CreateMaybeMessage<::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2>(Arena*);
+template<> ::enterprise_management::DevicePolicyRefreshRateProto* Arena::CreateMaybeMessage<::enterprise_management::DevicePolicyRefreshRateProto>(Arena*);
+template<> ::enterprise_management::DevicePowerPeakShiftProto* Arena::CreateMaybeMessage<::enterprise_management::DevicePowerPeakShiftProto>(Arena*);
+template<> ::enterprise_management::DevicePowerwashAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::DevicePowerwashAllowedProto>(Arena*);
+template<> ::enterprise_management::DevicePrintersAccessModeProto* Arena::CreateMaybeMessage<::enterprise_management::DevicePrintersAccessModeProto>(Arena*);
+template<> ::enterprise_management::DevicePrintersAllowlistProto* Arena::CreateMaybeMessage<::enterprise_management::DevicePrintersAllowlistProto>(Arena*);
+template<> ::enterprise_management::DevicePrintersBlocklistProto* Arena::CreateMaybeMessage<::enterprise_management::DevicePrintersBlocklistProto>(Arena*);
+template<> ::enterprise_management::DevicePrintersProto* Arena::CreateMaybeMessage<::enterprise_management::DevicePrintersProto>(Arena*);
+template<> ::enterprise_management::DeviceQuirksDownloadEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceQuirksDownloadEnabledProto>(Arena*);
+template<> ::enterprise_management::DeviceRebootOnUserSignoutProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceRebootOnUserSignoutProto>(Arena*);
+template<> ::enterprise_management::DeviceReportingProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceReportingProto>(Arena*);
+template<> ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto>(Arena*);
+template<> ::enterprise_management::DeviceScheduledRebootProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceScheduledRebootProto>(Arena*);
+template<> ::enterprise_management::DeviceScheduledUpdateCheckProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceScheduledUpdateCheckProto>(Arena*);
+template<> ::enterprise_management::DeviceSecondFactorAuthenticationProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceSecondFactorAuthenticationProto>(Arena*);
+template<> ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceShowLowDiskSpaceNotificationProto>(Arena*);
+template<> ::enterprise_management::DeviceSystemWideTracingEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceSystemWideTracingEnabledProto>(Arena*);
+template<> ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto>(Arena*);
+template<> ::enterprise_management::DeviceUsbPowerShareProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceUsbPowerShareProto>(Arena*);
+template<> ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto>(Arena*);
+template<> ::enterprise_management::DeviceWallpaperImageProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceWallpaperImageProto>(Arena*);
+template<> ::enterprise_management::DeviceWiFiAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceWiFiAllowedProto>(Arena*);
+template<> ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceWiFiFastTransitionEnabledProto>(Arena*);
+template<> ::enterprise_management::DeviceWilcoDtcAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceWilcoDtcAllowedProto>(Arena*);
+template<> ::enterprise_management::DeviceWilcoDtcConfigurationProto* Arena::CreateMaybeMessage<::enterprise_management::DeviceWilcoDtcConfigurationProto>(Arena*);
+template<> ::enterprise_management::DisplayRotationDefaultProto* Arena::CreateMaybeMessage<::enterprise_management::DisplayRotationDefaultProto>(Arena*);
+template<> ::enterprise_management::EncryptedReportingPipelineConfigurationProto* Arena::CreateMaybeMessage<::enterprise_management::EncryptedReportingPipelineConfigurationProto>(Arena*);
+template<> ::enterprise_management::EphemeralUsersEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::EphemeralUsersEnabledProto>(Arena*);
+template<> ::enterprise_management::ExtensionCacheSizeProto* Arena::CreateMaybeMessage<::enterprise_management::ExtensionCacheSizeProto>(Arena*);
+template<> ::enterprise_management::FeatureFlagsProto* Arena::CreateMaybeMessage<::enterprise_management::FeatureFlagsProto>(Arena*);
+template<> ::enterprise_management::GuestModeEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::GuestModeEnabledProto>(Arena*);
+template<> ::enterprise_management::HostnameUserConfigurableProto* Arena::CreateMaybeMessage<::enterprise_management::HostnameUserConfigurableProto>(Arena*);
+template<> ::enterprise_management::KioskAppInfoProto* Arena::CreateMaybeMessage<::enterprise_management::KioskAppInfoProto>(Arena*);
+template<> ::enterprise_management::LoginAuthenticationBehaviorProto* Arena::CreateMaybeMessage<::enterprise_management::LoginAuthenticationBehaviorProto>(Arena*);
+template<> ::enterprise_management::LoginScreenDomainAutoCompleteProto* Arena::CreateMaybeMessage<::enterprise_management::LoginScreenDomainAutoCompleteProto>(Arena*);
+template<> ::enterprise_management::LoginScreenInputMethodsProto* Arena::CreateMaybeMessage<::enterprise_management::LoginScreenInputMethodsProto>(Arena*);
+template<> ::enterprise_management::LoginScreenLocalesProto* Arena::CreateMaybeMessage<::enterprise_management::LoginScreenLocalesProto>(Arena*);
+template<> ::enterprise_management::LoginScreenPowerManagementProto* Arena::CreateMaybeMessage<::enterprise_management::LoginScreenPowerManagementProto>(Arena*);
+template<> ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* Arena::CreateMaybeMessage<::enterprise_management::LoginVideoCaptureAllowedUrlsProto>(Arena*);
+template<> ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* Arena::CreateMaybeMessage<::enterprise_management::ManagedGuestSessionPrivacyWarningsProto>(Arena*);
+template<> ::enterprise_management::MetricsEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::MetricsEnabledProto>(Arena*);
+template<> ::enterprise_management::NetworkHostnameProto* Arena::CreateMaybeMessage<::enterprise_management::NetworkHostnameProto>(Arena*);
+template<> ::enterprise_management::NetworkThrottlingEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::NetworkThrottlingEnabledProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_AppPackEntryProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_AppPackEntryProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_AppPackProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_AppPackProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_DeviceProxySettingsProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_MinimumRequiredVersionProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_PinnedAppsProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_PinnedAppsProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_ScreenSaverProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_ScreenSaverProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_StartUpUrlsProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_StartUpUrlsProto>(Arena*);
+template<> ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto>(Arena*);
+template<> ::enterprise_management::PluginVmAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::PluginVmAllowedProto>(Arena*);
+template<> ::enterprise_management::PluginVmLicenseKeyProto* Arena::CreateMaybeMessage<::enterprise_management::PluginVmLicenseKeyProto>(Arena*);
+template<> ::enterprise_management::RebootOnShutdownProto* Arena::CreateMaybeMessage<::enterprise_management::RebootOnShutdownProto>(Arena*);
+template<> ::enterprise_management::ReleaseChannelProto* Arena::CreateMaybeMessage<::enterprise_management::ReleaseChannelProto>(Arena*);
+template<> ::enterprise_management::RequiredClientCertificateForDeviceProto* Arena::CreateMaybeMessage<::enterprise_management::RequiredClientCertificateForDeviceProto>(Arena*);
+template<> ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* Arena::CreateMaybeMessage<::enterprise_management::RevenDeviceHWDataUsageEnabledProto>(Arena*);
+template<> ::enterprise_management::SAMLSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::SAMLSettingsProto>(Arena*);
+template<> ::enterprise_management::SamlLoginAuthenticationTypeProto* Arena::CreateMaybeMessage<::enterprise_management::SamlLoginAuthenticationTypeProto>(Arena*);
+template<> ::enterprise_management::ShowUserNamesOnSigninProto* Arena::CreateMaybeMessage<::enterprise_management::ShowUserNamesOnSigninProto>(Arena*);
+template<> ::enterprise_management::SystemProxySettingsProto* Arena::CreateMaybeMessage<::enterprise_management::SystemProxySettingsProto>(Arena*);
+template<> ::enterprise_management::SystemSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::SystemSettingsProto>(Arena*);
+template<> ::enterprise_management::SystemTimezoneProto* Arena::CreateMaybeMessage<::enterprise_management::SystemTimezoneProto>(Arena*);
+template<> ::enterprise_management::SystemUse24HourClockProto* Arena::CreateMaybeMessage<::enterprise_management::SystemUse24HourClockProto>(Arena*);
+template<> ::enterprise_management::TPMFirmwareUpdateSettingsProto* Arena::CreateMaybeMessage<::enterprise_management::TPMFirmwareUpdateSettingsProto>(Arena*);
+template<> ::enterprise_management::UnaffiliatedArcAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::UnaffiliatedArcAllowedProto>(Arena*);
+template<> ::enterprise_management::UptimeLimitProto* Arena::CreateMaybeMessage<::enterprise_management::UptimeLimitProto>(Arena*);
+template<> ::enterprise_management::UsbDetachableAllowlistProto* Arena::CreateMaybeMessage<::enterprise_management::UsbDetachableAllowlistProto>(Arena*);
+template<> ::enterprise_management::UsbDetachableWhitelistProto* Arena::CreateMaybeMessage<::enterprise_management::UsbDetachableWhitelistProto>(Arena*);
+template<> ::enterprise_management::UsbDeviceIdInclusiveProto* Arena::CreateMaybeMessage<::enterprise_management::UsbDeviceIdInclusiveProto>(Arena*);
+template<> ::enterprise_management::UsbDeviceIdProto* Arena::CreateMaybeMessage<::enterprise_management::UsbDeviceIdProto>(Arena*);
+template<> ::enterprise_management::UserAllowlistProto* Arena::CreateMaybeMessage<::enterprise_management::UserAllowlistProto>(Arena*);
+template<> ::enterprise_management::UserWhitelistProto* Arena::CreateMaybeMessage<::enterprise_management::UserWhitelistProto>(Arena*);
+template<> ::enterprise_management::VariationsParameterProto* Arena::CreateMaybeMessage<::enterprise_management::VariationsParameterProto>(Arena*);
+template<> ::enterprise_management::VirtualMachinesAllowedProto* Arena::CreateMaybeMessage<::enterprise_management::VirtualMachinesAllowedProto>(Arena*);
+template<> ::enterprise_management::WebKioskAppInfoProto* Arena::CreateMaybeMessage<::enterprise_management::WebKioskAppInfoProto>(Arena*);
+template<> ::enterprise_management::WeeklyTimeIntervalProto* Arena::CreateMaybeMessage<::enterprise_management::WeeklyTimeIntervalProto>(Arena*);
+template<> ::enterprise_management::WeeklyTimeProto* Arena::CreateMaybeMessage<::enterprise_management::WeeklyTimeProto>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace enterprise_management {
+
+enum AutoUpdateSettingsProto_ConnectionType : int {
+  AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_ETHERNET = 0,
+  AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_WIFI = 1,
+  AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_WIMAX = 2,
+  AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_BLUETOOTH = 3,
+  AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_CELLULAR = 4
+};
+bool AutoUpdateSettingsProto_ConnectionType_IsValid(int value);
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto_ConnectionType_ConnectionType_MIN = AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_ETHERNET;
+constexpr AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto_ConnectionType_ConnectionType_MAX = AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_CELLULAR;
+constexpr int AutoUpdateSettingsProto_ConnectionType_ConnectionType_ARRAYSIZE = AutoUpdateSettingsProto_ConnectionType_ConnectionType_MAX + 1;
+
+const std::string& AutoUpdateSettingsProto_ConnectionType_Name(AutoUpdateSettingsProto_ConnectionType value);
+template<typename T>
+inline const std::string& AutoUpdateSettingsProto_ConnectionType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AutoUpdateSettingsProto_ConnectionType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AutoUpdateSettingsProto_ConnectionType_Name.");
+  return AutoUpdateSettingsProto_ConnectionType_Name(static_cast<AutoUpdateSettingsProto_ConnectionType>(enum_t_value));
+}
+bool AutoUpdateSettingsProto_ConnectionType_Parse(
+    const std::string& name, AutoUpdateSettingsProto_ConnectionType* value);
+enum AutoUpdateSettingsProto_RollbackToTargetVersion : int {
+  AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_UNSPECIFIED = 0,
+  AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_DISABLED = 1,
+  AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_AND_POWERWASH = 2,
+  AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_AND_RESTORE_IF_POSSIBLE = 3
+};
+bool AutoUpdateSettingsProto_RollbackToTargetVersion_IsValid(int value);
+constexpr AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto_RollbackToTargetVersion_RollbackToTargetVersion_MIN = AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_UNSPECIFIED;
+constexpr AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto_RollbackToTargetVersion_RollbackToTargetVersion_MAX = AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_AND_RESTORE_IF_POSSIBLE;
+constexpr int AutoUpdateSettingsProto_RollbackToTargetVersion_RollbackToTargetVersion_ARRAYSIZE = AutoUpdateSettingsProto_RollbackToTargetVersion_RollbackToTargetVersion_MAX + 1;
+
+const std::string& AutoUpdateSettingsProto_RollbackToTargetVersion_Name(AutoUpdateSettingsProto_RollbackToTargetVersion value);
+template<typename T>
+inline const std::string& AutoUpdateSettingsProto_RollbackToTargetVersion_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AutoUpdateSettingsProto_RollbackToTargetVersion>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AutoUpdateSettingsProto_RollbackToTargetVersion_Name.");
+  return AutoUpdateSettingsProto_RollbackToTargetVersion_Name(static_cast<AutoUpdateSettingsProto_RollbackToTargetVersion>(enum_t_value));
+}
+bool AutoUpdateSettingsProto_RollbackToTargetVersion_Parse(
+    const std::string& name, AutoUpdateSettingsProto_RollbackToTargetVersion* value);
+enum AutoUpdateSettingsProto_ChannelDowngradeBehavior : int {
+  AutoUpdateSettingsProto_ChannelDowngradeBehavior_CHANNEL_DOWNGRADE_BEHAVIOR_UNSPECIFIED = 0,
+  AutoUpdateSettingsProto_ChannelDowngradeBehavior_WAIT_FOR_VERSION_CATCH_UP = 1,
+  AutoUpdateSettingsProto_ChannelDowngradeBehavior_ROLLBACK = 2,
+  AutoUpdateSettingsProto_ChannelDowngradeBehavior_ALLOW_USER_TO_CONFIGURE = 3
+};
+bool AutoUpdateSettingsProto_ChannelDowngradeBehavior_IsValid(int value);
+constexpr AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto_ChannelDowngradeBehavior_ChannelDowngradeBehavior_MIN = AutoUpdateSettingsProto_ChannelDowngradeBehavior_CHANNEL_DOWNGRADE_BEHAVIOR_UNSPECIFIED;
+constexpr AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto_ChannelDowngradeBehavior_ChannelDowngradeBehavior_MAX = AutoUpdateSettingsProto_ChannelDowngradeBehavior_ALLOW_USER_TO_CONFIGURE;
+constexpr int AutoUpdateSettingsProto_ChannelDowngradeBehavior_ChannelDowngradeBehavior_ARRAYSIZE = AutoUpdateSettingsProto_ChannelDowngradeBehavior_ChannelDowngradeBehavior_MAX + 1;
+
+const std::string& AutoUpdateSettingsProto_ChannelDowngradeBehavior_Name(AutoUpdateSettingsProto_ChannelDowngradeBehavior value);
+template<typename T>
+inline const std::string& AutoUpdateSettingsProto_ChannelDowngradeBehavior_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AutoUpdateSettingsProto_ChannelDowngradeBehavior>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AutoUpdateSettingsProto_ChannelDowngradeBehavior_Name.");
+  return AutoUpdateSettingsProto_ChannelDowngradeBehavior_Name(static_cast<AutoUpdateSettingsProto_ChannelDowngradeBehavior>(enum_t_value));
+}
+bool AutoUpdateSettingsProto_ChannelDowngradeBehavior_Parse(
+    const std::string& name, AutoUpdateSettingsProto_ChannelDowngradeBehavior* value);
+enum SystemTimezoneProto_AutomaticTimezoneDetectionType : int {
+  SystemTimezoneProto_AutomaticTimezoneDetectionType_USERS_DECIDE = 0,
+  SystemTimezoneProto_AutomaticTimezoneDetectionType_DISABLED = 1,
+  SystemTimezoneProto_AutomaticTimezoneDetectionType_IP_ONLY = 2,
+  SystemTimezoneProto_AutomaticTimezoneDetectionType_SEND_WIFI_ACCESS_POINTS = 3,
+  SystemTimezoneProto_AutomaticTimezoneDetectionType_SEND_ALL_LOCATION_INFO = 4
+};
+bool SystemTimezoneProto_AutomaticTimezoneDetectionType_IsValid(int value);
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto_AutomaticTimezoneDetectionType_AutomaticTimezoneDetectionType_MIN = SystemTimezoneProto_AutomaticTimezoneDetectionType_USERS_DECIDE;
+constexpr SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto_AutomaticTimezoneDetectionType_AutomaticTimezoneDetectionType_MAX = SystemTimezoneProto_AutomaticTimezoneDetectionType_SEND_ALL_LOCATION_INFO;
+constexpr int SystemTimezoneProto_AutomaticTimezoneDetectionType_AutomaticTimezoneDetectionType_ARRAYSIZE = SystemTimezoneProto_AutomaticTimezoneDetectionType_AutomaticTimezoneDetectionType_MAX + 1;
+
+const std::string& SystemTimezoneProto_AutomaticTimezoneDetectionType_Name(SystemTimezoneProto_AutomaticTimezoneDetectionType value);
+template<typename T>
+inline const std::string& SystemTimezoneProto_AutomaticTimezoneDetectionType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemTimezoneProto_AutomaticTimezoneDetectionType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemTimezoneProto_AutomaticTimezoneDetectionType_Name.");
+  return SystemTimezoneProto_AutomaticTimezoneDetectionType_Name(static_cast<SystemTimezoneProto_AutomaticTimezoneDetectionType>(enum_t_value));
+}
+bool SystemTimezoneProto_AutomaticTimezoneDetectionType_Parse(
+    const std::string& name, SystemTimezoneProto_AutomaticTimezoneDetectionType* value);
+enum DeviceLocalAccountInfoProto_AccountType : int {
+  DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_PUBLIC_SESSION = 0,
+  DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_KIOSK_APP = 1,
+  DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_KIOSK_ANDROID_APP = 2,
+  DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_SAML_PUBLIC_SESSION = 3,
+  DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_WEB_KIOSK_APP = 4
+};
+bool DeviceLocalAccountInfoProto_AccountType_IsValid(int value);
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto_AccountType_AccountType_MIN = DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_PUBLIC_SESSION;
+constexpr DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto_AccountType_AccountType_MAX = DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_WEB_KIOSK_APP;
+constexpr int DeviceLocalAccountInfoProto_AccountType_AccountType_ARRAYSIZE = DeviceLocalAccountInfoProto_AccountType_AccountType_MAX + 1;
+
+const std::string& DeviceLocalAccountInfoProto_AccountType_Name(DeviceLocalAccountInfoProto_AccountType value);
+template<typename T>
+inline const std::string& DeviceLocalAccountInfoProto_AccountType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceLocalAccountInfoProto_AccountType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceLocalAccountInfoProto_AccountType_Name.");
+  return DeviceLocalAccountInfoProto_AccountType_Name(static_cast<DeviceLocalAccountInfoProto_AccountType>(enum_t_value));
+}
+bool DeviceLocalAccountInfoProto_AccountType_Parse(
+    const std::string& name, DeviceLocalAccountInfoProto_AccountType* value);
+enum AccessibilitySettingsProto_ScreenMagnifierType : int {
+  AccessibilitySettingsProto_ScreenMagnifierType_SCREEN_MAGNIFIER_TYPE_NONE = 0,
+  AccessibilitySettingsProto_ScreenMagnifierType_SCREEN_MAGNIFIER_TYPE_FULL = 1
+};
+bool AccessibilitySettingsProto_ScreenMagnifierType_IsValid(int value);
+constexpr AccessibilitySettingsProto_ScreenMagnifierType AccessibilitySettingsProto_ScreenMagnifierType_ScreenMagnifierType_MIN = AccessibilitySettingsProto_ScreenMagnifierType_SCREEN_MAGNIFIER_TYPE_NONE;
+constexpr AccessibilitySettingsProto_ScreenMagnifierType AccessibilitySettingsProto_ScreenMagnifierType_ScreenMagnifierType_MAX = AccessibilitySettingsProto_ScreenMagnifierType_SCREEN_MAGNIFIER_TYPE_FULL;
+constexpr int AccessibilitySettingsProto_ScreenMagnifierType_ScreenMagnifierType_ARRAYSIZE = AccessibilitySettingsProto_ScreenMagnifierType_ScreenMagnifierType_MAX + 1;
+
+const std::string& AccessibilitySettingsProto_ScreenMagnifierType_Name(AccessibilitySettingsProto_ScreenMagnifierType value);
+template<typename T>
+inline const std::string& AccessibilitySettingsProto_ScreenMagnifierType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AccessibilitySettingsProto_ScreenMagnifierType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AccessibilitySettingsProto_ScreenMagnifierType_Name.");
+  return AccessibilitySettingsProto_ScreenMagnifierType_Name(static_cast<AccessibilitySettingsProto_ScreenMagnifierType>(enum_t_value));
+}
+bool AccessibilitySettingsProto_ScreenMagnifierType_Parse(
+    const std::string& name, AccessibilitySettingsProto_ScreenMagnifierType* value);
+enum DisplayRotationDefaultProto_Rotation : int {
+  DisplayRotationDefaultProto_Rotation_ROTATE_0 = 0,
+  DisplayRotationDefaultProto_Rotation_ROTATE_90 = 1,
+  DisplayRotationDefaultProto_Rotation_ROTATE_180 = 2,
+  DisplayRotationDefaultProto_Rotation_ROTATE_270 = 3
+};
+bool DisplayRotationDefaultProto_Rotation_IsValid(int value);
+constexpr DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto_Rotation_Rotation_MIN = DisplayRotationDefaultProto_Rotation_ROTATE_0;
+constexpr DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto_Rotation_Rotation_MAX = DisplayRotationDefaultProto_Rotation_ROTATE_270;
+constexpr int DisplayRotationDefaultProto_Rotation_Rotation_ARRAYSIZE = DisplayRotationDefaultProto_Rotation_Rotation_MAX + 1;
+
+const std::string& DisplayRotationDefaultProto_Rotation_Name(DisplayRotationDefaultProto_Rotation value);
+template<typename T>
+inline const std::string& DisplayRotationDefaultProto_Rotation_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DisplayRotationDefaultProto_Rotation>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DisplayRotationDefaultProto_Rotation_Name.");
+  return DisplayRotationDefaultProto_Rotation_Name(static_cast<DisplayRotationDefaultProto_Rotation>(enum_t_value));
+}
+bool DisplayRotationDefaultProto_Rotation_Parse(
+    const std::string& name, DisplayRotationDefaultProto_Rotation* value);
+enum LoginAuthenticationBehaviorProto_LoginBehavior : int {
+  LoginAuthenticationBehaviorProto_LoginBehavior_GAIA = 0,
+  LoginAuthenticationBehaviorProto_LoginBehavior_SAML_INTERSTITIAL = 1
+};
+bool LoginAuthenticationBehaviorProto_LoginBehavior_IsValid(int value);
+constexpr LoginAuthenticationBehaviorProto_LoginBehavior LoginAuthenticationBehaviorProto_LoginBehavior_LoginBehavior_MIN = LoginAuthenticationBehaviorProto_LoginBehavior_GAIA;
+constexpr LoginAuthenticationBehaviorProto_LoginBehavior LoginAuthenticationBehaviorProto_LoginBehavior_LoginBehavior_MAX = LoginAuthenticationBehaviorProto_LoginBehavior_SAML_INTERSTITIAL;
+constexpr int LoginAuthenticationBehaviorProto_LoginBehavior_LoginBehavior_ARRAYSIZE = LoginAuthenticationBehaviorProto_LoginBehavior_LoginBehavior_MAX + 1;
+
+const std::string& LoginAuthenticationBehaviorProto_LoginBehavior_Name(LoginAuthenticationBehaviorProto_LoginBehavior value);
+template<typename T>
+inline const std::string& LoginAuthenticationBehaviorProto_LoginBehavior_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, LoginAuthenticationBehaviorProto_LoginBehavior>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function LoginAuthenticationBehaviorProto_LoginBehavior_Name.");
+  return LoginAuthenticationBehaviorProto_LoginBehavior_Name(static_cast<LoginAuthenticationBehaviorProto_LoginBehavior>(enum_t_value));
+}
+bool LoginAuthenticationBehaviorProto_LoginBehavior_Parse(
+    const std::string& name, LoginAuthenticationBehaviorProto_LoginBehavior* value);
+enum DeviceEcryptfsMigrationStrategyProto_MigrationStrategy : int {
+  DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_UNSET = 0,
+  DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_DISALLOW_ARC = 1,
+  DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_ALLOW_MIGRATION = 2
+};
+bool DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_IsValid(int value);
+constexpr DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_MigrationStrategy_MIN = DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_UNSET;
+constexpr DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_MigrationStrategy_MAX = DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_ALLOW_MIGRATION;
+constexpr int DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_MigrationStrategy_ARRAYSIZE = DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_MigrationStrategy_MAX + 1;
+
+const std::string& DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Name(DeviceEcryptfsMigrationStrategyProto_MigrationStrategy value);
+template<typename T>
+inline const std::string& DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceEcryptfsMigrationStrategyProto_MigrationStrategy>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Name.");
+  return DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Name(static_cast<DeviceEcryptfsMigrationStrategyProto_MigrationStrategy>(enum_t_value));
+}
+bool DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Parse(
+    const std::string& name, DeviceEcryptfsMigrationStrategyProto_MigrationStrategy* value);
+enum DeviceSecondFactorAuthenticationProto_U2fMode : int {
+  DeviceSecondFactorAuthenticationProto_U2fMode_UNSET = 0,
+  DeviceSecondFactorAuthenticationProto_U2fMode_DISABLED = 1,
+  DeviceSecondFactorAuthenticationProto_U2fMode_U2F = 2,
+  DeviceSecondFactorAuthenticationProto_U2fMode_U2F_EXTENDED = 3
+};
+bool DeviceSecondFactorAuthenticationProto_U2fMode_IsValid(int value);
+constexpr DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto_U2fMode_U2fMode_MIN = DeviceSecondFactorAuthenticationProto_U2fMode_UNSET;
+constexpr DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto_U2fMode_U2fMode_MAX = DeviceSecondFactorAuthenticationProto_U2fMode_U2F_EXTENDED;
+constexpr int DeviceSecondFactorAuthenticationProto_U2fMode_U2fMode_ARRAYSIZE = DeviceSecondFactorAuthenticationProto_U2fMode_U2fMode_MAX + 1;
+
+const std::string& DeviceSecondFactorAuthenticationProto_U2fMode_Name(DeviceSecondFactorAuthenticationProto_U2fMode value);
+template<typename T>
+inline const std::string& DeviceSecondFactorAuthenticationProto_U2fMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceSecondFactorAuthenticationProto_U2fMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceSecondFactorAuthenticationProto_U2fMode_Name.");
+  return DeviceSecondFactorAuthenticationProto_U2fMode_Name(static_cast<DeviceSecondFactorAuthenticationProto_U2fMode>(enum_t_value));
+}
+bool DeviceSecondFactorAuthenticationProto_U2fMode_Parse(
+    const std::string& name, DeviceSecondFactorAuthenticationProto_U2fMode* value);
+enum WeeklyTimeProto_DayOfWeek : int {
+  WeeklyTimeProto_DayOfWeek_DAY_OF_WEEK_UNSPECIFIED = 0,
+  WeeklyTimeProto_DayOfWeek_MONDAY = 1,
+  WeeklyTimeProto_DayOfWeek_TUESDAY = 2,
+  WeeklyTimeProto_DayOfWeek_WEDNESDAY = 3,
+  WeeklyTimeProto_DayOfWeek_THURSDAY = 4,
+  WeeklyTimeProto_DayOfWeek_FRIDAY = 5,
+  WeeklyTimeProto_DayOfWeek_SATURDAY = 6,
+  WeeklyTimeProto_DayOfWeek_SUNDAY = 7
+};
+bool WeeklyTimeProto_DayOfWeek_IsValid(int value);
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto_DayOfWeek_DayOfWeek_MIN = WeeklyTimeProto_DayOfWeek_DAY_OF_WEEK_UNSPECIFIED;
+constexpr WeeklyTimeProto_DayOfWeek WeeklyTimeProto_DayOfWeek_DayOfWeek_MAX = WeeklyTimeProto_DayOfWeek_SUNDAY;
+constexpr int WeeklyTimeProto_DayOfWeek_DayOfWeek_ARRAYSIZE = WeeklyTimeProto_DayOfWeek_DayOfWeek_MAX + 1;
+
+const std::string& WeeklyTimeProto_DayOfWeek_Name(WeeklyTimeProto_DayOfWeek value);
+template<typename T>
+inline const std::string& WeeklyTimeProto_DayOfWeek_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, WeeklyTimeProto_DayOfWeek>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function WeeklyTimeProto_DayOfWeek_Name.");
+  return WeeklyTimeProto_DayOfWeek_Name(static_cast<WeeklyTimeProto_DayOfWeek>(enum_t_value));
+}
+bool WeeklyTimeProto_DayOfWeek_Parse(
+    const std::string& name, WeeklyTimeProto_DayOfWeek* value);
+enum DeviceNativePrintersAccessModeProto_AccessMode : int {
+  DeviceNativePrintersAccessModeProto_AccessMode_ACCESS_MODE_BLACKLIST = 0,
+  DeviceNativePrintersAccessModeProto_AccessMode_ACCESS_MODE_WHITELIST = 1,
+  DeviceNativePrintersAccessModeProto_AccessMode_ACCESS_MODE_ALL = 2
+};
+bool DeviceNativePrintersAccessModeProto_AccessMode_IsValid(int value);
+constexpr DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto_AccessMode_AccessMode_MIN = DeviceNativePrintersAccessModeProto_AccessMode_ACCESS_MODE_BLACKLIST;
+constexpr DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto_AccessMode_AccessMode_MAX = DeviceNativePrintersAccessModeProto_AccessMode_ACCESS_MODE_ALL;
+constexpr int DeviceNativePrintersAccessModeProto_AccessMode_AccessMode_ARRAYSIZE = DeviceNativePrintersAccessModeProto_AccessMode_AccessMode_MAX + 1;
+
+const std::string& DeviceNativePrintersAccessModeProto_AccessMode_Name(DeviceNativePrintersAccessModeProto_AccessMode value);
+template<typename T>
+inline const std::string& DeviceNativePrintersAccessModeProto_AccessMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceNativePrintersAccessModeProto_AccessMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceNativePrintersAccessModeProto_AccessMode_Name.");
+  return DeviceNativePrintersAccessModeProto_AccessMode_Name(static_cast<DeviceNativePrintersAccessModeProto_AccessMode>(enum_t_value));
+}
+bool DeviceNativePrintersAccessModeProto_AccessMode_Parse(
+    const std::string& name, DeviceNativePrintersAccessModeProto_AccessMode* value);
+enum DevicePrintersAccessModeProto_AccessMode : int {
+  DevicePrintersAccessModeProto_AccessMode_ACCESS_MODE_BLOCKLIST = 0,
+  DevicePrintersAccessModeProto_AccessMode_ACCESS_MODE_ALLOWLIST = 1,
+  DevicePrintersAccessModeProto_AccessMode_ACCESS_MODE_ALL = 2
+};
+bool DevicePrintersAccessModeProto_AccessMode_IsValid(int value);
+constexpr DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto_AccessMode_AccessMode_MIN = DevicePrintersAccessModeProto_AccessMode_ACCESS_MODE_BLOCKLIST;
+constexpr DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto_AccessMode_AccessMode_MAX = DevicePrintersAccessModeProto_AccessMode_ACCESS_MODE_ALL;
+constexpr int DevicePrintersAccessModeProto_AccessMode_AccessMode_ARRAYSIZE = DevicePrintersAccessModeProto_AccessMode_AccessMode_MAX + 1;
+
+const std::string& DevicePrintersAccessModeProto_AccessMode_Name(DevicePrintersAccessModeProto_AccessMode value);
+template<typename T>
+inline const std::string& DevicePrintersAccessModeProto_AccessMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DevicePrintersAccessModeProto_AccessMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DevicePrintersAccessModeProto_AccessMode_Name.");
+  return DevicePrintersAccessModeProto_AccessMode_Name(static_cast<DevicePrintersAccessModeProto_AccessMode>(enum_t_value));
+}
+bool DevicePrintersAccessModeProto_AccessMode_Parse(
+    const std::string& name, DevicePrintersAccessModeProto_AccessMode* value);
+enum TPMFirmwareUpdateSettingsProto_AutoUpdateMode : int {
+  TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AUTO_UPDATE_MODE_UNSPECIFIED = 0,
+  TPMFirmwareUpdateSettingsProto_AutoUpdateMode_NEVER = 1,
+  TPMFirmwareUpdateSettingsProto_AutoUpdateMode_USER_ACKNOWLEDGMENT = 2,
+  TPMFirmwareUpdateSettingsProto_AutoUpdateMode_WITHOUT_ACKNOWLEDGMENT = 3,
+  TPMFirmwareUpdateSettingsProto_AutoUpdateMode_ENROLLMENT = 4
+};
+bool TPMFirmwareUpdateSettingsProto_AutoUpdateMode_IsValid(int value);
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AutoUpdateMode_MIN = TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AUTO_UPDATE_MODE_UNSPECIFIED;
+constexpr TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AutoUpdateMode_MAX = TPMFirmwareUpdateSettingsProto_AutoUpdateMode_ENROLLMENT;
+constexpr int TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AutoUpdateMode_ARRAYSIZE = TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AutoUpdateMode_MAX + 1;
+
+const std::string& TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Name(TPMFirmwareUpdateSettingsProto_AutoUpdateMode value);
+template<typename T>
+inline const std::string& TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, TPMFirmwareUpdateSettingsProto_AutoUpdateMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Name.");
+  return TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Name(static_cast<TPMFirmwareUpdateSettingsProto_AutoUpdateMode>(enum_t_value));
+}
+bool TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Parse(
+    const std::string& name, TPMFirmwareUpdateSettingsProto_AutoUpdateMode* value);
+enum DeviceKerberosEncryptionTypesProto_Types : int {
+  DeviceKerberosEncryptionTypesProto_Types_ENC_TYPES_ALL = 0,
+  DeviceKerberosEncryptionTypesProto_Types_ENC_TYPES_STRONG = 1,
+  DeviceKerberosEncryptionTypesProto_Types_ENC_TYPES_LEGACY = 2
+};
+bool DeviceKerberosEncryptionTypesProto_Types_IsValid(int value);
+constexpr DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto_Types_Types_MIN = DeviceKerberosEncryptionTypesProto_Types_ENC_TYPES_ALL;
+constexpr DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto_Types_Types_MAX = DeviceKerberosEncryptionTypesProto_Types_ENC_TYPES_LEGACY;
+constexpr int DeviceKerberosEncryptionTypesProto_Types_Types_ARRAYSIZE = DeviceKerberosEncryptionTypesProto_Types_Types_MAX + 1;
+
+const std::string& DeviceKerberosEncryptionTypesProto_Types_Name(DeviceKerberosEncryptionTypesProto_Types value);
+template<typename T>
+inline const std::string& DeviceKerberosEncryptionTypesProto_Types_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceKerberosEncryptionTypesProto_Types>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceKerberosEncryptionTypesProto_Types_Name.");
+  return DeviceKerberosEncryptionTypesProto_Types_Name(static_cast<DeviceKerberosEncryptionTypesProto_Types>(enum_t_value));
+}
+bool DeviceKerberosEncryptionTypesProto_Types_Parse(
+    const std::string& name, DeviceKerberosEncryptionTypesProto_Types* value);
+enum DeviceUserPolicyLoopbackProcessingModeProto_Mode : int {
+  DeviceUserPolicyLoopbackProcessingModeProto_Mode_USER_POLICY_MODE_DEFAULT = 0,
+  DeviceUserPolicyLoopbackProcessingModeProto_Mode_USER_POLICY_MODE_MERGE = 1,
+  DeviceUserPolicyLoopbackProcessingModeProto_Mode_USER_POLICY_MODE_REPLACE = 2
+};
+bool DeviceUserPolicyLoopbackProcessingModeProto_Mode_IsValid(int value);
+constexpr DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto_Mode_Mode_MIN = DeviceUserPolicyLoopbackProcessingModeProto_Mode_USER_POLICY_MODE_DEFAULT;
+constexpr DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto_Mode_Mode_MAX = DeviceUserPolicyLoopbackProcessingModeProto_Mode_USER_POLICY_MODE_REPLACE;
+constexpr int DeviceUserPolicyLoopbackProcessingModeProto_Mode_Mode_ARRAYSIZE = DeviceUserPolicyLoopbackProcessingModeProto_Mode_Mode_MAX + 1;
+
+const std::string& DeviceUserPolicyLoopbackProcessingModeProto_Mode_Name(DeviceUserPolicyLoopbackProcessingModeProto_Mode value);
+template<typename T>
+inline const std::string& DeviceUserPolicyLoopbackProcessingModeProto_Mode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceUserPolicyLoopbackProcessingModeProto_Mode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceUserPolicyLoopbackProcessingModeProto_Mode_Name.");
+  return DeviceUserPolicyLoopbackProcessingModeProto_Mode_Name(static_cast<DeviceUserPolicyLoopbackProcessingModeProto_Mode>(enum_t_value));
+}
+bool DeviceUserPolicyLoopbackProcessingModeProto_Mode_Parse(
+    const std::string& name, DeviceUserPolicyLoopbackProcessingModeProto_Mode* value);
+enum SamlLoginAuthenticationTypeProto_Type : int {
+  SamlLoginAuthenticationTypeProto_Type_TYPE_DEFAULT = 0,
+  SamlLoginAuthenticationTypeProto_Type_TYPE_CLIENT_CERTIFICATE = 1
+};
+bool SamlLoginAuthenticationTypeProto_Type_IsValid(int value);
+constexpr SamlLoginAuthenticationTypeProto_Type SamlLoginAuthenticationTypeProto_Type_Type_MIN = SamlLoginAuthenticationTypeProto_Type_TYPE_DEFAULT;
+constexpr SamlLoginAuthenticationTypeProto_Type SamlLoginAuthenticationTypeProto_Type_Type_MAX = SamlLoginAuthenticationTypeProto_Type_TYPE_CLIENT_CERTIFICATE;
+constexpr int SamlLoginAuthenticationTypeProto_Type_Type_ARRAYSIZE = SamlLoginAuthenticationTypeProto_Type_Type_MAX + 1;
+
+const std::string& SamlLoginAuthenticationTypeProto_Type_Name(SamlLoginAuthenticationTypeProto_Type value);
+template<typename T>
+inline const std::string& SamlLoginAuthenticationTypeProto_Type_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SamlLoginAuthenticationTypeProto_Type>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SamlLoginAuthenticationTypeProto_Type_Name.");
+  return SamlLoginAuthenticationTypeProto_Type_Name(static_cast<SamlLoginAuthenticationTypeProto_Type>(enum_t_value));
+}
+bool SamlLoginAuthenticationTypeProto_Type_Parse(
+    const std::string& name, SamlLoginAuthenticationTypeProto_Type* value);
+enum DeviceRebootOnUserSignoutProto_RebootOnSignoutMode : int {
+  DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_REBOOT_ON_SIGNOUT_MODE_UNSPECIFIED = 0,
+  DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_NEVER = 1,
+  DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_ARC_SESSION = 2,
+  DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_ALWAYS = 3,
+  DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_VM_STARTED_OR_ARC_SESSION = 4
+};
+bool DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_IsValid(int value);
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_RebootOnSignoutMode_MIN = DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_REBOOT_ON_SIGNOUT_MODE_UNSPECIFIED;
+constexpr DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_RebootOnSignoutMode_MAX = DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_VM_STARTED_OR_ARC_SESSION;
+constexpr int DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_RebootOnSignoutMode_ARRAYSIZE = DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_RebootOnSignoutMode_MAX + 1;
+
+const std::string& DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Name(DeviceRebootOnUserSignoutProto_RebootOnSignoutMode value);
+template<typename T>
+inline const std::string& DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceRebootOnUserSignoutProto_RebootOnSignoutMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Name.");
+  return DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Name(static_cast<DeviceRebootOnUserSignoutProto_RebootOnSignoutMode>(enum_t_value));
+}
+bool DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Parse(
+    const std::string& name, DeviceRebootOnUserSignoutProto_RebootOnSignoutMode* value);
+enum DeviceDockMacAddressSourceProto_Source : int {
+  DeviceDockMacAddressSourceProto_Source_SOURCE_UNSPECIFIED = 0,
+  DeviceDockMacAddressSourceProto_Source_DEVICE_DOCK_MAC_ADDRESS = 1,
+  DeviceDockMacAddressSourceProto_Source_DEVICE_NIC_MAC_ADDRESS = 2,
+  DeviceDockMacAddressSourceProto_Source_DOCK_NIC_MAC_ADDRESS = 3
+};
+bool DeviceDockMacAddressSourceProto_Source_IsValid(int value);
+constexpr DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto_Source_Source_MIN = DeviceDockMacAddressSourceProto_Source_SOURCE_UNSPECIFIED;
+constexpr DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto_Source_Source_MAX = DeviceDockMacAddressSourceProto_Source_DOCK_NIC_MAC_ADDRESS;
+constexpr int DeviceDockMacAddressSourceProto_Source_Source_ARRAYSIZE = DeviceDockMacAddressSourceProto_Source_Source_MAX + 1;
+
+const std::string& DeviceDockMacAddressSourceProto_Source_Name(DeviceDockMacAddressSourceProto_Source value);
+template<typename T>
+inline const std::string& DeviceDockMacAddressSourceProto_Source_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceDockMacAddressSourceProto_Source>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceDockMacAddressSourceProto_Source_Name.");
+  return DeviceDockMacAddressSourceProto_Source_Name(static_cast<DeviceDockMacAddressSourceProto_Source>(enum_t_value));
+}
+bool DeviceDockMacAddressSourceProto_Source_Parse(
+    const std::string& name, DeviceDockMacAddressSourceProto_Source* value);
+enum DeviceBatteryChargeModeProto_BatteryChargeMode : int {
+  DeviceBatteryChargeModeProto_BatteryChargeMode_MODE_UNSPECIFIED = 0,
+  DeviceBatteryChargeModeProto_BatteryChargeMode_STANDARD = 1,
+  DeviceBatteryChargeModeProto_BatteryChargeMode_EXPRESS_CHARGE = 2,
+  DeviceBatteryChargeModeProto_BatteryChargeMode_PRIMARILY_AC_USE = 3,
+  DeviceBatteryChargeModeProto_BatteryChargeMode_ADAPTIVE = 4,
+  DeviceBatteryChargeModeProto_BatteryChargeMode_CUSTOM = 5
+};
+bool DeviceBatteryChargeModeProto_BatteryChargeMode_IsValid(int value);
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto_BatteryChargeMode_BatteryChargeMode_MIN = DeviceBatteryChargeModeProto_BatteryChargeMode_MODE_UNSPECIFIED;
+constexpr DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto_BatteryChargeMode_BatteryChargeMode_MAX = DeviceBatteryChargeModeProto_BatteryChargeMode_CUSTOM;
+constexpr int DeviceBatteryChargeModeProto_BatteryChargeMode_BatteryChargeMode_ARRAYSIZE = DeviceBatteryChargeModeProto_BatteryChargeMode_BatteryChargeMode_MAX + 1;
+
+const std::string& DeviceBatteryChargeModeProto_BatteryChargeMode_Name(DeviceBatteryChargeModeProto_BatteryChargeMode value);
+template<typename T>
+inline const std::string& DeviceBatteryChargeModeProto_BatteryChargeMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceBatteryChargeModeProto_BatteryChargeMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceBatteryChargeModeProto_BatteryChargeMode_Name.");
+  return DeviceBatteryChargeModeProto_BatteryChargeMode_Name(static_cast<DeviceBatteryChargeModeProto_BatteryChargeMode>(enum_t_value));
+}
+bool DeviceBatteryChargeModeProto_BatteryChargeMode_Parse(
+    const std::string& name, DeviceBatteryChargeModeProto_BatteryChargeMode* value);
+enum DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode : int {
+  DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_DISALLOW = 0,
+  DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_DISALLOW_WITH_POWERWASH = 1,
+  DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_ALLOW_FOR_AFFILIATED_USERS = 2
+};
+bool DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_IsValid(int value);
+constexpr DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_AllowanceMode_MIN = DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_DISALLOW;
+constexpr DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_AllowanceMode_MAX = DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_ALLOW_FOR_AFFILIATED_USERS;
+constexpr int DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_AllowanceMode_ARRAYSIZE = DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_AllowanceMode_MAX + 1;
+
+const std::string& DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Name(DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode value);
+template<typename T>
+inline const std::string& DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Name.");
+  return DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Name(static_cast<DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode>(enum_t_value));
+}
+bool DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Parse(
+    const std::string& name, DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode* value);
+// ===================================================================
+
+class DevicePolicyRefreshRateProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePolicyRefreshRateProto) */ {
+ public:
+  DevicePolicyRefreshRateProto();
+  virtual ~DevicePolicyRefreshRateProto();
+
+  DevicePolicyRefreshRateProto(const DevicePolicyRefreshRateProto& from);
+  DevicePolicyRefreshRateProto(DevicePolicyRefreshRateProto&& from) noexcept
+    : DevicePolicyRefreshRateProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePolicyRefreshRateProto& operator=(const DevicePolicyRefreshRateProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePolicyRefreshRateProto& operator=(DevicePolicyRefreshRateProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePolicyRefreshRateProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePolicyRefreshRateProto* internal_default_instance() {
+    return reinterpret_cast<const DevicePolicyRefreshRateProto*>(
+               &_DevicePolicyRefreshRateProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(DevicePolicyRefreshRateProto& a, DevicePolicyRefreshRateProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePolicyRefreshRateProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePolicyRefreshRateProto* New() const final {
+    return CreateMaybeMessage<DevicePolicyRefreshRateProto>(nullptr);
+  }
+
+  DevicePolicyRefreshRateProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePolicyRefreshRateProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePolicyRefreshRateProto& from);
+  void MergeFrom(const DevicePolicyRefreshRateProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePolicyRefreshRateProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePolicyRefreshRateProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDevicePolicyRefreshRateFieldNumber = 1,
+  };
+  // optional int64 device_policy_refresh_rate = 1;
+  bool has_device_policy_refresh_rate() const;
+  private:
+  bool _internal_has_device_policy_refresh_rate() const;
+  public:
+  void clear_device_policy_refresh_rate();
+  ::PROTOBUF_NAMESPACE_ID::int64 device_policy_refresh_rate() const;
+  void set_device_policy_refresh_rate(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_device_policy_refresh_rate() const;
+  void _internal_set_device_policy_refresh_rate(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePolicyRefreshRateProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 device_policy_refresh_rate_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UserWhitelistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UserWhitelistProto) */ {
+ public:
+  UserWhitelistProto();
+  virtual ~UserWhitelistProto();
+
+  UserWhitelistProto(const UserWhitelistProto& from);
+  UserWhitelistProto(UserWhitelistProto&& from) noexcept
+    : UserWhitelistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UserWhitelistProto& operator=(const UserWhitelistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UserWhitelistProto& operator=(UserWhitelistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UserWhitelistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UserWhitelistProto* internal_default_instance() {
+    return reinterpret_cast<const UserWhitelistProto*>(
+               &_UserWhitelistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(UserWhitelistProto& a, UserWhitelistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UserWhitelistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UserWhitelistProto* New() const final {
+    return CreateMaybeMessage<UserWhitelistProto>(nullptr);
+  }
+
+  UserWhitelistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UserWhitelistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UserWhitelistProto& from);
+  void MergeFrom(const UserWhitelistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UserWhitelistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UserWhitelistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUserWhitelistFieldNumber = 1,
+  };
+  // repeated string user_whitelist = 1;
+  int user_whitelist_size() const;
+  private:
+  int _internal_user_whitelist_size() const;
+  public:
+  void clear_user_whitelist();
+  const std::string& user_whitelist(int index) const;
+  std::string* mutable_user_whitelist(int index);
+  void set_user_whitelist(int index, const std::string& value);
+  void set_user_whitelist(int index, std::string&& value);
+  void set_user_whitelist(int index, const char* value);
+  void set_user_whitelist(int index, const char* value, size_t size);
+  std::string* add_user_whitelist();
+  void add_user_whitelist(const std::string& value);
+  void add_user_whitelist(std::string&& value);
+  void add_user_whitelist(const char* value);
+  void add_user_whitelist(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& user_whitelist() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_user_whitelist();
+  private:
+  const std::string& _internal_user_whitelist(int index) const;
+  std::string* _internal_add_user_whitelist();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UserWhitelistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> user_whitelist_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UserAllowlistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UserAllowlistProto) */ {
+ public:
+  UserAllowlistProto();
+  virtual ~UserAllowlistProto();
+
+  UserAllowlistProto(const UserAllowlistProto& from);
+  UserAllowlistProto(UserAllowlistProto&& from) noexcept
+    : UserAllowlistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UserAllowlistProto& operator=(const UserAllowlistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UserAllowlistProto& operator=(UserAllowlistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UserAllowlistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UserAllowlistProto* internal_default_instance() {
+    return reinterpret_cast<const UserAllowlistProto*>(
+               &_UserAllowlistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    2;
+
+  friend void swap(UserAllowlistProto& a, UserAllowlistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UserAllowlistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UserAllowlistProto* New() const final {
+    return CreateMaybeMessage<UserAllowlistProto>(nullptr);
+  }
+
+  UserAllowlistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UserAllowlistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UserAllowlistProto& from);
+  void MergeFrom(const UserAllowlistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UserAllowlistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UserAllowlistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUserAllowlistFieldNumber = 1,
+  };
+  // repeated string user_allowlist = 1;
+  int user_allowlist_size() const;
+  private:
+  int _internal_user_allowlist_size() const;
+  public:
+  void clear_user_allowlist();
+  const std::string& user_allowlist(int index) const;
+  std::string* mutable_user_allowlist(int index);
+  void set_user_allowlist(int index, const std::string& value);
+  void set_user_allowlist(int index, std::string&& value);
+  void set_user_allowlist(int index, const char* value);
+  void set_user_allowlist(int index, const char* value, size_t size);
+  std::string* add_user_allowlist();
+  void add_user_allowlist(const std::string& value);
+  void add_user_allowlist(std::string&& value);
+  void add_user_allowlist(const char* value);
+  void add_user_allowlist(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& user_allowlist() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_user_allowlist();
+  private:
+  const std::string& _internal_user_allowlist(int index) const;
+  std::string* _internal_add_user_allowlist();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UserAllowlistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> user_allowlist_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AllowNewUsersProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AllowNewUsersProto) */ {
+ public:
+  AllowNewUsersProto();
+  virtual ~AllowNewUsersProto();
+
+  AllowNewUsersProto(const AllowNewUsersProto& from);
+  AllowNewUsersProto(AllowNewUsersProto&& from) noexcept
+    : AllowNewUsersProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AllowNewUsersProto& operator=(const AllowNewUsersProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AllowNewUsersProto& operator=(AllowNewUsersProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AllowNewUsersProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AllowNewUsersProto* internal_default_instance() {
+    return reinterpret_cast<const AllowNewUsersProto*>(
+               &_AllowNewUsersProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    3;
+
+  friend void swap(AllowNewUsersProto& a, AllowNewUsersProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AllowNewUsersProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AllowNewUsersProto* New() const final {
+    return CreateMaybeMessage<AllowNewUsersProto>(nullptr);
+  }
+
+  AllowNewUsersProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AllowNewUsersProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AllowNewUsersProto& from);
+  void MergeFrom(const AllowNewUsersProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AllowNewUsersProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AllowNewUsersProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowNewUsersFieldNumber = 1,
+  };
+  // optional bool allow_new_users = 1 [default = true];
+  bool has_allow_new_users() const;
+  private:
+  bool _internal_has_allow_new_users() const;
+  public:
+  void clear_allow_new_users();
+  bool allow_new_users() const;
+  void set_allow_new_users(bool value);
+  private:
+  bool _internal_allow_new_users() const;
+  void _internal_set_allow_new_users(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AllowNewUsersProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool allow_new_users_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class GuestModeEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.GuestModeEnabledProto) */ {
+ public:
+  GuestModeEnabledProto();
+  virtual ~GuestModeEnabledProto();
+
+  GuestModeEnabledProto(const GuestModeEnabledProto& from);
+  GuestModeEnabledProto(GuestModeEnabledProto&& from) noexcept
+    : GuestModeEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline GuestModeEnabledProto& operator=(const GuestModeEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline GuestModeEnabledProto& operator=(GuestModeEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const GuestModeEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const GuestModeEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const GuestModeEnabledProto*>(
+               &_GuestModeEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    4;
+
+  friend void swap(GuestModeEnabledProto& a, GuestModeEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(GuestModeEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline GuestModeEnabledProto* New() const final {
+    return CreateMaybeMessage<GuestModeEnabledProto>(nullptr);
+  }
+
+  GuestModeEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<GuestModeEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const GuestModeEnabledProto& from);
+  void MergeFrom(const GuestModeEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(GuestModeEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.GuestModeEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kGuestModeEnabledFieldNumber = 1,
+  };
+  // optional bool guest_mode_enabled = 1 [default = true];
+  bool has_guest_mode_enabled() const;
+  private:
+  bool _internal_has_guest_mode_enabled() const;
+  public:
+  void clear_guest_mode_enabled();
+  bool guest_mode_enabled() const;
+  void set_guest_mode_enabled(bool value);
+  private:
+  bool _internal_guest_mode_enabled() const;
+  void _internal_set_guest_mode_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.GuestModeEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool guest_mode_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ShowUserNamesOnSigninProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ShowUserNamesOnSigninProto) */ {
+ public:
+  ShowUserNamesOnSigninProto();
+  virtual ~ShowUserNamesOnSigninProto();
+
+  ShowUserNamesOnSigninProto(const ShowUserNamesOnSigninProto& from);
+  ShowUserNamesOnSigninProto(ShowUserNamesOnSigninProto&& from) noexcept
+    : ShowUserNamesOnSigninProto() {
+    *this = ::std::move(from);
+  }
+
+  inline ShowUserNamesOnSigninProto& operator=(const ShowUserNamesOnSigninProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ShowUserNamesOnSigninProto& operator=(ShowUserNamesOnSigninProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ShowUserNamesOnSigninProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ShowUserNamesOnSigninProto* internal_default_instance() {
+    return reinterpret_cast<const ShowUserNamesOnSigninProto*>(
+               &_ShowUserNamesOnSigninProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    5;
+
+  friend void swap(ShowUserNamesOnSigninProto& a, ShowUserNamesOnSigninProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ShowUserNamesOnSigninProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ShowUserNamesOnSigninProto* New() const final {
+    return CreateMaybeMessage<ShowUserNamesOnSigninProto>(nullptr);
+  }
+
+  ShowUserNamesOnSigninProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ShowUserNamesOnSigninProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ShowUserNamesOnSigninProto& from);
+  void MergeFrom(const ShowUserNamesOnSigninProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ShowUserNamesOnSigninProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ShowUserNamesOnSigninProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kShowUserNamesFieldNumber = 1,
+  };
+  // optional bool show_user_names = 1 [default = true];
+  bool has_show_user_names() const;
+  private:
+  bool _internal_has_show_user_names() const;
+  public:
+  void clear_show_user_names();
+  bool show_user_names() const;
+  void set_show_user_names(bool value);
+  private:
+  bool _internal_show_user_names() const;
+  void _internal_set_show_user_names(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ShowUserNamesOnSigninProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool show_user_names_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DataRoamingEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DataRoamingEnabledProto) */ {
+ public:
+  DataRoamingEnabledProto();
+  virtual ~DataRoamingEnabledProto();
+
+  DataRoamingEnabledProto(const DataRoamingEnabledProto& from);
+  DataRoamingEnabledProto(DataRoamingEnabledProto&& from) noexcept
+    : DataRoamingEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DataRoamingEnabledProto& operator=(const DataRoamingEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DataRoamingEnabledProto& operator=(DataRoamingEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DataRoamingEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DataRoamingEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DataRoamingEnabledProto*>(
+               &_DataRoamingEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    6;
+
+  friend void swap(DataRoamingEnabledProto& a, DataRoamingEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DataRoamingEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DataRoamingEnabledProto* New() const final {
+    return CreateMaybeMessage<DataRoamingEnabledProto>(nullptr);
+  }
+
+  DataRoamingEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DataRoamingEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DataRoamingEnabledProto& from);
+  void MergeFrom(const DataRoamingEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DataRoamingEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DataRoamingEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDataRoamingEnabledFieldNumber = 1,
+  };
+  // optional bool data_roaming_enabled = 1 [default = false];
+  bool has_data_roaming_enabled() const;
+  private:
+  bool _internal_has_data_roaming_enabled() const;
+  public:
+  void clear_data_roaming_enabled();
+  bool data_roaming_enabled() const;
+  void set_data_roaming_enabled(bool value);
+  private:
+  bool _internal_data_roaming_enabled() const;
+  void _internal_set_data_roaming_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DataRoamingEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool data_roaming_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_DeviceProxySettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_DeviceProxySettingsProto) */ {
+ public:
+  OBSOLETE_DeviceProxySettingsProto();
+  virtual ~OBSOLETE_DeviceProxySettingsProto();
+
+  OBSOLETE_DeviceProxySettingsProto(const OBSOLETE_DeviceProxySettingsProto& from);
+  OBSOLETE_DeviceProxySettingsProto(OBSOLETE_DeviceProxySettingsProto&& from) noexcept
+    : OBSOLETE_DeviceProxySettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_DeviceProxySettingsProto& operator=(const OBSOLETE_DeviceProxySettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_DeviceProxySettingsProto& operator=(OBSOLETE_DeviceProxySettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_DeviceProxySettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_DeviceProxySettingsProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_DeviceProxySettingsProto*>(
+               &_OBSOLETE_DeviceProxySettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    7;
+
+  friend void swap(OBSOLETE_DeviceProxySettingsProto& a, OBSOLETE_DeviceProxySettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_DeviceProxySettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_DeviceProxySettingsProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_DeviceProxySettingsProto>(nullptr);
+  }
+
+  OBSOLETE_DeviceProxySettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_DeviceProxySettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_DeviceProxySettingsProto& from);
+  void MergeFrom(const OBSOLETE_DeviceProxySettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_DeviceProxySettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_DeviceProxySettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEProxyModeFieldNumber = 1,
+    kOBSOLETEProxyServerFieldNumber = 2,
+    kOBSOLETEProxyPacUrlFieldNumber = 3,
+    kOBSOLETEProxyBypassListFieldNumber = 4,
+  };
+  // optional string OBSOLETE_proxy_mode = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_proxy_mode() const;
+  private:
+  bool _internal_has_obsolete_proxy_mode() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_proxy_mode();
+  PROTOBUF_DEPRECATED const std::string& obsolete_proxy_mode() const;
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_mode(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_mode(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_mode(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_mode(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_proxy_mode();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_proxy_mode();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_proxy_mode(std::string* obsolete_proxy_mode);
+  private:
+  const std::string& _internal_obsolete_proxy_mode() const;
+  void _internal_set_obsolete_proxy_mode(const std::string& value);
+  std::string* _internal_mutable_obsolete_proxy_mode();
+  public:
+
+  // optional string OBSOLETE_proxy_server = 2 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_proxy_server() const;
+  private:
+  bool _internal_has_obsolete_proxy_server() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_proxy_server();
+  PROTOBUF_DEPRECATED const std::string& obsolete_proxy_server() const;
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_server(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_server(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_server(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_server(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_proxy_server();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_proxy_server();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_proxy_server(std::string* obsolete_proxy_server);
+  private:
+  const std::string& _internal_obsolete_proxy_server() const;
+  void _internal_set_obsolete_proxy_server(const std::string& value);
+  std::string* _internal_mutable_obsolete_proxy_server();
+  public:
+
+  // optional string OBSOLETE_proxy_pac_url = 3 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_proxy_pac_url() const;
+  private:
+  bool _internal_has_obsolete_proxy_pac_url() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_proxy_pac_url();
+  PROTOBUF_DEPRECATED const std::string& obsolete_proxy_pac_url() const;
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_pac_url(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_pac_url(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_pac_url(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_pac_url(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_proxy_pac_url();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_proxy_pac_url();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_proxy_pac_url(std::string* obsolete_proxy_pac_url);
+  private:
+  const std::string& _internal_obsolete_proxy_pac_url() const;
+  void _internal_set_obsolete_proxy_pac_url(const std::string& value);
+  std::string* _internal_mutable_obsolete_proxy_pac_url();
+  public:
+
+  // optional string OBSOLETE_proxy_bypass_list = 4 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_proxy_bypass_list() const;
+  private:
+  bool _internal_has_obsolete_proxy_bypass_list() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_proxy_bypass_list();
+  PROTOBUF_DEPRECATED const std::string& obsolete_proxy_bypass_list() const;
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_bypass_list(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_bypass_list(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_bypass_list(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_proxy_bypass_list(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_proxy_bypass_list();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_proxy_bypass_list();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_proxy_bypass_list(std::string* obsolete_proxy_bypass_list);
+  private:
+  const std::string& _internal_obsolete_proxy_bypass_list() const;
+  void _internal_set_obsolete_proxy_bypass_list(const std::string& value);
+  std::string* _internal_mutable_obsolete_proxy_bypass_list();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_DeviceProxySettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_proxy_mode_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_proxy_server_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_proxy_pac_url_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_proxy_bypass_list_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CameraEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CameraEnabledProto) */ {
+ public:
+  CameraEnabledProto();
+  virtual ~CameraEnabledProto();
+
+  CameraEnabledProto(const CameraEnabledProto& from);
+  CameraEnabledProto(CameraEnabledProto&& from) noexcept
+    : CameraEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline CameraEnabledProto& operator=(const CameraEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CameraEnabledProto& operator=(CameraEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CameraEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CameraEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const CameraEnabledProto*>(
+               &_CameraEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    8;
+
+  friend void swap(CameraEnabledProto& a, CameraEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CameraEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CameraEnabledProto* New() const final {
+    return CreateMaybeMessage<CameraEnabledProto>(nullptr);
+  }
+
+  CameraEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CameraEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CameraEnabledProto& from);
+  void MergeFrom(const CameraEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CameraEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CameraEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCameraEnabledFieldNumber = 1,
+  };
+  // optional bool camera_enabled = 1;
+  bool has_camera_enabled() const;
+  private:
+  bool _internal_has_camera_enabled() const;
+  public:
+  void clear_camera_enabled();
+  bool camera_enabled() const;
+  void set_camera_enabled(bool value);
+  private:
+  bool _internal_camera_enabled() const;
+  void _internal_set_camera_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CameraEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool camera_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class MetricsEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.MetricsEnabledProto) */ {
+ public:
+  MetricsEnabledProto();
+  virtual ~MetricsEnabledProto();
+
+  MetricsEnabledProto(const MetricsEnabledProto& from);
+  MetricsEnabledProto(MetricsEnabledProto&& from) noexcept
+    : MetricsEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline MetricsEnabledProto& operator=(const MetricsEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline MetricsEnabledProto& operator=(MetricsEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const MetricsEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const MetricsEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const MetricsEnabledProto*>(
+               &_MetricsEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    9;
+
+  friend void swap(MetricsEnabledProto& a, MetricsEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(MetricsEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline MetricsEnabledProto* New() const final {
+    return CreateMaybeMessage<MetricsEnabledProto>(nullptr);
+  }
+
+  MetricsEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<MetricsEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const MetricsEnabledProto& from);
+  void MergeFrom(const MetricsEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(MetricsEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.MetricsEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMetricsEnabledFieldNumber = 1,
+  };
+  // optional bool metrics_enabled = 1;
+  bool has_metrics_enabled() const;
+  private:
+  bool _internal_has_metrics_enabled() const;
+  public:
+  void clear_metrics_enabled();
+  bool metrics_enabled() const;
+  void set_metrics_enabled(bool value);
+  private:
+  bool _internal_metrics_enabled() const;
+  void _internal_set_metrics_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.MetricsEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool metrics_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ReleaseChannelProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ReleaseChannelProto) */ {
+ public:
+  ReleaseChannelProto();
+  virtual ~ReleaseChannelProto();
+
+  ReleaseChannelProto(const ReleaseChannelProto& from);
+  ReleaseChannelProto(ReleaseChannelProto&& from) noexcept
+    : ReleaseChannelProto() {
+    *this = ::std::move(from);
+  }
+
+  inline ReleaseChannelProto& operator=(const ReleaseChannelProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ReleaseChannelProto& operator=(ReleaseChannelProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ReleaseChannelProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ReleaseChannelProto* internal_default_instance() {
+    return reinterpret_cast<const ReleaseChannelProto*>(
+               &_ReleaseChannelProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    10;
+
+  friend void swap(ReleaseChannelProto& a, ReleaseChannelProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ReleaseChannelProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ReleaseChannelProto* New() const final {
+    return CreateMaybeMessage<ReleaseChannelProto>(nullptr);
+  }
+
+  ReleaseChannelProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ReleaseChannelProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ReleaseChannelProto& from);
+  void MergeFrom(const ReleaseChannelProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ReleaseChannelProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ReleaseChannelProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kReleaseChannelFieldNumber = 1,
+    kReleaseLtsTagFieldNumber = 3,
+    kReleaseChannelDelegatedFieldNumber = 2,
+  };
+  // optional string release_channel = 1;
+  bool has_release_channel() const;
+  private:
+  bool _internal_has_release_channel() const;
+  public:
+  void clear_release_channel();
+  const std::string& release_channel() const;
+  void set_release_channel(const std::string& value);
+  void set_release_channel(std::string&& value);
+  void set_release_channel(const char* value);
+  void set_release_channel(const char* value, size_t size);
+  std::string* mutable_release_channel();
+  std::string* release_release_channel();
+  void set_allocated_release_channel(std::string* release_channel);
+  private:
+  const std::string& _internal_release_channel() const;
+  void _internal_set_release_channel(const std::string& value);
+  std::string* _internal_mutable_release_channel();
+  public:
+
+  // optional string release_lts_tag = 3;
+  bool has_release_lts_tag() const;
+  private:
+  bool _internal_has_release_lts_tag() const;
+  public:
+  void clear_release_lts_tag();
+  const std::string& release_lts_tag() const;
+  void set_release_lts_tag(const std::string& value);
+  void set_release_lts_tag(std::string&& value);
+  void set_release_lts_tag(const char* value);
+  void set_release_lts_tag(const char* value, size_t size);
+  std::string* mutable_release_lts_tag();
+  std::string* release_release_lts_tag();
+  void set_allocated_release_lts_tag(std::string* release_lts_tag);
+  private:
+  const std::string& _internal_release_lts_tag() const;
+  void _internal_set_release_lts_tag(const std::string& value);
+  std::string* _internal_mutable_release_lts_tag();
+  public:
+
+  // optional bool release_channel_delegated = 2;
+  bool has_release_channel_delegated() const;
+  private:
+  bool _internal_has_release_channel_delegated() const;
+  public:
+  void clear_release_channel_delegated();
+  bool release_channel_delegated() const;
+  void set_release_channel_delegated(bool value);
+  private:
+  bool _internal_release_channel_delegated() const;
+  void _internal_set_release_channel_delegated(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ReleaseChannelProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr release_channel_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr release_lts_tag_;
+  bool release_channel_delegated_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceOpenNetworkConfigurationProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceOpenNetworkConfigurationProto) */ {
+ public:
+  DeviceOpenNetworkConfigurationProto();
+  virtual ~DeviceOpenNetworkConfigurationProto();
+
+  DeviceOpenNetworkConfigurationProto(const DeviceOpenNetworkConfigurationProto& from);
+  DeviceOpenNetworkConfigurationProto(DeviceOpenNetworkConfigurationProto&& from) noexcept
+    : DeviceOpenNetworkConfigurationProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceOpenNetworkConfigurationProto& operator=(const DeviceOpenNetworkConfigurationProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceOpenNetworkConfigurationProto& operator=(DeviceOpenNetworkConfigurationProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceOpenNetworkConfigurationProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceOpenNetworkConfigurationProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceOpenNetworkConfigurationProto*>(
+               &_DeviceOpenNetworkConfigurationProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    11;
+
+  friend void swap(DeviceOpenNetworkConfigurationProto& a, DeviceOpenNetworkConfigurationProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceOpenNetworkConfigurationProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceOpenNetworkConfigurationProto* New() const final {
+    return CreateMaybeMessage<DeviceOpenNetworkConfigurationProto>(nullptr);
+  }
+
+  DeviceOpenNetworkConfigurationProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceOpenNetworkConfigurationProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceOpenNetworkConfigurationProto& from);
+  void MergeFrom(const DeviceOpenNetworkConfigurationProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceOpenNetworkConfigurationProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceOpenNetworkConfigurationProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOpenNetworkConfigurationFieldNumber = 1,
+  };
+  // optional string open_network_configuration = 1;
+  bool has_open_network_configuration() const;
+  private:
+  bool _internal_has_open_network_configuration() const;
+  public:
+  void clear_open_network_configuration();
+  const std::string& open_network_configuration() const;
+  void set_open_network_configuration(const std::string& value);
+  void set_open_network_configuration(std::string&& value);
+  void set_open_network_configuration(const char* value);
+  void set_open_network_configuration(const char* value, size_t size);
+  std::string* mutable_open_network_configuration();
+  std::string* release_open_network_configuration();
+  void set_allocated_open_network_configuration(std::string* open_network_configuration);
+  private:
+  const std::string& _internal_open_network_configuration() const;
+  void _internal_set_open_network_configuration(const std::string& value);
+  std::string* _internal_mutable_open_network_configuration();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceOpenNetworkConfigurationProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr open_network_configuration_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class NetworkHostnameProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.NetworkHostnameProto) */ {
+ public:
+  NetworkHostnameProto();
+  virtual ~NetworkHostnameProto();
+
+  NetworkHostnameProto(const NetworkHostnameProto& from);
+  NetworkHostnameProto(NetworkHostnameProto&& from) noexcept
+    : NetworkHostnameProto() {
+    *this = ::std::move(from);
+  }
+
+  inline NetworkHostnameProto& operator=(const NetworkHostnameProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline NetworkHostnameProto& operator=(NetworkHostnameProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const NetworkHostnameProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const NetworkHostnameProto* internal_default_instance() {
+    return reinterpret_cast<const NetworkHostnameProto*>(
+               &_NetworkHostnameProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    12;
+
+  friend void swap(NetworkHostnameProto& a, NetworkHostnameProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(NetworkHostnameProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline NetworkHostnameProto* New() const final {
+    return CreateMaybeMessage<NetworkHostnameProto>(nullptr);
+  }
+
+  NetworkHostnameProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<NetworkHostnameProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const NetworkHostnameProto& from);
+  void MergeFrom(const NetworkHostnameProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(NetworkHostnameProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.NetworkHostnameProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceHostnameTemplateFieldNumber = 1,
+  };
+  // optional string device_hostname_template = 1;
+  bool has_device_hostname_template() const;
+  private:
+  bool _internal_has_device_hostname_template() const;
+  public:
+  void clear_device_hostname_template();
+  const std::string& device_hostname_template() const;
+  void set_device_hostname_template(const std::string& value);
+  void set_device_hostname_template(std::string&& value);
+  void set_device_hostname_template(const char* value);
+  void set_device_hostname_template(const char* value, size_t size);
+  std::string* mutable_device_hostname_template();
+  std::string* release_device_hostname_template();
+  void set_allocated_device_hostname_template(std::string* device_hostname_template);
+  private:
+  const std::string& _internal_device_hostname_template() const;
+  void _internal_set_device_hostname_template(const std::string& value);
+  std::string* _internal_mutable_device_hostname_template();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.NetworkHostnameProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_hostname_template_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class HostnameUserConfigurableProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.HostnameUserConfigurableProto) */ {
+ public:
+  HostnameUserConfigurableProto();
+  virtual ~HostnameUserConfigurableProto();
+
+  HostnameUserConfigurableProto(const HostnameUserConfigurableProto& from);
+  HostnameUserConfigurableProto(HostnameUserConfigurableProto&& from) noexcept
+    : HostnameUserConfigurableProto() {
+    *this = ::std::move(from);
+  }
+
+  inline HostnameUserConfigurableProto& operator=(const HostnameUserConfigurableProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline HostnameUserConfigurableProto& operator=(HostnameUserConfigurableProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const HostnameUserConfigurableProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const HostnameUserConfigurableProto* internal_default_instance() {
+    return reinterpret_cast<const HostnameUserConfigurableProto*>(
+               &_HostnameUserConfigurableProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    13;
+
+  friend void swap(HostnameUserConfigurableProto& a, HostnameUserConfigurableProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(HostnameUserConfigurableProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline HostnameUserConfigurableProto* New() const final {
+    return CreateMaybeMessage<HostnameUserConfigurableProto>(nullptr);
+  }
+
+  HostnameUserConfigurableProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<HostnameUserConfigurableProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const HostnameUserConfigurableProto& from);
+  void MergeFrom(const HostnameUserConfigurableProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(HostnameUserConfigurableProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.HostnameUserConfigurableProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceHostnameUserConfigurableFieldNumber = 1,
+  };
+  // optional bool device_hostname_user_configurable = 1 [default = false];
+  bool has_device_hostname_user_configurable() const;
+  private:
+  bool _internal_has_device_hostname_user_configurable() const;
+  public:
+  void clear_device_hostname_user_configurable();
+  bool device_hostname_user_configurable() const;
+  void set_device_hostname_user_configurable(bool value);
+  private:
+  bool _internal_device_hostname_user_configurable() const;
+  void _internal_set_device_hostname_user_configurable(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.HostnameUserConfigurableProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool device_hostname_user_configurable_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceReportingProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceReportingProto) */ {
+ public:
+  DeviceReportingProto();
+  virtual ~DeviceReportingProto();
+
+  DeviceReportingProto(const DeviceReportingProto& from);
+  DeviceReportingProto(DeviceReportingProto&& from) noexcept
+    : DeviceReportingProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceReportingProto& operator=(const DeviceReportingProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceReportingProto& operator=(DeviceReportingProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceReportingProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceReportingProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceReportingProto*>(
+               &_DeviceReportingProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    14;
+
+  friend void swap(DeviceReportingProto& a, DeviceReportingProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceReportingProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceReportingProto* New() const final {
+    return CreateMaybeMessage<DeviceReportingProto>(nullptr);
+  }
+
+  DeviceReportingProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceReportingProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceReportingProto& from);
+  void MergeFrom(const DeviceReportingProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceReportingProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceReportingProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kReportLocationFieldNumber = 4,
+    kReportOsUpdateStatusFieldNumber = 10,
+    kReportRunningKioskAppFieldNumber = 11,
+    kReportPowerStatusFieldNumber = 12,
+    kReportStorageStatusFieldNumber = 13,
+    kReportBoardStatusFieldNumber = 14,
+    kReportCpuInfoFieldNumber = 15,
+    kReportGraphicsStatusFieldNumber = 16,
+    kReportCrashReportInfoFieldNumber = 17,
+    kReportTimezoneInfoFieldNumber = 18,
+    kReportMemoryInfoFieldNumber = 19,
+    kReportBacklightInfoFieldNumber = 20,
+    kReportAppInfoFieldNumber = 21,
+    kReportBluetoothInfoFieldNumber = 22,
+    kReportFanInfoFieldNumber = 23,
+    kReportVpdInfoFieldNumber = 24,
+    kReportSystemInfoFieldNumber = 25,
+    kReportPrintJobsFieldNumber = 26,
+    kReportLoginLogoutFieldNumber = 27,
+    kReportSecurityStatusFieldNumber = 31,
+    kReportCrdSessionsFieldNumber = 36,
+    kReportPeripheralsFieldNumber = 37,
+    kReportNetworkConfigurationFieldNumber = 29,
+    kReportNetworkStatusFieldNumber = 30,
+    kEnableGranularReportingFieldNumber = 32,
+    kReportVersionInfoFieldNumber = 1,
+    kReportActivityTimesFieldNumber = 2,
+    kReportBootModeFieldNumber = 3,
+    kReportNetworkInterfacesFieldNumber = 5,
+    kReportUsersFieldNumber = 6,
+    kReportHardwareStatusFieldNumber = 7,
+    kReportSessionStatusFieldNumber = 8,
+    kReportAudioStatusFieldNumber = 28,
+    kDeviceStatusFrequencyFieldNumber = 9,
+    kReportNetworkTelemetryCollectionRateMsFieldNumber = 33,
+    kReportNetworkTelemetryEventCheckingRateMsFieldNumber = 34,
+    kReportDeviceAudioStatusCheckingRateMsFieldNumber = 35,
+  };
+  // optional bool report_location = 4 [default = false];
+  bool has_report_location() const;
+  private:
+  bool _internal_has_report_location() const;
+  public:
+  void clear_report_location();
+  bool report_location() const;
+  void set_report_location(bool value);
+  private:
+  bool _internal_report_location() const;
+  void _internal_set_report_location(bool value);
+  public:
+
+  // optional bool report_os_update_status = 10 [default = false];
+  bool has_report_os_update_status() const;
+  private:
+  bool _internal_has_report_os_update_status() const;
+  public:
+  void clear_report_os_update_status();
+  bool report_os_update_status() const;
+  void set_report_os_update_status(bool value);
+  private:
+  bool _internal_report_os_update_status() const;
+  void _internal_set_report_os_update_status(bool value);
+  public:
+
+  // optional bool report_running_kiosk_app = 11 [default = false];
+  bool has_report_running_kiosk_app() const;
+  private:
+  bool _internal_has_report_running_kiosk_app() const;
+  public:
+  void clear_report_running_kiosk_app();
+  bool report_running_kiosk_app() const;
+  void set_report_running_kiosk_app(bool value);
+  private:
+  bool _internal_report_running_kiosk_app() const;
+  void _internal_set_report_running_kiosk_app(bool value);
+  public:
+
+  // optional bool report_power_status = 12 [default = false];
+  bool has_report_power_status() const;
+  private:
+  bool _internal_has_report_power_status() const;
+  public:
+  void clear_report_power_status();
+  bool report_power_status() const;
+  void set_report_power_status(bool value);
+  private:
+  bool _internal_report_power_status() const;
+  void _internal_set_report_power_status(bool value);
+  public:
+
+  // optional bool report_storage_status = 13 [default = false];
+  bool has_report_storage_status() const;
+  private:
+  bool _internal_has_report_storage_status() const;
+  public:
+  void clear_report_storage_status();
+  bool report_storage_status() const;
+  void set_report_storage_status(bool value);
+  private:
+  bool _internal_report_storage_status() const;
+  void _internal_set_report_storage_status(bool value);
+  public:
+
+  // optional bool report_board_status = 14 [default = false];
+  bool has_report_board_status() const;
+  private:
+  bool _internal_has_report_board_status() const;
+  public:
+  void clear_report_board_status();
+  bool report_board_status() const;
+  void set_report_board_status(bool value);
+  private:
+  bool _internal_report_board_status() const;
+  void _internal_set_report_board_status(bool value);
+  public:
+
+  // optional bool report_cpu_info = 15 [default = false];
+  bool has_report_cpu_info() const;
+  private:
+  bool _internal_has_report_cpu_info() const;
+  public:
+  void clear_report_cpu_info();
+  bool report_cpu_info() const;
+  void set_report_cpu_info(bool value);
+  private:
+  bool _internal_report_cpu_info() const;
+  void _internal_set_report_cpu_info(bool value);
+  public:
+
+  // optional bool report_graphics_status = 16 [default = false];
+  bool has_report_graphics_status() const;
+  private:
+  bool _internal_has_report_graphics_status() const;
+  public:
+  void clear_report_graphics_status();
+  bool report_graphics_status() const;
+  void set_report_graphics_status(bool value);
+  private:
+  bool _internal_report_graphics_status() const;
+  void _internal_set_report_graphics_status(bool value);
+  public:
+
+  // optional bool report_crash_report_info = 17 [default = false];
+  bool has_report_crash_report_info() const;
+  private:
+  bool _internal_has_report_crash_report_info() const;
+  public:
+  void clear_report_crash_report_info();
+  bool report_crash_report_info() const;
+  void set_report_crash_report_info(bool value);
+  private:
+  bool _internal_report_crash_report_info() const;
+  void _internal_set_report_crash_report_info(bool value);
+  public:
+
+  // optional bool report_timezone_info = 18 [default = false];
+  bool has_report_timezone_info() const;
+  private:
+  bool _internal_has_report_timezone_info() const;
+  public:
+  void clear_report_timezone_info();
+  bool report_timezone_info() const;
+  void set_report_timezone_info(bool value);
+  private:
+  bool _internal_report_timezone_info() const;
+  void _internal_set_report_timezone_info(bool value);
+  public:
+
+  // optional bool report_memory_info = 19 [default = false];
+  bool has_report_memory_info() const;
+  private:
+  bool _internal_has_report_memory_info() const;
+  public:
+  void clear_report_memory_info();
+  bool report_memory_info() const;
+  void set_report_memory_info(bool value);
+  private:
+  bool _internal_report_memory_info() const;
+  void _internal_set_report_memory_info(bool value);
+  public:
+
+  // optional bool report_backlight_info = 20 [default = false];
+  bool has_report_backlight_info() const;
+  private:
+  bool _internal_has_report_backlight_info() const;
+  public:
+  void clear_report_backlight_info();
+  bool report_backlight_info() const;
+  void set_report_backlight_info(bool value);
+  private:
+  bool _internal_report_backlight_info() const;
+  void _internal_set_report_backlight_info(bool value);
+  public:
+
+  // optional bool report_app_info = 21 [default = false];
+  bool has_report_app_info() const;
+  private:
+  bool _internal_has_report_app_info() const;
+  public:
+  void clear_report_app_info();
+  bool report_app_info() const;
+  void set_report_app_info(bool value);
+  private:
+  bool _internal_report_app_info() const;
+  void _internal_set_report_app_info(bool value);
+  public:
+
+  // optional bool report_bluetooth_info = 22 [default = false];
+  bool has_report_bluetooth_info() const;
+  private:
+  bool _internal_has_report_bluetooth_info() const;
+  public:
+  void clear_report_bluetooth_info();
+  bool report_bluetooth_info() const;
+  void set_report_bluetooth_info(bool value);
+  private:
+  bool _internal_report_bluetooth_info() const;
+  void _internal_set_report_bluetooth_info(bool value);
+  public:
+
+  // optional bool report_fan_info = 23 [default = false];
+  bool has_report_fan_info() const;
+  private:
+  bool _internal_has_report_fan_info() const;
+  public:
+  void clear_report_fan_info();
+  bool report_fan_info() const;
+  void set_report_fan_info(bool value);
+  private:
+  bool _internal_report_fan_info() const;
+  void _internal_set_report_fan_info(bool value);
+  public:
+
+  // optional bool report_vpd_info = 24 [default = false];
+  bool has_report_vpd_info() const;
+  private:
+  bool _internal_has_report_vpd_info() const;
+  public:
+  void clear_report_vpd_info();
+  bool report_vpd_info() const;
+  void set_report_vpd_info(bool value);
+  private:
+  bool _internal_report_vpd_info() const;
+  void _internal_set_report_vpd_info(bool value);
+  public:
+
+  // optional bool report_system_info = 25 [default = false];
+  bool has_report_system_info() const;
+  private:
+  bool _internal_has_report_system_info() const;
+  public:
+  void clear_report_system_info();
+  bool report_system_info() const;
+  void set_report_system_info(bool value);
+  private:
+  bool _internal_report_system_info() const;
+  void _internal_set_report_system_info(bool value);
+  public:
+
+  // optional bool report_print_jobs = 26 [default = false];
+  bool has_report_print_jobs() const;
+  private:
+  bool _internal_has_report_print_jobs() const;
+  public:
+  void clear_report_print_jobs();
+  bool report_print_jobs() const;
+  void set_report_print_jobs(bool value);
+  private:
+  bool _internal_report_print_jobs() const;
+  void _internal_set_report_print_jobs(bool value);
+  public:
+
+  // optional bool report_login_logout = 27 [default = false];
+  bool has_report_login_logout() const;
+  private:
+  bool _internal_has_report_login_logout() const;
+  public:
+  void clear_report_login_logout();
+  bool report_login_logout() const;
+  void set_report_login_logout(bool value);
+  private:
+  bool _internal_report_login_logout() const;
+  void _internal_set_report_login_logout(bool value);
+  public:
+
+  // optional bool report_security_status = 31 [default = false];
+  bool has_report_security_status() const;
+  private:
+  bool _internal_has_report_security_status() const;
+  public:
+  void clear_report_security_status();
+  bool report_security_status() const;
+  void set_report_security_status(bool value);
+  private:
+  bool _internal_report_security_status() const;
+  void _internal_set_report_security_status(bool value);
+  public:
+
+  // optional bool report_crd_sessions = 36 [default = false];
+  bool has_report_crd_sessions() const;
+  private:
+  bool _internal_has_report_crd_sessions() const;
+  public:
+  void clear_report_crd_sessions();
+  bool report_crd_sessions() const;
+  void set_report_crd_sessions(bool value);
+  private:
+  bool _internal_report_crd_sessions() const;
+  void _internal_set_report_crd_sessions(bool value);
+  public:
+
+  // optional bool report_peripherals = 37 [default = false];
+  bool has_report_peripherals() const;
+  private:
+  bool _internal_has_report_peripherals() const;
+  public:
+  void clear_report_peripherals();
+  bool report_peripherals() const;
+  void set_report_peripherals(bool value);
+  private:
+  bool _internal_report_peripherals() const;
+  void _internal_set_report_peripherals(bool value);
+  public:
+
+  // optional bool report_network_configuration = 29 [default = true];
+  bool has_report_network_configuration() const;
+  private:
+  bool _internal_has_report_network_configuration() const;
+  public:
+  void clear_report_network_configuration();
+  bool report_network_configuration() const;
+  void set_report_network_configuration(bool value);
+  private:
+  bool _internal_report_network_configuration() const;
+  void _internal_set_report_network_configuration(bool value);
+  public:
+
+  // optional bool report_network_status = 30 [default = true];
+  bool has_report_network_status() const;
+  private:
+  bool _internal_has_report_network_status() const;
+  public:
+  void clear_report_network_status();
+  bool report_network_status() const;
+  void set_report_network_status(bool value);
+  private:
+  bool _internal_report_network_status() const;
+  void _internal_set_report_network_status(bool value);
+  public:
+
+  // optional bool enable_granular_reporting = 32 [default = true];
+  bool has_enable_granular_reporting() const;
+  private:
+  bool _internal_has_enable_granular_reporting() const;
+  public:
+  void clear_enable_granular_reporting();
+  bool enable_granular_reporting() const;
+  void set_enable_granular_reporting(bool value);
+  private:
+  bool _internal_enable_granular_reporting() const;
+  void _internal_set_enable_granular_reporting(bool value);
+  public:
+
+  // optional bool report_version_info = 1 [default = true];
+  bool has_report_version_info() const;
+  private:
+  bool _internal_has_report_version_info() const;
+  public:
+  void clear_report_version_info();
+  bool report_version_info() const;
+  void set_report_version_info(bool value);
+  private:
+  bool _internal_report_version_info() const;
+  void _internal_set_report_version_info(bool value);
+  public:
+
+  // optional bool report_activity_times = 2 [default = true];
+  bool has_report_activity_times() const;
+  private:
+  bool _internal_has_report_activity_times() const;
+  public:
+  void clear_report_activity_times();
+  bool report_activity_times() const;
+  void set_report_activity_times(bool value);
+  private:
+  bool _internal_report_activity_times() const;
+  void _internal_set_report_activity_times(bool value);
+  public:
+
+  // optional bool report_boot_mode = 3 [default = true];
+  bool has_report_boot_mode() const;
+  private:
+  bool _internal_has_report_boot_mode() const;
+  public:
+  void clear_report_boot_mode();
+  bool report_boot_mode() const;
+  void set_report_boot_mode(bool value);
+  private:
+  bool _internal_report_boot_mode() const;
+  void _internal_set_report_boot_mode(bool value);
+  public:
+
+  // optional bool report_network_interfaces = 5 [default = true];
+  bool has_report_network_interfaces() const;
+  private:
+  bool _internal_has_report_network_interfaces() const;
+  public:
+  void clear_report_network_interfaces();
+  bool report_network_interfaces() const;
+  void set_report_network_interfaces(bool value);
+  private:
+  bool _internal_report_network_interfaces() const;
+  void _internal_set_report_network_interfaces(bool value);
+  public:
+
+  // optional bool report_users = 6 [default = true];
+  bool has_report_users() const;
+  private:
+  bool _internal_has_report_users() const;
+  public:
+  void clear_report_users();
+  bool report_users() const;
+  void set_report_users(bool value);
+  private:
+  bool _internal_report_users() const;
+  void _internal_set_report_users(bool value);
+  public:
+
+  // optional bool report_hardware_status = 7 [default = true];
+  bool has_report_hardware_status() const;
+  private:
+  bool _internal_has_report_hardware_status() const;
+  public:
+  void clear_report_hardware_status();
+  bool report_hardware_status() const;
+  void set_report_hardware_status(bool value);
+  private:
+  bool _internal_report_hardware_status() const;
+  void _internal_set_report_hardware_status(bool value);
+  public:
+
+  // optional bool report_session_status = 8 [default = true];
+  bool has_report_session_status() const;
+  private:
+  bool _internal_has_report_session_status() const;
+  public:
+  void clear_report_session_status();
+  bool report_session_status() const;
+  void set_report_session_status(bool value);
+  private:
+  bool _internal_report_session_status() const;
+  void _internal_set_report_session_status(bool value);
+  public:
+
+  // optional bool report_audio_status = 28 [default = true];
+  bool has_report_audio_status() const;
+  private:
+  bool _internal_has_report_audio_status() const;
+  public:
+  void clear_report_audio_status();
+  bool report_audio_status() const;
+  void set_report_audio_status(bool value);
+  private:
+  bool _internal_report_audio_status() const;
+  void _internal_set_report_audio_status(bool value);
+  public:
+
+  // optional int64 device_status_frequency = 9 [default = 10800000];
+  bool has_device_status_frequency() const;
+  private:
+  bool _internal_has_device_status_frequency() const;
+  public:
+  void clear_device_status_frequency();
+  ::PROTOBUF_NAMESPACE_ID::int64 device_status_frequency() const;
+  void set_device_status_frequency(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_device_status_frequency() const;
+  void _internal_set_device_status_frequency(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 report_network_telemetry_collection_rate_ms = 33 [default = 3600000];
+  bool has_report_network_telemetry_collection_rate_ms() const;
+  private:
+  bool _internal_has_report_network_telemetry_collection_rate_ms() const;
+  public:
+  void clear_report_network_telemetry_collection_rate_ms();
+  ::PROTOBUF_NAMESPACE_ID::int64 report_network_telemetry_collection_rate_ms() const;
+  void set_report_network_telemetry_collection_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_report_network_telemetry_collection_rate_ms() const;
+  void _internal_set_report_network_telemetry_collection_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 report_network_telemetry_event_checking_rate_ms = 34 [default = 600000];
+  bool has_report_network_telemetry_event_checking_rate_ms() const;
+  private:
+  bool _internal_has_report_network_telemetry_event_checking_rate_ms() const;
+  public:
+  void clear_report_network_telemetry_event_checking_rate_ms();
+  ::PROTOBUF_NAMESPACE_ID::int64 report_network_telemetry_event_checking_rate_ms() const;
+  void set_report_network_telemetry_event_checking_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_report_network_telemetry_event_checking_rate_ms() const;
+  void _internal_set_report_network_telemetry_event_checking_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 report_device_audio_status_checking_rate_ms = 35 [default = 600000];
+  bool has_report_device_audio_status_checking_rate_ms() const;
+  private:
+  bool _internal_has_report_device_audio_status_checking_rate_ms() const;
+  public:
+  void clear_report_device_audio_status_checking_rate_ms();
+  ::PROTOBUF_NAMESPACE_ID::int64 report_device_audio_status_checking_rate_ms() const;
+  void set_report_device_audio_status_checking_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_report_device_audio_status_checking_rate_ms() const;
+  void _internal_set_report_device_audio_status_checking_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceReportingProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool report_location_;
+  bool report_os_update_status_;
+  bool report_running_kiosk_app_;
+  bool report_power_status_;
+  bool report_storage_status_;
+  bool report_board_status_;
+  bool report_cpu_info_;
+  bool report_graphics_status_;
+  bool report_crash_report_info_;
+  bool report_timezone_info_;
+  bool report_memory_info_;
+  bool report_backlight_info_;
+  bool report_app_info_;
+  bool report_bluetooth_info_;
+  bool report_fan_info_;
+  bool report_vpd_info_;
+  bool report_system_info_;
+  bool report_print_jobs_;
+  bool report_login_logout_;
+  bool report_security_status_;
+  bool report_crd_sessions_;
+  bool report_peripherals_;
+  bool report_network_configuration_;
+  bool report_network_status_;
+  bool enable_granular_reporting_;
+  bool report_version_info_;
+  bool report_activity_times_;
+  bool report_boot_mode_;
+  bool report_network_interfaces_;
+  bool report_users_;
+  bool report_hardware_status_;
+  bool report_session_status_;
+  bool report_audio_status_;
+  ::PROTOBUF_NAMESPACE_ID::int64 device_status_frequency_;
+  ::PROTOBUF_NAMESPACE_ID::int64 report_network_telemetry_collection_rate_ms_;
+  ::PROTOBUF_NAMESPACE_ID::int64 report_network_telemetry_event_checking_rate_ms_;
+  ::PROTOBUF_NAMESPACE_ID::int64 report_device_audio_status_checking_rate_ms_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class EphemeralUsersEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.EphemeralUsersEnabledProto) */ {
+ public:
+  EphemeralUsersEnabledProto();
+  virtual ~EphemeralUsersEnabledProto();
+
+  EphemeralUsersEnabledProto(const EphemeralUsersEnabledProto& from);
+  EphemeralUsersEnabledProto(EphemeralUsersEnabledProto&& from) noexcept
+    : EphemeralUsersEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline EphemeralUsersEnabledProto& operator=(const EphemeralUsersEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline EphemeralUsersEnabledProto& operator=(EphemeralUsersEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const EphemeralUsersEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const EphemeralUsersEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const EphemeralUsersEnabledProto*>(
+               &_EphemeralUsersEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    15;
+
+  friend void swap(EphemeralUsersEnabledProto& a, EphemeralUsersEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(EphemeralUsersEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline EphemeralUsersEnabledProto* New() const final {
+    return CreateMaybeMessage<EphemeralUsersEnabledProto>(nullptr);
+  }
+
+  EphemeralUsersEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<EphemeralUsersEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const EphemeralUsersEnabledProto& from);
+  void MergeFrom(const EphemeralUsersEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(EphemeralUsersEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.EphemeralUsersEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEphemeralUsersEnabledFieldNumber = 1,
+  };
+  // optional bool ephemeral_users_enabled = 1;
+  bool has_ephemeral_users_enabled() const;
+  private:
+  bool _internal_has_ephemeral_users_enabled() const;
+  public:
+  void clear_ephemeral_users_enabled();
+  bool ephemeral_users_enabled() const;
+  void set_ephemeral_users_enabled(bool value);
+  private:
+  bool _internal_ephemeral_users_enabled() const;
+  void _internal_set_ephemeral_users_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.EphemeralUsersEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool ephemeral_users_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceKeylockerForStorageEncryptionEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto) */ {
+ public:
+  DeviceKeylockerForStorageEncryptionEnabledProto();
+  virtual ~DeviceKeylockerForStorageEncryptionEnabledProto();
+
+  DeviceKeylockerForStorageEncryptionEnabledProto(const DeviceKeylockerForStorageEncryptionEnabledProto& from);
+  DeviceKeylockerForStorageEncryptionEnabledProto(DeviceKeylockerForStorageEncryptionEnabledProto&& from) noexcept
+    : DeviceKeylockerForStorageEncryptionEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceKeylockerForStorageEncryptionEnabledProto& operator=(const DeviceKeylockerForStorageEncryptionEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceKeylockerForStorageEncryptionEnabledProto& operator=(DeviceKeylockerForStorageEncryptionEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceKeylockerForStorageEncryptionEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceKeylockerForStorageEncryptionEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceKeylockerForStorageEncryptionEnabledProto*>(
+               &_DeviceKeylockerForStorageEncryptionEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    16;
+
+  friend void swap(DeviceKeylockerForStorageEncryptionEnabledProto& a, DeviceKeylockerForStorageEncryptionEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceKeylockerForStorageEncryptionEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceKeylockerForStorageEncryptionEnabledProto* New() const final {
+    return CreateMaybeMessage<DeviceKeylockerForStorageEncryptionEnabledProto>(nullptr);
+  }
+
+  DeviceKeylockerForStorageEncryptionEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceKeylockerForStorageEncryptionEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceKeylockerForStorageEncryptionEnabledProto& from);
+  void MergeFrom(const DeviceKeylockerForStorageEncryptionEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceKeylockerForStorageEncryptionEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1;
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_AppPackEntryProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_AppPackEntryProto) */ {
+ public:
+  OBSOLETE_AppPackEntryProto();
+  virtual ~OBSOLETE_AppPackEntryProto();
+
+  OBSOLETE_AppPackEntryProto(const OBSOLETE_AppPackEntryProto& from);
+  OBSOLETE_AppPackEntryProto(OBSOLETE_AppPackEntryProto&& from) noexcept
+    : OBSOLETE_AppPackEntryProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_AppPackEntryProto& operator=(const OBSOLETE_AppPackEntryProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_AppPackEntryProto& operator=(OBSOLETE_AppPackEntryProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_AppPackEntryProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_AppPackEntryProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_AppPackEntryProto*>(
+               &_OBSOLETE_AppPackEntryProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    17;
+
+  friend void swap(OBSOLETE_AppPackEntryProto& a, OBSOLETE_AppPackEntryProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_AppPackEntryProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_AppPackEntryProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_AppPackEntryProto>(nullptr);
+  }
+
+  OBSOLETE_AppPackEntryProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_AppPackEntryProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_AppPackEntryProto& from);
+  void MergeFrom(const OBSOLETE_AppPackEntryProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_AppPackEntryProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_AppPackEntryProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEExtensionIdFieldNumber = 1,
+    kOBSOLETEUpdateUrlFieldNumber = 2,
+    kOBSOLETEOnlineOnlyFieldNumber = 3,
+  };
+  // optional string OBSOLETE_extension_id = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_extension_id() const;
+  private:
+  bool _internal_has_obsolete_extension_id() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_extension_id();
+  PROTOBUF_DEPRECATED const std::string& obsolete_extension_id() const;
+  PROTOBUF_DEPRECATED void set_obsolete_extension_id(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_extension_id(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_extension_id(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_extension_id(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_extension_id();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_extension_id();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_extension_id(std::string* obsolete_extension_id);
+  private:
+  const std::string& _internal_obsolete_extension_id() const;
+  void _internal_set_obsolete_extension_id(const std::string& value);
+  std::string* _internal_mutable_obsolete_extension_id();
+  public:
+
+  // optional string OBSOLETE_update_url = 2 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_update_url() const;
+  private:
+  bool _internal_has_obsolete_update_url() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_update_url();
+  PROTOBUF_DEPRECATED const std::string& obsolete_update_url() const;
+  PROTOBUF_DEPRECATED void set_obsolete_update_url(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_update_url(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_update_url(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_update_url(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_update_url();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_update_url();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_update_url(std::string* obsolete_update_url);
+  private:
+  const std::string& _internal_obsolete_update_url() const;
+  void _internal_set_obsolete_update_url(const std::string& value);
+  std::string* _internal_mutable_obsolete_update_url();
+  public:
+
+  // optional bool OBSOLETE_online_only = 3 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_online_only() const;
+  private:
+  bool _internal_has_obsolete_online_only() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_online_only();
+  PROTOBUF_DEPRECATED bool obsolete_online_only() const;
+  PROTOBUF_DEPRECATED void set_obsolete_online_only(bool value);
+  private:
+  bool _internal_obsolete_online_only() const;
+  void _internal_set_obsolete_online_only(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_AppPackEntryProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_extension_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_update_url_;
+  bool obsolete_online_only_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_AppPackProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_AppPackProto) */ {
+ public:
+  OBSOLETE_AppPackProto();
+  virtual ~OBSOLETE_AppPackProto();
+
+  OBSOLETE_AppPackProto(const OBSOLETE_AppPackProto& from);
+  OBSOLETE_AppPackProto(OBSOLETE_AppPackProto&& from) noexcept
+    : OBSOLETE_AppPackProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_AppPackProto& operator=(const OBSOLETE_AppPackProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_AppPackProto& operator=(OBSOLETE_AppPackProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_AppPackProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_AppPackProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_AppPackProto*>(
+               &_OBSOLETE_AppPackProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    18;
+
+  friend void swap(OBSOLETE_AppPackProto& a, OBSOLETE_AppPackProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_AppPackProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_AppPackProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_AppPackProto>(nullptr);
+  }
+
+  OBSOLETE_AppPackProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_AppPackProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_AppPackProto& from);
+  void MergeFrom(const OBSOLETE_AppPackProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_AppPackProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_AppPackProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAppPackFieldNumber = 1,
+  };
+  // repeated .enterprise_management.OBSOLETE_AppPackEntryProto app_pack = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED int app_pack_size() const;
+  private:
+  int _internal_app_pack_size() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_app_pack();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_AppPackEntryProto* mutable_app_pack(int index);
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::OBSOLETE_AppPackEntryProto >*
+      mutable_app_pack();
+  private:
+  const ::enterprise_management::OBSOLETE_AppPackEntryProto& _internal_app_pack(int index) const;
+  ::enterprise_management::OBSOLETE_AppPackEntryProto* _internal_add_app_pack();
+  public:
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_AppPackEntryProto& app_pack(int index) const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_AppPackEntryProto* add_app_pack();
+  PROTOBUF_DEPRECATED const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::OBSOLETE_AppPackEntryProto >&
+      app_pack() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_AppPackProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::OBSOLETE_AppPackEntryProto > app_pack_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_PinnedAppsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_PinnedAppsProto) */ {
+ public:
+  OBSOLETE_PinnedAppsProto();
+  virtual ~OBSOLETE_PinnedAppsProto();
+
+  OBSOLETE_PinnedAppsProto(const OBSOLETE_PinnedAppsProto& from);
+  OBSOLETE_PinnedAppsProto(OBSOLETE_PinnedAppsProto&& from) noexcept
+    : OBSOLETE_PinnedAppsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_PinnedAppsProto& operator=(const OBSOLETE_PinnedAppsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_PinnedAppsProto& operator=(OBSOLETE_PinnedAppsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_PinnedAppsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_PinnedAppsProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_PinnedAppsProto*>(
+               &_OBSOLETE_PinnedAppsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    19;
+
+  friend void swap(OBSOLETE_PinnedAppsProto& a, OBSOLETE_PinnedAppsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_PinnedAppsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_PinnedAppsProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_PinnedAppsProto>(nullptr);
+  }
+
+  OBSOLETE_PinnedAppsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_PinnedAppsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_PinnedAppsProto& from);
+  void MergeFrom(const OBSOLETE_PinnedAppsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_PinnedAppsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_PinnedAppsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEAppIdFieldNumber = 1,
+  };
+  // repeated string OBSOLETE_app_id = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED int obsolete_app_id_size() const;
+  private:
+  int _internal_obsolete_app_id_size() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_app_id();
+  PROTOBUF_DEPRECATED const std::string& obsolete_app_id(int index) const;
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_app_id(int index);
+  PROTOBUF_DEPRECATED void set_obsolete_app_id(int index, const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_app_id(int index, std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_app_id(int index, const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_app_id(int index, const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* add_obsolete_app_id();
+  PROTOBUF_DEPRECATED void add_obsolete_app_id(const std::string& value);
+  PROTOBUF_DEPRECATED void add_obsolete_app_id(std::string&& value);
+  PROTOBUF_DEPRECATED void add_obsolete_app_id(const char* value);
+  PROTOBUF_DEPRECATED void add_obsolete_app_id(const char* value, size_t size);
+  PROTOBUF_DEPRECATED const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& obsolete_app_id() const;
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_obsolete_app_id();
+  private:
+  const std::string& _internal_obsolete_app_id(int index) const;
+  std::string* _internal_add_obsolete_app_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_PinnedAppsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> obsolete_app_id_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_ForcedLogoutTimeoutsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto) */ {
+ public:
+  OBSOLETE_ForcedLogoutTimeoutsProto();
+  virtual ~OBSOLETE_ForcedLogoutTimeoutsProto();
+
+  OBSOLETE_ForcedLogoutTimeoutsProto(const OBSOLETE_ForcedLogoutTimeoutsProto& from);
+  OBSOLETE_ForcedLogoutTimeoutsProto(OBSOLETE_ForcedLogoutTimeoutsProto&& from) noexcept
+    : OBSOLETE_ForcedLogoutTimeoutsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_ForcedLogoutTimeoutsProto& operator=(const OBSOLETE_ForcedLogoutTimeoutsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_ForcedLogoutTimeoutsProto& operator=(OBSOLETE_ForcedLogoutTimeoutsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_ForcedLogoutTimeoutsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_ForcedLogoutTimeoutsProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_ForcedLogoutTimeoutsProto*>(
+               &_OBSOLETE_ForcedLogoutTimeoutsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    20;
+
+  friend void swap(OBSOLETE_ForcedLogoutTimeoutsProto& a, OBSOLETE_ForcedLogoutTimeoutsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_ForcedLogoutTimeoutsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_ForcedLogoutTimeoutsProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_ForcedLogoutTimeoutsProto>(nullptr);
+  }
+
+  OBSOLETE_ForcedLogoutTimeoutsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_ForcedLogoutTimeoutsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_ForcedLogoutTimeoutsProto& from);
+  void MergeFrom(const OBSOLETE_ForcedLogoutTimeoutsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_ForcedLogoutTimeoutsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEIdleLogoutTimeoutFieldNumber = 1,
+    kOBSOLETEIdleLogoutWarningDurationFieldNumber = 2,
+  };
+  // optional int64 OBSOLETE_idle_logout_timeout = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_idle_logout_timeout() const;
+  private:
+  bool _internal_has_obsolete_idle_logout_timeout() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_idle_logout_timeout();
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::int64 obsolete_idle_logout_timeout() const;
+  PROTOBUF_DEPRECATED void set_obsolete_idle_logout_timeout(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_obsolete_idle_logout_timeout() const;
+  void _internal_set_obsolete_idle_logout_timeout(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 OBSOLETE_idle_logout_warning_duration = 2 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_idle_logout_warning_duration() const;
+  private:
+  bool _internal_has_obsolete_idle_logout_warning_duration() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_idle_logout_warning_duration();
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::int64 obsolete_idle_logout_warning_duration() const;
+  PROTOBUF_DEPRECATED void set_obsolete_idle_logout_warning_duration(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_obsolete_idle_logout_warning_duration() const;
+  void _internal_set_obsolete_idle_logout_warning_duration(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 obsolete_idle_logout_timeout_;
+  ::PROTOBUF_NAMESPACE_ID::int64 obsolete_idle_logout_warning_duration_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_ScreenSaverProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_ScreenSaverProto) */ {
+ public:
+  OBSOLETE_ScreenSaverProto();
+  virtual ~OBSOLETE_ScreenSaverProto();
+
+  OBSOLETE_ScreenSaverProto(const OBSOLETE_ScreenSaverProto& from);
+  OBSOLETE_ScreenSaverProto(OBSOLETE_ScreenSaverProto&& from) noexcept
+    : OBSOLETE_ScreenSaverProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_ScreenSaverProto& operator=(const OBSOLETE_ScreenSaverProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_ScreenSaverProto& operator=(OBSOLETE_ScreenSaverProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_ScreenSaverProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_ScreenSaverProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_ScreenSaverProto*>(
+               &_OBSOLETE_ScreenSaverProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    21;
+
+  friend void swap(OBSOLETE_ScreenSaverProto& a, OBSOLETE_ScreenSaverProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_ScreenSaverProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_ScreenSaverProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_ScreenSaverProto>(nullptr);
+  }
+
+  OBSOLETE_ScreenSaverProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_ScreenSaverProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_ScreenSaverProto& from);
+  void MergeFrom(const OBSOLETE_ScreenSaverProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_ScreenSaverProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_ScreenSaverProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEScreenSaverExtensionIdFieldNumber = 1,
+    kOBSOLETEScreenSaverTimeoutFieldNumber = 2,
+  };
+  // optional string OBSOLETE_screen_saver_extension_id = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_screen_saver_extension_id() const;
+  private:
+  bool _internal_has_obsolete_screen_saver_extension_id() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_screen_saver_extension_id();
+  PROTOBUF_DEPRECATED const std::string& obsolete_screen_saver_extension_id() const;
+  PROTOBUF_DEPRECATED void set_obsolete_screen_saver_extension_id(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_screen_saver_extension_id(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_screen_saver_extension_id(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_screen_saver_extension_id(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_screen_saver_extension_id();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_screen_saver_extension_id();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_screen_saver_extension_id(std::string* obsolete_screen_saver_extension_id);
+  private:
+  const std::string& _internal_obsolete_screen_saver_extension_id() const;
+  void _internal_set_obsolete_screen_saver_extension_id(const std::string& value);
+  std::string* _internal_mutable_obsolete_screen_saver_extension_id();
+  public:
+
+  // optional int64 OBSOLETE_screen_saver_timeout = 2 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_screen_saver_timeout() const;
+  private:
+  bool _internal_has_obsolete_screen_saver_timeout() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_screen_saver_timeout();
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::int64 obsolete_screen_saver_timeout() const;
+  PROTOBUF_DEPRECATED void set_obsolete_screen_saver_timeout(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_obsolete_screen_saver_timeout() const;
+  void _internal_set_obsolete_screen_saver_timeout(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_ScreenSaverProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_screen_saver_extension_id_;
+  ::PROTOBUF_NAMESPACE_ID::int64 obsolete_screen_saver_timeout_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AutoUpdateSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AutoUpdateSettingsProto) */ {
+ public:
+  AutoUpdateSettingsProto();
+  virtual ~AutoUpdateSettingsProto();
+
+  AutoUpdateSettingsProto(const AutoUpdateSettingsProto& from);
+  AutoUpdateSettingsProto(AutoUpdateSettingsProto&& from) noexcept
+    : AutoUpdateSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AutoUpdateSettingsProto& operator=(const AutoUpdateSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AutoUpdateSettingsProto& operator=(AutoUpdateSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AutoUpdateSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AutoUpdateSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const AutoUpdateSettingsProto*>(
+               &_AutoUpdateSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    22;
+
+  friend void swap(AutoUpdateSettingsProto& a, AutoUpdateSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AutoUpdateSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AutoUpdateSettingsProto* New() const final {
+    return CreateMaybeMessage<AutoUpdateSettingsProto>(nullptr);
+  }
+
+  AutoUpdateSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AutoUpdateSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AutoUpdateSettingsProto& from);
+  void MergeFrom(const AutoUpdateSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AutoUpdateSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AutoUpdateSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef AutoUpdateSettingsProto_ConnectionType ConnectionType;
+  static constexpr ConnectionType CONNECTION_TYPE_ETHERNET =
+    AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_ETHERNET;
+  static constexpr ConnectionType CONNECTION_TYPE_WIFI =
+    AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_WIFI;
+  static constexpr ConnectionType CONNECTION_TYPE_WIMAX =
+    AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_WIMAX;
+  static constexpr ConnectionType CONNECTION_TYPE_BLUETOOTH =
+    AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_BLUETOOTH;
+  static constexpr ConnectionType CONNECTION_TYPE_CELLULAR =
+    AutoUpdateSettingsProto_ConnectionType_CONNECTION_TYPE_CELLULAR;
+  static inline bool ConnectionType_IsValid(int value) {
+    return AutoUpdateSettingsProto_ConnectionType_IsValid(value);
+  }
+  static constexpr ConnectionType ConnectionType_MIN =
+    AutoUpdateSettingsProto_ConnectionType_ConnectionType_MIN;
+  static constexpr ConnectionType ConnectionType_MAX =
+    AutoUpdateSettingsProto_ConnectionType_ConnectionType_MAX;
+  static constexpr int ConnectionType_ARRAYSIZE =
+    AutoUpdateSettingsProto_ConnectionType_ConnectionType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ConnectionType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ConnectionType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ConnectionType_Name.");
+    return AutoUpdateSettingsProto_ConnectionType_Name(enum_t_value);
+  }
+  static inline bool ConnectionType_Parse(const std::string& name,
+      ConnectionType* value) {
+    return AutoUpdateSettingsProto_ConnectionType_Parse(name, value);
+  }
+
+  typedef AutoUpdateSettingsProto_RollbackToTargetVersion RollbackToTargetVersion;
+  static constexpr RollbackToTargetVersion ROLLBACK_UNSPECIFIED =
+    AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_UNSPECIFIED;
+  static constexpr RollbackToTargetVersion ROLLBACK_DISABLED =
+    AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_DISABLED;
+  static constexpr RollbackToTargetVersion ROLLBACK_AND_POWERWASH =
+    AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_AND_POWERWASH;
+  static constexpr RollbackToTargetVersion ROLLBACK_AND_RESTORE_IF_POSSIBLE =
+    AutoUpdateSettingsProto_RollbackToTargetVersion_ROLLBACK_AND_RESTORE_IF_POSSIBLE;
+  static inline bool RollbackToTargetVersion_IsValid(int value) {
+    return AutoUpdateSettingsProto_RollbackToTargetVersion_IsValid(value);
+  }
+  static constexpr RollbackToTargetVersion RollbackToTargetVersion_MIN =
+    AutoUpdateSettingsProto_RollbackToTargetVersion_RollbackToTargetVersion_MIN;
+  static constexpr RollbackToTargetVersion RollbackToTargetVersion_MAX =
+    AutoUpdateSettingsProto_RollbackToTargetVersion_RollbackToTargetVersion_MAX;
+  static constexpr int RollbackToTargetVersion_ARRAYSIZE =
+    AutoUpdateSettingsProto_RollbackToTargetVersion_RollbackToTargetVersion_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& RollbackToTargetVersion_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, RollbackToTargetVersion>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function RollbackToTargetVersion_Name.");
+    return AutoUpdateSettingsProto_RollbackToTargetVersion_Name(enum_t_value);
+  }
+  static inline bool RollbackToTargetVersion_Parse(const std::string& name,
+      RollbackToTargetVersion* value) {
+    return AutoUpdateSettingsProto_RollbackToTargetVersion_Parse(name, value);
+  }
+
+  typedef AutoUpdateSettingsProto_ChannelDowngradeBehavior ChannelDowngradeBehavior;
+  static constexpr ChannelDowngradeBehavior CHANNEL_DOWNGRADE_BEHAVIOR_UNSPECIFIED =
+    AutoUpdateSettingsProto_ChannelDowngradeBehavior_CHANNEL_DOWNGRADE_BEHAVIOR_UNSPECIFIED;
+  static constexpr ChannelDowngradeBehavior WAIT_FOR_VERSION_CATCH_UP =
+    AutoUpdateSettingsProto_ChannelDowngradeBehavior_WAIT_FOR_VERSION_CATCH_UP;
+  static constexpr ChannelDowngradeBehavior ROLLBACK =
+    AutoUpdateSettingsProto_ChannelDowngradeBehavior_ROLLBACK;
+  static constexpr ChannelDowngradeBehavior ALLOW_USER_TO_CONFIGURE =
+    AutoUpdateSettingsProto_ChannelDowngradeBehavior_ALLOW_USER_TO_CONFIGURE;
+  static inline bool ChannelDowngradeBehavior_IsValid(int value) {
+    return AutoUpdateSettingsProto_ChannelDowngradeBehavior_IsValid(value);
+  }
+  static constexpr ChannelDowngradeBehavior ChannelDowngradeBehavior_MIN =
+    AutoUpdateSettingsProto_ChannelDowngradeBehavior_ChannelDowngradeBehavior_MIN;
+  static constexpr ChannelDowngradeBehavior ChannelDowngradeBehavior_MAX =
+    AutoUpdateSettingsProto_ChannelDowngradeBehavior_ChannelDowngradeBehavior_MAX;
+  static constexpr int ChannelDowngradeBehavior_ARRAYSIZE =
+    AutoUpdateSettingsProto_ChannelDowngradeBehavior_ChannelDowngradeBehavior_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ChannelDowngradeBehavior_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ChannelDowngradeBehavior>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ChannelDowngradeBehavior_Name.");
+    return AutoUpdateSettingsProto_ChannelDowngradeBehavior_Name(enum_t_value);
+  }
+  static inline bool ChannelDowngradeBehavior_Parse(const std::string& name,
+      ChannelDowngradeBehavior* value) {
+    return AutoUpdateSettingsProto_ChannelDowngradeBehavior_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowedConnectionTypesFieldNumber = 5,
+    kTargetVersionPrefixFieldNumber = 2,
+    kTargetVersionDisplayNameFieldNumber = 3,
+    kDisallowedTimeIntervalsFieldNumber = 12,
+    kStagingScheduleFieldNumber = 14,
+    kDeviceQuickFixBuildTokenFieldNumber = 15,
+    kTargetVersionSelectorFieldNumber = 17,
+    kScatterFactorInSecondsFieldNumber = 4,
+    kUpdateDisabledFieldNumber = 1,
+    kOBSOLETERebootAfterUpdateFieldNumber = 6,
+    kHttpDownloadsEnabledFieldNumber = 7,
+    kRebootAfterUpdateFieldNumber = 8,
+    kP2PEnabledFieldNumber = 9,
+    kRollbackAllowedMilestonesFieldNumber = 11,
+    kRollbackToTargetVersionFieldNumber = 10,
+    kChannelDowngradeBehaviorFieldNumber = 16,
+  };
+  // repeated .enterprise_management.AutoUpdateSettingsProto.ConnectionType allowed_connection_types = 5;
+  int allowed_connection_types_size() const;
+  private:
+  int _internal_allowed_connection_types_size() const;
+  public:
+  void clear_allowed_connection_types();
+  private:
+  ::enterprise_management::AutoUpdateSettingsProto_ConnectionType _internal_allowed_connection_types(int index) const;
+  void _internal_add_allowed_connection_types(::enterprise_management::AutoUpdateSettingsProto_ConnectionType value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_allowed_connection_types();
+  public:
+  ::enterprise_management::AutoUpdateSettingsProto_ConnectionType allowed_connection_types(int index) const;
+  void set_allowed_connection_types(int index, ::enterprise_management::AutoUpdateSettingsProto_ConnectionType value);
+  void add_allowed_connection_types(::enterprise_management::AutoUpdateSettingsProto_ConnectionType value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& allowed_connection_types() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_allowed_connection_types();
+
+  // optional string target_version_prefix = 2;
+  bool has_target_version_prefix() const;
+  private:
+  bool _internal_has_target_version_prefix() const;
+  public:
+  void clear_target_version_prefix();
+  const std::string& target_version_prefix() const;
+  void set_target_version_prefix(const std::string& value);
+  void set_target_version_prefix(std::string&& value);
+  void set_target_version_prefix(const char* value);
+  void set_target_version_prefix(const char* value, size_t size);
+  std::string* mutable_target_version_prefix();
+  std::string* release_target_version_prefix();
+  void set_allocated_target_version_prefix(std::string* target_version_prefix);
+  private:
+  const std::string& _internal_target_version_prefix() const;
+  void _internal_set_target_version_prefix(const std::string& value);
+  std::string* _internal_mutable_target_version_prefix();
+  public:
+
+  // optional string target_version_display_name = 3;
+  bool has_target_version_display_name() const;
+  private:
+  bool _internal_has_target_version_display_name() const;
+  public:
+  void clear_target_version_display_name();
+  const std::string& target_version_display_name() const;
+  void set_target_version_display_name(const std::string& value);
+  void set_target_version_display_name(std::string&& value);
+  void set_target_version_display_name(const char* value);
+  void set_target_version_display_name(const char* value, size_t size);
+  std::string* mutable_target_version_display_name();
+  std::string* release_target_version_display_name();
+  void set_allocated_target_version_display_name(std::string* target_version_display_name);
+  private:
+  const std::string& _internal_target_version_display_name() const;
+  void _internal_set_target_version_display_name(const std::string& value);
+  std::string* _internal_mutable_target_version_display_name();
+  public:
+
+  // optional string disallowed_time_intervals = 12;
+  bool has_disallowed_time_intervals() const;
+  private:
+  bool _internal_has_disallowed_time_intervals() const;
+  public:
+  void clear_disallowed_time_intervals();
+  const std::string& disallowed_time_intervals() const;
+  void set_disallowed_time_intervals(const std::string& value);
+  void set_disallowed_time_intervals(std::string&& value);
+  void set_disallowed_time_intervals(const char* value);
+  void set_disallowed_time_intervals(const char* value, size_t size);
+  std::string* mutable_disallowed_time_intervals();
+  std::string* release_disallowed_time_intervals();
+  void set_allocated_disallowed_time_intervals(std::string* disallowed_time_intervals);
+  private:
+  const std::string& _internal_disallowed_time_intervals() const;
+  void _internal_set_disallowed_time_intervals(const std::string& value);
+  std::string* _internal_mutable_disallowed_time_intervals();
+  public:
+
+  // optional string staging_schedule = 14;
+  bool has_staging_schedule() const;
+  private:
+  bool _internal_has_staging_schedule() const;
+  public:
+  void clear_staging_schedule();
+  const std::string& staging_schedule() const;
+  void set_staging_schedule(const std::string& value);
+  void set_staging_schedule(std::string&& value);
+  void set_staging_schedule(const char* value);
+  void set_staging_schedule(const char* value, size_t size);
+  std::string* mutable_staging_schedule();
+  std::string* release_staging_schedule();
+  void set_allocated_staging_schedule(std::string* staging_schedule);
+  private:
+  const std::string& _internal_staging_schedule() const;
+  void _internal_set_staging_schedule(const std::string& value);
+  std::string* _internal_mutable_staging_schedule();
+  public:
+
+  // optional string device_quick_fix_build_token = 15;
+  bool has_device_quick_fix_build_token() const;
+  private:
+  bool _internal_has_device_quick_fix_build_token() const;
+  public:
+  void clear_device_quick_fix_build_token();
+  const std::string& device_quick_fix_build_token() const;
+  void set_device_quick_fix_build_token(const std::string& value);
+  void set_device_quick_fix_build_token(std::string&& value);
+  void set_device_quick_fix_build_token(const char* value);
+  void set_device_quick_fix_build_token(const char* value, size_t size);
+  std::string* mutable_device_quick_fix_build_token();
+  std::string* release_device_quick_fix_build_token();
+  void set_allocated_device_quick_fix_build_token(std::string* device_quick_fix_build_token);
+  private:
+  const std::string& _internal_device_quick_fix_build_token() const;
+  void _internal_set_device_quick_fix_build_token(const std::string& value);
+  std::string* _internal_mutable_device_quick_fix_build_token();
+  public:
+
+  // optional string target_version_selector = 17;
+  bool has_target_version_selector() const;
+  private:
+  bool _internal_has_target_version_selector() const;
+  public:
+  void clear_target_version_selector();
+  const std::string& target_version_selector() const;
+  void set_target_version_selector(const std::string& value);
+  void set_target_version_selector(std::string&& value);
+  void set_target_version_selector(const char* value);
+  void set_target_version_selector(const char* value, size_t size);
+  std::string* mutable_target_version_selector();
+  std::string* release_target_version_selector();
+  void set_allocated_target_version_selector(std::string* target_version_selector);
+  private:
+  const std::string& _internal_target_version_selector() const;
+  void _internal_set_target_version_selector(const std::string& value);
+  std::string* _internal_mutable_target_version_selector();
+  public:
+
+  // optional int64 scatter_factor_in_seconds = 4;
+  bool has_scatter_factor_in_seconds() const;
+  private:
+  bool _internal_has_scatter_factor_in_seconds() const;
+  public:
+  void clear_scatter_factor_in_seconds();
+  ::PROTOBUF_NAMESPACE_ID::int64 scatter_factor_in_seconds() const;
+  void set_scatter_factor_in_seconds(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_scatter_factor_in_seconds() const;
+  void _internal_set_scatter_factor_in_seconds(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional bool update_disabled = 1;
+  bool has_update_disabled() const;
+  private:
+  bool _internal_has_update_disabled() const;
+  public:
+  void clear_update_disabled();
+  bool update_disabled() const;
+  void set_update_disabled(bool value);
+  private:
+  bool _internal_update_disabled() const;
+  void _internal_set_update_disabled(bool value);
+  public:
+
+  // optional bool OBSOLETE_reboot_after_update = 6 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_reboot_after_update() const;
+  private:
+  bool _internal_has_obsolete_reboot_after_update() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_reboot_after_update();
+  PROTOBUF_DEPRECATED bool obsolete_reboot_after_update() const;
+  PROTOBUF_DEPRECATED void set_obsolete_reboot_after_update(bool value);
+  private:
+  bool _internal_obsolete_reboot_after_update() const;
+  void _internal_set_obsolete_reboot_after_update(bool value);
+  public:
+
+  // optional bool http_downloads_enabled = 7 [default = false];
+  bool has_http_downloads_enabled() const;
+  private:
+  bool _internal_has_http_downloads_enabled() const;
+  public:
+  void clear_http_downloads_enabled();
+  bool http_downloads_enabled() const;
+  void set_http_downloads_enabled(bool value);
+  private:
+  bool _internal_http_downloads_enabled() const;
+  void _internal_set_http_downloads_enabled(bool value);
+  public:
+
+  // optional bool reboot_after_update = 8;
+  bool has_reboot_after_update() const;
+  private:
+  bool _internal_has_reboot_after_update() const;
+  public:
+  void clear_reboot_after_update();
+  bool reboot_after_update() const;
+  void set_reboot_after_update(bool value);
+  private:
+  bool _internal_reboot_after_update() const;
+  void _internal_set_reboot_after_update(bool value);
+  public:
+
+  // optional bool p2p_enabled = 9 [default = false];
+  bool has_p2p_enabled() const;
+  private:
+  bool _internal_has_p2p_enabled() const;
+  public:
+  void clear_p2p_enabled();
+  bool p2p_enabled() const;
+  void set_p2p_enabled(bool value);
+  private:
+  bool _internal_p2p_enabled() const;
+  void _internal_set_p2p_enabled(bool value);
+  public:
+
+  // optional int32 rollback_allowed_milestones = 11 [default = 0];
+  bool has_rollback_allowed_milestones() const;
+  private:
+  bool _internal_has_rollback_allowed_milestones() const;
+  public:
+  void clear_rollback_allowed_milestones();
+  ::PROTOBUF_NAMESPACE_ID::int32 rollback_allowed_milestones() const;
+  void set_rollback_allowed_milestones(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_rollback_allowed_milestones() const;
+  void _internal_set_rollback_allowed_milestones(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional .enterprise_management.AutoUpdateSettingsProto.RollbackToTargetVersion rollback_to_target_version = 10 [default = ROLLBACK_DISABLED];
+  bool has_rollback_to_target_version() const;
+  private:
+  bool _internal_has_rollback_to_target_version() const;
+  public:
+  void clear_rollback_to_target_version();
+  ::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion rollback_to_target_version() const;
+  void set_rollback_to_target_version(::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion value);
+  private:
+  ::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion _internal_rollback_to_target_version() const;
+  void _internal_set_rollback_to_target_version(::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion value);
+  public:
+
+  // optional .enterprise_management.AutoUpdateSettingsProto.ChannelDowngradeBehavior channel_downgrade_behavior = 16 [default = WAIT_FOR_VERSION_CATCH_UP];
+  bool has_channel_downgrade_behavior() const;
+  private:
+  bool _internal_has_channel_downgrade_behavior() const;
+  public:
+  void clear_channel_downgrade_behavior();
+  ::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior channel_downgrade_behavior() const;
+  void set_channel_downgrade_behavior(::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior value);
+  private:
+  ::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior _internal_channel_downgrade_behavior() const;
+  void _internal_set_channel_downgrade_behavior(::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AutoUpdateSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> allowed_connection_types_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr target_version_prefix_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr target_version_display_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr disallowed_time_intervals_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr staging_schedule_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_quick_fix_build_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr target_version_selector_;
+  ::PROTOBUF_NAMESPACE_ID::int64 scatter_factor_in_seconds_;
+  bool update_disabled_;
+  bool obsolete_reboot_after_update_;
+  bool http_downloads_enabled_;
+  bool reboot_after_update_;
+  bool p2p_enabled_;
+  ::PROTOBUF_NAMESPACE_ID::int32 rollback_allowed_milestones_;
+  int rollback_to_target_version_;
+  int channel_downgrade_behavior_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_StartUpUrlsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_StartUpUrlsProto) */ {
+ public:
+  OBSOLETE_StartUpUrlsProto();
+  virtual ~OBSOLETE_StartUpUrlsProto();
+
+  OBSOLETE_StartUpUrlsProto(const OBSOLETE_StartUpUrlsProto& from);
+  OBSOLETE_StartUpUrlsProto(OBSOLETE_StartUpUrlsProto&& from) noexcept
+    : OBSOLETE_StartUpUrlsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_StartUpUrlsProto& operator=(const OBSOLETE_StartUpUrlsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_StartUpUrlsProto& operator=(OBSOLETE_StartUpUrlsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_StartUpUrlsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_StartUpUrlsProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_StartUpUrlsProto*>(
+               &_OBSOLETE_StartUpUrlsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    23;
+
+  friend void swap(OBSOLETE_StartUpUrlsProto& a, OBSOLETE_StartUpUrlsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_StartUpUrlsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_StartUpUrlsProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_StartUpUrlsProto>(nullptr);
+  }
+
+  OBSOLETE_StartUpUrlsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_StartUpUrlsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_StartUpUrlsProto& from);
+  void MergeFrom(const OBSOLETE_StartUpUrlsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_StartUpUrlsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_StartUpUrlsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEStartUpUrlsFieldNumber = 1,
+  };
+  // repeated string OBSOLETE_start_up_urls = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED int obsolete_start_up_urls_size() const;
+  private:
+  int _internal_obsolete_start_up_urls_size() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_start_up_urls();
+  PROTOBUF_DEPRECATED const std::string& obsolete_start_up_urls(int index) const;
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_start_up_urls(int index);
+  PROTOBUF_DEPRECATED void set_obsolete_start_up_urls(int index, const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_start_up_urls(int index, std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_start_up_urls(int index, const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_start_up_urls(int index, const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* add_obsolete_start_up_urls();
+  PROTOBUF_DEPRECATED void add_obsolete_start_up_urls(const std::string& value);
+  PROTOBUF_DEPRECATED void add_obsolete_start_up_urls(std::string&& value);
+  PROTOBUF_DEPRECATED void add_obsolete_start_up_urls(const char* value);
+  PROTOBUF_DEPRECATED void add_obsolete_start_up_urls(const char* value, size_t size);
+  PROTOBUF_DEPRECATED const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& obsolete_start_up_urls() const;
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_obsolete_start_up_urls();
+  private:
+  const std::string& _internal_obsolete_start_up_urls(int index) const;
+  std::string* _internal_add_obsolete_start_up_urls();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_StartUpUrlsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> obsolete_start_up_urls_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemTimezoneProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SystemTimezoneProto) */ {
+ public:
+  SystemTimezoneProto();
+  virtual ~SystemTimezoneProto();
+
+  SystemTimezoneProto(const SystemTimezoneProto& from);
+  SystemTimezoneProto(SystemTimezoneProto&& from) noexcept
+    : SystemTimezoneProto() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemTimezoneProto& operator=(const SystemTimezoneProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemTimezoneProto& operator=(SystemTimezoneProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemTimezoneProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemTimezoneProto* internal_default_instance() {
+    return reinterpret_cast<const SystemTimezoneProto*>(
+               &_SystemTimezoneProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    24;
+
+  friend void swap(SystemTimezoneProto& a, SystemTimezoneProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemTimezoneProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemTimezoneProto* New() const final {
+    return CreateMaybeMessage<SystemTimezoneProto>(nullptr);
+  }
+
+  SystemTimezoneProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemTimezoneProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemTimezoneProto& from);
+  void MergeFrom(const SystemTimezoneProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemTimezoneProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SystemTimezoneProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemTimezoneProto_AutomaticTimezoneDetectionType AutomaticTimezoneDetectionType;
+  static constexpr AutomaticTimezoneDetectionType USERS_DECIDE =
+    SystemTimezoneProto_AutomaticTimezoneDetectionType_USERS_DECIDE;
+  static constexpr AutomaticTimezoneDetectionType DISABLED =
+    SystemTimezoneProto_AutomaticTimezoneDetectionType_DISABLED;
+  static constexpr AutomaticTimezoneDetectionType IP_ONLY =
+    SystemTimezoneProto_AutomaticTimezoneDetectionType_IP_ONLY;
+  static constexpr AutomaticTimezoneDetectionType SEND_WIFI_ACCESS_POINTS =
+    SystemTimezoneProto_AutomaticTimezoneDetectionType_SEND_WIFI_ACCESS_POINTS;
+  static constexpr AutomaticTimezoneDetectionType SEND_ALL_LOCATION_INFO =
+    SystemTimezoneProto_AutomaticTimezoneDetectionType_SEND_ALL_LOCATION_INFO;
+  static inline bool AutomaticTimezoneDetectionType_IsValid(int value) {
+    return SystemTimezoneProto_AutomaticTimezoneDetectionType_IsValid(value);
+  }
+  static constexpr AutomaticTimezoneDetectionType AutomaticTimezoneDetectionType_MIN =
+    SystemTimezoneProto_AutomaticTimezoneDetectionType_AutomaticTimezoneDetectionType_MIN;
+  static constexpr AutomaticTimezoneDetectionType AutomaticTimezoneDetectionType_MAX =
+    SystemTimezoneProto_AutomaticTimezoneDetectionType_AutomaticTimezoneDetectionType_MAX;
+  static constexpr int AutomaticTimezoneDetectionType_ARRAYSIZE =
+    SystemTimezoneProto_AutomaticTimezoneDetectionType_AutomaticTimezoneDetectionType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AutomaticTimezoneDetectionType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AutomaticTimezoneDetectionType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AutomaticTimezoneDetectionType_Name.");
+    return SystemTimezoneProto_AutomaticTimezoneDetectionType_Name(enum_t_value);
+  }
+  static inline bool AutomaticTimezoneDetectionType_Parse(const std::string& name,
+      AutomaticTimezoneDetectionType* value) {
+    return SystemTimezoneProto_AutomaticTimezoneDetectionType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTimezoneFieldNumber = 1,
+    kTimezoneDetectionTypeFieldNumber = 2,
+  };
+  // optional string timezone = 1;
+  bool has_timezone() const;
+  private:
+  bool _internal_has_timezone() const;
+  public:
+  void clear_timezone();
+  const std::string& timezone() const;
+  void set_timezone(const std::string& value);
+  void set_timezone(std::string&& value);
+  void set_timezone(const char* value);
+  void set_timezone(const char* value, size_t size);
+  std::string* mutable_timezone();
+  std::string* release_timezone();
+  void set_allocated_timezone(std::string* timezone);
+  private:
+  const std::string& _internal_timezone() const;
+  void _internal_set_timezone(const std::string& value);
+  std::string* _internal_mutable_timezone();
+  public:
+
+  // optional .enterprise_management.SystemTimezoneProto.AutomaticTimezoneDetectionType timezone_detection_type = 2;
+  bool has_timezone_detection_type() const;
+  private:
+  bool _internal_has_timezone_detection_type() const;
+  public:
+  void clear_timezone_detection_type();
+  ::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType timezone_detection_type() const;
+  void set_timezone_detection_type(::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType value);
+  private:
+  ::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType _internal_timezone_detection_type() const;
+  void _internal_set_timezone_detection_type(::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SystemTimezoneProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr timezone_;
+  int timezone_detection_type_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemUse24HourClockProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SystemUse24HourClockProto) */ {
+ public:
+  SystemUse24HourClockProto();
+  virtual ~SystemUse24HourClockProto();
+
+  SystemUse24HourClockProto(const SystemUse24HourClockProto& from);
+  SystemUse24HourClockProto(SystemUse24HourClockProto&& from) noexcept
+    : SystemUse24HourClockProto() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemUse24HourClockProto& operator=(const SystemUse24HourClockProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemUse24HourClockProto& operator=(SystemUse24HourClockProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemUse24HourClockProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemUse24HourClockProto* internal_default_instance() {
+    return reinterpret_cast<const SystemUse24HourClockProto*>(
+               &_SystemUse24HourClockProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    25;
+
+  friend void swap(SystemUse24HourClockProto& a, SystemUse24HourClockProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemUse24HourClockProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemUse24HourClockProto* New() const final {
+    return CreateMaybeMessage<SystemUse24HourClockProto>(nullptr);
+  }
+
+  SystemUse24HourClockProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemUse24HourClockProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemUse24HourClockProto& from);
+  void MergeFrom(const SystemUse24HourClockProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemUse24HourClockProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SystemUse24HourClockProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUse24HourClockFieldNumber = 1,
+  };
+  // optional bool use_24hour_clock = 1;
+  bool has_use_24hour_clock() const;
+  private:
+  bool _internal_has_use_24hour_clock() const;
+  public:
+  void clear_use_24hour_clock();
+  bool use_24hour_clock() const;
+  void set_use_24hour_clock(bool value);
+  private:
+  bool _internal_use_24hour_clock() const;
+  void _internal_set_use_24hour_clock(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SystemUse24HourClockProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool use_24hour_clock_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class KioskAppInfoProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.KioskAppInfoProto) */ {
+ public:
+  KioskAppInfoProto();
+  virtual ~KioskAppInfoProto();
+
+  KioskAppInfoProto(const KioskAppInfoProto& from);
+  KioskAppInfoProto(KioskAppInfoProto&& from) noexcept
+    : KioskAppInfoProto() {
+    *this = ::std::move(from);
+  }
+
+  inline KioskAppInfoProto& operator=(const KioskAppInfoProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline KioskAppInfoProto& operator=(KioskAppInfoProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const KioskAppInfoProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const KioskAppInfoProto* internal_default_instance() {
+    return reinterpret_cast<const KioskAppInfoProto*>(
+               &_KioskAppInfoProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    26;
+
+  friend void swap(KioskAppInfoProto& a, KioskAppInfoProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(KioskAppInfoProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline KioskAppInfoProto* New() const final {
+    return CreateMaybeMessage<KioskAppInfoProto>(nullptr);
+  }
+
+  KioskAppInfoProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<KioskAppInfoProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const KioskAppInfoProto& from);
+  void MergeFrom(const KioskAppInfoProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(KioskAppInfoProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.KioskAppInfoProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAppIdFieldNumber = 1,
+    kUpdateUrlFieldNumber = 2,
+  };
+  // optional string app_id = 1;
+  bool has_app_id() const;
+  private:
+  bool _internal_has_app_id() const;
+  public:
+  void clear_app_id();
+  const std::string& app_id() const;
+  void set_app_id(const std::string& value);
+  void set_app_id(std::string&& value);
+  void set_app_id(const char* value);
+  void set_app_id(const char* value, size_t size);
+  std::string* mutable_app_id();
+  std::string* release_app_id();
+  void set_allocated_app_id(std::string* app_id);
+  private:
+  const std::string& _internal_app_id() const;
+  void _internal_set_app_id(const std::string& value);
+  std::string* _internal_mutable_app_id();
+  public:
+
+  // optional string update_url = 2;
+  bool has_update_url() const;
+  private:
+  bool _internal_has_update_url() const;
+  public:
+  void clear_update_url();
+  const std::string& update_url() const;
+  void set_update_url(const std::string& value);
+  void set_update_url(std::string&& value);
+  void set_update_url(const char* value);
+  void set_update_url(const char* value, size_t size);
+  std::string* mutable_update_url();
+  std::string* release_update_url();
+  void set_allocated_update_url(std::string* update_url);
+  private:
+  const std::string& _internal_update_url() const;
+  void _internal_set_update_url(const std::string& value);
+  std::string* _internal_mutable_update_url();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.KioskAppInfoProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr update_url_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AndroidKioskAppInfoProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AndroidKioskAppInfoProto) */ {
+ public:
+  AndroidKioskAppInfoProto();
+  virtual ~AndroidKioskAppInfoProto();
+
+  AndroidKioskAppInfoProto(const AndroidKioskAppInfoProto& from);
+  AndroidKioskAppInfoProto(AndroidKioskAppInfoProto&& from) noexcept
+    : AndroidKioskAppInfoProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AndroidKioskAppInfoProto& operator=(const AndroidKioskAppInfoProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AndroidKioskAppInfoProto& operator=(AndroidKioskAppInfoProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AndroidKioskAppInfoProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AndroidKioskAppInfoProto* internal_default_instance() {
+    return reinterpret_cast<const AndroidKioskAppInfoProto*>(
+               &_AndroidKioskAppInfoProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    27;
+
+  friend void swap(AndroidKioskAppInfoProto& a, AndroidKioskAppInfoProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AndroidKioskAppInfoProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AndroidKioskAppInfoProto* New() const final {
+    return CreateMaybeMessage<AndroidKioskAppInfoProto>(nullptr);
+  }
+
+  AndroidKioskAppInfoProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AndroidKioskAppInfoProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AndroidKioskAppInfoProto& from);
+  void MergeFrom(const AndroidKioskAppInfoProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AndroidKioskAppInfoProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AndroidKioskAppInfoProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPackageNameFieldNumber = 1,
+    kClassNameFieldNumber = 2,
+    kActionFieldNumber = 3,
+    kDisplayNameFieldNumber = 4,
+  };
+  // optional string package_name = 1;
+  bool has_package_name() const;
+  private:
+  bool _internal_has_package_name() const;
+  public:
+  void clear_package_name();
+  const std::string& package_name() const;
+  void set_package_name(const std::string& value);
+  void set_package_name(std::string&& value);
+  void set_package_name(const char* value);
+  void set_package_name(const char* value, size_t size);
+  std::string* mutable_package_name();
+  std::string* release_package_name();
+  void set_allocated_package_name(std::string* package_name);
+  private:
+  const std::string& _internal_package_name() const;
+  void _internal_set_package_name(const std::string& value);
+  std::string* _internal_mutable_package_name();
+  public:
+
+  // optional string class_name = 2;
+  bool has_class_name() const;
+  private:
+  bool _internal_has_class_name() const;
+  public:
+  void clear_class_name();
+  const std::string& class_name() const;
+  void set_class_name(const std::string& value);
+  void set_class_name(std::string&& value);
+  void set_class_name(const char* value);
+  void set_class_name(const char* value, size_t size);
+  std::string* mutable_class_name();
+  std::string* release_class_name();
+  void set_allocated_class_name(std::string* class_name);
+  private:
+  const std::string& _internal_class_name() const;
+  void _internal_set_class_name(const std::string& value);
+  std::string* _internal_mutable_class_name();
+  public:
+
+  // optional string action = 3;
+  bool has_action() const;
+  private:
+  bool _internal_has_action() const;
+  public:
+  void clear_action();
+  const std::string& action() const;
+  void set_action(const std::string& value);
+  void set_action(std::string&& value);
+  void set_action(const char* value);
+  void set_action(const char* value, size_t size);
+  std::string* mutable_action();
+  std::string* release_action();
+  void set_allocated_action(std::string* action);
+  private:
+  const std::string& _internal_action() const;
+  void _internal_set_action(const std::string& value);
+  std::string* _internal_mutable_action();
+  public:
+
+  // optional string display_name = 4;
+  bool has_display_name() const;
+  private:
+  bool _internal_has_display_name() const;
+  public:
+  void clear_display_name();
+  const std::string& display_name() const;
+  void set_display_name(const std::string& value);
+  void set_display_name(std::string&& value);
+  void set_display_name(const char* value);
+  void set_display_name(const char* value, size_t size);
+  std::string* mutable_display_name();
+  std::string* release_display_name();
+  void set_allocated_display_name(std::string* display_name);
+  private:
+  const std::string& _internal_display_name() const;
+  void _internal_set_display_name(const std::string& value);
+  std::string* _internal_mutable_display_name();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AndroidKioskAppInfoProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr package_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr class_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr action_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr display_name_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class WebKioskAppInfoProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.WebKioskAppInfoProto) */ {
+ public:
+  WebKioskAppInfoProto();
+  virtual ~WebKioskAppInfoProto();
+
+  WebKioskAppInfoProto(const WebKioskAppInfoProto& from);
+  WebKioskAppInfoProto(WebKioskAppInfoProto&& from) noexcept
+    : WebKioskAppInfoProto() {
+    *this = ::std::move(from);
+  }
+
+  inline WebKioskAppInfoProto& operator=(const WebKioskAppInfoProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline WebKioskAppInfoProto& operator=(WebKioskAppInfoProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const WebKioskAppInfoProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const WebKioskAppInfoProto* internal_default_instance() {
+    return reinterpret_cast<const WebKioskAppInfoProto*>(
+               &_WebKioskAppInfoProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    28;
+
+  friend void swap(WebKioskAppInfoProto& a, WebKioskAppInfoProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(WebKioskAppInfoProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline WebKioskAppInfoProto* New() const final {
+    return CreateMaybeMessage<WebKioskAppInfoProto>(nullptr);
+  }
+
+  WebKioskAppInfoProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<WebKioskAppInfoProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const WebKioskAppInfoProto& from);
+  void MergeFrom(const WebKioskAppInfoProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(WebKioskAppInfoProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.WebKioskAppInfoProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUrlFieldNumber = 1,
+    kTitleFieldNumber = 2,
+    kIconUrlFieldNumber = 3,
+  };
+  // optional string url = 1;
+  bool has_url() const;
+  private:
+  bool _internal_has_url() const;
+  public:
+  void clear_url();
+  const std::string& url() const;
+  void set_url(const std::string& value);
+  void set_url(std::string&& value);
+  void set_url(const char* value);
+  void set_url(const char* value, size_t size);
+  std::string* mutable_url();
+  std::string* release_url();
+  void set_allocated_url(std::string* url);
+  private:
+  const std::string& _internal_url() const;
+  void _internal_set_url(const std::string& value);
+  std::string* _internal_mutable_url();
+  public:
+
+  // optional string title = 2;
+  bool has_title() const;
+  private:
+  bool _internal_has_title() const;
+  public:
+  void clear_title();
+  const std::string& title() const;
+  void set_title(const std::string& value);
+  void set_title(std::string&& value);
+  void set_title(const char* value);
+  void set_title(const char* value, size_t size);
+  std::string* mutable_title();
+  std::string* release_title();
+  void set_allocated_title(std::string* title);
+  private:
+  const std::string& _internal_title() const;
+  void _internal_set_title(const std::string& value);
+  std::string* _internal_mutable_title();
+  public:
+
+  // optional string icon_url = 3;
+  bool has_icon_url() const;
+  private:
+  bool _internal_has_icon_url() const;
+  public:
+  void clear_icon_url();
+  const std::string& icon_url() const;
+  void set_icon_url(const std::string& value);
+  void set_icon_url(std::string&& value);
+  void set_icon_url(const char* value);
+  void set_icon_url(const char* value, size_t size);
+  std::string* mutable_icon_url();
+  std::string* release_icon_url();
+  void set_allocated_icon_url(std::string* icon_url);
+  private:
+  const std::string& _internal_icon_url() const;
+  void _internal_set_icon_url(const std::string& value);
+  std::string* _internal_mutable_icon_url();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.WebKioskAppInfoProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr url_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr title_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr icon_url_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceLocalAccountInfoProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceLocalAccountInfoProto) */ {
+ public:
+  DeviceLocalAccountInfoProto();
+  virtual ~DeviceLocalAccountInfoProto();
+
+  DeviceLocalAccountInfoProto(const DeviceLocalAccountInfoProto& from);
+  DeviceLocalAccountInfoProto(DeviceLocalAccountInfoProto&& from) noexcept
+    : DeviceLocalAccountInfoProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceLocalAccountInfoProto& operator=(const DeviceLocalAccountInfoProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceLocalAccountInfoProto& operator=(DeviceLocalAccountInfoProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceLocalAccountInfoProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceLocalAccountInfoProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceLocalAccountInfoProto*>(
+               &_DeviceLocalAccountInfoProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    29;
+
+  friend void swap(DeviceLocalAccountInfoProto& a, DeviceLocalAccountInfoProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceLocalAccountInfoProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceLocalAccountInfoProto* New() const final {
+    return CreateMaybeMessage<DeviceLocalAccountInfoProto>(nullptr);
+  }
+
+  DeviceLocalAccountInfoProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceLocalAccountInfoProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceLocalAccountInfoProto& from);
+  void MergeFrom(const DeviceLocalAccountInfoProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceLocalAccountInfoProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceLocalAccountInfoProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceLocalAccountInfoProto_AccountType AccountType;
+  static constexpr AccountType ACCOUNT_TYPE_PUBLIC_SESSION =
+    DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_PUBLIC_SESSION;
+  static constexpr AccountType ACCOUNT_TYPE_KIOSK_APP =
+    DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_KIOSK_APP;
+  static constexpr AccountType ACCOUNT_TYPE_KIOSK_ANDROID_APP =
+    DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_KIOSK_ANDROID_APP;
+  static constexpr AccountType ACCOUNT_TYPE_SAML_PUBLIC_SESSION =
+    DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_SAML_PUBLIC_SESSION;
+  static constexpr AccountType ACCOUNT_TYPE_WEB_KIOSK_APP =
+    DeviceLocalAccountInfoProto_AccountType_ACCOUNT_TYPE_WEB_KIOSK_APP;
+  static inline bool AccountType_IsValid(int value) {
+    return DeviceLocalAccountInfoProto_AccountType_IsValid(value);
+  }
+  static constexpr AccountType AccountType_MIN =
+    DeviceLocalAccountInfoProto_AccountType_AccountType_MIN;
+  static constexpr AccountType AccountType_MAX =
+    DeviceLocalAccountInfoProto_AccountType_AccountType_MAX;
+  static constexpr int AccountType_ARRAYSIZE =
+    DeviceLocalAccountInfoProto_AccountType_AccountType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AccountType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AccountType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AccountType_Name.");
+    return DeviceLocalAccountInfoProto_AccountType_Name(enum_t_value);
+  }
+  static inline bool AccountType_Parse(const std::string& name,
+      AccountType* value) {
+    return DeviceLocalAccountInfoProto_AccountType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeprecatedPublicSessionIdFieldNumber = 1,
+    kAccountIdFieldNumber = 2,
+    kKioskAppFieldNumber = 4,
+    kAndroidKioskAppFieldNumber = 5,
+    kWebKioskAppFieldNumber = 6,
+    kTypeFieldNumber = 3,
+  };
+  // optional string deprecated_public_session_id = 1;
+  bool has_deprecated_public_session_id() const;
+  private:
+  bool _internal_has_deprecated_public_session_id() const;
+  public:
+  void clear_deprecated_public_session_id();
+  const std::string& deprecated_public_session_id() const;
+  void set_deprecated_public_session_id(const std::string& value);
+  void set_deprecated_public_session_id(std::string&& value);
+  void set_deprecated_public_session_id(const char* value);
+  void set_deprecated_public_session_id(const char* value, size_t size);
+  std::string* mutable_deprecated_public_session_id();
+  std::string* release_deprecated_public_session_id();
+  void set_allocated_deprecated_public_session_id(std::string* deprecated_public_session_id);
+  private:
+  const std::string& _internal_deprecated_public_session_id() const;
+  void _internal_set_deprecated_public_session_id(const std::string& value);
+  std::string* _internal_mutable_deprecated_public_session_id();
+  public:
+
+  // optional string account_id = 2;
+  bool has_account_id() const;
+  private:
+  bool _internal_has_account_id() const;
+  public:
+  void clear_account_id();
+  const std::string& account_id() const;
+  void set_account_id(const std::string& value);
+  void set_account_id(std::string&& value);
+  void set_account_id(const char* value);
+  void set_account_id(const char* value, size_t size);
+  std::string* mutable_account_id();
+  std::string* release_account_id();
+  void set_allocated_account_id(std::string* account_id);
+  private:
+  const std::string& _internal_account_id() const;
+  void _internal_set_account_id(const std::string& value);
+  std::string* _internal_mutable_account_id();
+  public:
+
+  // optional .enterprise_management.KioskAppInfoProto kiosk_app = 4;
+  bool has_kiosk_app() const;
+  private:
+  bool _internal_has_kiosk_app() const;
+  public:
+  void clear_kiosk_app();
+  const ::enterprise_management::KioskAppInfoProto& kiosk_app() const;
+  ::enterprise_management::KioskAppInfoProto* release_kiosk_app();
+  ::enterprise_management::KioskAppInfoProto* mutable_kiosk_app();
+  void set_allocated_kiosk_app(::enterprise_management::KioskAppInfoProto* kiosk_app);
+  private:
+  const ::enterprise_management::KioskAppInfoProto& _internal_kiosk_app() const;
+  ::enterprise_management::KioskAppInfoProto* _internal_mutable_kiosk_app();
+  public:
+
+  // optional .enterprise_management.AndroidKioskAppInfoProto android_kiosk_app = 5;
+  bool has_android_kiosk_app() const;
+  private:
+  bool _internal_has_android_kiosk_app() const;
+  public:
+  void clear_android_kiosk_app();
+  const ::enterprise_management::AndroidKioskAppInfoProto& android_kiosk_app() const;
+  ::enterprise_management::AndroidKioskAppInfoProto* release_android_kiosk_app();
+  ::enterprise_management::AndroidKioskAppInfoProto* mutable_android_kiosk_app();
+  void set_allocated_android_kiosk_app(::enterprise_management::AndroidKioskAppInfoProto* android_kiosk_app);
+  private:
+  const ::enterprise_management::AndroidKioskAppInfoProto& _internal_android_kiosk_app() const;
+  ::enterprise_management::AndroidKioskAppInfoProto* _internal_mutable_android_kiosk_app();
+  public:
+
+  // optional .enterprise_management.WebKioskAppInfoProto web_kiosk_app = 6;
+  bool has_web_kiosk_app() const;
+  private:
+  bool _internal_has_web_kiosk_app() const;
+  public:
+  void clear_web_kiosk_app();
+  const ::enterprise_management::WebKioskAppInfoProto& web_kiosk_app() const;
+  ::enterprise_management::WebKioskAppInfoProto* release_web_kiosk_app();
+  ::enterprise_management::WebKioskAppInfoProto* mutable_web_kiosk_app();
+  void set_allocated_web_kiosk_app(::enterprise_management::WebKioskAppInfoProto* web_kiosk_app);
+  private:
+  const ::enterprise_management::WebKioskAppInfoProto& _internal_web_kiosk_app() const;
+  ::enterprise_management::WebKioskAppInfoProto* _internal_mutable_web_kiosk_app();
+  public:
+
+  // optional .enterprise_management.DeviceLocalAccountInfoProto.AccountType type = 3;
+  bool has_type() const;
+  private:
+  bool _internal_has_type() const;
+  public:
+  void clear_type();
+  ::enterprise_management::DeviceLocalAccountInfoProto_AccountType type() const;
+  void set_type(::enterprise_management::DeviceLocalAccountInfoProto_AccountType value);
+  private:
+  ::enterprise_management::DeviceLocalAccountInfoProto_AccountType _internal_type() const;
+  void _internal_set_type(::enterprise_management::DeviceLocalAccountInfoProto_AccountType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceLocalAccountInfoProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr deprecated_public_session_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr account_id_;
+  ::enterprise_management::KioskAppInfoProto* kiosk_app_;
+  ::enterprise_management::AndroidKioskAppInfoProto* android_kiosk_app_;
+  ::enterprise_management::WebKioskAppInfoProto* web_kiosk_app_;
+  int type_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceLocalAccountsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceLocalAccountsProto) */ {
+ public:
+  DeviceLocalAccountsProto();
+  virtual ~DeviceLocalAccountsProto();
+
+  DeviceLocalAccountsProto(const DeviceLocalAccountsProto& from);
+  DeviceLocalAccountsProto(DeviceLocalAccountsProto&& from) noexcept
+    : DeviceLocalAccountsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceLocalAccountsProto& operator=(const DeviceLocalAccountsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceLocalAccountsProto& operator=(DeviceLocalAccountsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceLocalAccountsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceLocalAccountsProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceLocalAccountsProto*>(
+               &_DeviceLocalAccountsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    30;
+
+  friend void swap(DeviceLocalAccountsProto& a, DeviceLocalAccountsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceLocalAccountsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceLocalAccountsProto* New() const final {
+    return CreateMaybeMessage<DeviceLocalAccountsProto>(nullptr);
+  }
+
+  DeviceLocalAccountsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceLocalAccountsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceLocalAccountsProto& from);
+  void MergeFrom(const DeviceLocalAccountsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceLocalAccountsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceLocalAccountsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAccountFieldNumber = 1,
+    kAutoLoginIdFieldNumber = 2,
+    kAutoLoginDelayFieldNumber = 3,
+    kEnableAutoLoginBailoutFieldNumber = 4,
+    kPromptForNetworkWhenOfflineFieldNumber = 5,
+  };
+  // repeated .enterprise_management.DeviceLocalAccountInfoProto account = 1;
+  int account_size() const;
+  private:
+  int _internal_account_size() const;
+  public:
+  void clear_account();
+  ::enterprise_management::DeviceLocalAccountInfoProto* mutable_account(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceLocalAccountInfoProto >*
+      mutable_account();
+  private:
+  const ::enterprise_management::DeviceLocalAccountInfoProto& _internal_account(int index) const;
+  ::enterprise_management::DeviceLocalAccountInfoProto* _internal_add_account();
+  public:
+  const ::enterprise_management::DeviceLocalAccountInfoProto& account(int index) const;
+  ::enterprise_management::DeviceLocalAccountInfoProto* add_account();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceLocalAccountInfoProto >&
+      account() const;
+
+  // optional string auto_login_id = 2;
+  bool has_auto_login_id() const;
+  private:
+  bool _internal_has_auto_login_id() const;
+  public:
+  void clear_auto_login_id();
+  const std::string& auto_login_id() const;
+  void set_auto_login_id(const std::string& value);
+  void set_auto_login_id(std::string&& value);
+  void set_auto_login_id(const char* value);
+  void set_auto_login_id(const char* value, size_t size);
+  std::string* mutable_auto_login_id();
+  std::string* release_auto_login_id();
+  void set_allocated_auto_login_id(std::string* auto_login_id);
+  private:
+  const std::string& _internal_auto_login_id() const;
+  void _internal_set_auto_login_id(const std::string& value);
+  std::string* _internal_mutable_auto_login_id();
+  public:
+
+  // optional int64 auto_login_delay = 3;
+  bool has_auto_login_delay() const;
+  private:
+  bool _internal_has_auto_login_delay() const;
+  public:
+  void clear_auto_login_delay();
+  ::PROTOBUF_NAMESPACE_ID::int64 auto_login_delay() const;
+  void set_auto_login_delay(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_auto_login_delay() const;
+  void _internal_set_auto_login_delay(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional bool enable_auto_login_bailout = 4 [default = true];
+  bool has_enable_auto_login_bailout() const;
+  private:
+  bool _internal_has_enable_auto_login_bailout() const;
+  public:
+  void clear_enable_auto_login_bailout();
+  bool enable_auto_login_bailout() const;
+  void set_enable_auto_login_bailout(bool value);
+  private:
+  bool _internal_enable_auto_login_bailout() const;
+  void _internal_set_enable_auto_login_bailout(bool value);
+  public:
+
+  // optional bool prompt_for_network_when_offline = 5 [default = true];
+  bool has_prompt_for_network_when_offline() const;
+  private:
+  bool _internal_has_prompt_for_network_when_offline() const;
+  public:
+  void clear_prompt_for_network_when_offline();
+  bool prompt_for_network_when_offline() const;
+  void set_prompt_for_network_when_offline(bool value);
+  private:
+  bool _internal_prompt_for_network_when_offline() const;
+  void _internal_set_prompt_for_network_when_offline(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceLocalAccountsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceLocalAccountInfoProto > account_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr auto_login_id_;
+  ::PROTOBUF_NAMESPACE_ID::int64 auto_login_delay_;
+  bool enable_auto_login_bailout_;
+  bool prompt_for_network_when_offline_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ManagedGuestSessionPrivacyWarningsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ManagedGuestSessionPrivacyWarningsProto) */ {
+ public:
+  ManagedGuestSessionPrivacyWarningsProto();
+  virtual ~ManagedGuestSessionPrivacyWarningsProto();
+
+  ManagedGuestSessionPrivacyWarningsProto(const ManagedGuestSessionPrivacyWarningsProto& from);
+  ManagedGuestSessionPrivacyWarningsProto(ManagedGuestSessionPrivacyWarningsProto&& from) noexcept
+    : ManagedGuestSessionPrivacyWarningsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline ManagedGuestSessionPrivacyWarningsProto& operator=(const ManagedGuestSessionPrivacyWarningsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ManagedGuestSessionPrivacyWarningsProto& operator=(ManagedGuestSessionPrivacyWarningsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ManagedGuestSessionPrivacyWarningsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ManagedGuestSessionPrivacyWarningsProto* internal_default_instance() {
+    return reinterpret_cast<const ManagedGuestSessionPrivacyWarningsProto*>(
+               &_ManagedGuestSessionPrivacyWarningsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    31;
+
+  friend void swap(ManagedGuestSessionPrivacyWarningsProto& a, ManagedGuestSessionPrivacyWarningsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ManagedGuestSessionPrivacyWarningsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ManagedGuestSessionPrivacyWarningsProto* New() const final {
+    return CreateMaybeMessage<ManagedGuestSessionPrivacyWarningsProto>(nullptr);
+  }
+
+  ManagedGuestSessionPrivacyWarningsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ManagedGuestSessionPrivacyWarningsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ManagedGuestSessionPrivacyWarningsProto& from);
+  void MergeFrom(const ManagedGuestSessionPrivacyWarningsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ManagedGuestSessionPrivacyWarningsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ManagedGuestSessionPrivacyWarningsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1 [default = true];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ManagedGuestSessionPrivacyWarningsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AllowRedeemChromeOsRegistrationOffersProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto) */ {
+ public:
+  AllowRedeemChromeOsRegistrationOffersProto();
+  virtual ~AllowRedeemChromeOsRegistrationOffersProto();
+
+  AllowRedeemChromeOsRegistrationOffersProto(const AllowRedeemChromeOsRegistrationOffersProto& from);
+  AllowRedeemChromeOsRegistrationOffersProto(AllowRedeemChromeOsRegistrationOffersProto&& from) noexcept
+    : AllowRedeemChromeOsRegistrationOffersProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AllowRedeemChromeOsRegistrationOffersProto& operator=(const AllowRedeemChromeOsRegistrationOffersProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AllowRedeemChromeOsRegistrationOffersProto& operator=(AllowRedeemChromeOsRegistrationOffersProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AllowRedeemChromeOsRegistrationOffersProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AllowRedeemChromeOsRegistrationOffersProto* internal_default_instance() {
+    return reinterpret_cast<const AllowRedeemChromeOsRegistrationOffersProto*>(
+               &_AllowRedeemChromeOsRegistrationOffersProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    32;
+
+  friend void swap(AllowRedeemChromeOsRegistrationOffersProto& a, AllowRedeemChromeOsRegistrationOffersProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AllowRedeemChromeOsRegistrationOffersProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AllowRedeemChromeOsRegistrationOffersProto* New() const final {
+    return CreateMaybeMessage<AllowRedeemChromeOsRegistrationOffersProto>(nullptr);
+  }
+
+  AllowRedeemChromeOsRegistrationOffersProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AllowRedeemChromeOsRegistrationOffersProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AllowRedeemChromeOsRegistrationOffersProto& from);
+  void MergeFrom(const AllowRedeemChromeOsRegistrationOffersProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AllowRedeemChromeOsRegistrationOffersProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AllowRedeemChromeOsRegistrationOffersProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowRedeemOffersFieldNumber = 1,
+  };
+  // optional bool allow_redeem_offers = 1 [default = true];
+  bool has_allow_redeem_offers() const;
+  private:
+  bool _internal_has_allow_redeem_offers() const;
+  public:
+  void clear_allow_redeem_offers();
+  bool allow_redeem_offers() const;
+  void set_allow_redeem_offers(bool value);
+  private:
+  bool _internal_allow_redeem_offers() const;
+  void _internal_set_allow_redeem_offers(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool allow_redeem_offers_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class FeatureFlagsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.FeatureFlagsProto) */ {
+ public:
+  FeatureFlagsProto();
+  virtual ~FeatureFlagsProto();
+
+  FeatureFlagsProto(const FeatureFlagsProto& from);
+  FeatureFlagsProto(FeatureFlagsProto&& from) noexcept
+    : FeatureFlagsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline FeatureFlagsProto& operator=(const FeatureFlagsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline FeatureFlagsProto& operator=(FeatureFlagsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const FeatureFlagsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const FeatureFlagsProto* internal_default_instance() {
+    return reinterpret_cast<const FeatureFlagsProto*>(
+               &_FeatureFlagsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    33;
+
+  friend void swap(FeatureFlagsProto& a, FeatureFlagsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(FeatureFlagsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline FeatureFlagsProto* New() const final {
+    return CreateMaybeMessage<FeatureFlagsProto>(nullptr);
+  }
+
+  FeatureFlagsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<FeatureFlagsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const FeatureFlagsProto& from);
+  void MergeFrom(const FeatureFlagsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(FeatureFlagsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.FeatureFlagsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSwitchesFieldNumber = 1,
+    kFeatureFlagsFieldNumber = 2,
+  };
+  // repeated string switches = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED int switches_size() const;
+  private:
+  int _internal_switches_size() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_switches();
+  PROTOBUF_DEPRECATED const std::string& switches(int index) const;
+  PROTOBUF_DEPRECATED std::string* mutable_switches(int index);
+  PROTOBUF_DEPRECATED void set_switches(int index, const std::string& value);
+  PROTOBUF_DEPRECATED void set_switches(int index, std::string&& value);
+  PROTOBUF_DEPRECATED void set_switches(int index, const char* value);
+  PROTOBUF_DEPRECATED void set_switches(int index, const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* add_switches();
+  PROTOBUF_DEPRECATED void add_switches(const std::string& value);
+  PROTOBUF_DEPRECATED void add_switches(std::string&& value);
+  PROTOBUF_DEPRECATED void add_switches(const char* value);
+  PROTOBUF_DEPRECATED void add_switches(const char* value, size_t size);
+  PROTOBUF_DEPRECATED const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& switches() const;
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_switches();
+  private:
+  const std::string& _internal_switches(int index) const;
+  std::string* _internal_add_switches();
+  public:
+
+  // repeated string feature_flags = 2;
+  int feature_flags_size() const;
+  private:
+  int _internal_feature_flags_size() const;
+  public:
+  void clear_feature_flags();
+  const std::string& feature_flags(int index) const;
+  std::string* mutable_feature_flags(int index);
+  void set_feature_flags(int index, const std::string& value);
+  void set_feature_flags(int index, std::string&& value);
+  void set_feature_flags(int index, const char* value);
+  void set_feature_flags(int index, const char* value, size_t size);
+  std::string* add_feature_flags();
+  void add_feature_flags(const std::string& value);
+  void add_feature_flags(std::string&& value);
+  void add_feature_flags(const char* value);
+  void add_feature_flags(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& feature_flags() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_feature_flags();
+  private:
+  const std::string& _internal_feature_flags(int index) const;
+  std::string* _internal_add_feature_flags();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.FeatureFlagsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> switches_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> feature_flags_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UptimeLimitProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UptimeLimitProto) */ {
+ public:
+  UptimeLimitProto();
+  virtual ~UptimeLimitProto();
+
+  UptimeLimitProto(const UptimeLimitProto& from);
+  UptimeLimitProto(UptimeLimitProto&& from) noexcept
+    : UptimeLimitProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UptimeLimitProto& operator=(const UptimeLimitProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UptimeLimitProto& operator=(UptimeLimitProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UptimeLimitProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UptimeLimitProto* internal_default_instance() {
+    return reinterpret_cast<const UptimeLimitProto*>(
+               &_UptimeLimitProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    34;
+
+  friend void swap(UptimeLimitProto& a, UptimeLimitProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UptimeLimitProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UptimeLimitProto* New() const final {
+    return CreateMaybeMessage<UptimeLimitProto>(nullptr);
+  }
+
+  UptimeLimitProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UptimeLimitProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UptimeLimitProto& from);
+  void MergeFrom(const UptimeLimitProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UptimeLimitProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UptimeLimitProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEUptimeLimitFieldNumber = 1,
+    kUptimeLimitFieldNumber = 2,
+  };
+  // optional int64 OBSOLETE_uptime_limit = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_uptime_limit() const;
+  private:
+  bool _internal_has_obsolete_uptime_limit() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_uptime_limit();
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::int64 obsolete_uptime_limit() const;
+  PROTOBUF_DEPRECATED void set_obsolete_uptime_limit(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_obsolete_uptime_limit() const;
+  void _internal_set_obsolete_uptime_limit(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 uptime_limit = 2;
+  bool has_uptime_limit() const;
+  private:
+  bool _internal_has_uptime_limit() const;
+  public:
+  void clear_uptime_limit();
+  ::PROTOBUF_NAMESPACE_ID::int64 uptime_limit() const;
+  void set_uptime_limit(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_uptime_limit() const;
+  void _internal_set_uptime_limit(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UptimeLimitProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 obsolete_uptime_limit_;
+  ::PROTOBUF_NAMESPACE_ID::int64 uptime_limit_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class VariationsParameterProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.VariationsParameterProto) */ {
+ public:
+  VariationsParameterProto();
+  virtual ~VariationsParameterProto();
+
+  VariationsParameterProto(const VariationsParameterProto& from);
+  VariationsParameterProto(VariationsParameterProto&& from) noexcept
+    : VariationsParameterProto() {
+    *this = ::std::move(from);
+  }
+
+  inline VariationsParameterProto& operator=(const VariationsParameterProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline VariationsParameterProto& operator=(VariationsParameterProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const VariationsParameterProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const VariationsParameterProto* internal_default_instance() {
+    return reinterpret_cast<const VariationsParameterProto*>(
+               &_VariationsParameterProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    35;
+
+  friend void swap(VariationsParameterProto& a, VariationsParameterProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(VariationsParameterProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline VariationsParameterProto* New() const final {
+    return CreateMaybeMessage<VariationsParameterProto>(nullptr);
+  }
+
+  VariationsParameterProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<VariationsParameterProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const VariationsParameterProto& from);
+  void MergeFrom(const VariationsParameterProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(VariationsParameterProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.VariationsParameterProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kParameterFieldNumber = 1,
+  };
+  // optional string parameter = 1;
+  bool has_parameter() const;
+  private:
+  bool _internal_has_parameter() const;
+  public:
+  void clear_parameter();
+  const std::string& parameter() const;
+  void set_parameter(const std::string& value);
+  void set_parameter(std::string&& value);
+  void set_parameter(const char* value);
+  void set_parameter(const char* value, size_t size);
+  std::string* mutable_parameter();
+  std::string* release_parameter();
+  void set_allocated_parameter(std::string* parameter);
+  private:
+  const std::string& _internal_parameter() const;
+  void _internal_set_parameter(const std::string& value);
+  std::string* _internal_mutable_parameter();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.VariationsParameterProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr parameter_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AttestationSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AttestationSettingsProto) */ {
+ public:
+  AttestationSettingsProto();
+  virtual ~AttestationSettingsProto();
+
+  AttestationSettingsProto(const AttestationSettingsProto& from);
+  AttestationSettingsProto(AttestationSettingsProto&& from) noexcept
+    : AttestationSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AttestationSettingsProto& operator=(const AttestationSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AttestationSettingsProto& operator=(AttestationSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AttestationSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AttestationSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const AttestationSettingsProto*>(
+               &_AttestationSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    36;
+
+  friend void swap(AttestationSettingsProto& a, AttestationSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AttestationSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AttestationSettingsProto* New() const final {
+    return CreateMaybeMessage<AttestationSettingsProto>(nullptr);
+  }
+
+  AttestationSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AttestationSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AttestationSettingsProto& from);
+  void MergeFrom(const AttestationSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AttestationSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AttestationSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAttestationEnabledFieldNumber = 1,
+    kContentProtectionEnabledFieldNumber = 2,
+  };
+  // optional bool attestation_enabled = 1 [default = false];
+  bool has_attestation_enabled() const;
+  private:
+  bool _internal_has_attestation_enabled() const;
+  public:
+  void clear_attestation_enabled();
+  bool attestation_enabled() const;
+  void set_attestation_enabled(bool value);
+  private:
+  bool _internal_attestation_enabled() const;
+  void _internal_set_attestation_enabled(bool value);
+  public:
+
+  // optional bool content_protection_enabled = 2 [default = true];
+  bool has_content_protection_enabled() const;
+  private:
+  bool _internal_has_content_protection_enabled() const;
+  public:
+  void clear_content_protection_enabled();
+  bool content_protection_enabled() const;
+  void set_content_protection_enabled(bool value);
+  private:
+  bool _internal_content_protection_enabled() const;
+  void _internal_set_content_protection_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AttestationSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool attestation_enabled_;
+  bool content_protection_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AccessibilitySettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AccessibilitySettingsProto) */ {
+ public:
+  AccessibilitySettingsProto();
+  virtual ~AccessibilitySettingsProto();
+
+  AccessibilitySettingsProto(const AccessibilitySettingsProto& from);
+  AccessibilitySettingsProto(AccessibilitySettingsProto&& from) noexcept
+    : AccessibilitySettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AccessibilitySettingsProto& operator=(const AccessibilitySettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AccessibilitySettingsProto& operator=(AccessibilitySettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AccessibilitySettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AccessibilitySettingsProto* internal_default_instance() {
+    return reinterpret_cast<const AccessibilitySettingsProto*>(
+               &_AccessibilitySettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    37;
+
+  friend void swap(AccessibilitySettingsProto& a, AccessibilitySettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AccessibilitySettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AccessibilitySettingsProto* New() const final {
+    return CreateMaybeMessage<AccessibilitySettingsProto>(nullptr);
+  }
+
+  AccessibilitySettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AccessibilitySettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AccessibilitySettingsProto& from);
+  void MergeFrom(const AccessibilitySettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AccessibilitySettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AccessibilitySettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef AccessibilitySettingsProto_ScreenMagnifierType ScreenMagnifierType;
+  static constexpr ScreenMagnifierType SCREEN_MAGNIFIER_TYPE_NONE =
+    AccessibilitySettingsProto_ScreenMagnifierType_SCREEN_MAGNIFIER_TYPE_NONE;
+  static constexpr ScreenMagnifierType SCREEN_MAGNIFIER_TYPE_FULL =
+    AccessibilitySettingsProto_ScreenMagnifierType_SCREEN_MAGNIFIER_TYPE_FULL;
+  static inline bool ScreenMagnifierType_IsValid(int value) {
+    return AccessibilitySettingsProto_ScreenMagnifierType_IsValid(value);
+  }
+  static constexpr ScreenMagnifierType ScreenMagnifierType_MIN =
+    AccessibilitySettingsProto_ScreenMagnifierType_ScreenMagnifierType_MIN;
+  static constexpr ScreenMagnifierType ScreenMagnifierType_MAX =
+    AccessibilitySettingsProto_ScreenMagnifierType_ScreenMagnifierType_MAX;
+  static constexpr int ScreenMagnifierType_ARRAYSIZE =
+    AccessibilitySettingsProto_ScreenMagnifierType_ScreenMagnifierType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ScreenMagnifierType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ScreenMagnifierType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ScreenMagnifierType_Name.");
+    return AccessibilitySettingsProto_ScreenMagnifierType_Name(enum_t_value);
+  }
+  static inline bool ScreenMagnifierType_Parse(const std::string& name,
+      ScreenMagnifierType* value) {
+    return AccessibilitySettingsProto_ScreenMagnifierType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLoginScreenLargeCursorEnabledOptionsFieldNumber = 7,
+    kLoginScreenSpokenFeedbackEnabledOptionsFieldNumber = 9,
+    kLoginScreenHighContrastEnabledOptionsFieldNumber = 11,
+    kLoginScreenVirtualKeyboardEnabledOptionsFieldNumber = 13,
+    kLoginScreenDictationEnabledOptionsFieldNumber = 15,
+    kLoginScreenSelectToSpeakEnabledOptionsFieldNumber = 17,
+    kLoginScreenCursorHighlightEnabledOptionsFieldNumber = 19,
+    kLoginScreenCaretHighlightEnabledOptionsFieldNumber = 21,
+    kLoginScreenMonoAudioEnabledOptionsFieldNumber = 23,
+    kLoginScreenAutoclickEnabledOptionsFieldNumber = 25,
+    kLoginScreenStickyKeysEnabledOptionsFieldNumber = 27,
+    kLoginScreenKeyboardFocusHighlightEnabledOptionsFieldNumber = 29,
+    kLoginScreenScreenMagnifierTypeOptionsFieldNumber = 31,
+    kLoginScreenShowOptionsInSystemTrayMenuEnabledOptionsFieldNumber = 33,
+    kLoginScreenShortcutsEnabledOptionsFieldNumber = 35,
+    kLoginScreenDefaultLargeCursorEnabledFieldNumber = 1,
+    kLoginScreenDefaultSpokenFeedbackEnabledFieldNumber = 2,
+    kLoginScreenDefaultHighContrastEnabledFieldNumber = 3,
+    kLoginScreenDefaultVirtualKeyboardEnabledFieldNumber = 5,
+    kLoginScreenDefaultScreenMagnifierTypeFieldNumber = 4,
+    kLoginScreenLargeCursorEnabledFieldNumber = 6,
+    kLoginScreenSpokenFeedbackEnabledFieldNumber = 8,
+    kLoginScreenHighContrastEnabledFieldNumber = 10,
+    kLoginScreenVirtualKeyboardEnabledFieldNumber = 12,
+    kLoginScreenDictationEnabledFieldNumber = 14,
+    kLoginScreenSelectToSpeakEnabledFieldNumber = 16,
+    kLoginScreenCursorHighlightEnabledFieldNumber = 18,
+    kLoginScreenCaretHighlightEnabledFieldNumber = 20,
+    kLoginScreenMonoAudioEnabledFieldNumber = 22,
+    kLoginScreenAutoclickEnabledFieldNumber = 24,
+    kLoginScreenStickyKeysEnabledFieldNumber = 26,
+    kLoginScreenKeyboardFocusHighlightEnabledFieldNumber = 28,
+    kLoginScreenShowOptionsInSystemTrayMenuEnabledFieldNumber = 32,
+    kLoginScreenShortcutsEnabledFieldNumber = 34,
+    kLoginScreenScreenMagnifierTypeFieldNumber = 30,
+  };
+  // optional .enterprise_management.PolicyOptions login_screen_large_cursor_enabled_options = 7;
+  bool has_login_screen_large_cursor_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_large_cursor_enabled_options() const;
+  public:
+  void clear_login_screen_large_cursor_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_large_cursor_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_large_cursor_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_large_cursor_enabled_options();
+  void set_allocated_login_screen_large_cursor_enabled_options(::enterprise_management::PolicyOptions* login_screen_large_cursor_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_large_cursor_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_large_cursor_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_spoken_feedback_enabled_options = 9;
+  bool has_login_screen_spoken_feedback_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_spoken_feedback_enabled_options() const;
+  public:
+  void clear_login_screen_spoken_feedback_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_spoken_feedback_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_spoken_feedback_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_spoken_feedback_enabled_options();
+  void set_allocated_login_screen_spoken_feedback_enabled_options(::enterprise_management::PolicyOptions* login_screen_spoken_feedback_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_spoken_feedback_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_spoken_feedback_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_high_contrast_enabled_options = 11;
+  bool has_login_screen_high_contrast_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_high_contrast_enabled_options() const;
+  public:
+  void clear_login_screen_high_contrast_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_high_contrast_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_high_contrast_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_high_contrast_enabled_options();
+  void set_allocated_login_screen_high_contrast_enabled_options(::enterprise_management::PolicyOptions* login_screen_high_contrast_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_high_contrast_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_high_contrast_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_virtual_keyboard_enabled_options = 13;
+  bool has_login_screen_virtual_keyboard_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_virtual_keyboard_enabled_options() const;
+  public:
+  void clear_login_screen_virtual_keyboard_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_virtual_keyboard_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_virtual_keyboard_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_virtual_keyboard_enabled_options();
+  void set_allocated_login_screen_virtual_keyboard_enabled_options(::enterprise_management::PolicyOptions* login_screen_virtual_keyboard_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_virtual_keyboard_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_virtual_keyboard_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_dictation_enabled_options = 15;
+  bool has_login_screen_dictation_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_dictation_enabled_options() const;
+  public:
+  void clear_login_screen_dictation_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_dictation_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_dictation_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_dictation_enabled_options();
+  void set_allocated_login_screen_dictation_enabled_options(::enterprise_management::PolicyOptions* login_screen_dictation_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_dictation_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_dictation_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_select_to_speak_enabled_options = 17;
+  bool has_login_screen_select_to_speak_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_select_to_speak_enabled_options() const;
+  public:
+  void clear_login_screen_select_to_speak_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_select_to_speak_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_select_to_speak_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_select_to_speak_enabled_options();
+  void set_allocated_login_screen_select_to_speak_enabled_options(::enterprise_management::PolicyOptions* login_screen_select_to_speak_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_select_to_speak_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_select_to_speak_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_cursor_highlight_enabled_options = 19;
+  bool has_login_screen_cursor_highlight_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_cursor_highlight_enabled_options() const;
+  public:
+  void clear_login_screen_cursor_highlight_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_cursor_highlight_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_cursor_highlight_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_cursor_highlight_enabled_options();
+  void set_allocated_login_screen_cursor_highlight_enabled_options(::enterprise_management::PolicyOptions* login_screen_cursor_highlight_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_cursor_highlight_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_cursor_highlight_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_caret_highlight_enabled_options = 21;
+  bool has_login_screen_caret_highlight_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_caret_highlight_enabled_options() const;
+  public:
+  void clear_login_screen_caret_highlight_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_caret_highlight_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_caret_highlight_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_caret_highlight_enabled_options();
+  void set_allocated_login_screen_caret_highlight_enabled_options(::enterprise_management::PolicyOptions* login_screen_caret_highlight_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_caret_highlight_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_caret_highlight_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_mono_audio_enabled_options = 23;
+  bool has_login_screen_mono_audio_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_mono_audio_enabled_options() const;
+  public:
+  void clear_login_screen_mono_audio_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_mono_audio_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_mono_audio_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_mono_audio_enabled_options();
+  void set_allocated_login_screen_mono_audio_enabled_options(::enterprise_management::PolicyOptions* login_screen_mono_audio_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_mono_audio_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_mono_audio_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_autoclick_enabled_options = 25;
+  bool has_login_screen_autoclick_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_autoclick_enabled_options() const;
+  public:
+  void clear_login_screen_autoclick_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_autoclick_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_autoclick_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_autoclick_enabled_options();
+  void set_allocated_login_screen_autoclick_enabled_options(::enterprise_management::PolicyOptions* login_screen_autoclick_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_autoclick_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_autoclick_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_sticky_keys_enabled_options = 27;
+  bool has_login_screen_sticky_keys_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_sticky_keys_enabled_options() const;
+  public:
+  void clear_login_screen_sticky_keys_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_sticky_keys_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_sticky_keys_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_sticky_keys_enabled_options();
+  void set_allocated_login_screen_sticky_keys_enabled_options(::enterprise_management::PolicyOptions* login_screen_sticky_keys_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_sticky_keys_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_sticky_keys_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_keyboard_focus_highlight_enabled_options = 29;
+  bool has_login_screen_keyboard_focus_highlight_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_keyboard_focus_highlight_enabled_options() const;
+  public:
+  void clear_login_screen_keyboard_focus_highlight_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_keyboard_focus_highlight_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_keyboard_focus_highlight_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_keyboard_focus_highlight_enabled_options();
+  void set_allocated_login_screen_keyboard_focus_highlight_enabled_options(::enterprise_management::PolicyOptions* login_screen_keyboard_focus_highlight_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_keyboard_focus_highlight_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_keyboard_focus_highlight_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_screen_magnifier_type_options = 31;
+  bool has_login_screen_screen_magnifier_type_options() const;
+  private:
+  bool _internal_has_login_screen_screen_magnifier_type_options() const;
+  public:
+  void clear_login_screen_screen_magnifier_type_options();
+  const ::enterprise_management::PolicyOptions& login_screen_screen_magnifier_type_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_screen_magnifier_type_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_screen_magnifier_type_options();
+  void set_allocated_login_screen_screen_magnifier_type_options(::enterprise_management::PolicyOptions* login_screen_screen_magnifier_type_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_screen_magnifier_type_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_screen_magnifier_type_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_show_options_in_system_tray_menu_enabled_options = 33;
+  bool has_login_screen_show_options_in_system_tray_menu_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_show_options_in_system_tray_menu_enabled_options() const;
+  public:
+  void clear_login_screen_show_options_in_system_tray_menu_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_show_options_in_system_tray_menu_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_show_options_in_system_tray_menu_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_show_options_in_system_tray_menu_enabled_options();
+  void set_allocated_login_screen_show_options_in_system_tray_menu_enabled_options(::enterprise_management::PolicyOptions* login_screen_show_options_in_system_tray_menu_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_show_options_in_system_tray_menu_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_show_options_in_system_tray_menu_enabled_options();
+  public:
+
+  // optional .enterprise_management.PolicyOptions login_screen_shortcuts_enabled_options = 35;
+  bool has_login_screen_shortcuts_enabled_options() const;
+  private:
+  bool _internal_has_login_screen_shortcuts_enabled_options() const;
+  public:
+  void clear_login_screen_shortcuts_enabled_options();
+  const ::enterprise_management::PolicyOptions& login_screen_shortcuts_enabled_options() const;
+  ::enterprise_management::PolicyOptions* release_login_screen_shortcuts_enabled_options();
+  ::enterprise_management::PolicyOptions* mutable_login_screen_shortcuts_enabled_options();
+  void set_allocated_login_screen_shortcuts_enabled_options(::enterprise_management::PolicyOptions* login_screen_shortcuts_enabled_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_login_screen_shortcuts_enabled_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_login_screen_shortcuts_enabled_options();
+  public:
+
+  // optional bool login_screen_default_large_cursor_enabled = 1;
+  bool has_login_screen_default_large_cursor_enabled() const;
+  private:
+  bool _internal_has_login_screen_default_large_cursor_enabled() const;
+  public:
+  void clear_login_screen_default_large_cursor_enabled();
+  bool login_screen_default_large_cursor_enabled() const;
+  void set_login_screen_default_large_cursor_enabled(bool value);
+  private:
+  bool _internal_login_screen_default_large_cursor_enabled() const;
+  void _internal_set_login_screen_default_large_cursor_enabled(bool value);
+  public:
+
+  // optional bool login_screen_default_spoken_feedback_enabled = 2;
+  bool has_login_screen_default_spoken_feedback_enabled() const;
+  private:
+  bool _internal_has_login_screen_default_spoken_feedback_enabled() const;
+  public:
+  void clear_login_screen_default_spoken_feedback_enabled();
+  bool login_screen_default_spoken_feedback_enabled() const;
+  void set_login_screen_default_spoken_feedback_enabled(bool value);
+  private:
+  bool _internal_login_screen_default_spoken_feedback_enabled() const;
+  void _internal_set_login_screen_default_spoken_feedback_enabled(bool value);
+  public:
+
+  // optional bool login_screen_default_high_contrast_enabled = 3;
+  bool has_login_screen_default_high_contrast_enabled() const;
+  private:
+  bool _internal_has_login_screen_default_high_contrast_enabled() const;
+  public:
+  void clear_login_screen_default_high_contrast_enabled();
+  bool login_screen_default_high_contrast_enabled() const;
+  void set_login_screen_default_high_contrast_enabled(bool value);
+  private:
+  bool _internal_login_screen_default_high_contrast_enabled() const;
+  void _internal_set_login_screen_default_high_contrast_enabled(bool value);
+  public:
+
+  // optional bool login_screen_default_virtual_keyboard_enabled = 5;
+  bool has_login_screen_default_virtual_keyboard_enabled() const;
+  private:
+  bool _internal_has_login_screen_default_virtual_keyboard_enabled() const;
+  public:
+  void clear_login_screen_default_virtual_keyboard_enabled();
+  bool login_screen_default_virtual_keyboard_enabled() const;
+  void set_login_screen_default_virtual_keyboard_enabled(bool value);
+  private:
+  bool _internal_login_screen_default_virtual_keyboard_enabled() const;
+  void _internal_set_login_screen_default_virtual_keyboard_enabled(bool value);
+  public:
+
+  // optional .enterprise_management.AccessibilitySettingsProto.ScreenMagnifierType login_screen_default_screen_magnifier_type = 4;
+  bool has_login_screen_default_screen_magnifier_type() const;
+  private:
+  bool _internal_has_login_screen_default_screen_magnifier_type() const;
+  public:
+  void clear_login_screen_default_screen_magnifier_type();
+  ::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType login_screen_default_screen_magnifier_type() const;
+  void set_login_screen_default_screen_magnifier_type(::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType value);
+  private:
+  ::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType _internal_login_screen_default_screen_magnifier_type() const;
+  void _internal_set_login_screen_default_screen_magnifier_type(::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType value);
+  public:
+
+  // optional bool login_screen_large_cursor_enabled = 6;
+  bool has_login_screen_large_cursor_enabled() const;
+  private:
+  bool _internal_has_login_screen_large_cursor_enabled() const;
+  public:
+  void clear_login_screen_large_cursor_enabled();
+  bool login_screen_large_cursor_enabled() const;
+  void set_login_screen_large_cursor_enabled(bool value);
+  private:
+  bool _internal_login_screen_large_cursor_enabled() const;
+  void _internal_set_login_screen_large_cursor_enabled(bool value);
+  public:
+
+  // optional bool login_screen_spoken_feedback_enabled = 8;
+  bool has_login_screen_spoken_feedback_enabled() const;
+  private:
+  bool _internal_has_login_screen_spoken_feedback_enabled() const;
+  public:
+  void clear_login_screen_spoken_feedback_enabled();
+  bool login_screen_spoken_feedback_enabled() const;
+  void set_login_screen_spoken_feedback_enabled(bool value);
+  private:
+  bool _internal_login_screen_spoken_feedback_enabled() const;
+  void _internal_set_login_screen_spoken_feedback_enabled(bool value);
+  public:
+
+  // optional bool login_screen_high_contrast_enabled = 10;
+  bool has_login_screen_high_contrast_enabled() const;
+  private:
+  bool _internal_has_login_screen_high_contrast_enabled() const;
+  public:
+  void clear_login_screen_high_contrast_enabled();
+  bool login_screen_high_contrast_enabled() const;
+  void set_login_screen_high_contrast_enabled(bool value);
+  private:
+  bool _internal_login_screen_high_contrast_enabled() const;
+  void _internal_set_login_screen_high_contrast_enabled(bool value);
+  public:
+
+  // optional bool login_screen_virtual_keyboard_enabled = 12;
+  bool has_login_screen_virtual_keyboard_enabled() const;
+  private:
+  bool _internal_has_login_screen_virtual_keyboard_enabled() const;
+  public:
+  void clear_login_screen_virtual_keyboard_enabled();
+  bool login_screen_virtual_keyboard_enabled() const;
+  void set_login_screen_virtual_keyboard_enabled(bool value);
+  private:
+  bool _internal_login_screen_virtual_keyboard_enabled() const;
+  void _internal_set_login_screen_virtual_keyboard_enabled(bool value);
+  public:
+
+  // optional bool login_screen_dictation_enabled = 14;
+  bool has_login_screen_dictation_enabled() const;
+  private:
+  bool _internal_has_login_screen_dictation_enabled() const;
+  public:
+  void clear_login_screen_dictation_enabled();
+  bool login_screen_dictation_enabled() const;
+  void set_login_screen_dictation_enabled(bool value);
+  private:
+  bool _internal_login_screen_dictation_enabled() const;
+  void _internal_set_login_screen_dictation_enabled(bool value);
+  public:
+
+  // optional bool login_screen_select_to_speak_enabled = 16;
+  bool has_login_screen_select_to_speak_enabled() const;
+  private:
+  bool _internal_has_login_screen_select_to_speak_enabled() const;
+  public:
+  void clear_login_screen_select_to_speak_enabled();
+  bool login_screen_select_to_speak_enabled() const;
+  void set_login_screen_select_to_speak_enabled(bool value);
+  private:
+  bool _internal_login_screen_select_to_speak_enabled() const;
+  void _internal_set_login_screen_select_to_speak_enabled(bool value);
+  public:
+
+  // optional bool login_screen_cursor_highlight_enabled = 18;
+  bool has_login_screen_cursor_highlight_enabled() const;
+  private:
+  bool _internal_has_login_screen_cursor_highlight_enabled() const;
+  public:
+  void clear_login_screen_cursor_highlight_enabled();
+  bool login_screen_cursor_highlight_enabled() const;
+  void set_login_screen_cursor_highlight_enabled(bool value);
+  private:
+  bool _internal_login_screen_cursor_highlight_enabled() const;
+  void _internal_set_login_screen_cursor_highlight_enabled(bool value);
+  public:
+
+  // optional bool login_screen_caret_highlight_enabled = 20;
+  bool has_login_screen_caret_highlight_enabled() const;
+  private:
+  bool _internal_has_login_screen_caret_highlight_enabled() const;
+  public:
+  void clear_login_screen_caret_highlight_enabled();
+  bool login_screen_caret_highlight_enabled() const;
+  void set_login_screen_caret_highlight_enabled(bool value);
+  private:
+  bool _internal_login_screen_caret_highlight_enabled() const;
+  void _internal_set_login_screen_caret_highlight_enabled(bool value);
+  public:
+
+  // optional bool login_screen_mono_audio_enabled = 22;
+  bool has_login_screen_mono_audio_enabled() const;
+  private:
+  bool _internal_has_login_screen_mono_audio_enabled() const;
+  public:
+  void clear_login_screen_mono_audio_enabled();
+  bool login_screen_mono_audio_enabled() const;
+  void set_login_screen_mono_audio_enabled(bool value);
+  private:
+  bool _internal_login_screen_mono_audio_enabled() const;
+  void _internal_set_login_screen_mono_audio_enabled(bool value);
+  public:
+
+  // optional bool login_screen_autoclick_enabled = 24;
+  bool has_login_screen_autoclick_enabled() const;
+  private:
+  bool _internal_has_login_screen_autoclick_enabled() const;
+  public:
+  void clear_login_screen_autoclick_enabled();
+  bool login_screen_autoclick_enabled() const;
+  void set_login_screen_autoclick_enabled(bool value);
+  private:
+  bool _internal_login_screen_autoclick_enabled() const;
+  void _internal_set_login_screen_autoclick_enabled(bool value);
+  public:
+
+  // optional bool login_screen_sticky_keys_enabled = 26;
+  bool has_login_screen_sticky_keys_enabled() const;
+  private:
+  bool _internal_has_login_screen_sticky_keys_enabled() const;
+  public:
+  void clear_login_screen_sticky_keys_enabled();
+  bool login_screen_sticky_keys_enabled() const;
+  void set_login_screen_sticky_keys_enabled(bool value);
+  private:
+  bool _internal_login_screen_sticky_keys_enabled() const;
+  void _internal_set_login_screen_sticky_keys_enabled(bool value);
+  public:
+
+  // optional bool login_screen_keyboard_focus_highlight_enabled = 28;
+  bool has_login_screen_keyboard_focus_highlight_enabled() const;
+  private:
+  bool _internal_has_login_screen_keyboard_focus_highlight_enabled() const;
+  public:
+  void clear_login_screen_keyboard_focus_highlight_enabled();
+  bool login_screen_keyboard_focus_highlight_enabled() const;
+  void set_login_screen_keyboard_focus_highlight_enabled(bool value);
+  private:
+  bool _internal_login_screen_keyboard_focus_highlight_enabled() const;
+  void _internal_set_login_screen_keyboard_focus_highlight_enabled(bool value);
+  public:
+
+  // optional bool login_screen_show_options_in_system_tray_menu_enabled = 32;
+  bool has_login_screen_show_options_in_system_tray_menu_enabled() const;
+  private:
+  bool _internal_has_login_screen_show_options_in_system_tray_menu_enabled() const;
+  public:
+  void clear_login_screen_show_options_in_system_tray_menu_enabled();
+  bool login_screen_show_options_in_system_tray_menu_enabled() const;
+  void set_login_screen_show_options_in_system_tray_menu_enabled(bool value);
+  private:
+  bool _internal_login_screen_show_options_in_system_tray_menu_enabled() const;
+  void _internal_set_login_screen_show_options_in_system_tray_menu_enabled(bool value);
+  public:
+
+  // optional bool login_screen_shortcuts_enabled = 34;
+  bool has_login_screen_shortcuts_enabled() const;
+  private:
+  bool _internal_has_login_screen_shortcuts_enabled() const;
+  public:
+  void clear_login_screen_shortcuts_enabled();
+  bool login_screen_shortcuts_enabled() const;
+  void set_login_screen_shortcuts_enabled(bool value);
+  private:
+  bool _internal_login_screen_shortcuts_enabled() const;
+  void _internal_set_login_screen_shortcuts_enabled(bool value);
+  public:
+
+  // optional int64 login_screen_screen_magnifier_type = 30;
+  bool has_login_screen_screen_magnifier_type() const;
+  private:
+  bool _internal_has_login_screen_screen_magnifier_type() const;
+  public:
+  void clear_login_screen_screen_magnifier_type();
+  ::PROTOBUF_NAMESPACE_ID::int64 login_screen_screen_magnifier_type() const;
+  void set_login_screen_screen_magnifier_type(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_login_screen_screen_magnifier_type() const;
+  void _internal_set_login_screen_screen_magnifier_type(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AccessibilitySettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::PolicyOptions* login_screen_large_cursor_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_spoken_feedback_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_high_contrast_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_virtual_keyboard_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_dictation_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_select_to_speak_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_cursor_highlight_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_caret_highlight_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_mono_audio_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_autoclick_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_sticky_keys_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_keyboard_focus_highlight_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_screen_magnifier_type_options_;
+  ::enterprise_management::PolicyOptions* login_screen_show_options_in_system_tray_menu_enabled_options_;
+  ::enterprise_management::PolicyOptions* login_screen_shortcuts_enabled_options_;
+  bool login_screen_default_large_cursor_enabled_;
+  bool login_screen_default_spoken_feedback_enabled_;
+  bool login_screen_default_high_contrast_enabled_;
+  bool login_screen_default_virtual_keyboard_enabled_;
+  int login_screen_default_screen_magnifier_type_;
+  bool login_screen_large_cursor_enabled_;
+  bool login_screen_spoken_feedback_enabled_;
+  bool login_screen_high_contrast_enabled_;
+  bool login_screen_virtual_keyboard_enabled_;
+  bool login_screen_dictation_enabled_;
+  bool login_screen_select_to_speak_enabled_;
+  bool login_screen_cursor_highlight_enabled_;
+  bool login_screen_caret_highlight_enabled_;
+  bool login_screen_mono_audio_enabled_;
+  bool login_screen_autoclick_enabled_;
+  bool login_screen_sticky_keys_enabled_;
+  bool login_screen_keyboard_focus_highlight_enabled_;
+  bool login_screen_show_options_in_system_tray_menu_enabled_;
+  bool login_screen_shortcuts_enabled_;
+  ::PROTOBUF_NAMESPACE_ID::int64 login_screen_screen_magnifier_type_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_SupervisedUsersSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto) */ {
+ public:
+  OBSOLETE_SupervisedUsersSettingsProto();
+  virtual ~OBSOLETE_SupervisedUsersSettingsProto();
+
+  OBSOLETE_SupervisedUsersSettingsProto(const OBSOLETE_SupervisedUsersSettingsProto& from);
+  OBSOLETE_SupervisedUsersSettingsProto(OBSOLETE_SupervisedUsersSettingsProto&& from) noexcept
+    : OBSOLETE_SupervisedUsersSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_SupervisedUsersSettingsProto& operator=(const OBSOLETE_SupervisedUsersSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_SupervisedUsersSettingsProto& operator=(OBSOLETE_SupervisedUsersSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_SupervisedUsersSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_SupervisedUsersSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_SupervisedUsersSettingsProto*>(
+               &_OBSOLETE_SupervisedUsersSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    38;
+
+  friend void swap(OBSOLETE_SupervisedUsersSettingsProto& a, OBSOLETE_SupervisedUsersSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_SupervisedUsersSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_SupervisedUsersSettingsProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_SupervisedUsersSettingsProto>(nullptr);
+  }
+
+  OBSOLETE_SupervisedUsersSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_SupervisedUsersSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_SupervisedUsersSettingsProto& from);
+  void MergeFrom(const OBSOLETE_SupervisedUsersSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_SupervisedUsersSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_SupervisedUsersSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETESupervisedUsersEnabledFieldNumber = 1,
+  };
+  // optional bool OBSOLETE_supervised_users_enabled = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_supervised_users_enabled() const;
+  private:
+  bool _internal_has_obsolete_supervised_users_enabled() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_supervised_users_enabled();
+  PROTOBUF_DEPRECATED bool obsolete_supervised_users_enabled() const;
+  PROTOBUF_DEPRECATED void set_obsolete_supervised_users_enabled(bool value);
+  private:
+  bool _internal_obsolete_supervised_users_enabled() const;
+  void _internal_set_obsolete_supervised_users_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool obsolete_supervised_users_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LoginScreenPowerManagementProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LoginScreenPowerManagementProto) */ {
+ public:
+  LoginScreenPowerManagementProto();
+  virtual ~LoginScreenPowerManagementProto();
+
+  LoginScreenPowerManagementProto(const LoginScreenPowerManagementProto& from);
+  LoginScreenPowerManagementProto(LoginScreenPowerManagementProto&& from) noexcept
+    : LoginScreenPowerManagementProto() {
+    *this = ::std::move(from);
+  }
+
+  inline LoginScreenPowerManagementProto& operator=(const LoginScreenPowerManagementProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LoginScreenPowerManagementProto& operator=(LoginScreenPowerManagementProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LoginScreenPowerManagementProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LoginScreenPowerManagementProto* internal_default_instance() {
+    return reinterpret_cast<const LoginScreenPowerManagementProto*>(
+               &_LoginScreenPowerManagementProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    39;
+
+  friend void swap(LoginScreenPowerManagementProto& a, LoginScreenPowerManagementProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LoginScreenPowerManagementProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LoginScreenPowerManagementProto* New() const final {
+    return CreateMaybeMessage<LoginScreenPowerManagementProto>(nullptr);
+  }
+
+  LoginScreenPowerManagementProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LoginScreenPowerManagementProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LoginScreenPowerManagementProto& from);
+  void MergeFrom(const LoginScreenPowerManagementProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LoginScreenPowerManagementProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LoginScreenPowerManagementProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLoginScreenPowerManagementFieldNumber = 1,
+  };
+  // optional string login_screen_power_management = 1;
+  bool has_login_screen_power_management() const;
+  private:
+  bool _internal_has_login_screen_power_management() const;
+  public:
+  void clear_login_screen_power_management();
+  const std::string& login_screen_power_management() const;
+  void set_login_screen_power_management(const std::string& value);
+  void set_login_screen_power_management(std::string&& value);
+  void set_login_screen_power_management(const char* value);
+  void set_login_screen_power_management(const char* value, size_t size);
+  std::string* mutable_login_screen_power_management();
+  std::string* release_login_screen_power_management();
+  void set_allocated_login_screen_power_management(std::string* login_screen_power_management);
+  private:
+  const std::string& _internal_login_screen_power_management() const;
+  void _internal_set_login_screen_power_management(const std::string& value);
+  std::string* _internal_mutable_login_screen_power_management();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LoginScreenPowerManagementProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr login_screen_power_management_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AutoCleanupSettigsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AutoCleanupSettigsProto) */ {
+ public:
+  AutoCleanupSettigsProto();
+  virtual ~AutoCleanupSettigsProto();
+
+  AutoCleanupSettigsProto(const AutoCleanupSettigsProto& from);
+  AutoCleanupSettigsProto(AutoCleanupSettigsProto&& from) noexcept
+    : AutoCleanupSettigsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AutoCleanupSettigsProto& operator=(const AutoCleanupSettigsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AutoCleanupSettigsProto& operator=(AutoCleanupSettigsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AutoCleanupSettigsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AutoCleanupSettigsProto* internal_default_instance() {
+    return reinterpret_cast<const AutoCleanupSettigsProto*>(
+               &_AutoCleanupSettigsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    40;
+
+  friend void swap(AutoCleanupSettigsProto& a, AutoCleanupSettigsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AutoCleanupSettigsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AutoCleanupSettigsProto* New() const final {
+    return CreateMaybeMessage<AutoCleanupSettigsProto>(nullptr);
+  }
+
+  AutoCleanupSettigsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AutoCleanupSettigsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AutoCleanupSettigsProto& from);
+  void MergeFrom(const AutoCleanupSettigsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AutoCleanupSettigsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AutoCleanupSettigsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCleanUpStrategyFieldNumber = 1,
+  };
+  // optional string clean_up_strategy = 1;
+  bool has_clean_up_strategy() const;
+  private:
+  bool _internal_has_clean_up_strategy() const;
+  public:
+  void clear_clean_up_strategy();
+  const std::string& clean_up_strategy() const;
+  void set_clean_up_strategy(const std::string& value);
+  void set_clean_up_strategy(std::string&& value);
+  void set_clean_up_strategy(const char* value);
+  void set_clean_up_strategy(const char* value, size_t size);
+  std::string* mutable_clean_up_strategy();
+  std::string* release_clean_up_strategy();
+  void set_allocated_clean_up_strategy(std::string* clean_up_strategy);
+  private:
+  const std::string& _internal_clean_up_strategy() const;
+  void _internal_set_clean_up_strategy(const std::string& value);
+  std::string* _internal_mutable_clean_up_strategy();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AutoCleanupSettigsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr clean_up_strategy_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SystemSettingsProto) */ {
+ public:
+  SystemSettingsProto();
+  virtual ~SystemSettingsProto();
+
+  SystemSettingsProto(const SystemSettingsProto& from);
+  SystemSettingsProto(SystemSettingsProto&& from) noexcept
+    : SystemSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemSettingsProto& operator=(const SystemSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemSettingsProto& operator=(SystemSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const SystemSettingsProto*>(
+               &_SystemSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    41;
+
+  friend void swap(SystemSettingsProto& a, SystemSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemSettingsProto* New() const final {
+    return CreateMaybeMessage<SystemSettingsProto>(nullptr);
+  }
+
+  SystemSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemSettingsProto& from);
+  void MergeFrom(const SystemSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SystemSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBlockDevmodeFieldNumber = 1,
+  };
+  // optional bool block_devmode = 1;
+  bool has_block_devmode() const;
+  private:
+  bool _internal_has_block_devmode() const;
+  public:
+  void clear_block_devmode();
+  bool block_devmode() const;
+  void set_block_devmode(bool value);
+  private:
+  bool _internal_block_devmode() const;
+  void _internal_set_block_devmode(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SystemSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool block_devmode_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SAMLSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SAMLSettingsProto) */ {
+ public:
+  SAMLSettingsProto();
+  virtual ~SAMLSettingsProto();
+
+  SAMLSettingsProto(const SAMLSettingsProto& from);
+  SAMLSettingsProto(SAMLSettingsProto&& from) noexcept
+    : SAMLSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline SAMLSettingsProto& operator=(const SAMLSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SAMLSettingsProto& operator=(SAMLSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SAMLSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SAMLSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const SAMLSettingsProto*>(
+               &_SAMLSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    42;
+
+  friend void swap(SAMLSettingsProto& a, SAMLSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SAMLSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SAMLSettingsProto* New() const final {
+    return CreateMaybeMessage<SAMLSettingsProto>(nullptr);
+  }
+
+  SAMLSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SAMLSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SAMLSettingsProto& from);
+  void MergeFrom(const SAMLSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SAMLSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SAMLSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTransferSamlCookiesFieldNumber = 1,
+  };
+  // optional bool transfer_saml_cookies = 1;
+  bool has_transfer_saml_cookies() const;
+  private:
+  bool _internal_has_transfer_saml_cookies() const;
+  public:
+  void clear_transfer_saml_cookies();
+  bool transfer_saml_cookies() const;
+  void set_transfer_saml_cookies(bool value);
+  private:
+  bool _internal_transfer_saml_cookies() const;
+  void _internal_set_transfer_saml_cookies(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SAMLSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool transfer_saml_cookies_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RebootOnShutdownProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RebootOnShutdownProto) */ {
+ public:
+  RebootOnShutdownProto();
+  virtual ~RebootOnShutdownProto();
+
+  RebootOnShutdownProto(const RebootOnShutdownProto& from);
+  RebootOnShutdownProto(RebootOnShutdownProto&& from) noexcept
+    : RebootOnShutdownProto() {
+    *this = ::std::move(from);
+  }
+
+  inline RebootOnShutdownProto& operator=(const RebootOnShutdownProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RebootOnShutdownProto& operator=(RebootOnShutdownProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RebootOnShutdownProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RebootOnShutdownProto* internal_default_instance() {
+    return reinterpret_cast<const RebootOnShutdownProto*>(
+               &_RebootOnShutdownProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    43;
+
+  friend void swap(RebootOnShutdownProto& a, RebootOnShutdownProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RebootOnShutdownProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RebootOnShutdownProto* New() const final {
+    return CreateMaybeMessage<RebootOnShutdownProto>(nullptr);
+  }
+
+  RebootOnShutdownProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RebootOnShutdownProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RebootOnShutdownProto& from);
+  void MergeFrom(const RebootOnShutdownProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RebootOnShutdownProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RebootOnShutdownProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRebootOnShutdownFieldNumber = 1,
+  };
+  // optional bool reboot_on_shutdown = 1 [default = false];
+  bool has_reboot_on_shutdown() const;
+  private:
+  bool _internal_has_reboot_on_shutdown() const;
+  public:
+  void clear_reboot_on_shutdown();
+  bool reboot_on_shutdown() const;
+  void set_reboot_on_shutdown(bool value);
+  private:
+  bool _internal_reboot_on_shutdown() const;
+  void _internal_set_reboot_on_shutdown(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RebootOnShutdownProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool reboot_on_shutdown_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceHeartbeatSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceHeartbeatSettingsProto) */ {
+ public:
+  DeviceHeartbeatSettingsProto();
+  virtual ~DeviceHeartbeatSettingsProto();
+
+  DeviceHeartbeatSettingsProto(const DeviceHeartbeatSettingsProto& from);
+  DeviceHeartbeatSettingsProto(DeviceHeartbeatSettingsProto&& from) noexcept
+    : DeviceHeartbeatSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceHeartbeatSettingsProto& operator=(const DeviceHeartbeatSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceHeartbeatSettingsProto& operator=(DeviceHeartbeatSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceHeartbeatSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceHeartbeatSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceHeartbeatSettingsProto*>(
+               &_DeviceHeartbeatSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    44;
+
+  friend void swap(DeviceHeartbeatSettingsProto& a, DeviceHeartbeatSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceHeartbeatSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceHeartbeatSettingsProto* New() const final {
+    return CreateMaybeMessage<DeviceHeartbeatSettingsProto>(nullptr);
+  }
+
+  DeviceHeartbeatSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceHeartbeatSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceHeartbeatSettingsProto& from);
+  void MergeFrom(const DeviceHeartbeatSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceHeartbeatSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceHeartbeatSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHeartbeatEnabledFieldNumber = 1,
+    kHeartbeatFrequencyFieldNumber = 2,
+  };
+  // optional bool heartbeat_enabled = 1 [default = false];
+  bool has_heartbeat_enabled() const;
+  private:
+  bool _internal_has_heartbeat_enabled() const;
+  public:
+  void clear_heartbeat_enabled();
+  bool heartbeat_enabled() const;
+  void set_heartbeat_enabled(bool value);
+  private:
+  bool _internal_heartbeat_enabled() const;
+  void _internal_set_heartbeat_enabled(bool value);
+  public:
+
+  // optional int64 heartbeat_frequency = 2 [default = 120000];
+  bool has_heartbeat_frequency() const;
+  private:
+  bool _internal_has_heartbeat_frequency() const;
+  public:
+  void clear_heartbeat_frequency();
+  ::PROTOBUF_NAMESPACE_ID::int64 heartbeat_frequency() const;
+  void set_heartbeat_frequency(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_heartbeat_frequency() const;
+  void _internal_set_heartbeat_frequency(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceHeartbeatSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool heartbeat_enabled_;
+  ::PROTOBUF_NAMESPACE_ID::int64 heartbeat_frequency_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ExtensionCacheSizeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ExtensionCacheSizeProto) */ {
+ public:
+  ExtensionCacheSizeProto();
+  virtual ~ExtensionCacheSizeProto();
+
+  ExtensionCacheSizeProto(const ExtensionCacheSizeProto& from);
+  ExtensionCacheSizeProto(ExtensionCacheSizeProto&& from) noexcept
+    : ExtensionCacheSizeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline ExtensionCacheSizeProto& operator=(const ExtensionCacheSizeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ExtensionCacheSizeProto& operator=(ExtensionCacheSizeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ExtensionCacheSizeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ExtensionCacheSizeProto* internal_default_instance() {
+    return reinterpret_cast<const ExtensionCacheSizeProto*>(
+               &_ExtensionCacheSizeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    45;
+
+  friend void swap(ExtensionCacheSizeProto& a, ExtensionCacheSizeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ExtensionCacheSizeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ExtensionCacheSizeProto* New() const final {
+    return CreateMaybeMessage<ExtensionCacheSizeProto>(nullptr);
+  }
+
+  ExtensionCacheSizeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ExtensionCacheSizeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ExtensionCacheSizeProto& from);
+  void MergeFrom(const ExtensionCacheSizeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ExtensionCacheSizeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ExtensionCacheSizeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kExtensionCacheSizeFieldNumber = 1,
+  };
+  // optional int64 extension_cache_size = 1;
+  bool has_extension_cache_size() const;
+  private:
+  bool _internal_has_extension_cache_size() const;
+  public:
+  void clear_extension_cache_size();
+  ::PROTOBUF_NAMESPACE_ID::int64 extension_cache_size() const;
+  void set_extension_cache_size(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_extension_cache_size() const;
+  void _internal_set_extension_cache_size(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ExtensionCacheSizeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 extension_cache_size_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LoginScreenDomainAutoCompleteProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LoginScreenDomainAutoCompleteProto) */ {
+ public:
+  LoginScreenDomainAutoCompleteProto();
+  virtual ~LoginScreenDomainAutoCompleteProto();
+
+  LoginScreenDomainAutoCompleteProto(const LoginScreenDomainAutoCompleteProto& from);
+  LoginScreenDomainAutoCompleteProto(LoginScreenDomainAutoCompleteProto&& from) noexcept
+    : LoginScreenDomainAutoCompleteProto() {
+    *this = ::std::move(from);
+  }
+
+  inline LoginScreenDomainAutoCompleteProto& operator=(const LoginScreenDomainAutoCompleteProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LoginScreenDomainAutoCompleteProto& operator=(LoginScreenDomainAutoCompleteProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LoginScreenDomainAutoCompleteProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LoginScreenDomainAutoCompleteProto* internal_default_instance() {
+    return reinterpret_cast<const LoginScreenDomainAutoCompleteProto*>(
+               &_LoginScreenDomainAutoCompleteProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    46;
+
+  friend void swap(LoginScreenDomainAutoCompleteProto& a, LoginScreenDomainAutoCompleteProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LoginScreenDomainAutoCompleteProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LoginScreenDomainAutoCompleteProto* New() const final {
+    return CreateMaybeMessage<LoginScreenDomainAutoCompleteProto>(nullptr);
+  }
+
+  LoginScreenDomainAutoCompleteProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LoginScreenDomainAutoCompleteProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LoginScreenDomainAutoCompleteProto& from);
+  void MergeFrom(const LoginScreenDomainAutoCompleteProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LoginScreenDomainAutoCompleteProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LoginScreenDomainAutoCompleteProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLoginScreenDomainAutoCompleteFieldNumber = 1,
+  };
+  // optional string login_screen_domain_auto_complete = 1;
+  bool has_login_screen_domain_auto_complete() const;
+  private:
+  bool _internal_has_login_screen_domain_auto_complete() const;
+  public:
+  void clear_login_screen_domain_auto_complete();
+  const std::string& login_screen_domain_auto_complete() const;
+  void set_login_screen_domain_auto_complete(const std::string& value);
+  void set_login_screen_domain_auto_complete(std::string&& value);
+  void set_login_screen_domain_auto_complete(const char* value);
+  void set_login_screen_domain_auto_complete(const char* value, size_t size);
+  std::string* mutable_login_screen_domain_auto_complete();
+  std::string* release_login_screen_domain_auto_complete();
+  void set_allocated_login_screen_domain_auto_complete(std::string* login_screen_domain_auto_complete);
+  private:
+  const std::string& _internal_login_screen_domain_auto_complete() const;
+  void _internal_set_login_screen_domain_auto_complete(const std::string& value);
+  std::string* _internal_mutable_login_screen_domain_auto_complete();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LoginScreenDomainAutoCompleteProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr login_screen_domain_auto_complete_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceLogUploadSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceLogUploadSettingsProto) */ {
+ public:
+  DeviceLogUploadSettingsProto();
+  virtual ~DeviceLogUploadSettingsProto();
+
+  DeviceLogUploadSettingsProto(const DeviceLogUploadSettingsProto& from);
+  DeviceLogUploadSettingsProto(DeviceLogUploadSettingsProto&& from) noexcept
+    : DeviceLogUploadSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceLogUploadSettingsProto& operator=(const DeviceLogUploadSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceLogUploadSettingsProto& operator=(DeviceLogUploadSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceLogUploadSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceLogUploadSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceLogUploadSettingsProto*>(
+               &_DeviceLogUploadSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    47;
+
+  friend void swap(DeviceLogUploadSettingsProto& a, DeviceLogUploadSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceLogUploadSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceLogUploadSettingsProto* New() const final {
+    return CreateMaybeMessage<DeviceLogUploadSettingsProto>(nullptr);
+  }
+
+  DeviceLogUploadSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceLogUploadSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceLogUploadSettingsProto& from);
+  void MergeFrom(const DeviceLogUploadSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceLogUploadSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceLogUploadSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSystemLogUploadEnabledFieldNumber = 1,
+  };
+  // optional bool system_log_upload_enabled = 1 [default = false];
+  bool has_system_log_upload_enabled() const;
+  private:
+  bool _internal_has_system_log_upload_enabled() const;
+  public:
+  void clear_system_log_upload_enabled();
+  bool system_log_upload_enabled() const;
+  void set_system_log_upload_enabled(bool value);
+  private:
+  bool _internal_system_log_upload_enabled() const;
+  void _internal_set_system_log_upload_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceLogUploadSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool system_log_upload_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DisplayRotationDefaultProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DisplayRotationDefaultProto) */ {
+ public:
+  DisplayRotationDefaultProto();
+  virtual ~DisplayRotationDefaultProto();
+
+  DisplayRotationDefaultProto(const DisplayRotationDefaultProto& from);
+  DisplayRotationDefaultProto(DisplayRotationDefaultProto&& from) noexcept
+    : DisplayRotationDefaultProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DisplayRotationDefaultProto& operator=(const DisplayRotationDefaultProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DisplayRotationDefaultProto& operator=(DisplayRotationDefaultProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DisplayRotationDefaultProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DisplayRotationDefaultProto* internal_default_instance() {
+    return reinterpret_cast<const DisplayRotationDefaultProto*>(
+               &_DisplayRotationDefaultProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    48;
+
+  friend void swap(DisplayRotationDefaultProto& a, DisplayRotationDefaultProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DisplayRotationDefaultProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DisplayRotationDefaultProto* New() const final {
+    return CreateMaybeMessage<DisplayRotationDefaultProto>(nullptr);
+  }
+
+  DisplayRotationDefaultProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DisplayRotationDefaultProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DisplayRotationDefaultProto& from);
+  void MergeFrom(const DisplayRotationDefaultProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DisplayRotationDefaultProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DisplayRotationDefaultProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DisplayRotationDefaultProto_Rotation Rotation;
+  static constexpr Rotation ROTATE_0 =
+    DisplayRotationDefaultProto_Rotation_ROTATE_0;
+  static constexpr Rotation ROTATE_90 =
+    DisplayRotationDefaultProto_Rotation_ROTATE_90;
+  static constexpr Rotation ROTATE_180 =
+    DisplayRotationDefaultProto_Rotation_ROTATE_180;
+  static constexpr Rotation ROTATE_270 =
+    DisplayRotationDefaultProto_Rotation_ROTATE_270;
+  static inline bool Rotation_IsValid(int value) {
+    return DisplayRotationDefaultProto_Rotation_IsValid(value);
+  }
+  static constexpr Rotation Rotation_MIN =
+    DisplayRotationDefaultProto_Rotation_Rotation_MIN;
+  static constexpr Rotation Rotation_MAX =
+    DisplayRotationDefaultProto_Rotation_Rotation_MAX;
+  static constexpr int Rotation_ARRAYSIZE =
+    DisplayRotationDefaultProto_Rotation_Rotation_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Rotation_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Rotation>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Rotation_Name.");
+    return DisplayRotationDefaultProto_Rotation_Name(enum_t_value);
+  }
+  static inline bool Rotation_Parse(const std::string& name,
+      Rotation* value) {
+    return DisplayRotationDefaultProto_Rotation_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDisplayRotationDefaultFieldNumber = 1,
+  };
+  // optional .enterprise_management.DisplayRotationDefaultProto.Rotation display_rotation_default = 1;
+  bool has_display_rotation_default() const;
+  private:
+  bool _internal_has_display_rotation_default() const;
+  public:
+  void clear_display_rotation_default();
+  ::enterprise_management::DisplayRotationDefaultProto_Rotation display_rotation_default() const;
+  void set_display_rotation_default(::enterprise_management::DisplayRotationDefaultProto_Rotation value);
+  private:
+  ::enterprise_management::DisplayRotationDefaultProto_Rotation _internal_display_rotation_default() const;
+  void _internal_set_display_rotation_default(::enterprise_management::DisplayRotationDefaultProto_Rotation value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DisplayRotationDefaultProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int display_rotation_default_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceLoginScreenPrivacyScreenEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto) */ {
+ public:
+  DeviceLoginScreenPrivacyScreenEnabledProto();
+  virtual ~DeviceLoginScreenPrivacyScreenEnabledProto();
+
+  DeviceLoginScreenPrivacyScreenEnabledProto(const DeviceLoginScreenPrivacyScreenEnabledProto& from);
+  DeviceLoginScreenPrivacyScreenEnabledProto(DeviceLoginScreenPrivacyScreenEnabledProto&& from) noexcept
+    : DeviceLoginScreenPrivacyScreenEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceLoginScreenPrivacyScreenEnabledProto& operator=(const DeviceLoginScreenPrivacyScreenEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceLoginScreenPrivacyScreenEnabledProto& operator=(DeviceLoginScreenPrivacyScreenEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceLoginScreenPrivacyScreenEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceLoginScreenPrivacyScreenEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceLoginScreenPrivacyScreenEnabledProto*>(
+               &_DeviceLoginScreenPrivacyScreenEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    49;
+
+  friend void swap(DeviceLoginScreenPrivacyScreenEnabledProto& a, DeviceLoginScreenPrivacyScreenEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceLoginScreenPrivacyScreenEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceLoginScreenPrivacyScreenEnabledProto* New() const final {
+    return CreateMaybeMessage<DeviceLoginScreenPrivacyScreenEnabledProto>(nullptr);
+  }
+
+  DeviceLoginScreenPrivacyScreenEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceLoginScreenPrivacyScreenEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceLoginScreenPrivacyScreenEnabledProto& from);
+  void MergeFrom(const DeviceLoginScreenPrivacyScreenEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceLoginScreenPrivacyScreenEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1 [default = false];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceDisplayResolutionProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceDisplayResolutionProto) */ {
+ public:
+  DeviceDisplayResolutionProto();
+  virtual ~DeviceDisplayResolutionProto();
+
+  DeviceDisplayResolutionProto(const DeviceDisplayResolutionProto& from);
+  DeviceDisplayResolutionProto(DeviceDisplayResolutionProto&& from) noexcept
+    : DeviceDisplayResolutionProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceDisplayResolutionProto& operator=(const DeviceDisplayResolutionProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceDisplayResolutionProto& operator=(DeviceDisplayResolutionProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceDisplayResolutionProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceDisplayResolutionProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceDisplayResolutionProto*>(
+               &_DeviceDisplayResolutionProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    50;
+
+  friend void swap(DeviceDisplayResolutionProto& a, DeviceDisplayResolutionProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceDisplayResolutionProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceDisplayResolutionProto* New() const final {
+    return CreateMaybeMessage<DeviceDisplayResolutionProto>(nullptr);
+  }
+
+  DeviceDisplayResolutionProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceDisplayResolutionProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceDisplayResolutionProto& from);
+  void MergeFrom(const DeviceDisplayResolutionProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceDisplayResolutionProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceDisplayResolutionProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceDisplayResolutionFieldNumber = 1,
+  };
+  // optional string device_display_resolution = 1;
+  bool has_device_display_resolution() const;
+  private:
+  bool _internal_has_device_display_resolution() const;
+  public:
+  void clear_device_display_resolution();
+  const std::string& device_display_resolution() const;
+  void set_device_display_resolution(const std::string& value);
+  void set_device_display_resolution(std::string&& value);
+  void set_device_display_resolution(const char* value);
+  void set_device_display_resolution(const char* value, size_t size);
+  std::string* mutable_device_display_resolution();
+  std::string* release_device_display_resolution();
+  void set_allocated_device_display_resolution(std::string* device_display_resolution);
+  private:
+  const std::string& _internal_device_display_resolution() const;
+  void _internal_set_device_display_resolution(const std::string& value);
+  std::string* _internal_mutable_device_display_resolution();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceDisplayResolutionProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_display_resolution_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AllowKioskAppControlChromeVersionProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AllowKioskAppControlChromeVersionProto) */ {
+ public:
+  AllowKioskAppControlChromeVersionProto();
+  virtual ~AllowKioskAppControlChromeVersionProto();
+
+  AllowKioskAppControlChromeVersionProto(const AllowKioskAppControlChromeVersionProto& from);
+  AllowKioskAppControlChromeVersionProto(AllowKioskAppControlChromeVersionProto&& from) noexcept
+    : AllowKioskAppControlChromeVersionProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AllowKioskAppControlChromeVersionProto& operator=(const AllowKioskAppControlChromeVersionProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AllowKioskAppControlChromeVersionProto& operator=(AllowKioskAppControlChromeVersionProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AllowKioskAppControlChromeVersionProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AllowKioskAppControlChromeVersionProto* internal_default_instance() {
+    return reinterpret_cast<const AllowKioskAppControlChromeVersionProto*>(
+               &_AllowKioskAppControlChromeVersionProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    51;
+
+  friend void swap(AllowKioskAppControlChromeVersionProto& a, AllowKioskAppControlChromeVersionProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AllowKioskAppControlChromeVersionProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AllowKioskAppControlChromeVersionProto* New() const final {
+    return CreateMaybeMessage<AllowKioskAppControlChromeVersionProto>(nullptr);
+  }
+
+  AllowKioskAppControlChromeVersionProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AllowKioskAppControlChromeVersionProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AllowKioskAppControlChromeVersionProto& from);
+  void MergeFrom(const AllowKioskAppControlChromeVersionProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AllowKioskAppControlChromeVersionProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AllowKioskAppControlChromeVersionProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowKioskAppControlChromeVersionFieldNumber = 1,
+  };
+  // optional bool allow_kiosk_app_control_chrome_version = 1 [default = false];
+  bool has_allow_kiosk_app_control_chrome_version() const;
+  private:
+  bool _internal_has_allow_kiosk_app_control_chrome_version() const;
+  public:
+  void clear_allow_kiosk_app_control_chrome_version();
+  bool allow_kiosk_app_control_chrome_version() const;
+  void set_allow_kiosk_app_control_chrome_version(bool value);
+  private:
+  bool _internal_allow_kiosk_app_control_chrome_version() const;
+  void _internal_set_allow_kiosk_app_control_chrome_version(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AllowKioskAppControlChromeVersionProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool allow_kiosk_app_control_chrome_version_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LoginAuthenticationBehaviorProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LoginAuthenticationBehaviorProto) */ {
+ public:
+  LoginAuthenticationBehaviorProto();
+  virtual ~LoginAuthenticationBehaviorProto();
+
+  LoginAuthenticationBehaviorProto(const LoginAuthenticationBehaviorProto& from);
+  LoginAuthenticationBehaviorProto(LoginAuthenticationBehaviorProto&& from) noexcept
+    : LoginAuthenticationBehaviorProto() {
+    *this = ::std::move(from);
+  }
+
+  inline LoginAuthenticationBehaviorProto& operator=(const LoginAuthenticationBehaviorProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LoginAuthenticationBehaviorProto& operator=(LoginAuthenticationBehaviorProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LoginAuthenticationBehaviorProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LoginAuthenticationBehaviorProto* internal_default_instance() {
+    return reinterpret_cast<const LoginAuthenticationBehaviorProto*>(
+               &_LoginAuthenticationBehaviorProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    52;
+
+  friend void swap(LoginAuthenticationBehaviorProto& a, LoginAuthenticationBehaviorProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LoginAuthenticationBehaviorProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LoginAuthenticationBehaviorProto* New() const final {
+    return CreateMaybeMessage<LoginAuthenticationBehaviorProto>(nullptr);
+  }
+
+  LoginAuthenticationBehaviorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LoginAuthenticationBehaviorProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LoginAuthenticationBehaviorProto& from);
+  void MergeFrom(const LoginAuthenticationBehaviorProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LoginAuthenticationBehaviorProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LoginAuthenticationBehaviorProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef LoginAuthenticationBehaviorProto_LoginBehavior LoginBehavior;
+  static constexpr LoginBehavior GAIA =
+    LoginAuthenticationBehaviorProto_LoginBehavior_GAIA;
+  static constexpr LoginBehavior SAML_INTERSTITIAL =
+    LoginAuthenticationBehaviorProto_LoginBehavior_SAML_INTERSTITIAL;
+  static inline bool LoginBehavior_IsValid(int value) {
+    return LoginAuthenticationBehaviorProto_LoginBehavior_IsValid(value);
+  }
+  static constexpr LoginBehavior LoginBehavior_MIN =
+    LoginAuthenticationBehaviorProto_LoginBehavior_LoginBehavior_MIN;
+  static constexpr LoginBehavior LoginBehavior_MAX =
+    LoginAuthenticationBehaviorProto_LoginBehavior_LoginBehavior_MAX;
+  static constexpr int LoginBehavior_ARRAYSIZE =
+    LoginAuthenticationBehaviorProto_LoginBehavior_LoginBehavior_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& LoginBehavior_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, LoginBehavior>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function LoginBehavior_Name.");
+    return LoginAuthenticationBehaviorProto_LoginBehavior_Name(enum_t_value);
+  }
+  static inline bool LoginBehavior_Parse(const std::string& name,
+      LoginBehavior* value) {
+    return LoginAuthenticationBehaviorProto_LoginBehavior_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLoginAuthenticationBehaviorFieldNumber = 1,
+  };
+  // optional .enterprise_management.LoginAuthenticationBehaviorProto.LoginBehavior login_authentication_behavior = 1 [default = GAIA];
+  bool has_login_authentication_behavior() const;
+  private:
+  bool _internal_has_login_authentication_behavior() const;
+  public:
+  void clear_login_authentication_behavior();
+  ::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior login_authentication_behavior() const;
+  void set_login_authentication_behavior(::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior value);
+  private:
+  ::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior _internal_login_authentication_behavior() const;
+  void _internal_set_login_authentication_behavior(::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LoginAuthenticationBehaviorProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int login_authentication_behavior_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UsbDeviceIdProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UsbDeviceIdProto) */ {
+ public:
+  UsbDeviceIdProto();
+  virtual ~UsbDeviceIdProto();
+
+  UsbDeviceIdProto(const UsbDeviceIdProto& from);
+  UsbDeviceIdProto(UsbDeviceIdProto&& from) noexcept
+    : UsbDeviceIdProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UsbDeviceIdProto& operator=(const UsbDeviceIdProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UsbDeviceIdProto& operator=(UsbDeviceIdProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UsbDeviceIdProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UsbDeviceIdProto* internal_default_instance() {
+    return reinterpret_cast<const UsbDeviceIdProto*>(
+               &_UsbDeviceIdProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    53;
+
+  friend void swap(UsbDeviceIdProto& a, UsbDeviceIdProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UsbDeviceIdProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UsbDeviceIdProto* New() const final {
+    return CreateMaybeMessage<UsbDeviceIdProto>(nullptr);
+  }
+
+  UsbDeviceIdProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UsbDeviceIdProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UsbDeviceIdProto& from);
+  void MergeFrom(const UsbDeviceIdProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UsbDeviceIdProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UsbDeviceIdProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVendorIdFieldNumber = 1,
+    kProductIdFieldNumber = 2,
+  };
+  // optional int32 vendor_id = 1;
+  bool has_vendor_id() const;
+  private:
+  bool _internal_has_vendor_id() const;
+  public:
+  void clear_vendor_id();
+  ::PROTOBUF_NAMESPACE_ID::int32 vendor_id() const;
+  void set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vendor_id() const;
+  void _internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 product_id = 2;
+  bool has_product_id() const;
+  private:
+  bool _internal_has_product_id() const;
+  public:
+  void clear_product_id();
+  ::PROTOBUF_NAMESPACE_ID::int32 product_id() const;
+  void set_product_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_product_id() const;
+  void _internal_set_product_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UsbDeviceIdProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int32 vendor_id_;
+  ::PROTOBUF_NAMESPACE_ID::int32 product_id_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UsbDetachableWhitelistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UsbDetachableWhitelistProto) */ {
+ public:
+  UsbDetachableWhitelistProto();
+  virtual ~UsbDetachableWhitelistProto();
+
+  UsbDetachableWhitelistProto(const UsbDetachableWhitelistProto& from);
+  UsbDetachableWhitelistProto(UsbDetachableWhitelistProto&& from) noexcept
+    : UsbDetachableWhitelistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UsbDetachableWhitelistProto& operator=(const UsbDetachableWhitelistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UsbDetachableWhitelistProto& operator=(UsbDetachableWhitelistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UsbDetachableWhitelistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UsbDetachableWhitelistProto* internal_default_instance() {
+    return reinterpret_cast<const UsbDetachableWhitelistProto*>(
+               &_UsbDetachableWhitelistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    54;
+
+  friend void swap(UsbDetachableWhitelistProto& a, UsbDetachableWhitelistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UsbDetachableWhitelistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UsbDetachableWhitelistProto* New() const final {
+    return CreateMaybeMessage<UsbDetachableWhitelistProto>(nullptr);
+  }
+
+  UsbDetachableWhitelistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UsbDetachableWhitelistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UsbDetachableWhitelistProto& from);
+  void MergeFrom(const UsbDetachableWhitelistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UsbDetachableWhitelistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UsbDetachableWhitelistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kIdFieldNumber = 1,
+  };
+  // repeated .enterprise_management.UsbDeviceIdProto id = 1;
+  int id_size() const;
+  private:
+  int _internal_id_size() const;
+  public:
+  void clear_id();
+  ::enterprise_management::UsbDeviceIdProto* mutable_id(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdProto >*
+      mutable_id();
+  private:
+  const ::enterprise_management::UsbDeviceIdProto& _internal_id(int index) const;
+  ::enterprise_management::UsbDeviceIdProto* _internal_add_id();
+  public:
+  const ::enterprise_management::UsbDeviceIdProto& id(int index) const;
+  ::enterprise_management::UsbDeviceIdProto* add_id();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdProto >&
+      id() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UsbDetachableWhitelistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdProto > id_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UsbDeviceIdInclusiveProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UsbDeviceIdInclusiveProto) */ {
+ public:
+  UsbDeviceIdInclusiveProto();
+  virtual ~UsbDeviceIdInclusiveProto();
+
+  UsbDeviceIdInclusiveProto(const UsbDeviceIdInclusiveProto& from);
+  UsbDeviceIdInclusiveProto(UsbDeviceIdInclusiveProto&& from) noexcept
+    : UsbDeviceIdInclusiveProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UsbDeviceIdInclusiveProto& operator=(const UsbDeviceIdInclusiveProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UsbDeviceIdInclusiveProto& operator=(UsbDeviceIdInclusiveProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UsbDeviceIdInclusiveProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UsbDeviceIdInclusiveProto* internal_default_instance() {
+    return reinterpret_cast<const UsbDeviceIdInclusiveProto*>(
+               &_UsbDeviceIdInclusiveProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    55;
+
+  friend void swap(UsbDeviceIdInclusiveProto& a, UsbDeviceIdInclusiveProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UsbDeviceIdInclusiveProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UsbDeviceIdInclusiveProto* New() const final {
+    return CreateMaybeMessage<UsbDeviceIdInclusiveProto>(nullptr);
+  }
+
+  UsbDeviceIdInclusiveProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UsbDeviceIdInclusiveProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UsbDeviceIdInclusiveProto& from);
+  void MergeFrom(const UsbDeviceIdInclusiveProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UsbDeviceIdInclusiveProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UsbDeviceIdInclusiveProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVendorIdFieldNumber = 1,
+    kProductIdFieldNumber = 2,
+  };
+  // optional int32 vendor_id = 1;
+  bool has_vendor_id() const;
+  private:
+  bool _internal_has_vendor_id() const;
+  public:
+  void clear_vendor_id();
+  ::PROTOBUF_NAMESPACE_ID::int32 vendor_id() const;
+  void set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vendor_id() const;
+  void _internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 product_id = 2;
+  bool has_product_id() const;
+  private:
+  bool _internal_has_product_id() const;
+  public:
+  void clear_product_id();
+  ::PROTOBUF_NAMESPACE_ID::int32 product_id() const;
+  void set_product_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_product_id() const;
+  void _internal_set_product_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UsbDeviceIdInclusiveProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int32 vendor_id_;
+  ::PROTOBUF_NAMESPACE_ID::int32 product_id_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UsbDetachableAllowlistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UsbDetachableAllowlistProto) */ {
+ public:
+  UsbDetachableAllowlistProto();
+  virtual ~UsbDetachableAllowlistProto();
+
+  UsbDetachableAllowlistProto(const UsbDetachableAllowlistProto& from);
+  UsbDetachableAllowlistProto(UsbDetachableAllowlistProto&& from) noexcept
+    : UsbDetachableAllowlistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UsbDetachableAllowlistProto& operator=(const UsbDetachableAllowlistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UsbDetachableAllowlistProto& operator=(UsbDetachableAllowlistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UsbDetachableAllowlistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UsbDetachableAllowlistProto* internal_default_instance() {
+    return reinterpret_cast<const UsbDetachableAllowlistProto*>(
+               &_UsbDetachableAllowlistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    56;
+
+  friend void swap(UsbDetachableAllowlistProto& a, UsbDetachableAllowlistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UsbDetachableAllowlistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UsbDetachableAllowlistProto* New() const final {
+    return CreateMaybeMessage<UsbDetachableAllowlistProto>(nullptr);
+  }
+
+  UsbDetachableAllowlistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UsbDetachableAllowlistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UsbDetachableAllowlistProto& from);
+  void MergeFrom(const UsbDetachableAllowlistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UsbDetachableAllowlistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UsbDetachableAllowlistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kIdFieldNumber = 1,
+  };
+  // repeated .enterprise_management.UsbDeviceIdInclusiveProto id = 1;
+  int id_size() const;
+  private:
+  int _internal_id_size() const;
+  public:
+  void clear_id();
+  ::enterprise_management::UsbDeviceIdInclusiveProto* mutable_id(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdInclusiveProto >*
+      mutable_id();
+  private:
+  const ::enterprise_management::UsbDeviceIdInclusiveProto& _internal_id(int index) const;
+  ::enterprise_management::UsbDeviceIdInclusiveProto* _internal_add_id();
+  public:
+  const ::enterprise_management::UsbDeviceIdInclusiveProto& id(int index) const;
+  ::enterprise_management::UsbDeviceIdInclusiveProto* add_id();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdInclusiveProto >&
+      id() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UsbDetachableAllowlistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdInclusiveProto > id_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AllowBluetoothProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AllowBluetoothProto) */ {
+ public:
+  AllowBluetoothProto();
+  virtual ~AllowBluetoothProto();
+
+  AllowBluetoothProto(const AllowBluetoothProto& from);
+  AllowBluetoothProto(AllowBluetoothProto&& from) noexcept
+    : AllowBluetoothProto() {
+    *this = ::std::move(from);
+  }
+
+  inline AllowBluetoothProto& operator=(const AllowBluetoothProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AllowBluetoothProto& operator=(AllowBluetoothProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AllowBluetoothProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AllowBluetoothProto* internal_default_instance() {
+    return reinterpret_cast<const AllowBluetoothProto*>(
+               &_AllowBluetoothProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    57;
+
+  friend void swap(AllowBluetoothProto& a, AllowBluetoothProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AllowBluetoothProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AllowBluetoothProto* New() const final {
+    return CreateMaybeMessage<AllowBluetoothProto>(nullptr);
+  }
+
+  AllowBluetoothProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AllowBluetoothProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AllowBluetoothProto& from);
+  void MergeFrom(const AllowBluetoothProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AllowBluetoothProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AllowBluetoothProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowBluetoothFieldNumber = 1,
+  };
+  // optional bool allow_bluetooth = 1 [default = true];
+  bool has_allow_bluetooth() const;
+  private:
+  bool _internal_has_allow_bluetooth() const;
+  public:
+  void clear_allow_bluetooth();
+  bool allow_bluetooth() const;
+  void set_allow_bluetooth(bool value);
+  private:
+  bool _internal_allow_bluetooth() const;
+  void _internal_set_allow_bluetooth(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AllowBluetoothProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool allow_bluetooth_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceWiFiAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceWiFiAllowedProto) */ {
+ public:
+  DeviceWiFiAllowedProto();
+  virtual ~DeviceWiFiAllowedProto();
+
+  DeviceWiFiAllowedProto(const DeviceWiFiAllowedProto& from);
+  DeviceWiFiAllowedProto(DeviceWiFiAllowedProto&& from) noexcept
+    : DeviceWiFiAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceWiFiAllowedProto& operator=(const DeviceWiFiAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceWiFiAllowedProto& operator=(DeviceWiFiAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceWiFiAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceWiFiAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceWiFiAllowedProto*>(
+               &_DeviceWiFiAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    58;
+
+  friend void swap(DeviceWiFiAllowedProto& a, DeviceWiFiAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceWiFiAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceWiFiAllowedProto* New() const final {
+    return CreateMaybeMessage<DeviceWiFiAllowedProto>(nullptr);
+  }
+
+  DeviceWiFiAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceWiFiAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceWiFiAllowedProto& from);
+  void MergeFrom(const DeviceWiFiAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceWiFiAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceWiFiAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceWifiAllowedFieldNumber = 1,
+  };
+  // optional bool device_wifi_allowed = 1 [default = true];
+  bool has_device_wifi_allowed() const;
+  private:
+  bool _internal_has_device_wifi_allowed() const;
+  public:
+  void clear_device_wifi_allowed();
+  bool device_wifi_allowed() const;
+  void set_device_wifi_allowed(bool value);
+  private:
+  bool _internal_device_wifi_allowed() const;
+  void _internal_set_device_wifi_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceWiFiAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool device_wifi_allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceQuirksDownloadEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceQuirksDownloadEnabledProto) */ {
+ public:
+  DeviceQuirksDownloadEnabledProto();
+  virtual ~DeviceQuirksDownloadEnabledProto();
+
+  DeviceQuirksDownloadEnabledProto(const DeviceQuirksDownloadEnabledProto& from);
+  DeviceQuirksDownloadEnabledProto(DeviceQuirksDownloadEnabledProto&& from) noexcept
+    : DeviceQuirksDownloadEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceQuirksDownloadEnabledProto& operator=(const DeviceQuirksDownloadEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceQuirksDownloadEnabledProto& operator=(DeviceQuirksDownloadEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceQuirksDownloadEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceQuirksDownloadEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceQuirksDownloadEnabledProto*>(
+               &_DeviceQuirksDownloadEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    59;
+
+  friend void swap(DeviceQuirksDownloadEnabledProto& a, DeviceQuirksDownloadEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceQuirksDownloadEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceQuirksDownloadEnabledProto* New() const final {
+    return CreateMaybeMessage<DeviceQuirksDownloadEnabledProto>(nullptr);
+  }
+
+  DeviceQuirksDownloadEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceQuirksDownloadEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceQuirksDownloadEnabledProto& from);
+  void MergeFrom(const DeviceQuirksDownloadEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceQuirksDownloadEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceQuirksDownloadEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kQuirksDownloadEnabledFieldNumber = 1,
+  };
+  // optional bool quirks_download_enabled = 1;
+  bool has_quirks_download_enabled() const;
+  private:
+  bool _internal_has_quirks_download_enabled() const;
+  public:
+  void clear_quirks_download_enabled();
+  bool quirks_download_enabled() const;
+  void set_quirks_download_enabled(bool value);
+  private:
+  bool _internal_quirks_download_enabled() const;
+  void _internal_set_quirks_download_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceQuirksDownloadEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool quirks_download_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LoginVideoCaptureAllowedUrlsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LoginVideoCaptureAllowedUrlsProto) */ {
+ public:
+  LoginVideoCaptureAllowedUrlsProto();
+  virtual ~LoginVideoCaptureAllowedUrlsProto();
+
+  LoginVideoCaptureAllowedUrlsProto(const LoginVideoCaptureAllowedUrlsProto& from);
+  LoginVideoCaptureAllowedUrlsProto(LoginVideoCaptureAllowedUrlsProto&& from) noexcept
+    : LoginVideoCaptureAllowedUrlsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline LoginVideoCaptureAllowedUrlsProto& operator=(const LoginVideoCaptureAllowedUrlsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LoginVideoCaptureAllowedUrlsProto& operator=(LoginVideoCaptureAllowedUrlsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LoginVideoCaptureAllowedUrlsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LoginVideoCaptureAllowedUrlsProto* internal_default_instance() {
+    return reinterpret_cast<const LoginVideoCaptureAllowedUrlsProto*>(
+               &_LoginVideoCaptureAllowedUrlsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    60;
+
+  friend void swap(LoginVideoCaptureAllowedUrlsProto& a, LoginVideoCaptureAllowedUrlsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LoginVideoCaptureAllowedUrlsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LoginVideoCaptureAllowedUrlsProto* New() const final {
+    return CreateMaybeMessage<LoginVideoCaptureAllowedUrlsProto>(nullptr);
+  }
+
+  LoginVideoCaptureAllowedUrlsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LoginVideoCaptureAllowedUrlsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LoginVideoCaptureAllowedUrlsProto& from);
+  void MergeFrom(const LoginVideoCaptureAllowedUrlsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LoginVideoCaptureAllowedUrlsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LoginVideoCaptureAllowedUrlsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUrlsFieldNumber = 1,
+  };
+  // repeated string urls = 1;
+  int urls_size() const;
+  private:
+  int _internal_urls_size() const;
+  public:
+  void clear_urls();
+  const std::string& urls(int index) const;
+  std::string* mutable_urls(int index);
+  void set_urls(int index, const std::string& value);
+  void set_urls(int index, std::string&& value);
+  void set_urls(int index, const char* value);
+  void set_urls(int index, const char* value, size_t size);
+  std::string* add_urls();
+  void add_urls(const std::string& value);
+  void add_urls(std::string&& value);
+  void add_urls(const char* value);
+  void add_urls(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& urls() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_urls();
+  private:
+  const std::string& _internal_urls(int index) const;
+  std::string* _internal_add_urls();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LoginVideoCaptureAllowedUrlsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> urls_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceWiFiFastTransitionEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceWiFiFastTransitionEnabledProto) */ {
+ public:
+  DeviceWiFiFastTransitionEnabledProto();
+  virtual ~DeviceWiFiFastTransitionEnabledProto();
+
+  DeviceWiFiFastTransitionEnabledProto(const DeviceWiFiFastTransitionEnabledProto& from);
+  DeviceWiFiFastTransitionEnabledProto(DeviceWiFiFastTransitionEnabledProto&& from) noexcept
+    : DeviceWiFiFastTransitionEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceWiFiFastTransitionEnabledProto& operator=(const DeviceWiFiFastTransitionEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceWiFiFastTransitionEnabledProto& operator=(DeviceWiFiFastTransitionEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceWiFiFastTransitionEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceWiFiFastTransitionEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceWiFiFastTransitionEnabledProto*>(
+               &_DeviceWiFiFastTransitionEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    61;
+
+  friend void swap(DeviceWiFiFastTransitionEnabledProto& a, DeviceWiFiFastTransitionEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceWiFiFastTransitionEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceWiFiFastTransitionEnabledProto* New() const final {
+    return CreateMaybeMessage<DeviceWiFiFastTransitionEnabledProto>(nullptr);
+  }
+
+  DeviceWiFiFastTransitionEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceWiFiFastTransitionEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceWiFiFastTransitionEnabledProto& from);
+  void MergeFrom(const DeviceWiFiFastTransitionEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceWiFiFastTransitionEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceWiFiFastTransitionEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceWifiFastTransitionEnabledFieldNumber = 1,
+  };
+  // optional bool device_wifi_fast_transition_enabled = 1;
+  bool has_device_wifi_fast_transition_enabled() const;
+  private:
+  bool _internal_has_device_wifi_fast_transition_enabled() const;
+  public:
+  void clear_device_wifi_fast_transition_enabled();
+  bool device_wifi_fast_transition_enabled() const;
+  void set_device_wifi_fast_transition_enabled(bool value);
+  private:
+  bool _internal_device_wifi_fast_transition_enabled() const;
+  void _internal_set_device_wifi_fast_transition_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceWiFiFastTransitionEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool device_wifi_fast_transition_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class NetworkThrottlingEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.NetworkThrottlingEnabledProto) */ {
+ public:
+  NetworkThrottlingEnabledProto();
+  virtual ~NetworkThrottlingEnabledProto();
+
+  NetworkThrottlingEnabledProto(const NetworkThrottlingEnabledProto& from);
+  NetworkThrottlingEnabledProto(NetworkThrottlingEnabledProto&& from) noexcept
+    : NetworkThrottlingEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline NetworkThrottlingEnabledProto& operator=(const NetworkThrottlingEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline NetworkThrottlingEnabledProto& operator=(NetworkThrottlingEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const NetworkThrottlingEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const NetworkThrottlingEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const NetworkThrottlingEnabledProto*>(
+               &_NetworkThrottlingEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    62;
+
+  friend void swap(NetworkThrottlingEnabledProto& a, NetworkThrottlingEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(NetworkThrottlingEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline NetworkThrottlingEnabledProto* New() const final {
+    return CreateMaybeMessage<NetworkThrottlingEnabledProto>(nullptr);
+  }
+
+  NetworkThrottlingEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<NetworkThrottlingEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const NetworkThrottlingEnabledProto& from);
+  void MergeFrom(const NetworkThrottlingEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(NetworkThrottlingEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.NetworkThrottlingEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+    kUploadRateKbitsFieldNumber = 2,
+    kDownloadRateKbitsFieldNumber = 3,
+  };
+  // optional bool enabled = 1 [default = false];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // optional int32 upload_rate_kbits = 2 [default = 0];
+  bool has_upload_rate_kbits() const;
+  private:
+  bool _internal_has_upload_rate_kbits() const;
+  public:
+  void clear_upload_rate_kbits();
+  ::PROTOBUF_NAMESPACE_ID::int32 upload_rate_kbits() const;
+  void set_upload_rate_kbits(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_upload_rate_kbits() const;
+  void _internal_set_upload_rate_kbits(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 download_rate_kbits = 3 [default = 0];
+  bool has_download_rate_kbits() const;
+  private:
+  bool _internal_has_download_rate_kbits() const;
+  public:
+  void clear_download_rate_kbits();
+  ::PROTOBUF_NAMESPACE_ID::int32 download_rate_kbits() const;
+  void set_download_rate_kbits(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_download_rate_kbits() const;
+  void _internal_set_download_rate_kbits(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.NetworkThrottlingEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  ::PROTOBUF_NAMESPACE_ID::int32 upload_rate_kbits_;
+  ::PROTOBUF_NAMESPACE_ID::int32 download_rate_kbits_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceLoginScreenExtensionsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceLoginScreenExtensionsProto) */ {
+ public:
+  DeviceLoginScreenExtensionsProto();
+  virtual ~DeviceLoginScreenExtensionsProto();
+
+  DeviceLoginScreenExtensionsProto(const DeviceLoginScreenExtensionsProto& from);
+  DeviceLoginScreenExtensionsProto(DeviceLoginScreenExtensionsProto&& from) noexcept
+    : DeviceLoginScreenExtensionsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceLoginScreenExtensionsProto& operator=(const DeviceLoginScreenExtensionsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceLoginScreenExtensionsProto& operator=(DeviceLoginScreenExtensionsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceLoginScreenExtensionsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceLoginScreenExtensionsProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceLoginScreenExtensionsProto*>(
+               &_DeviceLoginScreenExtensionsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    63;
+
+  friend void swap(DeviceLoginScreenExtensionsProto& a, DeviceLoginScreenExtensionsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceLoginScreenExtensionsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceLoginScreenExtensionsProto* New() const final {
+    return CreateMaybeMessage<DeviceLoginScreenExtensionsProto>(nullptr);
+  }
+
+  DeviceLoginScreenExtensionsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceLoginScreenExtensionsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceLoginScreenExtensionsProto& from);
+  void MergeFrom(const DeviceLoginScreenExtensionsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceLoginScreenExtensionsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceLoginScreenExtensionsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceLoginScreenExtensionsFieldNumber = 1,
+  };
+  // repeated string device_login_screen_extensions = 1;
+  int device_login_screen_extensions_size() const;
+  private:
+  int _internal_device_login_screen_extensions_size() const;
+  public:
+  void clear_device_login_screen_extensions();
+  const std::string& device_login_screen_extensions(int index) const;
+  std::string* mutable_device_login_screen_extensions(int index);
+  void set_device_login_screen_extensions(int index, const std::string& value);
+  void set_device_login_screen_extensions(int index, std::string&& value);
+  void set_device_login_screen_extensions(int index, const char* value);
+  void set_device_login_screen_extensions(int index, const char* value, size_t size);
+  std::string* add_device_login_screen_extensions();
+  void add_device_login_screen_extensions(const std::string& value);
+  void add_device_login_screen_extensions(std::string&& value);
+  void add_device_login_screen_extensions(const char* value);
+  void add_device_login_screen_extensions(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& device_login_screen_extensions() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_device_login_screen_extensions();
+  private:
+  const std::string& _internal_device_login_screen_extensions(int index) const;
+  std::string* _internal_add_device_login_screen_extensions();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceLoginScreenExtensionsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> device_login_screen_extensions_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LoginScreenLocalesProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LoginScreenLocalesProto) */ {
+ public:
+  LoginScreenLocalesProto();
+  virtual ~LoginScreenLocalesProto();
+
+  LoginScreenLocalesProto(const LoginScreenLocalesProto& from);
+  LoginScreenLocalesProto(LoginScreenLocalesProto&& from) noexcept
+    : LoginScreenLocalesProto() {
+    *this = ::std::move(from);
+  }
+
+  inline LoginScreenLocalesProto& operator=(const LoginScreenLocalesProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LoginScreenLocalesProto& operator=(LoginScreenLocalesProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LoginScreenLocalesProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LoginScreenLocalesProto* internal_default_instance() {
+    return reinterpret_cast<const LoginScreenLocalesProto*>(
+               &_LoginScreenLocalesProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    64;
+
+  friend void swap(LoginScreenLocalesProto& a, LoginScreenLocalesProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LoginScreenLocalesProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LoginScreenLocalesProto* New() const final {
+    return CreateMaybeMessage<LoginScreenLocalesProto>(nullptr);
+  }
+
+  LoginScreenLocalesProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LoginScreenLocalesProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LoginScreenLocalesProto& from);
+  void MergeFrom(const LoginScreenLocalesProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LoginScreenLocalesProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LoginScreenLocalesProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLoginScreenLocalesFieldNumber = 1,
+  };
+  // repeated string login_screen_locales = 1;
+  int login_screen_locales_size() const;
+  private:
+  int _internal_login_screen_locales_size() const;
+  public:
+  void clear_login_screen_locales();
+  const std::string& login_screen_locales(int index) const;
+  std::string* mutable_login_screen_locales(int index);
+  void set_login_screen_locales(int index, const std::string& value);
+  void set_login_screen_locales(int index, std::string&& value);
+  void set_login_screen_locales(int index, const char* value);
+  void set_login_screen_locales(int index, const char* value, size_t size);
+  std::string* add_login_screen_locales();
+  void add_login_screen_locales(const std::string& value);
+  void add_login_screen_locales(std::string&& value);
+  void add_login_screen_locales(const char* value);
+  void add_login_screen_locales(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& login_screen_locales() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_login_screen_locales();
+  private:
+  const std::string& _internal_login_screen_locales(int index) const;
+  std::string* _internal_add_login_screen_locales();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LoginScreenLocalesProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> login_screen_locales_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LoginScreenInputMethodsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LoginScreenInputMethodsProto) */ {
+ public:
+  LoginScreenInputMethodsProto();
+  virtual ~LoginScreenInputMethodsProto();
+
+  LoginScreenInputMethodsProto(const LoginScreenInputMethodsProto& from);
+  LoginScreenInputMethodsProto(LoginScreenInputMethodsProto&& from) noexcept
+    : LoginScreenInputMethodsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline LoginScreenInputMethodsProto& operator=(const LoginScreenInputMethodsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LoginScreenInputMethodsProto& operator=(LoginScreenInputMethodsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LoginScreenInputMethodsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LoginScreenInputMethodsProto* internal_default_instance() {
+    return reinterpret_cast<const LoginScreenInputMethodsProto*>(
+               &_LoginScreenInputMethodsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    65;
+
+  friend void swap(LoginScreenInputMethodsProto& a, LoginScreenInputMethodsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LoginScreenInputMethodsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LoginScreenInputMethodsProto* New() const final {
+    return CreateMaybeMessage<LoginScreenInputMethodsProto>(nullptr);
+  }
+
+  LoginScreenInputMethodsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LoginScreenInputMethodsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LoginScreenInputMethodsProto& from);
+  void MergeFrom(const LoginScreenInputMethodsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LoginScreenInputMethodsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LoginScreenInputMethodsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLoginScreenInputMethodsFieldNumber = 1,
+  };
+  // repeated string login_screen_input_methods = 1;
+  int login_screen_input_methods_size() const;
+  private:
+  int _internal_login_screen_input_methods_size() const;
+  public:
+  void clear_login_screen_input_methods();
+  const std::string& login_screen_input_methods(int index) const;
+  std::string* mutable_login_screen_input_methods(int index);
+  void set_login_screen_input_methods(int index, const std::string& value);
+  void set_login_screen_input_methods(int index, std::string&& value);
+  void set_login_screen_input_methods(int index, const char* value);
+  void set_login_screen_input_methods(int index, const char* value, size_t size);
+  std::string* add_login_screen_input_methods();
+  void add_login_screen_input_methods(const std::string& value);
+  void add_login_screen_input_methods(std::string&& value);
+  void add_login_screen_input_methods(const char* value);
+  void add_login_screen_input_methods(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& login_screen_input_methods() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_login_screen_input_methods();
+  private:
+  const std::string& _internal_login_screen_input_methods(int index) const;
+  std::string* _internal_add_login_screen_input_methods();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LoginScreenInputMethodsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> login_screen_input_methods_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceWallpaperImageProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceWallpaperImageProto) */ {
+ public:
+  DeviceWallpaperImageProto();
+  virtual ~DeviceWallpaperImageProto();
+
+  DeviceWallpaperImageProto(const DeviceWallpaperImageProto& from);
+  DeviceWallpaperImageProto(DeviceWallpaperImageProto&& from) noexcept
+    : DeviceWallpaperImageProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceWallpaperImageProto& operator=(const DeviceWallpaperImageProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceWallpaperImageProto& operator=(DeviceWallpaperImageProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceWallpaperImageProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceWallpaperImageProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceWallpaperImageProto*>(
+               &_DeviceWallpaperImageProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    66;
+
+  friend void swap(DeviceWallpaperImageProto& a, DeviceWallpaperImageProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceWallpaperImageProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceWallpaperImageProto* New() const final {
+    return CreateMaybeMessage<DeviceWallpaperImageProto>(nullptr);
+  }
+
+  DeviceWallpaperImageProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceWallpaperImageProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceWallpaperImageProto& from);
+  void MergeFrom(const DeviceWallpaperImageProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceWallpaperImageProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceWallpaperImageProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceWallpaperImageFieldNumber = 1,
+  };
+  // optional string device_wallpaper_image = 1;
+  bool has_device_wallpaper_image() const;
+  private:
+  bool _internal_has_device_wallpaper_image() const;
+  public:
+  void clear_device_wallpaper_image();
+  const std::string& device_wallpaper_image() const;
+  void set_device_wallpaper_image(const std::string& value);
+  void set_device_wallpaper_image(std::string&& value);
+  void set_device_wallpaper_image(const char* value);
+  void set_device_wallpaper_image(const char* value, size_t size);
+  std::string* mutable_device_wallpaper_image();
+  std::string* release_device_wallpaper_image();
+  void set_allocated_device_wallpaper_image(std::string* device_wallpaper_image);
+  private:
+  const std::string& _internal_device_wallpaper_image() const;
+  void _internal_set_device_wallpaper_image(const std::string& value);
+  std::string* _internal_mutable_device_wallpaper_image();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceWallpaperImageProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_wallpaper_image_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceEcryptfsMigrationStrategyProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceEcryptfsMigrationStrategyProto) */ {
+ public:
+  DeviceEcryptfsMigrationStrategyProto();
+  virtual ~DeviceEcryptfsMigrationStrategyProto();
+
+  DeviceEcryptfsMigrationStrategyProto(const DeviceEcryptfsMigrationStrategyProto& from);
+  DeviceEcryptfsMigrationStrategyProto(DeviceEcryptfsMigrationStrategyProto&& from) noexcept
+    : DeviceEcryptfsMigrationStrategyProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceEcryptfsMigrationStrategyProto& operator=(const DeviceEcryptfsMigrationStrategyProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceEcryptfsMigrationStrategyProto& operator=(DeviceEcryptfsMigrationStrategyProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceEcryptfsMigrationStrategyProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceEcryptfsMigrationStrategyProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceEcryptfsMigrationStrategyProto*>(
+               &_DeviceEcryptfsMigrationStrategyProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    67;
+
+  friend void swap(DeviceEcryptfsMigrationStrategyProto& a, DeviceEcryptfsMigrationStrategyProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceEcryptfsMigrationStrategyProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceEcryptfsMigrationStrategyProto* New() const final {
+    return CreateMaybeMessage<DeviceEcryptfsMigrationStrategyProto>(nullptr);
+  }
+
+  DeviceEcryptfsMigrationStrategyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceEcryptfsMigrationStrategyProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceEcryptfsMigrationStrategyProto& from);
+  void MergeFrom(const DeviceEcryptfsMigrationStrategyProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceEcryptfsMigrationStrategyProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceEcryptfsMigrationStrategyProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceEcryptfsMigrationStrategyProto_MigrationStrategy MigrationStrategy;
+  static constexpr MigrationStrategy UNSET =
+    DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_UNSET;
+  static constexpr MigrationStrategy DISALLOW_ARC =
+    DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_DISALLOW_ARC;
+  static constexpr MigrationStrategy ALLOW_MIGRATION =
+    DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_ALLOW_MIGRATION;
+  static inline bool MigrationStrategy_IsValid(int value) {
+    return DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_IsValid(value);
+  }
+  static constexpr MigrationStrategy MigrationStrategy_MIN =
+    DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_MigrationStrategy_MIN;
+  static constexpr MigrationStrategy MigrationStrategy_MAX =
+    DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_MigrationStrategy_MAX;
+  static constexpr int MigrationStrategy_ARRAYSIZE =
+    DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_MigrationStrategy_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& MigrationStrategy_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, MigrationStrategy>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function MigrationStrategy_Name.");
+    return DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Name(enum_t_value);
+  }
+  static inline bool MigrationStrategy_Parse(const std::string& name,
+      MigrationStrategy* value) {
+    return DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMigrationStrategyFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto.MigrationStrategy migration_strategy = 1;
+  bool has_migration_strategy() const;
+  private:
+  bool _internal_has_migration_strategy() const;
+  public:
+  void clear_migration_strategy();
+  ::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy migration_strategy() const;
+  void set_migration_strategy(::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy value);
+  private:
+  ::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy _internal_migration_strategy() const;
+  void _internal_set_migration_strategy(::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceEcryptfsMigrationStrategyProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int migration_strategy_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceSecondFactorAuthenticationProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceSecondFactorAuthenticationProto) */ {
+ public:
+  DeviceSecondFactorAuthenticationProto();
+  virtual ~DeviceSecondFactorAuthenticationProto();
+
+  DeviceSecondFactorAuthenticationProto(const DeviceSecondFactorAuthenticationProto& from);
+  DeviceSecondFactorAuthenticationProto(DeviceSecondFactorAuthenticationProto&& from) noexcept
+    : DeviceSecondFactorAuthenticationProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceSecondFactorAuthenticationProto& operator=(const DeviceSecondFactorAuthenticationProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceSecondFactorAuthenticationProto& operator=(DeviceSecondFactorAuthenticationProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceSecondFactorAuthenticationProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceSecondFactorAuthenticationProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceSecondFactorAuthenticationProto*>(
+               &_DeviceSecondFactorAuthenticationProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    68;
+
+  friend void swap(DeviceSecondFactorAuthenticationProto& a, DeviceSecondFactorAuthenticationProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceSecondFactorAuthenticationProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceSecondFactorAuthenticationProto* New() const final {
+    return CreateMaybeMessage<DeviceSecondFactorAuthenticationProto>(nullptr);
+  }
+
+  DeviceSecondFactorAuthenticationProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceSecondFactorAuthenticationProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceSecondFactorAuthenticationProto& from);
+  void MergeFrom(const DeviceSecondFactorAuthenticationProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceSecondFactorAuthenticationProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceSecondFactorAuthenticationProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceSecondFactorAuthenticationProto_U2fMode U2fMode;
+  static constexpr U2fMode UNSET =
+    DeviceSecondFactorAuthenticationProto_U2fMode_UNSET;
+  static constexpr U2fMode DISABLED =
+    DeviceSecondFactorAuthenticationProto_U2fMode_DISABLED;
+  static constexpr U2fMode U2F =
+    DeviceSecondFactorAuthenticationProto_U2fMode_U2F;
+  static constexpr U2fMode U2F_EXTENDED =
+    DeviceSecondFactorAuthenticationProto_U2fMode_U2F_EXTENDED;
+  static inline bool U2fMode_IsValid(int value) {
+    return DeviceSecondFactorAuthenticationProto_U2fMode_IsValid(value);
+  }
+  static constexpr U2fMode U2fMode_MIN =
+    DeviceSecondFactorAuthenticationProto_U2fMode_U2fMode_MIN;
+  static constexpr U2fMode U2fMode_MAX =
+    DeviceSecondFactorAuthenticationProto_U2fMode_U2fMode_MAX;
+  static constexpr int U2fMode_ARRAYSIZE =
+    DeviceSecondFactorAuthenticationProto_U2fMode_U2fMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& U2fMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, U2fMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function U2fMode_Name.");
+    return DeviceSecondFactorAuthenticationProto_U2fMode_Name(enum_t_value);
+  }
+  static inline bool U2fMode_Parse(const std::string& name,
+      U2fMode* value) {
+    return DeviceSecondFactorAuthenticationProto_U2fMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kModeFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceSecondFactorAuthenticationProto.U2fMode mode = 1;
+  bool has_mode() const;
+  private:
+  bool _internal_has_mode() const;
+  public:
+  void clear_mode();
+  ::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode mode() const;
+  void set_mode(::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode value);
+  private:
+  ::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode _internal_mode() const;
+  void _internal_set_mode(::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceSecondFactorAuthenticationProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int mode_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CastReceiverNameProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CastReceiverNameProto) */ {
+ public:
+  CastReceiverNameProto();
+  virtual ~CastReceiverNameProto();
+
+  CastReceiverNameProto(const CastReceiverNameProto& from);
+  CastReceiverNameProto(CastReceiverNameProto&& from) noexcept
+    : CastReceiverNameProto() {
+    *this = ::std::move(from);
+  }
+
+  inline CastReceiverNameProto& operator=(const CastReceiverNameProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CastReceiverNameProto& operator=(CastReceiverNameProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CastReceiverNameProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CastReceiverNameProto* internal_default_instance() {
+    return reinterpret_cast<const CastReceiverNameProto*>(
+               &_CastReceiverNameProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    69;
+
+  friend void swap(CastReceiverNameProto& a, CastReceiverNameProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CastReceiverNameProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CastReceiverNameProto* New() const final {
+    return CreateMaybeMessage<CastReceiverNameProto>(nullptr);
+  }
+
+  CastReceiverNameProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CastReceiverNameProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CastReceiverNameProto& from);
+  void MergeFrom(const CastReceiverNameProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CastReceiverNameProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CastReceiverNameProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CastReceiverNameProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class WeeklyTimeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.WeeklyTimeProto) */ {
+ public:
+  WeeklyTimeProto();
+  virtual ~WeeklyTimeProto();
+
+  WeeklyTimeProto(const WeeklyTimeProto& from);
+  WeeklyTimeProto(WeeklyTimeProto&& from) noexcept
+    : WeeklyTimeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline WeeklyTimeProto& operator=(const WeeklyTimeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline WeeklyTimeProto& operator=(WeeklyTimeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const WeeklyTimeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const WeeklyTimeProto* internal_default_instance() {
+    return reinterpret_cast<const WeeklyTimeProto*>(
+               &_WeeklyTimeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    70;
+
+  friend void swap(WeeklyTimeProto& a, WeeklyTimeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(WeeklyTimeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline WeeklyTimeProto* New() const final {
+    return CreateMaybeMessage<WeeklyTimeProto>(nullptr);
+  }
+
+  WeeklyTimeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<WeeklyTimeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const WeeklyTimeProto& from);
+  void MergeFrom(const WeeklyTimeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(WeeklyTimeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.WeeklyTimeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef WeeklyTimeProto_DayOfWeek DayOfWeek;
+  static constexpr DayOfWeek DAY_OF_WEEK_UNSPECIFIED =
+    WeeklyTimeProto_DayOfWeek_DAY_OF_WEEK_UNSPECIFIED;
+  static constexpr DayOfWeek MONDAY =
+    WeeklyTimeProto_DayOfWeek_MONDAY;
+  static constexpr DayOfWeek TUESDAY =
+    WeeklyTimeProto_DayOfWeek_TUESDAY;
+  static constexpr DayOfWeek WEDNESDAY =
+    WeeklyTimeProto_DayOfWeek_WEDNESDAY;
+  static constexpr DayOfWeek THURSDAY =
+    WeeklyTimeProto_DayOfWeek_THURSDAY;
+  static constexpr DayOfWeek FRIDAY =
+    WeeklyTimeProto_DayOfWeek_FRIDAY;
+  static constexpr DayOfWeek SATURDAY =
+    WeeklyTimeProto_DayOfWeek_SATURDAY;
+  static constexpr DayOfWeek SUNDAY =
+    WeeklyTimeProto_DayOfWeek_SUNDAY;
+  static inline bool DayOfWeek_IsValid(int value) {
+    return WeeklyTimeProto_DayOfWeek_IsValid(value);
+  }
+  static constexpr DayOfWeek DayOfWeek_MIN =
+    WeeklyTimeProto_DayOfWeek_DayOfWeek_MIN;
+  static constexpr DayOfWeek DayOfWeek_MAX =
+    WeeklyTimeProto_DayOfWeek_DayOfWeek_MAX;
+  static constexpr int DayOfWeek_ARRAYSIZE =
+    WeeklyTimeProto_DayOfWeek_DayOfWeek_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& DayOfWeek_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, DayOfWeek>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function DayOfWeek_Name.");
+    return WeeklyTimeProto_DayOfWeek_Name(enum_t_value);
+  }
+  static inline bool DayOfWeek_Parse(const std::string& name,
+      DayOfWeek* value) {
+    return WeeklyTimeProto_DayOfWeek_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDayOfWeekFieldNumber = 1,
+    kTimeFieldNumber = 2,
+  };
+  // optional .enterprise_management.WeeklyTimeProto.DayOfWeek day_of_week = 1;
+  bool has_day_of_week() const;
+  private:
+  bool _internal_has_day_of_week() const;
+  public:
+  void clear_day_of_week();
+  ::enterprise_management::WeeklyTimeProto_DayOfWeek day_of_week() const;
+  void set_day_of_week(::enterprise_management::WeeklyTimeProto_DayOfWeek value);
+  private:
+  ::enterprise_management::WeeklyTimeProto_DayOfWeek _internal_day_of_week() const;
+  void _internal_set_day_of_week(::enterprise_management::WeeklyTimeProto_DayOfWeek value);
+  public:
+
+  // optional int32 time = 2;
+  bool has_time() const;
+  private:
+  bool _internal_has_time() const;
+  public:
+  void clear_time();
+  ::PROTOBUF_NAMESPACE_ID::int32 time() const;
+  void set_time(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_time() const;
+  void _internal_set_time(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.WeeklyTimeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int day_of_week_;
+  ::PROTOBUF_NAMESPACE_ID::int32 time_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class WeeklyTimeIntervalProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.WeeklyTimeIntervalProto) */ {
+ public:
+  WeeklyTimeIntervalProto();
+  virtual ~WeeklyTimeIntervalProto();
+
+  WeeklyTimeIntervalProto(const WeeklyTimeIntervalProto& from);
+  WeeklyTimeIntervalProto(WeeklyTimeIntervalProto&& from) noexcept
+    : WeeklyTimeIntervalProto() {
+    *this = ::std::move(from);
+  }
+
+  inline WeeklyTimeIntervalProto& operator=(const WeeklyTimeIntervalProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline WeeklyTimeIntervalProto& operator=(WeeklyTimeIntervalProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const WeeklyTimeIntervalProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const WeeklyTimeIntervalProto* internal_default_instance() {
+    return reinterpret_cast<const WeeklyTimeIntervalProto*>(
+               &_WeeklyTimeIntervalProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    71;
+
+  friend void swap(WeeklyTimeIntervalProto& a, WeeklyTimeIntervalProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(WeeklyTimeIntervalProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline WeeklyTimeIntervalProto* New() const final {
+    return CreateMaybeMessage<WeeklyTimeIntervalProto>(nullptr);
+  }
+
+  WeeklyTimeIntervalProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<WeeklyTimeIntervalProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const WeeklyTimeIntervalProto& from);
+  void MergeFrom(const WeeklyTimeIntervalProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(WeeklyTimeIntervalProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.WeeklyTimeIntervalProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kStartFieldNumber = 1,
+    kEndFieldNumber = 2,
+  };
+  // optional .enterprise_management.WeeklyTimeProto start = 1;
+  bool has_start() const;
+  private:
+  bool _internal_has_start() const;
+  public:
+  void clear_start();
+  const ::enterprise_management::WeeklyTimeProto& start() const;
+  ::enterprise_management::WeeklyTimeProto* release_start();
+  ::enterprise_management::WeeklyTimeProto* mutable_start();
+  void set_allocated_start(::enterprise_management::WeeklyTimeProto* start);
+  private:
+  const ::enterprise_management::WeeklyTimeProto& _internal_start() const;
+  ::enterprise_management::WeeklyTimeProto* _internal_mutable_start();
+  public:
+
+  // optional .enterprise_management.WeeklyTimeProto end = 2;
+  bool has_end() const;
+  private:
+  bool _internal_has_end() const;
+  public:
+  void clear_end();
+  const ::enterprise_management::WeeklyTimeProto& end() const;
+  ::enterprise_management::WeeklyTimeProto* release_end();
+  ::enterprise_management::WeeklyTimeProto* mutable_end();
+  void set_allocated_end(::enterprise_management::WeeklyTimeProto* end);
+  private:
+  const ::enterprise_management::WeeklyTimeProto& _internal_end() const;
+  ::enterprise_management::WeeklyTimeProto* _internal_mutable_end();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.WeeklyTimeIntervalProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::WeeklyTimeProto* start_;
+  ::enterprise_management::WeeklyTimeProto* end_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceOffHoursProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceOffHoursProto) */ {
+ public:
+  DeviceOffHoursProto();
+  virtual ~DeviceOffHoursProto();
+
+  DeviceOffHoursProto(const DeviceOffHoursProto& from);
+  DeviceOffHoursProto(DeviceOffHoursProto&& from) noexcept
+    : DeviceOffHoursProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceOffHoursProto& operator=(const DeviceOffHoursProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceOffHoursProto& operator=(DeviceOffHoursProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceOffHoursProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceOffHoursProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceOffHoursProto*>(
+               &_DeviceOffHoursProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    72;
+
+  friend void swap(DeviceOffHoursProto& a, DeviceOffHoursProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceOffHoursProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceOffHoursProto* New() const final {
+    return CreateMaybeMessage<DeviceOffHoursProto>(nullptr);
+  }
+
+  DeviceOffHoursProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceOffHoursProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceOffHoursProto& from);
+  void MergeFrom(const DeviceOffHoursProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceOffHoursProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceOffHoursProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kIntervalsFieldNumber = 1,
+    kIgnoredPolicyProtoTagsFieldNumber = 3,
+    kTimezoneFieldNumber = 2,
+  };
+  // repeated .enterprise_management.WeeklyTimeIntervalProto intervals = 1;
+  int intervals_size() const;
+  private:
+  int _internal_intervals_size() const;
+  public:
+  void clear_intervals();
+  ::enterprise_management::WeeklyTimeIntervalProto* mutable_intervals(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::WeeklyTimeIntervalProto >*
+      mutable_intervals();
+  private:
+  const ::enterprise_management::WeeklyTimeIntervalProto& _internal_intervals(int index) const;
+  ::enterprise_management::WeeklyTimeIntervalProto* _internal_add_intervals();
+  public:
+  const ::enterprise_management::WeeklyTimeIntervalProto& intervals(int index) const;
+  ::enterprise_management::WeeklyTimeIntervalProto* add_intervals();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::WeeklyTimeIntervalProto >&
+      intervals() const;
+
+  // repeated int32 ignored_policy_proto_tags = 3;
+  int ignored_policy_proto_tags_size() const;
+  private:
+  int _internal_ignored_policy_proto_tags_size() const;
+  public:
+  void clear_ignored_policy_proto_tags();
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_ignored_policy_proto_tags(int index) const;
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+      _internal_ignored_policy_proto_tags() const;
+  void _internal_add_ignored_policy_proto_tags(::PROTOBUF_NAMESPACE_ID::int32 value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+      _internal_mutable_ignored_policy_proto_tags();
+  public:
+  ::PROTOBUF_NAMESPACE_ID::int32 ignored_policy_proto_tags(int index) const;
+  void set_ignored_policy_proto_tags(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
+  void add_ignored_policy_proto_tags(::PROTOBUF_NAMESPACE_ID::int32 value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+      ignored_policy_proto_tags() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+      mutable_ignored_policy_proto_tags();
+
+  // optional string timezone = 2;
+  bool has_timezone() const;
+  private:
+  bool _internal_has_timezone() const;
+  public:
+  void clear_timezone();
+  const std::string& timezone() const;
+  void set_timezone(const std::string& value);
+  void set_timezone(std::string&& value);
+  void set_timezone(const char* value);
+  void set_timezone(const char* value, size_t size);
+  std::string* mutable_timezone();
+  std::string* release_timezone();
+  void set_allocated_timezone(std::string* timezone);
+  private:
+  const std::string& _internal_timezone() const;
+  void _internal_set_timezone(const std::string& value);
+  std::string* _internal_mutable_timezone();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceOffHoursProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::WeeklyTimeIntervalProto > intervals_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > ignored_policy_proto_tags_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr timezone_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceNativePrintersProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceNativePrintersProto) */ {
+ public:
+  DeviceNativePrintersProto();
+  virtual ~DeviceNativePrintersProto();
+
+  DeviceNativePrintersProto(const DeviceNativePrintersProto& from);
+  DeviceNativePrintersProto(DeviceNativePrintersProto&& from) noexcept
+    : DeviceNativePrintersProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceNativePrintersProto& operator=(const DeviceNativePrintersProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceNativePrintersProto& operator=(DeviceNativePrintersProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceNativePrintersProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceNativePrintersProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceNativePrintersProto*>(
+               &_DeviceNativePrintersProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    73;
+
+  friend void swap(DeviceNativePrintersProto& a, DeviceNativePrintersProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceNativePrintersProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceNativePrintersProto* New() const final {
+    return CreateMaybeMessage<DeviceNativePrintersProto>(nullptr);
+  }
+
+  DeviceNativePrintersProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceNativePrintersProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceNativePrintersProto& from);
+  void MergeFrom(const DeviceNativePrintersProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceNativePrintersProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceNativePrintersProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kExternalPolicyFieldNumber = 1,
+  };
+  // optional string external_policy = 1;
+  bool has_external_policy() const;
+  private:
+  bool _internal_has_external_policy() const;
+  public:
+  void clear_external_policy();
+  const std::string& external_policy() const;
+  void set_external_policy(const std::string& value);
+  void set_external_policy(std::string&& value);
+  void set_external_policy(const char* value);
+  void set_external_policy(const char* value, size_t size);
+  std::string* mutable_external_policy();
+  std::string* release_external_policy();
+  void set_allocated_external_policy(std::string* external_policy);
+  private:
+  const std::string& _internal_external_policy() const;
+  void _internal_set_external_policy(const std::string& value);
+  std::string* _internal_mutable_external_policy();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceNativePrintersProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr external_policy_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceNativePrintersAccessModeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceNativePrintersAccessModeProto) */ {
+ public:
+  DeviceNativePrintersAccessModeProto();
+  virtual ~DeviceNativePrintersAccessModeProto();
+
+  DeviceNativePrintersAccessModeProto(const DeviceNativePrintersAccessModeProto& from);
+  DeviceNativePrintersAccessModeProto(DeviceNativePrintersAccessModeProto&& from) noexcept
+    : DeviceNativePrintersAccessModeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceNativePrintersAccessModeProto& operator=(const DeviceNativePrintersAccessModeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceNativePrintersAccessModeProto& operator=(DeviceNativePrintersAccessModeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceNativePrintersAccessModeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceNativePrintersAccessModeProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceNativePrintersAccessModeProto*>(
+               &_DeviceNativePrintersAccessModeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    74;
+
+  friend void swap(DeviceNativePrintersAccessModeProto& a, DeviceNativePrintersAccessModeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceNativePrintersAccessModeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceNativePrintersAccessModeProto* New() const final {
+    return CreateMaybeMessage<DeviceNativePrintersAccessModeProto>(nullptr);
+  }
+
+  DeviceNativePrintersAccessModeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceNativePrintersAccessModeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceNativePrintersAccessModeProto& from);
+  void MergeFrom(const DeviceNativePrintersAccessModeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceNativePrintersAccessModeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceNativePrintersAccessModeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceNativePrintersAccessModeProto_AccessMode AccessMode;
+  static constexpr AccessMode ACCESS_MODE_BLACKLIST =
+    DeviceNativePrintersAccessModeProto_AccessMode_ACCESS_MODE_BLACKLIST;
+  static constexpr AccessMode ACCESS_MODE_WHITELIST =
+    DeviceNativePrintersAccessModeProto_AccessMode_ACCESS_MODE_WHITELIST;
+  static constexpr AccessMode ACCESS_MODE_ALL =
+    DeviceNativePrintersAccessModeProto_AccessMode_ACCESS_MODE_ALL;
+  static inline bool AccessMode_IsValid(int value) {
+    return DeviceNativePrintersAccessModeProto_AccessMode_IsValid(value);
+  }
+  static constexpr AccessMode AccessMode_MIN =
+    DeviceNativePrintersAccessModeProto_AccessMode_AccessMode_MIN;
+  static constexpr AccessMode AccessMode_MAX =
+    DeviceNativePrintersAccessModeProto_AccessMode_AccessMode_MAX;
+  static constexpr int AccessMode_ARRAYSIZE =
+    DeviceNativePrintersAccessModeProto_AccessMode_AccessMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AccessMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AccessMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AccessMode_Name.");
+    return DeviceNativePrintersAccessModeProto_AccessMode_Name(enum_t_value);
+  }
+  static inline bool AccessMode_Parse(const std::string& name,
+      AccessMode* value) {
+    return DeviceNativePrintersAccessModeProto_AccessMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAccessModeFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceNativePrintersAccessModeProto.AccessMode access_mode = 1;
+  bool has_access_mode() const;
+  private:
+  bool _internal_has_access_mode() const;
+  public:
+  void clear_access_mode();
+  ::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode access_mode() const;
+  void set_access_mode(::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode value);
+  private:
+  ::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode _internal_access_mode() const;
+  void _internal_set_access_mode(::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceNativePrintersAccessModeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int access_mode_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceNativePrintersBlacklistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceNativePrintersBlacklistProto) */ {
+ public:
+  DeviceNativePrintersBlacklistProto();
+  virtual ~DeviceNativePrintersBlacklistProto();
+
+  DeviceNativePrintersBlacklistProto(const DeviceNativePrintersBlacklistProto& from);
+  DeviceNativePrintersBlacklistProto(DeviceNativePrintersBlacklistProto&& from) noexcept
+    : DeviceNativePrintersBlacklistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceNativePrintersBlacklistProto& operator=(const DeviceNativePrintersBlacklistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceNativePrintersBlacklistProto& operator=(DeviceNativePrintersBlacklistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceNativePrintersBlacklistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceNativePrintersBlacklistProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceNativePrintersBlacklistProto*>(
+               &_DeviceNativePrintersBlacklistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    75;
+
+  friend void swap(DeviceNativePrintersBlacklistProto& a, DeviceNativePrintersBlacklistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceNativePrintersBlacklistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceNativePrintersBlacklistProto* New() const final {
+    return CreateMaybeMessage<DeviceNativePrintersBlacklistProto>(nullptr);
+  }
+
+  DeviceNativePrintersBlacklistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceNativePrintersBlacklistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceNativePrintersBlacklistProto& from);
+  void MergeFrom(const DeviceNativePrintersBlacklistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceNativePrintersBlacklistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceNativePrintersBlacklistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBlacklistFieldNumber = 1,
+  };
+  // repeated string blacklist = 1;
+  int blacklist_size() const;
+  private:
+  int _internal_blacklist_size() const;
+  public:
+  void clear_blacklist();
+  const std::string& blacklist(int index) const;
+  std::string* mutable_blacklist(int index);
+  void set_blacklist(int index, const std::string& value);
+  void set_blacklist(int index, std::string&& value);
+  void set_blacklist(int index, const char* value);
+  void set_blacklist(int index, const char* value, size_t size);
+  std::string* add_blacklist();
+  void add_blacklist(const std::string& value);
+  void add_blacklist(std::string&& value);
+  void add_blacklist(const char* value);
+  void add_blacklist(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& blacklist() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_blacklist();
+  private:
+  const std::string& _internal_blacklist(int index) const;
+  std::string* _internal_add_blacklist();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceNativePrintersBlacklistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> blacklist_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceNativePrintersWhitelistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceNativePrintersWhitelistProto) */ {
+ public:
+  DeviceNativePrintersWhitelistProto();
+  virtual ~DeviceNativePrintersWhitelistProto();
+
+  DeviceNativePrintersWhitelistProto(const DeviceNativePrintersWhitelistProto& from);
+  DeviceNativePrintersWhitelistProto(DeviceNativePrintersWhitelistProto&& from) noexcept
+    : DeviceNativePrintersWhitelistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceNativePrintersWhitelistProto& operator=(const DeviceNativePrintersWhitelistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceNativePrintersWhitelistProto& operator=(DeviceNativePrintersWhitelistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceNativePrintersWhitelistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceNativePrintersWhitelistProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceNativePrintersWhitelistProto*>(
+               &_DeviceNativePrintersWhitelistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    76;
+
+  friend void swap(DeviceNativePrintersWhitelistProto& a, DeviceNativePrintersWhitelistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceNativePrintersWhitelistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceNativePrintersWhitelistProto* New() const final {
+    return CreateMaybeMessage<DeviceNativePrintersWhitelistProto>(nullptr);
+  }
+
+  DeviceNativePrintersWhitelistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceNativePrintersWhitelistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceNativePrintersWhitelistProto& from);
+  void MergeFrom(const DeviceNativePrintersWhitelistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceNativePrintersWhitelistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceNativePrintersWhitelistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kWhitelistFieldNumber = 1,
+  };
+  // repeated string whitelist = 1;
+  int whitelist_size() const;
+  private:
+  int _internal_whitelist_size() const;
+  public:
+  void clear_whitelist();
+  const std::string& whitelist(int index) const;
+  std::string* mutable_whitelist(int index);
+  void set_whitelist(int index, const std::string& value);
+  void set_whitelist(int index, std::string&& value);
+  void set_whitelist(int index, const char* value);
+  void set_whitelist(int index, const char* value, size_t size);
+  std::string* add_whitelist();
+  void add_whitelist(const std::string& value);
+  void add_whitelist(std::string&& value);
+  void add_whitelist(const char* value);
+  void add_whitelist(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& whitelist() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_whitelist();
+  private:
+  const std::string& _internal_whitelist(int index) const;
+  std::string* _internal_add_whitelist();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceNativePrintersWhitelistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> whitelist_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePrintersProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePrintersProto) */ {
+ public:
+  DevicePrintersProto();
+  virtual ~DevicePrintersProto();
+
+  DevicePrintersProto(const DevicePrintersProto& from);
+  DevicePrintersProto(DevicePrintersProto&& from) noexcept
+    : DevicePrintersProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePrintersProto& operator=(const DevicePrintersProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePrintersProto& operator=(DevicePrintersProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePrintersProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePrintersProto* internal_default_instance() {
+    return reinterpret_cast<const DevicePrintersProto*>(
+               &_DevicePrintersProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    77;
+
+  friend void swap(DevicePrintersProto& a, DevicePrintersProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePrintersProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePrintersProto* New() const final {
+    return CreateMaybeMessage<DevicePrintersProto>(nullptr);
+  }
+
+  DevicePrintersProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePrintersProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePrintersProto& from);
+  void MergeFrom(const DevicePrintersProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePrintersProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePrintersProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kExternalPolicyFieldNumber = 1,
+  };
+  // optional string external_policy = 1;
+  bool has_external_policy() const;
+  private:
+  bool _internal_has_external_policy() const;
+  public:
+  void clear_external_policy();
+  const std::string& external_policy() const;
+  void set_external_policy(const std::string& value);
+  void set_external_policy(std::string&& value);
+  void set_external_policy(const char* value);
+  void set_external_policy(const char* value, size_t size);
+  std::string* mutable_external_policy();
+  std::string* release_external_policy();
+  void set_allocated_external_policy(std::string* external_policy);
+  private:
+  const std::string& _internal_external_policy() const;
+  void _internal_set_external_policy(const std::string& value);
+  std::string* _internal_mutable_external_policy();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePrintersProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr external_policy_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePrintersAccessModeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePrintersAccessModeProto) */ {
+ public:
+  DevicePrintersAccessModeProto();
+  virtual ~DevicePrintersAccessModeProto();
+
+  DevicePrintersAccessModeProto(const DevicePrintersAccessModeProto& from);
+  DevicePrintersAccessModeProto(DevicePrintersAccessModeProto&& from) noexcept
+    : DevicePrintersAccessModeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePrintersAccessModeProto& operator=(const DevicePrintersAccessModeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePrintersAccessModeProto& operator=(DevicePrintersAccessModeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePrintersAccessModeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePrintersAccessModeProto* internal_default_instance() {
+    return reinterpret_cast<const DevicePrintersAccessModeProto*>(
+               &_DevicePrintersAccessModeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    78;
+
+  friend void swap(DevicePrintersAccessModeProto& a, DevicePrintersAccessModeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePrintersAccessModeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePrintersAccessModeProto* New() const final {
+    return CreateMaybeMessage<DevicePrintersAccessModeProto>(nullptr);
+  }
+
+  DevicePrintersAccessModeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePrintersAccessModeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePrintersAccessModeProto& from);
+  void MergeFrom(const DevicePrintersAccessModeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePrintersAccessModeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePrintersAccessModeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DevicePrintersAccessModeProto_AccessMode AccessMode;
+  static constexpr AccessMode ACCESS_MODE_BLOCKLIST =
+    DevicePrintersAccessModeProto_AccessMode_ACCESS_MODE_BLOCKLIST;
+  static constexpr AccessMode ACCESS_MODE_ALLOWLIST =
+    DevicePrintersAccessModeProto_AccessMode_ACCESS_MODE_ALLOWLIST;
+  static constexpr AccessMode ACCESS_MODE_ALL =
+    DevicePrintersAccessModeProto_AccessMode_ACCESS_MODE_ALL;
+  static inline bool AccessMode_IsValid(int value) {
+    return DevicePrintersAccessModeProto_AccessMode_IsValid(value);
+  }
+  static constexpr AccessMode AccessMode_MIN =
+    DevicePrintersAccessModeProto_AccessMode_AccessMode_MIN;
+  static constexpr AccessMode AccessMode_MAX =
+    DevicePrintersAccessModeProto_AccessMode_AccessMode_MAX;
+  static constexpr int AccessMode_ARRAYSIZE =
+    DevicePrintersAccessModeProto_AccessMode_AccessMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AccessMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AccessMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AccessMode_Name.");
+    return DevicePrintersAccessModeProto_AccessMode_Name(enum_t_value);
+  }
+  static inline bool AccessMode_Parse(const std::string& name,
+      AccessMode* value) {
+    return DevicePrintersAccessModeProto_AccessMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAccessModeFieldNumber = 1,
+  };
+  // optional .enterprise_management.DevicePrintersAccessModeProto.AccessMode access_mode = 1;
+  bool has_access_mode() const;
+  private:
+  bool _internal_has_access_mode() const;
+  public:
+  void clear_access_mode();
+  ::enterprise_management::DevicePrintersAccessModeProto_AccessMode access_mode() const;
+  void set_access_mode(::enterprise_management::DevicePrintersAccessModeProto_AccessMode value);
+  private:
+  ::enterprise_management::DevicePrintersAccessModeProto_AccessMode _internal_access_mode() const;
+  void _internal_set_access_mode(::enterprise_management::DevicePrintersAccessModeProto_AccessMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePrintersAccessModeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int access_mode_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePrintersBlocklistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePrintersBlocklistProto) */ {
+ public:
+  DevicePrintersBlocklistProto();
+  virtual ~DevicePrintersBlocklistProto();
+
+  DevicePrintersBlocklistProto(const DevicePrintersBlocklistProto& from);
+  DevicePrintersBlocklistProto(DevicePrintersBlocklistProto&& from) noexcept
+    : DevicePrintersBlocklistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePrintersBlocklistProto& operator=(const DevicePrintersBlocklistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePrintersBlocklistProto& operator=(DevicePrintersBlocklistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePrintersBlocklistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePrintersBlocklistProto* internal_default_instance() {
+    return reinterpret_cast<const DevicePrintersBlocklistProto*>(
+               &_DevicePrintersBlocklistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    79;
+
+  friend void swap(DevicePrintersBlocklistProto& a, DevicePrintersBlocklistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePrintersBlocklistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePrintersBlocklistProto* New() const final {
+    return CreateMaybeMessage<DevicePrintersBlocklistProto>(nullptr);
+  }
+
+  DevicePrintersBlocklistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePrintersBlocklistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePrintersBlocklistProto& from);
+  void MergeFrom(const DevicePrintersBlocklistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePrintersBlocklistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePrintersBlocklistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBlocklistFieldNumber = 1,
+  };
+  // repeated string blocklist = 1;
+  int blocklist_size() const;
+  private:
+  int _internal_blocklist_size() const;
+  public:
+  void clear_blocklist();
+  const std::string& blocklist(int index) const;
+  std::string* mutable_blocklist(int index);
+  void set_blocklist(int index, const std::string& value);
+  void set_blocklist(int index, std::string&& value);
+  void set_blocklist(int index, const char* value);
+  void set_blocklist(int index, const char* value, size_t size);
+  std::string* add_blocklist();
+  void add_blocklist(const std::string& value);
+  void add_blocklist(std::string&& value);
+  void add_blocklist(const char* value);
+  void add_blocklist(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& blocklist() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_blocklist();
+  private:
+  const std::string& _internal_blocklist(int index) const;
+  std::string* _internal_add_blocklist();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePrintersBlocklistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> blocklist_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePrintersAllowlistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePrintersAllowlistProto) */ {
+ public:
+  DevicePrintersAllowlistProto();
+  virtual ~DevicePrintersAllowlistProto();
+
+  DevicePrintersAllowlistProto(const DevicePrintersAllowlistProto& from);
+  DevicePrintersAllowlistProto(DevicePrintersAllowlistProto&& from) noexcept
+    : DevicePrintersAllowlistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePrintersAllowlistProto& operator=(const DevicePrintersAllowlistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePrintersAllowlistProto& operator=(DevicePrintersAllowlistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePrintersAllowlistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePrintersAllowlistProto* internal_default_instance() {
+    return reinterpret_cast<const DevicePrintersAllowlistProto*>(
+               &_DevicePrintersAllowlistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    80;
+
+  friend void swap(DevicePrintersAllowlistProto& a, DevicePrintersAllowlistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePrintersAllowlistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePrintersAllowlistProto* New() const final {
+    return CreateMaybeMessage<DevicePrintersAllowlistProto>(nullptr);
+  }
+
+  DevicePrintersAllowlistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePrintersAllowlistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePrintersAllowlistProto& from);
+  void MergeFrom(const DevicePrintersAllowlistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePrintersAllowlistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePrintersAllowlistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowlistFieldNumber = 1,
+  };
+  // repeated string allowlist = 1;
+  int allowlist_size() const;
+  private:
+  int _internal_allowlist_size() const;
+  public:
+  void clear_allowlist();
+  const std::string& allowlist(int index) const;
+  std::string* mutable_allowlist(int index);
+  void set_allowlist(int index, const std::string& value);
+  void set_allowlist(int index, std::string&& value);
+  void set_allowlist(int index, const char* value);
+  void set_allowlist(int index, const char* value, size_t size);
+  std::string* add_allowlist();
+  void add_allowlist(const std::string& value);
+  void add_allowlist(std::string&& value);
+  void add_allowlist(const char* value);
+  void add_allowlist(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& allowlist() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_allowlist();
+  private:
+  const std::string& _internal_allowlist(int index) const;
+  std::string* _internal_add_allowlist();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePrintersAllowlistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> allowlist_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceExternalPrintServersProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceExternalPrintServersProto) */ {
+ public:
+  DeviceExternalPrintServersProto();
+  virtual ~DeviceExternalPrintServersProto();
+
+  DeviceExternalPrintServersProto(const DeviceExternalPrintServersProto& from);
+  DeviceExternalPrintServersProto(DeviceExternalPrintServersProto&& from) noexcept
+    : DeviceExternalPrintServersProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceExternalPrintServersProto& operator=(const DeviceExternalPrintServersProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceExternalPrintServersProto& operator=(DeviceExternalPrintServersProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceExternalPrintServersProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceExternalPrintServersProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceExternalPrintServersProto*>(
+               &_DeviceExternalPrintServersProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    81;
+
+  friend void swap(DeviceExternalPrintServersProto& a, DeviceExternalPrintServersProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceExternalPrintServersProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceExternalPrintServersProto* New() const final {
+    return CreateMaybeMessage<DeviceExternalPrintServersProto>(nullptr);
+  }
+
+  DeviceExternalPrintServersProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceExternalPrintServersProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceExternalPrintServersProto& from);
+  void MergeFrom(const DeviceExternalPrintServersProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceExternalPrintServersProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceExternalPrintServersProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kExternalPolicyFieldNumber = 1,
+  };
+  // optional string external_policy = 1;
+  bool has_external_policy() const;
+  private:
+  bool _internal_has_external_policy() const;
+  public:
+  void clear_external_policy();
+  const std::string& external_policy() const;
+  void set_external_policy(const std::string& value);
+  void set_external_policy(std::string&& value);
+  void set_external_policy(const char* value);
+  void set_external_policy(const char* value, size_t size);
+  std::string* mutable_external_policy();
+  std::string* release_external_policy();
+  void set_allocated_external_policy(std::string* external_policy);
+  private:
+  const std::string& _internal_external_policy() const;
+  void _internal_set_external_policy(const std::string& value);
+  std::string* _internal_mutable_external_policy();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceExternalPrintServersProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr external_policy_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceExternalPrintServersAllowlistProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceExternalPrintServersAllowlistProto) */ {
+ public:
+  DeviceExternalPrintServersAllowlistProto();
+  virtual ~DeviceExternalPrintServersAllowlistProto();
+
+  DeviceExternalPrintServersAllowlistProto(const DeviceExternalPrintServersAllowlistProto& from);
+  DeviceExternalPrintServersAllowlistProto(DeviceExternalPrintServersAllowlistProto&& from) noexcept
+    : DeviceExternalPrintServersAllowlistProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceExternalPrintServersAllowlistProto& operator=(const DeviceExternalPrintServersAllowlistProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceExternalPrintServersAllowlistProto& operator=(DeviceExternalPrintServersAllowlistProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceExternalPrintServersAllowlistProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceExternalPrintServersAllowlistProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceExternalPrintServersAllowlistProto*>(
+               &_DeviceExternalPrintServersAllowlistProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    82;
+
+  friend void swap(DeviceExternalPrintServersAllowlistProto& a, DeviceExternalPrintServersAllowlistProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceExternalPrintServersAllowlistProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceExternalPrintServersAllowlistProto* New() const final {
+    return CreateMaybeMessage<DeviceExternalPrintServersAllowlistProto>(nullptr);
+  }
+
+  DeviceExternalPrintServersAllowlistProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceExternalPrintServersAllowlistProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceExternalPrintServersAllowlistProto& from);
+  void MergeFrom(const DeviceExternalPrintServersAllowlistProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceExternalPrintServersAllowlistProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceExternalPrintServersAllowlistProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowlistFieldNumber = 1,
+  };
+  // repeated string allowlist = 1;
+  int allowlist_size() const;
+  private:
+  int _internal_allowlist_size() const;
+  public:
+  void clear_allowlist();
+  const std::string& allowlist(int index) const;
+  std::string* mutable_allowlist(int index);
+  void set_allowlist(int index, const std::string& value);
+  void set_allowlist(int index, std::string&& value);
+  void set_allowlist(int index, const char* value);
+  void set_allowlist(int index, const char* value, size_t size);
+  std::string* add_allowlist();
+  void add_allowlist(const std::string& value);
+  void add_allowlist(std::string&& value);
+  void add_allowlist(const char* value);
+  void add_allowlist(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& allowlist() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_allowlist();
+  private:
+  const std::string& _internal_allowlist(int index) const;
+  std::string* _internal_add_allowlist();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceExternalPrintServersAllowlistProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> allowlist_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class TPMFirmwareUpdateSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.TPMFirmwareUpdateSettingsProto) */ {
+ public:
+  TPMFirmwareUpdateSettingsProto();
+  virtual ~TPMFirmwareUpdateSettingsProto();
+
+  TPMFirmwareUpdateSettingsProto(const TPMFirmwareUpdateSettingsProto& from);
+  TPMFirmwareUpdateSettingsProto(TPMFirmwareUpdateSettingsProto&& from) noexcept
+    : TPMFirmwareUpdateSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline TPMFirmwareUpdateSettingsProto& operator=(const TPMFirmwareUpdateSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline TPMFirmwareUpdateSettingsProto& operator=(TPMFirmwareUpdateSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const TPMFirmwareUpdateSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const TPMFirmwareUpdateSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const TPMFirmwareUpdateSettingsProto*>(
+               &_TPMFirmwareUpdateSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    83;
+
+  friend void swap(TPMFirmwareUpdateSettingsProto& a, TPMFirmwareUpdateSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(TPMFirmwareUpdateSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline TPMFirmwareUpdateSettingsProto* New() const final {
+    return CreateMaybeMessage<TPMFirmwareUpdateSettingsProto>(nullptr);
+  }
+
+  TPMFirmwareUpdateSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<TPMFirmwareUpdateSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const TPMFirmwareUpdateSettingsProto& from);
+  void MergeFrom(const TPMFirmwareUpdateSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(TPMFirmwareUpdateSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.TPMFirmwareUpdateSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef TPMFirmwareUpdateSettingsProto_AutoUpdateMode AutoUpdateMode;
+  static constexpr AutoUpdateMode AUTO_UPDATE_MODE_UNSPECIFIED =
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AUTO_UPDATE_MODE_UNSPECIFIED;
+  static constexpr AutoUpdateMode NEVER =
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode_NEVER;
+  static constexpr AutoUpdateMode USER_ACKNOWLEDGMENT =
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode_USER_ACKNOWLEDGMENT;
+  static constexpr AutoUpdateMode WITHOUT_ACKNOWLEDGMENT =
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode_WITHOUT_ACKNOWLEDGMENT;
+  static constexpr AutoUpdateMode ENROLLMENT =
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode_ENROLLMENT;
+  static inline bool AutoUpdateMode_IsValid(int value) {
+    return TPMFirmwareUpdateSettingsProto_AutoUpdateMode_IsValid(value);
+  }
+  static constexpr AutoUpdateMode AutoUpdateMode_MIN =
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AutoUpdateMode_MIN;
+  static constexpr AutoUpdateMode AutoUpdateMode_MAX =
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AutoUpdateMode_MAX;
+  static constexpr int AutoUpdateMode_ARRAYSIZE =
+    TPMFirmwareUpdateSettingsProto_AutoUpdateMode_AutoUpdateMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AutoUpdateMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AutoUpdateMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AutoUpdateMode_Name.");
+    return TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Name(enum_t_value);
+  }
+  static inline bool AutoUpdateMode_Parse(const std::string& name,
+      AutoUpdateMode* value) {
+    return TPMFirmwareUpdateSettingsProto_AutoUpdateMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowUserInitiatedPowerwashFieldNumber = 1,
+    kAllowUserInitiatedPreserveDeviceStateFieldNumber = 2,
+    kAutoUpdateModeFieldNumber = 3,
+  };
+  // optional bool allow_user_initiated_powerwash = 1;
+  bool has_allow_user_initiated_powerwash() const;
+  private:
+  bool _internal_has_allow_user_initiated_powerwash() const;
+  public:
+  void clear_allow_user_initiated_powerwash();
+  bool allow_user_initiated_powerwash() const;
+  void set_allow_user_initiated_powerwash(bool value);
+  private:
+  bool _internal_allow_user_initiated_powerwash() const;
+  void _internal_set_allow_user_initiated_powerwash(bool value);
+  public:
+
+  // optional bool allow_user_initiated_preserve_device_state = 2;
+  bool has_allow_user_initiated_preserve_device_state() const;
+  private:
+  bool _internal_has_allow_user_initiated_preserve_device_state() const;
+  public:
+  void clear_allow_user_initiated_preserve_device_state();
+  bool allow_user_initiated_preserve_device_state() const;
+  void set_allow_user_initiated_preserve_device_state(bool value);
+  private:
+  bool _internal_allow_user_initiated_preserve_device_state() const;
+  void _internal_set_allow_user_initiated_preserve_device_state(bool value);
+  public:
+
+  // optional .enterprise_management.TPMFirmwareUpdateSettingsProto.AutoUpdateMode auto_update_mode = 3 [default = NEVER];
+  bool has_auto_update_mode() const;
+  private:
+  bool _internal_has_auto_update_mode() const;
+  public:
+  void clear_auto_update_mode();
+  ::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode auto_update_mode() const;
+  void set_auto_update_mode(::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode value);
+  private:
+  ::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode _internal_auto_update_mode() const;
+  void _internal_set_auto_update_mode(::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.TPMFirmwareUpdateSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool allow_user_initiated_powerwash_;
+  bool allow_user_initiated_preserve_device_state_;
+  int auto_update_mode_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_MinimumRequiredVersionProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_MinimumRequiredVersionProto) */ {
+ public:
+  OBSOLETE_MinimumRequiredVersionProto();
+  virtual ~OBSOLETE_MinimumRequiredVersionProto();
+
+  OBSOLETE_MinimumRequiredVersionProto(const OBSOLETE_MinimumRequiredVersionProto& from);
+  OBSOLETE_MinimumRequiredVersionProto(OBSOLETE_MinimumRequiredVersionProto&& from) noexcept
+    : OBSOLETE_MinimumRequiredVersionProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_MinimumRequiredVersionProto& operator=(const OBSOLETE_MinimumRequiredVersionProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_MinimumRequiredVersionProto& operator=(OBSOLETE_MinimumRequiredVersionProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_MinimumRequiredVersionProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_MinimumRequiredVersionProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_MinimumRequiredVersionProto*>(
+               &_OBSOLETE_MinimumRequiredVersionProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    84;
+
+  friend void swap(OBSOLETE_MinimumRequiredVersionProto& a, OBSOLETE_MinimumRequiredVersionProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_MinimumRequiredVersionProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_MinimumRequiredVersionProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_MinimumRequiredVersionProto>(nullptr);
+  }
+
+  OBSOLETE_MinimumRequiredVersionProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_MinimumRequiredVersionProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_MinimumRequiredVersionProto& from);
+  void MergeFrom(const OBSOLETE_MinimumRequiredVersionProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_MinimumRequiredVersionProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_MinimumRequiredVersionProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEChromeVersionFieldNumber = 1,
+  };
+  // optional string OBSOLETE_chrome_version = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_chrome_version() const;
+  private:
+  bool _internal_has_obsolete_chrome_version() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_chrome_version();
+  PROTOBUF_DEPRECATED const std::string& obsolete_chrome_version() const;
+  PROTOBUF_DEPRECATED void set_obsolete_chrome_version(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_chrome_version(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_chrome_version(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_chrome_version(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_chrome_version();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_chrome_version();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_chrome_version(std::string* obsolete_chrome_version);
+  private:
+  const std::string& _internal_obsolete_chrome_version() const;
+  void _internal_set_obsolete_chrome_version(const std::string& value);
+  std::string* _internal_mutable_obsolete_chrome_version();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_MinimumRequiredVersionProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_chrome_version_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceLoginScreenAutoSelectCertificateForUrls :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls) */ {
+ public:
+  DeviceLoginScreenAutoSelectCertificateForUrls();
+  virtual ~DeviceLoginScreenAutoSelectCertificateForUrls();
+
+  DeviceLoginScreenAutoSelectCertificateForUrls(const DeviceLoginScreenAutoSelectCertificateForUrls& from);
+  DeviceLoginScreenAutoSelectCertificateForUrls(DeviceLoginScreenAutoSelectCertificateForUrls&& from) noexcept
+    : DeviceLoginScreenAutoSelectCertificateForUrls() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceLoginScreenAutoSelectCertificateForUrls& operator=(const DeviceLoginScreenAutoSelectCertificateForUrls& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceLoginScreenAutoSelectCertificateForUrls& operator=(DeviceLoginScreenAutoSelectCertificateForUrls&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceLoginScreenAutoSelectCertificateForUrls& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceLoginScreenAutoSelectCertificateForUrls* internal_default_instance() {
+    return reinterpret_cast<const DeviceLoginScreenAutoSelectCertificateForUrls*>(
+               &_DeviceLoginScreenAutoSelectCertificateForUrls_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    85;
+
+  friend void swap(DeviceLoginScreenAutoSelectCertificateForUrls& a, DeviceLoginScreenAutoSelectCertificateForUrls& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceLoginScreenAutoSelectCertificateForUrls* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceLoginScreenAutoSelectCertificateForUrls* New() const final {
+    return CreateMaybeMessage<DeviceLoginScreenAutoSelectCertificateForUrls>(nullptr);
+  }
+
+  DeviceLoginScreenAutoSelectCertificateForUrls* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceLoginScreenAutoSelectCertificateForUrls>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceLoginScreenAutoSelectCertificateForUrls& from);
+  void MergeFrom(const DeviceLoginScreenAutoSelectCertificateForUrls& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceLoginScreenAutoSelectCertificateForUrls* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLoginScreenAutoSelectCertificateRulesFieldNumber = 1,
+  };
+  // repeated string login_screen_auto_select_certificate_rules = 1;
+  int login_screen_auto_select_certificate_rules_size() const;
+  private:
+  int _internal_login_screen_auto_select_certificate_rules_size() const;
+  public:
+  void clear_login_screen_auto_select_certificate_rules();
+  const std::string& login_screen_auto_select_certificate_rules(int index) const;
+  std::string* mutable_login_screen_auto_select_certificate_rules(int index);
+  void set_login_screen_auto_select_certificate_rules(int index, const std::string& value);
+  void set_login_screen_auto_select_certificate_rules(int index, std::string&& value);
+  void set_login_screen_auto_select_certificate_rules(int index, const char* value);
+  void set_login_screen_auto_select_certificate_rules(int index, const char* value, size_t size);
+  std::string* add_login_screen_auto_select_certificate_rules();
+  void add_login_screen_auto_select_certificate_rules(const std::string& value);
+  void add_login_screen_auto_select_certificate_rules(std::string&& value);
+  void add_login_screen_auto_select_certificate_rules(const char* value);
+  void add_login_screen_auto_select_certificate_rules(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& login_screen_auto_select_certificate_rules() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_login_screen_auto_select_certificate_rules();
+  private:
+  const std::string& _internal_login_screen_auto_select_certificate_rules(int index) const;
+  std::string* _internal_add_login_screen_auto_select_certificate_rules();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> login_screen_auto_select_certificate_rules_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UnaffiliatedArcAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UnaffiliatedArcAllowedProto) */ {
+ public:
+  UnaffiliatedArcAllowedProto();
+  virtual ~UnaffiliatedArcAllowedProto();
+
+  UnaffiliatedArcAllowedProto(const UnaffiliatedArcAllowedProto& from);
+  UnaffiliatedArcAllowedProto(UnaffiliatedArcAllowedProto&& from) noexcept
+    : UnaffiliatedArcAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UnaffiliatedArcAllowedProto& operator=(const UnaffiliatedArcAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UnaffiliatedArcAllowedProto& operator=(UnaffiliatedArcAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UnaffiliatedArcAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UnaffiliatedArcAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const UnaffiliatedArcAllowedProto*>(
+               &_UnaffiliatedArcAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    86;
+
+  friend void swap(UnaffiliatedArcAllowedProto& a, UnaffiliatedArcAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UnaffiliatedArcAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UnaffiliatedArcAllowedProto* New() const final {
+    return CreateMaybeMessage<UnaffiliatedArcAllowedProto>(nullptr);
+  }
+
+  UnaffiliatedArcAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UnaffiliatedArcAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UnaffiliatedArcAllowedProto& from);
+  void MergeFrom(const UnaffiliatedArcAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UnaffiliatedArcAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UnaffiliatedArcAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUnaffiliatedArcAllowedFieldNumber = 1,
+  };
+  // optional bool unaffiliated_arc_allowed = 1;
+  bool has_unaffiliated_arc_allowed() const;
+  private:
+  bool _internal_has_unaffiliated_arc_allowed() const;
+  public:
+  void clear_unaffiliated_arc_allowed();
+  bool unaffiliated_arc_allowed() const;
+  void set_unaffiliated_arc_allowed(bool value);
+  private:
+  bool _internal_unaffiliated_arc_allowed() const;
+  void _internal_set_unaffiliated_arc_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UnaffiliatedArcAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool unaffiliated_arc_allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceKerberosEncryptionTypesProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceKerberosEncryptionTypesProto) */ {
+ public:
+  DeviceKerberosEncryptionTypesProto();
+  virtual ~DeviceKerberosEncryptionTypesProto();
+
+  DeviceKerberosEncryptionTypesProto(const DeviceKerberosEncryptionTypesProto& from);
+  DeviceKerberosEncryptionTypesProto(DeviceKerberosEncryptionTypesProto&& from) noexcept
+    : DeviceKerberosEncryptionTypesProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceKerberosEncryptionTypesProto& operator=(const DeviceKerberosEncryptionTypesProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceKerberosEncryptionTypesProto& operator=(DeviceKerberosEncryptionTypesProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceKerberosEncryptionTypesProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceKerberosEncryptionTypesProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceKerberosEncryptionTypesProto*>(
+               &_DeviceKerberosEncryptionTypesProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    87;
+
+  friend void swap(DeviceKerberosEncryptionTypesProto& a, DeviceKerberosEncryptionTypesProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceKerberosEncryptionTypesProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceKerberosEncryptionTypesProto* New() const final {
+    return CreateMaybeMessage<DeviceKerberosEncryptionTypesProto>(nullptr);
+  }
+
+  DeviceKerberosEncryptionTypesProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceKerberosEncryptionTypesProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceKerberosEncryptionTypesProto& from);
+  void MergeFrom(const DeviceKerberosEncryptionTypesProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceKerberosEncryptionTypesProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceKerberosEncryptionTypesProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceKerberosEncryptionTypesProto_Types Types;
+  static constexpr Types ENC_TYPES_ALL =
+    DeviceKerberosEncryptionTypesProto_Types_ENC_TYPES_ALL;
+  static constexpr Types ENC_TYPES_STRONG =
+    DeviceKerberosEncryptionTypesProto_Types_ENC_TYPES_STRONG;
+  static constexpr Types ENC_TYPES_LEGACY =
+    DeviceKerberosEncryptionTypesProto_Types_ENC_TYPES_LEGACY;
+  static inline bool Types_IsValid(int value) {
+    return DeviceKerberosEncryptionTypesProto_Types_IsValid(value);
+  }
+  static constexpr Types Types_MIN =
+    DeviceKerberosEncryptionTypesProto_Types_Types_MIN;
+  static constexpr Types Types_MAX =
+    DeviceKerberosEncryptionTypesProto_Types_Types_MAX;
+  static constexpr int Types_ARRAYSIZE =
+    DeviceKerberosEncryptionTypesProto_Types_Types_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Types_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Types>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Types_Name.");
+    return DeviceKerberosEncryptionTypesProto_Types_Name(enum_t_value);
+  }
+  static inline bool Types_Parse(const std::string& name,
+      Types* value) {
+    return DeviceKerberosEncryptionTypesProto_Types_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTypesFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceKerberosEncryptionTypesProto.Types types = 1 [default = ENC_TYPES_STRONG];
+  bool has_types() const;
+  private:
+  bool _internal_has_types() const;
+  public:
+  void clear_types();
+  ::enterprise_management::DeviceKerberosEncryptionTypesProto_Types types() const;
+  void set_types(::enterprise_management::DeviceKerberosEncryptionTypesProto_Types value);
+  private:
+  ::enterprise_management::DeviceKerberosEncryptionTypesProto_Types _internal_types() const;
+  void _internal_set_types(::enterprise_management::DeviceKerberosEncryptionTypesProto_Types value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceKerberosEncryptionTypesProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int types_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceUserPolicyLoopbackProcessingModeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto) */ {
+ public:
+  DeviceUserPolicyLoopbackProcessingModeProto();
+  virtual ~DeviceUserPolicyLoopbackProcessingModeProto();
+
+  DeviceUserPolicyLoopbackProcessingModeProto(const DeviceUserPolicyLoopbackProcessingModeProto& from);
+  DeviceUserPolicyLoopbackProcessingModeProto(DeviceUserPolicyLoopbackProcessingModeProto&& from) noexcept
+    : DeviceUserPolicyLoopbackProcessingModeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceUserPolicyLoopbackProcessingModeProto& operator=(const DeviceUserPolicyLoopbackProcessingModeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceUserPolicyLoopbackProcessingModeProto& operator=(DeviceUserPolicyLoopbackProcessingModeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceUserPolicyLoopbackProcessingModeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceUserPolicyLoopbackProcessingModeProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceUserPolicyLoopbackProcessingModeProto*>(
+               &_DeviceUserPolicyLoopbackProcessingModeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    88;
+
+  friend void swap(DeviceUserPolicyLoopbackProcessingModeProto& a, DeviceUserPolicyLoopbackProcessingModeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceUserPolicyLoopbackProcessingModeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceUserPolicyLoopbackProcessingModeProto* New() const final {
+    return CreateMaybeMessage<DeviceUserPolicyLoopbackProcessingModeProto>(nullptr);
+  }
+
+  DeviceUserPolicyLoopbackProcessingModeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceUserPolicyLoopbackProcessingModeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceUserPolicyLoopbackProcessingModeProto& from);
+  void MergeFrom(const DeviceUserPolicyLoopbackProcessingModeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceUserPolicyLoopbackProcessingModeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceUserPolicyLoopbackProcessingModeProto_Mode Mode;
+  static constexpr Mode USER_POLICY_MODE_DEFAULT =
+    DeviceUserPolicyLoopbackProcessingModeProto_Mode_USER_POLICY_MODE_DEFAULT;
+  static constexpr Mode USER_POLICY_MODE_MERGE =
+    DeviceUserPolicyLoopbackProcessingModeProto_Mode_USER_POLICY_MODE_MERGE;
+  static constexpr Mode USER_POLICY_MODE_REPLACE =
+    DeviceUserPolicyLoopbackProcessingModeProto_Mode_USER_POLICY_MODE_REPLACE;
+  static inline bool Mode_IsValid(int value) {
+    return DeviceUserPolicyLoopbackProcessingModeProto_Mode_IsValid(value);
+  }
+  static constexpr Mode Mode_MIN =
+    DeviceUserPolicyLoopbackProcessingModeProto_Mode_Mode_MIN;
+  static constexpr Mode Mode_MAX =
+    DeviceUserPolicyLoopbackProcessingModeProto_Mode_Mode_MAX;
+  static constexpr int Mode_ARRAYSIZE =
+    DeviceUserPolicyLoopbackProcessingModeProto_Mode_Mode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Mode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Mode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Mode_Name.");
+    return DeviceUserPolicyLoopbackProcessingModeProto_Mode_Name(enum_t_value);
+  }
+  static inline bool Mode_Parse(const std::string& name,
+      Mode* value) {
+    return DeviceUserPolicyLoopbackProcessingModeProto_Mode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kModeFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto.Mode mode = 1 [default = USER_POLICY_MODE_DEFAULT];
+  bool has_mode() const;
+  private:
+  bool _internal_has_mode() const;
+  public:
+  void clear_mode();
+  ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode mode() const;
+  void set_mode(::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode value);
+  private:
+  ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode _internal_mode() const;
+  void _internal_set_mode(::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int mode_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_DeviceLoginScreenIsolateOriginsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto) */ {
+ public:
+  OBSOLETE_DeviceLoginScreenIsolateOriginsProto();
+  virtual ~OBSOLETE_DeviceLoginScreenIsolateOriginsProto();
+
+  OBSOLETE_DeviceLoginScreenIsolateOriginsProto(const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& from);
+  OBSOLETE_DeviceLoginScreenIsolateOriginsProto(OBSOLETE_DeviceLoginScreenIsolateOriginsProto&& from) noexcept
+    : OBSOLETE_DeviceLoginScreenIsolateOriginsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_DeviceLoginScreenIsolateOriginsProto& operator=(const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_DeviceLoginScreenIsolateOriginsProto& operator=(OBSOLETE_DeviceLoginScreenIsolateOriginsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_DeviceLoginScreenIsolateOriginsProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_DeviceLoginScreenIsolateOriginsProto*>(
+               &_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    89;
+
+  friend void swap(OBSOLETE_DeviceLoginScreenIsolateOriginsProto& a, OBSOLETE_DeviceLoginScreenIsolateOriginsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_DeviceLoginScreenIsolateOriginsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_DeviceLoginScreenIsolateOriginsProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_DeviceLoginScreenIsolateOriginsProto>(nullptr);
+  }
+
+  OBSOLETE_DeviceLoginScreenIsolateOriginsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_DeviceLoginScreenIsolateOriginsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& from);
+  void MergeFrom(const OBSOLETE_DeviceLoginScreenIsolateOriginsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_DeviceLoginScreenIsolateOriginsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETEIsolateOriginsFieldNumber = 1,
+  };
+  // optional string OBSOLETE_isolate_origins = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_isolate_origins() const;
+  private:
+  bool _internal_has_obsolete_isolate_origins() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_isolate_origins();
+  PROTOBUF_DEPRECATED const std::string& obsolete_isolate_origins() const;
+  PROTOBUF_DEPRECATED void set_obsolete_isolate_origins(const std::string& value);
+  PROTOBUF_DEPRECATED void set_obsolete_isolate_origins(std::string&& value);
+  PROTOBUF_DEPRECATED void set_obsolete_isolate_origins(const char* value);
+  PROTOBUF_DEPRECATED void set_obsolete_isolate_origins(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_obsolete_isolate_origins();
+  PROTOBUF_DEPRECATED std::string* release_obsolete_isolate_origins();
+  PROTOBUF_DEPRECATED void set_allocated_obsolete_isolate_origins(std::string* obsolete_isolate_origins);
+  private:
+  const std::string& _internal_obsolete_isolate_origins() const;
+  void _internal_set_obsolete_isolate_origins(const std::string& value);
+  std::string* _internal_mutable_obsolete_isolate_origins();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obsolete_isolate_origins_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OBSOLETE_DeviceLoginScreenSitePerProcessProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto) */ {
+ public:
+  OBSOLETE_DeviceLoginScreenSitePerProcessProto();
+  virtual ~OBSOLETE_DeviceLoginScreenSitePerProcessProto();
+
+  OBSOLETE_DeviceLoginScreenSitePerProcessProto(const OBSOLETE_DeviceLoginScreenSitePerProcessProto& from);
+  OBSOLETE_DeviceLoginScreenSitePerProcessProto(OBSOLETE_DeviceLoginScreenSitePerProcessProto&& from) noexcept
+    : OBSOLETE_DeviceLoginScreenSitePerProcessProto() {
+    *this = ::std::move(from);
+  }
+
+  inline OBSOLETE_DeviceLoginScreenSitePerProcessProto& operator=(const OBSOLETE_DeviceLoginScreenSitePerProcessProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OBSOLETE_DeviceLoginScreenSitePerProcessProto& operator=(OBSOLETE_DeviceLoginScreenSitePerProcessProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OBSOLETE_DeviceLoginScreenSitePerProcessProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OBSOLETE_DeviceLoginScreenSitePerProcessProto* internal_default_instance() {
+    return reinterpret_cast<const OBSOLETE_DeviceLoginScreenSitePerProcessProto*>(
+               &_OBSOLETE_DeviceLoginScreenSitePerProcessProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    90;
+
+  friend void swap(OBSOLETE_DeviceLoginScreenSitePerProcessProto& a, OBSOLETE_DeviceLoginScreenSitePerProcessProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OBSOLETE_DeviceLoginScreenSitePerProcessProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OBSOLETE_DeviceLoginScreenSitePerProcessProto* New() const final {
+    return CreateMaybeMessage<OBSOLETE_DeviceLoginScreenSitePerProcessProto>(nullptr);
+  }
+
+  OBSOLETE_DeviceLoginScreenSitePerProcessProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OBSOLETE_DeviceLoginScreenSitePerProcessProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OBSOLETE_DeviceLoginScreenSitePerProcessProto& from);
+  void MergeFrom(const OBSOLETE_DeviceLoginScreenSitePerProcessProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OBSOLETE_DeviceLoginScreenSitePerProcessProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOBSOLETESitePerProcessFieldNumber = 1,
+  };
+  // optional bool OBSOLETE_site_per_process = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_obsolete_site_per_process() const;
+  private:
+  bool _internal_has_obsolete_site_per_process() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_obsolete_site_per_process();
+  PROTOBUF_DEPRECATED bool obsolete_site_per_process() const;
+  PROTOBUF_DEPRECATED void set_obsolete_site_per_process(bool value);
+  private:
+  bool _internal_obsolete_site_per_process() const;
+  void _internal_set_obsolete_site_per_process(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool obsolete_site_per_process_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class VirtualMachinesAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.VirtualMachinesAllowedProto) */ {
+ public:
+  VirtualMachinesAllowedProto();
+  virtual ~VirtualMachinesAllowedProto();
+
+  VirtualMachinesAllowedProto(const VirtualMachinesAllowedProto& from);
+  VirtualMachinesAllowedProto(VirtualMachinesAllowedProto&& from) noexcept
+    : VirtualMachinesAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline VirtualMachinesAllowedProto& operator=(const VirtualMachinesAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline VirtualMachinesAllowedProto& operator=(VirtualMachinesAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const VirtualMachinesAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const VirtualMachinesAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const VirtualMachinesAllowedProto*>(
+               &_VirtualMachinesAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    91;
+
+  friend void swap(VirtualMachinesAllowedProto& a, VirtualMachinesAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(VirtualMachinesAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline VirtualMachinesAllowedProto* New() const final {
+    return CreateMaybeMessage<VirtualMachinesAllowedProto>(nullptr);
+  }
+
+  VirtualMachinesAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<VirtualMachinesAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const VirtualMachinesAllowedProto& from);
+  void MergeFrom(const VirtualMachinesAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(VirtualMachinesAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.VirtualMachinesAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVirtualMachinesAllowedFieldNumber = 1,
+  };
+  // optional bool virtual_machines_allowed = 1;
+  bool has_virtual_machines_allowed() const;
+  private:
+  bool _internal_has_virtual_machines_allowed() const;
+  public:
+  void clear_virtual_machines_allowed();
+  bool virtual_machines_allowed() const;
+  void set_virtual_machines_allowed(bool value);
+  private:
+  bool _internal_virtual_machines_allowed() const;
+  void _internal_set_virtual_machines_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.VirtualMachinesAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool virtual_machines_allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceMachinePasswordChangeRateProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceMachinePasswordChangeRateProto) */ {
+ public:
+  DeviceMachinePasswordChangeRateProto();
+  virtual ~DeviceMachinePasswordChangeRateProto();
+
+  DeviceMachinePasswordChangeRateProto(const DeviceMachinePasswordChangeRateProto& from);
+  DeviceMachinePasswordChangeRateProto(DeviceMachinePasswordChangeRateProto&& from) noexcept
+    : DeviceMachinePasswordChangeRateProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceMachinePasswordChangeRateProto& operator=(const DeviceMachinePasswordChangeRateProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceMachinePasswordChangeRateProto& operator=(DeviceMachinePasswordChangeRateProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceMachinePasswordChangeRateProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceMachinePasswordChangeRateProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceMachinePasswordChangeRateProto*>(
+               &_DeviceMachinePasswordChangeRateProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    92;
+
+  friend void swap(DeviceMachinePasswordChangeRateProto& a, DeviceMachinePasswordChangeRateProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceMachinePasswordChangeRateProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceMachinePasswordChangeRateProto* New() const final {
+    return CreateMaybeMessage<DeviceMachinePasswordChangeRateProto>(nullptr);
+  }
+
+  DeviceMachinePasswordChangeRateProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceMachinePasswordChangeRateProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceMachinePasswordChangeRateProto& from);
+  void MergeFrom(const DeviceMachinePasswordChangeRateProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceMachinePasswordChangeRateProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceMachinePasswordChangeRateProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRateDaysFieldNumber = 1,
+  };
+  // optional int32 rate_days = 1;
+  bool has_rate_days() const;
+  private:
+  bool _internal_has_rate_days() const;
+  public:
+  void clear_rate_days();
+  ::PROTOBUF_NAMESPACE_ID::int32 rate_days() const;
+  void set_rate_days(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_rate_days() const;
+  void _internal_set_rate_days(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceMachinePasswordChangeRateProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int32 rate_days_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceGpoCacheLifetimeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceGpoCacheLifetimeProto) */ {
+ public:
+  DeviceGpoCacheLifetimeProto();
+  virtual ~DeviceGpoCacheLifetimeProto();
+
+  DeviceGpoCacheLifetimeProto(const DeviceGpoCacheLifetimeProto& from);
+  DeviceGpoCacheLifetimeProto(DeviceGpoCacheLifetimeProto&& from) noexcept
+    : DeviceGpoCacheLifetimeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceGpoCacheLifetimeProto& operator=(const DeviceGpoCacheLifetimeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceGpoCacheLifetimeProto& operator=(DeviceGpoCacheLifetimeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceGpoCacheLifetimeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceGpoCacheLifetimeProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceGpoCacheLifetimeProto*>(
+               &_DeviceGpoCacheLifetimeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    93;
+
+  friend void swap(DeviceGpoCacheLifetimeProto& a, DeviceGpoCacheLifetimeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceGpoCacheLifetimeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceGpoCacheLifetimeProto* New() const final {
+    return CreateMaybeMessage<DeviceGpoCacheLifetimeProto>(nullptr);
+  }
+
+  DeviceGpoCacheLifetimeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceGpoCacheLifetimeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceGpoCacheLifetimeProto& from);
+  void MergeFrom(const DeviceGpoCacheLifetimeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceGpoCacheLifetimeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceGpoCacheLifetimeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLifetimeHoursFieldNumber = 1,
+  };
+  // optional int32 lifetime_hours = 1;
+  bool has_lifetime_hours() const;
+  private:
+  bool _internal_has_lifetime_hours() const;
+  public:
+  void clear_lifetime_hours();
+  ::PROTOBUF_NAMESPACE_ID::int32 lifetime_hours() const;
+  void set_lifetime_hours(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_lifetime_hours() const;
+  void _internal_set_lifetime_hours(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceGpoCacheLifetimeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int32 lifetime_hours_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAuthDataCacheLifetimeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAuthDataCacheLifetimeProto) */ {
+ public:
+  DeviceAuthDataCacheLifetimeProto();
+  virtual ~DeviceAuthDataCacheLifetimeProto();
+
+  DeviceAuthDataCacheLifetimeProto(const DeviceAuthDataCacheLifetimeProto& from);
+  DeviceAuthDataCacheLifetimeProto(DeviceAuthDataCacheLifetimeProto&& from) noexcept
+    : DeviceAuthDataCacheLifetimeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAuthDataCacheLifetimeProto& operator=(const DeviceAuthDataCacheLifetimeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAuthDataCacheLifetimeProto& operator=(DeviceAuthDataCacheLifetimeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAuthDataCacheLifetimeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAuthDataCacheLifetimeProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceAuthDataCacheLifetimeProto*>(
+               &_DeviceAuthDataCacheLifetimeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    94;
+
+  friend void swap(DeviceAuthDataCacheLifetimeProto& a, DeviceAuthDataCacheLifetimeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAuthDataCacheLifetimeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAuthDataCacheLifetimeProto* New() const final {
+    return CreateMaybeMessage<DeviceAuthDataCacheLifetimeProto>(nullptr);
+  }
+
+  DeviceAuthDataCacheLifetimeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAuthDataCacheLifetimeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAuthDataCacheLifetimeProto& from);
+  void MergeFrom(const DeviceAuthDataCacheLifetimeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAuthDataCacheLifetimeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAuthDataCacheLifetimeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLifetimeHoursFieldNumber = 1,
+  };
+  // optional int32 lifetime_hours = 1;
+  bool has_lifetime_hours() const;
+  private:
+  bool _internal_has_lifetime_hours() const;
+  public:
+  void clear_lifetime_hours();
+  ::PROTOBUF_NAMESPACE_ID::int32 lifetime_hours() const;
+  void set_lifetime_hours(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_lifetime_hours() const;
+  void _internal_set_lifetime_hours(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAuthDataCacheLifetimeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int32 lifetime_hours_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SamlLoginAuthenticationTypeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SamlLoginAuthenticationTypeProto) */ {
+ public:
+  SamlLoginAuthenticationTypeProto();
+  virtual ~SamlLoginAuthenticationTypeProto();
+
+  SamlLoginAuthenticationTypeProto(const SamlLoginAuthenticationTypeProto& from);
+  SamlLoginAuthenticationTypeProto(SamlLoginAuthenticationTypeProto&& from) noexcept
+    : SamlLoginAuthenticationTypeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline SamlLoginAuthenticationTypeProto& operator=(const SamlLoginAuthenticationTypeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SamlLoginAuthenticationTypeProto& operator=(SamlLoginAuthenticationTypeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SamlLoginAuthenticationTypeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SamlLoginAuthenticationTypeProto* internal_default_instance() {
+    return reinterpret_cast<const SamlLoginAuthenticationTypeProto*>(
+               &_SamlLoginAuthenticationTypeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    95;
+
+  friend void swap(SamlLoginAuthenticationTypeProto& a, SamlLoginAuthenticationTypeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SamlLoginAuthenticationTypeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SamlLoginAuthenticationTypeProto* New() const final {
+    return CreateMaybeMessage<SamlLoginAuthenticationTypeProto>(nullptr);
+  }
+
+  SamlLoginAuthenticationTypeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SamlLoginAuthenticationTypeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SamlLoginAuthenticationTypeProto& from);
+  void MergeFrom(const SamlLoginAuthenticationTypeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SamlLoginAuthenticationTypeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SamlLoginAuthenticationTypeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SamlLoginAuthenticationTypeProto_Type Type;
+  static constexpr Type TYPE_DEFAULT =
+    SamlLoginAuthenticationTypeProto_Type_TYPE_DEFAULT;
+  static constexpr Type TYPE_CLIENT_CERTIFICATE =
+    SamlLoginAuthenticationTypeProto_Type_TYPE_CLIENT_CERTIFICATE;
+  static inline bool Type_IsValid(int value) {
+    return SamlLoginAuthenticationTypeProto_Type_IsValid(value);
+  }
+  static constexpr Type Type_MIN =
+    SamlLoginAuthenticationTypeProto_Type_Type_MIN;
+  static constexpr Type Type_MAX =
+    SamlLoginAuthenticationTypeProto_Type_Type_MAX;
+  static constexpr int Type_ARRAYSIZE =
+    SamlLoginAuthenticationTypeProto_Type_Type_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Type_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Type>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Type_Name.");
+    return SamlLoginAuthenticationTypeProto_Type_Name(enum_t_value);
+  }
+  static inline bool Type_Parse(const std::string& name,
+      Type* value) {
+    return SamlLoginAuthenticationTypeProto_Type_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSamlLoginAuthenticationTypeFieldNumber = 1,
+  };
+  // optional .enterprise_management.SamlLoginAuthenticationTypeProto.Type saml_login_authentication_type = 1 [default = TYPE_DEFAULT];
+  bool has_saml_login_authentication_type() const;
+  private:
+  bool _internal_has_saml_login_authentication_type() const;
+  public:
+  void clear_saml_login_authentication_type();
+  ::enterprise_management::SamlLoginAuthenticationTypeProto_Type saml_login_authentication_type() const;
+  void set_saml_login_authentication_type(::enterprise_management::SamlLoginAuthenticationTypeProto_Type value);
+  private:
+  ::enterprise_management::SamlLoginAuthenticationTypeProto_Type _internal_saml_login_authentication_type() const;
+  void _internal_set_saml_login_authentication_type(::enterprise_management::SamlLoginAuthenticationTypeProto_Type value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SamlLoginAuthenticationTypeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int saml_login_authentication_type_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceUnaffiliatedCrostiniAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto) */ {
+ public:
+  DeviceUnaffiliatedCrostiniAllowedProto();
+  virtual ~DeviceUnaffiliatedCrostiniAllowedProto();
+
+  DeviceUnaffiliatedCrostiniAllowedProto(const DeviceUnaffiliatedCrostiniAllowedProto& from);
+  DeviceUnaffiliatedCrostiniAllowedProto(DeviceUnaffiliatedCrostiniAllowedProto&& from) noexcept
+    : DeviceUnaffiliatedCrostiniAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceUnaffiliatedCrostiniAllowedProto& operator=(const DeviceUnaffiliatedCrostiniAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceUnaffiliatedCrostiniAllowedProto& operator=(DeviceUnaffiliatedCrostiniAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceUnaffiliatedCrostiniAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceUnaffiliatedCrostiniAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceUnaffiliatedCrostiniAllowedProto*>(
+               &_DeviceUnaffiliatedCrostiniAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    96;
+
+  friend void swap(DeviceUnaffiliatedCrostiniAllowedProto& a, DeviceUnaffiliatedCrostiniAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceUnaffiliatedCrostiniAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceUnaffiliatedCrostiniAllowedProto* New() const final {
+    return CreateMaybeMessage<DeviceUnaffiliatedCrostiniAllowedProto>(nullptr);
+  }
+
+  DeviceUnaffiliatedCrostiniAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceUnaffiliatedCrostiniAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceUnaffiliatedCrostiniAllowedProto& from);
+  void MergeFrom(const DeviceUnaffiliatedCrostiniAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceUnaffiliatedCrostiniAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceUnaffiliatedCrostiniAllowedFieldNumber = 1,
+  };
+  // optional bool device_unaffiliated_crostini_allowed = 1;
+  bool has_device_unaffiliated_crostini_allowed() const;
+  private:
+  bool _internal_has_device_unaffiliated_crostini_allowed() const;
+  public:
+  void clear_device_unaffiliated_crostini_allowed();
+  bool device_unaffiliated_crostini_allowed() const;
+  void set_device_unaffiliated_crostini_allowed(bool value);
+  private:
+  bool _internal_device_unaffiliated_crostini_allowed() const;
+  void _internal_set_device_unaffiliated_crostini_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool device_unaffiliated_crostini_allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PluginVmAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PluginVmAllowedProto) */ {
+ public:
+  PluginVmAllowedProto();
+  virtual ~PluginVmAllowedProto();
+
+  PluginVmAllowedProto(const PluginVmAllowedProto& from);
+  PluginVmAllowedProto(PluginVmAllowedProto&& from) noexcept
+    : PluginVmAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline PluginVmAllowedProto& operator=(const PluginVmAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PluginVmAllowedProto& operator=(PluginVmAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PluginVmAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PluginVmAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const PluginVmAllowedProto*>(
+               &_PluginVmAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    97;
+
+  friend void swap(PluginVmAllowedProto& a, PluginVmAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PluginVmAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PluginVmAllowedProto* New() const final {
+    return CreateMaybeMessage<PluginVmAllowedProto>(nullptr);
+  }
+
+  PluginVmAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PluginVmAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PluginVmAllowedProto& from);
+  void MergeFrom(const PluginVmAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PluginVmAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PluginVmAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPluginVmAllowedFieldNumber = 1,
+  };
+  // optional bool plugin_vm_allowed = 1;
+  bool has_plugin_vm_allowed() const;
+  private:
+  bool _internal_has_plugin_vm_allowed() const;
+  public:
+  void clear_plugin_vm_allowed();
+  bool plugin_vm_allowed() const;
+  void set_plugin_vm_allowed(bool value);
+  private:
+  bool _internal_plugin_vm_allowed() const;
+  void _internal_set_plugin_vm_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PluginVmAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool plugin_vm_allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PluginVmLicenseKeyProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PluginVmLicenseKeyProto) */ {
+ public:
+  PluginVmLicenseKeyProto();
+  virtual ~PluginVmLicenseKeyProto();
+
+  PluginVmLicenseKeyProto(const PluginVmLicenseKeyProto& from);
+  PluginVmLicenseKeyProto(PluginVmLicenseKeyProto&& from) noexcept
+    : PluginVmLicenseKeyProto() {
+    *this = ::std::move(from);
+  }
+
+  inline PluginVmLicenseKeyProto& operator=(const PluginVmLicenseKeyProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PluginVmLicenseKeyProto& operator=(PluginVmLicenseKeyProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PluginVmLicenseKeyProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PluginVmLicenseKeyProto* internal_default_instance() {
+    return reinterpret_cast<const PluginVmLicenseKeyProto*>(
+               &_PluginVmLicenseKeyProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    98;
+
+  friend void swap(PluginVmLicenseKeyProto& a, PluginVmLicenseKeyProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PluginVmLicenseKeyProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PluginVmLicenseKeyProto* New() const final {
+    return CreateMaybeMessage<PluginVmLicenseKeyProto>(nullptr);
+  }
+
+  PluginVmLicenseKeyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PluginVmLicenseKeyProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PluginVmLicenseKeyProto& from);
+  void MergeFrom(const PluginVmLicenseKeyProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PluginVmLicenseKeyProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PluginVmLicenseKeyProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPluginVmLicenseKeyFieldNumber = 1,
+  };
+  // optional string plugin_vm_license_key = 1;
+  bool has_plugin_vm_license_key() const;
+  private:
+  bool _internal_has_plugin_vm_license_key() const;
+  public:
+  void clear_plugin_vm_license_key();
+  const std::string& plugin_vm_license_key() const;
+  void set_plugin_vm_license_key(const std::string& value);
+  void set_plugin_vm_license_key(std::string&& value);
+  void set_plugin_vm_license_key(const char* value);
+  void set_plugin_vm_license_key(const char* value, size_t size);
+  std::string* mutable_plugin_vm_license_key();
+  std::string* release_plugin_vm_license_key();
+  void set_allocated_plugin_vm_license_key(std::string* plugin_vm_license_key);
+  private:
+  const std::string& _internal_plugin_vm_license_key() const;
+  void _internal_set_plugin_vm_license_key(const std::string& value);
+  std::string* _internal_mutable_plugin_vm_license_key();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PluginVmLicenseKeyProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr plugin_vm_license_key_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceRebootOnUserSignoutProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceRebootOnUserSignoutProto) */ {
+ public:
+  DeviceRebootOnUserSignoutProto();
+  virtual ~DeviceRebootOnUserSignoutProto();
+
+  DeviceRebootOnUserSignoutProto(const DeviceRebootOnUserSignoutProto& from);
+  DeviceRebootOnUserSignoutProto(DeviceRebootOnUserSignoutProto&& from) noexcept
+    : DeviceRebootOnUserSignoutProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceRebootOnUserSignoutProto& operator=(const DeviceRebootOnUserSignoutProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceRebootOnUserSignoutProto& operator=(DeviceRebootOnUserSignoutProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceRebootOnUserSignoutProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceRebootOnUserSignoutProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceRebootOnUserSignoutProto*>(
+               &_DeviceRebootOnUserSignoutProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    99;
+
+  friend void swap(DeviceRebootOnUserSignoutProto& a, DeviceRebootOnUserSignoutProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceRebootOnUserSignoutProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceRebootOnUserSignoutProto* New() const final {
+    return CreateMaybeMessage<DeviceRebootOnUserSignoutProto>(nullptr);
+  }
+
+  DeviceRebootOnUserSignoutProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceRebootOnUserSignoutProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceRebootOnUserSignoutProto& from);
+  void MergeFrom(const DeviceRebootOnUserSignoutProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceRebootOnUserSignoutProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceRebootOnUserSignoutProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceRebootOnUserSignoutProto_RebootOnSignoutMode RebootOnSignoutMode;
+  static constexpr RebootOnSignoutMode REBOOT_ON_SIGNOUT_MODE_UNSPECIFIED =
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_REBOOT_ON_SIGNOUT_MODE_UNSPECIFIED;
+  static constexpr RebootOnSignoutMode NEVER =
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_NEVER;
+  static constexpr RebootOnSignoutMode ARC_SESSION =
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_ARC_SESSION;
+  static constexpr RebootOnSignoutMode ALWAYS =
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_ALWAYS;
+  static constexpr RebootOnSignoutMode VM_STARTED_OR_ARC_SESSION =
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_VM_STARTED_OR_ARC_SESSION;
+  static inline bool RebootOnSignoutMode_IsValid(int value) {
+    return DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_IsValid(value);
+  }
+  static constexpr RebootOnSignoutMode RebootOnSignoutMode_MIN =
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_RebootOnSignoutMode_MIN;
+  static constexpr RebootOnSignoutMode RebootOnSignoutMode_MAX =
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_RebootOnSignoutMode_MAX;
+  static constexpr int RebootOnSignoutMode_ARRAYSIZE =
+    DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_RebootOnSignoutMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& RebootOnSignoutMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, RebootOnSignoutMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function RebootOnSignoutMode_Name.");
+    return DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Name(enum_t_value);
+  }
+  static inline bool RebootOnSignoutMode_Parse(const std::string& name,
+      RebootOnSignoutMode* value) {
+    return DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRebootOnSignoutModeFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceRebootOnUserSignoutProto.RebootOnSignoutMode reboot_on_signout_mode = 1 [default = NEVER];
+  bool has_reboot_on_signout_mode() const;
+  private:
+  bool _internal_has_reboot_on_signout_mode() const;
+  public:
+  void clear_reboot_on_signout_mode();
+  ::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode reboot_on_signout_mode() const;
+  void set_reboot_on_signout_mode(::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode value);
+  private:
+  ::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode _internal_reboot_on_signout_mode() const;
+  void _internal_set_reboot_on_signout_mode(::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceRebootOnUserSignoutProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int reboot_on_signout_mode_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceWilcoDtcAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceWilcoDtcAllowedProto) */ {
+ public:
+  DeviceWilcoDtcAllowedProto();
+  virtual ~DeviceWilcoDtcAllowedProto();
+
+  DeviceWilcoDtcAllowedProto(const DeviceWilcoDtcAllowedProto& from);
+  DeviceWilcoDtcAllowedProto(DeviceWilcoDtcAllowedProto&& from) noexcept
+    : DeviceWilcoDtcAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceWilcoDtcAllowedProto& operator=(const DeviceWilcoDtcAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceWilcoDtcAllowedProto& operator=(DeviceWilcoDtcAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceWilcoDtcAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceWilcoDtcAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceWilcoDtcAllowedProto*>(
+               &_DeviceWilcoDtcAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    100;
+
+  friend void swap(DeviceWilcoDtcAllowedProto& a, DeviceWilcoDtcAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceWilcoDtcAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceWilcoDtcAllowedProto* New() const final {
+    return CreateMaybeMessage<DeviceWilcoDtcAllowedProto>(nullptr);
+  }
+
+  DeviceWilcoDtcAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceWilcoDtcAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceWilcoDtcAllowedProto& from);
+  void MergeFrom(const DeviceWilcoDtcAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceWilcoDtcAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceWilcoDtcAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceWilcoDtcAllowedFieldNumber = 1,
+  };
+  // optional bool device_wilco_dtc_allowed = 1;
+  bool has_device_wilco_dtc_allowed() const;
+  private:
+  bool _internal_has_device_wilco_dtc_allowed() const;
+  public:
+  void clear_device_wilco_dtc_allowed();
+  bool device_wilco_dtc_allowed() const;
+  void set_device_wilco_dtc_allowed(bool value);
+  private:
+  bool _internal_device_wilco_dtc_allowed() const;
+  void _internal_set_device_wilco_dtc_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceWilcoDtcAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool device_wilco_dtc_allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceWilcoDtcConfigurationProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceWilcoDtcConfigurationProto) */ {
+ public:
+  DeviceWilcoDtcConfigurationProto();
+  virtual ~DeviceWilcoDtcConfigurationProto();
+
+  DeviceWilcoDtcConfigurationProto(const DeviceWilcoDtcConfigurationProto& from);
+  DeviceWilcoDtcConfigurationProto(DeviceWilcoDtcConfigurationProto&& from) noexcept
+    : DeviceWilcoDtcConfigurationProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceWilcoDtcConfigurationProto& operator=(const DeviceWilcoDtcConfigurationProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceWilcoDtcConfigurationProto& operator=(DeviceWilcoDtcConfigurationProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceWilcoDtcConfigurationProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceWilcoDtcConfigurationProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceWilcoDtcConfigurationProto*>(
+               &_DeviceWilcoDtcConfigurationProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    101;
+
+  friend void swap(DeviceWilcoDtcConfigurationProto& a, DeviceWilcoDtcConfigurationProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceWilcoDtcConfigurationProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceWilcoDtcConfigurationProto* New() const final {
+    return CreateMaybeMessage<DeviceWilcoDtcConfigurationProto>(nullptr);
+  }
+
+  DeviceWilcoDtcConfigurationProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceWilcoDtcConfigurationProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceWilcoDtcConfigurationProto& from);
+  void MergeFrom(const DeviceWilcoDtcConfigurationProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceWilcoDtcConfigurationProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceWilcoDtcConfigurationProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceWilcoDtcConfigurationFieldNumber = 1,
+  };
+  // optional string device_wilco_dtc_configuration = 1;
+  bool has_device_wilco_dtc_configuration() const;
+  private:
+  bool _internal_has_device_wilco_dtc_configuration() const;
+  public:
+  void clear_device_wilco_dtc_configuration();
+  const std::string& device_wilco_dtc_configuration() const;
+  void set_device_wilco_dtc_configuration(const std::string& value);
+  void set_device_wilco_dtc_configuration(std::string&& value);
+  void set_device_wilco_dtc_configuration(const char* value);
+  void set_device_wilco_dtc_configuration(const char* value, size_t size);
+  std::string* mutable_device_wilco_dtc_configuration();
+  std::string* release_device_wilco_dtc_configuration();
+  void set_allocated_device_wilco_dtc_configuration(std::string* device_wilco_dtc_configuration);
+  private:
+  const std::string& _internal_device_wilco_dtc_configuration() const;
+  void _internal_set_device_wilco_dtc_configuration(const std::string& value);
+  std::string* _internal_mutable_device_wilco_dtc_configuration();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceWilcoDtcConfigurationProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_wilco_dtc_configuration_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePowerPeakShiftProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePowerPeakShiftProto) */ {
+ public:
+  DevicePowerPeakShiftProto();
+  virtual ~DevicePowerPeakShiftProto();
+
+  DevicePowerPeakShiftProto(const DevicePowerPeakShiftProto& from);
+  DevicePowerPeakShiftProto(DevicePowerPeakShiftProto&& from) noexcept
+    : DevicePowerPeakShiftProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePowerPeakShiftProto& operator=(const DevicePowerPeakShiftProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePowerPeakShiftProto& operator=(DevicePowerPeakShiftProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePowerPeakShiftProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePowerPeakShiftProto* internal_default_instance() {
+    return reinterpret_cast<const DevicePowerPeakShiftProto*>(
+               &_DevicePowerPeakShiftProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    102;
+
+  friend void swap(DevicePowerPeakShiftProto& a, DevicePowerPeakShiftProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePowerPeakShiftProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePowerPeakShiftProto* New() const final {
+    return CreateMaybeMessage<DevicePowerPeakShiftProto>(nullptr);
+  }
+
+  DevicePowerPeakShiftProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePowerPeakShiftProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePowerPeakShiftProto& from);
+  void MergeFrom(const DevicePowerPeakShiftProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePowerPeakShiftProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePowerPeakShiftProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDayConfigsFieldNumber = 3,
+    kEnabledFieldNumber = 1,
+    kBatteryThresholdFieldNumber = 2,
+  };
+  // optional string day_configs = 3;
+  bool has_day_configs() const;
+  private:
+  bool _internal_has_day_configs() const;
+  public:
+  void clear_day_configs();
+  const std::string& day_configs() const;
+  void set_day_configs(const std::string& value);
+  void set_day_configs(std::string&& value);
+  void set_day_configs(const char* value);
+  void set_day_configs(const char* value, size_t size);
+  std::string* mutable_day_configs();
+  std::string* release_day_configs();
+  void set_allocated_day_configs(std::string* day_configs);
+  private:
+  const std::string& _internal_day_configs() const;
+  void _internal_set_day_configs(const std::string& value);
+  std::string* _internal_mutable_day_configs();
+  public:
+
+  // optional bool enabled = 1;
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // optional int32 battery_threshold = 2;
+  bool has_battery_threshold() const;
+  private:
+  bool _internal_has_battery_threshold() const;
+  public:
+  void clear_battery_threshold();
+  ::PROTOBUF_NAMESPACE_ID::int32 battery_threshold() const;
+  void set_battery_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_battery_threshold() const;
+  void _internal_set_battery_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePowerPeakShiftProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr day_configs_;
+  bool enabled_;
+  ::PROTOBUF_NAMESPACE_ID::int32 battery_threshold_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceBootOnAcProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceBootOnAcProto) */ {
+ public:
+  DeviceBootOnAcProto();
+  virtual ~DeviceBootOnAcProto();
+
+  DeviceBootOnAcProto(const DeviceBootOnAcProto& from);
+  DeviceBootOnAcProto(DeviceBootOnAcProto&& from) noexcept
+    : DeviceBootOnAcProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceBootOnAcProto& operator=(const DeviceBootOnAcProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceBootOnAcProto& operator=(DeviceBootOnAcProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceBootOnAcProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceBootOnAcProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceBootOnAcProto*>(
+               &_DeviceBootOnAcProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    103;
+
+  friend void swap(DeviceBootOnAcProto& a, DeviceBootOnAcProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceBootOnAcProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceBootOnAcProto* New() const final {
+    return CreateMaybeMessage<DeviceBootOnAcProto>(nullptr);
+  }
+
+  DeviceBootOnAcProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceBootOnAcProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceBootOnAcProto& from);
+  void MergeFrom(const DeviceBootOnAcProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceBootOnAcProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceBootOnAcProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1;
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceBootOnAcProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceDockMacAddressSourceProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceDockMacAddressSourceProto) */ {
+ public:
+  DeviceDockMacAddressSourceProto();
+  virtual ~DeviceDockMacAddressSourceProto();
+
+  DeviceDockMacAddressSourceProto(const DeviceDockMacAddressSourceProto& from);
+  DeviceDockMacAddressSourceProto(DeviceDockMacAddressSourceProto&& from) noexcept
+    : DeviceDockMacAddressSourceProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceDockMacAddressSourceProto& operator=(const DeviceDockMacAddressSourceProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceDockMacAddressSourceProto& operator=(DeviceDockMacAddressSourceProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceDockMacAddressSourceProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceDockMacAddressSourceProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceDockMacAddressSourceProto*>(
+               &_DeviceDockMacAddressSourceProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    104;
+
+  friend void swap(DeviceDockMacAddressSourceProto& a, DeviceDockMacAddressSourceProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceDockMacAddressSourceProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceDockMacAddressSourceProto* New() const final {
+    return CreateMaybeMessage<DeviceDockMacAddressSourceProto>(nullptr);
+  }
+
+  DeviceDockMacAddressSourceProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceDockMacAddressSourceProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceDockMacAddressSourceProto& from);
+  void MergeFrom(const DeviceDockMacAddressSourceProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceDockMacAddressSourceProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceDockMacAddressSourceProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceDockMacAddressSourceProto_Source Source;
+  static constexpr Source SOURCE_UNSPECIFIED =
+    DeviceDockMacAddressSourceProto_Source_SOURCE_UNSPECIFIED;
+  static constexpr Source DEVICE_DOCK_MAC_ADDRESS =
+    DeviceDockMacAddressSourceProto_Source_DEVICE_DOCK_MAC_ADDRESS;
+  static constexpr Source DEVICE_NIC_MAC_ADDRESS =
+    DeviceDockMacAddressSourceProto_Source_DEVICE_NIC_MAC_ADDRESS;
+  static constexpr Source DOCK_NIC_MAC_ADDRESS =
+    DeviceDockMacAddressSourceProto_Source_DOCK_NIC_MAC_ADDRESS;
+  static inline bool Source_IsValid(int value) {
+    return DeviceDockMacAddressSourceProto_Source_IsValid(value);
+  }
+  static constexpr Source Source_MIN =
+    DeviceDockMacAddressSourceProto_Source_Source_MIN;
+  static constexpr Source Source_MAX =
+    DeviceDockMacAddressSourceProto_Source_Source_MAX;
+  static constexpr int Source_ARRAYSIZE =
+    DeviceDockMacAddressSourceProto_Source_Source_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Source_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Source>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Source_Name.");
+    return DeviceDockMacAddressSourceProto_Source_Name(enum_t_value);
+  }
+  static inline bool Source_Parse(const std::string& name,
+      Source* value) {
+    return DeviceDockMacAddressSourceProto_Source_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSourceFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceDockMacAddressSourceProto.Source source = 1;
+  bool has_source() const;
+  private:
+  bool _internal_has_source() const;
+  public:
+  void clear_source();
+  ::enterprise_management::DeviceDockMacAddressSourceProto_Source source() const;
+  void set_source(::enterprise_management::DeviceDockMacAddressSourceProto_Source value);
+  private:
+  ::enterprise_management::DeviceDockMacAddressSourceProto_Source _internal_source() const;
+  void _internal_set_source(::enterprise_management::DeviceDockMacAddressSourceProto_Source value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceDockMacAddressSourceProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int source_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAdvancedBatteryChargeModeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAdvancedBatteryChargeModeProto) */ {
+ public:
+  DeviceAdvancedBatteryChargeModeProto();
+  virtual ~DeviceAdvancedBatteryChargeModeProto();
+
+  DeviceAdvancedBatteryChargeModeProto(const DeviceAdvancedBatteryChargeModeProto& from);
+  DeviceAdvancedBatteryChargeModeProto(DeviceAdvancedBatteryChargeModeProto&& from) noexcept
+    : DeviceAdvancedBatteryChargeModeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAdvancedBatteryChargeModeProto& operator=(const DeviceAdvancedBatteryChargeModeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAdvancedBatteryChargeModeProto& operator=(DeviceAdvancedBatteryChargeModeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAdvancedBatteryChargeModeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAdvancedBatteryChargeModeProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceAdvancedBatteryChargeModeProto*>(
+               &_DeviceAdvancedBatteryChargeModeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    105;
+
+  friend void swap(DeviceAdvancedBatteryChargeModeProto& a, DeviceAdvancedBatteryChargeModeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAdvancedBatteryChargeModeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAdvancedBatteryChargeModeProto* New() const final {
+    return CreateMaybeMessage<DeviceAdvancedBatteryChargeModeProto>(nullptr);
+  }
+
+  DeviceAdvancedBatteryChargeModeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAdvancedBatteryChargeModeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAdvancedBatteryChargeModeProto& from);
+  void MergeFrom(const DeviceAdvancedBatteryChargeModeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAdvancedBatteryChargeModeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAdvancedBatteryChargeModeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDayConfigsFieldNumber = 2,
+    kEnabledFieldNumber = 1,
+  };
+  // optional string day_configs = 2;
+  bool has_day_configs() const;
+  private:
+  bool _internal_has_day_configs() const;
+  public:
+  void clear_day_configs();
+  const std::string& day_configs() const;
+  void set_day_configs(const std::string& value);
+  void set_day_configs(std::string&& value);
+  void set_day_configs(const char* value);
+  void set_day_configs(const char* value, size_t size);
+  std::string* mutable_day_configs();
+  std::string* release_day_configs();
+  void set_allocated_day_configs(std::string* day_configs);
+  private:
+  const std::string& _internal_day_configs() const;
+  void _internal_set_day_configs(const std::string& value);
+  std::string* _internal_mutable_day_configs();
+  public:
+
+  // optional bool enabled = 1;
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAdvancedBatteryChargeModeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr day_configs_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceBatteryChargeModeProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceBatteryChargeModeProto) */ {
+ public:
+  DeviceBatteryChargeModeProto();
+  virtual ~DeviceBatteryChargeModeProto();
+
+  DeviceBatteryChargeModeProto(const DeviceBatteryChargeModeProto& from);
+  DeviceBatteryChargeModeProto(DeviceBatteryChargeModeProto&& from) noexcept
+    : DeviceBatteryChargeModeProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceBatteryChargeModeProto& operator=(const DeviceBatteryChargeModeProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceBatteryChargeModeProto& operator=(DeviceBatteryChargeModeProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceBatteryChargeModeProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceBatteryChargeModeProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceBatteryChargeModeProto*>(
+               &_DeviceBatteryChargeModeProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    106;
+
+  friend void swap(DeviceBatteryChargeModeProto& a, DeviceBatteryChargeModeProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceBatteryChargeModeProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceBatteryChargeModeProto* New() const final {
+    return CreateMaybeMessage<DeviceBatteryChargeModeProto>(nullptr);
+  }
+
+  DeviceBatteryChargeModeProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceBatteryChargeModeProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceBatteryChargeModeProto& from);
+  void MergeFrom(const DeviceBatteryChargeModeProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceBatteryChargeModeProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceBatteryChargeModeProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceBatteryChargeModeProto_BatteryChargeMode BatteryChargeMode;
+  static constexpr BatteryChargeMode MODE_UNSPECIFIED =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_MODE_UNSPECIFIED;
+  static constexpr BatteryChargeMode STANDARD =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_STANDARD;
+  static constexpr BatteryChargeMode EXPRESS_CHARGE =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_EXPRESS_CHARGE;
+  static constexpr BatteryChargeMode PRIMARILY_AC_USE =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_PRIMARILY_AC_USE;
+  static constexpr BatteryChargeMode ADAPTIVE =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_ADAPTIVE;
+  static constexpr BatteryChargeMode CUSTOM =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_CUSTOM;
+  static inline bool BatteryChargeMode_IsValid(int value) {
+    return DeviceBatteryChargeModeProto_BatteryChargeMode_IsValid(value);
+  }
+  static constexpr BatteryChargeMode BatteryChargeMode_MIN =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_BatteryChargeMode_MIN;
+  static constexpr BatteryChargeMode BatteryChargeMode_MAX =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_BatteryChargeMode_MAX;
+  static constexpr int BatteryChargeMode_ARRAYSIZE =
+    DeviceBatteryChargeModeProto_BatteryChargeMode_BatteryChargeMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& BatteryChargeMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, BatteryChargeMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function BatteryChargeMode_Name.");
+    return DeviceBatteryChargeModeProto_BatteryChargeMode_Name(enum_t_value);
+  }
+  static inline bool BatteryChargeMode_Parse(const std::string& name,
+      BatteryChargeMode* value) {
+    return DeviceBatteryChargeModeProto_BatteryChargeMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBatteryChargeModeFieldNumber = 1,
+    kCustomChargeStartFieldNumber = 2,
+    kCustomChargeStopFieldNumber = 3,
+  };
+  // optional .enterprise_management.DeviceBatteryChargeModeProto.BatteryChargeMode battery_charge_mode = 1;
+  bool has_battery_charge_mode() const;
+  private:
+  bool _internal_has_battery_charge_mode() const;
+  public:
+  void clear_battery_charge_mode();
+  ::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode battery_charge_mode() const;
+  void set_battery_charge_mode(::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode value);
+  private:
+  ::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode _internal_battery_charge_mode() const;
+  void _internal_set_battery_charge_mode(::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode value);
+  public:
+
+  // optional int32 custom_charge_start = 2;
+  bool has_custom_charge_start() const;
+  private:
+  bool _internal_has_custom_charge_start() const;
+  public:
+  void clear_custom_charge_start();
+  ::PROTOBUF_NAMESPACE_ID::int32 custom_charge_start() const;
+  void set_custom_charge_start(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_custom_charge_start() const;
+  void _internal_set_custom_charge_start(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 custom_charge_stop = 3;
+  bool has_custom_charge_stop() const;
+  private:
+  bool _internal_has_custom_charge_stop() const;
+  public:
+  void clear_custom_charge_stop();
+  ::PROTOBUF_NAMESPACE_ID::int32 custom_charge_stop() const;
+  void set_custom_charge_stop(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_custom_charge_stop() const;
+  void _internal_set_custom_charge_stop(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceBatteryChargeModeProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int battery_charge_mode_;
+  ::PROTOBUF_NAMESPACE_ID::int32 custom_charge_start_;
+  ::PROTOBUF_NAMESPACE_ID::int32 custom_charge_stop_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceUsbPowerShareProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceUsbPowerShareProto) */ {
+ public:
+  DeviceUsbPowerShareProto();
+  virtual ~DeviceUsbPowerShareProto();
+
+  DeviceUsbPowerShareProto(const DeviceUsbPowerShareProto& from);
+  DeviceUsbPowerShareProto(DeviceUsbPowerShareProto&& from) noexcept
+    : DeviceUsbPowerShareProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceUsbPowerShareProto& operator=(const DeviceUsbPowerShareProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceUsbPowerShareProto& operator=(DeviceUsbPowerShareProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceUsbPowerShareProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceUsbPowerShareProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceUsbPowerShareProto*>(
+               &_DeviceUsbPowerShareProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    107;
+
+  friend void swap(DeviceUsbPowerShareProto& a, DeviceUsbPowerShareProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceUsbPowerShareProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceUsbPowerShareProto* New() const final {
+    return CreateMaybeMessage<DeviceUsbPowerShareProto>(nullptr);
+  }
+
+  DeviceUsbPowerShareProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceUsbPowerShareProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceUsbPowerShareProto& from);
+  void MergeFrom(const DeviceUsbPowerShareProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceUsbPowerShareProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceUsbPowerShareProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1;
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceUsbPowerShareProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceScheduledUpdateCheckProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceScheduledUpdateCheckProto) */ {
+ public:
+  DeviceScheduledUpdateCheckProto();
+  virtual ~DeviceScheduledUpdateCheckProto();
+
+  DeviceScheduledUpdateCheckProto(const DeviceScheduledUpdateCheckProto& from);
+  DeviceScheduledUpdateCheckProto(DeviceScheduledUpdateCheckProto&& from) noexcept
+    : DeviceScheduledUpdateCheckProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceScheduledUpdateCheckProto& operator=(const DeviceScheduledUpdateCheckProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceScheduledUpdateCheckProto& operator=(DeviceScheduledUpdateCheckProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceScheduledUpdateCheckProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceScheduledUpdateCheckProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceScheduledUpdateCheckProto*>(
+               &_DeviceScheduledUpdateCheckProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    108;
+
+  friend void swap(DeviceScheduledUpdateCheckProto& a, DeviceScheduledUpdateCheckProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceScheduledUpdateCheckProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceScheduledUpdateCheckProto* New() const final {
+    return CreateMaybeMessage<DeviceScheduledUpdateCheckProto>(nullptr);
+  }
+
+  DeviceScheduledUpdateCheckProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceScheduledUpdateCheckProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceScheduledUpdateCheckProto& from);
+  void MergeFrom(const DeviceScheduledUpdateCheckProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceScheduledUpdateCheckProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceScheduledUpdateCheckProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceScheduledUpdateCheckSettingsFieldNumber = 1,
+  };
+  // optional string device_scheduled_update_check_settings = 1;
+  bool has_device_scheduled_update_check_settings() const;
+  private:
+  bool _internal_has_device_scheduled_update_check_settings() const;
+  public:
+  void clear_device_scheduled_update_check_settings();
+  const std::string& device_scheduled_update_check_settings() const;
+  void set_device_scheduled_update_check_settings(const std::string& value);
+  void set_device_scheduled_update_check_settings(std::string&& value);
+  void set_device_scheduled_update_check_settings(const char* value);
+  void set_device_scheduled_update_check_settings(const char* value, size_t size);
+  std::string* mutable_device_scheduled_update_check_settings();
+  std::string* release_device_scheduled_update_check_settings();
+  void set_allocated_device_scheduled_update_check_settings(std::string* device_scheduled_update_check_settings);
+  private:
+  const std::string& _internal_device_scheduled_update_check_settings() const;
+  void _internal_set_device_scheduled_update_check_settings(const std::string& value);
+  std::string* _internal_mutable_device_scheduled_update_check_settings();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceScheduledUpdateCheckProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_scheduled_update_check_settings_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePowerwashAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePowerwashAllowedProto) */ {
+ public:
+  DevicePowerwashAllowedProto();
+  virtual ~DevicePowerwashAllowedProto();
+
+  DevicePowerwashAllowedProto(const DevicePowerwashAllowedProto& from);
+  DevicePowerwashAllowedProto(DevicePowerwashAllowedProto&& from) noexcept
+    : DevicePowerwashAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePowerwashAllowedProto& operator=(const DevicePowerwashAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePowerwashAllowedProto& operator=(DevicePowerwashAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePowerwashAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePowerwashAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const DevicePowerwashAllowedProto*>(
+               &_DevicePowerwashAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    109;
+
+  friend void swap(DevicePowerwashAllowedProto& a, DevicePowerwashAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePowerwashAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePowerwashAllowedProto* New() const final {
+    return CreateMaybeMessage<DevicePowerwashAllowedProto>(nullptr);
+  }
+
+  DevicePowerwashAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePowerwashAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePowerwashAllowedProto& from);
+  void MergeFrom(const DevicePowerwashAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePowerwashAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePowerwashAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDevicePowerwashAllowedFieldNumber = 1,
+  };
+  // optional bool device_powerwash_allowed = 1;
+  bool has_device_powerwash_allowed() const;
+  private:
+  bool _internal_has_device_powerwash_allowed() const;
+  public:
+  void clear_device_powerwash_allowed();
+  bool device_powerwash_allowed() const;
+  void set_device_powerwash_allowed(bool value);
+  private:
+  bool _internal_device_powerwash_allowed() const;
+  void _internal_set_device_powerwash_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePowerwashAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool device_powerwash_allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceLoginScreenWebUsbAllowDevicesForUrlsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto) */ {
+ public:
+  DeviceLoginScreenWebUsbAllowDevicesForUrlsProto();
+  virtual ~DeviceLoginScreenWebUsbAllowDevicesForUrlsProto();
+
+  DeviceLoginScreenWebUsbAllowDevicesForUrlsProto(const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& from);
+  DeviceLoginScreenWebUsbAllowDevicesForUrlsProto(DeviceLoginScreenWebUsbAllowDevicesForUrlsProto&& from) noexcept
+    : DeviceLoginScreenWebUsbAllowDevicesForUrlsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& operator=(const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& operator=(DeviceLoginScreenWebUsbAllowDevicesForUrlsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto*>(
+               &_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    110;
+
+  friend void swap(DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& a, DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* New() const final {
+    return CreateMaybeMessage<DeviceLoginScreenWebUsbAllowDevicesForUrlsProto>(nullptr);
+  }
+
+  DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceLoginScreenWebUsbAllowDevicesForUrlsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& from);
+  void MergeFrom(const DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceLoginScreenWebusbAllowDevicesForUrlsFieldNumber = 1,
+  };
+  // optional string device_login_screen_webusb_allow_devices_for_urls = 1;
+  bool has_device_login_screen_webusb_allow_devices_for_urls() const;
+  private:
+  bool _internal_has_device_login_screen_webusb_allow_devices_for_urls() const;
+  public:
+  void clear_device_login_screen_webusb_allow_devices_for_urls();
+  const std::string& device_login_screen_webusb_allow_devices_for_urls() const;
+  void set_device_login_screen_webusb_allow_devices_for_urls(const std::string& value);
+  void set_device_login_screen_webusb_allow_devices_for_urls(std::string&& value);
+  void set_device_login_screen_webusb_allow_devices_for_urls(const char* value);
+  void set_device_login_screen_webusb_allow_devices_for_urls(const char* value, size_t size);
+  std::string* mutable_device_login_screen_webusb_allow_devices_for_urls();
+  std::string* release_device_login_screen_webusb_allow_devices_for_urls();
+  void set_allocated_device_login_screen_webusb_allow_devices_for_urls(std::string* device_login_screen_webusb_allow_devices_for_urls);
+  private:
+  const std::string& _internal_device_login_screen_webusb_allow_devices_for_urls() const;
+  void _internal_set_device_login_screen_webusb_allow_devices_for_urls(const std::string& value);
+  std::string* _internal_mutable_device_login_screen_webusb_allow_devices_for_urls();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_login_screen_webusb_allow_devices_for_urls_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProxySettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SystemProxySettingsProto) */ {
+ public:
+  SystemProxySettingsProto();
+  virtual ~SystemProxySettingsProto();
+
+  SystemProxySettingsProto(const SystemProxySettingsProto& from);
+  SystemProxySettingsProto(SystemProxySettingsProto&& from) noexcept
+    : SystemProxySettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProxySettingsProto& operator=(const SystemProxySettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProxySettingsProto& operator=(SystemProxySettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProxySettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProxySettingsProto* internal_default_instance() {
+    return reinterpret_cast<const SystemProxySettingsProto*>(
+               &_SystemProxySettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    111;
+
+  friend void swap(SystemProxySettingsProto& a, SystemProxySettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProxySettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProxySettingsProto* New() const final {
+    return CreateMaybeMessage<SystemProxySettingsProto>(nullptr);
+  }
+
+  SystemProxySettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProxySettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProxySettingsProto& from);
+  void MergeFrom(const SystemProxySettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProxySettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SystemProxySettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSystemProxySettingsFieldNumber = 1,
+  };
+  // optional string system_proxy_settings = 1;
+  bool has_system_proxy_settings() const;
+  private:
+  bool _internal_has_system_proxy_settings() const;
+  public:
+  void clear_system_proxy_settings();
+  const std::string& system_proxy_settings() const;
+  void set_system_proxy_settings(const std::string& value);
+  void set_system_proxy_settings(std::string&& value);
+  void set_system_proxy_settings(const char* value);
+  void set_system_proxy_settings(const char* value, size_t size);
+  std::string* mutable_system_proxy_settings();
+  std::string* release_system_proxy_settings();
+  void set_allocated_system_proxy_settings(std::string* system_proxy_settings);
+  private:
+  const std::string& _internal_system_proxy_settings() const;
+  void _internal_set_system_proxy_settings(const std::string& value);
+  std::string* _internal_mutable_system_proxy_settings();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SystemProxySettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr system_proxy_settings_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RequiredClientCertificateForDeviceProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RequiredClientCertificateForDeviceProto) */ {
+ public:
+  RequiredClientCertificateForDeviceProto();
+  virtual ~RequiredClientCertificateForDeviceProto();
+
+  RequiredClientCertificateForDeviceProto(const RequiredClientCertificateForDeviceProto& from);
+  RequiredClientCertificateForDeviceProto(RequiredClientCertificateForDeviceProto&& from) noexcept
+    : RequiredClientCertificateForDeviceProto() {
+    *this = ::std::move(from);
+  }
+
+  inline RequiredClientCertificateForDeviceProto& operator=(const RequiredClientCertificateForDeviceProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RequiredClientCertificateForDeviceProto& operator=(RequiredClientCertificateForDeviceProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RequiredClientCertificateForDeviceProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RequiredClientCertificateForDeviceProto* internal_default_instance() {
+    return reinterpret_cast<const RequiredClientCertificateForDeviceProto*>(
+               &_RequiredClientCertificateForDeviceProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    112;
+
+  friend void swap(RequiredClientCertificateForDeviceProto& a, RequiredClientCertificateForDeviceProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RequiredClientCertificateForDeviceProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RequiredClientCertificateForDeviceProto* New() const final {
+    return CreateMaybeMessage<RequiredClientCertificateForDeviceProto>(nullptr);
+  }
+
+  RequiredClientCertificateForDeviceProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RequiredClientCertificateForDeviceProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RequiredClientCertificateForDeviceProto& from);
+  void MergeFrom(const RequiredClientCertificateForDeviceProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RequiredClientCertificateForDeviceProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RequiredClientCertificateForDeviceProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRequiredClientCertificateForDeviceFieldNumber = 1,
+  };
+  // optional string required_client_certificate_for_device = 1;
+  bool has_required_client_certificate_for_device() const;
+  private:
+  bool _internal_has_required_client_certificate_for_device() const;
+  public:
+  void clear_required_client_certificate_for_device();
+  const std::string& required_client_certificate_for_device() const;
+  void set_required_client_certificate_for_device(const std::string& value);
+  void set_required_client_certificate_for_device(std::string&& value);
+  void set_required_client_certificate_for_device(const char* value);
+  void set_required_client_certificate_for_device(const char* value, size_t size);
+  std::string* mutable_required_client_certificate_for_device();
+  std::string* release_required_client_certificate_for_device();
+  void set_allocated_required_client_certificate_for_device(std::string* required_client_certificate_for_device);
+  private:
+  const std::string& _internal_required_client_certificate_for_device() const;
+  void _internal_set_required_client_certificate_for_device(const std::string& value);
+  std::string* _internal_mutable_required_client_certificate_for_device();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RequiredClientCertificateForDeviceProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr required_client_certificate_for_device_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceCrostiniArcAdbSideloadingAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto) */ {
+ public:
+  DeviceCrostiniArcAdbSideloadingAllowedProto();
+  virtual ~DeviceCrostiniArcAdbSideloadingAllowedProto();
+
+  DeviceCrostiniArcAdbSideloadingAllowedProto(const DeviceCrostiniArcAdbSideloadingAllowedProto& from);
+  DeviceCrostiniArcAdbSideloadingAllowedProto(DeviceCrostiniArcAdbSideloadingAllowedProto&& from) noexcept
+    : DeviceCrostiniArcAdbSideloadingAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceCrostiniArcAdbSideloadingAllowedProto& operator=(const DeviceCrostiniArcAdbSideloadingAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceCrostiniArcAdbSideloadingAllowedProto& operator=(DeviceCrostiniArcAdbSideloadingAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceCrostiniArcAdbSideloadingAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceCrostiniArcAdbSideloadingAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceCrostiniArcAdbSideloadingAllowedProto*>(
+               &_DeviceCrostiniArcAdbSideloadingAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    113;
+
+  friend void swap(DeviceCrostiniArcAdbSideloadingAllowedProto& a, DeviceCrostiniArcAdbSideloadingAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceCrostiniArcAdbSideloadingAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceCrostiniArcAdbSideloadingAllowedProto* New() const final {
+    return CreateMaybeMessage<DeviceCrostiniArcAdbSideloadingAllowedProto>(nullptr);
+  }
+
+  DeviceCrostiniArcAdbSideloadingAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceCrostiniArcAdbSideloadingAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceCrostiniArcAdbSideloadingAllowedProto& from);
+  void MergeFrom(const DeviceCrostiniArcAdbSideloadingAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceCrostiniArcAdbSideloadingAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode AllowanceMode;
+  static constexpr AllowanceMode DISALLOW =
+    DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_DISALLOW;
+  static constexpr AllowanceMode DISALLOW_WITH_POWERWASH =
+    DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_DISALLOW_WITH_POWERWASH;
+  static constexpr AllowanceMode ALLOW_FOR_AFFILIATED_USERS =
+    DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_ALLOW_FOR_AFFILIATED_USERS;
+  static inline bool AllowanceMode_IsValid(int value) {
+    return DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_IsValid(value);
+  }
+  static constexpr AllowanceMode AllowanceMode_MIN =
+    DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_AllowanceMode_MIN;
+  static constexpr AllowanceMode AllowanceMode_MAX =
+    DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_AllowanceMode_MAX;
+  static constexpr int AllowanceMode_ARRAYSIZE =
+    DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_AllowanceMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AllowanceMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AllowanceMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AllowanceMode_Name.");
+    return DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Name(enum_t_value);
+  }
+  static inline bool AllowanceMode_Parse(const std::string& name,
+      AllowanceMode* value) {
+    return DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kModeFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto.AllowanceMode mode = 1 [default = DISALLOW];
+  bool has_mode() const;
+  private:
+  bool _internal_has_mode() const;
+  public:
+  void clear_mode();
+  ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode mode() const;
+  void set_mode(::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode value);
+  private:
+  ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode _internal_mode() const;
+  void _internal_set_mode(::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int mode_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceShowLowDiskSpaceNotificationProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceShowLowDiskSpaceNotificationProto) */ {
+ public:
+  DeviceShowLowDiskSpaceNotificationProto();
+  virtual ~DeviceShowLowDiskSpaceNotificationProto();
+
+  DeviceShowLowDiskSpaceNotificationProto(const DeviceShowLowDiskSpaceNotificationProto& from);
+  DeviceShowLowDiskSpaceNotificationProto(DeviceShowLowDiskSpaceNotificationProto&& from) noexcept
+    : DeviceShowLowDiskSpaceNotificationProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceShowLowDiskSpaceNotificationProto& operator=(const DeviceShowLowDiskSpaceNotificationProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceShowLowDiskSpaceNotificationProto& operator=(DeviceShowLowDiskSpaceNotificationProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceShowLowDiskSpaceNotificationProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceShowLowDiskSpaceNotificationProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceShowLowDiskSpaceNotificationProto*>(
+               &_DeviceShowLowDiskSpaceNotificationProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    114;
+
+  friend void swap(DeviceShowLowDiskSpaceNotificationProto& a, DeviceShowLowDiskSpaceNotificationProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceShowLowDiskSpaceNotificationProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceShowLowDiskSpaceNotificationProto* New() const final {
+    return CreateMaybeMessage<DeviceShowLowDiskSpaceNotificationProto>(nullptr);
+  }
+
+  DeviceShowLowDiskSpaceNotificationProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceShowLowDiskSpaceNotificationProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceShowLowDiskSpaceNotificationProto& from);
+  void MergeFrom(const DeviceShowLowDiskSpaceNotificationProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceShowLowDiskSpaceNotificationProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceShowLowDiskSpaceNotificationProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceShowLowDiskSpaceNotificationFieldNumber = 1,
+  };
+  // optional bool device_show_low_disk_space_notification = 1;
+  bool has_device_show_low_disk_space_notification() const;
+  private:
+  bool _internal_has_device_show_low_disk_space_notification() const;
+  public:
+  void clear_device_show_low_disk_space_notification();
+  bool device_show_low_disk_space_notification() const;
+  void set_device_show_low_disk_space_notification(bool value);
+  private:
+  bool _internal_device_show_low_disk_space_notification() const;
+  void _internal_set_device_show_low_disk_space_notification(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceShowLowDiskSpaceNotificationProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool device_show_low_disk_space_notification_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceFamilyLinkAccountsAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceFamilyLinkAccountsAllowedProto) */ {
+ public:
+  DeviceFamilyLinkAccountsAllowedProto();
+  virtual ~DeviceFamilyLinkAccountsAllowedProto();
+
+  DeviceFamilyLinkAccountsAllowedProto(const DeviceFamilyLinkAccountsAllowedProto& from);
+  DeviceFamilyLinkAccountsAllowedProto(DeviceFamilyLinkAccountsAllowedProto&& from) noexcept
+    : DeviceFamilyLinkAccountsAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceFamilyLinkAccountsAllowedProto& operator=(const DeviceFamilyLinkAccountsAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceFamilyLinkAccountsAllowedProto& operator=(DeviceFamilyLinkAccountsAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceFamilyLinkAccountsAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceFamilyLinkAccountsAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceFamilyLinkAccountsAllowedProto*>(
+               &_DeviceFamilyLinkAccountsAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    115;
+
+  friend void swap(DeviceFamilyLinkAccountsAllowedProto& a, DeviceFamilyLinkAccountsAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceFamilyLinkAccountsAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceFamilyLinkAccountsAllowedProto* New() const final {
+    return CreateMaybeMessage<DeviceFamilyLinkAccountsAllowedProto>(nullptr);
+  }
+
+  DeviceFamilyLinkAccountsAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceFamilyLinkAccountsAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceFamilyLinkAccountsAllowedProto& from);
+  void MergeFrom(const DeviceFamilyLinkAccountsAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceFamilyLinkAccountsAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceFamilyLinkAccountsAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kFamilyLinkAccountsAllowedFieldNumber = 1,
+  };
+  // optional bool family_link_accounts_allowed = 1 [default = false];
+  bool has_family_link_accounts_allowed() const;
+  private:
+  bool _internal_has_family_link_accounts_allowed() const;
+  public:
+  void clear_family_link_accounts_allowed();
+  bool family_link_accounts_allowed() const;
+  void set_family_link_accounts_allowed(bool value);
+  private:
+  bool _internal_family_link_accounts_allowed() const;
+  void _internal_set_family_link_accounts_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceFamilyLinkAccountsAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool family_link_accounts_allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceArcDataSnapshotHoursProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceArcDataSnapshotHoursProto) */ {
+ public:
+  DeviceArcDataSnapshotHoursProto();
+  virtual ~DeviceArcDataSnapshotHoursProto();
+
+  DeviceArcDataSnapshotHoursProto(const DeviceArcDataSnapshotHoursProto& from);
+  DeviceArcDataSnapshotHoursProto(DeviceArcDataSnapshotHoursProto&& from) noexcept
+    : DeviceArcDataSnapshotHoursProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceArcDataSnapshotHoursProto& operator=(const DeviceArcDataSnapshotHoursProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceArcDataSnapshotHoursProto& operator=(DeviceArcDataSnapshotHoursProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceArcDataSnapshotHoursProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceArcDataSnapshotHoursProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceArcDataSnapshotHoursProto*>(
+               &_DeviceArcDataSnapshotHoursProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    116;
+
+  friend void swap(DeviceArcDataSnapshotHoursProto& a, DeviceArcDataSnapshotHoursProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceArcDataSnapshotHoursProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceArcDataSnapshotHoursProto* New() const final {
+    return CreateMaybeMessage<DeviceArcDataSnapshotHoursProto>(nullptr);
+  }
+
+  DeviceArcDataSnapshotHoursProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceArcDataSnapshotHoursProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceArcDataSnapshotHoursProto& from);
+  void MergeFrom(const DeviceArcDataSnapshotHoursProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceArcDataSnapshotHoursProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceArcDataSnapshotHoursProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kArcDataSnapshotHoursFieldNumber = 1,
+  };
+  // optional string arc_data_snapshot_hours = 1;
+  bool has_arc_data_snapshot_hours() const;
+  private:
+  bool _internal_has_arc_data_snapshot_hours() const;
+  public:
+  void clear_arc_data_snapshot_hours();
+  const std::string& arc_data_snapshot_hours() const;
+  void set_arc_data_snapshot_hours(const std::string& value);
+  void set_arc_data_snapshot_hours(std::string&& value);
+  void set_arc_data_snapshot_hours(const char* value);
+  void set_arc_data_snapshot_hours(const char* value, size_t size);
+  std::string* mutable_arc_data_snapshot_hours();
+  std::string* release_arc_data_snapshot_hours();
+  void set_allocated_arc_data_snapshot_hours(std::string* arc_data_snapshot_hours);
+  private:
+  const std::string& _internal_arc_data_snapshot_hours() const;
+  void _internal_set_arc_data_snapshot_hours(const std::string& value);
+  std::string* _internal_mutable_arc_data_snapshot_hours();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceArcDataSnapshotHoursProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr arc_data_snapshot_hours_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceSystemWideTracingEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceSystemWideTracingEnabledProto) */ {
+ public:
+  DeviceSystemWideTracingEnabledProto();
+  virtual ~DeviceSystemWideTracingEnabledProto();
+
+  DeviceSystemWideTracingEnabledProto(const DeviceSystemWideTracingEnabledProto& from);
+  DeviceSystemWideTracingEnabledProto(DeviceSystemWideTracingEnabledProto&& from) noexcept
+    : DeviceSystemWideTracingEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceSystemWideTracingEnabledProto& operator=(const DeviceSystemWideTracingEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceSystemWideTracingEnabledProto& operator=(DeviceSystemWideTracingEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceSystemWideTracingEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceSystemWideTracingEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceSystemWideTracingEnabledProto*>(
+               &_DeviceSystemWideTracingEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    117;
+
+  friend void swap(DeviceSystemWideTracingEnabledProto& a, DeviceSystemWideTracingEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceSystemWideTracingEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceSystemWideTracingEnabledProto* New() const final {
+    return CreateMaybeMessage<DeviceSystemWideTracingEnabledProto>(nullptr);
+  }
+
+  DeviceSystemWideTracingEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceSystemWideTracingEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceSystemWideTracingEnabledProto& from);
+  void MergeFrom(const DeviceSystemWideTracingEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceSystemWideTracingEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceSystemWideTracingEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1 [default = false];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceSystemWideTracingEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePciPeripheralDataAccessEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePciPeripheralDataAccessEnabledProto) */ {
+ public:
+  DevicePciPeripheralDataAccessEnabledProto();
+  virtual ~DevicePciPeripheralDataAccessEnabledProto();
+
+  DevicePciPeripheralDataAccessEnabledProto(const DevicePciPeripheralDataAccessEnabledProto& from);
+  DevicePciPeripheralDataAccessEnabledProto(DevicePciPeripheralDataAccessEnabledProto&& from) noexcept
+    : DevicePciPeripheralDataAccessEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePciPeripheralDataAccessEnabledProto& operator=(const DevicePciPeripheralDataAccessEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePciPeripheralDataAccessEnabledProto& operator=(DevicePciPeripheralDataAccessEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePciPeripheralDataAccessEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePciPeripheralDataAccessEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DevicePciPeripheralDataAccessEnabledProto*>(
+               &_DevicePciPeripheralDataAccessEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    118;
+
+  friend void swap(DevicePciPeripheralDataAccessEnabledProto& a, DevicePciPeripheralDataAccessEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePciPeripheralDataAccessEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePciPeripheralDataAccessEnabledProto* New() const final {
+    return CreateMaybeMessage<DevicePciPeripheralDataAccessEnabledProto>(nullptr);
+  }
+
+  DevicePciPeripheralDataAccessEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePciPeripheralDataAccessEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePciPeripheralDataAccessEnabledProto& from);
+  void MergeFrom(const DevicePciPeripheralDataAccessEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePciPeripheralDataAccessEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePciPeripheralDataAccessEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1 [default = false];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePciPeripheralDataAccessEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePciPeripheralDataAccessEnabledProtoV2 :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2) */ {
+ public:
+  DevicePciPeripheralDataAccessEnabledProtoV2();
+  virtual ~DevicePciPeripheralDataAccessEnabledProtoV2();
+
+  DevicePciPeripheralDataAccessEnabledProtoV2(const DevicePciPeripheralDataAccessEnabledProtoV2& from);
+  DevicePciPeripheralDataAccessEnabledProtoV2(DevicePciPeripheralDataAccessEnabledProtoV2&& from) noexcept
+    : DevicePciPeripheralDataAccessEnabledProtoV2() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePciPeripheralDataAccessEnabledProtoV2& operator=(const DevicePciPeripheralDataAccessEnabledProtoV2& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePciPeripheralDataAccessEnabledProtoV2& operator=(DevicePciPeripheralDataAccessEnabledProtoV2&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePciPeripheralDataAccessEnabledProtoV2& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePciPeripheralDataAccessEnabledProtoV2* internal_default_instance() {
+    return reinterpret_cast<const DevicePciPeripheralDataAccessEnabledProtoV2*>(
+               &_DevicePciPeripheralDataAccessEnabledProtoV2_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    119;
+
+  friend void swap(DevicePciPeripheralDataAccessEnabledProtoV2& a, DevicePciPeripheralDataAccessEnabledProtoV2& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePciPeripheralDataAccessEnabledProtoV2* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePciPeripheralDataAccessEnabledProtoV2* New() const final {
+    return CreateMaybeMessage<DevicePciPeripheralDataAccessEnabledProtoV2>(nullptr);
+  }
+
+  DevicePciPeripheralDataAccessEnabledProtoV2* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePciPeripheralDataAccessEnabledProtoV2>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePciPeripheralDataAccessEnabledProtoV2& from);
+  void MergeFrom(const DevicePciPeripheralDataAccessEnabledProtoV2& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePciPeripheralDataAccessEnabledProtoV2* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1;
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceBorealisAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceBorealisAllowedProto) */ {
+ public:
+  DeviceBorealisAllowedProto();
+  virtual ~DeviceBorealisAllowedProto();
+
+  DeviceBorealisAllowedProto(const DeviceBorealisAllowedProto& from);
+  DeviceBorealisAllowedProto(DeviceBorealisAllowedProto&& from) noexcept
+    : DeviceBorealisAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceBorealisAllowedProto& operator=(const DeviceBorealisAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceBorealisAllowedProto& operator=(DeviceBorealisAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceBorealisAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceBorealisAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceBorealisAllowedProto*>(
+               &_DeviceBorealisAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    120;
+
+  friend void swap(DeviceBorealisAllowedProto& a, DeviceBorealisAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceBorealisAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceBorealisAllowedProto* New() const final {
+    return CreateMaybeMessage<DeviceBorealisAllowedProto>(nullptr);
+  }
+
+  DeviceBorealisAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceBorealisAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceBorealisAllowedProto& from);
+  void MergeFrom(const DeviceBorealisAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceBorealisAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceBorealisAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowedFieldNumber = 1,
+  };
+  // optional bool allowed = 1 [default = true];
+  bool has_allowed() const;
+  private:
+  bool _internal_has_allowed() const;
+  public:
+  void clear_allowed();
+  bool allowed() const;
+  void set_allowed(bool value);
+  private:
+  bool _internal_allowed() const;
+  void _internal_set_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceBorealisAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAllowedBluetoothServicesProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAllowedBluetoothServicesProto) */ {
+ public:
+  DeviceAllowedBluetoothServicesProto();
+  virtual ~DeviceAllowedBluetoothServicesProto();
+
+  DeviceAllowedBluetoothServicesProto(const DeviceAllowedBluetoothServicesProto& from);
+  DeviceAllowedBluetoothServicesProto(DeviceAllowedBluetoothServicesProto&& from) noexcept
+    : DeviceAllowedBluetoothServicesProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAllowedBluetoothServicesProto& operator=(const DeviceAllowedBluetoothServicesProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAllowedBluetoothServicesProto& operator=(DeviceAllowedBluetoothServicesProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAllowedBluetoothServicesProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAllowedBluetoothServicesProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceAllowedBluetoothServicesProto*>(
+               &_DeviceAllowedBluetoothServicesProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    121;
+
+  friend void swap(DeviceAllowedBluetoothServicesProto& a, DeviceAllowedBluetoothServicesProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAllowedBluetoothServicesProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAllowedBluetoothServicesProto* New() const final {
+    return CreateMaybeMessage<DeviceAllowedBluetoothServicesProto>(nullptr);
+  }
+
+  DeviceAllowedBluetoothServicesProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAllowedBluetoothServicesProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAllowedBluetoothServicesProto& from);
+  void MergeFrom(const DeviceAllowedBluetoothServicesProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAllowedBluetoothServicesProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAllowedBluetoothServicesProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowlistFieldNumber = 1,
+  };
+  // repeated string allowlist = 1;
+  int allowlist_size() const;
+  private:
+  int _internal_allowlist_size() const;
+  public:
+  void clear_allowlist();
+  const std::string& allowlist(int index) const;
+  std::string* mutable_allowlist(int index);
+  void set_allowlist(int index, const std::string& value);
+  void set_allowlist(int index, std::string&& value);
+  void set_allowlist(int index, const char* value);
+  void set_allowlist(int index, const char* value, size_t size);
+  std::string* add_allowlist();
+  void add_allowlist(const std::string& value);
+  void add_allowlist(std::string&& value);
+  void add_allowlist(const char* value);
+  void add_allowlist(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& allowlist() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_allowlist();
+  private:
+  const std::string& _internal_allowlist(int index) const;
+  std::string* _internal_add_allowlist();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAllowedBluetoothServicesProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> allowlist_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceDebugPacketCaptureAllowedProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceDebugPacketCaptureAllowedProto) */ {
+ public:
+  DeviceDebugPacketCaptureAllowedProto();
+  virtual ~DeviceDebugPacketCaptureAllowedProto();
+
+  DeviceDebugPacketCaptureAllowedProto(const DeviceDebugPacketCaptureAllowedProto& from);
+  DeviceDebugPacketCaptureAllowedProto(DeviceDebugPacketCaptureAllowedProto&& from) noexcept
+    : DeviceDebugPacketCaptureAllowedProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceDebugPacketCaptureAllowedProto& operator=(const DeviceDebugPacketCaptureAllowedProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceDebugPacketCaptureAllowedProto& operator=(DeviceDebugPacketCaptureAllowedProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceDebugPacketCaptureAllowedProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceDebugPacketCaptureAllowedProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceDebugPacketCaptureAllowedProto*>(
+               &_DeviceDebugPacketCaptureAllowedProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    122;
+
+  friend void swap(DeviceDebugPacketCaptureAllowedProto& a, DeviceDebugPacketCaptureAllowedProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceDebugPacketCaptureAllowedProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceDebugPacketCaptureAllowedProto* New() const final {
+    return CreateMaybeMessage<DeviceDebugPacketCaptureAllowedProto>(nullptr);
+  }
+
+  DeviceDebugPacketCaptureAllowedProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceDebugPacketCaptureAllowedProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceDebugPacketCaptureAllowedProto& from);
+  void MergeFrom(const DeviceDebugPacketCaptureAllowedProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceDebugPacketCaptureAllowedProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceDebugPacketCaptureAllowedProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAllowedFieldNumber = 1,
+  };
+  // optional bool allowed = 1;
+  bool has_allowed() const;
+  private:
+  bool _internal_has_allowed() const;
+  public:
+  void clear_allowed();
+  bool allowed() const;
+  void set_allowed(bool value);
+  private:
+  bool _internal_allowed() const;
+  void _internal_set_allowed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceDebugPacketCaptureAllowedProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool allowed_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceScheduledRebootProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceScheduledRebootProto) */ {
+ public:
+  DeviceScheduledRebootProto();
+  virtual ~DeviceScheduledRebootProto();
+
+  DeviceScheduledRebootProto(const DeviceScheduledRebootProto& from);
+  DeviceScheduledRebootProto(DeviceScheduledRebootProto&& from) noexcept
+    : DeviceScheduledRebootProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceScheduledRebootProto& operator=(const DeviceScheduledRebootProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceScheduledRebootProto& operator=(DeviceScheduledRebootProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceScheduledRebootProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceScheduledRebootProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceScheduledRebootProto*>(
+               &_DeviceScheduledRebootProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    123;
+
+  friend void swap(DeviceScheduledRebootProto& a, DeviceScheduledRebootProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceScheduledRebootProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceScheduledRebootProto* New() const final {
+    return CreateMaybeMessage<DeviceScheduledRebootProto>(nullptr);
+  }
+
+  DeviceScheduledRebootProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceScheduledRebootProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceScheduledRebootProto& from);
+  void MergeFrom(const DeviceScheduledRebootProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceScheduledRebootProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceScheduledRebootProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceScheduledRebootSettingsFieldNumber = 1,
+  };
+  // optional string device_scheduled_reboot_settings = 1;
+  bool has_device_scheduled_reboot_settings() const;
+  private:
+  bool _internal_has_device_scheduled_reboot_settings() const;
+  public:
+  void clear_device_scheduled_reboot_settings();
+  const std::string& device_scheduled_reboot_settings() const;
+  void set_device_scheduled_reboot_settings(const std::string& value);
+  void set_device_scheduled_reboot_settings(std::string&& value);
+  void set_device_scheduled_reboot_settings(const char* value);
+  void set_device_scheduled_reboot_settings(const char* value, size_t size);
+  std::string* mutable_device_scheduled_reboot_settings();
+  std::string* release_device_scheduled_reboot_settings();
+  void set_allocated_device_scheduled_reboot_settings(std::string* device_scheduled_reboot_settings);
+  private:
+  const std::string& _internal_device_scheduled_reboot_settings() const;
+  void _internal_set_device_scheduled_reboot_settings(const std::string& value);
+  std::string* _internal_mutable_device_scheduled_reboot_settings();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceScheduledRebootProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_scheduled_reboot_settings_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceRestrictedManagedGuestSessionEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto) */ {
+ public:
+  DeviceRestrictedManagedGuestSessionEnabledProto();
+  virtual ~DeviceRestrictedManagedGuestSessionEnabledProto();
+
+  DeviceRestrictedManagedGuestSessionEnabledProto(const DeviceRestrictedManagedGuestSessionEnabledProto& from);
+  DeviceRestrictedManagedGuestSessionEnabledProto(DeviceRestrictedManagedGuestSessionEnabledProto&& from) noexcept
+    : DeviceRestrictedManagedGuestSessionEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceRestrictedManagedGuestSessionEnabledProto& operator=(const DeviceRestrictedManagedGuestSessionEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceRestrictedManagedGuestSessionEnabledProto& operator=(DeviceRestrictedManagedGuestSessionEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceRestrictedManagedGuestSessionEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceRestrictedManagedGuestSessionEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceRestrictedManagedGuestSessionEnabledProto*>(
+               &_DeviceRestrictedManagedGuestSessionEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    124;
+
+  friend void swap(DeviceRestrictedManagedGuestSessionEnabledProto& a, DeviceRestrictedManagedGuestSessionEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceRestrictedManagedGuestSessionEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceRestrictedManagedGuestSessionEnabledProto* New() const final {
+    return CreateMaybeMessage<DeviceRestrictedManagedGuestSessionEnabledProto>(nullptr);
+  }
+
+  DeviceRestrictedManagedGuestSessionEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceRestrictedManagedGuestSessionEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceRestrictedManagedGuestSessionEnabledProto& from);
+  void MergeFrom(const DeviceRestrictedManagedGuestSessionEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceRestrictedManagedGuestSessionEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1 [default = false];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceI18nShortcutsEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceI18nShortcutsEnabledProto) */ {
+ public:
+  DeviceI18nShortcutsEnabledProto();
+  virtual ~DeviceI18nShortcutsEnabledProto();
+
+  DeviceI18nShortcutsEnabledProto(const DeviceI18nShortcutsEnabledProto& from);
+  DeviceI18nShortcutsEnabledProto(DeviceI18nShortcutsEnabledProto&& from) noexcept
+    : DeviceI18nShortcutsEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceI18nShortcutsEnabledProto& operator=(const DeviceI18nShortcutsEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceI18nShortcutsEnabledProto& operator=(DeviceI18nShortcutsEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceI18nShortcutsEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceI18nShortcutsEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceI18nShortcutsEnabledProto*>(
+               &_DeviceI18nShortcutsEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    125;
+
+  friend void swap(DeviceI18nShortcutsEnabledProto& a, DeviceI18nShortcutsEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceI18nShortcutsEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceI18nShortcutsEnabledProto* New() const final {
+    return CreateMaybeMessage<DeviceI18nShortcutsEnabledProto>(nullptr);
+  }
+
+  DeviceI18nShortcutsEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceI18nShortcutsEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceI18nShortcutsEnabledProto& from);
+  void MergeFrom(const DeviceI18nShortcutsEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceI18nShortcutsEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceI18nShortcutsEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1 [default = true];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceI18nShortcutsEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RevenDeviceHWDataUsageEnabledProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RevenDeviceHWDataUsageEnabledProto) */ {
+ public:
+  RevenDeviceHWDataUsageEnabledProto();
+  virtual ~RevenDeviceHWDataUsageEnabledProto();
+
+  RevenDeviceHWDataUsageEnabledProto(const RevenDeviceHWDataUsageEnabledProto& from);
+  RevenDeviceHWDataUsageEnabledProto(RevenDeviceHWDataUsageEnabledProto&& from) noexcept
+    : RevenDeviceHWDataUsageEnabledProto() {
+    *this = ::std::move(from);
+  }
+
+  inline RevenDeviceHWDataUsageEnabledProto& operator=(const RevenDeviceHWDataUsageEnabledProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RevenDeviceHWDataUsageEnabledProto& operator=(RevenDeviceHWDataUsageEnabledProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RevenDeviceHWDataUsageEnabledProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RevenDeviceHWDataUsageEnabledProto* internal_default_instance() {
+    return reinterpret_cast<const RevenDeviceHWDataUsageEnabledProto*>(
+               &_RevenDeviceHWDataUsageEnabledProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    126;
+
+  friend void swap(RevenDeviceHWDataUsageEnabledProto& a, RevenDeviceHWDataUsageEnabledProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RevenDeviceHWDataUsageEnabledProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RevenDeviceHWDataUsageEnabledProto* New() const final {
+    return CreateMaybeMessage<RevenDeviceHWDataUsageEnabledProto>(nullptr);
+  }
+
+  RevenDeviceHWDataUsageEnabledProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RevenDeviceHWDataUsageEnabledProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RevenDeviceHWDataUsageEnabledProto& from);
+  void MergeFrom(const RevenDeviceHWDataUsageEnabledProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RevenDeviceHWDataUsageEnabledProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RevenDeviceHWDataUsageEnabledProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHardwareDataUsageEnabledFieldNumber = 1,
+  };
+  // optional bool hardware_data_usage_enabled = 1 [default = false];
+  bool has_hardware_data_usage_enabled() const;
+  private:
+  bool _internal_has_hardware_data_usage_enabled() const;
+  public:
+  void clear_hardware_data_usage_enabled();
+  bool hardware_data_usage_enabled() const;
+  void set_hardware_data_usage_enabled(bool value);
+  private:
+  bool _internal_hardware_data_usage_enabled() const;
+  void _internal_set_hardware_data_usage_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RevenDeviceHWDataUsageEnabledProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool hardware_data_usage_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceLoginScreenWebUILazyLoadingProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto) */ {
+ public:
+  DeviceLoginScreenWebUILazyLoadingProto();
+  virtual ~DeviceLoginScreenWebUILazyLoadingProto();
+
+  DeviceLoginScreenWebUILazyLoadingProto(const DeviceLoginScreenWebUILazyLoadingProto& from);
+  DeviceLoginScreenWebUILazyLoadingProto(DeviceLoginScreenWebUILazyLoadingProto&& from) noexcept
+    : DeviceLoginScreenWebUILazyLoadingProto() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceLoginScreenWebUILazyLoadingProto& operator=(const DeviceLoginScreenWebUILazyLoadingProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceLoginScreenWebUILazyLoadingProto& operator=(DeviceLoginScreenWebUILazyLoadingProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceLoginScreenWebUILazyLoadingProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceLoginScreenWebUILazyLoadingProto* internal_default_instance() {
+    return reinterpret_cast<const DeviceLoginScreenWebUILazyLoadingProto*>(
+               &_DeviceLoginScreenWebUILazyLoadingProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    127;
+
+  friend void swap(DeviceLoginScreenWebUILazyLoadingProto& a, DeviceLoginScreenWebUILazyLoadingProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceLoginScreenWebUILazyLoadingProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceLoginScreenWebUILazyLoadingProto* New() const final {
+    return CreateMaybeMessage<DeviceLoginScreenWebUILazyLoadingProto>(nullptr);
+  }
+
+  DeviceLoginScreenWebUILazyLoadingProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceLoginScreenWebUILazyLoadingProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceLoginScreenWebUILazyLoadingProto& from);
+  void MergeFrom(const DeviceLoginScreenWebUILazyLoadingProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceLoginScreenWebUILazyLoadingProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceLoginScreenWebUILazyLoadingProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1 [default = false];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class EncryptedReportingPipelineConfigurationProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.EncryptedReportingPipelineConfigurationProto) */ {
+ public:
+  EncryptedReportingPipelineConfigurationProto();
+  virtual ~EncryptedReportingPipelineConfigurationProto();
+
+  EncryptedReportingPipelineConfigurationProto(const EncryptedReportingPipelineConfigurationProto& from);
+  EncryptedReportingPipelineConfigurationProto(EncryptedReportingPipelineConfigurationProto&& from) noexcept
+    : EncryptedReportingPipelineConfigurationProto() {
+    *this = ::std::move(from);
+  }
+
+  inline EncryptedReportingPipelineConfigurationProto& operator=(const EncryptedReportingPipelineConfigurationProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline EncryptedReportingPipelineConfigurationProto& operator=(EncryptedReportingPipelineConfigurationProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const EncryptedReportingPipelineConfigurationProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const EncryptedReportingPipelineConfigurationProto* internal_default_instance() {
+    return reinterpret_cast<const EncryptedReportingPipelineConfigurationProto*>(
+               &_EncryptedReportingPipelineConfigurationProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    128;
+
+  friend void swap(EncryptedReportingPipelineConfigurationProto& a, EncryptedReportingPipelineConfigurationProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(EncryptedReportingPipelineConfigurationProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline EncryptedReportingPipelineConfigurationProto* New() const final {
+    return CreateMaybeMessage<EncryptedReportingPipelineConfigurationProto>(nullptr);
+  }
+
+  EncryptedReportingPipelineConfigurationProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<EncryptedReportingPipelineConfigurationProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const EncryptedReportingPipelineConfigurationProto& from);
+  void MergeFrom(const EncryptedReportingPipelineConfigurationProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(EncryptedReportingPipelineConfigurationProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.EncryptedReportingPipelineConfigurationProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnabledFieldNumber = 1,
+  };
+  // optional bool enabled = 1 [default = true];
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.EncryptedReportingPipelineConfigurationProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeDeviceSettingsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeDeviceSettingsProto) */ {
+ public:
+  ChromeDeviceSettingsProto();
+  virtual ~ChromeDeviceSettingsProto();
+
+  ChromeDeviceSettingsProto(const ChromeDeviceSettingsProto& from);
+  ChromeDeviceSettingsProto(ChromeDeviceSettingsProto&& from) noexcept
+    : ChromeDeviceSettingsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeDeviceSettingsProto& operator=(const ChromeDeviceSettingsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeDeviceSettingsProto& operator=(ChromeDeviceSettingsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeDeviceSettingsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeDeviceSettingsProto* internal_default_instance() {
+    return reinterpret_cast<const ChromeDeviceSettingsProto*>(
+               &_ChromeDeviceSettingsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    129;
+
+  friend void swap(ChromeDeviceSettingsProto& a, ChromeDeviceSettingsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeDeviceSettingsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeDeviceSettingsProto* New() const final {
+    return CreateMaybeMessage<ChromeDeviceSettingsProto>(nullptr);
+  }
+
+  ChromeDeviceSettingsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeDeviceSettingsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeDeviceSettingsProto& from);
+  void MergeFrom(const ChromeDeviceSettingsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeDeviceSettingsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeDeviceSettingsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDevicePolicyRefreshRateFieldNumber = 1,
+    kUserWhitelistFieldNumber = 2,
+    kGuestModeEnabledFieldNumber = 3,
+    kDeviceProxySettingsFieldNumber = 4,
+    kCameraEnabledFieldNumber = 5,
+    kShowUserNamesFieldNumber = 6,
+    kDataRoamingEnabledFieldNumber = 7,
+    kAllowNewUsersFieldNumber = 8,
+    kMetricsEnabledFieldNumber = 9,
+    kReleaseChannelFieldNumber = 10,
+    kOpenNetworkConfigurationFieldNumber = 11,
+    kDeviceReportingFieldNumber = 12,
+    kEphemeralUsersEnabledFieldNumber = 13,
+    kAppPackFieldNumber = 14,
+    kForcedLogoutTimeoutsFieldNumber = 15,
+    kLoginScreenSaverFieldNumber = 16,
+    kAutoUpdateSettingsFieldNumber = 17,
+    kStartUpUrlsFieldNumber = 18,
+    kPinnedAppsFieldNumber = 19,
+    kSystemTimezoneFieldNumber = 20,
+    kDeviceLocalAccountsFieldNumber = 21,
+    kAllowRedeemOffersFieldNumber = 22,
+    kFeatureFlagsFieldNumber = 23,
+    kUptimeLimitFieldNumber = 24,
+    kVariationsParameterFieldNumber = 25,
+    kAttestationSettingsFieldNumber = 26,
+    kAccessibilitySettingsFieldNumber = 27,
+    kSupervisedUsersSettingsFieldNumber = 28,
+    kLoginScreenPowerManagementFieldNumber = 29,
+    kUse24HourClockFieldNumber = 30,
+    kAutoCleanUpSettingsFieldNumber = 31,
+    kSystemSettingsFieldNumber = 32,
+    kSamlSettingsFieldNumber = 33,
+    kRebootOnShutdownFieldNumber = 34,
+    kDeviceHeartbeatSettingsFieldNumber = 35,
+    kExtensionCacheSizeFieldNumber = 36,
+    kLoginScreenDomainAutoCompleteFieldNumber = 37,
+    kDeviceLogUploadSettingsFieldNumber = 38,
+    kDisplayRotationDefaultFieldNumber = 39,
+    kAllowKioskAppControlChromeVersionFieldNumber = 40,
+    kLoginAuthenticationBehaviorFieldNumber = 41,
+    kUsbDetachableWhitelistFieldNumber = 42,
+    kAllowBluetoothFieldNumber = 43,
+    kQuirksDownloadEnabledFieldNumber = 44,
+    kLoginVideoCaptureAllowedUrlsFieldNumber = 45,
+    kDeviceLoginScreenExtensionsFieldNumber = 46,
+    kNetworkThrottlingFieldNumber = 47,
+    kDeviceWallpaperImageFieldNumber = 48,
+    kLoginScreenLocalesFieldNumber = 49,
+    kLoginScreenInputMethodsFieldNumber = 50,
+    kDeviceEcryptfsMigrationStrategyFieldNumber = 51,
+    kDeviceSecondFactorAuthenticationFieldNumber = 52,
+    kCastReceiverNameFieldNumber = 53,
+    kDeviceOffHoursFieldNumber = 54,
+    kNativeDevicePrintersFieldNumber = 55,
+    kNativeDevicePrintersAccessModeFieldNumber = 56,
+    kNativeDevicePrintersBlacklistFieldNumber = 57,
+    kNativeDevicePrintersWhitelistFieldNumber = 58,
+    kTpmFirmwareUpdateSettingsFieldNumber = 59,
+    kMinimumRequiredVersionFieldNumber = 60,
+    kDeviceLoginScreenAutoSelectCertificateForUrlsFieldNumber = 62,
+    kUnaffiliatedArcAllowedFieldNumber = 63,
+    kNetworkHostnameFieldNumber = 64,
+    kDeviceKerberosEncryptionTypesFieldNumber = 65,
+    kDeviceUserPolicyLoopbackProcessingModeFieldNumber = 66,
+    kDeviceLoginScreenIsolateOriginsFieldNumber = 67,
+    kDeviceLoginScreenSitePerProcessFieldNumber = 68,
+    kVirtualMachinesAllowedFieldNumber = 69,
+    kDeviceMachinePasswordChangeRateFieldNumber = 70,
+    kSamlLoginAuthenticationTypeFieldNumber = 71,
+    kDeviceUnaffiliatedCrostiniAllowedFieldNumber = 72,
+    kDeviceWifiFastTransitionEnabledFieldNumber = 73,
+    kDeviceDisplayResolutionFieldNumber = 74,
+    kPluginVmAllowedFieldNumber = 75,
+    kDeviceGpoCacheLifetimeFieldNumber = 76,
+    kDeviceAuthDataCacheLifetimeFieldNumber = 77,
+    kPluginVmLicenseKeyFieldNumber = 78,
+    kDeviceRebootOnUserSignoutFieldNumber = 79,
+    kDeviceWilcoDtcAllowedFieldNumber = 80,
+    kDeviceWilcoDtcConfigurationFieldNumber = 81,
+    kDeviceWifiAllowedFieldNumber = 82,
+    kDevicePowerPeakShiftFieldNumber = 83,
+    kDeviceBootOnAcFieldNumber = 84,
+    kDeviceDockMacAddressSourceFieldNumber = 85,
+    kDeviceAdvancedBatteryChargeModeFieldNumber = 86,
+    kDeviceBatteryChargeModeFieldNumber = 87,
+    kDeviceUsbPowerShareFieldNumber = 88,
+    kDeviceScheduledUpdateCheckFieldNumber = 89,
+    kDevicePowerwashAllowedFieldNumber = 91,
+    kDeviceLoginScreenWebusbAllowDevicesForUrlsFieldNumber = 92,
+    kDeviceLoginScreenSystemInfoEnforcedFieldNumber = 93,
+    kDeviceWebBasedAttestationAllowedUrlsFieldNumber = 94,
+    kDeviceShowNumericKeyboardForPasswordFieldNumber = 95,
+    kLoginScreenPrimaryMouseButtonSwitchFieldNumber = 96,
+    kDeviceMinimumVersionFieldNumber = 97,
+    kSystemProxySettingsFieldNumber = 98,
+    kDeviceChromeVariationsTypeFieldNumber = 99,
+    kDeviceLoginScreenPrivacyScreenEnabledFieldNumber = 100,
+    kRequiredClientCertificateForDeviceFieldNumber = 101,
+    kDeviceCrostiniArcAdbSideloadingAllowedFieldNumber = 102,
+    kDeviceMinimumVersionAueMessageFieldNumber = 103,
+    kManagedGuestSessionPrivacyWarningsFieldNumber = 104,
+    kExternalPrintServersFieldNumber = 105,
+    kExternalPrintServersAllowlistFieldNumber = 106,
+    kDevicePrintersAccessModeFieldNumber = 107,
+    kDevicePrintersBlocklistFieldNumber = 108,
+    kDevicePrintersAllowlistFieldNumber = 109,
+    kDevicePrintersFieldNumber = 110,
+    kDeviceShowLowDiskSpaceNotificationFieldNumber = 111,
+    kUserAllowlistFieldNumber = 112,
+    kUsbDetachableAllowlistFieldNumber = 113,
+    kFamilyLinkAccountsAllowedFieldNumber = 114,
+    kArcDataSnapshotHoursFieldNumber = 115,
+    kDeviceAllowMgsToStoreDisplayPropertiesFieldNumber = 116,
+    kDeviceSystemWideTracingEnabledFieldNumber = 117,
+    kDevicePciPeripheralDataAccessEnabledFieldNumber = 118,
+    kDeviceBorealisAllowedFieldNumber = 119,
+    kDeviceAllowedBluetoothServicesFieldNumber = 120,
+    kDeviceDebugPacketCaptureAllowedFieldNumber = 121,
+    kDeviceScheduledRebootFieldNumber = 122,
+    kDevicePciPeripheralDataAccessEnabledV2FieldNumber = 123,
+    kDeviceRestrictedManagedGuestSessionEnabledFieldNumber = 124,
+    kHostnameUserConfigurableFieldNumber = 125,
+    kLoginScreenPromptOnMultipleMatchingCertificatesFieldNumber = 126,
+    kKioskCrxManifestUpdateUrlIgnoredFieldNumber = 127,
+    kDeviceI18NShortcutsEnabledFieldNumber = 128,
+    kChromadToCloudMigrationEnabledFieldNumber = 129,
+    kHardwareDataUsageEnabledFieldNumber = 130,
+    kLoginWebUiLazyLoadingFieldNumber = 131,
+    kKeylockerForStorageEncryptionEnabledFieldNumber = 132,
+    kDeviceRunAutomaticCleanupOnLoginFieldNumber = 133,
+    kDeviceEncryptedReportingPipelineEnabledFieldNumber = 134,
+  };
+  // optional .enterprise_management.DevicePolicyRefreshRateProto device_policy_refresh_rate = 1;
+  bool has_device_policy_refresh_rate() const;
+  private:
+  bool _internal_has_device_policy_refresh_rate() const;
+  public:
+  void clear_device_policy_refresh_rate();
+  const ::enterprise_management::DevicePolicyRefreshRateProto& device_policy_refresh_rate() const;
+  ::enterprise_management::DevicePolicyRefreshRateProto* release_device_policy_refresh_rate();
+  ::enterprise_management::DevicePolicyRefreshRateProto* mutable_device_policy_refresh_rate();
+  void set_allocated_device_policy_refresh_rate(::enterprise_management::DevicePolicyRefreshRateProto* device_policy_refresh_rate);
+  private:
+  const ::enterprise_management::DevicePolicyRefreshRateProto& _internal_device_policy_refresh_rate() const;
+  ::enterprise_management::DevicePolicyRefreshRateProto* _internal_mutable_device_policy_refresh_rate();
+  public:
+
+  // optional .enterprise_management.UserWhitelistProto user_whitelist = 2;
+  bool has_user_whitelist() const;
+  private:
+  bool _internal_has_user_whitelist() const;
+  public:
+  void clear_user_whitelist();
+  const ::enterprise_management::UserWhitelistProto& user_whitelist() const;
+  ::enterprise_management::UserWhitelistProto* release_user_whitelist();
+  ::enterprise_management::UserWhitelistProto* mutable_user_whitelist();
+  void set_allocated_user_whitelist(::enterprise_management::UserWhitelistProto* user_whitelist);
+  private:
+  const ::enterprise_management::UserWhitelistProto& _internal_user_whitelist() const;
+  ::enterprise_management::UserWhitelistProto* _internal_mutable_user_whitelist();
+  public:
+
+  // optional .enterprise_management.GuestModeEnabledProto guest_mode_enabled = 3;
+  bool has_guest_mode_enabled() const;
+  private:
+  bool _internal_has_guest_mode_enabled() const;
+  public:
+  void clear_guest_mode_enabled();
+  const ::enterprise_management::GuestModeEnabledProto& guest_mode_enabled() const;
+  ::enterprise_management::GuestModeEnabledProto* release_guest_mode_enabled();
+  ::enterprise_management::GuestModeEnabledProto* mutable_guest_mode_enabled();
+  void set_allocated_guest_mode_enabled(::enterprise_management::GuestModeEnabledProto* guest_mode_enabled);
+  private:
+  const ::enterprise_management::GuestModeEnabledProto& _internal_guest_mode_enabled() const;
+  ::enterprise_management::GuestModeEnabledProto* _internal_mutable_guest_mode_enabled();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_DeviceProxySettingsProto device_proxy_settings = 4 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_device_proxy_settings() const;
+  private:
+  bool _internal_has_device_proxy_settings() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_device_proxy_settings();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_DeviceProxySettingsProto& device_proxy_settings() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* release_device_proxy_settings();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* mutable_device_proxy_settings();
+  PROTOBUF_DEPRECATED void set_allocated_device_proxy_settings(::enterprise_management::OBSOLETE_DeviceProxySettingsProto* device_proxy_settings);
+  private:
+  const ::enterprise_management::OBSOLETE_DeviceProxySettingsProto& _internal_device_proxy_settings() const;
+  ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* _internal_mutable_device_proxy_settings();
+  public:
+
+  // optional .enterprise_management.CameraEnabledProto camera_enabled = 5;
+  bool has_camera_enabled() const;
+  private:
+  bool _internal_has_camera_enabled() const;
+  public:
+  void clear_camera_enabled();
+  const ::enterprise_management::CameraEnabledProto& camera_enabled() const;
+  ::enterprise_management::CameraEnabledProto* release_camera_enabled();
+  ::enterprise_management::CameraEnabledProto* mutable_camera_enabled();
+  void set_allocated_camera_enabled(::enterprise_management::CameraEnabledProto* camera_enabled);
+  private:
+  const ::enterprise_management::CameraEnabledProto& _internal_camera_enabled() const;
+  ::enterprise_management::CameraEnabledProto* _internal_mutable_camera_enabled();
+  public:
+
+  // optional .enterprise_management.ShowUserNamesOnSigninProto show_user_names = 6;
+  bool has_show_user_names() const;
+  private:
+  bool _internal_has_show_user_names() const;
+  public:
+  void clear_show_user_names();
+  const ::enterprise_management::ShowUserNamesOnSigninProto& show_user_names() const;
+  ::enterprise_management::ShowUserNamesOnSigninProto* release_show_user_names();
+  ::enterprise_management::ShowUserNamesOnSigninProto* mutable_show_user_names();
+  void set_allocated_show_user_names(::enterprise_management::ShowUserNamesOnSigninProto* show_user_names);
+  private:
+  const ::enterprise_management::ShowUserNamesOnSigninProto& _internal_show_user_names() const;
+  ::enterprise_management::ShowUserNamesOnSigninProto* _internal_mutable_show_user_names();
+  public:
+
+  // optional .enterprise_management.DataRoamingEnabledProto data_roaming_enabled = 7;
+  bool has_data_roaming_enabled() const;
+  private:
+  bool _internal_has_data_roaming_enabled() const;
+  public:
+  void clear_data_roaming_enabled();
+  const ::enterprise_management::DataRoamingEnabledProto& data_roaming_enabled() const;
+  ::enterprise_management::DataRoamingEnabledProto* release_data_roaming_enabled();
+  ::enterprise_management::DataRoamingEnabledProto* mutable_data_roaming_enabled();
+  void set_allocated_data_roaming_enabled(::enterprise_management::DataRoamingEnabledProto* data_roaming_enabled);
+  private:
+  const ::enterprise_management::DataRoamingEnabledProto& _internal_data_roaming_enabled() const;
+  ::enterprise_management::DataRoamingEnabledProto* _internal_mutable_data_roaming_enabled();
+  public:
+
+  // optional .enterprise_management.AllowNewUsersProto allow_new_users = 8;
+  bool has_allow_new_users() const;
+  private:
+  bool _internal_has_allow_new_users() const;
+  public:
+  void clear_allow_new_users();
+  const ::enterprise_management::AllowNewUsersProto& allow_new_users() const;
+  ::enterprise_management::AllowNewUsersProto* release_allow_new_users();
+  ::enterprise_management::AllowNewUsersProto* mutable_allow_new_users();
+  void set_allocated_allow_new_users(::enterprise_management::AllowNewUsersProto* allow_new_users);
+  private:
+  const ::enterprise_management::AllowNewUsersProto& _internal_allow_new_users() const;
+  ::enterprise_management::AllowNewUsersProto* _internal_mutable_allow_new_users();
+  public:
+
+  // optional .enterprise_management.MetricsEnabledProto metrics_enabled = 9;
+  bool has_metrics_enabled() const;
+  private:
+  bool _internal_has_metrics_enabled() const;
+  public:
+  void clear_metrics_enabled();
+  const ::enterprise_management::MetricsEnabledProto& metrics_enabled() const;
+  ::enterprise_management::MetricsEnabledProto* release_metrics_enabled();
+  ::enterprise_management::MetricsEnabledProto* mutable_metrics_enabled();
+  void set_allocated_metrics_enabled(::enterprise_management::MetricsEnabledProto* metrics_enabled);
+  private:
+  const ::enterprise_management::MetricsEnabledProto& _internal_metrics_enabled() const;
+  ::enterprise_management::MetricsEnabledProto* _internal_mutable_metrics_enabled();
+  public:
+
+  // optional .enterprise_management.ReleaseChannelProto release_channel = 10;
+  bool has_release_channel() const;
+  private:
+  bool _internal_has_release_channel() const;
+  public:
+  void clear_release_channel();
+  const ::enterprise_management::ReleaseChannelProto& release_channel() const;
+  ::enterprise_management::ReleaseChannelProto* release_release_channel();
+  ::enterprise_management::ReleaseChannelProto* mutable_release_channel();
+  void set_allocated_release_channel(::enterprise_management::ReleaseChannelProto* release_channel);
+  private:
+  const ::enterprise_management::ReleaseChannelProto& _internal_release_channel() const;
+  ::enterprise_management::ReleaseChannelProto* _internal_mutable_release_channel();
+  public:
+
+  // optional .enterprise_management.DeviceOpenNetworkConfigurationProto open_network_configuration = 11;
+  bool has_open_network_configuration() const;
+  private:
+  bool _internal_has_open_network_configuration() const;
+  public:
+  void clear_open_network_configuration();
+  const ::enterprise_management::DeviceOpenNetworkConfigurationProto& open_network_configuration() const;
+  ::enterprise_management::DeviceOpenNetworkConfigurationProto* release_open_network_configuration();
+  ::enterprise_management::DeviceOpenNetworkConfigurationProto* mutable_open_network_configuration();
+  void set_allocated_open_network_configuration(::enterprise_management::DeviceOpenNetworkConfigurationProto* open_network_configuration);
+  private:
+  const ::enterprise_management::DeviceOpenNetworkConfigurationProto& _internal_open_network_configuration() const;
+  ::enterprise_management::DeviceOpenNetworkConfigurationProto* _internal_mutable_open_network_configuration();
+  public:
+
+  // optional .enterprise_management.DeviceReportingProto device_reporting = 12;
+  bool has_device_reporting() const;
+  private:
+  bool _internal_has_device_reporting() const;
+  public:
+  void clear_device_reporting();
+  const ::enterprise_management::DeviceReportingProto& device_reporting() const;
+  ::enterprise_management::DeviceReportingProto* release_device_reporting();
+  ::enterprise_management::DeviceReportingProto* mutable_device_reporting();
+  void set_allocated_device_reporting(::enterprise_management::DeviceReportingProto* device_reporting);
+  private:
+  const ::enterprise_management::DeviceReportingProto& _internal_device_reporting() const;
+  ::enterprise_management::DeviceReportingProto* _internal_mutable_device_reporting();
+  public:
+
+  // optional .enterprise_management.EphemeralUsersEnabledProto ephemeral_users_enabled = 13;
+  bool has_ephemeral_users_enabled() const;
+  private:
+  bool _internal_has_ephemeral_users_enabled() const;
+  public:
+  void clear_ephemeral_users_enabled();
+  const ::enterprise_management::EphemeralUsersEnabledProto& ephemeral_users_enabled() const;
+  ::enterprise_management::EphemeralUsersEnabledProto* release_ephemeral_users_enabled();
+  ::enterprise_management::EphemeralUsersEnabledProto* mutable_ephemeral_users_enabled();
+  void set_allocated_ephemeral_users_enabled(::enterprise_management::EphemeralUsersEnabledProto* ephemeral_users_enabled);
+  private:
+  const ::enterprise_management::EphemeralUsersEnabledProto& _internal_ephemeral_users_enabled() const;
+  ::enterprise_management::EphemeralUsersEnabledProto* _internal_mutable_ephemeral_users_enabled();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_AppPackProto app_pack = 14 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_app_pack() const;
+  private:
+  bool _internal_has_app_pack() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_app_pack();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_AppPackProto& app_pack() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_AppPackProto* release_app_pack();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_AppPackProto* mutable_app_pack();
+  PROTOBUF_DEPRECATED void set_allocated_app_pack(::enterprise_management::OBSOLETE_AppPackProto* app_pack);
+  private:
+  const ::enterprise_management::OBSOLETE_AppPackProto& _internal_app_pack() const;
+  ::enterprise_management::OBSOLETE_AppPackProto* _internal_mutable_app_pack();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto forced_logout_timeouts = 15 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_forced_logout_timeouts() const;
+  private:
+  bool _internal_has_forced_logout_timeouts() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_forced_logout_timeouts();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto& forced_logout_timeouts() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* release_forced_logout_timeouts();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* mutable_forced_logout_timeouts();
+  PROTOBUF_DEPRECATED void set_allocated_forced_logout_timeouts(::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* forced_logout_timeouts);
+  private:
+  const ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto& _internal_forced_logout_timeouts() const;
+  ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* _internal_mutable_forced_logout_timeouts();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_ScreenSaverProto login_screen_saver = 16 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_login_screen_saver() const;
+  private:
+  bool _internal_has_login_screen_saver() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_login_screen_saver();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_ScreenSaverProto& login_screen_saver() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_ScreenSaverProto* release_login_screen_saver();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_ScreenSaverProto* mutable_login_screen_saver();
+  PROTOBUF_DEPRECATED void set_allocated_login_screen_saver(::enterprise_management::OBSOLETE_ScreenSaverProto* login_screen_saver);
+  private:
+  const ::enterprise_management::OBSOLETE_ScreenSaverProto& _internal_login_screen_saver() const;
+  ::enterprise_management::OBSOLETE_ScreenSaverProto* _internal_mutable_login_screen_saver();
+  public:
+
+  // optional .enterprise_management.AutoUpdateSettingsProto auto_update_settings = 17;
+  bool has_auto_update_settings() const;
+  private:
+  bool _internal_has_auto_update_settings() const;
+  public:
+  void clear_auto_update_settings();
+  const ::enterprise_management::AutoUpdateSettingsProto& auto_update_settings() const;
+  ::enterprise_management::AutoUpdateSettingsProto* release_auto_update_settings();
+  ::enterprise_management::AutoUpdateSettingsProto* mutable_auto_update_settings();
+  void set_allocated_auto_update_settings(::enterprise_management::AutoUpdateSettingsProto* auto_update_settings);
+  private:
+  const ::enterprise_management::AutoUpdateSettingsProto& _internal_auto_update_settings() const;
+  ::enterprise_management::AutoUpdateSettingsProto* _internal_mutable_auto_update_settings();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_StartUpUrlsProto start_up_urls = 18 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_start_up_urls() const;
+  private:
+  bool _internal_has_start_up_urls() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_start_up_urls();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_StartUpUrlsProto& start_up_urls() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_StartUpUrlsProto* release_start_up_urls();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_StartUpUrlsProto* mutable_start_up_urls();
+  PROTOBUF_DEPRECATED void set_allocated_start_up_urls(::enterprise_management::OBSOLETE_StartUpUrlsProto* start_up_urls);
+  private:
+  const ::enterprise_management::OBSOLETE_StartUpUrlsProto& _internal_start_up_urls() const;
+  ::enterprise_management::OBSOLETE_StartUpUrlsProto* _internal_mutable_start_up_urls();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_PinnedAppsProto pinned_apps = 19 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_pinned_apps() const;
+  private:
+  bool _internal_has_pinned_apps() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_pinned_apps();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_PinnedAppsProto& pinned_apps() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_PinnedAppsProto* release_pinned_apps();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_PinnedAppsProto* mutable_pinned_apps();
+  PROTOBUF_DEPRECATED void set_allocated_pinned_apps(::enterprise_management::OBSOLETE_PinnedAppsProto* pinned_apps);
+  private:
+  const ::enterprise_management::OBSOLETE_PinnedAppsProto& _internal_pinned_apps() const;
+  ::enterprise_management::OBSOLETE_PinnedAppsProto* _internal_mutable_pinned_apps();
+  public:
+
+  // optional .enterprise_management.SystemTimezoneProto system_timezone = 20;
+  bool has_system_timezone() const;
+  private:
+  bool _internal_has_system_timezone() const;
+  public:
+  void clear_system_timezone();
+  const ::enterprise_management::SystemTimezoneProto& system_timezone() const;
+  ::enterprise_management::SystemTimezoneProto* release_system_timezone();
+  ::enterprise_management::SystemTimezoneProto* mutable_system_timezone();
+  void set_allocated_system_timezone(::enterprise_management::SystemTimezoneProto* system_timezone);
+  private:
+  const ::enterprise_management::SystemTimezoneProto& _internal_system_timezone() const;
+  ::enterprise_management::SystemTimezoneProto* _internal_mutable_system_timezone();
+  public:
+
+  // optional .enterprise_management.DeviceLocalAccountsProto device_local_accounts = 21;
+  bool has_device_local_accounts() const;
+  private:
+  bool _internal_has_device_local_accounts() const;
+  public:
+  void clear_device_local_accounts();
+  const ::enterprise_management::DeviceLocalAccountsProto& device_local_accounts() const;
+  ::enterprise_management::DeviceLocalAccountsProto* release_device_local_accounts();
+  ::enterprise_management::DeviceLocalAccountsProto* mutable_device_local_accounts();
+  void set_allocated_device_local_accounts(::enterprise_management::DeviceLocalAccountsProto* device_local_accounts);
+  private:
+  const ::enterprise_management::DeviceLocalAccountsProto& _internal_device_local_accounts() const;
+  ::enterprise_management::DeviceLocalAccountsProto* _internal_mutable_device_local_accounts();
+  public:
+
+  // optional .enterprise_management.AllowRedeemChromeOsRegistrationOffersProto allow_redeem_offers = 22;
+  bool has_allow_redeem_offers() const;
+  private:
+  bool _internal_has_allow_redeem_offers() const;
+  public:
+  void clear_allow_redeem_offers();
+  const ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto& allow_redeem_offers() const;
+  ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* release_allow_redeem_offers();
+  ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* mutable_allow_redeem_offers();
+  void set_allocated_allow_redeem_offers(::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* allow_redeem_offers);
+  private:
+  const ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto& _internal_allow_redeem_offers() const;
+  ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* _internal_mutable_allow_redeem_offers();
+  public:
+
+  // optional .enterprise_management.FeatureFlagsProto feature_flags = 23;
+  bool has_feature_flags() const;
+  private:
+  bool _internal_has_feature_flags() const;
+  public:
+  void clear_feature_flags();
+  const ::enterprise_management::FeatureFlagsProto& feature_flags() const;
+  ::enterprise_management::FeatureFlagsProto* release_feature_flags();
+  ::enterprise_management::FeatureFlagsProto* mutable_feature_flags();
+  void set_allocated_feature_flags(::enterprise_management::FeatureFlagsProto* feature_flags);
+  private:
+  const ::enterprise_management::FeatureFlagsProto& _internal_feature_flags() const;
+  ::enterprise_management::FeatureFlagsProto* _internal_mutable_feature_flags();
+  public:
+
+  // optional .enterprise_management.UptimeLimitProto uptime_limit = 24;
+  bool has_uptime_limit() const;
+  private:
+  bool _internal_has_uptime_limit() const;
+  public:
+  void clear_uptime_limit();
+  const ::enterprise_management::UptimeLimitProto& uptime_limit() const;
+  ::enterprise_management::UptimeLimitProto* release_uptime_limit();
+  ::enterprise_management::UptimeLimitProto* mutable_uptime_limit();
+  void set_allocated_uptime_limit(::enterprise_management::UptimeLimitProto* uptime_limit);
+  private:
+  const ::enterprise_management::UptimeLimitProto& _internal_uptime_limit() const;
+  ::enterprise_management::UptimeLimitProto* _internal_mutable_uptime_limit();
+  public:
+
+  // optional .enterprise_management.VariationsParameterProto variations_parameter = 25;
+  bool has_variations_parameter() const;
+  private:
+  bool _internal_has_variations_parameter() const;
+  public:
+  void clear_variations_parameter();
+  const ::enterprise_management::VariationsParameterProto& variations_parameter() const;
+  ::enterprise_management::VariationsParameterProto* release_variations_parameter();
+  ::enterprise_management::VariationsParameterProto* mutable_variations_parameter();
+  void set_allocated_variations_parameter(::enterprise_management::VariationsParameterProto* variations_parameter);
+  private:
+  const ::enterprise_management::VariationsParameterProto& _internal_variations_parameter() const;
+  ::enterprise_management::VariationsParameterProto* _internal_mutable_variations_parameter();
+  public:
+
+  // optional .enterprise_management.AttestationSettingsProto attestation_settings = 26;
+  bool has_attestation_settings() const;
+  private:
+  bool _internal_has_attestation_settings() const;
+  public:
+  void clear_attestation_settings();
+  const ::enterprise_management::AttestationSettingsProto& attestation_settings() const;
+  ::enterprise_management::AttestationSettingsProto* release_attestation_settings();
+  ::enterprise_management::AttestationSettingsProto* mutable_attestation_settings();
+  void set_allocated_attestation_settings(::enterprise_management::AttestationSettingsProto* attestation_settings);
+  private:
+  const ::enterprise_management::AttestationSettingsProto& _internal_attestation_settings() const;
+  ::enterprise_management::AttestationSettingsProto* _internal_mutable_attestation_settings();
+  public:
+
+  // optional .enterprise_management.AccessibilitySettingsProto accessibility_settings = 27;
+  bool has_accessibility_settings() const;
+  private:
+  bool _internal_has_accessibility_settings() const;
+  public:
+  void clear_accessibility_settings();
+  const ::enterprise_management::AccessibilitySettingsProto& accessibility_settings() const;
+  ::enterprise_management::AccessibilitySettingsProto* release_accessibility_settings();
+  ::enterprise_management::AccessibilitySettingsProto* mutable_accessibility_settings();
+  void set_allocated_accessibility_settings(::enterprise_management::AccessibilitySettingsProto* accessibility_settings);
+  private:
+  const ::enterprise_management::AccessibilitySettingsProto& _internal_accessibility_settings() const;
+  ::enterprise_management::AccessibilitySettingsProto* _internal_mutable_accessibility_settings();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_SupervisedUsersSettingsProto supervised_users_settings = 28 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_supervised_users_settings() const;
+  private:
+  bool _internal_has_supervised_users_settings() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_supervised_users_settings();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto& supervised_users_settings() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* release_supervised_users_settings();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* mutable_supervised_users_settings();
+  PROTOBUF_DEPRECATED void set_allocated_supervised_users_settings(::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* supervised_users_settings);
+  private:
+  const ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto& _internal_supervised_users_settings() const;
+  ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* _internal_mutable_supervised_users_settings();
+  public:
+
+  // optional .enterprise_management.LoginScreenPowerManagementProto login_screen_power_management = 29;
+  bool has_login_screen_power_management() const;
+  private:
+  bool _internal_has_login_screen_power_management() const;
+  public:
+  void clear_login_screen_power_management();
+  const ::enterprise_management::LoginScreenPowerManagementProto& login_screen_power_management() const;
+  ::enterprise_management::LoginScreenPowerManagementProto* release_login_screen_power_management();
+  ::enterprise_management::LoginScreenPowerManagementProto* mutable_login_screen_power_management();
+  void set_allocated_login_screen_power_management(::enterprise_management::LoginScreenPowerManagementProto* login_screen_power_management);
+  private:
+  const ::enterprise_management::LoginScreenPowerManagementProto& _internal_login_screen_power_management() const;
+  ::enterprise_management::LoginScreenPowerManagementProto* _internal_mutable_login_screen_power_management();
+  public:
+
+  // optional .enterprise_management.SystemUse24HourClockProto use_24hour_clock = 30;
+  bool has_use_24hour_clock() const;
+  private:
+  bool _internal_has_use_24hour_clock() const;
+  public:
+  void clear_use_24hour_clock();
+  const ::enterprise_management::SystemUse24HourClockProto& use_24hour_clock() const;
+  ::enterprise_management::SystemUse24HourClockProto* release_use_24hour_clock();
+  ::enterprise_management::SystemUse24HourClockProto* mutable_use_24hour_clock();
+  void set_allocated_use_24hour_clock(::enterprise_management::SystemUse24HourClockProto* use_24hour_clock);
+  private:
+  const ::enterprise_management::SystemUse24HourClockProto& _internal_use_24hour_clock() const;
+  ::enterprise_management::SystemUse24HourClockProto* _internal_mutable_use_24hour_clock();
+  public:
+
+  // optional .enterprise_management.AutoCleanupSettigsProto auto_clean_up_settings = 31;
+  bool has_auto_clean_up_settings() const;
+  private:
+  bool _internal_has_auto_clean_up_settings() const;
+  public:
+  void clear_auto_clean_up_settings();
+  const ::enterprise_management::AutoCleanupSettigsProto& auto_clean_up_settings() const;
+  ::enterprise_management::AutoCleanupSettigsProto* release_auto_clean_up_settings();
+  ::enterprise_management::AutoCleanupSettigsProto* mutable_auto_clean_up_settings();
+  void set_allocated_auto_clean_up_settings(::enterprise_management::AutoCleanupSettigsProto* auto_clean_up_settings);
+  private:
+  const ::enterprise_management::AutoCleanupSettigsProto& _internal_auto_clean_up_settings() const;
+  ::enterprise_management::AutoCleanupSettigsProto* _internal_mutable_auto_clean_up_settings();
+  public:
+
+  // optional .enterprise_management.SystemSettingsProto system_settings = 32;
+  bool has_system_settings() const;
+  private:
+  bool _internal_has_system_settings() const;
+  public:
+  void clear_system_settings();
+  const ::enterprise_management::SystemSettingsProto& system_settings() const;
+  ::enterprise_management::SystemSettingsProto* release_system_settings();
+  ::enterprise_management::SystemSettingsProto* mutable_system_settings();
+  void set_allocated_system_settings(::enterprise_management::SystemSettingsProto* system_settings);
+  private:
+  const ::enterprise_management::SystemSettingsProto& _internal_system_settings() const;
+  ::enterprise_management::SystemSettingsProto* _internal_mutable_system_settings();
+  public:
+
+  // optional .enterprise_management.SAMLSettingsProto saml_settings = 33;
+  bool has_saml_settings() const;
+  private:
+  bool _internal_has_saml_settings() const;
+  public:
+  void clear_saml_settings();
+  const ::enterprise_management::SAMLSettingsProto& saml_settings() const;
+  ::enterprise_management::SAMLSettingsProto* release_saml_settings();
+  ::enterprise_management::SAMLSettingsProto* mutable_saml_settings();
+  void set_allocated_saml_settings(::enterprise_management::SAMLSettingsProto* saml_settings);
+  private:
+  const ::enterprise_management::SAMLSettingsProto& _internal_saml_settings() const;
+  ::enterprise_management::SAMLSettingsProto* _internal_mutable_saml_settings();
+  public:
+
+  // optional .enterprise_management.RebootOnShutdownProto reboot_on_shutdown = 34;
+  bool has_reboot_on_shutdown() const;
+  private:
+  bool _internal_has_reboot_on_shutdown() const;
+  public:
+  void clear_reboot_on_shutdown();
+  const ::enterprise_management::RebootOnShutdownProto& reboot_on_shutdown() const;
+  ::enterprise_management::RebootOnShutdownProto* release_reboot_on_shutdown();
+  ::enterprise_management::RebootOnShutdownProto* mutable_reboot_on_shutdown();
+  void set_allocated_reboot_on_shutdown(::enterprise_management::RebootOnShutdownProto* reboot_on_shutdown);
+  private:
+  const ::enterprise_management::RebootOnShutdownProto& _internal_reboot_on_shutdown() const;
+  ::enterprise_management::RebootOnShutdownProto* _internal_mutable_reboot_on_shutdown();
+  public:
+
+  // optional .enterprise_management.DeviceHeartbeatSettingsProto device_heartbeat_settings = 35;
+  bool has_device_heartbeat_settings() const;
+  private:
+  bool _internal_has_device_heartbeat_settings() const;
+  public:
+  void clear_device_heartbeat_settings();
+  const ::enterprise_management::DeviceHeartbeatSettingsProto& device_heartbeat_settings() const;
+  ::enterprise_management::DeviceHeartbeatSettingsProto* release_device_heartbeat_settings();
+  ::enterprise_management::DeviceHeartbeatSettingsProto* mutable_device_heartbeat_settings();
+  void set_allocated_device_heartbeat_settings(::enterprise_management::DeviceHeartbeatSettingsProto* device_heartbeat_settings);
+  private:
+  const ::enterprise_management::DeviceHeartbeatSettingsProto& _internal_device_heartbeat_settings() const;
+  ::enterprise_management::DeviceHeartbeatSettingsProto* _internal_mutable_device_heartbeat_settings();
+  public:
+
+  // optional .enterprise_management.ExtensionCacheSizeProto extension_cache_size = 36;
+  bool has_extension_cache_size() const;
+  private:
+  bool _internal_has_extension_cache_size() const;
+  public:
+  void clear_extension_cache_size();
+  const ::enterprise_management::ExtensionCacheSizeProto& extension_cache_size() const;
+  ::enterprise_management::ExtensionCacheSizeProto* release_extension_cache_size();
+  ::enterprise_management::ExtensionCacheSizeProto* mutable_extension_cache_size();
+  void set_allocated_extension_cache_size(::enterprise_management::ExtensionCacheSizeProto* extension_cache_size);
+  private:
+  const ::enterprise_management::ExtensionCacheSizeProto& _internal_extension_cache_size() const;
+  ::enterprise_management::ExtensionCacheSizeProto* _internal_mutable_extension_cache_size();
+  public:
+
+  // optional .enterprise_management.LoginScreenDomainAutoCompleteProto login_screen_domain_auto_complete = 37;
+  bool has_login_screen_domain_auto_complete() const;
+  private:
+  bool _internal_has_login_screen_domain_auto_complete() const;
+  public:
+  void clear_login_screen_domain_auto_complete();
+  const ::enterprise_management::LoginScreenDomainAutoCompleteProto& login_screen_domain_auto_complete() const;
+  ::enterprise_management::LoginScreenDomainAutoCompleteProto* release_login_screen_domain_auto_complete();
+  ::enterprise_management::LoginScreenDomainAutoCompleteProto* mutable_login_screen_domain_auto_complete();
+  void set_allocated_login_screen_domain_auto_complete(::enterprise_management::LoginScreenDomainAutoCompleteProto* login_screen_domain_auto_complete);
+  private:
+  const ::enterprise_management::LoginScreenDomainAutoCompleteProto& _internal_login_screen_domain_auto_complete() const;
+  ::enterprise_management::LoginScreenDomainAutoCompleteProto* _internal_mutable_login_screen_domain_auto_complete();
+  public:
+
+  // optional .enterprise_management.DeviceLogUploadSettingsProto device_log_upload_settings = 38;
+  bool has_device_log_upload_settings() const;
+  private:
+  bool _internal_has_device_log_upload_settings() const;
+  public:
+  void clear_device_log_upload_settings();
+  const ::enterprise_management::DeviceLogUploadSettingsProto& device_log_upload_settings() const;
+  ::enterprise_management::DeviceLogUploadSettingsProto* release_device_log_upload_settings();
+  ::enterprise_management::DeviceLogUploadSettingsProto* mutable_device_log_upload_settings();
+  void set_allocated_device_log_upload_settings(::enterprise_management::DeviceLogUploadSettingsProto* device_log_upload_settings);
+  private:
+  const ::enterprise_management::DeviceLogUploadSettingsProto& _internal_device_log_upload_settings() const;
+  ::enterprise_management::DeviceLogUploadSettingsProto* _internal_mutable_device_log_upload_settings();
+  public:
+
+  // optional .enterprise_management.DisplayRotationDefaultProto display_rotation_default = 39;
+  bool has_display_rotation_default() const;
+  private:
+  bool _internal_has_display_rotation_default() const;
+  public:
+  void clear_display_rotation_default();
+  const ::enterprise_management::DisplayRotationDefaultProto& display_rotation_default() const;
+  ::enterprise_management::DisplayRotationDefaultProto* release_display_rotation_default();
+  ::enterprise_management::DisplayRotationDefaultProto* mutable_display_rotation_default();
+  void set_allocated_display_rotation_default(::enterprise_management::DisplayRotationDefaultProto* display_rotation_default);
+  private:
+  const ::enterprise_management::DisplayRotationDefaultProto& _internal_display_rotation_default() const;
+  ::enterprise_management::DisplayRotationDefaultProto* _internal_mutable_display_rotation_default();
+  public:
+
+  // optional .enterprise_management.AllowKioskAppControlChromeVersionProto allow_kiosk_app_control_chrome_version = 40;
+  bool has_allow_kiosk_app_control_chrome_version() const;
+  private:
+  bool _internal_has_allow_kiosk_app_control_chrome_version() const;
+  public:
+  void clear_allow_kiosk_app_control_chrome_version();
+  const ::enterprise_management::AllowKioskAppControlChromeVersionProto& allow_kiosk_app_control_chrome_version() const;
+  ::enterprise_management::AllowKioskAppControlChromeVersionProto* release_allow_kiosk_app_control_chrome_version();
+  ::enterprise_management::AllowKioskAppControlChromeVersionProto* mutable_allow_kiosk_app_control_chrome_version();
+  void set_allocated_allow_kiosk_app_control_chrome_version(::enterprise_management::AllowKioskAppControlChromeVersionProto* allow_kiosk_app_control_chrome_version);
+  private:
+  const ::enterprise_management::AllowKioskAppControlChromeVersionProto& _internal_allow_kiosk_app_control_chrome_version() const;
+  ::enterprise_management::AllowKioskAppControlChromeVersionProto* _internal_mutable_allow_kiosk_app_control_chrome_version();
+  public:
+
+  // optional .enterprise_management.LoginAuthenticationBehaviorProto login_authentication_behavior = 41;
+  bool has_login_authentication_behavior() const;
+  private:
+  bool _internal_has_login_authentication_behavior() const;
+  public:
+  void clear_login_authentication_behavior();
+  const ::enterprise_management::LoginAuthenticationBehaviorProto& login_authentication_behavior() const;
+  ::enterprise_management::LoginAuthenticationBehaviorProto* release_login_authentication_behavior();
+  ::enterprise_management::LoginAuthenticationBehaviorProto* mutable_login_authentication_behavior();
+  void set_allocated_login_authentication_behavior(::enterprise_management::LoginAuthenticationBehaviorProto* login_authentication_behavior);
+  private:
+  const ::enterprise_management::LoginAuthenticationBehaviorProto& _internal_login_authentication_behavior() const;
+  ::enterprise_management::LoginAuthenticationBehaviorProto* _internal_mutable_login_authentication_behavior();
+  public:
+
+  // optional .enterprise_management.UsbDetachableWhitelistProto usb_detachable_whitelist = 42;
+  bool has_usb_detachable_whitelist() const;
+  private:
+  bool _internal_has_usb_detachable_whitelist() const;
+  public:
+  void clear_usb_detachable_whitelist();
+  const ::enterprise_management::UsbDetachableWhitelistProto& usb_detachable_whitelist() const;
+  ::enterprise_management::UsbDetachableWhitelistProto* release_usb_detachable_whitelist();
+  ::enterprise_management::UsbDetachableWhitelistProto* mutable_usb_detachable_whitelist();
+  void set_allocated_usb_detachable_whitelist(::enterprise_management::UsbDetachableWhitelistProto* usb_detachable_whitelist);
+  private:
+  const ::enterprise_management::UsbDetachableWhitelistProto& _internal_usb_detachable_whitelist() const;
+  ::enterprise_management::UsbDetachableWhitelistProto* _internal_mutable_usb_detachable_whitelist();
+  public:
+
+  // optional .enterprise_management.AllowBluetoothProto allow_bluetooth = 43;
+  bool has_allow_bluetooth() const;
+  private:
+  bool _internal_has_allow_bluetooth() const;
+  public:
+  void clear_allow_bluetooth();
+  const ::enterprise_management::AllowBluetoothProto& allow_bluetooth() const;
+  ::enterprise_management::AllowBluetoothProto* release_allow_bluetooth();
+  ::enterprise_management::AllowBluetoothProto* mutable_allow_bluetooth();
+  void set_allocated_allow_bluetooth(::enterprise_management::AllowBluetoothProto* allow_bluetooth);
+  private:
+  const ::enterprise_management::AllowBluetoothProto& _internal_allow_bluetooth() const;
+  ::enterprise_management::AllowBluetoothProto* _internal_mutable_allow_bluetooth();
+  public:
+
+  // optional .enterprise_management.DeviceQuirksDownloadEnabledProto quirks_download_enabled = 44;
+  bool has_quirks_download_enabled() const;
+  private:
+  bool _internal_has_quirks_download_enabled() const;
+  public:
+  void clear_quirks_download_enabled();
+  const ::enterprise_management::DeviceQuirksDownloadEnabledProto& quirks_download_enabled() const;
+  ::enterprise_management::DeviceQuirksDownloadEnabledProto* release_quirks_download_enabled();
+  ::enterprise_management::DeviceQuirksDownloadEnabledProto* mutable_quirks_download_enabled();
+  void set_allocated_quirks_download_enabled(::enterprise_management::DeviceQuirksDownloadEnabledProto* quirks_download_enabled);
+  private:
+  const ::enterprise_management::DeviceQuirksDownloadEnabledProto& _internal_quirks_download_enabled() const;
+  ::enterprise_management::DeviceQuirksDownloadEnabledProto* _internal_mutable_quirks_download_enabled();
+  public:
+
+  // optional .enterprise_management.LoginVideoCaptureAllowedUrlsProto login_video_capture_allowed_urls = 45;
+  bool has_login_video_capture_allowed_urls() const;
+  private:
+  bool _internal_has_login_video_capture_allowed_urls() const;
+  public:
+  void clear_login_video_capture_allowed_urls();
+  const ::enterprise_management::LoginVideoCaptureAllowedUrlsProto& login_video_capture_allowed_urls() const;
+  ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* release_login_video_capture_allowed_urls();
+  ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* mutable_login_video_capture_allowed_urls();
+  void set_allocated_login_video_capture_allowed_urls(::enterprise_management::LoginVideoCaptureAllowedUrlsProto* login_video_capture_allowed_urls);
+  private:
+  const ::enterprise_management::LoginVideoCaptureAllowedUrlsProto& _internal_login_video_capture_allowed_urls() const;
+  ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* _internal_mutable_login_video_capture_allowed_urls();
+  public:
+
+  // optional .enterprise_management.DeviceLoginScreenExtensionsProto device_login_screen_extensions = 46;
+  bool has_device_login_screen_extensions() const;
+  private:
+  bool _internal_has_device_login_screen_extensions() const;
+  public:
+  void clear_device_login_screen_extensions();
+  const ::enterprise_management::DeviceLoginScreenExtensionsProto& device_login_screen_extensions() const;
+  ::enterprise_management::DeviceLoginScreenExtensionsProto* release_device_login_screen_extensions();
+  ::enterprise_management::DeviceLoginScreenExtensionsProto* mutable_device_login_screen_extensions();
+  void set_allocated_device_login_screen_extensions(::enterprise_management::DeviceLoginScreenExtensionsProto* device_login_screen_extensions);
+  private:
+  const ::enterprise_management::DeviceLoginScreenExtensionsProto& _internal_device_login_screen_extensions() const;
+  ::enterprise_management::DeviceLoginScreenExtensionsProto* _internal_mutable_device_login_screen_extensions();
+  public:
+
+  // optional .enterprise_management.NetworkThrottlingEnabledProto network_throttling = 47;
+  bool has_network_throttling() const;
+  private:
+  bool _internal_has_network_throttling() const;
+  public:
+  void clear_network_throttling();
+  const ::enterprise_management::NetworkThrottlingEnabledProto& network_throttling() const;
+  ::enterprise_management::NetworkThrottlingEnabledProto* release_network_throttling();
+  ::enterprise_management::NetworkThrottlingEnabledProto* mutable_network_throttling();
+  void set_allocated_network_throttling(::enterprise_management::NetworkThrottlingEnabledProto* network_throttling);
+  private:
+  const ::enterprise_management::NetworkThrottlingEnabledProto& _internal_network_throttling() const;
+  ::enterprise_management::NetworkThrottlingEnabledProto* _internal_mutable_network_throttling();
+  public:
+
+  // optional .enterprise_management.DeviceWallpaperImageProto device_wallpaper_image = 48;
+  bool has_device_wallpaper_image() const;
+  private:
+  bool _internal_has_device_wallpaper_image() const;
+  public:
+  void clear_device_wallpaper_image();
+  const ::enterprise_management::DeviceWallpaperImageProto& device_wallpaper_image() const;
+  ::enterprise_management::DeviceWallpaperImageProto* release_device_wallpaper_image();
+  ::enterprise_management::DeviceWallpaperImageProto* mutable_device_wallpaper_image();
+  void set_allocated_device_wallpaper_image(::enterprise_management::DeviceWallpaperImageProto* device_wallpaper_image);
+  private:
+  const ::enterprise_management::DeviceWallpaperImageProto& _internal_device_wallpaper_image() const;
+  ::enterprise_management::DeviceWallpaperImageProto* _internal_mutable_device_wallpaper_image();
+  public:
+
+  // optional .enterprise_management.LoginScreenLocalesProto login_screen_locales = 49;
+  bool has_login_screen_locales() const;
+  private:
+  bool _internal_has_login_screen_locales() const;
+  public:
+  void clear_login_screen_locales();
+  const ::enterprise_management::LoginScreenLocalesProto& login_screen_locales() const;
+  ::enterprise_management::LoginScreenLocalesProto* release_login_screen_locales();
+  ::enterprise_management::LoginScreenLocalesProto* mutable_login_screen_locales();
+  void set_allocated_login_screen_locales(::enterprise_management::LoginScreenLocalesProto* login_screen_locales);
+  private:
+  const ::enterprise_management::LoginScreenLocalesProto& _internal_login_screen_locales() const;
+  ::enterprise_management::LoginScreenLocalesProto* _internal_mutable_login_screen_locales();
+  public:
+
+  // optional .enterprise_management.LoginScreenInputMethodsProto login_screen_input_methods = 50;
+  bool has_login_screen_input_methods() const;
+  private:
+  bool _internal_has_login_screen_input_methods() const;
+  public:
+  void clear_login_screen_input_methods();
+  const ::enterprise_management::LoginScreenInputMethodsProto& login_screen_input_methods() const;
+  ::enterprise_management::LoginScreenInputMethodsProto* release_login_screen_input_methods();
+  ::enterprise_management::LoginScreenInputMethodsProto* mutable_login_screen_input_methods();
+  void set_allocated_login_screen_input_methods(::enterprise_management::LoginScreenInputMethodsProto* login_screen_input_methods);
+  private:
+  const ::enterprise_management::LoginScreenInputMethodsProto& _internal_login_screen_input_methods() const;
+  ::enterprise_management::LoginScreenInputMethodsProto* _internal_mutable_login_screen_input_methods();
+  public:
+
+  // optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto device_ecryptfs_migration_strategy = 51 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_device_ecryptfs_migration_strategy() const;
+  private:
+  bool _internal_has_device_ecryptfs_migration_strategy() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_device_ecryptfs_migration_strategy();
+  PROTOBUF_DEPRECATED const ::enterprise_management::DeviceEcryptfsMigrationStrategyProto& device_ecryptfs_migration_strategy() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* release_device_ecryptfs_migration_strategy();
+  PROTOBUF_DEPRECATED ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* mutable_device_ecryptfs_migration_strategy();
+  PROTOBUF_DEPRECATED void set_allocated_device_ecryptfs_migration_strategy(::enterprise_management::DeviceEcryptfsMigrationStrategyProto* device_ecryptfs_migration_strategy);
+  private:
+  const ::enterprise_management::DeviceEcryptfsMigrationStrategyProto& _internal_device_ecryptfs_migration_strategy() const;
+  ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* _internal_mutable_device_ecryptfs_migration_strategy();
+  public:
+
+  // optional .enterprise_management.DeviceSecondFactorAuthenticationProto device_second_factor_authentication = 52;
+  bool has_device_second_factor_authentication() const;
+  private:
+  bool _internal_has_device_second_factor_authentication() const;
+  public:
+  void clear_device_second_factor_authentication();
+  const ::enterprise_management::DeviceSecondFactorAuthenticationProto& device_second_factor_authentication() const;
+  ::enterprise_management::DeviceSecondFactorAuthenticationProto* release_device_second_factor_authentication();
+  ::enterprise_management::DeviceSecondFactorAuthenticationProto* mutable_device_second_factor_authentication();
+  void set_allocated_device_second_factor_authentication(::enterprise_management::DeviceSecondFactorAuthenticationProto* device_second_factor_authentication);
+  private:
+  const ::enterprise_management::DeviceSecondFactorAuthenticationProto& _internal_device_second_factor_authentication() const;
+  ::enterprise_management::DeviceSecondFactorAuthenticationProto* _internal_mutable_device_second_factor_authentication();
+  public:
+
+  // optional .enterprise_management.CastReceiverNameProto cast_receiver_name = 53;
+  bool has_cast_receiver_name() const;
+  private:
+  bool _internal_has_cast_receiver_name() const;
+  public:
+  void clear_cast_receiver_name();
+  const ::enterprise_management::CastReceiverNameProto& cast_receiver_name() const;
+  ::enterprise_management::CastReceiverNameProto* release_cast_receiver_name();
+  ::enterprise_management::CastReceiverNameProto* mutable_cast_receiver_name();
+  void set_allocated_cast_receiver_name(::enterprise_management::CastReceiverNameProto* cast_receiver_name);
+  private:
+  const ::enterprise_management::CastReceiverNameProto& _internal_cast_receiver_name() const;
+  ::enterprise_management::CastReceiverNameProto* _internal_mutable_cast_receiver_name();
+  public:
+
+  // optional .enterprise_management.DeviceOffHoursProto device_off_hours = 54;
+  bool has_device_off_hours() const;
+  private:
+  bool _internal_has_device_off_hours() const;
+  public:
+  void clear_device_off_hours();
+  const ::enterprise_management::DeviceOffHoursProto& device_off_hours() const;
+  ::enterprise_management::DeviceOffHoursProto* release_device_off_hours();
+  ::enterprise_management::DeviceOffHoursProto* mutable_device_off_hours();
+  void set_allocated_device_off_hours(::enterprise_management::DeviceOffHoursProto* device_off_hours);
+  private:
+  const ::enterprise_management::DeviceOffHoursProto& _internal_device_off_hours() const;
+  ::enterprise_management::DeviceOffHoursProto* _internal_mutable_device_off_hours();
+  public:
+
+  // optional .enterprise_management.DeviceNativePrintersProto native_device_printers = 55;
+  bool has_native_device_printers() const;
+  private:
+  bool _internal_has_native_device_printers() const;
+  public:
+  void clear_native_device_printers();
+  const ::enterprise_management::DeviceNativePrintersProto& native_device_printers() const;
+  ::enterprise_management::DeviceNativePrintersProto* release_native_device_printers();
+  ::enterprise_management::DeviceNativePrintersProto* mutable_native_device_printers();
+  void set_allocated_native_device_printers(::enterprise_management::DeviceNativePrintersProto* native_device_printers);
+  private:
+  const ::enterprise_management::DeviceNativePrintersProto& _internal_native_device_printers() const;
+  ::enterprise_management::DeviceNativePrintersProto* _internal_mutable_native_device_printers();
+  public:
+
+  // optional .enterprise_management.DeviceNativePrintersAccessModeProto native_device_printers_access_mode = 56;
+  bool has_native_device_printers_access_mode() const;
+  private:
+  bool _internal_has_native_device_printers_access_mode() const;
+  public:
+  void clear_native_device_printers_access_mode();
+  const ::enterprise_management::DeviceNativePrintersAccessModeProto& native_device_printers_access_mode() const;
+  ::enterprise_management::DeviceNativePrintersAccessModeProto* release_native_device_printers_access_mode();
+  ::enterprise_management::DeviceNativePrintersAccessModeProto* mutable_native_device_printers_access_mode();
+  void set_allocated_native_device_printers_access_mode(::enterprise_management::DeviceNativePrintersAccessModeProto* native_device_printers_access_mode);
+  private:
+  const ::enterprise_management::DeviceNativePrintersAccessModeProto& _internal_native_device_printers_access_mode() const;
+  ::enterprise_management::DeviceNativePrintersAccessModeProto* _internal_mutable_native_device_printers_access_mode();
+  public:
+
+  // optional .enterprise_management.DeviceNativePrintersBlacklistProto native_device_printers_blacklist = 57;
+  bool has_native_device_printers_blacklist() const;
+  private:
+  bool _internal_has_native_device_printers_blacklist() const;
+  public:
+  void clear_native_device_printers_blacklist();
+  const ::enterprise_management::DeviceNativePrintersBlacklistProto& native_device_printers_blacklist() const;
+  ::enterprise_management::DeviceNativePrintersBlacklistProto* release_native_device_printers_blacklist();
+  ::enterprise_management::DeviceNativePrintersBlacklistProto* mutable_native_device_printers_blacklist();
+  void set_allocated_native_device_printers_blacklist(::enterprise_management::DeviceNativePrintersBlacklistProto* native_device_printers_blacklist);
+  private:
+  const ::enterprise_management::DeviceNativePrintersBlacklistProto& _internal_native_device_printers_blacklist() const;
+  ::enterprise_management::DeviceNativePrintersBlacklistProto* _internal_mutable_native_device_printers_blacklist();
+  public:
+
+  // optional .enterprise_management.DeviceNativePrintersWhitelistProto native_device_printers_whitelist = 58;
+  bool has_native_device_printers_whitelist() const;
+  private:
+  bool _internal_has_native_device_printers_whitelist() const;
+  public:
+  void clear_native_device_printers_whitelist();
+  const ::enterprise_management::DeviceNativePrintersWhitelistProto& native_device_printers_whitelist() const;
+  ::enterprise_management::DeviceNativePrintersWhitelistProto* release_native_device_printers_whitelist();
+  ::enterprise_management::DeviceNativePrintersWhitelistProto* mutable_native_device_printers_whitelist();
+  void set_allocated_native_device_printers_whitelist(::enterprise_management::DeviceNativePrintersWhitelistProto* native_device_printers_whitelist);
+  private:
+  const ::enterprise_management::DeviceNativePrintersWhitelistProto& _internal_native_device_printers_whitelist() const;
+  ::enterprise_management::DeviceNativePrintersWhitelistProto* _internal_mutable_native_device_printers_whitelist();
+  public:
+
+  // optional .enterprise_management.TPMFirmwareUpdateSettingsProto tpm_firmware_update_settings = 59;
+  bool has_tpm_firmware_update_settings() const;
+  private:
+  bool _internal_has_tpm_firmware_update_settings() const;
+  public:
+  void clear_tpm_firmware_update_settings();
+  const ::enterprise_management::TPMFirmwareUpdateSettingsProto& tpm_firmware_update_settings() const;
+  ::enterprise_management::TPMFirmwareUpdateSettingsProto* release_tpm_firmware_update_settings();
+  ::enterprise_management::TPMFirmwareUpdateSettingsProto* mutable_tpm_firmware_update_settings();
+  void set_allocated_tpm_firmware_update_settings(::enterprise_management::TPMFirmwareUpdateSettingsProto* tpm_firmware_update_settings);
+  private:
+  const ::enterprise_management::TPMFirmwareUpdateSettingsProto& _internal_tpm_firmware_update_settings() const;
+  ::enterprise_management::TPMFirmwareUpdateSettingsProto* _internal_mutable_tpm_firmware_update_settings();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_MinimumRequiredVersionProto minimum_required_version = 60 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_minimum_required_version() const;
+  private:
+  bool _internal_has_minimum_required_version() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_minimum_required_version();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto& minimum_required_version() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* release_minimum_required_version();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* mutable_minimum_required_version();
+  PROTOBUF_DEPRECATED void set_allocated_minimum_required_version(::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* minimum_required_version);
+  private:
+  const ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto& _internal_minimum_required_version() const;
+  ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* _internal_mutable_minimum_required_version();
+  public:
+
+  // optional .enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls device_login_screen_auto_select_certificate_for_urls = 62;
+  bool has_device_login_screen_auto_select_certificate_for_urls() const;
+  private:
+  bool _internal_has_device_login_screen_auto_select_certificate_for_urls() const;
+  public:
+  void clear_device_login_screen_auto_select_certificate_for_urls();
+  const ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls& device_login_screen_auto_select_certificate_for_urls() const;
+  ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* release_device_login_screen_auto_select_certificate_for_urls();
+  ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* mutable_device_login_screen_auto_select_certificate_for_urls();
+  void set_allocated_device_login_screen_auto_select_certificate_for_urls(::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* device_login_screen_auto_select_certificate_for_urls);
+  private:
+  const ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls& _internal_device_login_screen_auto_select_certificate_for_urls() const;
+  ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* _internal_mutable_device_login_screen_auto_select_certificate_for_urls();
+  public:
+
+  // optional .enterprise_management.UnaffiliatedArcAllowedProto unaffiliated_arc_allowed = 63;
+  bool has_unaffiliated_arc_allowed() const;
+  private:
+  bool _internal_has_unaffiliated_arc_allowed() const;
+  public:
+  void clear_unaffiliated_arc_allowed();
+  const ::enterprise_management::UnaffiliatedArcAllowedProto& unaffiliated_arc_allowed() const;
+  ::enterprise_management::UnaffiliatedArcAllowedProto* release_unaffiliated_arc_allowed();
+  ::enterprise_management::UnaffiliatedArcAllowedProto* mutable_unaffiliated_arc_allowed();
+  void set_allocated_unaffiliated_arc_allowed(::enterprise_management::UnaffiliatedArcAllowedProto* unaffiliated_arc_allowed);
+  private:
+  const ::enterprise_management::UnaffiliatedArcAllowedProto& _internal_unaffiliated_arc_allowed() const;
+  ::enterprise_management::UnaffiliatedArcAllowedProto* _internal_mutable_unaffiliated_arc_allowed();
+  public:
+
+  // optional .enterprise_management.NetworkHostnameProto network_hostname = 64;
+  bool has_network_hostname() const;
+  private:
+  bool _internal_has_network_hostname() const;
+  public:
+  void clear_network_hostname();
+  const ::enterprise_management::NetworkHostnameProto& network_hostname() const;
+  ::enterprise_management::NetworkHostnameProto* release_network_hostname();
+  ::enterprise_management::NetworkHostnameProto* mutable_network_hostname();
+  void set_allocated_network_hostname(::enterprise_management::NetworkHostnameProto* network_hostname);
+  private:
+  const ::enterprise_management::NetworkHostnameProto& _internal_network_hostname() const;
+  ::enterprise_management::NetworkHostnameProto* _internal_mutable_network_hostname();
+  public:
+
+  // optional .enterprise_management.DeviceKerberosEncryptionTypesProto device_kerberos_encryption_types = 65;
+  bool has_device_kerberos_encryption_types() const;
+  private:
+  bool _internal_has_device_kerberos_encryption_types() const;
+  public:
+  void clear_device_kerberos_encryption_types();
+  const ::enterprise_management::DeviceKerberosEncryptionTypesProto& device_kerberos_encryption_types() const;
+  ::enterprise_management::DeviceKerberosEncryptionTypesProto* release_device_kerberos_encryption_types();
+  ::enterprise_management::DeviceKerberosEncryptionTypesProto* mutable_device_kerberos_encryption_types();
+  void set_allocated_device_kerberos_encryption_types(::enterprise_management::DeviceKerberosEncryptionTypesProto* device_kerberos_encryption_types);
+  private:
+  const ::enterprise_management::DeviceKerberosEncryptionTypesProto& _internal_device_kerberos_encryption_types() const;
+  ::enterprise_management::DeviceKerberosEncryptionTypesProto* _internal_mutable_device_kerberos_encryption_types();
+  public:
+
+  // optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto device_user_policy_loopback_processing_mode = 66;
+  bool has_device_user_policy_loopback_processing_mode() const;
+  private:
+  bool _internal_has_device_user_policy_loopback_processing_mode() const;
+  public:
+  void clear_device_user_policy_loopback_processing_mode();
+  const ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto& device_user_policy_loopback_processing_mode() const;
+  ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* release_device_user_policy_loopback_processing_mode();
+  ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* mutable_device_user_policy_loopback_processing_mode();
+  void set_allocated_device_user_policy_loopback_processing_mode(::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* device_user_policy_loopback_processing_mode);
+  private:
+  const ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto& _internal_device_user_policy_loopback_processing_mode() const;
+  ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* _internal_mutable_device_user_policy_loopback_processing_mode();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto device_login_screen_isolate_origins = 67 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_device_login_screen_isolate_origins() const;
+  private:
+  bool _internal_has_device_login_screen_isolate_origins() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_device_login_screen_isolate_origins();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto& device_login_screen_isolate_origins() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* release_device_login_screen_isolate_origins();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* mutable_device_login_screen_isolate_origins();
+  PROTOBUF_DEPRECATED void set_allocated_device_login_screen_isolate_origins(::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* device_login_screen_isolate_origins);
+  private:
+  const ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto& _internal_device_login_screen_isolate_origins() const;
+  ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* _internal_mutable_device_login_screen_isolate_origins();
+  public:
+
+  // optional .enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto device_login_screen_site_per_process = 68 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_device_login_screen_site_per_process() const;
+  private:
+  bool _internal_has_device_login_screen_site_per_process() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_device_login_screen_site_per_process();
+  PROTOBUF_DEPRECATED const ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto& device_login_screen_site_per_process() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* release_device_login_screen_site_per_process();
+  PROTOBUF_DEPRECATED ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* mutable_device_login_screen_site_per_process();
+  PROTOBUF_DEPRECATED void set_allocated_device_login_screen_site_per_process(::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* device_login_screen_site_per_process);
+  private:
+  const ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto& _internal_device_login_screen_site_per_process() const;
+  ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* _internal_mutable_device_login_screen_site_per_process();
+  public:
+
+  // optional .enterprise_management.VirtualMachinesAllowedProto virtual_machines_allowed = 69;
+  bool has_virtual_machines_allowed() const;
+  private:
+  bool _internal_has_virtual_machines_allowed() const;
+  public:
+  void clear_virtual_machines_allowed();
+  const ::enterprise_management::VirtualMachinesAllowedProto& virtual_machines_allowed() const;
+  ::enterprise_management::VirtualMachinesAllowedProto* release_virtual_machines_allowed();
+  ::enterprise_management::VirtualMachinesAllowedProto* mutable_virtual_machines_allowed();
+  void set_allocated_virtual_machines_allowed(::enterprise_management::VirtualMachinesAllowedProto* virtual_machines_allowed);
+  private:
+  const ::enterprise_management::VirtualMachinesAllowedProto& _internal_virtual_machines_allowed() const;
+  ::enterprise_management::VirtualMachinesAllowedProto* _internal_mutable_virtual_machines_allowed();
+  public:
+
+  // optional .enterprise_management.DeviceMachinePasswordChangeRateProto device_machine_password_change_rate = 70;
+  bool has_device_machine_password_change_rate() const;
+  private:
+  bool _internal_has_device_machine_password_change_rate() const;
+  public:
+  void clear_device_machine_password_change_rate();
+  const ::enterprise_management::DeviceMachinePasswordChangeRateProto& device_machine_password_change_rate() const;
+  ::enterprise_management::DeviceMachinePasswordChangeRateProto* release_device_machine_password_change_rate();
+  ::enterprise_management::DeviceMachinePasswordChangeRateProto* mutable_device_machine_password_change_rate();
+  void set_allocated_device_machine_password_change_rate(::enterprise_management::DeviceMachinePasswordChangeRateProto* device_machine_password_change_rate);
+  private:
+  const ::enterprise_management::DeviceMachinePasswordChangeRateProto& _internal_device_machine_password_change_rate() const;
+  ::enterprise_management::DeviceMachinePasswordChangeRateProto* _internal_mutable_device_machine_password_change_rate();
+  public:
+
+  // optional .enterprise_management.SamlLoginAuthenticationTypeProto saml_login_authentication_type = 71;
+  bool has_saml_login_authentication_type() const;
+  private:
+  bool _internal_has_saml_login_authentication_type() const;
+  public:
+  void clear_saml_login_authentication_type();
+  const ::enterprise_management::SamlLoginAuthenticationTypeProto& saml_login_authentication_type() const;
+  ::enterprise_management::SamlLoginAuthenticationTypeProto* release_saml_login_authentication_type();
+  ::enterprise_management::SamlLoginAuthenticationTypeProto* mutable_saml_login_authentication_type();
+  void set_allocated_saml_login_authentication_type(::enterprise_management::SamlLoginAuthenticationTypeProto* saml_login_authentication_type);
+  private:
+  const ::enterprise_management::SamlLoginAuthenticationTypeProto& _internal_saml_login_authentication_type() const;
+  ::enterprise_management::SamlLoginAuthenticationTypeProto* _internal_mutable_saml_login_authentication_type();
+  public:
+
+  // optional .enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto device_unaffiliated_crostini_allowed = 72;
+  bool has_device_unaffiliated_crostini_allowed() const;
+  private:
+  bool _internal_has_device_unaffiliated_crostini_allowed() const;
+  public:
+  void clear_device_unaffiliated_crostini_allowed();
+  const ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto& device_unaffiliated_crostini_allowed() const;
+  ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* release_device_unaffiliated_crostini_allowed();
+  ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* mutable_device_unaffiliated_crostini_allowed();
+  void set_allocated_device_unaffiliated_crostini_allowed(::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* device_unaffiliated_crostini_allowed);
+  private:
+  const ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto& _internal_device_unaffiliated_crostini_allowed() const;
+  ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* _internal_mutable_device_unaffiliated_crostini_allowed();
+  public:
+
+  // optional .enterprise_management.DeviceWiFiFastTransitionEnabledProto device_wifi_fast_transition_enabled = 73;
+  bool has_device_wifi_fast_transition_enabled() const;
+  private:
+  bool _internal_has_device_wifi_fast_transition_enabled() const;
+  public:
+  void clear_device_wifi_fast_transition_enabled();
+  const ::enterprise_management::DeviceWiFiFastTransitionEnabledProto& device_wifi_fast_transition_enabled() const;
+  ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* release_device_wifi_fast_transition_enabled();
+  ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* mutable_device_wifi_fast_transition_enabled();
+  void set_allocated_device_wifi_fast_transition_enabled(::enterprise_management::DeviceWiFiFastTransitionEnabledProto* device_wifi_fast_transition_enabled);
+  private:
+  const ::enterprise_management::DeviceWiFiFastTransitionEnabledProto& _internal_device_wifi_fast_transition_enabled() const;
+  ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* _internal_mutable_device_wifi_fast_transition_enabled();
+  public:
+
+  // optional .enterprise_management.DeviceDisplayResolutionProto device_display_resolution = 74;
+  bool has_device_display_resolution() const;
+  private:
+  bool _internal_has_device_display_resolution() const;
+  public:
+  void clear_device_display_resolution();
+  const ::enterprise_management::DeviceDisplayResolutionProto& device_display_resolution() const;
+  ::enterprise_management::DeviceDisplayResolutionProto* release_device_display_resolution();
+  ::enterprise_management::DeviceDisplayResolutionProto* mutable_device_display_resolution();
+  void set_allocated_device_display_resolution(::enterprise_management::DeviceDisplayResolutionProto* device_display_resolution);
+  private:
+  const ::enterprise_management::DeviceDisplayResolutionProto& _internal_device_display_resolution() const;
+  ::enterprise_management::DeviceDisplayResolutionProto* _internal_mutable_device_display_resolution();
+  public:
+
+  // optional .enterprise_management.PluginVmAllowedProto plugin_vm_allowed = 75;
+  bool has_plugin_vm_allowed() const;
+  private:
+  bool _internal_has_plugin_vm_allowed() const;
+  public:
+  void clear_plugin_vm_allowed();
+  const ::enterprise_management::PluginVmAllowedProto& plugin_vm_allowed() const;
+  ::enterprise_management::PluginVmAllowedProto* release_plugin_vm_allowed();
+  ::enterprise_management::PluginVmAllowedProto* mutable_plugin_vm_allowed();
+  void set_allocated_plugin_vm_allowed(::enterprise_management::PluginVmAllowedProto* plugin_vm_allowed);
+  private:
+  const ::enterprise_management::PluginVmAllowedProto& _internal_plugin_vm_allowed() const;
+  ::enterprise_management::PluginVmAllowedProto* _internal_mutable_plugin_vm_allowed();
+  public:
+
+  // optional .enterprise_management.DeviceGpoCacheLifetimeProto device_gpo_cache_lifetime = 76;
+  bool has_device_gpo_cache_lifetime() const;
+  private:
+  bool _internal_has_device_gpo_cache_lifetime() const;
+  public:
+  void clear_device_gpo_cache_lifetime();
+  const ::enterprise_management::DeviceGpoCacheLifetimeProto& device_gpo_cache_lifetime() const;
+  ::enterprise_management::DeviceGpoCacheLifetimeProto* release_device_gpo_cache_lifetime();
+  ::enterprise_management::DeviceGpoCacheLifetimeProto* mutable_device_gpo_cache_lifetime();
+  void set_allocated_device_gpo_cache_lifetime(::enterprise_management::DeviceGpoCacheLifetimeProto* device_gpo_cache_lifetime);
+  private:
+  const ::enterprise_management::DeviceGpoCacheLifetimeProto& _internal_device_gpo_cache_lifetime() const;
+  ::enterprise_management::DeviceGpoCacheLifetimeProto* _internal_mutable_device_gpo_cache_lifetime();
+  public:
+
+  // optional .enterprise_management.DeviceAuthDataCacheLifetimeProto device_auth_data_cache_lifetime = 77;
+  bool has_device_auth_data_cache_lifetime() const;
+  private:
+  bool _internal_has_device_auth_data_cache_lifetime() const;
+  public:
+  void clear_device_auth_data_cache_lifetime();
+  const ::enterprise_management::DeviceAuthDataCacheLifetimeProto& device_auth_data_cache_lifetime() const;
+  ::enterprise_management::DeviceAuthDataCacheLifetimeProto* release_device_auth_data_cache_lifetime();
+  ::enterprise_management::DeviceAuthDataCacheLifetimeProto* mutable_device_auth_data_cache_lifetime();
+  void set_allocated_device_auth_data_cache_lifetime(::enterprise_management::DeviceAuthDataCacheLifetimeProto* device_auth_data_cache_lifetime);
+  private:
+  const ::enterprise_management::DeviceAuthDataCacheLifetimeProto& _internal_device_auth_data_cache_lifetime() const;
+  ::enterprise_management::DeviceAuthDataCacheLifetimeProto* _internal_mutable_device_auth_data_cache_lifetime();
+  public:
+
+  // optional .enterprise_management.PluginVmLicenseKeyProto plugin_vm_license_key = 78;
+  bool has_plugin_vm_license_key() const;
+  private:
+  bool _internal_has_plugin_vm_license_key() const;
+  public:
+  void clear_plugin_vm_license_key();
+  const ::enterprise_management::PluginVmLicenseKeyProto& plugin_vm_license_key() const;
+  ::enterprise_management::PluginVmLicenseKeyProto* release_plugin_vm_license_key();
+  ::enterprise_management::PluginVmLicenseKeyProto* mutable_plugin_vm_license_key();
+  void set_allocated_plugin_vm_license_key(::enterprise_management::PluginVmLicenseKeyProto* plugin_vm_license_key);
+  private:
+  const ::enterprise_management::PluginVmLicenseKeyProto& _internal_plugin_vm_license_key() const;
+  ::enterprise_management::PluginVmLicenseKeyProto* _internal_mutable_plugin_vm_license_key();
+  public:
+
+  // optional .enterprise_management.DeviceRebootOnUserSignoutProto device_reboot_on_user_signout = 79;
+  bool has_device_reboot_on_user_signout() const;
+  private:
+  bool _internal_has_device_reboot_on_user_signout() const;
+  public:
+  void clear_device_reboot_on_user_signout();
+  const ::enterprise_management::DeviceRebootOnUserSignoutProto& device_reboot_on_user_signout() const;
+  ::enterprise_management::DeviceRebootOnUserSignoutProto* release_device_reboot_on_user_signout();
+  ::enterprise_management::DeviceRebootOnUserSignoutProto* mutable_device_reboot_on_user_signout();
+  void set_allocated_device_reboot_on_user_signout(::enterprise_management::DeviceRebootOnUserSignoutProto* device_reboot_on_user_signout);
+  private:
+  const ::enterprise_management::DeviceRebootOnUserSignoutProto& _internal_device_reboot_on_user_signout() const;
+  ::enterprise_management::DeviceRebootOnUserSignoutProto* _internal_mutable_device_reboot_on_user_signout();
+  public:
+
+  // optional .enterprise_management.DeviceWilcoDtcAllowedProto device_wilco_dtc_allowed = 80;
+  bool has_device_wilco_dtc_allowed() const;
+  private:
+  bool _internal_has_device_wilco_dtc_allowed() const;
+  public:
+  void clear_device_wilco_dtc_allowed();
+  const ::enterprise_management::DeviceWilcoDtcAllowedProto& device_wilco_dtc_allowed() const;
+  ::enterprise_management::DeviceWilcoDtcAllowedProto* release_device_wilco_dtc_allowed();
+  ::enterprise_management::DeviceWilcoDtcAllowedProto* mutable_device_wilco_dtc_allowed();
+  void set_allocated_device_wilco_dtc_allowed(::enterprise_management::DeviceWilcoDtcAllowedProto* device_wilco_dtc_allowed);
+  private:
+  const ::enterprise_management::DeviceWilcoDtcAllowedProto& _internal_device_wilco_dtc_allowed() const;
+  ::enterprise_management::DeviceWilcoDtcAllowedProto* _internal_mutable_device_wilco_dtc_allowed();
+  public:
+
+  // optional .enterprise_management.DeviceWilcoDtcConfigurationProto device_wilco_dtc_configuration = 81;
+  bool has_device_wilco_dtc_configuration() const;
+  private:
+  bool _internal_has_device_wilco_dtc_configuration() const;
+  public:
+  void clear_device_wilco_dtc_configuration();
+  const ::enterprise_management::DeviceWilcoDtcConfigurationProto& device_wilco_dtc_configuration() const;
+  ::enterprise_management::DeviceWilcoDtcConfigurationProto* release_device_wilco_dtc_configuration();
+  ::enterprise_management::DeviceWilcoDtcConfigurationProto* mutable_device_wilco_dtc_configuration();
+  void set_allocated_device_wilco_dtc_configuration(::enterprise_management::DeviceWilcoDtcConfigurationProto* device_wilco_dtc_configuration);
+  private:
+  const ::enterprise_management::DeviceWilcoDtcConfigurationProto& _internal_device_wilco_dtc_configuration() const;
+  ::enterprise_management::DeviceWilcoDtcConfigurationProto* _internal_mutable_device_wilco_dtc_configuration();
+  public:
+
+  // optional .enterprise_management.DeviceWiFiAllowedProto device_wifi_allowed = 82;
+  bool has_device_wifi_allowed() const;
+  private:
+  bool _internal_has_device_wifi_allowed() const;
+  public:
+  void clear_device_wifi_allowed();
+  const ::enterprise_management::DeviceWiFiAllowedProto& device_wifi_allowed() const;
+  ::enterprise_management::DeviceWiFiAllowedProto* release_device_wifi_allowed();
+  ::enterprise_management::DeviceWiFiAllowedProto* mutable_device_wifi_allowed();
+  void set_allocated_device_wifi_allowed(::enterprise_management::DeviceWiFiAllowedProto* device_wifi_allowed);
+  private:
+  const ::enterprise_management::DeviceWiFiAllowedProto& _internal_device_wifi_allowed() const;
+  ::enterprise_management::DeviceWiFiAllowedProto* _internal_mutable_device_wifi_allowed();
+  public:
+
+  // optional .enterprise_management.DevicePowerPeakShiftProto device_power_peak_shift = 83;
+  bool has_device_power_peak_shift() const;
+  private:
+  bool _internal_has_device_power_peak_shift() const;
+  public:
+  void clear_device_power_peak_shift();
+  const ::enterprise_management::DevicePowerPeakShiftProto& device_power_peak_shift() const;
+  ::enterprise_management::DevicePowerPeakShiftProto* release_device_power_peak_shift();
+  ::enterprise_management::DevicePowerPeakShiftProto* mutable_device_power_peak_shift();
+  void set_allocated_device_power_peak_shift(::enterprise_management::DevicePowerPeakShiftProto* device_power_peak_shift);
+  private:
+  const ::enterprise_management::DevicePowerPeakShiftProto& _internal_device_power_peak_shift() const;
+  ::enterprise_management::DevicePowerPeakShiftProto* _internal_mutable_device_power_peak_shift();
+  public:
+
+  // optional .enterprise_management.DeviceBootOnAcProto device_boot_on_ac = 84;
+  bool has_device_boot_on_ac() const;
+  private:
+  bool _internal_has_device_boot_on_ac() const;
+  public:
+  void clear_device_boot_on_ac();
+  const ::enterprise_management::DeviceBootOnAcProto& device_boot_on_ac() const;
+  ::enterprise_management::DeviceBootOnAcProto* release_device_boot_on_ac();
+  ::enterprise_management::DeviceBootOnAcProto* mutable_device_boot_on_ac();
+  void set_allocated_device_boot_on_ac(::enterprise_management::DeviceBootOnAcProto* device_boot_on_ac);
+  private:
+  const ::enterprise_management::DeviceBootOnAcProto& _internal_device_boot_on_ac() const;
+  ::enterprise_management::DeviceBootOnAcProto* _internal_mutable_device_boot_on_ac();
+  public:
+
+  // optional .enterprise_management.DeviceDockMacAddressSourceProto device_dock_mac_address_source = 85;
+  bool has_device_dock_mac_address_source() const;
+  private:
+  bool _internal_has_device_dock_mac_address_source() const;
+  public:
+  void clear_device_dock_mac_address_source();
+  const ::enterprise_management::DeviceDockMacAddressSourceProto& device_dock_mac_address_source() const;
+  ::enterprise_management::DeviceDockMacAddressSourceProto* release_device_dock_mac_address_source();
+  ::enterprise_management::DeviceDockMacAddressSourceProto* mutable_device_dock_mac_address_source();
+  void set_allocated_device_dock_mac_address_source(::enterprise_management::DeviceDockMacAddressSourceProto* device_dock_mac_address_source);
+  private:
+  const ::enterprise_management::DeviceDockMacAddressSourceProto& _internal_device_dock_mac_address_source() const;
+  ::enterprise_management::DeviceDockMacAddressSourceProto* _internal_mutable_device_dock_mac_address_source();
+  public:
+
+  // optional .enterprise_management.DeviceAdvancedBatteryChargeModeProto device_advanced_battery_charge_mode = 86;
+  bool has_device_advanced_battery_charge_mode() const;
+  private:
+  bool _internal_has_device_advanced_battery_charge_mode() const;
+  public:
+  void clear_device_advanced_battery_charge_mode();
+  const ::enterprise_management::DeviceAdvancedBatteryChargeModeProto& device_advanced_battery_charge_mode() const;
+  ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* release_device_advanced_battery_charge_mode();
+  ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* mutable_device_advanced_battery_charge_mode();
+  void set_allocated_device_advanced_battery_charge_mode(::enterprise_management::DeviceAdvancedBatteryChargeModeProto* device_advanced_battery_charge_mode);
+  private:
+  const ::enterprise_management::DeviceAdvancedBatteryChargeModeProto& _internal_device_advanced_battery_charge_mode() const;
+  ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* _internal_mutable_device_advanced_battery_charge_mode();
+  public:
+
+  // optional .enterprise_management.DeviceBatteryChargeModeProto device_battery_charge_mode = 87;
+  bool has_device_battery_charge_mode() const;
+  private:
+  bool _internal_has_device_battery_charge_mode() const;
+  public:
+  void clear_device_battery_charge_mode();
+  const ::enterprise_management::DeviceBatteryChargeModeProto& device_battery_charge_mode() const;
+  ::enterprise_management::DeviceBatteryChargeModeProto* release_device_battery_charge_mode();
+  ::enterprise_management::DeviceBatteryChargeModeProto* mutable_device_battery_charge_mode();
+  void set_allocated_device_battery_charge_mode(::enterprise_management::DeviceBatteryChargeModeProto* device_battery_charge_mode);
+  private:
+  const ::enterprise_management::DeviceBatteryChargeModeProto& _internal_device_battery_charge_mode() const;
+  ::enterprise_management::DeviceBatteryChargeModeProto* _internal_mutable_device_battery_charge_mode();
+  public:
+
+  // optional .enterprise_management.DeviceUsbPowerShareProto device_usb_power_share = 88;
+  bool has_device_usb_power_share() const;
+  private:
+  bool _internal_has_device_usb_power_share() const;
+  public:
+  void clear_device_usb_power_share();
+  const ::enterprise_management::DeviceUsbPowerShareProto& device_usb_power_share() const;
+  ::enterprise_management::DeviceUsbPowerShareProto* release_device_usb_power_share();
+  ::enterprise_management::DeviceUsbPowerShareProto* mutable_device_usb_power_share();
+  void set_allocated_device_usb_power_share(::enterprise_management::DeviceUsbPowerShareProto* device_usb_power_share);
+  private:
+  const ::enterprise_management::DeviceUsbPowerShareProto& _internal_device_usb_power_share() const;
+  ::enterprise_management::DeviceUsbPowerShareProto* _internal_mutable_device_usb_power_share();
+  public:
+
+  // optional .enterprise_management.DeviceScheduledUpdateCheckProto device_scheduled_update_check = 89;
+  bool has_device_scheduled_update_check() const;
+  private:
+  bool _internal_has_device_scheduled_update_check() const;
+  public:
+  void clear_device_scheduled_update_check();
+  const ::enterprise_management::DeviceScheduledUpdateCheckProto& device_scheduled_update_check() const;
+  ::enterprise_management::DeviceScheduledUpdateCheckProto* release_device_scheduled_update_check();
+  ::enterprise_management::DeviceScheduledUpdateCheckProto* mutable_device_scheduled_update_check();
+  void set_allocated_device_scheduled_update_check(::enterprise_management::DeviceScheduledUpdateCheckProto* device_scheduled_update_check);
+  private:
+  const ::enterprise_management::DeviceScheduledUpdateCheckProto& _internal_device_scheduled_update_check() const;
+  ::enterprise_management::DeviceScheduledUpdateCheckProto* _internal_mutable_device_scheduled_update_check();
+  public:
+
+  // optional .enterprise_management.DevicePowerwashAllowedProto device_powerwash_allowed = 91;
+  bool has_device_powerwash_allowed() const;
+  private:
+  bool _internal_has_device_powerwash_allowed() const;
+  public:
+  void clear_device_powerwash_allowed();
+  const ::enterprise_management::DevicePowerwashAllowedProto& device_powerwash_allowed() const;
+  ::enterprise_management::DevicePowerwashAllowedProto* release_device_powerwash_allowed();
+  ::enterprise_management::DevicePowerwashAllowedProto* mutable_device_powerwash_allowed();
+  void set_allocated_device_powerwash_allowed(::enterprise_management::DevicePowerwashAllowedProto* device_powerwash_allowed);
+  private:
+  const ::enterprise_management::DevicePowerwashAllowedProto& _internal_device_powerwash_allowed() const;
+  ::enterprise_management::DevicePowerwashAllowedProto* _internal_mutable_device_powerwash_allowed();
+  public:
+
+  // optional .enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto device_login_screen_webusb_allow_devices_for_urls = 92;
+  bool has_device_login_screen_webusb_allow_devices_for_urls() const;
+  private:
+  bool _internal_has_device_login_screen_webusb_allow_devices_for_urls() const;
+  public:
+  void clear_device_login_screen_webusb_allow_devices_for_urls();
+  const ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& device_login_screen_webusb_allow_devices_for_urls() const;
+  ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* release_device_login_screen_webusb_allow_devices_for_urls();
+  ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* mutable_device_login_screen_webusb_allow_devices_for_urls();
+  void set_allocated_device_login_screen_webusb_allow_devices_for_urls(::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* device_login_screen_webusb_allow_devices_for_urls);
+  private:
+  const ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& _internal_device_login_screen_webusb_allow_devices_for_urls() const;
+  ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* _internal_mutable_device_login_screen_webusb_allow_devices_for_urls();
+  public:
+
+  // optional .enterprise_management.BooleanPolicyProto device_login_screen_system_info_enforced = 93;
+  bool has_device_login_screen_system_info_enforced() const;
+  private:
+  bool _internal_has_device_login_screen_system_info_enforced() const;
+  public:
+  void clear_device_login_screen_system_info_enforced();
+  const ::enterprise_management::BooleanPolicyProto& device_login_screen_system_info_enforced() const;
+  ::enterprise_management::BooleanPolicyProto* release_device_login_screen_system_info_enforced();
+  ::enterprise_management::BooleanPolicyProto* mutable_device_login_screen_system_info_enforced();
+  void set_allocated_device_login_screen_system_info_enforced(::enterprise_management::BooleanPolicyProto* device_login_screen_system_info_enforced);
+  private:
+  const ::enterprise_management::BooleanPolicyProto& _internal_device_login_screen_system_info_enforced() const;
+  ::enterprise_management::BooleanPolicyProto* _internal_mutable_device_login_screen_system_info_enforced();
+  public:
+
+  // optional .enterprise_management.StringListPolicyProto device_web_based_attestation_allowed_urls = 94;
+  bool has_device_web_based_attestation_allowed_urls() const;
+  private:
+  bool _internal_has_device_web_based_attestation_allowed_urls() const;
+  public:
+  void clear_device_web_based_attestation_allowed_urls();
+  const ::enterprise_management::StringListPolicyProto& device_web_based_attestation_allowed_urls() const;
+  ::enterprise_management::StringListPolicyProto* release_device_web_based_attestation_allowed_urls();
+  ::enterprise_management::StringListPolicyProto* mutable_device_web_based_attestation_allowed_urls();
+  void set_allocated_device_web_based_attestation_allowed_urls(::enterprise_management::StringListPolicyProto* device_web_based_attestation_allowed_urls);
+  private:
+  const ::enterprise_management::StringListPolicyProto& _internal_device_web_based_attestation_allowed_urls() const;
+  ::enterprise_management::StringListPolicyProto* _internal_mutable_device_web_based_attestation_allowed_urls();
+  public:
+
+  // optional .enterprise_management.BooleanPolicyProto device_show_numeric_keyboard_for_password = 95;
+  bool has_device_show_numeric_keyboard_for_password() const;
+  private:
+  bool _internal_has_device_show_numeric_keyboard_for_password() const;
+  public:
+  void clear_device_show_numeric_keyboard_for_password();
+  const ::enterprise_management::BooleanPolicyProto& device_show_numeric_keyboard_for_password() const;
+  ::enterprise_management::BooleanPolicyProto* release_device_show_numeric_keyboard_for_password();
+  ::enterprise_management::BooleanPolicyProto* mutable_device_show_numeric_keyboard_for_password();
+  void set_allocated_device_show_numeric_keyboard_for_password(::enterprise_management::BooleanPolicyProto* device_show_numeric_keyboard_for_password);
+  private:
+  const ::enterprise_management::BooleanPolicyProto& _internal_device_show_numeric_keyboard_for_password() const;
+  ::enterprise_management::BooleanPolicyProto* _internal_mutable_device_show_numeric_keyboard_for_password();
+  public:
+
+  // optional .enterprise_management.BooleanPolicyProto login_screen_primary_mouse_button_switch = 96;
+  bool has_login_screen_primary_mouse_button_switch() const;
+  private:
+  bool _internal_has_login_screen_primary_mouse_button_switch() const;
+  public:
+  void clear_login_screen_primary_mouse_button_switch();
+  const ::enterprise_management::BooleanPolicyProto& login_screen_primary_mouse_button_switch() const;
+  ::enterprise_management::BooleanPolicyProto* release_login_screen_primary_mouse_button_switch();
+  ::enterprise_management::BooleanPolicyProto* mutable_login_screen_primary_mouse_button_switch();
+  void set_allocated_login_screen_primary_mouse_button_switch(::enterprise_management::BooleanPolicyProto* login_screen_primary_mouse_button_switch);
+  private:
+  const ::enterprise_management::BooleanPolicyProto& _internal_login_screen_primary_mouse_button_switch() const;
+  ::enterprise_management::BooleanPolicyProto* _internal_mutable_login_screen_primary_mouse_button_switch();
+  public:
+
+  // optional .enterprise_management.StringPolicyProto device_minimum_version = 97;
+  bool has_device_minimum_version() const;
+  private:
+  bool _internal_has_device_minimum_version() const;
+  public:
+  void clear_device_minimum_version();
+  const ::enterprise_management::StringPolicyProto& device_minimum_version() const;
+  ::enterprise_management::StringPolicyProto* release_device_minimum_version();
+  ::enterprise_management::StringPolicyProto* mutable_device_minimum_version();
+  void set_allocated_device_minimum_version(::enterprise_management::StringPolicyProto* device_minimum_version);
+  private:
+  const ::enterprise_management::StringPolicyProto& _internal_device_minimum_version() const;
+  ::enterprise_management::StringPolicyProto* _internal_mutable_device_minimum_version();
+  public:
+
+  // optional .enterprise_management.SystemProxySettingsProto system_proxy_settings = 98;
+  bool has_system_proxy_settings() const;
+  private:
+  bool _internal_has_system_proxy_settings() const;
+  public:
+  void clear_system_proxy_settings();
+  const ::enterprise_management::SystemProxySettingsProto& system_proxy_settings() const;
+  ::enterprise_management::SystemProxySettingsProto* release_system_proxy_settings();
+  ::enterprise_management::SystemProxySettingsProto* mutable_system_proxy_settings();
+  void set_allocated_system_proxy_settings(::enterprise_management::SystemProxySettingsProto* system_proxy_settings);
+  private:
+  const ::enterprise_management::SystemProxySettingsProto& _internal_system_proxy_settings() const;
+  ::enterprise_management::SystemProxySettingsProto* _internal_mutable_system_proxy_settings();
+  public:
+
+  // optional .enterprise_management.IntegerPolicyProto device_chrome_variations_type = 99;
+  bool has_device_chrome_variations_type() const;
+  private:
+  bool _internal_has_device_chrome_variations_type() const;
+  public:
+  void clear_device_chrome_variations_type();
+  const ::enterprise_management::IntegerPolicyProto& device_chrome_variations_type() const;
+  ::enterprise_management::IntegerPolicyProto* release_device_chrome_variations_type();
+  ::enterprise_management::IntegerPolicyProto* mutable_device_chrome_variations_type();
+  void set_allocated_device_chrome_variations_type(::enterprise_management::IntegerPolicyProto* device_chrome_variations_type);
+  private:
+  const ::enterprise_management::IntegerPolicyProto& _internal_device_chrome_variations_type() const;
+  ::enterprise_management::IntegerPolicyProto* _internal_mutable_device_chrome_variations_type();
+  public:
+
+  // optional .enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto device_login_screen_privacy_screen_enabled = 100;
+  bool has_device_login_screen_privacy_screen_enabled() const;
+  private:
+  bool _internal_has_device_login_screen_privacy_screen_enabled() const;
+  public:
+  void clear_device_login_screen_privacy_screen_enabled();
+  const ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto& device_login_screen_privacy_screen_enabled() const;
+  ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* release_device_login_screen_privacy_screen_enabled();
+  ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* mutable_device_login_screen_privacy_screen_enabled();
+  void set_allocated_device_login_screen_privacy_screen_enabled(::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* device_login_screen_privacy_screen_enabled);
+  private:
+  const ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto& _internal_device_login_screen_privacy_screen_enabled() const;
+  ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* _internal_mutable_device_login_screen_privacy_screen_enabled();
+  public:
+
+  // optional .enterprise_management.RequiredClientCertificateForDeviceProto required_client_certificate_for_device = 101;
+  bool has_required_client_certificate_for_device() const;
+  private:
+  bool _internal_has_required_client_certificate_for_device() const;
+  public:
+  void clear_required_client_certificate_for_device();
+  const ::enterprise_management::RequiredClientCertificateForDeviceProto& required_client_certificate_for_device() const;
+  ::enterprise_management::RequiredClientCertificateForDeviceProto* release_required_client_certificate_for_device();
+  ::enterprise_management::RequiredClientCertificateForDeviceProto* mutable_required_client_certificate_for_device();
+  void set_allocated_required_client_certificate_for_device(::enterprise_management::RequiredClientCertificateForDeviceProto* required_client_certificate_for_device);
+  private:
+  const ::enterprise_management::RequiredClientCertificateForDeviceProto& _internal_required_client_certificate_for_device() const;
+  ::enterprise_management::RequiredClientCertificateForDeviceProto* _internal_mutable_required_client_certificate_for_device();
+  public:
+
+  // optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto device_crostini_arc_adb_sideloading_allowed = 102;
+  bool has_device_crostini_arc_adb_sideloading_allowed() const;
+  private:
+  bool _internal_has_device_crostini_arc_adb_sideloading_allowed() const;
+  public:
+  void clear_device_crostini_arc_adb_sideloading_allowed();
+  const ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto& device_crostini_arc_adb_sideloading_allowed() const;
+  ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* release_device_crostini_arc_adb_sideloading_allowed();
+  ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* mutable_device_crostini_arc_adb_sideloading_allowed();
+  void set_allocated_device_crostini_arc_adb_sideloading_allowed(::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* device_crostini_arc_adb_sideloading_allowed);
+  private:
+  const ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto& _internal_device_crostini_arc_adb_sideloading_allowed() const;
+  ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* _internal_mutable_device_crostini_arc_adb_sideloading_allowed();
+  public:
+
+  // optional .enterprise_management.StringPolicyProto device_minimum_version_aue_message = 103;
+  bool has_device_minimum_version_aue_message() const;
+  private:
+  bool _internal_has_device_minimum_version_aue_message() const;
+  public:
+  void clear_device_minimum_version_aue_message();
+  const ::enterprise_management::StringPolicyProto& device_minimum_version_aue_message() const;
+  ::enterprise_management::StringPolicyProto* release_device_minimum_version_aue_message();
+  ::enterprise_management::StringPolicyProto* mutable_device_minimum_version_aue_message();
+  void set_allocated_device_minimum_version_aue_message(::enterprise_management::StringPolicyProto* device_minimum_version_aue_message);
+  private:
+  const ::enterprise_management::StringPolicyProto& _internal_device_minimum_version_aue_message() const;
+  ::enterprise_management::StringPolicyProto* _internal_mutable_device_minimum_version_aue_message();
+  public:
+
+  // optional .enterprise_management.ManagedGuestSessionPrivacyWarningsProto managed_guest_session_privacy_warnings = 104;
+  bool has_managed_guest_session_privacy_warnings() const;
+  private:
+  bool _internal_has_managed_guest_session_privacy_warnings() const;
+  public:
+  void clear_managed_guest_session_privacy_warnings();
+  const ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto& managed_guest_session_privacy_warnings() const;
+  ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* release_managed_guest_session_privacy_warnings();
+  ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* mutable_managed_guest_session_privacy_warnings();
+  void set_allocated_managed_guest_session_privacy_warnings(::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* managed_guest_session_privacy_warnings);
+  private:
+  const ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto& _internal_managed_guest_session_privacy_warnings() const;
+  ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* _internal_mutable_managed_guest_session_privacy_warnings();
+  public:
+
+  // optional .enterprise_management.DeviceExternalPrintServersProto external_print_servers = 105;
+  bool has_external_print_servers() const;
+  private:
+  bool _internal_has_external_print_servers() const;
+  public:
+  void clear_external_print_servers();
+  const ::enterprise_management::DeviceExternalPrintServersProto& external_print_servers() const;
+  ::enterprise_management::DeviceExternalPrintServersProto* release_external_print_servers();
+  ::enterprise_management::DeviceExternalPrintServersProto* mutable_external_print_servers();
+  void set_allocated_external_print_servers(::enterprise_management::DeviceExternalPrintServersProto* external_print_servers);
+  private:
+  const ::enterprise_management::DeviceExternalPrintServersProto& _internal_external_print_servers() const;
+  ::enterprise_management::DeviceExternalPrintServersProto* _internal_mutable_external_print_servers();
+  public:
+
+  // optional .enterprise_management.DeviceExternalPrintServersAllowlistProto external_print_servers_allowlist = 106;
+  bool has_external_print_servers_allowlist() const;
+  private:
+  bool _internal_has_external_print_servers_allowlist() const;
+  public:
+  void clear_external_print_servers_allowlist();
+  const ::enterprise_management::DeviceExternalPrintServersAllowlistProto& external_print_servers_allowlist() const;
+  ::enterprise_management::DeviceExternalPrintServersAllowlistProto* release_external_print_servers_allowlist();
+  ::enterprise_management::DeviceExternalPrintServersAllowlistProto* mutable_external_print_servers_allowlist();
+  void set_allocated_external_print_servers_allowlist(::enterprise_management::DeviceExternalPrintServersAllowlistProto* external_print_servers_allowlist);
+  private:
+  const ::enterprise_management::DeviceExternalPrintServersAllowlistProto& _internal_external_print_servers_allowlist() const;
+  ::enterprise_management::DeviceExternalPrintServersAllowlistProto* _internal_mutable_external_print_servers_allowlist();
+  public:
+
+  // optional .enterprise_management.DevicePrintersAccessModeProto device_printers_access_mode = 107;
+  bool has_device_printers_access_mode() const;
+  private:
+  bool _internal_has_device_printers_access_mode() const;
+  public:
+  void clear_device_printers_access_mode();
+  const ::enterprise_management::DevicePrintersAccessModeProto& device_printers_access_mode() const;
+  ::enterprise_management::DevicePrintersAccessModeProto* release_device_printers_access_mode();
+  ::enterprise_management::DevicePrintersAccessModeProto* mutable_device_printers_access_mode();
+  void set_allocated_device_printers_access_mode(::enterprise_management::DevicePrintersAccessModeProto* device_printers_access_mode);
+  private:
+  const ::enterprise_management::DevicePrintersAccessModeProto& _internal_device_printers_access_mode() const;
+  ::enterprise_management::DevicePrintersAccessModeProto* _internal_mutable_device_printers_access_mode();
+  public:
+
+  // optional .enterprise_management.DevicePrintersBlocklistProto device_printers_blocklist = 108;
+  bool has_device_printers_blocklist() const;
+  private:
+  bool _internal_has_device_printers_blocklist() const;
+  public:
+  void clear_device_printers_blocklist();
+  const ::enterprise_management::DevicePrintersBlocklistProto& device_printers_blocklist() const;
+  ::enterprise_management::DevicePrintersBlocklistProto* release_device_printers_blocklist();
+  ::enterprise_management::DevicePrintersBlocklistProto* mutable_device_printers_blocklist();
+  void set_allocated_device_printers_blocklist(::enterprise_management::DevicePrintersBlocklistProto* device_printers_blocklist);
+  private:
+  const ::enterprise_management::DevicePrintersBlocklistProto& _internal_device_printers_blocklist() const;
+  ::enterprise_management::DevicePrintersBlocklistProto* _internal_mutable_device_printers_blocklist();
+  public:
+
+  // optional .enterprise_management.DevicePrintersAllowlistProto device_printers_allowlist = 109;
+  bool has_device_printers_allowlist() const;
+  private:
+  bool _internal_has_device_printers_allowlist() const;
+  public:
+  void clear_device_printers_allowlist();
+  const ::enterprise_management::DevicePrintersAllowlistProto& device_printers_allowlist() const;
+  ::enterprise_management::DevicePrintersAllowlistProto* release_device_printers_allowlist();
+  ::enterprise_management::DevicePrintersAllowlistProto* mutable_device_printers_allowlist();
+  void set_allocated_device_printers_allowlist(::enterprise_management::DevicePrintersAllowlistProto* device_printers_allowlist);
+  private:
+  const ::enterprise_management::DevicePrintersAllowlistProto& _internal_device_printers_allowlist() const;
+  ::enterprise_management::DevicePrintersAllowlistProto* _internal_mutable_device_printers_allowlist();
+  public:
+
+  // optional .enterprise_management.DevicePrintersProto device_printers = 110;
+  bool has_device_printers() const;
+  private:
+  bool _internal_has_device_printers() const;
+  public:
+  void clear_device_printers();
+  const ::enterprise_management::DevicePrintersProto& device_printers() const;
+  ::enterprise_management::DevicePrintersProto* release_device_printers();
+  ::enterprise_management::DevicePrintersProto* mutable_device_printers();
+  void set_allocated_device_printers(::enterprise_management::DevicePrintersProto* device_printers);
+  private:
+  const ::enterprise_management::DevicePrintersProto& _internal_device_printers() const;
+  ::enterprise_management::DevicePrintersProto* _internal_mutable_device_printers();
+  public:
+
+  // optional .enterprise_management.DeviceShowLowDiskSpaceNotificationProto device_show_low_disk_space_notification = 111;
+  bool has_device_show_low_disk_space_notification() const;
+  private:
+  bool _internal_has_device_show_low_disk_space_notification() const;
+  public:
+  void clear_device_show_low_disk_space_notification();
+  const ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto& device_show_low_disk_space_notification() const;
+  ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* release_device_show_low_disk_space_notification();
+  ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* mutable_device_show_low_disk_space_notification();
+  void set_allocated_device_show_low_disk_space_notification(::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* device_show_low_disk_space_notification);
+  private:
+  const ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto& _internal_device_show_low_disk_space_notification() const;
+  ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* _internal_mutable_device_show_low_disk_space_notification();
+  public:
+
+  // optional .enterprise_management.UserAllowlistProto user_allowlist = 112;
+  bool has_user_allowlist() const;
+  private:
+  bool _internal_has_user_allowlist() const;
+  public:
+  void clear_user_allowlist();
+  const ::enterprise_management::UserAllowlistProto& user_allowlist() const;
+  ::enterprise_management::UserAllowlistProto* release_user_allowlist();
+  ::enterprise_management::UserAllowlistProto* mutable_user_allowlist();
+  void set_allocated_user_allowlist(::enterprise_management::UserAllowlistProto* user_allowlist);
+  private:
+  const ::enterprise_management::UserAllowlistProto& _internal_user_allowlist() const;
+  ::enterprise_management::UserAllowlistProto* _internal_mutable_user_allowlist();
+  public:
+
+  // optional .enterprise_management.UsbDetachableAllowlistProto usb_detachable_allowlist = 113;
+  bool has_usb_detachable_allowlist() const;
+  private:
+  bool _internal_has_usb_detachable_allowlist() const;
+  public:
+  void clear_usb_detachable_allowlist();
+  const ::enterprise_management::UsbDetachableAllowlistProto& usb_detachable_allowlist() const;
+  ::enterprise_management::UsbDetachableAllowlistProto* release_usb_detachable_allowlist();
+  ::enterprise_management::UsbDetachableAllowlistProto* mutable_usb_detachable_allowlist();
+  void set_allocated_usb_detachable_allowlist(::enterprise_management::UsbDetachableAllowlistProto* usb_detachable_allowlist);
+  private:
+  const ::enterprise_management::UsbDetachableAllowlistProto& _internal_usb_detachable_allowlist() const;
+  ::enterprise_management::UsbDetachableAllowlistProto* _internal_mutable_usb_detachable_allowlist();
+  public:
+
+  // optional .enterprise_management.DeviceFamilyLinkAccountsAllowedProto family_link_accounts_allowed = 114;
+  bool has_family_link_accounts_allowed() const;
+  private:
+  bool _internal_has_family_link_accounts_allowed() const;
+  public:
+  void clear_family_link_accounts_allowed();
+  const ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto& family_link_accounts_allowed() const;
+  ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* release_family_link_accounts_allowed();
+  ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* mutable_family_link_accounts_allowed();
+  void set_allocated_family_link_accounts_allowed(::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* family_link_accounts_allowed);
+  private:
+  const ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto& _internal_family_link_accounts_allowed() const;
+  ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* _internal_mutable_family_link_accounts_allowed();
+  public:
+
+  // optional .enterprise_management.DeviceArcDataSnapshotHoursProto arc_data_snapshot_hours = 115;
+  bool has_arc_data_snapshot_hours() const;
+  private:
+  bool _internal_has_arc_data_snapshot_hours() const;
+  public:
+  void clear_arc_data_snapshot_hours();
+  const ::enterprise_management::DeviceArcDataSnapshotHoursProto& arc_data_snapshot_hours() const;
+  ::enterprise_management::DeviceArcDataSnapshotHoursProto* release_arc_data_snapshot_hours();
+  ::enterprise_management::DeviceArcDataSnapshotHoursProto* mutable_arc_data_snapshot_hours();
+  void set_allocated_arc_data_snapshot_hours(::enterprise_management::DeviceArcDataSnapshotHoursProto* arc_data_snapshot_hours);
+  private:
+  const ::enterprise_management::DeviceArcDataSnapshotHoursProto& _internal_arc_data_snapshot_hours() const;
+  ::enterprise_management::DeviceArcDataSnapshotHoursProto* _internal_mutable_arc_data_snapshot_hours();
+  public:
+
+  // optional .enterprise_management.BooleanPolicyProto device_allow_mgs_to_store_display_properties = 116;
+  bool has_device_allow_mgs_to_store_display_properties() const;
+  private:
+  bool _internal_has_device_allow_mgs_to_store_display_properties() const;
+  public:
+  void clear_device_allow_mgs_to_store_display_properties();
+  const ::enterprise_management::BooleanPolicyProto& device_allow_mgs_to_store_display_properties() const;
+  ::enterprise_management::BooleanPolicyProto* release_device_allow_mgs_to_store_display_properties();
+  ::enterprise_management::BooleanPolicyProto* mutable_device_allow_mgs_to_store_display_properties();
+  void set_allocated_device_allow_mgs_to_store_display_properties(::enterprise_management::BooleanPolicyProto* device_allow_mgs_to_store_display_properties);
+  private:
+  const ::enterprise_management::BooleanPolicyProto& _internal_device_allow_mgs_to_store_display_properties() const;
+  ::enterprise_management::BooleanPolicyProto* _internal_mutable_device_allow_mgs_to_store_display_properties();
+  public:
+
+  // optional .enterprise_management.DeviceSystemWideTracingEnabledProto device_system_wide_tracing_enabled = 117;
+  bool has_device_system_wide_tracing_enabled() const;
+  private:
+  bool _internal_has_device_system_wide_tracing_enabled() const;
+  public:
+  void clear_device_system_wide_tracing_enabled();
+  const ::enterprise_management::DeviceSystemWideTracingEnabledProto& device_system_wide_tracing_enabled() const;
+  ::enterprise_management::DeviceSystemWideTracingEnabledProto* release_device_system_wide_tracing_enabled();
+  ::enterprise_management::DeviceSystemWideTracingEnabledProto* mutable_device_system_wide_tracing_enabled();
+  void set_allocated_device_system_wide_tracing_enabled(::enterprise_management::DeviceSystemWideTracingEnabledProto* device_system_wide_tracing_enabled);
+  private:
+  const ::enterprise_management::DeviceSystemWideTracingEnabledProto& _internal_device_system_wide_tracing_enabled() const;
+  ::enterprise_management::DeviceSystemWideTracingEnabledProto* _internal_mutable_device_system_wide_tracing_enabled();
+  public:
+
+  // optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProto device_pci_peripheral_data_access_enabled = 118;
+  bool has_device_pci_peripheral_data_access_enabled() const;
+  private:
+  bool _internal_has_device_pci_peripheral_data_access_enabled() const;
+  public:
+  void clear_device_pci_peripheral_data_access_enabled();
+  const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto& device_pci_peripheral_data_access_enabled() const;
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* release_device_pci_peripheral_data_access_enabled();
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* mutable_device_pci_peripheral_data_access_enabled();
+  void set_allocated_device_pci_peripheral_data_access_enabled(::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* device_pci_peripheral_data_access_enabled);
+  private:
+  const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto& _internal_device_pci_peripheral_data_access_enabled() const;
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* _internal_mutable_device_pci_peripheral_data_access_enabled();
+  public:
+
+  // optional .enterprise_management.DeviceBorealisAllowedProto device_borealis_allowed = 119;
+  bool has_device_borealis_allowed() const;
+  private:
+  bool _internal_has_device_borealis_allowed() const;
+  public:
+  void clear_device_borealis_allowed();
+  const ::enterprise_management::DeviceBorealisAllowedProto& device_borealis_allowed() const;
+  ::enterprise_management::DeviceBorealisAllowedProto* release_device_borealis_allowed();
+  ::enterprise_management::DeviceBorealisAllowedProto* mutable_device_borealis_allowed();
+  void set_allocated_device_borealis_allowed(::enterprise_management::DeviceBorealisAllowedProto* device_borealis_allowed);
+  private:
+  const ::enterprise_management::DeviceBorealisAllowedProto& _internal_device_borealis_allowed() const;
+  ::enterprise_management::DeviceBorealisAllowedProto* _internal_mutable_device_borealis_allowed();
+  public:
+
+  // optional .enterprise_management.DeviceAllowedBluetoothServicesProto device_allowed_bluetooth_services = 120;
+  bool has_device_allowed_bluetooth_services() const;
+  private:
+  bool _internal_has_device_allowed_bluetooth_services() const;
+  public:
+  void clear_device_allowed_bluetooth_services();
+  const ::enterprise_management::DeviceAllowedBluetoothServicesProto& device_allowed_bluetooth_services() const;
+  ::enterprise_management::DeviceAllowedBluetoothServicesProto* release_device_allowed_bluetooth_services();
+  ::enterprise_management::DeviceAllowedBluetoothServicesProto* mutable_device_allowed_bluetooth_services();
+  void set_allocated_device_allowed_bluetooth_services(::enterprise_management::DeviceAllowedBluetoothServicesProto* device_allowed_bluetooth_services);
+  private:
+  const ::enterprise_management::DeviceAllowedBluetoothServicesProto& _internal_device_allowed_bluetooth_services() const;
+  ::enterprise_management::DeviceAllowedBluetoothServicesProto* _internal_mutable_device_allowed_bluetooth_services();
+  public:
+
+  // optional .enterprise_management.DeviceDebugPacketCaptureAllowedProto device_debug_packet_capture_allowed = 121;
+  bool has_device_debug_packet_capture_allowed() const;
+  private:
+  bool _internal_has_device_debug_packet_capture_allowed() const;
+  public:
+  void clear_device_debug_packet_capture_allowed();
+  const ::enterprise_management::DeviceDebugPacketCaptureAllowedProto& device_debug_packet_capture_allowed() const;
+  ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* release_device_debug_packet_capture_allowed();
+  ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* mutable_device_debug_packet_capture_allowed();
+  void set_allocated_device_debug_packet_capture_allowed(::enterprise_management::DeviceDebugPacketCaptureAllowedProto* device_debug_packet_capture_allowed);
+  private:
+  const ::enterprise_management::DeviceDebugPacketCaptureAllowedProto& _internal_device_debug_packet_capture_allowed() const;
+  ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* _internal_mutable_device_debug_packet_capture_allowed();
+  public:
+
+  // optional .enterprise_management.DeviceScheduledRebootProto device_scheduled_reboot = 122;
+  bool has_device_scheduled_reboot() const;
+  private:
+  bool _internal_has_device_scheduled_reboot() const;
+  public:
+  void clear_device_scheduled_reboot();
+  const ::enterprise_management::DeviceScheduledRebootProto& device_scheduled_reboot() const;
+  ::enterprise_management::DeviceScheduledRebootProto* release_device_scheduled_reboot();
+  ::enterprise_management::DeviceScheduledRebootProto* mutable_device_scheduled_reboot();
+  void set_allocated_device_scheduled_reboot(::enterprise_management::DeviceScheduledRebootProto* device_scheduled_reboot);
+  private:
+  const ::enterprise_management::DeviceScheduledRebootProto& _internal_device_scheduled_reboot() const;
+  ::enterprise_management::DeviceScheduledRebootProto* _internal_mutable_device_scheduled_reboot();
+  public:
+
+  // optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2 device_pci_peripheral_data_access_enabled_v2 = 123;
+  bool has_device_pci_peripheral_data_access_enabled_v2() const;
+  private:
+  bool _internal_has_device_pci_peripheral_data_access_enabled_v2() const;
+  public:
+  void clear_device_pci_peripheral_data_access_enabled_v2();
+  const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2& device_pci_peripheral_data_access_enabled_v2() const;
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* release_device_pci_peripheral_data_access_enabled_v2();
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* mutable_device_pci_peripheral_data_access_enabled_v2();
+  void set_allocated_device_pci_peripheral_data_access_enabled_v2(::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* device_pci_peripheral_data_access_enabled_v2);
+  private:
+  const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2& _internal_device_pci_peripheral_data_access_enabled_v2() const;
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* _internal_mutable_device_pci_peripheral_data_access_enabled_v2();
+  public:
+
+  // optional .enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto device_restricted_managed_guest_session_enabled = 124;
+  bool has_device_restricted_managed_guest_session_enabled() const;
+  private:
+  bool _internal_has_device_restricted_managed_guest_session_enabled() const;
+  public:
+  void clear_device_restricted_managed_guest_session_enabled();
+  const ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto& device_restricted_managed_guest_session_enabled() const;
+  ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* release_device_restricted_managed_guest_session_enabled();
+  ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* mutable_device_restricted_managed_guest_session_enabled();
+  void set_allocated_device_restricted_managed_guest_session_enabled(::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* device_restricted_managed_guest_session_enabled);
+  private:
+  const ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto& _internal_device_restricted_managed_guest_session_enabled() const;
+  ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* _internal_mutable_device_restricted_managed_guest_session_enabled();
+  public:
+
+  // optional .enterprise_management.HostnameUserConfigurableProto hostname_user_configurable = 125;
+  bool has_hostname_user_configurable() const;
+  private:
+  bool _internal_has_hostname_user_configurable() const;
+  public:
+  void clear_hostname_user_configurable();
+  const ::enterprise_management::HostnameUserConfigurableProto& hostname_user_configurable() const;
+  ::enterprise_management::HostnameUserConfigurableProto* release_hostname_user_configurable();
+  ::enterprise_management::HostnameUserConfigurableProto* mutable_hostname_user_configurable();
+  void set_allocated_hostname_user_configurable(::enterprise_management::HostnameUserConfigurableProto* hostname_user_configurable);
+  private:
+  const ::enterprise_management::HostnameUserConfigurableProto& _internal_hostname_user_configurable() const;
+  ::enterprise_management::HostnameUserConfigurableProto* _internal_mutable_hostname_user_configurable();
+  public:
+
+  // optional .enterprise_management.BooleanPolicyProto login_screen_prompt_on_multiple_matching_certificates = 126;
+  bool has_login_screen_prompt_on_multiple_matching_certificates() const;
+  private:
+  bool _internal_has_login_screen_prompt_on_multiple_matching_certificates() const;
+  public:
+  void clear_login_screen_prompt_on_multiple_matching_certificates();
+  const ::enterprise_management::BooleanPolicyProto& login_screen_prompt_on_multiple_matching_certificates() const;
+  ::enterprise_management::BooleanPolicyProto* release_login_screen_prompt_on_multiple_matching_certificates();
+  ::enterprise_management::BooleanPolicyProto* mutable_login_screen_prompt_on_multiple_matching_certificates();
+  void set_allocated_login_screen_prompt_on_multiple_matching_certificates(::enterprise_management::BooleanPolicyProto* login_screen_prompt_on_multiple_matching_certificates);
+  private:
+  const ::enterprise_management::BooleanPolicyProto& _internal_login_screen_prompt_on_multiple_matching_certificates() const;
+  ::enterprise_management::BooleanPolicyProto* _internal_mutable_login_screen_prompt_on_multiple_matching_certificates();
+  public:
+
+  // optional .enterprise_management.BooleanPolicyProto kiosk_crx_manifest_update_url_ignored = 127;
+  bool has_kiosk_crx_manifest_update_url_ignored() const;
+  private:
+  bool _internal_has_kiosk_crx_manifest_update_url_ignored() const;
+  public:
+  void clear_kiosk_crx_manifest_update_url_ignored();
+  const ::enterprise_management::BooleanPolicyProto& kiosk_crx_manifest_update_url_ignored() const;
+  ::enterprise_management::BooleanPolicyProto* release_kiosk_crx_manifest_update_url_ignored();
+  ::enterprise_management::BooleanPolicyProto* mutable_kiosk_crx_manifest_update_url_ignored();
+  void set_allocated_kiosk_crx_manifest_update_url_ignored(::enterprise_management::BooleanPolicyProto* kiosk_crx_manifest_update_url_ignored);
+  private:
+  const ::enterprise_management::BooleanPolicyProto& _internal_kiosk_crx_manifest_update_url_ignored() const;
+  ::enterprise_management::BooleanPolicyProto* _internal_mutable_kiosk_crx_manifest_update_url_ignored();
+  public:
+
+  // optional .enterprise_management.DeviceI18nShortcutsEnabledProto device_i18n_shortcuts_enabled = 128;
+  bool has_device_i18n_shortcuts_enabled() const;
+  private:
+  bool _internal_has_device_i18n_shortcuts_enabled() const;
+  public:
+  void clear_device_i18n_shortcuts_enabled();
+  const ::enterprise_management::DeviceI18nShortcutsEnabledProto& device_i18n_shortcuts_enabled() const;
+  ::enterprise_management::DeviceI18nShortcutsEnabledProto* release_device_i18n_shortcuts_enabled();
+  ::enterprise_management::DeviceI18nShortcutsEnabledProto* mutable_device_i18n_shortcuts_enabled();
+  void set_allocated_device_i18n_shortcuts_enabled(::enterprise_management::DeviceI18nShortcutsEnabledProto* device_i18n_shortcuts_enabled);
+  private:
+  const ::enterprise_management::DeviceI18nShortcutsEnabledProto& _internal_device_i18n_shortcuts_enabled() const;
+  ::enterprise_management::DeviceI18nShortcutsEnabledProto* _internal_mutable_device_i18n_shortcuts_enabled();
+  public:
+
+  // optional .enterprise_management.BooleanPolicyProto chromad_to_cloud_migration_enabled = 129;
+  bool has_chromad_to_cloud_migration_enabled() const;
+  private:
+  bool _internal_has_chromad_to_cloud_migration_enabled() const;
+  public:
+  void clear_chromad_to_cloud_migration_enabled();
+  const ::enterprise_management::BooleanPolicyProto& chromad_to_cloud_migration_enabled() const;
+  ::enterprise_management::BooleanPolicyProto* release_chromad_to_cloud_migration_enabled();
+  ::enterprise_management::BooleanPolicyProto* mutable_chromad_to_cloud_migration_enabled();
+  void set_allocated_chromad_to_cloud_migration_enabled(::enterprise_management::BooleanPolicyProto* chromad_to_cloud_migration_enabled);
+  private:
+  const ::enterprise_management::BooleanPolicyProto& _internal_chromad_to_cloud_migration_enabled() const;
+  ::enterprise_management::BooleanPolicyProto* _internal_mutable_chromad_to_cloud_migration_enabled();
+  public:
+
+  // optional .enterprise_management.RevenDeviceHWDataUsageEnabledProto hardware_data_usage_enabled = 130;
+  bool has_hardware_data_usage_enabled() const;
+  private:
+  bool _internal_has_hardware_data_usage_enabled() const;
+  public:
+  void clear_hardware_data_usage_enabled();
+  const ::enterprise_management::RevenDeviceHWDataUsageEnabledProto& hardware_data_usage_enabled() const;
+  ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* release_hardware_data_usage_enabled();
+  ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* mutable_hardware_data_usage_enabled();
+  void set_allocated_hardware_data_usage_enabled(::enterprise_management::RevenDeviceHWDataUsageEnabledProto* hardware_data_usage_enabled);
+  private:
+  const ::enterprise_management::RevenDeviceHWDataUsageEnabledProto& _internal_hardware_data_usage_enabled() const;
+  ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* _internal_mutable_hardware_data_usage_enabled();
+  public:
+
+  // optional .enterprise_management.DeviceLoginScreenWebUILazyLoadingProto login_web_ui_lazy_loading = 131;
+  bool has_login_web_ui_lazy_loading() const;
+  private:
+  bool _internal_has_login_web_ui_lazy_loading() const;
+  public:
+  void clear_login_web_ui_lazy_loading();
+  const ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto& login_web_ui_lazy_loading() const;
+  ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* release_login_web_ui_lazy_loading();
+  ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* mutable_login_web_ui_lazy_loading();
+  void set_allocated_login_web_ui_lazy_loading(::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* login_web_ui_lazy_loading);
+  private:
+  const ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto& _internal_login_web_ui_lazy_loading() const;
+  ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* _internal_mutable_login_web_ui_lazy_loading();
+  public:
+
+  // optional .enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto keylocker_for_storage_encryption_enabled = 132;
+  bool has_keylocker_for_storage_encryption_enabled() const;
+  private:
+  bool _internal_has_keylocker_for_storage_encryption_enabled() const;
+  public:
+  void clear_keylocker_for_storage_encryption_enabled();
+  const ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto& keylocker_for_storage_encryption_enabled() const;
+  ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* release_keylocker_for_storage_encryption_enabled();
+  ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* mutable_keylocker_for_storage_encryption_enabled();
+  void set_allocated_keylocker_for_storage_encryption_enabled(::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* keylocker_for_storage_encryption_enabled);
+  private:
+  const ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto& _internal_keylocker_for_storage_encryption_enabled() const;
+  ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* _internal_mutable_keylocker_for_storage_encryption_enabled();
+  public:
+
+  // optional .enterprise_management.BooleanPolicyProto device_run_automatic_cleanup_on_login = 133;
+  bool has_device_run_automatic_cleanup_on_login() const;
+  private:
+  bool _internal_has_device_run_automatic_cleanup_on_login() const;
+  public:
+  void clear_device_run_automatic_cleanup_on_login();
+  const ::enterprise_management::BooleanPolicyProto& device_run_automatic_cleanup_on_login() const;
+  ::enterprise_management::BooleanPolicyProto* release_device_run_automatic_cleanup_on_login();
+  ::enterprise_management::BooleanPolicyProto* mutable_device_run_automatic_cleanup_on_login();
+  void set_allocated_device_run_automatic_cleanup_on_login(::enterprise_management::BooleanPolicyProto* device_run_automatic_cleanup_on_login);
+  private:
+  const ::enterprise_management::BooleanPolicyProto& _internal_device_run_automatic_cleanup_on_login() const;
+  ::enterprise_management::BooleanPolicyProto* _internal_mutable_device_run_automatic_cleanup_on_login();
+  public:
+
+  // optional .enterprise_management.EncryptedReportingPipelineConfigurationProto device_encrypted_reporting_pipeline_enabled = 134;
+  bool has_device_encrypted_reporting_pipeline_enabled() const;
+  private:
+  bool _internal_has_device_encrypted_reporting_pipeline_enabled() const;
+  public:
+  void clear_device_encrypted_reporting_pipeline_enabled();
+  const ::enterprise_management::EncryptedReportingPipelineConfigurationProto& device_encrypted_reporting_pipeline_enabled() const;
+  ::enterprise_management::EncryptedReportingPipelineConfigurationProto* release_device_encrypted_reporting_pipeline_enabled();
+  ::enterprise_management::EncryptedReportingPipelineConfigurationProto* mutable_device_encrypted_reporting_pipeline_enabled();
+  void set_allocated_device_encrypted_reporting_pipeline_enabled(::enterprise_management::EncryptedReportingPipelineConfigurationProto* device_encrypted_reporting_pipeline_enabled);
+  private:
+  const ::enterprise_management::EncryptedReportingPipelineConfigurationProto& _internal_device_encrypted_reporting_pipeline_enabled() const;
+  ::enterprise_management::EncryptedReportingPipelineConfigurationProto* _internal_mutable_device_encrypted_reporting_pipeline_enabled();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeDeviceSettingsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<5> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::DevicePolicyRefreshRateProto* device_policy_refresh_rate_;
+  ::enterprise_management::UserWhitelistProto* user_whitelist_;
+  ::enterprise_management::GuestModeEnabledProto* guest_mode_enabled_;
+  ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* device_proxy_settings_;
+  ::enterprise_management::CameraEnabledProto* camera_enabled_;
+  ::enterprise_management::ShowUserNamesOnSigninProto* show_user_names_;
+  ::enterprise_management::DataRoamingEnabledProto* data_roaming_enabled_;
+  ::enterprise_management::AllowNewUsersProto* allow_new_users_;
+  ::enterprise_management::MetricsEnabledProto* metrics_enabled_;
+  ::enterprise_management::ReleaseChannelProto* release_channel_;
+  ::enterprise_management::DeviceOpenNetworkConfigurationProto* open_network_configuration_;
+  ::enterprise_management::DeviceReportingProto* device_reporting_;
+  ::enterprise_management::EphemeralUsersEnabledProto* ephemeral_users_enabled_;
+  ::enterprise_management::OBSOLETE_AppPackProto* app_pack_;
+  ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* forced_logout_timeouts_;
+  ::enterprise_management::OBSOLETE_ScreenSaverProto* login_screen_saver_;
+  ::enterprise_management::AutoUpdateSettingsProto* auto_update_settings_;
+  ::enterprise_management::OBSOLETE_StartUpUrlsProto* start_up_urls_;
+  ::enterprise_management::OBSOLETE_PinnedAppsProto* pinned_apps_;
+  ::enterprise_management::SystemTimezoneProto* system_timezone_;
+  ::enterprise_management::DeviceLocalAccountsProto* device_local_accounts_;
+  ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* allow_redeem_offers_;
+  ::enterprise_management::FeatureFlagsProto* feature_flags_;
+  ::enterprise_management::UptimeLimitProto* uptime_limit_;
+  ::enterprise_management::VariationsParameterProto* variations_parameter_;
+  ::enterprise_management::AttestationSettingsProto* attestation_settings_;
+  ::enterprise_management::AccessibilitySettingsProto* accessibility_settings_;
+  ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* supervised_users_settings_;
+  ::enterprise_management::LoginScreenPowerManagementProto* login_screen_power_management_;
+  ::enterprise_management::SystemUse24HourClockProto* use_24hour_clock_;
+  ::enterprise_management::AutoCleanupSettigsProto* auto_clean_up_settings_;
+  ::enterprise_management::SystemSettingsProto* system_settings_;
+  ::enterprise_management::SAMLSettingsProto* saml_settings_;
+  ::enterprise_management::RebootOnShutdownProto* reboot_on_shutdown_;
+  ::enterprise_management::DeviceHeartbeatSettingsProto* device_heartbeat_settings_;
+  ::enterprise_management::ExtensionCacheSizeProto* extension_cache_size_;
+  ::enterprise_management::LoginScreenDomainAutoCompleteProto* login_screen_domain_auto_complete_;
+  ::enterprise_management::DeviceLogUploadSettingsProto* device_log_upload_settings_;
+  ::enterprise_management::DisplayRotationDefaultProto* display_rotation_default_;
+  ::enterprise_management::AllowKioskAppControlChromeVersionProto* allow_kiosk_app_control_chrome_version_;
+  ::enterprise_management::LoginAuthenticationBehaviorProto* login_authentication_behavior_;
+  ::enterprise_management::UsbDetachableWhitelistProto* usb_detachable_whitelist_;
+  ::enterprise_management::AllowBluetoothProto* allow_bluetooth_;
+  ::enterprise_management::DeviceQuirksDownloadEnabledProto* quirks_download_enabled_;
+  ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* login_video_capture_allowed_urls_;
+  ::enterprise_management::DeviceLoginScreenExtensionsProto* device_login_screen_extensions_;
+  ::enterprise_management::NetworkThrottlingEnabledProto* network_throttling_;
+  ::enterprise_management::DeviceWallpaperImageProto* device_wallpaper_image_;
+  ::enterprise_management::LoginScreenLocalesProto* login_screen_locales_;
+  ::enterprise_management::LoginScreenInputMethodsProto* login_screen_input_methods_;
+  ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* device_ecryptfs_migration_strategy_;
+  ::enterprise_management::DeviceSecondFactorAuthenticationProto* device_second_factor_authentication_;
+  ::enterprise_management::CastReceiverNameProto* cast_receiver_name_;
+  ::enterprise_management::DeviceOffHoursProto* device_off_hours_;
+  ::enterprise_management::DeviceNativePrintersProto* native_device_printers_;
+  ::enterprise_management::DeviceNativePrintersAccessModeProto* native_device_printers_access_mode_;
+  ::enterprise_management::DeviceNativePrintersBlacklistProto* native_device_printers_blacklist_;
+  ::enterprise_management::DeviceNativePrintersWhitelistProto* native_device_printers_whitelist_;
+  ::enterprise_management::TPMFirmwareUpdateSettingsProto* tpm_firmware_update_settings_;
+  ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* minimum_required_version_;
+  ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* device_login_screen_auto_select_certificate_for_urls_;
+  ::enterprise_management::UnaffiliatedArcAllowedProto* unaffiliated_arc_allowed_;
+  ::enterprise_management::NetworkHostnameProto* network_hostname_;
+  ::enterprise_management::DeviceKerberosEncryptionTypesProto* device_kerberos_encryption_types_;
+  ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* device_user_policy_loopback_processing_mode_;
+  ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* device_login_screen_isolate_origins_;
+  ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* device_login_screen_site_per_process_;
+  ::enterprise_management::VirtualMachinesAllowedProto* virtual_machines_allowed_;
+  ::enterprise_management::DeviceMachinePasswordChangeRateProto* device_machine_password_change_rate_;
+  ::enterprise_management::SamlLoginAuthenticationTypeProto* saml_login_authentication_type_;
+  ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* device_unaffiliated_crostini_allowed_;
+  ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* device_wifi_fast_transition_enabled_;
+  ::enterprise_management::DeviceDisplayResolutionProto* device_display_resolution_;
+  ::enterprise_management::PluginVmAllowedProto* plugin_vm_allowed_;
+  ::enterprise_management::DeviceGpoCacheLifetimeProto* device_gpo_cache_lifetime_;
+  ::enterprise_management::DeviceAuthDataCacheLifetimeProto* device_auth_data_cache_lifetime_;
+  ::enterprise_management::PluginVmLicenseKeyProto* plugin_vm_license_key_;
+  ::enterprise_management::DeviceRebootOnUserSignoutProto* device_reboot_on_user_signout_;
+  ::enterprise_management::DeviceWilcoDtcAllowedProto* device_wilco_dtc_allowed_;
+  ::enterprise_management::DeviceWilcoDtcConfigurationProto* device_wilco_dtc_configuration_;
+  ::enterprise_management::DeviceWiFiAllowedProto* device_wifi_allowed_;
+  ::enterprise_management::DevicePowerPeakShiftProto* device_power_peak_shift_;
+  ::enterprise_management::DeviceBootOnAcProto* device_boot_on_ac_;
+  ::enterprise_management::DeviceDockMacAddressSourceProto* device_dock_mac_address_source_;
+  ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* device_advanced_battery_charge_mode_;
+  ::enterprise_management::DeviceBatteryChargeModeProto* device_battery_charge_mode_;
+  ::enterprise_management::DeviceUsbPowerShareProto* device_usb_power_share_;
+  ::enterprise_management::DeviceScheduledUpdateCheckProto* device_scheduled_update_check_;
+  ::enterprise_management::DevicePowerwashAllowedProto* device_powerwash_allowed_;
+  ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* device_login_screen_webusb_allow_devices_for_urls_;
+  ::enterprise_management::BooleanPolicyProto* device_login_screen_system_info_enforced_;
+  ::enterprise_management::StringListPolicyProto* device_web_based_attestation_allowed_urls_;
+  ::enterprise_management::BooleanPolicyProto* device_show_numeric_keyboard_for_password_;
+  ::enterprise_management::BooleanPolicyProto* login_screen_primary_mouse_button_switch_;
+  ::enterprise_management::StringPolicyProto* device_minimum_version_;
+  ::enterprise_management::SystemProxySettingsProto* system_proxy_settings_;
+  ::enterprise_management::IntegerPolicyProto* device_chrome_variations_type_;
+  ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* device_login_screen_privacy_screen_enabled_;
+  ::enterprise_management::RequiredClientCertificateForDeviceProto* required_client_certificate_for_device_;
+  ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* device_crostini_arc_adb_sideloading_allowed_;
+  ::enterprise_management::StringPolicyProto* device_minimum_version_aue_message_;
+  ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* managed_guest_session_privacy_warnings_;
+  ::enterprise_management::DeviceExternalPrintServersProto* external_print_servers_;
+  ::enterprise_management::DeviceExternalPrintServersAllowlistProto* external_print_servers_allowlist_;
+  ::enterprise_management::DevicePrintersAccessModeProto* device_printers_access_mode_;
+  ::enterprise_management::DevicePrintersBlocklistProto* device_printers_blocklist_;
+  ::enterprise_management::DevicePrintersAllowlistProto* device_printers_allowlist_;
+  ::enterprise_management::DevicePrintersProto* device_printers_;
+  ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* device_show_low_disk_space_notification_;
+  ::enterprise_management::UserAllowlistProto* user_allowlist_;
+  ::enterprise_management::UsbDetachableAllowlistProto* usb_detachable_allowlist_;
+  ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* family_link_accounts_allowed_;
+  ::enterprise_management::DeviceArcDataSnapshotHoursProto* arc_data_snapshot_hours_;
+  ::enterprise_management::BooleanPolicyProto* device_allow_mgs_to_store_display_properties_;
+  ::enterprise_management::DeviceSystemWideTracingEnabledProto* device_system_wide_tracing_enabled_;
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* device_pci_peripheral_data_access_enabled_;
+  ::enterprise_management::DeviceBorealisAllowedProto* device_borealis_allowed_;
+  ::enterprise_management::DeviceAllowedBluetoothServicesProto* device_allowed_bluetooth_services_;
+  ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* device_debug_packet_capture_allowed_;
+  ::enterprise_management::DeviceScheduledRebootProto* device_scheduled_reboot_;
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* device_pci_peripheral_data_access_enabled_v2_;
+  ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* device_restricted_managed_guest_session_enabled_;
+  ::enterprise_management::HostnameUserConfigurableProto* hostname_user_configurable_;
+  ::enterprise_management::BooleanPolicyProto* login_screen_prompt_on_multiple_matching_certificates_;
+  ::enterprise_management::BooleanPolicyProto* kiosk_crx_manifest_update_url_ignored_;
+  ::enterprise_management::DeviceI18nShortcutsEnabledProto* device_i18n_shortcuts_enabled_;
+  ::enterprise_management::BooleanPolicyProto* chromad_to_cloud_migration_enabled_;
+  ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* hardware_data_usage_enabled_;
+  ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* login_web_ui_lazy_loading_;
+  ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* keylocker_for_storage_encryption_enabled_;
+  ::enterprise_management::BooleanPolicyProto* device_run_automatic_cleanup_on_login_;
+  ::enterprise_management::EncryptedReportingPipelineConfigurationProto* device_encrypted_reporting_pipeline_enabled_;
+  friend struct ::TableStruct_chrome_5fdevice_5fpolicy_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// DevicePolicyRefreshRateProto
+
+// optional int64 device_policy_refresh_rate = 1;
+inline bool DevicePolicyRefreshRateProto::_internal_has_device_policy_refresh_rate() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePolicyRefreshRateProto::has_device_policy_refresh_rate() const {
+  return _internal_has_device_policy_refresh_rate();
+}
+inline void DevicePolicyRefreshRateProto::clear_device_policy_refresh_rate() {
+  device_policy_refresh_rate_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DevicePolicyRefreshRateProto::_internal_device_policy_refresh_rate() const {
+  return device_policy_refresh_rate_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DevicePolicyRefreshRateProto::device_policy_refresh_rate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePolicyRefreshRateProto.device_policy_refresh_rate)
+  return _internal_device_policy_refresh_rate();
+}
+inline void DevicePolicyRefreshRateProto::_internal_set_device_policy_refresh_rate(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_policy_refresh_rate_ = value;
+}
+inline void DevicePolicyRefreshRateProto::set_device_policy_refresh_rate(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_device_policy_refresh_rate(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePolicyRefreshRateProto.device_policy_refresh_rate)
+}
+
+// -------------------------------------------------------------------
+
+// UserWhitelistProto
+
+// repeated string user_whitelist = 1;
+inline int UserWhitelistProto::_internal_user_whitelist_size() const {
+  return user_whitelist_.size();
+}
+inline int UserWhitelistProto::user_whitelist_size() const {
+  return _internal_user_whitelist_size();
+}
+inline void UserWhitelistProto::clear_user_whitelist() {
+  user_whitelist_.Clear();
+}
+inline std::string* UserWhitelistProto::add_user_whitelist() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.UserWhitelistProto.user_whitelist)
+  return _internal_add_user_whitelist();
+}
+inline const std::string& UserWhitelistProto::_internal_user_whitelist(int index) const {
+  return user_whitelist_.Get(index);
+}
+inline const std::string& UserWhitelistProto::user_whitelist(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UserWhitelistProto.user_whitelist)
+  return _internal_user_whitelist(index);
+}
+inline std::string* UserWhitelistProto::mutable_user_whitelist(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.UserWhitelistProto.user_whitelist)
+  return user_whitelist_.Mutable(index);
+}
+inline void UserWhitelistProto::set_user_whitelist(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.UserWhitelistProto.user_whitelist)
+  user_whitelist_.Mutable(index)->assign(value);
+}
+inline void UserWhitelistProto::set_user_whitelist(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.UserWhitelistProto.user_whitelist)
+  user_whitelist_.Mutable(index)->assign(std::move(value));
+}
+inline void UserWhitelistProto::set_user_whitelist(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  user_whitelist_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.UserWhitelistProto.user_whitelist)
+}
+inline void UserWhitelistProto::set_user_whitelist(int index, const char* value, size_t size) {
+  user_whitelist_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.UserWhitelistProto.user_whitelist)
+}
+inline std::string* UserWhitelistProto::_internal_add_user_whitelist() {
+  return user_whitelist_.Add();
+}
+inline void UserWhitelistProto::add_user_whitelist(const std::string& value) {
+  user_whitelist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.UserWhitelistProto.user_whitelist)
+}
+inline void UserWhitelistProto::add_user_whitelist(std::string&& value) {
+  user_whitelist_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.UserWhitelistProto.user_whitelist)
+}
+inline void UserWhitelistProto::add_user_whitelist(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  user_whitelist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.UserWhitelistProto.user_whitelist)
+}
+inline void UserWhitelistProto::add_user_whitelist(const char* value, size_t size) {
+  user_whitelist_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.UserWhitelistProto.user_whitelist)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+UserWhitelistProto::user_whitelist() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.UserWhitelistProto.user_whitelist)
+  return user_whitelist_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+UserWhitelistProto::mutable_user_whitelist() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.UserWhitelistProto.user_whitelist)
+  return &user_whitelist_;
+}
+
+// -------------------------------------------------------------------
+
+// UserAllowlistProto
+
+// repeated string user_allowlist = 1;
+inline int UserAllowlistProto::_internal_user_allowlist_size() const {
+  return user_allowlist_.size();
+}
+inline int UserAllowlistProto::user_allowlist_size() const {
+  return _internal_user_allowlist_size();
+}
+inline void UserAllowlistProto::clear_user_allowlist() {
+  user_allowlist_.Clear();
+}
+inline std::string* UserAllowlistProto::add_user_allowlist() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.UserAllowlistProto.user_allowlist)
+  return _internal_add_user_allowlist();
+}
+inline const std::string& UserAllowlistProto::_internal_user_allowlist(int index) const {
+  return user_allowlist_.Get(index);
+}
+inline const std::string& UserAllowlistProto::user_allowlist(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UserAllowlistProto.user_allowlist)
+  return _internal_user_allowlist(index);
+}
+inline std::string* UserAllowlistProto::mutable_user_allowlist(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.UserAllowlistProto.user_allowlist)
+  return user_allowlist_.Mutable(index);
+}
+inline void UserAllowlistProto::set_user_allowlist(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.UserAllowlistProto.user_allowlist)
+  user_allowlist_.Mutable(index)->assign(value);
+}
+inline void UserAllowlistProto::set_user_allowlist(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.UserAllowlistProto.user_allowlist)
+  user_allowlist_.Mutable(index)->assign(std::move(value));
+}
+inline void UserAllowlistProto::set_user_allowlist(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  user_allowlist_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.UserAllowlistProto.user_allowlist)
+}
+inline void UserAllowlistProto::set_user_allowlist(int index, const char* value, size_t size) {
+  user_allowlist_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.UserAllowlistProto.user_allowlist)
+}
+inline std::string* UserAllowlistProto::_internal_add_user_allowlist() {
+  return user_allowlist_.Add();
+}
+inline void UserAllowlistProto::add_user_allowlist(const std::string& value) {
+  user_allowlist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.UserAllowlistProto.user_allowlist)
+}
+inline void UserAllowlistProto::add_user_allowlist(std::string&& value) {
+  user_allowlist_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.UserAllowlistProto.user_allowlist)
+}
+inline void UserAllowlistProto::add_user_allowlist(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  user_allowlist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.UserAllowlistProto.user_allowlist)
+}
+inline void UserAllowlistProto::add_user_allowlist(const char* value, size_t size) {
+  user_allowlist_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.UserAllowlistProto.user_allowlist)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+UserAllowlistProto::user_allowlist() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.UserAllowlistProto.user_allowlist)
+  return user_allowlist_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+UserAllowlistProto::mutable_user_allowlist() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.UserAllowlistProto.user_allowlist)
+  return &user_allowlist_;
+}
+
+// -------------------------------------------------------------------
+
+// AllowNewUsersProto
+
+// optional bool allow_new_users = 1 [default = true];
+inline bool AllowNewUsersProto::_internal_has_allow_new_users() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AllowNewUsersProto::has_allow_new_users() const {
+  return _internal_has_allow_new_users();
+}
+inline void AllowNewUsersProto::clear_allow_new_users() {
+  allow_new_users_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool AllowNewUsersProto::_internal_allow_new_users() const {
+  return allow_new_users_;
+}
+inline bool AllowNewUsersProto::allow_new_users() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AllowNewUsersProto.allow_new_users)
+  return _internal_allow_new_users();
+}
+inline void AllowNewUsersProto::_internal_set_allow_new_users(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  allow_new_users_ = value;
+}
+inline void AllowNewUsersProto::set_allow_new_users(bool value) {
+  _internal_set_allow_new_users(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AllowNewUsersProto.allow_new_users)
+}
+
+// -------------------------------------------------------------------
+
+// GuestModeEnabledProto
+
+// optional bool guest_mode_enabled = 1 [default = true];
+inline bool GuestModeEnabledProto::_internal_has_guest_mode_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool GuestModeEnabledProto::has_guest_mode_enabled() const {
+  return _internal_has_guest_mode_enabled();
+}
+inline void GuestModeEnabledProto::clear_guest_mode_enabled() {
+  guest_mode_enabled_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool GuestModeEnabledProto::_internal_guest_mode_enabled() const {
+  return guest_mode_enabled_;
+}
+inline bool GuestModeEnabledProto::guest_mode_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GuestModeEnabledProto.guest_mode_enabled)
+  return _internal_guest_mode_enabled();
+}
+inline void GuestModeEnabledProto::_internal_set_guest_mode_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  guest_mode_enabled_ = value;
+}
+inline void GuestModeEnabledProto::set_guest_mode_enabled(bool value) {
+  _internal_set_guest_mode_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.GuestModeEnabledProto.guest_mode_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// ShowUserNamesOnSigninProto
+
+// optional bool show_user_names = 1 [default = true];
+inline bool ShowUserNamesOnSigninProto::_internal_has_show_user_names() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ShowUserNamesOnSigninProto::has_show_user_names() const {
+  return _internal_has_show_user_names();
+}
+inline void ShowUserNamesOnSigninProto::clear_show_user_names() {
+  show_user_names_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool ShowUserNamesOnSigninProto::_internal_show_user_names() const {
+  return show_user_names_;
+}
+inline bool ShowUserNamesOnSigninProto::show_user_names() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ShowUserNamesOnSigninProto.show_user_names)
+  return _internal_show_user_names();
+}
+inline void ShowUserNamesOnSigninProto::_internal_set_show_user_names(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  show_user_names_ = value;
+}
+inline void ShowUserNamesOnSigninProto::set_show_user_names(bool value) {
+  _internal_set_show_user_names(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ShowUserNamesOnSigninProto.show_user_names)
+}
+
+// -------------------------------------------------------------------
+
+// DataRoamingEnabledProto
+
+// optional bool data_roaming_enabled = 1 [default = false];
+inline bool DataRoamingEnabledProto::_internal_has_data_roaming_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DataRoamingEnabledProto::has_data_roaming_enabled() const {
+  return _internal_has_data_roaming_enabled();
+}
+inline void DataRoamingEnabledProto::clear_data_roaming_enabled() {
+  data_roaming_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DataRoamingEnabledProto::_internal_data_roaming_enabled() const {
+  return data_roaming_enabled_;
+}
+inline bool DataRoamingEnabledProto::data_roaming_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DataRoamingEnabledProto.data_roaming_enabled)
+  return _internal_data_roaming_enabled();
+}
+inline void DataRoamingEnabledProto::_internal_set_data_roaming_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  data_roaming_enabled_ = value;
+}
+inline void DataRoamingEnabledProto::set_data_roaming_enabled(bool value) {
+  _internal_set_data_roaming_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DataRoamingEnabledProto.data_roaming_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_DeviceProxySettingsProto
+
+// optional string OBSOLETE_proxy_mode = 1 [deprecated = true];
+inline bool OBSOLETE_DeviceProxySettingsProto::_internal_has_obsolete_proxy_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OBSOLETE_DeviceProxySettingsProto::has_obsolete_proxy_mode() const {
+  return _internal_has_obsolete_proxy_mode();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::clear_obsolete_proxy_mode() {
+  obsolete_proxy_mode_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& OBSOLETE_DeviceProxySettingsProto::obsolete_proxy_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_mode)
+  return _internal_obsolete_proxy_mode();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_mode(const std::string& value) {
+  _internal_set_obsolete_proxy_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_mode)
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::mutable_obsolete_proxy_mode() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_mode)
+  return _internal_mutable_obsolete_proxy_mode();
+}
+inline const std::string& OBSOLETE_DeviceProxySettingsProto::_internal_obsolete_proxy_mode() const {
+  return obsolete_proxy_mode_.GetNoArena();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::_internal_set_obsolete_proxy_mode(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_proxy_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_mode(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_proxy_mode_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_mode)
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_mode(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_proxy_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_mode)
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_mode(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_proxy_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_mode)
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::_internal_mutable_obsolete_proxy_mode() {
+  _has_bits_[0] |= 0x00000001u;
+  return obsolete_proxy_mode_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::release_obsolete_proxy_mode() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_mode)
+  if (!_internal_has_obsolete_proxy_mode()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return obsolete_proxy_mode_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_allocated_obsolete_proxy_mode(std::string* obsolete_proxy_mode) {
+  if (obsolete_proxy_mode != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  obsolete_proxy_mode_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_proxy_mode);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_mode)
+}
+
+// optional string OBSOLETE_proxy_server = 2 [deprecated = true];
+inline bool OBSOLETE_DeviceProxySettingsProto::_internal_has_obsolete_proxy_server() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool OBSOLETE_DeviceProxySettingsProto::has_obsolete_proxy_server() const {
+  return _internal_has_obsolete_proxy_server();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::clear_obsolete_proxy_server() {
+  obsolete_proxy_server_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& OBSOLETE_DeviceProxySettingsProto::obsolete_proxy_server() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_server)
+  return _internal_obsolete_proxy_server();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_server(const std::string& value) {
+  _internal_set_obsolete_proxy_server(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_server)
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::mutable_obsolete_proxy_server() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_server)
+  return _internal_mutable_obsolete_proxy_server();
+}
+inline const std::string& OBSOLETE_DeviceProxySettingsProto::_internal_obsolete_proxy_server() const {
+  return obsolete_proxy_server_.GetNoArena();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::_internal_set_obsolete_proxy_server(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_proxy_server_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_server(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_proxy_server_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_server)
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_server(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_proxy_server_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_server)
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_server(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_proxy_server_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_server)
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::_internal_mutable_obsolete_proxy_server() {
+  _has_bits_[0] |= 0x00000002u;
+  return obsolete_proxy_server_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::release_obsolete_proxy_server() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_server)
+  if (!_internal_has_obsolete_proxy_server()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return obsolete_proxy_server_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_allocated_obsolete_proxy_server(std::string* obsolete_proxy_server) {
+  if (obsolete_proxy_server != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  obsolete_proxy_server_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_proxy_server);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_server)
+}
+
+// optional string OBSOLETE_proxy_pac_url = 3 [deprecated = true];
+inline bool OBSOLETE_DeviceProxySettingsProto::_internal_has_obsolete_proxy_pac_url() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool OBSOLETE_DeviceProxySettingsProto::has_obsolete_proxy_pac_url() const {
+  return _internal_has_obsolete_proxy_pac_url();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::clear_obsolete_proxy_pac_url() {
+  obsolete_proxy_pac_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& OBSOLETE_DeviceProxySettingsProto::obsolete_proxy_pac_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_pac_url)
+  return _internal_obsolete_proxy_pac_url();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_pac_url(const std::string& value) {
+  _internal_set_obsolete_proxy_pac_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_pac_url)
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::mutable_obsolete_proxy_pac_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_pac_url)
+  return _internal_mutable_obsolete_proxy_pac_url();
+}
+inline const std::string& OBSOLETE_DeviceProxySettingsProto::_internal_obsolete_proxy_pac_url() const {
+  return obsolete_proxy_pac_url_.GetNoArena();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::_internal_set_obsolete_proxy_pac_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  obsolete_proxy_pac_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_pac_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  obsolete_proxy_pac_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_pac_url)
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_pac_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  obsolete_proxy_pac_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_pac_url)
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_pac_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  obsolete_proxy_pac_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_pac_url)
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::_internal_mutable_obsolete_proxy_pac_url() {
+  _has_bits_[0] |= 0x00000004u;
+  return obsolete_proxy_pac_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::release_obsolete_proxy_pac_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_pac_url)
+  if (!_internal_has_obsolete_proxy_pac_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return obsolete_proxy_pac_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_allocated_obsolete_proxy_pac_url(std::string* obsolete_proxy_pac_url) {
+  if (obsolete_proxy_pac_url != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  obsolete_proxy_pac_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_proxy_pac_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_pac_url)
+}
+
+// optional string OBSOLETE_proxy_bypass_list = 4 [deprecated = true];
+inline bool OBSOLETE_DeviceProxySettingsProto::_internal_has_obsolete_proxy_bypass_list() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool OBSOLETE_DeviceProxySettingsProto::has_obsolete_proxy_bypass_list() const {
+  return _internal_has_obsolete_proxy_bypass_list();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::clear_obsolete_proxy_bypass_list() {
+  obsolete_proxy_bypass_list_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& OBSOLETE_DeviceProxySettingsProto::obsolete_proxy_bypass_list() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_bypass_list)
+  return _internal_obsolete_proxy_bypass_list();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_bypass_list(const std::string& value) {
+  _internal_set_obsolete_proxy_bypass_list(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_bypass_list)
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::mutable_obsolete_proxy_bypass_list() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_bypass_list)
+  return _internal_mutable_obsolete_proxy_bypass_list();
+}
+inline const std::string& OBSOLETE_DeviceProxySettingsProto::_internal_obsolete_proxy_bypass_list() const {
+  return obsolete_proxy_bypass_list_.GetNoArena();
+}
+inline void OBSOLETE_DeviceProxySettingsProto::_internal_set_obsolete_proxy_bypass_list(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  obsolete_proxy_bypass_list_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_bypass_list(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  obsolete_proxy_bypass_list_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_bypass_list)
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_bypass_list(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  obsolete_proxy_bypass_list_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_bypass_list)
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_obsolete_proxy_bypass_list(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  obsolete_proxy_bypass_list_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_bypass_list)
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::_internal_mutable_obsolete_proxy_bypass_list() {
+  _has_bits_[0] |= 0x00000008u;
+  return obsolete_proxy_bypass_list_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_DeviceProxySettingsProto::release_obsolete_proxy_bypass_list() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_bypass_list)
+  if (!_internal_has_obsolete_proxy_bypass_list()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return obsolete_proxy_bypass_list_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_DeviceProxySettingsProto::set_allocated_obsolete_proxy_bypass_list(std::string* obsolete_proxy_bypass_list) {
+  if (obsolete_proxy_bypass_list != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  obsolete_proxy_bypass_list_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_proxy_bypass_list);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_DeviceProxySettingsProto.OBSOLETE_proxy_bypass_list)
+}
+
+// -------------------------------------------------------------------
+
+// CameraEnabledProto
+
+// optional bool camera_enabled = 1;
+inline bool CameraEnabledProto::_internal_has_camera_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CameraEnabledProto::has_camera_enabled() const {
+  return _internal_has_camera_enabled();
+}
+inline void CameraEnabledProto::clear_camera_enabled() {
+  camera_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool CameraEnabledProto::_internal_camera_enabled() const {
+  return camera_enabled_;
+}
+inline bool CameraEnabledProto::camera_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CameraEnabledProto.camera_enabled)
+  return _internal_camera_enabled();
+}
+inline void CameraEnabledProto::_internal_set_camera_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  camera_enabled_ = value;
+}
+inline void CameraEnabledProto::set_camera_enabled(bool value) {
+  _internal_set_camera_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CameraEnabledProto.camera_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// MetricsEnabledProto
+
+// optional bool metrics_enabled = 1;
+inline bool MetricsEnabledProto::_internal_has_metrics_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool MetricsEnabledProto::has_metrics_enabled() const {
+  return _internal_has_metrics_enabled();
+}
+inline void MetricsEnabledProto::clear_metrics_enabled() {
+  metrics_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool MetricsEnabledProto::_internal_metrics_enabled() const {
+  return metrics_enabled_;
+}
+inline bool MetricsEnabledProto::metrics_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.MetricsEnabledProto.metrics_enabled)
+  return _internal_metrics_enabled();
+}
+inline void MetricsEnabledProto::_internal_set_metrics_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  metrics_enabled_ = value;
+}
+inline void MetricsEnabledProto::set_metrics_enabled(bool value) {
+  _internal_set_metrics_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.MetricsEnabledProto.metrics_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// ReleaseChannelProto
+
+// optional string release_channel = 1;
+inline bool ReleaseChannelProto::_internal_has_release_channel() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ReleaseChannelProto::has_release_channel() const {
+  return _internal_has_release_channel();
+}
+inline void ReleaseChannelProto::clear_release_channel() {
+  release_channel_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ReleaseChannelProto::release_channel() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ReleaseChannelProto.release_channel)
+  return _internal_release_channel();
+}
+inline void ReleaseChannelProto::set_release_channel(const std::string& value) {
+  _internal_set_release_channel(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ReleaseChannelProto.release_channel)
+}
+inline std::string* ReleaseChannelProto::mutable_release_channel() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ReleaseChannelProto.release_channel)
+  return _internal_mutable_release_channel();
+}
+inline const std::string& ReleaseChannelProto::_internal_release_channel() const {
+  return release_channel_.GetNoArena();
+}
+inline void ReleaseChannelProto::_internal_set_release_channel(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  release_channel_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ReleaseChannelProto::set_release_channel(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  release_channel_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ReleaseChannelProto.release_channel)
+}
+inline void ReleaseChannelProto::set_release_channel(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  release_channel_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ReleaseChannelProto.release_channel)
+}
+inline void ReleaseChannelProto::set_release_channel(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  release_channel_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ReleaseChannelProto.release_channel)
+}
+inline std::string* ReleaseChannelProto::_internal_mutable_release_channel() {
+  _has_bits_[0] |= 0x00000001u;
+  return release_channel_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ReleaseChannelProto::release_release_channel() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ReleaseChannelProto.release_channel)
+  if (!_internal_has_release_channel()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return release_channel_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ReleaseChannelProto::set_allocated_release_channel(std::string* release_channel) {
+  if (release_channel != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  release_channel_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), release_channel);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ReleaseChannelProto.release_channel)
+}
+
+// optional bool release_channel_delegated = 2;
+inline bool ReleaseChannelProto::_internal_has_release_channel_delegated() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ReleaseChannelProto::has_release_channel_delegated() const {
+  return _internal_has_release_channel_delegated();
+}
+inline void ReleaseChannelProto::clear_release_channel_delegated() {
+  release_channel_delegated_ = false;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool ReleaseChannelProto::_internal_release_channel_delegated() const {
+  return release_channel_delegated_;
+}
+inline bool ReleaseChannelProto::release_channel_delegated() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ReleaseChannelProto.release_channel_delegated)
+  return _internal_release_channel_delegated();
+}
+inline void ReleaseChannelProto::_internal_set_release_channel_delegated(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  release_channel_delegated_ = value;
+}
+inline void ReleaseChannelProto::set_release_channel_delegated(bool value) {
+  _internal_set_release_channel_delegated(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ReleaseChannelProto.release_channel_delegated)
+}
+
+// optional string release_lts_tag = 3;
+inline bool ReleaseChannelProto::_internal_has_release_lts_tag() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ReleaseChannelProto::has_release_lts_tag() const {
+  return _internal_has_release_lts_tag();
+}
+inline void ReleaseChannelProto::clear_release_lts_tag() {
+  release_lts_tag_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ReleaseChannelProto::release_lts_tag() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ReleaseChannelProto.release_lts_tag)
+  return _internal_release_lts_tag();
+}
+inline void ReleaseChannelProto::set_release_lts_tag(const std::string& value) {
+  _internal_set_release_lts_tag(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ReleaseChannelProto.release_lts_tag)
+}
+inline std::string* ReleaseChannelProto::mutable_release_lts_tag() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ReleaseChannelProto.release_lts_tag)
+  return _internal_mutable_release_lts_tag();
+}
+inline const std::string& ReleaseChannelProto::_internal_release_lts_tag() const {
+  return release_lts_tag_.GetNoArena();
+}
+inline void ReleaseChannelProto::_internal_set_release_lts_tag(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  release_lts_tag_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ReleaseChannelProto::set_release_lts_tag(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  release_lts_tag_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ReleaseChannelProto.release_lts_tag)
+}
+inline void ReleaseChannelProto::set_release_lts_tag(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  release_lts_tag_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ReleaseChannelProto.release_lts_tag)
+}
+inline void ReleaseChannelProto::set_release_lts_tag(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  release_lts_tag_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ReleaseChannelProto.release_lts_tag)
+}
+inline std::string* ReleaseChannelProto::_internal_mutable_release_lts_tag() {
+  _has_bits_[0] |= 0x00000002u;
+  return release_lts_tag_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ReleaseChannelProto::release_release_lts_tag() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ReleaseChannelProto.release_lts_tag)
+  if (!_internal_has_release_lts_tag()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return release_lts_tag_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ReleaseChannelProto::set_allocated_release_lts_tag(std::string* release_lts_tag) {
+  if (release_lts_tag != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  release_lts_tag_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), release_lts_tag);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ReleaseChannelProto.release_lts_tag)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceOpenNetworkConfigurationProto
+
+// optional string open_network_configuration = 1;
+inline bool DeviceOpenNetworkConfigurationProto::_internal_has_open_network_configuration() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceOpenNetworkConfigurationProto::has_open_network_configuration() const {
+  return _internal_has_open_network_configuration();
+}
+inline void DeviceOpenNetworkConfigurationProto::clear_open_network_configuration() {
+  open_network_configuration_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceOpenNetworkConfigurationProto::open_network_configuration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceOpenNetworkConfigurationProto.open_network_configuration)
+  return _internal_open_network_configuration();
+}
+inline void DeviceOpenNetworkConfigurationProto::set_open_network_configuration(const std::string& value) {
+  _internal_set_open_network_configuration(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceOpenNetworkConfigurationProto.open_network_configuration)
+}
+inline std::string* DeviceOpenNetworkConfigurationProto::mutable_open_network_configuration() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceOpenNetworkConfigurationProto.open_network_configuration)
+  return _internal_mutable_open_network_configuration();
+}
+inline const std::string& DeviceOpenNetworkConfigurationProto::_internal_open_network_configuration() const {
+  return open_network_configuration_.GetNoArena();
+}
+inline void DeviceOpenNetworkConfigurationProto::_internal_set_open_network_configuration(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  open_network_configuration_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceOpenNetworkConfigurationProto::set_open_network_configuration(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  open_network_configuration_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceOpenNetworkConfigurationProto.open_network_configuration)
+}
+inline void DeviceOpenNetworkConfigurationProto::set_open_network_configuration(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  open_network_configuration_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceOpenNetworkConfigurationProto.open_network_configuration)
+}
+inline void DeviceOpenNetworkConfigurationProto::set_open_network_configuration(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  open_network_configuration_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceOpenNetworkConfigurationProto.open_network_configuration)
+}
+inline std::string* DeviceOpenNetworkConfigurationProto::_internal_mutable_open_network_configuration() {
+  _has_bits_[0] |= 0x00000001u;
+  return open_network_configuration_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceOpenNetworkConfigurationProto::release_open_network_configuration() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceOpenNetworkConfigurationProto.open_network_configuration)
+  if (!_internal_has_open_network_configuration()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return open_network_configuration_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceOpenNetworkConfigurationProto::set_allocated_open_network_configuration(std::string* open_network_configuration) {
+  if (open_network_configuration != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  open_network_configuration_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), open_network_configuration);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceOpenNetworkConfigurationProto.open_network_configuration)
+}
+
+// -------------------------------------------------------------------
+
+// NetworkHostnameProto
+
+// optional string device_hostname_template = 1;
+inline bool NetworkHostnameProto::_internal_has_device_hostname_template() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool NetworkHostnameProto::has_device_hostname_template() const {
+  return _internal_has_device_hostname_template();
+}
+inline void NetworkHostnameProto::clear_device_hostname_template() {
+  device_hostname_template_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& NetworkHostnameProto::device_hostname_template() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkHostnameProto.device_hostname_template)
+  return _internal_device_hostname_template();
+}
+inline void NetworkHostnameProto::set_device_hostname_template(const std::string& value) {
+  _internal_set_device_hostname_template(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkHostnameProto.device_hostname_template)
+}
+inline std::string* NetworkHostnameProto::mutable_device_hostname_template() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkHostnameProto.device_hostname_template)
+  return _internal_mutable_device_hostname_template();
+}
+inline const std::string& NetworkHostnameProto::_internal_device_hostname_template() const {
+  return device_hostname_template_.GetNoArena();
+}
+inline void NetworkHostnameProto::_internal_set_device_hostname_template(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_hostname_template_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkHostnameProto::set_device_hostname_template(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_hostname_template_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkHostnameProto.device_hostname_template)
+}
+inline void NetworkHostnameProto::set_device_hostname_template(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_hostname_template_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkHostnameProto.device_hostname_template)
+}
+inline void NetworkHostnameProto::set_device_hostname_template(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_hostname_template_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkHostnameProto.device_hostname_template)
+}
+inline std::string* NetworkHostnameProto::_internal_mutable_device_hostname_template() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_hostname_template_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkHostnameProto::release_device_hostname_template() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkHostnameProto.device_hostname_template)
+  if (!_internal_has_device_hostname_template()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_hostname_template_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkHostnameProto::set_allocated_device_hostname_template(std::string* device_hostname_template) {
+  if (device_hostname_template != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_hostname_template_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_hostname_template);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkHostnameProto.device_hostname_template)
+}
+
+// -------------------------------------------------------------------
+
+// HostnameUserConfigurableProto
+
+// optional bool device_hostname_user_configurable = 1 [default = false];
+inline bool HostnameUserConfigurableProto::_internal_has_device_hostname_user_configurable() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool HostnameUserConfigurableProto::has_device_hostname_user_configurable() const {
+  return _internal_has_device_hostname_user_configurable();
+}
+inline void HostnameUserConfigurableProto::clear_device_hostname_user_configurable() {
+  device_hostname_user_configurable_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool HostnameUserConfigurableProto::_internal_device_hostname_user_configurable() const {
+  return device_hostname_user_configurable_;
+}
+inline bool HostnameUserConfigurableProto::device_hostname_user_configurable() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.HostnameUserConfigurableProto.device_hostname_user_configurable)
+  return _internal_device_hostname_user_configurable();
+}
+inline void HostnameUserConfigurableProto::_internal_set_device_hostname_user_configurable(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_hostname_user_configurable_ = value;
+}
+inline void HostnameUserConfigurableProto::set_device_hostname_user_configurable(bool value) {
+  _internal_set_device_hostname_user_configurable(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.HostnameUserConfigurableProto.device_hostname_user_configurable)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceReportingProto
+
+// optional bool report_version_info = 1 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_version_info() const {
+  bool value = (_has_bits_[0] & 0x02000000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_version_info() const {
+  return _internal_has_report_version_info();
+}
+inline void DeviceReportingProto::clear_report_version_info() {
+  report_version_info_ = true;
+  _has_bits_[0] &= ~0x02000000u;
+}
+inline bool DeviceReportingProto::_internal_report_version_info() const {
+  return report_version_info_;
+}
+inline bool DeviceReportingProto::report_version_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_version_info)
+  return _internal_report_version_info();
+}
+inline void DeviceReportingProto::_internal_set_report_version_info(bool value) {
+  _has_bits_[0] |= 0x02000000u;
+  report_version_info_ = value;
+}
+inline void DeviceReportingProto::set_report_version_info(bool value) {
+  _internal_set_report_version_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_version_info)
+}
+
+// optional bool report_activity_times = 2 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_activity_times() const {
+  bool value = (_has_bits_[0] & 0x04000000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_activity_times() const {
+  return _internal_has_report_activity_times();
+}
+inline void DeviceReportingProto::clear_report_activity_times() {
+  report_activity_times_ = true;
+  _has_bits_[0] &= ~0x04000000u;
+}
+inline bool DeviceReportingProto::_internal_report_activity_times() const {
+  return report_activity_times_;
+}
+inline bool DeviceReportingProto::report_activity_times() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_activity_times)
+  return _internal_report_activity_times();
+}
+inline void DeviceReportingProto::_internal_set_report_activity_times(bool value) {
+  _has_bits_[0] |= 0x04000000u;
+  report_activity_times_ = value;
+}
+inline void DeviceReportingProto::set_report_activity_times(bool value) {
+  _internal_set_report_activity_times(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_activity_times)
+}
+
+// optional bool report_boot_mode = 3 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_boot_mode() const {
+  bool value = (_has_bits_[0] & 0x08000000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_boot_mode() const {
+  return _internal_has_report_boot_mode();
+}
+inline void DeviceReportingProto::clear_report_boot_mode() {
+  report_boot_mode_ = true;
+  _has_bits_[0] &= ~0x08000000u;
+}
+inline bool DeviceReportingProto::_internal_report_boot_mode() const {
+  return report_boot_mode_;
+}
+inline bool DeviceReportingProto::report_boot_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_boot_mode)
+  return _internal_report_boot_mode();
+}
+inline void DeviceReportingProto::_internal_set_report_boot_mode(bool value) {
+  _has_bits_[0] |= 0x08000000u;
+  report_boot_mode_ = value;
+}
+inline void DeviceReportingProto::set_report_boot_mode(bool value) {
+  _internal_set_report_boot_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_boot_mode)
+}
+
+// optional bool report_location = 4 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_location() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_location() const {
+  return _internal_has_report_location();
+}
+inline void DeviceReportingProto::clear_report_location() {
+  report_location_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceReportingProto::_internal_report_location() const {
+  return report_location_;
+}
+inline bool DeviceReportingProto::report_location() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_location)
+  return _internal_report_location();
+}
+inline void DeviceReportingProto::_internal_set_report_location(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  report_location_ = value;
+}
+inline void DeviceReportingProto::set_report_location(bool value) {
+  _internal_set_report_location(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_location)
+}
+
+// optional bool report_network_interfaces = 5 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_network_interfaces() const {
+  bool value = (_has_bits_[0] & 0x10000000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_network_interfaces() const {
+  return _internal_has_report_network_interfaces();
+}
+inline void DeviceReportingProto::clear_report_network_interfaces() {
+  report_network_interfaces_ = true;
+  _has_bits_[0] &= ~0x10000000u;
+}
+inline bool DeviceReportingProto::_internal_report_network_interfaces() const {
+  return report_network_interfaces_;
+}
+inline bool DeviceReportingProto::report_network_interfaces() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_network_interfaces)
+  return _internal_report_network_interfaces();
+}
+inline void DeviceReportingProto::_internal_set_report_network_interfaces(bool value) {
+  _has_bits_[0] |= 0x10000000u;
+  report_network_interfaces_ = value;
+}
+inline void DeviceReportingProto::set_report_network_interfaces(bool value) {
+  _internal_set_report_network_interfaces(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_network_interfaces)
+}
+
+// optional bool report_users = 6 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_users() const {
+  bool value = (_has_bits_[0] & 0x20000000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_users() const {
+  return _internal_has_report_users();
+}
+inline void DeviceReportingProto::clear_report_users() {
+  report_users_ = true;
+  _has_bits_[0] &= ~0x20000000u;
+}
+inline bool DeviceReportingProto::_internal_report_users() const {
+  return report_users_;
+}
+inline bool DeviceReportingProto::report_users() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_users)
+  return _internal_report_users();
+}
+inline void DeviceReportingProto::_internal_set_report_users(bool value) {
+  _has_bits_[0] |= 0x20000000u;
+  report_users_ = value;
+}
+inline void DeviceReportingProto::set_report_users(bool value) {
+  _internal_set_report_users(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_users)
+}
+
+// optional bool report_hardware_status = 7 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_hardware_status() const {
+  bool value = (_has_bits_[0] & 0x40000000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_hardware_status() const {
+  return _internal_has_report_hardware_status();
+}
+inline void DeviceReportingProto::clear_report_hardware_status() {
+  report_hardware_status_ = true;
+  _has_bits_[0] &= ~0x40000000u;
+}
+inline bool DeviceReportingProto::_internal_report_hardware_status() const {
+  return report_hardware_status_;
+}
+inline bool DeviceReportingProto::report_hardware_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_hardware_status)
+  return _internal_report_hardware_status();
+}
+inline void DeviceReportingProto::_internal_set_report_hardware_status(bool value) {
+  _has_bits_[0] |= 0x40000000u;
+  report_hardware_status_ = value;
+}
+inline void DeviceReportingProto::set_report_hardware_status(bool value) {
+  _internal_set_report_hardware_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_hardware_status)
+}
+
+// optional bool report_session_status = 8 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_session_status() const {
+  bool value = (_has_bits_[0] & 0x80000000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_session_status() const {
+  return _internal_has_report_session_status();
+}
+inline void DeviceReportingProto::clear_report_session_status() {
+  report_session_status_ = true;
+  _has_bits_[0] &= ~0x80000000u;
+}
+inline bool DeviceReportingProto::_internal_report_session_status() const {
+  return report_session_status_;
+}
+inline bool DeviceReportingProto::report_session_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_session_status)
+  return _internal_report_session_status();
+}
+inline void DeviceReportingProto::_internal_set_report_session_status(bool value) {
+  _has_bits_[0] |= 0x80000000u;
+  report_session_status_ = value;
+}
+inline void DeviceReportingProto::set_report_session_status(bool value) {
+  _internal_set_report_session_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_session_status)
+}
+
+// optional bool report_os_update_status = 10 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_os_update_status() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_os_update_status() const {
+  return _internal_has_report_os_update_status();
+}
+inline void DeviceReportingProto::clear_report_os_update_status() {
+  report_os_update_status_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool DeviceReportingProto::_internal_report_os_update_status() const {
+  return report_os_update_status_;
+}
+inline bool DeviceReportingProto::report_os_update_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_os_update_status)
+  return _internal_report_os_update_status();
+}
+inline void DeviceReportingProto::_internal_set_report_os_update_status(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  report_os_update_status_ = value;
+}
+inline void DeviceReportingProto::set_report_os_update_status(bool value) {
+  _internal_set_report_os_update_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_os_update_status)
+}
+
+// optional bool report_running_kiosk_app = 11 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_running_kiosk_app() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_running_kiosk_app() const {
+  return _internal_has_report_running_kiosk_app();
+}
+inline void DeviceReportingProto::clear_report_running_kiosk_app() {
+  report_running_kiosk_app_ = false;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool DeviceReportingProto::_internal_report_running_kiosk_app() const {
+  return report_running_kiosk_app_;
+}
+inline bool DeviceReportingProto::report_running_kiosk_app() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_running_kiosk_app)
+  return _internal_report_running_kiosk_app();
+}
+inline void DeviceReportingProto::_internal_set_report_running_kiosk_app(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  report_running_kiosk_app_ = value;
+}
+inline void DeviceReportingProto::set_report_running_kiosk_app(bool value) {
+  _internal_set_report_running_kiosk_app(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_running_kiosk_app)
+}
+
+// optional bool report_power_status = 12 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_power_status() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_power_status() const {
+  return _internal_has_report_power_status();
+}
+inline void DeviceReportingProto::clear_report_power_status() {
+  report_power_status_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool DeviceReportingProto::_internal_report_power_status() const {
+  return report_power_status_;
+}
+inline bool DeviceReportingProto::report_power_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_power_status)
+  return _internal_report_power_status();
+}
+inline void DeviceReportingProto::_internal_set_report_power_status(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  report_power_status_ = value;
+}
+inline void DeviceReportingProto::set_report_power_status(bool value) {
+  _internal_set_report_power_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_power_status)
+}
+
+// optional bool report_storage_status = 13 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_storage_status() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_storage_status() const {
+  return _internal_has_report_storage_status();
+}
+inline void DeviceReportingProto::clear_report_storage_status() {
+  report_storage_status_ = false;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline bool DeviceReportingProto::_internal_report_storage_status() const {
+  return report_storage_status_;
+}
+inline bool DeviceReportingProto::report_storage_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_storage_status)
+  return _internal_report_storage_status();
+}
+inline void DeviceReportingProto::_internal_set_report_storage_status(bool value) {
+  _has_bits_[0] |= 0x00000010u;
+  report_storage_status_ = value;
+}
+inline void DeviceReportingProto::set_report_storage_status(bool value) {
+  _internal_set_report_storage_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_storage_status)
+}
+
+// optional bool report_board_status = 14 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_board_status() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_board_status() const {
+  return _internal_has_report_board_status();
+}
+inline void DeviceReportingProto::clear_report_board_status() {
+  report_board_status_ = false;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline bool DeviceReportingProto::_internal_report_board_status() const {
+  return report_board_status_;
+}
+inline bool DeviceReportingProto::report_board_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_board_status)
+  return _internal_report_board_status();
+}
+inline void DeviceReportingProto::_internal_set_report_board_status(bool value) {
+  _has_bits_[0] |= 0x00000020u;
+  report_board_status_ = value;
+}
+inline void DeviceReportingProto::set_report_board_status(bool value) {
+  _internal_set_report_board_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_board_status)
+}
+
+// optional bool report_cpu_info = 15 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_cpu_info() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_cpu_info() const {
+  return _internal_has_report_cpu_info();
+}
+inline void DeviceReportingProto::clear_report_cpu_info() {
+  report_cpu_info_ = false;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline bool DeviceReportingProto::_internal_report_cpu_info() const {
+  return report_cpu_info_;
+}
+inline bool DeviceReportingProto::report_cpu_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_cpu_info)
+  return _internal_report_cpu_info();
+}
+inline void DeviceReportingProto::_internal_set_report_cpu_info(bool value) {
+  _has_bits_[0] |= 0x00000040u;
+  report_cpu_info_ = value;
+}
+inline void DeviceReportingProto::set_report_cpu_info(bool value) {
+  _internal_set_report_cpu_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_cpu_info)
+}
+
+// optional bool report_graphics_status = 16 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_graphics_status() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_graphics_status() const {
+  return _internal_has_report_graphics_status();
+}
+inline void DeviceReportingProto::clear_report_graphics_status() {
+  report_graphics_status_ = false;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline bool DeviceReportingProto::_internal_report_graphics_status() const {
+  return report_graphics_status_;
+}
+inline bool DeviceReportingProto::report_graphics_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_graphics_status)
+  return _internal_report_graphics_status();
+}
+inline void DeviceReportingProto::_internal_set_report_graphics_status(bool value) {
+  _has_bits_[0] |= 0x00000080u;
+  report_graphics_status_ = value;
+}
+inline void DeviceReportingProto::set_report_graphics_status(bool value) {
+  _internal_set_report_graphics_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_graphics_status)
+}
+
+// optional bool report_crash_report_info = 17 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_crash_report_info() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_crash_report_info() const {
+  return _internal_has_report_crash_report_info();
+}
+inline void DeviceReportingProto::clear_report_crash_report_info() {
+  report_crash_report_info_ = false;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline bool DeviceReportingProto::_internal_report_crash_report_info() const {
+  return report_crash_report_info_;
+}
+inline bool DeviceReportingProto::report_crash_report_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_crash_report_info)
+  return _internal_report_crash_report_info();
+}
+inline void DeviceReportingProto::_internal_set_report_crash_report_info(bool value) {
+  _has_bits_[0] |= 0x00000100u;
+  report_crash_report_info_ = value;
+}
+inline void DeviceReportingProto::set_report_crash_report_info(bool value) {
+  _internal_set_report_crash_report_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_crash_report_info)
+}
+
+// optional bool report_timezone_info = 18 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_timezone_info() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_timezone_info() const {
+  return _internal_has_report_timezone_info();
+}
+inline void DeviceReportingProto::clear_report_timezone_info() {
+  report_timezone_info_ = false;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline bool DeviceReportingProto::_internal_report_timezone_info() const {
+  return report_timezone_info_;
+}
+inline bool DeviceReportingProto::report_timezone_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_timezone_info)
+  return _internal_report_timezone_info();
+}
+inline void DeviceReportingProto::_internal_set_report_timezone_info(bool value) {
+  _has_bits_[0] |= 0x00000200u;
+  report_timezone_info_ = value;
+}
+inline void DeviceReportingProto::set_report_timezone_info(bool value) {
+  _internal_set_report_timezone_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_timezone_info)
+}
+
+// optional bool report_memory_info = 19 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_memory_info() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_memory_info() const {
+  return _internal_has_report_memory_info();
+}
+inline void DeviceReportingProto::clear_report_memory_info() {
+  report_memory_info_ = false;
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline bool DeviceReportingProto::_internal_report_memory_info() const {
+  return report_memory_info_;
+}
+inline bool DeviceReportingProto::report_memory_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_memory_info)
+  return _internal_report_memory_info();
+}
+inline void DeviceReportingProto::_internal_set_report_memory_info(bool value) {
+  _has_bits_[0] |= 0x00000400u;
+  report_memory_info_ = value;
+}
+inline void DeviceReportingProto::set_report_memory_info(bool value) {
+  _internal_set_report_memory_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_memory_info)
+}
+
+// optional bool report_backlight_info = 20 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_backlight_info() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_backlight_info() const {
+  return _internal_has_report_backlight_info();
+}
+inline void DeviceReportingProto::clear_report_backlight_info() {
+  report_backlight_info_ = false;
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline bool DeviceReportingProto::_internal_report_backlight_info() const {
+  return report_backlight_info_;
+}
+inline bool DeviceReportingProto::report_backlight_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_backlight_info)
+  return _internal_report_backlight_info();
+}
+inline void DeviceReportingProto::_internal_set_report_backlight_info(bool value) {
+  _has_bits_[0] |= 0x00000800u;
+  report_backlight_info_ = value;
+}
+inline void DeviceReportingProto::set_report_backlight_info(bool value) {
+  _internal_set_report_backlight_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_backlight_info)
+}
+
+// optional bool report_app_info = 21 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_app_info() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_app_info() const {
+  return _internal_has_report_app_info();
+}
+inline void DeviceReportingProto::clear_report_app_info() {
+  report_app_info_ = false;
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline bool DeviceReportingProto::_internal_report_app_info() const {
+  return report_app_info_;
+}
+inline bool DeviceReportingProto::report_app_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_app_info)
+  return _internal_report_app_info();
+}
+inline void DeviceReportingProto::_internal_set_report_app_info(bool value) {
+  _has_bits_[0] |= 0x00001000u;
+  report_app_info_ = value;
+}
+inline void DeviceReportingProto::set_report_app_info(bool value) {
+  _internal_set_report_app_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_app_info)
+}
+
+// optional bool report_bluetooth_info = 22 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_bluetooth_info() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_bluetooth_info() const {
+  return _internal_has_report_bluetooth_info();
+}
+inline void DeviceReportingProto::clear_report_bluetooth_info() {
+  report_bluetooth_info_ = false;
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline bool DeviceReportingProto::_internal_report_bluetooth_info() const {
+  return report_bluetooth_info_;
+}
+inline bool DeviceReportingProto::report_bluetooth_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_bluetooth_info)
+  return _internal_report_bluetooth_info();
+}
+inline void DeviceReportingProto::_internal_set_report_bluetooth_info(bool value) {
+  _has_bits_[0] |= 0x00002000u;
+  report_bluetooth_info_ = value;
+}
+inline void DeviceReportingProto::set_report_bluetooth_info(bool value) {
+  _internal_set_report_bluetooth_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_bluetooth_info)
+}
+
+// optional bool report_fan_info = 23 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_fan_info() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_fan_info() const {
+  return _internal_has_report_fan_info();
+}
+inline void DeviceReportingProto::clear_report_fan_info() {
+  report_fan_info_ = false;
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline bool DeviceReportingProto::_internal_report_fan_info() const {
+  return report_fan_info_;
+}
+inline bool DeviceReportingProto::report_fan_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_fan_info)
+  return _internal_report_fan_info();
+}
+inline void DeviceReportingProto::_internal_set_report_fan_info(bool value) {
+  _has_bits_[0] |= 0x00004000u;
+  report_fan_info_ = value;
+}
+inline void DeviceReportingProto::set_report_fan_info(bool value) {
+  _internal_set_report_fan_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_fan_info)
+}
+
+// optional bool report_vpd_info = 24 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_vpd_info() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_vpd_info() const {
+  return _internal_has_report_vpd_info();
+}
+inline void DeviceReportingProto::clear_report_vpd_info() {
+  report_vpd_info_ = false;
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline bool DeviceReportingProto::_internal_report_vpd_info() const {
+  return report_vpd_info_;
+}
+inline bool DeviceReportingProto::report_vpd_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_vpd_info)
+  return _internal_report_vpd_info();
+}
+inline void DeviceReportingProto::_internal_set_report_vpd_info(bool value) {
+  _has_bits_[0] |= 0x00008000u;
+  report_vpd_info_ = value;
+}
+inline void DeviceReportingProto::set_report_vpd_info(bool value) {
+  _internal_set_report_vpd_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_vpd_info)
+}
+
+// optional bool report_system_info = 25 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_system_info() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_system_info() const {
+  return _internal_has_report_system_info();
+}
+inline void DeviceReportingProto::clear_report_system_info() {
+  report_system_info_ = false;
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline bool DeviceReportingProto::_internal_report_system_info() const {
+  return report_system_info_;
+}
+inline bool DeviceReportingProto::report_system_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_system_info)
+  return _internal_report_system_info();
+}
+inline void DeviceReportingProto::_internal_set_report_system_info(bool value) {
+  _has_bits_[0] |= 0x00010000u;
+  report_system_info_ = value;
+}
+inline void DeviceReportingProto::set_report_system_info(bool value) {
+  _internal_set_report_system_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_system_info)
+}
+
+// optional bool report_print_jobs = 26 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_print_jobs() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_print_jobs() const {
+  return _internal_has_report_print_jobs();
+}
+inline void DeviceReportingProto::clear_report_print_jobs() {
+  report_print_jobs_ = false;
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline bool DeviceReportingProto::_internal_report_print_jobs() const {
+  return report_print_jobs_;
+}
+inline bool DeviceReportingProto::report_print_jobs() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_print_jobs)
+  return _internal_report_print_jobs();
+}
+inline void DeviceReportingProto::_internal_set_report_print_jobs(bool value) {
+  _has_bits_[0] |= 0x00020000u;
+  report_print_jobs_ = value;
+}
+inline void DeviceReportingProto::set_report_print_jobs(bool value) {
+  _internal_set_report_print_jobs(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_print_jobs)
+}
+
+// optional bool report_login_logout = 27 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_login_logout() const {
+  bool value = (_has_bits_[0] & 0x00040000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_login_logout() const {
+  return _internal_has_report_login_logout();
+}
+inline void DeviceReportingProto::clear_report_login_logout() {
+  report_login_logout_ = false;
+  _has_bits_[0] &= ~0x00040000u;
+}
+inline bool DeviceReportingProto::_internal_report_login_logout() const {
+  return report_login_logout_;
+}
+inline bool DeviceReportingProto::report_login_logout() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_login_logout)
+  return _internal_report_login_logout();
+}
+inline void DeviceReportingProto::_internal_set_report_login_logout(bool value) {
+  _has_bits_[0] |= 0x00040000u;
+  report_login_logout_ = value;
+}
+inline void DeviceReportingProto::set_report_login_logout(bool value) {
+  _internal_set_report_login_logout(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_login_logout)
+}
+
+// optional bool report_audio_status = 28 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_audio_status() const {
+  bool value = (_has_bits_[1] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_audio_status() const {
+  return _internal_has_report_audio_status();
+}
+inline void DeviceReportingProto::clear_report_audio_status() {
+  report_audio_status_ = true;
+  _has_bits_[1] &= ~0x00000001u;
+}
+inline bool DeviceReportingProto::_internal_report_audio_status() const {
+  return report_audio_status_;
+}
+inline bool DeviceReportingProto::report_audio_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_audio_status)
+  return _internal_report_audio_status();
+}
+inline void DeviceReportingProto::_internal_set_report_audio_status(bool value) {
+  _has_bits_[1] |= 0x00000001u;
+  report_audio_status_ = value;
+}
+inline void DeviceReportingProto::set_report_audio_status(bool value) {
+  _internal_set_report_audio_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_audio_status)
+}
+
+// optional bool report_network_configuration = 29 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_network_configuration() const {
+  bool value = (_has_bits_[0] & 0x00400000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_network_configuration() const {
+  return _internal_has_report_network_configuration();
+}
+inline void DeviceReportingProto::clear_report_network_configuration() {
+  report_network_configuration_ = true;
+  _has_bits_[0] &= ~0x00400000u;
+}
+inline bool DeviceReportingProto::_internal_report_network_configuration() const {
+  return report_network_configuration_;
+}
+inline bool DeviceReportingProto::report_network_configuration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_network_configuration)
+  return _internal_report_network_configuration();
+}
+inline void DeviceReportingProto::_internal_set_report_network_configuration(bool value) {
+  _has_bits_[0] |= 0x00400000u;
+  report_network_configuration_ = value;
+}
+inline void DeviceReportingProto::set_report_network_configuration(bool value) {
+  _internal_set_report_network_configuration(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_network_configuration)
+}
+
+// optional bool report_network_status = 30 [default = true];
+inline bool DeviceReportingProto::_internal_has_report_network_status() const {
+  bool value = (_has_bits_[0] & 0x00800000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_network_status() const {
+  return _internal_has_report_network_status();
+}
+inline void DeviceReportingProto::clear_report_network_status() {
+  report_network_status_ = true;
+  _has_bits_[0] &= ~0x00800000u;
+}
+inline bool DeviceReportingProto::_internal_report_network_status() const {
+  return report_network_status_;
+}
+inline bool DeviceReportingProto::report_network_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_network_status)
+  return _internal_report_network_status();
+}
+inline void DeviceReportingProto::_internal_set_report_network_status(bool value) {
+  _has_bits_[0] |= 0x00800000u;
+  report_network_status_ = value;
+}
+inline void DeviceReportingProto::set_report_network_status(bool value) {
+  _internal_set_report_network_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_network_status)
+}
+
+// optional bool report_security_status = 31 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_security_status() const {
+  bool value = (_has_bits_[0] & 0x00080000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_security_status() const {
+  return _internal_has_report_security_status();
+}
+inline void DeviceReportingProto::clear_report_security_status() {
+  report_security_status_ = false;
+  _has_bits_[0] &= ~0x00080000u;
+}
+inline bool DeviceReportingProto::_internal_report_security_status() const {
+  return report_security_status_;
+}
+inline bool DeviceReportingProto::report_security_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_security_status)
+  return _internal_report_security_status();
+}
+inline void DeviceReportingProto::_internal_set_report_security_status(bool value) {
+  _has_bits_[0] |= 0x00080000u;
+  report_security_status_ = value;
+}
+inline void DeviceReportingProto::set_report_security_status(bool value) {
+  _internal_set_report_security_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_security_status)
+}
+
+// optional bool report_crd_sessions = 36 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_crd_sessions() const {
+  bool value = (_has_bits_[0] & 0x00100000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_crd_sessions() const {
+  return _internal_has_report_crd_sessions();
+}
+inline void DeviceReportingProto::clear_report_crd_sessions() {
+  report_crd_sessions_ = false;
+  _has_bits_[0] &= ~0x00100000u;
+}
+inline bool DeviceReportingProto::_internal_report_crd_sessions() const {
+  return report_crd_sessions_;
+}
+inline bool DeviceReportingProto::report_crd_sessions() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_crd_sessions)
+  return _internal_report_crd_sessions();
+}
+inline void DeviceReportingProto::_internal_set_report_crd_sessions(bool value) {
+  _has_bits_[0] |= 0x00100000u;
+  report_crd_sessions_ = value;
+}
+inline void DeviceReportingProto::set_report_crd_sessions(bool value) {
+  _internal_set_report_crd_sessions(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_crd_sessions)
+}
+
+// optional bool report_peripherals = 37 [default = false];
+inline bool DeviceReportingProto::_internal_has_report_peripherals() const {
+  bool value = (_has_bits_[0] & 0x00200000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_peripherals() const {
+  return _internal_has_report_peripherals();
+}
+inline void DeviceReportingProto::clear_report_peripherals() {
+  report_peripherals_ = false;
+  _has_bits_[0] &= ~0x00200000u;
+}
+inline bool DeviceReportingProto::_internal_report_peripherals() const {
+  return report_peripherals_;
+}
+inline bool DeviceReportingProto::report_peripherals() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_peripherals)
+  return _internal_report_peripherals();
+}
+inline void DeviceReportingProto::_internal_set_report_peripherals(bool value) {
+  _has_bits_[0] |= 0x00200000u;
+  report_peripherals_ = value;
+}
+inline void DeviceReportingProto::set_report_peripherals(bool value) {
+  _internal_set_report_peripherals(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_peripherals)
+}
+
+// optional int64 device_status_frequency = 9 [default = 10800000];
+inline bool DeviceReportingProto::_internal_has_device_status_frequency() const {
+  bool value = (_has_bits_[1] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_device_status_frequency() const {
+  return _internal_has_device_status_frequency();
+}
+inline void DeviceReportingProto::clear_device_status_frequency() {
+  device_status_frequency_ = PROTOBUF_LONGLONG(10800000);
+  _has_bits_[1] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceReportingProto::_internal_device_status_frequency() const {
+  return device_status_frequency_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceReportingProto::device_status_frequency() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.device_status_frequency)
+  return _internal_device_status_frequency();
+}
+inline void DeviceReportingProto::_internal_set_device_status_frequency(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[1] |= 0x00000002u;
+  device_status_frequency_ = value;
+}
+inline void DeviceReportingProto::set_device_status_frequency(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_device_status_frequency(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.device_status_frequency)
+}
+
+// optional bool enable_granular_reporting = 32 [default = true];
+inline bool DeviceReportingProto::_internal_has_enable_granular_reporting() const {
+  bool value = (_has_bits_[0] & 0x01000000u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_enable_granular_reporting() const {
+  return _internal_has_enable_granular_reporting();
+}
+inline void DeviceReportingProto::clear_enable_granular_reporting() {
+  enable_granular_reporting_ = true;
+  _has_bits_[0] &= ~0x01000000u;
+}
+inline bool DeviceReportingProto::_internal_enable_granular_reporting() const {
+  return enable_granular_reporting_;
+}
+inline bool DeviceReportingProto::enable_granular_reporting() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.enable_granular_reporting)
+  return _internal_enable_granular_reporting();
+}
+inline void DeviceReportingProto::_internal_set_enable_granular_reporting(bool value) {
+  _has_bits_[0] |= 0x01000000u;
+  enable_granular_reporting_ = value;
+}
+inline void DeviceReportingProto::set_enable_granular_reporting(bool value) {
+  _internal_set_enable_granular_reporting(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.enable_granular_reporting)
+}
+
+// optional int64 report_network_telemetry_collection_rate_ms = 33 [default = 3600000];
+inline bool DeviceReportingProto::_internal_has_report_network_telemetry_collection_rate_ms() const {
+  bool value = (_has_bits_[1] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_network_telemetry_collection_rate_ms() const {
+  return _internal_has_report_network_telemetry_collection_rate_ms();
+}
+inline void DeviceReportingProto::clear_report_network_telemetry_collection_rate_ms() {
+  report_network_telemetry_collection_rate_ms_ = PROTOBUF_LONGLONG(3600000);
+  _has_bits_[1] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceReportingProto::_internal_report_network_telemetry_collection_rate_ms() const {
+  return report_network_telemetry_collection_rate_ms_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceReportingProto::report_network_telemetry_collection_rate_ms() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_network_telemetry_collection_rate_ms)
+  return _internal_report_network_telemetry_collection_rate_ms();
+}
+inline void DeviceReportingProto::_internal_set_report_network_telemetry_collection_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[1] |= 0x00000004u;
+  report_network_telemetry_collection_rate_ms_ = value;
+}
+inline void DeviceReportingProto::set_report_network_telemetry_collection_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_report_network_telemetry_collection_rate_ms(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_network_telemetry_collection_rate_ms)
+}
+
+// optional int64 report_network_telemetry_event_checking_rate_ms = 34 [default = 600000];
+inline bool DeviceReportingProto::_internal_has_report_network_telemetry_event_checking_rate_ms() const {
+  bool value = (_has_bits_[1] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_network_telemetry_event_checking_rate_ms() const {
+  return _internal_has_report_network_telemetry_event_checking_rate_ms();
+}
+inline void DeviceReportingProto::clear_report_network_telemetry_event_checking_rate_ms() {
+  report_network_telemetry_event_checking_rate_ms_ = PROTOBUF_LONGLONG(600000);
+  _has_bits_[1] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceReportingProto::_internal_report_network_telemetry_event_checking_rate_ms() const {
+  return report_network_telemetry_event_checking_rate_ms_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceReportingProto::report_network_telemetry_event_checking_rate_ms() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_network_telemetry_event_checking_rate_ms)
+  return _internal_report_network_telemetry_event_checking_rate_ms();
+}
+inline void DeviceReportingProto::_internal_set_report_network_telemetry_event_checking_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[1] |= 0x00000008u;
+  report_network_telemetry_event_checking_rate_ms_ = value;
+}
+inline void DeviceReportingProto::set_report_network_telemetry_event_checking_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_report_network_telemetry_event_checking_rate_ms(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_network_telemetry_event_checking_rate_ms)
+}
+
+// optional int64 report_device_audio_status_checking_rate_ms = 35 [default = 600000];
+inline bool DeviceReportingProto::_internal_has_report_device_audio_status_checking_rate_ms() const {
+  bool value = (_has_bits_[1] & 0x00000010u) != 0;
+  return value;
+}
+inline bool DeviceReportingProto::has_report_device_audio_status_checking_rate_ms() const {
+  return _internal_has_report_device_audio_status_checking_rate_ms();
+}
+inline void DeviceReportingProto::clear_report_device_audio_status_checking_rate_ms() {
+  report_device_audio_status_checking_rate_ms_ = PROTOBUF_LONGLONG(600000);
+  _has_bits_[1] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceReportingProto::_internal_report_device_audio_status_checking_rate_ms() const {
+  return report_device_audio_status_checking_rate_ms_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceReportingProto::report_device_audio_status_checking_rate_ms() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceReportingProto.report_device_audio_status_checking_rate_ms)
+  return _internal_report_device_audio_status_checking_rate_ms();
+}
+inline void DeviceReportingProto::_internal_set_report_device_audio_status_checking_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[1] |= 0x00000010u;
+  report_device_audio_status_checking_rate_ms_ = value;
+}
+inline void DeviceReportingProto::set_report_device_audio_status_checking_rate_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_report_device_audio_status_checking_rate_ms(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceReportingProto.report_device_audio_status_checking_rate_ms)
+}
+
+// -------------------------------------------------------------------
+
+// EphemeralUsersEnabledProto
+
+// optional bool ephemeral_users_enabled = 1;
+inline bool EphemeralUsersEnabledProto::_internal_has_ephemeral_users_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool EphemeralUsersEnabledProto::has_ephemeral_users_enabled() const {
+  return _internal_has_ephemeral_users_enabled();
+}
+inline void EphemeralUsersEnabledProto::clear_ephemeral_users_enabled() {
+  ephemeral_users_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool EphemeralUsersEnabledProto::_internal_ephemeral_users_enabled() const {
+  return ephemeral_users_enabled_;
+}
+inline bool EphemeralUsersEnabledProto::ephemeral_users_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.EphemeralUsersEnabledProto.ephemeral_users_enabled)
+  return _internal_ephemeral_users_enabled();
+}
+inline void EphemeralUsersEnabledProto::_internal_set_ephemeral_users_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  ephemeral_users_enabled_ = value;
+}
+inline void EphemeralUsersEnabledProto::set_ephemeral_users_enabled(bool value) {
+  _internal_set_ephemeral_users_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.EphemeralUsersEnabledProto.ephemeral_users_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceKeylockerForStorageEncryptionEnabledProto
+
+// optional bool enabled = 1;
+inline bool DeviceKeylockerForStorageEncryptionEnabledProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceKeylockerForStorageEncryptionEnabledProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceKeylockerForStorageEncryptionEnabledProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceKeylockerForStorageEncryptionEnabledProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceKeylockerForStorageEncryptionEnabledProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceKeylockerForStorageEncryptionEnabledProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DeviceKeylockerForStorageEncryptionEnabledProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_AppPackEntryProto
+
+// optional string OBSOLETE_extension_id = 1 [deprecated = true];
+inline bool OBSOLETE_AppPackEntryProto::_internal_has_obsolete_extension_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OBSOLETE_AppPackEntryProto::has_obsolete_extension_id() const {
+  return _internal_has_obsolete_extension_id();
+}
+inline void OBSOLETE_AppPackEntryProto::clear_obsolete_extension_id() {
+  obsolete_extension_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& OBSOLETE_AppPackEntryProto::obsolete_extension_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_extension_id)
+  return _internal_obsolete_extension_id();
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_extension_id(const std::string& value) {
+  _internal_set_obsolete_extension_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_extension_id)
+}
+inline std::string* OBSOLETE_AppPackEntryProto::mutable_obsolete_extension_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_extension_id)
+  return _internal_mutable_obsolete_extension_id();
+}
+inline const std::string& OBSOLETE_AppPackEntryProto::_internal_obsolete_extension_id() const {
+  return obsolete_extension_id_.GetNoArena();
+}
+inline void OBSOLETE_AppPackEntryProto::_internal_set_obsolete_extension_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_extension_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_extension_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_extension_id)
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_extension_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_extension_id)
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_extension_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_extension_id)
+}
+inline std::string* OBSOLETE_AppPackEntryProto::_internal_mutable_obsolete_extension_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return obsolete_extension_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_AppPackEntryProto::release_obsolete_extension_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_extension_id)
+  if (!_internal_has_obsolete_extension_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return obsolete_extension_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_AppPackEntryProto::set_allocated_obsolete_extension_id(std::string* obsolete_extension_id) {
+  if (obsolete_extension_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  obsolete_extension_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_extension_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_extension_id)
+}
+
+// optional string OBSOLETE_update_url = 2 [deprecated = true];
+inline bool OBSOLETE_AppPackEntryProto::_internal_has_obsolete_update_url() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool OBSOLETE_AppPackEntryProto::has_obsolete_update_url() const {
+  return _internal_has_obsolete_update_url();
+}
+inline void OBSOLETE_AppPackEntryProto::clear_obsolete_update_url() {
+  obsolete_update_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& OBSOLETE_AppPackEntryProto::obsolete_update_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_update_url)
+  return _internal_obsolete_update_url();
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_update_url(const std::string& value) {
+  _internal_set_obsolete_update_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_update_url)
+}
+inline std::string* OBSOLETE_AppPackEntryProto::mutable_obsolete_update_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_update_url)
+  return _internal_mutable_obsolete_update_url();
+}
+inline const std::string& OBSOLETE_AppPackEntryProto::_internal_obsolete_update_url() const {
+  return obsolete_update_url_.GetNoArena();
+}
+inline void OBSOLETE_AppPackEntryProto::_internal_set_obsolete_update_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_update_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_update_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_update_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_update_url)
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_update_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_update_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_update_url)
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_update_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_update_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_update_url)
+}
+inline std::string* OBSOLETE_AppPackEntryProto::_internal_mutable_obsolete_update_url() {
+  _has_bits_[0] |= 0x00000002u;
+  return obsolete_update_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_AppPackEntryProto::release_obsolete_update_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_update_url)
+  if (!_internal_has_obsolete_update_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return obsolete_update_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_AppPackEntryProto::set_allocated_obsolete_update_url(std::string* obsolete_update_url) {
+  if (obsolete_update_url != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  obsolete_update_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_update_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_update_url)
+}
+
+// optional bool OBSOLETE_online_only = 3 [deprecated = true];
+inline bool OBSOLETE_AppPackEntryProto::_internal_has_obsolete_online_only() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool OBSOLETE_AppPackEntryProto::has_obsolete_online_only() const {
+  return _internal_has_obsolete_online_only();
+}
+inline void OBSOLETE_AppPackEntryProto::clear_obsolete_online_only() {
+  obsolete_online_only_ = false;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool OBSOLETE_AppPackEntryProto::_internal_obsolete_online_only() const {
+  return obsolete_online_only_;
+}
+inline bool OBSOLETE_AppPackEntryProto::obsolete_online_only() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_online_only)
+  return _internal_obsolete_online_only();
+}
+inline void OBSOLETE_AppPackEntryProto::_internal_set_obsolete_online_only(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  obsolete_online_only_ = value;
+}
+inline void OBSOLETE_AppPackEntryProto::set_obsolete_online_only(bool value) {
+  _internal_set_obsolete_online_only(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_AppPackEntryProto.OBSOLETE_online_only)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_AppPackProto
+
+// repeated .enterprise_management.OBSOLETE_AppPackEntryProto app_pack = 1 [deprecated = true];
+inline int OBSOLETE_AppPackProto::_internal_app_pack_size() const {
+  return app_pack_.size();
+}
+inline int OBSOLETE_AppPackProto::app_pack_size() const {
+  return _internal_app_pack_size();
+}
+inline void OBSOLETE_AppPackProto::clear_app_pack() {
+  app_pack_.Clear();
+}
+inline ::enterprise_management::OBSOLETE_AppPackEntryProto* OBSOLETE_AppPackProto::mutable_app_pack(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_AppPackProto.app_pack)
+  return app_pack_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::OBSOLETE_AppPackEntryProto >*
+OBSOLETE_AppPackProto::mutable_app_pack() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.OBSOLETE_AppPackProto.app_pack)
+  return &app_pack_;
+}
+inline const ::enterprise_management::OBSOLETE_AppPackEntryProto& OBSOLETE_AppPackProto::_internal_app_pack(int index) const {
+  return app_pack_.Get(index);
+}
+inline const ::enterprise_management::OBSOLETE_AppPackEntryProto& OBSOLETE_AppPackProto::app_pack(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_AppPackProto.app_pack)
+  return _internal_app_pack(index);
+}
+inline ::enterprise_management::OBSOLETE_AppPackEntryProto* OBSOLETE_AppPackProto::_internal_add_app_pack() {
+  return app_pack_.Add();
+}
+inline ::enterprise_management::OBSOLETE_AppPackEntryProto* OBSOLETE_AppPackProto::add_app_pack() {
+  // @@protoc_insertion_point(field_add:enterprise_management.OBSOLETE_AppPackProto.app_pack)
+  return _internal_add_app_pack();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::OBSOLETE_AppPackEntryProto >&
+OBSOLETE_AppPackProto::app_pack() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.OBSOLETE_AppPackProto.app_pack)
+  return app_pack_;
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_PinnedAppsProto
+
+// repeated string OBSOLETE_app_id = 1 [deprecated = true];
+inline int OBSOLETE_PinnedAppsProto::_internal_obsolete_app_id_size() const {
+  return obsolete_app_id_.size();
+}
+inline int OBSOLETE_PinnedAppsProto::obsolete_app_id_size() const {
+  return _internal_obsolete_app_id_size();
+}
+inline void OBSOLETE_PinnedAppsProto::clear_obsolete_app_id() {
+  obsolete_app_id_.Clear();
+}
+inline std::string* OBSOLETE_PinnedAppsProto::add_obsolete_app_id() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+  return _internal_add_obsolete_app_id();
+}
+inline const std::string& OBSOLETE_PinnedAppsProto::_internal_obsolete_app_id(int index) const {
+  return obsolete_app_id_.Get(index);
+}
+inline const std::string& OBSOLETE_PinnedAppsProto::obsolete_app_id(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+  return _internal_obsolete_app_id(index);
+}
+inline std::string* OBSOLETE_PinnedAppsProto::mutable_obsolete_app_id(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+  return obsolete_app_id_.Mutable(index);
+}
+inline void OBSOLETE_PinnedAppsProto::set_obsolete_app_id(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+  obsolete_app_id_.Mutable(index)->assign(value);
+}
+inline void OBSOLETE_PinnedAppsProto::set_obsolete_app_id(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+  obsolete_app_id_.Mutable(index)->assign(std::move(value));
+}
+inline void OBSOLETE_PinnedAppsProto::set_obsolete_app_id(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  obsolete_app_id_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+}
+inline void OBSOLETE_PinnedAppsProto::set_obsolete_app_id(int index, const char* value, size_t size) {
+  obsolete_app_id_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+}
+inline std::string* OBSOLETE_PinnedAppsProto::_internal_add_obsolete_app_id() {
+  return obsolete_app_id_.Add();
+}
+inline void OBSOLETE_PinnedAppsProto::add_obsolete_app_id(const std::string& value) {
+  obsolete_app_id_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+}
+inline void OBSOLETE_PinnedAppsProto::add_obsolete_app_id(std::string&& value) {
+  obsolete_app_id_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+}
+inline void OBSOLETE_PinnedAppsProto::add_obsolete_app_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  obsolete_app_id_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+}
+inline void OBSOLETE_PinnedAppsProto::add_obsolete_app_id(const char* value, size_t size) {
+  obsolete_app_id_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+OBSOLETE_PinnedAppsProto::obsolete_app_id() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+  return obsolete_app_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+OBSOLETE_PinnedAppsProto::mutable_obsolete_app_id() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.OBSOLETE_PinnedAppsProto.OBSOLETE_app_id)
+  return &obsolete_app_id_;
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_ForcedLogoutTimeoutsProto
+
+// optional int64 OBSOLETE_idle_logout_timeout = 1 [deprecated = true];
+inline bool OBSOLETE_ForcedLogoutTimeoutsProto::_internal_has_obsolete_idle_logout_timeout() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OBSOLETE_ForcedLogoutTimeoutsProto::has_obsolete_idle_logout_timeout() const {
+  return _internal_has_obsolete_idle_logout_timeout();
+}
+inline void OBSOLETE_ForcedLogoutTimeoutsProto::clear_obsolete_idle_logout_timeout() {
+  obsolete_idle_logout_timeout_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OBSOLETE_ForcedLogoutTimeoutsProto::_internal_obsolete_idle_logout_timeout() const {
+  return obsolete_idle_logout_timeout_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OBSOLETE_ForcedLogoutTimeoutsProto::obsolete_idle_logout_timeout() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto.OBSOLETE_idle_logout_timeout)
+  return _internal_obsolete_idle_logout_timeout();
+}
+inline void OBSOLETE_ForcedLogoutTimeoutsProto::_internal_set_obsolete_idle_logout_timeout(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_idle_logout_timeout_ = value;
+}
+inline void OBSOLETE_ForcedLogoutTimeoutsProto::set_obsolete_idle_logout_timeout(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_obsolete_idle_logout_timeout(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto.OBSOLETE_idle_logout_timeout)
+}
+
+// optional int64 OBSOLETE_idle_logout_warning_duration = 2 [deprecated = true];
+inline bool OBSOLETE_ForcedLogoutTimeoutsProto::_internal_has_obsolete_idle_logout_warning_duration() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool OBSOLETE_ForcedLogoutTimeoutsProto::has_obsolete_idle_logout_warning_duration() const {
+  return _internal_has_obsolete_idle_logout_warning_duration();
+}
+inline void OBSOLETE_ForcedLogoutTimeoutsProto::clear_obsolete_idle_logout_warning_duration() {
+  obsolete_idle_logout_warning_duration_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OBSOLETE_ForcedLogoutTimeoutsProto::_internal_obsolete_idle_logout_warning_duration() const {
+  return obsolete_idle_logout_warning_duration_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OBSOLETE_ForcedLogoutTimeoutsProto::obsolete_idle_logout_warning_duration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto.OBSOLETE_idle_logout_warning_duration)
+  return _internal_obsolete_idle_logout_warning_duration();
+}
+inline void OBSOLETE_ForcedLogoutTimeoutsProto::_internal_set_obsolete_idle_logout_warning_duration(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_idle_logout_warning_duration_ = value;
+}
+inline void OBSOLETE_ForcedLogoutTimeoutsProto::set_obsolete_idle_logout_warning_duration(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_obsolete_idle_logout_warning_duration(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto.OBSOLETE_idle_logout_warning_duration)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_ScreenSaverProto
+
+// optional string OBSOLETE_screen_saver_extension_id = 1 [deprecated = true];
+inline bool OBSOLETE_ScreenSaverProto::_internal_has_obsolete_screen_saver_extension_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OBSOLETE_ScreenSaverProto::has_obsolete_screen_saver_extension_id() const {
+  return _internal_has_obsolete_screen_saver_extension_id();
+}
+inline void OBSOLETE_ScreenSaverProto::clear_obsolete_screen_saver_extension_id() {
+  obsolete_screen_saver_extension_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& OBSOLETE_ScreenSaverProto::obsolete_screen_saver_extension_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_extension_id)
+  return _internal_obsolete_screen_saver_extension_id();
+}
+inline void OBSOLETE_ScreenSaverProto::set_obsolete_screen_saver_extension_id(const std::string& value) {
+  _internal_set_obsolete_screen_saver_extension_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_extension_id)
+}
+inline std::string* OBSOLETE_ScreenSaverProto::mutable_obsolete_screen_saver_extension_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_extension_id)
+  return _internal_mutable_obsolete_screen_saver_extension_id();
+}
+inline const std::string& OBSOLETE_ScreenSaverProto::_internal_obsolete_screen_saver_extension_id() const {
+  return obsolete_screen_saver_extension_id_.GetNoArena();
+}
+inline void OBSOLETE_ScreenSaverProto::_internal_set_obsolete_screen_saver_extension_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_screen_saver_extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_ScreenSaverProto::set_obsolete_screen_saver_extension_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_screen_saver_extension_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_extension_id)
+}
+inline void OBSOLETE_ScreenSaverProto::set_obsolete_screen_saver_extension_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_screen_saver_extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_extension_id)
+}
+inline void OBSOLETE_ScreenSaverProto::set_obsolete_screen_saver_extension_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_screen_saver_extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_extension_id)
+}
+inline std::string* OBSOLETE_ScreenSaverProto::_internal_mutable_obsolete_screen_saver_extension_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return obsolete_screen_saver_extension_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_ScreenSaverProto::release_obsolete_screen_saver_extension_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_extension_id)
+  if (!_internal_has_obsolete_screen_saver_extension_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return obsolete_screen_saver_extension_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_ScreenSaverProto::set_allocated_obsolete_screen_saver_extension_id(std::string* obsolete_screen_saver_extension_id) {
+  if (obsolete_screen_saver_extension_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  obsolete_screen_saver_extension_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_screen_saver_extension_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_extension_id)
+}
+
+// optional int64 OBSOLETE_screen_saver_timeout = 2 [deprecated = true];
+inline bool OBSOLETE_ScreenSaverProto::_internal_has_obsolete_screen_saver_timeout() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool OBSOLETE_ScreenSaverProto::has_obsolete_screen_saver_timeout() const {
+  return _internal_has_obsolete_screen_saver_timeout();
+}
+inline void OBSOLETE_ScreenSaverProto::clear_obsolete_screen_saver_timeout() {
+  obsolete_screen_saver_timeout_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OBSOLETE_ScreenSaverProto::_internal_obsolete_screen_saver_timeout() const {
+  return obsolete_screen_saver_timeout_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OBSOLETE_ScreenSaverProto::obsolete_screen_saver_timeout() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_timeout)
+  return _internal_obsolete_screen_saver_timeout();
+}
+inline void OBSOLETE_ScreenSaverProto::_internal_set_obsolete_screen_saver_timeout(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  obsolete_screen_saver_timeout_ = value;
+}
+inline void OBSOLETE_ScreenSaverProto::set_obsolete_screen_saver_timeout(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_obsolete_screen_saver_timeout(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_ScreenSaverProto.OBSOLETE_screen_saver_timeout)
+}
+
+// -------------------------------------------------------------------
+
+// AutoUpdateSettingsProto
+
+// optional bool update_disabled = 1;
+inline bool AutoUpdateSettingsProto::_internal_has_update_disabled() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_update_disabled() const {
+  return _internal_has_update_disabled();
+}
+inline void AutoUpdateSettingsProto::clear_update_disabled() {
+  update_disabled_ = false;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline bool AutoUpdateSettingsProto::_internal_update_disabled() const {
+  return update_disabled_;
+}
+inline bool AutoUpdateSettingsProto::update_disabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.update_disabled)
+  return _internal_update_disabled();
+}
+inline void AutoUpdateSettingsProto::_internal_set_update_disabled(bool value) {
+  _has_bits_[0] |= 0x00000080u;
+  update_disabled_ = value;
+}
+inline void AutoUpdateSettingsProto::set_update_disabled(bool value) {
+  _internal_set_update_disabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.update_disabled)
+}
+
+// optional string target_version_prefix = 2;
+inline bool AutoUpdateSettingsProto::_internal_has_target_version_prefix() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_target_version_prefix() const {
+  return _internal_has_target_version_prefix();
+}
+inline void AutoUpdateSettingsProto::clear_target_version_prefix() {
+  target_version_prefix_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AutoUpdateSettingsProto::target_version_prefix() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.target_version_prefix)
+  return _internal_target_version_prefix();
+}
+inline void AutoUpdateSettingsProto::set_target_version_prefix(const std::string& value) {
+  _internal_set_target_version_prefix(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.target_version_prefix)
+}
+inline std::string* AutoUpdateSettingsProto::mutable_target_version_prefix() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AutoUpdateSettingsProto.target_version_prefix)
+  return _internal_mutable_target_version_prefix();
+}
+inline const std::string& AutoUpdateSettingsProto::_internal_target_version_prefix() const {
+  return target_version_prefix_.GetNoArena();
+}
+inline void AutoUpdateSettingsProto::_internal_set_target_version_prefix(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  target_version_prefix_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AutoUpdateSettingsProto::set_target_version_prefix(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  target_version_prefix_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AutoUpdateSettingsProto.target_version_prefix)
+}
+inline void AutoUpdateSettingsProto::set_target_version_prefix(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  target_version_prefix_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AutoUpdateSettingsProto.target_version_prefix)
+}
+inline void AutoUpdateSettingsProto::set_target_version_prefix(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  target_version_prefix_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AutoUpdateSettingsProto.target_version_prefix)
+}
+inline std::string* AutoUpdateSettingsProto::_internal_mutable_target_version_prefix() {
+  _has_bits_[0] |= 0x00000001u;
+  return target_version_prefix_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AutoUpdateSettingsProto::release_target_version_prefix() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AutoUpdateSettingsProto.target_version_prefix)
+  if (!_internal_has_target_version_prefix()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return target_version_prefix_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AutoUpdateSettingsProto::set_allocated_target_version_prefix(std::string* target_version_prefix) {
+  if (target_version_prefix != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  target_version_prefix_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), target_version_prefix);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AutoUpdateSettingsProto.target_version_prefix)
+}
+
+// optional string target_version_display_name = 3;
+inline bool AutoUpdateSettingsProto::_internal_has_target_version_display_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_target_version_display_name() const {
+  return _internal_has_target_version_display_name();
+}
+inline void AutoUpdateSettingsProto::clear_target_version_display_name() {
+  target_version_display_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& AutoUpdateSettingsProto::target_version_display_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.target_version_display_name)
+  return _internal_target_version_display_name();
+}
+inline void AutoUpdateSettingsProto::set_target_version_display_name(const std::string& value) {
+  _internal_set_target_version_display_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.target_version_display_name)
+}
+inline std::string* AutoUpdateSettingsProto::mutable_target_version_display_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AutoUpdateSettingsProto.target_version_display_name)
+  return _internal_mutable_target_version_display_name();
+}
+inline const std::string& AutoUpdateSettingsProto::_internal_target_version_display_name() const {
+  return target_version_display_name_.GetNoArena();
+}
+inline void AutoUpdateSettingsProto::_internal_set_target_version_display_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  target_version_display_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AutoUpdateSettingsProto::set_target_version_display_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  target_version_display_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AutoUpdateSettingsProto.target_version_display_name)
+}
+inline void AutoUpdateSettingsProto::set_target_version_display_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  target_version_display_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AutoUpdateSettingsProto.target_version_display_name)
+}
+inline void AutoUpdateSettingsProto::set_target_version_display_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  target_version_display_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AutoUpdateSettingsProto.target_version_display_name)
+}
+inline std::string* AutoUpdateSettingsProto::_internal_mutable_target_version_display_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return target_version_display_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AutoUpdateSettingsProto::release_target_version_display_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AutoUpdateSettingsProto.target_version_display_name)
+  if (!_internal_has_target_version_display_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return target_version_display_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AutoUpdateSettingsProto::set_allocated_target_version_display_name(std::string* target_version_display_name) {
+  if (target_version_display_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  target_version_display_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), target_version_display_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AutoUpdateSettingsProto.target_version_display_name)
+}
+
+// optional int64 scatter_factor_in_seconds = 4;
+inline bool AutoUpdateSettingsProto::_internal_has_scatter_factor_in_seconds() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_scatter_factor_in_seconds() const {
+  return _internal_has_scatter_factor_in_seconds();
+}
+inline void AutoUpdateSettingsProto::clear_scatter_factor_in_seconds() {
+  scatter_factor_in_seconds_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AutoUpdateSettingsProto::_internal_scatter_factor_in_seconds() const {
+  return scatter_factor_in_seconds_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AutoUpdateSettingsProto::scatter_factor_in_seconds() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.scatter_factor_in_seconds)
+  return _internal_scatter_factor_in_seconds();
+}
+inline void AutoUpdateSettingsProto::_internal_set_scatter_factor_in_seconds(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000040u;
+  scatter_factor_in_seconds_ = value;
+}
+inline void AutoUpdateSettingsProto::set_scatter_factor_in_seconds(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_scatter_factor_in_seconds(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.scatter_factor_in_seconds)
+}
+
+// repeated .enterprise_management.AutoUpdateSettingsProto.ConnectionType allowed_connection_types = 5;
+inline int AutoUpdateSettingsProto::_internal_allowed_connection_types_size() const {
+  return allowed_connection_types_.size();
+}
+inline int AutoUpdateSettingsProto::allowed_connection_types_size() const {
+  return _internal_allowed_connection_types_size();
+}
+inline void AutoUpdateSettingsProto::clear_allowed_connection_types() {
+  allowed_connection_types_.Clear();
+}
+inline ::enterprise_management::AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::_internal_allowed_connection_types(int index) const {
+  return static_cast< ::enterprise_management::AutoUpdateSettingsProto_ConnectionType >(allowed_connection_types_.Get(index));
+}
+inline ::enterprise_management::AutoUpdateSettingsProto_ConnectionType AutoUpdateSettingsProto::allowed_connection_types(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.allowed_connection_types)
+  return _internal_allowed_connection_types(index);
+}
+inline void AutoUpdateSettingsProto::set_allowed_connection_types(int index, ::enterprise_management::AutoUpdateSettingsProto_ConnectionType value) {
+  assert(::enterprise_management::AutoUpdateSettingsProto_ConnectionType_IsValid(value));
+  allowed_connection_types_.Set(index, value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.allowed_connection_types)
+}
+inline void AutoUpdateSettingsProto::_internal_add_allowed_connection_types(::enterprise_management::AutoUpdateSettingsProto_ConnectionType value) {
+  assert(::enterprise_management::AutoUpdateSettingsProto_ConnectionType_IsValid(value));
+  allowed_connection_types_.Add(value);
+}
+inline void AutoUpdateSettingsProto::add_allowed_connection_types(::enterprise_management::AutoUpdateSettingsProto_ConnectionType value) {
+  // @@protoc_insertion_point(field_add:enterprise_management.AutoUpdateSettingsProto.allowed_connection_types)
+  _internal_add_allowed_connection_types(value);
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
+AutoUpdateSettingsProto::allowed_connection_types() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.AutoUpdateSettingsProto.allowed_connection_types)
+  return allowed_connection_types_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+AutoUpdateSettingsProto::_internal_mutable_allowed_connection_types() {
+  return &allowed_connection_types_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+AutoUpdateSettingsProto::mutable_allowed_connection_types() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.AutoUpdateSettingsProto.allowed_connection_types)
+  return _internal_mutable_allowed_connection_types();
+}
+
+// optional bool OBSOLETE_reboot_after_update = 6 [deprecated = true];
+inline bool AutoUpdateSettingsProto::_internal_has_obsolete_reboot_after_update() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_obsolete_reboot_after_update() const {
+  return _internal_has_obsolete_reboot_after_update();
+}
+inline void AutoUpdateSettingsProto::clear_obsolete_reboot_after_update() {
+  obsolete_reboot_after_update_ = false;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline bool AutoUpdateSettingsProto::_internal_obsolete_reboot_after_update() const {
+  return obsolete_reboot_after_update_;
+}
+inline bool AutoUpdateSettingsProto::obsolete_reboot_after_update() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.OBSOLETE_reboot_after_update)
+  return _internal_obsolete_reboot_after_update();
+}
+inline void AutoUpdateSettingsProto::_internal_set_obsolete_reboot_after_update(bool value) {
+  _has_bits_[0] |= 0x00000100u;
+  obsolete_reboot_after_update_ = value;
+}
+inline void AutoUpdateSettingsProto::set_obsolete_reboot_after_update(bool value) {
+  _internal_set_obsolete_reboot_after_update(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.OBSOLETE_reboot_after_update)
+}
+
+// optional bool http_downloads_enabled = 7 [default = false];
+inline bool AutoUpdateSettingsProto::_internal_has_http_downloads_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_http_downloads_enabled() const {
+  return _internal_has_http_downloads_enabled();
+}
+inline void AutoUpdateSettingsProto::clear_http_downloads_enabled() {
+  http_downloads_enabled_ = false;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline bool AutoUpdateSettingsProto::_internal_http_downloads_enabled() const {
+  return http_downloads_enabled_;
+}
+inline bool AutoUpdateSettingsProto::http_downloads_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.http_downloads_enabled)
+  return _internal_http_downloads_enabled();
+}
+inline void AutoUpdateSettingsProto::_internal_set_http_downloads_enabled(bool value) {
+  _has_bits_[0] |= 0x00000200u;
+  http_downloads_enabled_ = value;
+}
+inline void AutoUpdateSettingsProto::set_http_downloads_enabled(bool value) {
+  _internal_set_http_downloads_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.http_downloads_enabled)
+}
+
+// optional bool reboot_after_update = 8;
+inline bool AutoUpdateSettingsProto::_internal_has_reboot_after_update() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_reboot_after_update() const {
+  return _internal_has_reboot_after_update();
+}
+inline void AutoUpdateSettingsProto::clear_reboot_after_update() {
+  reboot_after_update_ = false;
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline bool AutoUpdateSettingsProto::_internal_reboot_after_update() const {
+  return reboot_after_update_;
+}
+inline bool AutoUpdateSettingsProto::reboot_after_update() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.reboot_after_update)
+  return _internal_reboot_after_update();
+}
+inline void AutoUpdateSettingsProto::_internal_set_reboot_after_update(bool value) {
+  _has_bits_[0] |= 0x00000400u;
+  reboot_after_update_ = value;
+}
+inline void AutoUpdateSettingsProto::set_reboot_after_update(bool value) {
+  _internal_set_reboot_after_update(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.reboot_after_update)
+}
+
+// optional bool p2p_enabled = 9 [default = false];
+inline bool AutoUpdateSettingsProto::_internal_has_p2p_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_p2p_enabled() const {
+  return _internal_has_p2p_enabled();
+}
+inline void AutoUpdateSettingsProto::clear_p2p_enabled() {
+  p2p_enabled_ = false;
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline bool AutoUpdateSettingsProto::_internal_p2p_enabled() const {
+  return p2p_enabled_;
+}
+inline bool AutoUpdateSettingsProto::p2p_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.p2p_enabled)
+  return _internal_p2p_enabled();
+}
+inline void AutoUpdateSettingsProto::_internal_set_p2p_enabled(bool value) {
+  _has_bits_[0] |= 0x00000800u;
+  p2p_enabled_ = value;
+}
+inline void AutoUpdateSettingsProto::set_p2p_enabled(bool value) {
+  _internal_set_p2p_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.p2p_enabled)
+}
+
+// optional .enterprise_management.AutoUpdateSettingsProto.RollbackToTargetVersion rollback_to_target_version = 10 [default = ROLLBACK_DISABLED];
+inline bool AutoUpdateSettingsProto::_internal_has_rollback_to_target_version() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_rollback_to_target_version() const {
+  return _internal_has_rollback_to_target_version();
+}
+inline void AutoUpdateSettingsProto::clear_rollback_to_target_version() {
+  rollback_to_target_version_ = 1;
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline ::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto::_internal_rollback_to_target_version() const {
+  return static_cast< ::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion >(rollback_to_target_version_);
+}
+inline ::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion AutoUpdateSettingsProto::rollback_to_target_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.rollback_to_target_version)
+  return _internal_rollback_to_target_version();
+}
+inline void AutoUpdateSettingsProto::_internal_set_rollback_to_target_version(::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion value) {
+  assert(::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion_IsValid(value));
+  _has_bits_[0] |= 0x00002000u;
+  rollback_to_target_version_ = value;
+}
+inline void AutoUpdateSettingsProto::set_rollback_to_target_version(::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion value) {
+  _internal_set_rollback_to_target_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.rollback_to_target_version)
+}
+
+// optional int32 rollback_allowed_milestones = 11 [default = 0];
+inline bool AutoUpdateSettingsProto::_internal_has_rollback_allowed_milestones() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_rollback_allowed_milestones() const {
+  return _internal_has_rollback_allowed_milestones();
+}
+inline void AutoUpdateSettingsProto::clear_rollback_allowed_milestones() {
+  rollback_allowed_milestones_ = 0;
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 AutoUpdateSettingsProto::_internal_rollback_allowed_milestones() const {
+  return rollback_allowed_milestones_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 AutoUpdateSettingsProto::rollback_allowed_milestones() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.rollback_allowed_milestones)
+  return _internal_rollback_allowed_milestones();
+}
+inline void AutoUpdateSettingsProto::_internal_set_rollback_allowed_milestones(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00001000u;
+  rollback_allowed_milestones_ = value;
+}
+inline void AutoUpdateSettingsProto::set_rollback_allowed_milestones(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_rollback_allowed_milestones(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.rollback_allowed_milestones)
+}
+
+// optional string disallowed_time_intervals = 12;
+inline bool AutoUpdateSettingsProto::_internal_has_disallowed_time_intervals() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_disallowed_time_intervals() const {
+  return _internal_has_disallowed_time_intervals();
+}
+inline void AutoUpdateSettingsProto::clear_disallowed_time_intervals() {
+  disallowed_time_intervals_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& AutoUpdateSettingsProto::disallowed_time_intervals() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.disallowed_time_intervals)
+  return _internal_disallowed_time_intervals();
+}
+inline void AutoUpdateSettingsProto::set_disallowed_time_intervals(const std::string& value) {
+  _internal_set_disallowed_time_intervals(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.disallowed_time_intervals)
+}
+inline std::string* AutoUpdateSettingsProto::mutable_disallowed_time_intervals() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AutoUpdateSettingsProto.disallowed_time_intervals)
+  return _internal_mutable_disallowed_time_intervals();
+}
+inline const std::string& AutoUpdateSettingsProto::_internal_disallowed_time_intervals() const {
+  return disallowed_time_intervals_.GetNoArena();
+}
+inline void AutoUpdateSettingsProto::_internal_set_disallowed_time_intervals(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  disallowed_time_intervals_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AutoUpdateSettingsProto::set_disallowed_time_intervals(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  disallowed_time_intervals_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AutoUpdateSettingsProto.disallowed_time_intervals)
+}
+inline void AutoUpdateSettingsProto::set_disallowed_time_intervals(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  disallowed_time_intervals_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AutoUpdateSettingsProto.disallowed_time_intervals)
+}
+inline void AutoUpdateSettingsProto::set_disallowed_time_intervals(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  disallowed_time_intervals_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AutoUpdateSettingsProto.disallowed_time_intervals)
+}
+inline std::string* AutoUpdateSettingsProto::_internal_mutable_disallowed_time_intervals() {
+  _has_bits_[0] |= 0x00000004u;
+  return disallowed_time_intervals_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AutoUpdateSettingsProto::release_disallowed_time_intervals() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AutoUpdateSettingsProto.disallowed_time_intervals)
+  if (!_internal_has_disallowed_time_intervals()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return disallowed_time_intervals_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AutoUpdateSettingsProto::set_allocated_disallowed_time_intervals(std::string* disallowed_time_intervals) {
+  if (disallowed_time_intervals != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  disallowed_time_intervals_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), disallowed_time_intervals);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AutoUpdateSettingsProto.disallowed_time_intervals)
+}
+
+// optional string staging_schedule = 14;
+inline bool AutoUpdateSettingsProto::_internal_has_staging_schedule() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_staging_schedule() const {
+  return _internal_has_staging_schedule();
+}
+inline void AutoUpdateSettingsProto::clear_staging_schedule() {
+  staging_schedule_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& AutoUpdateSettingsProto::staging_schedule() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.staging_schedule)
+  return _internal_staging_schedule();
+}
+inline void AutoUpdateSettingsProto::set_staging_schedule(const std::string& value) {
+  _internal_set_staging_schedule(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.staging_schedule)
+}
+inline std::string* AutoUpdateSettingsProto::mutable_staging_schedule() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AutoUpdateSettingsProto.staging_schedule)
+  return _internal_mutable_staging_schedule();
+}
+inline const std::string& AutoUpdateSettingsProto::_internal_staging_schedule() const {
+  return staging_schedule_.GetNoArena();
+}
+inline void AutoUpdateSettingsProto::_internal_set_staging_schedule(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  staging_schedule_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AutoUpdateSettingsProto::set_staging_schedule(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  staging_schedule_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AutoUpdateSettingsProto.staging_schedule)
+}
+inline void AutoUpdateSettingsProto::set_staging_schedule(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  staging_schedule_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AutoUpdateSettingsProto.staging_schedule)
+}
+inline void AutoUpdateSettingsProto::set_staging_schedule(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  staging_schedule_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AutoUpdateSettingsProto.staging_schedule)
+}
+inline std::string* AutoUpdateSettingsProto::_internal_mutable_staging_schedule() {
+  _has_bits_[0] |= 0x00000008u;
+  return staging_schedule_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AutoUpdateSettingsProto::release_staging_schedule() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AutoUpdateSettingsProto.staging_schedule)
+  if (!_internal_has_staging_schedule()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return staging_schedule_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AutoUpdateSettingsProto::set_allocated_staging_schedule(std::string* staging_schedule) {
+  if (staging_schedule != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  staging_schedule_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), staging_schedule);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AutoUpdateSettingsProto.staging_schedule)
+}
+
+// optional string device_quick_fix_build_token = 15;
+inline bool AutoUpdateSettingsProto::_internal_has_device_quick_fix_build_token() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_device_quick_fix_build_token() const {
+  return _internal_has_device_quick_fix_build_token();
+}
+inline void AutoUpdateSettingsProto::clear_device_quick_fix_build_token() {
+  device_quick_fix_build_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& AutoUpdateSettingsProto::device_quick_fix_build_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.device_quick_fix_build_token)
+  return _internal_device_quick_fix_build_token();
+}
+inline void AutoUpdateSettingsProto::set_device_quick_fix_build_token(const std::string& value) {
+  _internal_set_device_quick_fix_build_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.device_quick_fix_build_token)
+}
+inline std::string* AutoUpdateSettingsProto::mutable_device_quick_fix_build_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AutoUpdateSettingsProto.device_quick_fix_build_token)
+  return _internal_mutable_device_quick_fix_build_token();
+}
+inline const std::string& AutoUpdateSettingsProto::_internal_device_quick_fix_build_token() const {
+  return device_quick_fix_build_token_.GetNoArena();
+}
+inline void AutoUpdateSettingsProto::_internal_set_device_quick_fix_build_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  device_quick_fix_build_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AutoUpdateSettingsProto::set_device_quick_fix_build_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  device_quick_fix_build_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AutoUpdateSettingsProto.device_quick_fix_build_token)
+}
+inline void AutoUpdateSettingsProto::set_device_quick_fix_build_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  device_quick_fix_build_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AutoUpdateSettingsProto.device_quick_fix_build_token)
+}
+inline void AutoUpdateSettingsProto::set_device_quick_fix_build_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  device_quick_fix_build_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AutoUpdateSettingsProto.device_quick_fix_build_token)
+}
+inline std::string* AutoUpdateSettingsProto::_internal_mutable_device_quick_fix_build_token() {
+  _has_bits_[0] |= 0x00000010u;
+  return device_quick_fix_build_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AutoUpdateSettingsProto::release_device_quick_fix_build_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AutoUpdateSettingsProto.device_quick_fix_build_token)
+  if (!_internal_has_device_quick_fix_build_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return device_quick_fix_build_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AutoUpdateSettingsProto::set_allocated_device_quick_fix_build_token(std::string* device_quick_fix_build_token) {
+  if (device_quick_fix_build_token != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  device_quick_fix_build_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_quick_fix_build_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AutoUpdateSettingsProto.device_quick_fix_build_token)
+}
+
+// optional .enterprise_management.AutoUpdateSettingsProto.ChannelDowngradeBehavior channel_downgrade_behavior = 16 [default = WAIT_FOR_VERSION_CATCH_UP];
+inline bool AutoUpdateSettingsProto::_internal_has_channel_downgrade_behavior() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_channel_downgrade_behavior() const {
+  return _internal_has_channel_downgrade_behavior();
+}
+inline void AutoUpdateSettingsProto::clear_channel_downgrade_behavior() {
+  channel_downgrade_behavior_ = 1;
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline ::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto::_internal_channel_downgrade_behavior() const {
+  return static_cast< ::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior >(channel_downgrade_behavior_);
+}
+inline ::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior AutoUpdateSettingsProto::channel_downgrade_behavior() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.channel_downgrade_behavior)
+  return _internal_channel_downgrade_behavior();
+}
+inline void AutoUpdateSettingsProto::_internal_set_channel_downgrade_behavior(::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior value) {
+  assert(::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior_IsValid(value));
+  _has_bits_[0] |= 0x00004000u;
+  channel_downgrade_behavior_ = value;
+}
+inline void AutoUpdateSettingsProto::set_channel_downgrade_behavior(::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior value) {
+  _internal_set_channel_downgrade_behavior(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.channel_downgrade_behavior)
+}
+
+// optional string target_version_selector = 17;
+inline bool AutoUpdateSettingsProto::_internal_has_target_version_selector() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool AutoUpdateSettingsProto::has_target_version_selector() const {
+  return _internal_has_target_version_selector();
+}
+inline void AutoUpdateSettingsProto::clear_target_version_selector() {
+  target_version_selector_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& AutoUpdateSettingsProto::target_version_selector() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoUpdateSettingsProto.target_version_selector)
+  return _internal_target_version_selector();
+}
+inline void AutoUpdateSettingsProto::set_target_version_selector(const std::string& value) {
+  _internal_set_target_version_selector(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoUpdateSettingsProto.target_version_selector)
+}
+inline std::string* AutoUpdateSettingsProto::mutable_target_version_selector() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AutoUpdateSettingsProto.target_version_selector)
+  return _internal_mutable_target_version_selector();
+}
+inline const std::string& AutoUpdateSettingsProto::_internal_target_version_selector() const {
+  return target_version_selector_.GetNoArena();
+}
+inline void AutoUpdateSettingsProto::_internal_set_target_version_selector(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  target_version_selector_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AutoUpdateSettingsProto::set_target_version_selector(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  target_version_selector_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AutoUpdateSettingsProto.target_version_selector)
+}
+inline void AutoUpdateSettingsProto::set_target_version_selector(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  target_version_selector_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AutoUpdateSettingsProto.target_version_selector)
+}
+inline void AutoUpdateSettingsProto::set_target_version_selector(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  target_version_selector_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AutoUpdateSettingsProto.target_version_selector)
+}
+inline std::string* AutoUpdateSettingsProto::_internal_mutable_target_version_selector() {
+  _has_bits_[0] |= 0x00000020u;
+  return target_version_selector_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AutoUpdateSettingsProto::release_target_version_selector() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AutoUpdateSettingsProto.target_version_selector)
+  if (!_internal_has_target_version_selector()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return target_version_selector_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AutoUpdateSettingsProto::set_allocated_target_version_selector(std::string* target_version_selector) {
+  if (target_version_selector != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  target_version_selector_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), target_version_selector);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AutoUpdateSettingsProto.target_version_selector)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_StartUpUrlsProto
+
+// repeated string OBSOLETE_start_up_urls = 1 [deprecated = true];
+inline int OBSOLETE_StartUpUrlsProto::_internal_obsolete_start_up_urls_size() const {
+  return obsolete_start_up_urls_.size();
+}
+inline int OBSOLETE_StartUpUrlsProto::obsolete_start_up_urls_size() const {
+  return _internal_obsolete_start_up_urls_size();
+}
+inline void OBSOLETE_StartUpUrlsProto::clear_obsolete_start_up_urls() {
+  obsolete_start_up_urls_.Clear();
+}
+inline std::string* OBSOLETE_StartUpUrlsProto::add_obsolete_start_up_urls() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+  return _internal_add_obsolete_start_up_urls();
+}
+inline const std::string& OBSOLETE_StartUpUrlsProto::_internal_obsolete_start_up_urls(int index) const {
+  return obsolete_start_up_urls_.Get(index);
+}
+inline const std::string& OBSOLETE_StartUpUrlsProto::obsolete_start_up_urls(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+  return _internal_obsolete_start_up_urls(index);
+}
+inline std::string* OBSOLETE_StartUpUrlsProto::mutable_obsolete_start_up_urls(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+  return obsolete_start_up_urls_.Mutable(index);
+}
+inline void OBSOLETE_StartUpUrlsProto::set_obsolete_start_up_urls(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+  obsolete_start_up_urls_.Mutable(index)->assign(value);
+}
+inline void OBSOLETE_StartUpUrlsProto::set_obsolete_start_up_urls(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+  obsolete_start_up_urls_.Mutable(index)->assign(std::move(value));
+}
+inline void OBSOLETE_StartUpUrlsProto::set_obsolete_start_up_urls(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  obsolete_start_up_urls_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+}
+inline void OBSOLETE_StartUpUrlsProto::set_obsolete_start_up_urls(int index, const char* value, size_t size) {
+  obsolete_start_up_urls_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+}
+inline std::string* OBSOLETE_StartUpUrlsProto::_internal_add_obsolete_start_up_urls() {
+  return obsolete_start_up_urls_.Add();
+}
+inline void OBSOLETE_StartUpUrlsProto::add_obsolete_start_up_urls(const std::string& value) {
+  obsolete_start_up_urls_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+}
+inline void OBSOLETE_StartUpUrlsProto::add_obsolete_start_up_urls(std::string&& value) {
+  obsolete_start_up_urls_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+}
+inline void OBSOLETE_StartUpUrlsProto::add_obsolete_start_up_urls(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  obsolete_start_up_urls_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+}
+inline void OBSOLETE_StartUpUrlsProto::add_obsolete_start_up_urls(const char* value, size_t size) {
+  obsolete_start_up_urls_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+OBSOLETE_StartUpUrlsProto::obsolete_start_up_urls() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+  return obsolete_start_up_urls_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+OBSOLETE_StartUpUrlsProto::mutable_obsolete_start_up_urls() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.OBSOLETE_StartUpUrlsProto.OBSOLETE_start_up_urls)
+  return &obsolete_start_up_urls_;
+}
+
+// -------------------------------------------------------------------
+
+// SystemTimezoneProto
+
+// optional string timezone = 1;
+inline bool SystemTimezoneProto::_internal_has_timezone() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemTimezoneProto::has_timezone() const {
+  return _internal_has_timezone();
+}
+inline void SystemTimezoneProto::clear_timezone() {
+  timezone_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemTimezoneProto::timezone() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemTimezoneProto.timezone)
+  return _internal_timezone();
+}
+inline void SystemTimezoneProto::set_timezone(const std::string& value) {
+  _internal_set_timezone(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemTimezoneProto.timezone)
+}
+inline std::string* SystemTimezoneProto::mutable_timezone() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemTimezoneProto.timezone)
+  return _internal_mutable_timezone();
+}
+inline const std::string& SystemTimezoneProto::_internal_timezone() const {
+  return timezone_.GetNoArena();
+}
+inline void SystemTimezoneProto::_internal_set_timezone(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  timezone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemTimezoneProto::set_timezone(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  timezone_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemTimezoneProto.timezone)
+}
+inline void SystemTimezoneProto::set_timezone(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  timezone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemTimezoneProto.timezone)
+}
+inline void SystemTimezoneProto::set_timezone(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  timezone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemTimezoneProto.timezone)
+}
+inline std::string* SystemTimezoneProto::_internal_mutable_timezone() {
+  _has_bits_[0] |= 0x00000001u;
+  return timezone_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemTimezoneProto::release_timezone() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemTimezoneProto.timezone)
+  if (!_internal_has_timezone()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return timezone_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemTimezoneProto::set_allocated_timezone(std::string* timezone) {
+  if (timezone != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  timezone_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), timezone);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemTimezoneProto.timezone)
+}
+
+// optional .enterprise_management.SystemTimezoneProto.AutomaticTimezoneDetectionType timezone_detection_type = 2;
+inline bool SystemTimezoneProto::_internal_has_timezone_detection_type() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemTimezoneProto::has_timezone_detection_type() const {
+  return _internal_has_timezone_detection_type();
+}
+inline void SystemTimezoneProto::clear_timezone_detection_type() {
+  timezone_detection_type_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::_internal_timezone_detection_type() const {
+  return static_cast< ::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType >(timezone_detection_type_);
+}
+inline ::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType SystemTimezoneProto::timezone_detection_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemTimezoneProto.timezone_detection_type)
+  return _internal_timezone_detection_type();
+}
+inline void SystemTimezoneProto::_internal_set_timezone_detection_type(::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType value) {
+  assert(::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  timezone_detection_type_ = value;
+}
+inline void SystemTimezoneProto::set_timezone_detection_type(::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType value) {
+  _internal_set_timezone_detection_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemTimezoneProto.timezone_detection_type)
+}
+
+// -------------------------------------------------------------------
+
+// SystemUse24HourClockProto
+
+// optional bool use_24hour_clock = 1;
+inline bool SystemUse24HourClockProto::_internal_has_use_24hour_clock() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemUse24HourClockProto::has_use_24hour_clock() const {
+  return _internal_has_use_24hour_clock();
+}
+inline void SystemUse24HourClockProto::clear_use_24hour_clock() {
+  use_24hour_clock_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool SystemUse24HourClockProto::_internal_use_24hour_clock() const {
+  return use_24hour_clock_;
+}
+inline bool SystemUse24HourClockProto::use_24hour_clock() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemUse24HourClockProto.use_24hour_clock)
+  return _internal_use_24hour_clock();
+}
+inline void SystemUse24HourClockProto::_internal_set_use_24hour_clock(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  use_24hour_clock_ = value;
+}
+inline void SystemUse24HourClockProto::set_use_24hour_clock(bool value) {
+  _internal_set_use_24hour_clock(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemUse24HourClockProto.use_24hour_clock)
+}
+
+// -------------------------------------------------------------------
+
+// KioskAppInfoProto
+
+// optional string app_id = 1;
+inline bool KioskAppInfoProto::_internal_has_app_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool KioskAppInfoProto::has_app_id() const {
+  return _internal_has_app_id();
+}
+inline void KioskAppInfoProto::clear_app_id() {
+  app_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& KioskAppInfoProto::app_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.KioskAppInfoProto.app_id)
+  return _internal_app_id();
+}
+inline void KioskAppInfoProto::set_app_id(const std::string& value) {
+  _internal_set_app_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.KioskAppInfoProto.app_id)
+}
+inline std::string* KioskAppInfoProto::mutable_app_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.KioskAppInfoProto.app_id)
+  return _internal_mutable_app_id();
+}
+inline const std::string& KioskAppInfoProto::_internal_app_id() const {
+  return app_id_.GetNoArena();
+}
+inline void KioskAppInfoProto::_internal_set_app_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void KioskAppInfoProto::set_app_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.KioskAppInfoProto.app_id)
+}
+inline void KioskAppInfoProto::set_app_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.KioskAppInfoProto.app_id)
+}
+inline void KioskAppInfoProto::set_app_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.KioskAppInfoProto.app_id)
+}
+inline std::string* KioskAppInfoProto::_internal_mutable_app_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return app_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* KioskAppInfoProto::release_app_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.KioskAppInfoProto.app_id)
+  if (!_internal_has_app_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return app_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void KioskAppInfoProto::set_allocated_app_id(std::string* app_id) {
+  if (app_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  app_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.KioskAppInfoProto.app_id)
+}
+
+// optional string update_url = 2;
+inline bool KioskAppInfoProto::_internal_has_update_url() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool KioskAppInfoProto::has_update_url() const {
+  return _internal_has_update_url();
+}
+inline void KioskAppInfoProto::clear_update_url() {
+  update_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& KioskAppInfoProto::update_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.KioskAppInfoProto.update_url)
+  return _internal_update_url();
+}
+inline void KioskAppInfoProto::set_update_url(const std::string& value) {
+  _internal_set_update_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.KioskAppInfoProto.update_url)
+}
+inline std::string* KioskAppInfoProto::mutable_update_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.KioskAppInfoProto.update_url)
+  return _internal_mutable_update_url();
+}
+inline const std::string& KioskAppInfoProto::_internal_update_url() const {
+  return update_url_.GetNoArena();
+}
+inline void KioskAppInfoProto::_internal_set_update_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  update_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void KioskAppInfoProto::set_update_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  update_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.KioskAppInfoProto.update_url)
+}
+inline void KioskAppInfoProto::set_update_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  update_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.KioskAppInfoProto.update_url)
+}
+inline void KioskAppInfoProto::set_update_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  update_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.KioskAppInfoProto.update_url)
+}
+inline std::string* KioskAppInfoProto::_internal_mutable_update_url() {
+  _has_bits_[0] |= 0x00000002u;
+  return update_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* KioskAppInfoProto::release_update_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.KioskAppInfoProto.update_url)
+  if (!_internal_has_update_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return update_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void KioskAppInfoProto::set_allocated_update_url(std::string* update_url) {
+  if (update_url != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  update_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), update_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.KioskAppInfoProto.update_url)
+}
+
+// -------------------------------------------------------------------
+
+// AndroidKioskAppInfoProto
+
+// optional string package_name = 1;
+inline bool AndroidKioskAppInfoProto::_internal_has_package_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AndroidKioskAppInfoProto::has_package_name() const {
+  return _internal_has_package_name();
+}
+inline void AndroidKioskAppInfoProto::clear_package_name() {
+  package_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AndroidKioskAppInfoProto::package_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidKioskAppInfoProto.package_name)
+  return _internal_package_name();
+}
+inline void AndroidKioskAppInfoProto::set_package_name(const std::string& value) {
+  _internal_set_package_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidKioskAppInfoProto.package_name)
+}
+inline std::string* AndroidKioskAppInfoProto::mutable_package_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidKioskAppInfoProto.package_name)
+  return _internal_mutable_package_name();
+}
+inline const std::string& AndroidKioskAppInfoProto::_internal_package_name() const {
+  return package_name_.GetNoArena();
+}
+inline void AndroidKioskAppInfoProto::_internal_set_package_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidKioskAppInfoProto::set_package_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  package_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidKioskAppInfoProto.package_name)
+}
+inline void AndroidKioskAppInfoProto::set_package_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidKioskAppInfoProto.package_name)
+}
+inline void AndroidKioskAppInfoProto::set_package_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidKioskAppInfoProto.package_name)
+}
+inline std::string* AndroidKioskAppInfoProto::_internal_mutable_package_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return package_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidKioskAppInfoProto::release_package_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidKioskAppInfoProto.package_name)
+  if (!_internal_has_package_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return package_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidKioskAppInfoProto::set_allocated_package_name(std::string* package_name) {
+  if (package_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  package_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), package_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidKioskAppInfoProto.package_name)
+}
+
+// optional string class_name = 2;
+inline bool AndroidKioskAppInfoProto::_internal_has_class_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AndroidKioskAppInfoProto::has_class_name() const {
+  return _internal_has_class_name();
+}
+inline void AndroidKioskAppInfoProto::clear_class_name() {
+  class_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& AndroidKioskAppInfoProto::class_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidKioskAppInfoProto.class_name)
+  return _internal_class_name();
+}
+inline void AndroidKioskAppInfoProto::set_class_name(const std::string& value) {
+  _internal_set_class_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidKioskAppInfoProto.class_name)
+}
+inline std::string* AndroidKioskAppInfoProto::mutable_class_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidKioskAppInfoProto.class_name)
+  return _internal_mutable_class_name();
+}
+inline const std::string& AndroidKioskAppInfoProto::_internal_class_name() const {
+  return class_name_.GetNoArena();
+}
+inline void AndroidKioskAppInfoProto::_internal_set_class_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  class_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidKioskAppInfoProto::set_class_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  class_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidKioskAppInfoProto.class_name)
+}
+inline void AndroidKioskAppInfoProto::set_class_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  class_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidKioskAppInfoProto.class_name)
+}
+inline void AndroidKioskAppInfoProto::set_class_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  class_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidKioskAppInfoProto.class_name)
+}
+inline std::string* AndroidKioskAppInfoProto::_internal_mutable_class_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return class_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidKioskAppInfoProto::release_class_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidKioskAppInfoProto.class_name)
+  if (!_internal_has_class_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return class_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidKioskAppInfoProto::set_allocated_class_name(std::string* class_name) {
+  if (class_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  class_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), class_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidKioskAppInfoProto.class_name)
+}
+
+// optional string action = 3;
+inline bool AndroidKioskAppInfoProto::_internal_has_action() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AndroidKioskAppInfoProto::has_action() const {
+  return _internal_has_action();
+}
+inline void AndroidKioskAppInfoProto::clear_action() {
+  action_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& AndroidKioskAppInfoProto::action() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidKioskAppInfoProto.action)
+  return _internal_action();
+}
+inline void AndroidKioskAppInfoProto::set_action(const std::string& value) {
+  _internal_set_action(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidKioskAppInfoProto.action)
+}
+inline std::string* AndroidKioskAppInfoProto::mutable_action() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidKioskAppInfoProto.action)
+  return _internal_mutable_action();
+}
+inline const std::string& AndroidKioskAppInfoProto::_internal_action() const {
+  return action_.GetNoArena();
+}
+inline void AndroidKioskAppInfoProto::_internal_set_action(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  action_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidKioskAppInfoProto::set_action(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  action_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidKioskAppInfoProto.action)
+}
+inline void AndroidKioskAppInfoProto::set_action(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  action_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidKioskAppInfoProto.action)
+}
+inline void AndroidKioskAppInfoProto::set_action(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  action_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidKioskAppInfoProto.action)
+}
+inline std::string* AndroidKioskAppInfoProto::_internal_mutable_action() {
+  _has_bits_[0] |= 0x00000004u;
+  return action_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidKioskAppInfoProto::release_action() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidKioskAppInfoProto.action)
+  if (!_internal_has_action()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return action_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidKioskAppInfoProto::set_allocated_action(std::string* action) {
+  if (action != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  action_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), action);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidKioskAppInfoProto.action)
+}
+
+// optional string display_name = 4;
+inline bool AndroidKioskAppInfoProto::_internal_has_display_name() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool AndroidKioskAppInfoProto::has_display_name() const {
+  return _internal_has_display_name();
+}
+inline void AndroidKioskAppInfoProto::clear_display_name() {
+  display_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& AndroidKioskAppInfoProto::display_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidKioskAppInfoProto.display_name)
+  return _internal_display_name();
+}
+inline void AndroidKioskAppInfoProto::set_display_name(const std::string& value) {
+  _internal_set_display_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidKioskAppInfoProto.display_name)
+}
+inline std::string* AndroidKioskAppInfoProto::mutable_display_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidKioskAppInfoProto.display_name)
+  return _internal_mutable_display_name();
+}
+inline const std::string& AndroidKioskAppInfoProto::_internal_display_name() const {
+  return display_name_.GetNoArena();
+}
+inline void AndroidKioskAppInfoProto::_internal_set_display_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  display_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidKioskAppInfoProto::set_display_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  display_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidKioskAppInfoProto.display_name)
+}
+inline void AndroidKioskAppInfoProto::set_display_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  display_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidKioskAppInfoProto.display_name)
+}
+inline void AndroidKioskAppInfoProto::set_display_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  display_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidKioskAppInfoProto.display_name)
+}
+inline std::string* AndroidKioskAppInfoProto::_internal_mutable_display_name() {
+  _has_bits_[0] |= 0x00000008u;
+  return display_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidKioskAppInfoProto::release_display_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidKioskAppInfoProto.display_name)
+  if (!_internal_has_display_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return display_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidKioskAppInfoProto::set_allocated_display_name(std::string* display_name) {
+  if (display_name != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  display_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), display_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidKioskAppInfoProto.display_name)
+}
+
+// -------------------------------------------------------------------
+
+// WebKioskAppInfoProto
+
+// optional string url = 1;
+inline bool WebKioskAppInfoProto::_internal_has_url() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool WebKioskAppInfoProto::has_url() const {
+  return _internal_has_url();
+}
+inline void WebKioskAppInfoProto::clear_url() {
+  url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& WebKioskAppInfoProto::url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.WebKioskAppInfoProto.url)
+  return _internal_url();
+}
+inline void WebKioskAppInfoProto::set_url(const std::string& value) {
+  _internal_set_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.WebKioskAppInfoProto.url)
+}
+inline std::string* WebKioskAppInfoProto::mutable_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.WebKioskAppInfoProto.url)
+  return _internal_mutable_url();
+}
+inline const std::string& WebKioskAppInfoProto::_internal_url() const {
+  return url_.GetNoArena();
+}
+inline void WebKioskAppInfoProto::_internal_set_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void WebKioskAppInfoProto::set_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.WebKioskAppInfoProto.url)
+}
+inline void WebKioskAppInfoProto::set_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.WebKioskAppInfoProto.url)
+}
+inline void WebKioskAppInfoProto::set_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.WebKioskAppInfoProto.url)
+}
+inline std::string* WebKioskAppInfoProto::_internal_mutable_url() {
+  _has_bits_[0] |= 0x00000001u;
+  return url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* WebKioskAppInfoProto::release_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.WebKioskAppInfoProto.url)
+  if (!_internal_has_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void WebKioskAppInfoProto::set_allocated_url(std::string* url) {
+  if (url != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.WebKioskAppInfoProto.url)
+}
+
+// optional string title = 2;
+inline bool WebKioskAppInfoProto::_internal_has_title() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool WebKioskAppInfoProto::has_title() const {
+  return _internal_has_title();
+}
+inline void WebKioskAppInfoProto::clear_title() {
+  title_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& WebKioskAppInfoProto::title() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.WebKioskAppInfoProto.title)
+  return _internal_title();
+}
+inline void WebKioskAppInfoProto::set_title(const std::string& value) {
+  _internal_set_title(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.WebKioskAppInfoProto.title)
+}
+inline std::string* WebKioskAppInfoProto::mutable_title() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.WebKioskAppInfoProto.title)
+  return _internal_mutable_title();
+}
+inline const std::string& WebKioskAppInfoProto::_internal_title() const {
+  return title_.GetNoArena();
+}
+inline void WebKioskAppInfoProto::_internal_set_title(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  title_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void WebKioskAppInfoProto::set_title(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  title_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.WebKioskAppInfoProto.title)
+}
+inline void WebKioskAppInfoProto::set_title(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  title_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.WebKioskAppInfoProto.title)
+}
+inline void WebKioskAppInfoProto::set_title(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  title_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.WebKioskAppInfoProto.title)
+}
+inline std::string* WebKioskAppInfoProto::_internal_mutable_title() {
+  _has_bits_[0] |= 0x00000002u;
+  return title_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* WebKioskAppInfoProto::release_title() {
+  // @@protoc_insertion_point(field_release:enterprise_management.WebKioskAppInfoProto.title)
+  if (!_internal_has_title()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return title_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void WebKioskAppInfoProto::set_allocated_title(std::string* title) {
+  if (title != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  title_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), title);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.WebKioskAppInfoProto.title)
+}
+
+// optional string icon_url = 3;
+inline bool WebKioskAppInfoProto::_internal_has_icon_url() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool WebKioskAppInfoProto::has_icon_url() const {
+  return _internal_has_icon_url();
+}
+inline void WebKioskAppInfoProto::clear_icon_url() {
+  icon_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& WebKioskAppInfoProto::icon_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.WebKioskAppInfoProto.icon_url)
+  return _internal_icon_url();
+}
+inline void WebKioskAppInfoProto::set_icon_url(const std::string& value) {
+  _internal_set_icon_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.WebKioskAppInfoProto.icon_url)
+}
+inline std::string* WebKioskAppInfoProto::mutable_icon_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.WebKioskAppInfoProto.icon_url)
+  return _internal_mutable_icon_url();
+}
+inline const std::string& WebKioskAppInfoProto::_internal_icon_url() const {
+  return icon_url_.GetNoArena();
+}
+inline void WebKioskAppInfoProto::_internal_set_icon_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  icon_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void WebKioskAppInfoProto::set_icon_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  icon_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.WebKioskAppInfoProto.icon_url)
+}
+inline void WebKioskAppInfoProto::set_icon_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  icon_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.WebKioskAppInfoProto.icon_url)
+}
+inline void WebKioskAppInfoProto::set_icon_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  icon_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.WebKioskAppInfoProto.icon_url)
+}
+inline std::string* WebKioskAppInfoProto::_internal_mutable_icon_url() {
+  _has_bits_[0] |= 0x00000004u;
+  return icon_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* WebKioskAppInfoProto::release_icon_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.WebKioskAppInfoProto.icon_url)
+  if (!_internal_has_icon_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return icon_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void WebKioskAppInfoProto::set_allocated_icon_url(std::string* icon_url) {
+  if (icon_url != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  icon_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), icon_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.WebKioskAppInfoProto.icon_url)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceLocalAccountInfoProto
+
+// optional string deprecated_public_session_id = 1;
+inline bool DeviceLocalAccountInfoProto::_internal_has_deprecated_public_session_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceLocalAccountInfoProto::has_deprecated_public_session_id() const {
+  return _internal_has_deprecated_public_session_id();
+}
+inline void DeviceLocalAccountInfoProto::clear_deprecated_public_session_id() {
+  deprecated_public_session_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceLocalAccountInfoProto::deprecated_public_session_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountInfoProto.deprecated_public_session_id)
+  return _internal_deprecated_public_session_id();
+}
+inline void DeviceLocalAccountInfoProto::set_deprecated_public_session_id(const std::string& value) {
+  _internal_set_deprecated_public_session_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLocalAccountInfoProto.deprecated_public_session_id)
+}
+inline std::string* DeviceLocalAccountInfoProto::mutable_deprecated_public_session_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLocalAccountInfoProto.deprecated_public_session_id)
+  return _internal_mutable_deprecated_public_session_id();
+}
+inline const std::string& DeviceLocalAccountInfoProto::_internal_deprecated_public_session_id() const {
+  return deprecated_public_session_id_.GetNoArena();
+}
+inline void DeviceLocalAccountInfoProto::_internal_set_deprecated_public_session_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  deprecated_public_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceLocalAccountInfoProto::set_deprecated_public_session_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  deprecated_public_session_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceLocalAccountInfoProto.deprecated_public_session_id)
+}
+inline void DeviceLocalAccountInfoProto::set_deprecated_public_session_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  deprecated_public_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceLocalAccountInfoProto.deprecated_public_session_id)
+}
+inline void DeviceLocalAccountInfoProto::set_deprecated_public_session_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  deprecated_public_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceLocalAccountInfoProto.deprecated_public_session_id)
+}
+inline std::string* DeviceLocalAccountInfoProto::_internal_mutable_deprecated_public_session_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return deprecated_public_session_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceLocalAccountInfoProto::release_deprecated_public_session_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceLocalAccountInfoProto.deprecated_public_session_id)
+  if (!_internal_has_deprecated_public_session_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return deprecated_public_session_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceLocalAccountInfoProto::set_allocated_deprecated_public_session_id(std::string* deprecated_public_session_id) {
+  if (deprecated_public_session_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  deprecated_public_session_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), deprecated_public_session_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceLocalAccountInfoProto.deprecated_public_session_id)
+}
+
+// optional string account_id = 2;
+inline bool DeviceLocalAccountInfoProto::_internal_has_account_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceLocalAccountInfoProto::has_account_id() const {
+  return _internal_has_account_id();
+}
+inline void DeviceLocalAccountInfoProto::clear_account_id() {
+  account_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DeviceLocalAccountInfoProto::account_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountInfoProto.account_id)
+  return _internal_account_id();
+}
+inline void DeviceLocalAccountInfoProto::set_account_id(const std::string& value) {
+  _internal_set_account_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLocalAccountInfoProto.account_id)
+}
+inline std::string* DeviceLocalAccountInfoProto::mutable_account_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLocalAccountInfoProto.account_id)
+  return _internal_mutable_account_id();
+}
+inline const std::string& DeviceLocalAccountInfoProto::_internal_account_id() const {
+  return account_id_.GetNoArena();
+}
+inline void DeviceLocalAccountInfoProto::_internal_set_account_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceLocalAccountInfoProto::set_account_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  account_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceLocalAccountInfoProto.account_id)
+}
+inline void DeviceLocalAccountInfoProto::set_account_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceLocalAccountInfoProto.account_id)
+}
+inline void DeviceLocalAccountInfoProto::set_account_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceLocalAccountInfoProto.account_id)
+}
+inline std::string* DeviceLocalAccountInfoProto::_internal_mutable_account_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return account_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceLocalAccountInfoProto::release_account_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceLocalAccountInfoProto.account_id)
+  if (!_internal_has_account_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return account_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceLocalAccountInfoProto::set_allocated_account_id(std::string* account_id) {
+  if (account_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  account_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), account_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceLocalAccountInfoProto.account_id)
+}
+
+// optional .enterprise_management.DeviceLocalAccountInfoProto.AccountType type = 3;
+inline bool DeviceLocalAccountInfoProto::_internal_has_type() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool DeviceLocalAccountInfoProto::has_type() const {
+  return _internal_has_type();
+}
+inline void DeviceLocalAccountInfoProto::clear_type() {
+  type_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::enterprise_management::DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::_internal_type() const {
+  return static_cast< ::enterprise_management::DeviceLocalAccountInfoProto_AccountType >(type_);
+}
+inline ::enterprise_management::DeviceLocalAccountInfoProto_AccountType DeviceLocalAccountInfoProto::type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountInfoProto.type)
+  return _internal_type();
+}
+inline void DeviceLocalAccountInfoProto::_internal_set_type(::enterprise_management::DeviceLocalAccountInfoProto_AccountType value) {
+  assert(::enterprise_management::DeviceLocalAccountInfoProto_AccountType_IsValid(value));
+  _has_bits_[0] |= 0x00000020u;
+  type_ = value;
+}
+inline void DeviceLocalAccountInfoProto::set_type(::enterprise_management::DeviceLocalAccountInfoProto_AccountType value) {
+  _internal_set_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLocalAccountInfoProto.type)
+}
+
+// optional .enterprise_management.KioskAppInfoProto kiosk_app = 4;
+inline bool DeviceLocalAccountInfoProto::_internal_has_kiosk_app() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || kiosk_app_ != nullptr);
+  return value;
+}
+inline bool DeviceLocalAccountInfoProto::has_kiosk_app() const {
+  return _internal_has_kiosk_app();
+}
+inline void DeviceLocalAccountInfoProto::clear_kiosk_app() {
+  if (kiosk_app_ != nullptr) kiosk_app_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::KioskAppInfoProto& DeviceLocalAccountInfoProto::_internal_kiosk_app() const {
+  const ::enterprise_management::KioskAppInfoProto* p = kiosk_app_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::KioskAppInfoProto*>(
+      &::enterprise_management::_KioskAppInfoProto_default_instance_);
+}
+inline const ::enterprise_management::KioskAppInfoProto& DeviceLocalAccountInfoProto::kiosk_app() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountInfoProto.kiosk_app)
+  return _internal_kiosk_app();
+}
+inline ::enterprise_management::KioskAppInfoProto* DeviceLocalAccountInfoProto::release_kiosk_app() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceLocalAccountInfoProto.kiosk_app)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::KioskAppInfoProto* temp = kiosk_app_;
+  kiosk_app_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::KioskAppInfoProto* DeviceLocalAccountInfoProto::_internal_mutable_kiosk_app() {
+  _has_bits_[0] |= 0x00000004u;
+  if (kiosk_app_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::KioskAppInfoProto>(GetArenaNoVirtual());
+    kiosk_app_ = p;
+  }
+  return kiosk_app_;
+}
+inline ::enterprise_management::KioskAppInfoProto* DeviceLocalAccountInfoProto::mutable_kiosk_app() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLocalAccountInfoProto.kiosk_app)
+  return _internal_mutable_kiosk_app();
+}
+inline void DeviceLocalAccountInfoProto::set_allocated_kiosk_app(::enterprise_management::KioskAppInfoProto* kiosk_app) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete kiosk_app_;
+  }
+  if (kiosk_app) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      kiosk_app = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, kiosk_app, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  kiosk_app_ = kiosk_app;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceLocalAccountInfoProto.kiosk_app)
+}
+
+// optional .enterprise_management.AndroidKioskAppInfoProto android_kiosk_app = 5;
+inline bool DeviceLocalAccountInfoProto::_internal_has_android_kiosk_app() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || android_kiosk_app_ != nullptr);
+  return value;
+}
+inline bool DeviceLocalAccountInfoProto::has_android_kiosk_app() const {
+  return _internal_has_android_kiosk_app();
+}
+inline void DeviceLocalAccountInfoProto::clear_android_kiosk_app() {
+  if (android_kiosk_app_ != nullptr) android_kiosk_app_->Clear();
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const ::enterprise_management::AndroidKioskAppInfoProto& DeviceLocalAccountInfoProto::_internal_android_kiosk_app() const {
+  const ::enterprise_management::AndroidKioskAppInfoProto* p = android_kiosk_app_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AndroidKioskAppInfoProto*>(
+      &::enterprise_management::_AndroidKioskAppInfoProto_default_instance_);
+}
+inline const ::enterprise_management::AndroidKioskAppInfoProto& DeviceLocalAccountInfoProto::android_kiosk_app() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountInfoProto.android_kiosk_app)
+  return _internal_android_kiosk_app();
+}
+inline ::enterprise_management::AndroidKioskAppInfoProto* DeviceLocalAccountInfoProto::release_android_kiosk_app() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceLocalAccountInfoProto.android_kiosk_app)
+  _has_bits_[0] &= ~0x00000008u;
+  ::enterprise_management::AndroidKioskAppInfoProto* temp = android_kiosk_app_;
+  android_kiosk_app_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AndroidKioskAppInfoProto* DeviceLocalAccountInfoProto::_internal_mutable_android_kiosk_app() {
+  _has_bits_[0] |= 0x00000008u;
+  if (android_kiosk_app_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AndroidKioskAppInfoProto>(GetArenaNoVirtual());
+    android_kiosk_app_ = p;
+  }
+  return android_kiosk_app_;
+}
+inline ::enterprise_management::AndroidKioskAppInfoProto* DeviceLocalAccountInfoProto::mutable_android_kiosk_app() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLocalAccountInfoProto.android_kiosk_app)
+  return _internal_mutable_android_kiosk_app();
+}
+inline void DeviceLocalAccountInfoProto::set_allocated_android_kiosk_app(::enterprise_management::AndroidKioskAppInfoProto* android_kiosk_app) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete android_kiosk_app_;
+  }
+  if (android_kiosk_app) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      android_kiosk_app = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, android_kiosk_app, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  android_kiosk_app_ = android_kiosk_app;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceLocalAccountInfoProto.android_kiosk_app)
+}
+
+// optional .enterprise_management.WebKioskAppInfoProto web_kiosk_app = 6;
+inline bool DeviceLocalAccountInfoProto::_internal_has_web_kiosk_app() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || web_kiosk_app_ != nullptr);
+  return value;
+}
+inline bool DeviceLocalAccountInfoProto::has_web_kiosk_app() const {
+  return _internal_has_web_kiosk_app();
+}
+inline void DeviceLocalAccountInfoProto::clear_web_kiosk_app() {
+  if (web_kiosk_app_ != nullptr) web_kiosk_app_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::enterprise_management::WebKioskAppInfoProto& DeviceLocalAccountInfoProto::_internal_web_kiosk_app() const {
+  const ::enterprise_management::WebKioskAppInfoProto* p = web_kiosk_app_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::WebKioskAppInfoProto*>(
+      &::enterprise_management::_WebKioskAppInfoProto_default_instance_);
+}
+inline const ::enterprise_management::WebKioskAppInfoProto& DeviceLocalAccountInfoProto::web_kiosk_app() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountInfoProto.web_kiosk_app)
+  return _internal_web_kiosk_app();
+}
+inline ::enterprise_management::WebKioskAppInfoProto* DeviceLocalAccountInfoProto::release_web_kiosk_app() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceLocalAccountInfoProto.web_kiosk_app)
+  _has_bits_[0] &= ~0x00000010u;
+  ::enterprise_management::WebKioskAppInfoProto* temp = web_kiosk_app_;
+  web_kiosk_app_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::WebKioskAppInfoProto* DeviceLocalAccountInfoProto::_internal_mutable_web_kiosk_app() {
+  _has_bits_[0] |= 0x00000010u;
+  if (web_kiosk_app_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::WebKioskAppInfoProto>(GetArenaNoVirtual());
+    web_kiosk_app_ = p;
+  }
+  return web_kiosk_app_;
+}
+inline ::enterprise_management::WebKioskAppInfoProto* DeviceLocalAccountInfoProto::mutable_web_kiosk_app() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLocalAccountInfoProto.web_kiosk_app)
+  return _internal_mutable_web_kiosk_app();
+}
+inline void DeviceLocalAccountInfoProto::set_allocated_web_kiosk_app(::enterprise_management::WebKioskAppInfoProto* web_kiosk_app) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete web_kiosk_app_;
+  }
+  if (web_kiosk_app) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      web_kiosk_app = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, web_kiosk_app, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  web_kiosk_app_ = web_kiosk_app;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceLocalAccountInfoProto.web_kiosk_app)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceLocalAccountsProto
+
+// repeated .enterprise_management.DeviceLocalAccountInfoProto account = 1;
+inline int DeviceLocalAccountsProto::_internal_account_size() const {
+  return account_.size();
+}
+inline int DeviceLocalAccountsProto::account_size() const {
+  return _internal_account_size();
+}
+inline void DeviceLocalAccountsProto::clear_account() {
+  account_.Clear();
+}
+inline ::enterprise_management::DeviceLocalAccountInfoProto* DeviceLocalAccountsProto::mutable_account(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLocalAccountsProto.account)
+  return account_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceLocalAccountInfoProto >*
+DeviceLocalAccountsProto::mutable_account() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceLocalAccountsProto.account)
+  return &account_;
+}
+inline const ::enterprise_management::DeviceLocalAccountInfoProto& DeviceLocalAccountsProto::_internal_account(int index) const {
+  return account_.Get(index);
+}
+inline const ::enterprise_management::DeviceLocalAccountInfoProto& DeviceLocalAccountsProto::account(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountsProto.account)
+  return _internal_account(index);
+}
+inline ::enterprise_management::DeviceLocalAccountInfoProto* DeviceLocalAccountsProto::_internal_add_account() {
+  return account_.Add();
+}
+inline ::enterprise_management::DeviceLocalAccountInfoProto* DeviceLocalAccountsProto::add_account() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceLocalAccountsProto.account)
+  return _internal_add_account();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceLocalAccountInfoProto >&
+DeviceLocalAccountsProto::account() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceLocalAccountsProto.account)
+  return account_;
+}
+
+// optional string auto_login_id = 2;
+inline bool DeviceLocalAccountsProto::_internal_has_auto_login_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceLocalAccountsProto::has_auto_login_id() const {
+  return _internal_has_auto_login_id();
+}
+inline void DeviceLocalAccountsProto::clear_auto_login_id() {
+  auto_login_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceLocalAccountsProto::auto_login_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountsProto.auto_login_id)
+  return _internal_auto_login_id();
+}
+inline void DeviceLocalAccountsProto::set_auto_login_id(const std::string& value) {
+  _internal_set_auto_login_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLocalAccountsProto.auto_login_id)
+}
+inline std::string* DeviceLocalAccountsProto::mutable_auto_login_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLocalAccountsProto.auto_login_id)
+  return _internal_mutable_auto_login_id();
+}
+inline const std::string& DeviceLocalAccountsProto::_internal_auto_login_id() const {
+  return auto_login_id_.GetNoArena();
+}
+inline void DeviceLocalAccountsProto::_internal_set_auto_login_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auto_login_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceLocalAccountsProto::set_auto_login_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auto_login_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceLocalAccountsProto.auto_login_id)
+}
+inline void DeviceLocalAccountsProto::set_auto_login_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  auto_login_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceLocalAccountsProto.auto_login_id)
+}
+inline void DeviceLocalAccountsProto::set_auto_login_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  auto_login_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceLocalAccountsProto.auto_login_id)
+}
+inline std::string* DeviceLocalAccountsProto::_internal_mutable_auto_login_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return auto_login_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceLocalAccountsProto::release_auto_login_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceLocalAccountsProto.auto_login_id)
+  if (!_internal_has_auto_login_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return auto_login_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceLocalAccountsProto::set_allocated_auto_login_id(std::string* auto_login_id) {
+  if (auto_login_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  auto_login_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), auto_login_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceLocalAccountsProto.auto_login_id)
+}
+
+// optional int64 auto_login_delay = 3;
+inline bool DeviceLocalAccountsProto::_internal_has_auto_login_delay() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceLocalAccountsProto::has_auto_login_delay() const {
+  return _internal_has_auto_login_delay();
+}
+inline void DeviceLocalAccountsProto::clear_auto_login_delay() {
+  auto_login_delay_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceLocalAccountsProto::_internal_auto_login_delay() const {
+  return auto_login_delay_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceLocalAccountsProto::auto_login_delay() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountsProto.auto_login_delay)
+  return _internal_auto_login_delay();
+}
+inline void DeviceLocalAccountsProto::_internal_set_auto_login_delay(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  auto_login_delay_ = value;
+}
+inline void DeviceLocalAccountsProto::set_auto_login_delay(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_auto_login_delay(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLocalAccountsProto.auto_login_delay)
+}
+
+// optional bool enable_auto_login_bailout = 4 [default = true];
+inline bool DeviceLocalAccountsProto::_internal_has_enable_auto_login_bailout() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceLocalAccountsProto::has_enable_auto_login_bailout() const {
+  return _internal_has_enable_auto_login_bailout();
+}
+inline void DeviceLocalAccountsProto::clear_enable_auto_login_bailout() {
+  enable_auto_login_bailout_ = true;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool DeviceLocalAccountsProto::_internal_enable_auto_login_bailout() const {
+  return enable_auto_login_bailout_;
+}
+inline bool DeviceLocalAccountsProto::enable_auto_login_bailout() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountsProto.enable_auto_login_bailout)
+  return _internal_enable_auto_login_bailout();
+}
+inline void DeviceLocalAccountsProto::_internal_set_enable_auto_login_bailout(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  enable_auto_login_bailout_ = value;
+}
+inline void DeviceLocalAccountsProto::set_enable_auto_login_bailout(bool value) {
+  _internal_set_enable_auto_login_bailout(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLocalAccountsProto.enable_auto_login_bailout)
+}
+
+// optional bool prompt_for_network_when_offline = 5 [default = true];
+inline bool DeviceLocalAccountsProto::_internal_has_prompt_for_network_when_offline() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DeviceLocalAccountsProto::has_prompt_for_network_when_offline() const {
+  return _internal_has_prompt_for_network_when_offline();
+}
+inline void DeviceLocalAccountsProto::clear_prompt_for_network_when_offline() {
+  prompt_for_network_when_offline_ = true;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool DeviceLocalAccountsProto::_internal_prompt_for_network_when_offline() const {
+  return prompt_for_network_when_offline_;
+}
+inline bool DeviceLocalAccountsProto::prompt_for_network_when_offline() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLocalAccountsProto.prompt_for_network_when_offline)
+  return _internal_prompt_for_network_when_offline();
+}
+inline void DeviceLocalAccountsProto::_internal_set_prompt_for_network_when_offline(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  prompt_for_network_when_offline_ = value;
+}
+inline void DeviceLocalAccountsProto::set_prompt_for_network_when_offline(bool value) {
+  _internal_set_prompt_for_network_when_offline(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLocalAccountsProto.prompt_for_network_when_offline)
+}
+
+// -------------------------------------------------------------------
+
+// ManagedGuestSessionPrivacyWarningsProto
+
+// optional bool enabled = 1 [default = true];
+inline bool ManagedGuestSessionPrivacyWarningsProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ManagedGuestSessionPrivacyWarningsProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void ManagedGuestSessionPrivacyWarningsProto::clear_enabled() {
+  enabled_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool ManagedGuestSessionPrivacyWarningsProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool ManagedGuestSessionPrivacyWarningsProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ManagedGuestSessionPrivacyWarningsProto.enabled)
+  return _internal_enabled();
+}
+inline void ManagedGuestSessionPrivacyWarningsProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void ManagedGuestSessionPrivacyWarningsProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ManagedGuestSessionPrivacyWarningsProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// AllowRedeemChromeOsRegistrationOffersProto
+
+// optional bool allow_redeem_offers = 1 [default = true];
+inline bool AllowRedeemChromeOsRegistrationOffersProto::_internal_has_allow_redeem_offers() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AllowRedeemChromeOsRegistrationOffersProto::has_allow_redeem_offers() const {
+  return _internal_has_allow_redeem_offers();
+}
+inline void AllowRedeemChromeOsRegistrationOffersProto::clear_allow_redeem_offers() {
+  allow_redeem_offers_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool AllowRedeemChromeOsRegistrationOffersProto::_internal_allow_redeem_offers() const {
+  return allow_redeem_offers_;
+}
+inline bool AllowRedeemChromeOsRegistrationOffersProto::allow_redeem_offers() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto.allow_redeem_offers)
+  return _internal_allow_redeem_offers();
+}
+inline void AllowRedeemChromeOsRegistrationOffersProto::_internal_set_allow_redeem_offers(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  allow_redeem_offers_ = value;
+}
+inline void AllowRedeemChromeOsRegistrationOffersProto::set_allow_redeem_offers(bool value) {
+  _internal_set_allow_redeem_offers(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AllowRedeemChromeOsRegistrationOffersProto.allow_redeem_offers)
+}
+
+// -------------------------------------------------------------------
+
+// FeatureFlagsProto
+
+// repeated string switches = 1 [deprecated = true];
+inline int FeatureFlagsProto::_internal_switches_size() const {
+  return switches_.size();
+}
+inline int FeatureFlagsProto::switches_size() const {
+  return _internal_switches_size();
+}
+inline void FeatureFlagsProto::clear_switches() {
+  switches_.Clear();
+}
+inline std::string* FeatureFlagsProto::add_switches() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.FeatureFlagsProto.switches)
+  return _internal_add_switches();
+}
+inline const std::string& FeatureFlagsProto::_internal_switches(int index) const {
+  return switches_.Get(index);
+}
+inline const std::string& FeatureFlagsProto::switches(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.FeatureFlagsProto.switches)
+  return _internal_switches(index);
+}
+inline std::string* FeatureFlagsProto::mutable_switches(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.FeatureFlagsProto.switches)
+  return switches_.Mutable(index);
+}
+inline void FeatureFlagsProto::set_switches(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.FeatureFlagsProto.switches)
+  switches_.Mutable(index)->assign(value);
+}
+inline void FeatureFlagsProto::set_switches(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.FeatureFlagsProto.switches)
+  switches_.Mutable(index)->assign(std::move(value));
+}
+inline void FeatureFlagsProto::set_switches(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  switches_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.FeatureFlagsProto.switches)
+}
+inline void FeatureFlagsProto::set_switches(int index, const char* value, size_t size) {
+  switches_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.FeatureFlagsProto.switches)
+}
+inline std::string* FeatureFlagsProto::_internal_add_switches() {
+  return switches_.Add();
+}
+inline void FeatureFlagsProto::add_switches(const std::string& value) {
+  switches_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.FeatureFlagsProto.switches)
+}
+inline void FeatureFlagsProto::add_switches(std::string&& value) {
+  switches_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.FeatureFlagsProto.switches)
+}
+inline void FeatureFlagsProto::add_switches(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  switches_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.FeatureFlagsProto.switches)
+}
+inline void FeatureFlagsProto::add_switches(const char* value, size_t size) {
+  switches_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.FeatureFlagsProto.switches)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+FeatureFlagsProto::switches() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.FeatureFlagsProto.switches)
+  return switches_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+FeatureFlagsProto::mutable_switches() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.FeatureFlagsProto.switches)
+  return &switches_;
+}
+
+// repeated string feature_flags = 2;
+inline int FeatureFlagsProto::_internal_feature_flags_size() const {
+  return feature_flags_.size();
+}
+inline int FeatureFlagsProto::feature_flags_size() const {
+  return _internal_feature_flags_size();
+}
+inline void FeatureFlagsProto::clear_feature_flags() {
+  feature_flags_.Clear();
+}
+inline std::string* FeatureFlagsProto::add_feature_flags() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.FeatureFlagsProto.feature_flags)
+  return _internal_add_feature_flags();
+}
+inline const std::string& FeatureFlagsProto::_internal_feature_flags(int index) const {
+  return feature_flags_.Get(index);
+}
+inline const std::string& FeatureFlagsProto::feature_flags(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.FeatureFlagsProto.feature_flags)
+  return _internal_feature_flags(index);
+}
+inline std::string* FeatureFlagsProto::mutable_feature_flags(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.FeatureFlagsProto.feature_flags)
+  return feature_flags_.Mutable(index);
+}
+inline void FeatureFlagsProto::set_feature_flags(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.FeatureFlagsProto.feature_flags)
+  feature_flags_.Mutable(index)->assign(value);
+}
+inline void FeatureFlagsProto::set_feature_flags(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.FeatureFlagsProto.feature_flags)
+  feature_flags_.Mutable(index)->assign(std::move(value));
+}
+inline void FeatureFlagsProto::set_feature_flags(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  feature_flags_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.FeatureFlagsProto.feature_flags)
+}
+inline void FeatureFlagsProto::set_feature_flags(int index, const char* value, size_t size) {
+  feature_flags_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.FeatureFlagsProto.feature_flags)
+}
+inline std::string* FeatureFlagsProto::_internal_add_feature_flags() {
+  return feature_flags_.Add();
+}
+inline void FeatureFlagsProto::add_feature_flags(const std::string& value) {
+  feature_flags_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.FeatureFlagsProto.feature_flags)
+}
+inline void FeatureFlagsProto::add_feature_flags(std::string&& value) {
+  feature_flags_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.FeatureFlagsProto.feature_flags)
+}
+inline void FeatureFlagsProto::add_feature_flags(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  feature_flags_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.FeatureFlagsProto.feature_flags)
+}
+inline void FeatureFlagsProto::add_feature_flags(const char* value, size_t size) {
+  feature_flags_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.FeatureFlagsProto.feature_flags)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+FeatureFlagsProto::feature_flags() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.FeatureFlagsProto.feature_flags)
+  return feature_flags_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+FeatureFlagsProto::mutable_feature_flags() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.FeatureFlagsProto.feature_flags)
+  return &feature_flags_;
+}
+
+// -------------------------------------------------------------------
+
+// UptimeLimitProto
+
+// optional int64 OBSOLETE_uptime_limit = 1 [deprecated = true];
+inline bool UptimeLimitProto::_internal_has_obsolete_uptime_limit() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool UptimeLimitProto::has_obsolete_uptime_limit() const {
+  return _internal_has_obsolete_uptime_limit();
+}
+inline void UptimeLimitProto::clear_obsolete_uptime_limit() {
+  obsolete_uptime_limit_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 UptimeLimitProto::_internal_obsolete_uptime_limit() const {
+  return obsolete_uptime_limit_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 UptimeLimitProto::obsolete_uptime_limit() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UptimeLimitProto.OBSOLETE_uptime_limit)
+  return _internal_obsolete_uptime_limit();
+}
+inline void UptimeLimitProto::_internal_set_obsolete_uptime_limit(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_uptime_limit_ = value;
+}
+inline void UptimeLimitProto::set_obsolete_uptime_limit(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_obsolete_uptime_limit(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UptimeLimitProto.OBSOLETE_uptime_limit)
+}
+
+// optional int64 uptime_limit = 2;
+inline bool UptimeLimitProto::_internal_has_uptime_limit() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool UptimeLimitProto::has_uptime_limit() const {
+  return _internal_has_uptime_limit();
+}
+inline void UptimeLimitProto::clear_uptime_limit() {
+  uptime_limit_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 UptimeLimitProto::_internal_uptime_limit() const {
+  return uptime_limit_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 UptimeLimitProto::uptime_limit() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UptimeLimitProto.uptime_limit)
+  return _internal_uptime_limit();
+}
+inline void UptimeLimitProto::_internal_set_uptime_limit(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  uptime_limit_ = value;
+}
+inline void UptimeLimitProto::set_uptime_limit(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_uptime_limit(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UptimeLimitProto.uptime_limit)
+}
+
+// -------------------------------------------------------------------
+
+// VariationsParameterProto
+
+// optional string parameter = 1;
+inline bool VariationsParameterProto::_internal_has_parameter() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool VariationsParameterProto::has_parameter() const {
+  return _internal_has_parameter();
+}
+inline void VariationsParameterProto::clear_parameter() {
+  parameter_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& VariationsParameterProto::parameter() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.VariationsParameterProto.parameter)
+  return _internal_parameter();
+}
+inline void VariationsParameterProto::set_parameter(const std::string& value) {
+  _internal_set_parameter(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.VariationsParameterProto.parameter)
+}
+inline std::string* VariationsParameterProto::mutable_parameter() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.VariationsParameterProto.parameter)
+  return _internal_mutable_parameter();
+}
+inline const std::string& VariationsParameterProto::_internal_parameter() const {
+  return parameter_.GetNoArena();
+}
+inline void VariationsParameterProto::_internal_set_parameter(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  parameter_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void VariationsParameterProto::set_parameter(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  parameter_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.VariationsParameterProto.parameter)
+}
+inline void VariationsParameterProto::set_parameter(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  parameter_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.VariationsParameterProto.parameter)
+}
+inline void VariationsParameterProto::set_parameter(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  parameter_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.VariationsParameterProto.parameter)
+}
+inline std::string* VariationsParameterProto::_internal_mutable_parameter() {
+  _has_bits_[0] |= 0x00000001u;
+  return parameter_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* VariationsParameterProto::release_parameter() {
+  // @@protoc_insertion_point(field_release:enterprise_management.VariationsParameterProto.parameter)
+  if (!_internal_has_parameter()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return parameter_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void VariationsParameterProto::set_allocated_parameter(std::string* parameter) {
+  if (parameter != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  parameter_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), parameter);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.VariationsParameterProto.parameter)
+}
+
+// -------------------------------------------------------------------
+
+// AttestationSettingsProto
+
+// optional bool attestation_enabled = 1 [default = false];
+inline bool AttestationSettingsProto::_internal_has_attestation_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AttestationSettingsProto::has_attestation_enabled() const {
+  return _internal_has_attestation_enabled();
+}
+inline void AttestationSettingsProto::clear_attestation_enabled() {
+  attestation_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool AttestationSettingsProto::_internal_attestation_enabled() const {
+  return attestation_enabled_;
+}
+inline bool AttestationSettingsProto::attestation_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AttestationSettingsProto.attestation_enabled)
+  return _internal_attestation_enabled();
+}
+inline void AttestationSettingsProto::_internal_set_attestation_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  attestation_enabled_ = value;
+}
+inline void AttestationSettingsProto::set_attestation_enabled(bool value) {
+  _internal_set_attestation_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AttestationSettingsProto.attestation_enabled)
+}
+
+// optional bool content_protection_enabled = 2 [default = true];
+inline bool AttestationSettingsProto::_internal_has_content_protection_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AttestationSettingsProto::has_content_protection_enabled() const {
+  return _internal_has_content_protection_enabled();
+}
+inline void AttestationSettingsProto::clear_content_protection_enabled() {
+  content_protection_enabled_ = true;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool AttestationSettingsProto::_internal_content_protection_enabled() const {
+  return content_protection_enabled_;
+}
+inline bool AttestationSettingsProto::content_protection_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AttestationSettingsProto.content_protection_enabled)
+  return _internal_content_protection_enabled();
+}
+inline void AttestationSettingsProto::_internal_set_content_protection_enabled(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  content_protection_enabled_ = value;
+}
+inline void AttestationSettingsProto::set_content_protection_enabled(bool value) {
+  _internal_set_content_protection_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AttestationSettingsProto.content_protection_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// AccessibilitySettingsProto
+
+// optional bool login_screen_default_large_cursor_enabled = 1;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_default_large_cursor_enabled() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_default_large_cursor_enabled() const {
+  return _internal_has_login_screen_default_large_cursor_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_default_large_cursor_enabled() {
+  login_screen_default_large_cursor_enabled_ = false;
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_default_large_cursor_enabled() const {
+  return login_screen_default_large_cursor_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_default_large_cursor_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_default_large_cursor_enabled)
+  return _internal_login_screen_default_large_cursor_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_default_large_cursor_enabled(bool value) {
+  _has_bits_[0] |= 0x00008000u;
+  login_screen_default_large_cursor_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_default_large_cursor_enabled(bool value) {
+  _internal_set_login_screen_default_large_cursor_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_default_large_cursor_enabled)
+}
+
+// optional bool login_screen_default_spoken_feedback_enabled = 2;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_default_spoken_feedback_enabled() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_default_spoken_feedback_enabled() const {
+  return _internal_has_login_screen_default_spoken_feedback_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_default_spoken_feedback_enabled() {
+  login_screen_default_spoken_feedback_enabled_ = false;
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_default_spoken_feedback_enabled() const {
+  return login_screen_default_spoken_feedback_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_default_spoken_feedback_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_default_spoken_feedback_enabled)
+  return _internal_login_screen_default_spoken_feedback_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_default_spoken_feedback_enabled(bool value) {
+  _has_bits_[0] |= 0x00010000u;
+  login_screen_default_spoken_feedback_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_default_spoken_feedback_enabled(bool value) {
+  _internal_set_login_screen_default_spoken_feedback_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_default_spoken_feedback_enabled)
+}
+
+// optional bool login_screen_default_high_contrast_enabled = 3;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_default_high_contrast_enabled() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_default_high_contrast_enabled() const {
+  return _internal_has_login_screen_default_high_contrast_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_default_high_contrast_enabled() {
+  login_screen_default_high_contrast_enabled_ = false;
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_default_high_contrast_enabled() const {
+  return login_screen_default_high_contrast_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_default_high_contrast_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_default_high_contrast_enabled)
+  return _internal_login_screen_default_high_contrast_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_default_high_contrast_enabled(bool value) {
+  _has_bits_[0] |= 0x00020000u;
+  login_screen_default_high_contrast_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_default_high_contrast_enabled(bool value) {
+  _internal_set_login_screen_default_high_contrast_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_default_high_contrast_enabled)
+}
+
+// optional .enterprise_management.AccessibilitySettingsProto.ScreenMagnifierType login_screen_default_screen_magnifier_type = 4;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_default_screen_magnifier_type() const {
+  bool value = (_has_bits_[0] & 0x00080000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_default_screen_magnifier_type() const {
+  return _internal_has_login_screen_default_screen_magnifier_type();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_default_screen_magnifier_type() {
+  login_screen_default_screen_magnifier_type_ = 0;
+  _has_bits_[0] &= ~0x00080000u;
+}
+inline ::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType AccessibilitySettingsProto::_internal_login_screen_default_screen_magnifier_type() const {
+  return static_cast< ::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType >(login_screen_default_screen_magnifier_type_);
+}
+inline ::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType AccessibilitySettingsProto::login_screen_default_screen_magnifier_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_default_screen_magnifier_type)
+  return _internal_login_screen_default_screen_magnifier_type();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_default_screen_magnifier_type(::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType value) {
+  assert(::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType_IsValid(value));
+  _has_bits_[0] |= 0x00080000u;
+  login_screen_default_screen_magnifier_type_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_default_screen_magnifier_type(::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType value) {
+  _internal_set_login_screen_default_screen_magnifier_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_default_screen_magnifier_type)
+}
+
+// optional bool login_screen_default_virtual_keyboard_enabled = 5;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_default_virtual_keyboard_enabled() const {
+  bool value = (_has_bits_[0] & 0x00040000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_default_virtual_keyboard_enabled() const {
+  return _internal_has_login_screen_default_virtual_keyboard_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_default_virtual_keyboard_enabled() {
+  login_screen_default_virtual_keyboard_enabled_ = false;
+  _has_bits_[0] &= ~0x00040000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_default_virtual_keyboard_enabled() const {
+  return login_screen_default_virtual_keyboard_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_default_virtual_keyboard_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_default_virtual_keyboard_enabled)
+  return _internal_login_screen_default_virtual_keyboard_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_default_virtual_keyboard_enabled(bool value) {
+  _has_bits_[0] |= 0x00040000u;
+  login_screen_default_virtual_keyboard_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_default_virtual_keyboard_enabled(bool value) {
+  _internal_set_login_screen_default_virtual_keyboard_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_default_virtual_keyboard_enabled)
+}
+
+// optional bool login_screen_large_cursor_enabled = 6;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_large_cursor_enabled() const {
+  bool value = (_has_bits_[0] & 0x00100000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_large_cursor_enabled() const {
+  return _internal_has_login_screen_large_cursor_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_large_cursor_enabled() {
+  login_screen_large_cursor_enabled_ = false;
+  _has_bits_[0] &= ~0x00100000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_large_cursor_enabled() const {
+  return login_screen_large_cursor_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_large_cursor_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_large_cursor_enabled)
+  return _internal_login_screen_large_cursor_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_large_cursor_enabled(bool value) {
+  _has_bits_[0] |= 0x00100000u;
+  login_screen_large_cursor_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_large_cursor_enabled(bool value) {
+  _internal_set_login_screen_large_cursor_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_large_cursor_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_large_cursor_enabled_options = 7;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_large_cursor_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_large_cursor_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_large_cursor_enabled_options() const {
+  return _internal_has_login_screen_large_cursor_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_large_cursor_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_large_cursor_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_large_cursor_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_large_cursor_enabled_options)
+  return _internal_login_screen_large_cursor_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_large_cursor_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_large_cursor_enabled_options)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_large_cursor_enabled_options_;
+  login_screen_large_cursor_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_large_cursor_enabled_options() {
+  _has_bits_[0] |= 0x00000001u;
+  if (login_screen_large_cursor_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_large_cursor_enabled_options_ = p;
+  }
+  return login_screen_large_cursor_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_large_cursor_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_large_cursor_enabled_options)
+  return _internal_mutable_login_screen_large_cursor_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_large_cursor_enabled_options(::enterprise_management::PolicyOptions* login_screen_large_cursor_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_large_cursor_enabled_options_);
+  }
+  if (login_screen_large_cursor_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_large_cursor_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_large_cursor_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  login_screen_large_cursor_enabled_options_ = login_screen_large_cursor_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_large_cursor_enabled_options)
+}
+
+// optional bool login_screen_spoken_feedback_enabled = 8;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_spoken_feedback_enabled() const {
+  bool value = (_has_bits_[0] & 0x00200000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_spoken_feedback_enabled() const {
+  return _internal_has_login_screen_spoken_feedback_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_spoken_feedback_enabled() {
+  login_screen_spoken_feedback_enabled_ = false;
+  _has_bits_[0] &= ~0x00200000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_spoken_feedback_enabled() const {
+  return login_screen_spoken_feedback_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_spoken_feedback_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_spoken_feedback_enabled)
+  return _internal_login_screen_spoken_feedback_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_spoken_feedback_enabled(bool value) {
+  _has_bits_[0] |= 0x00200000u;
+  login_screen_spoken_feedback_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_spoken_feedback_enabled(bool value) {
+  _internal_set_login_screen_spoken_feedback_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_spoken_feedback_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_spoken_feedback_enabled_options = 9;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_spoken_feedback_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_spoken_feedback_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_spoken_feedback_enabled_options() const {
+  return _internal_has_login_screen_spoken_feedback_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_spoken_feedback_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_spoken_feedback_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_spoken_feedback_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_spoken_feedback_enabled_options)
+  return _internal_login_screen_spoken_feedback_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_spoken_feedback_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_spoken_feedback_enabled_options)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_spoken_feedback_enabled_options_;
+  login_screen_spoken_feedback_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_spoken_feedback_enabled_options() {
+  _has_bits_[0] |= 0x00000002u;
+  if (login_screen_spoken_feedback_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_spoken_feedback_enabled_options_ = p;
+  }
+  return login_screen_spoken_feedback_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_spoken_feedback_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_spoken_feedback_enabled_options)
+  return _internal_mutable_login_screen_spoken_feedback_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_spoken_feedback_enabled_options(::enterprise_management::PolicyOptions* login_screen_spoken_feedback_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_spoken_feedback_enabled_options_);
+  }
+  if (login_screen_spoken_feedback_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_spoken_feedback_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_spoken_feedback_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  login_screen_spoken_feedback_enabled_options_ = login_screen_spoken_feedback_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_spoken_feedback_enabled_options)
+}
+
+// optional bool login_screen_high_contrast_enabled = 10;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_high_contrast_enabled() const {
+  bool value = (_has_bits_[0] & 0x00400000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_high_contrast_enabled() const {
+  return _internal_has_login_screen_high_contrast_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_high_contrast_enabled() {
+  login_screen_high_contrast_enabled_ = false;
+  _has_bits_[0] &= ~0x00400000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_high_contrast_enabled() const {
+  return login_screen_high_contrast_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_high_contrast_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_high_contrast_enabled)
+  return _internal_login_screen_high_contrast_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_high_contrast_enabled(bool value) {
+  _has_bits_[0] |= 0x00400000u;
+  login_screen_high_contrast_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_high_contrast_enabled(bool value) {
+  _internal_set_login_screen_high_contrast_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_high_contrast_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_high_contrast_enabled_options = 11;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_high_contrast_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_high_contrast_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_high_contrast_enabled_options() const {
+  return _internal_has_login_screen_high_contrast_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_high_contrast_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_high_contrast_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_high_contrast_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_high_contrast_enabled_options)
+  return _internal_login_screen_high_contrast_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_high_contrast_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_high_contrast_enabled_options)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_high_contrast_enabled_options_;
+  login_screen_high_contrast_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_high_contrast_enabled_options() {
+  _has_bits_[0] |= 0x00000004u;
+  if (login_screen_high_contrast_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_high_contrast_enabled_options_ = p;
+  }
+  return login_screen_high_contrast_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_high_contrast_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_high_contrast_enabled_options)
+  return _internal_mutable_login_screen_high_contrast_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_high_contrast_enabled_options(::enterprise_management::PolicyOptions* login_screen_high_contrast_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_high_contrast_enabled_options_);
+  }
+  if (login_screen_high_contrast_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_high_contrast_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_high_contrast_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  login_screen_high_contrast_enabled_options_ = login_screen_high_contrast_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_high_contrast_enabled_options)
+}
+
+// optional bool login_screen_virtual_keyboard_enabled = 12;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_virtual_keyboard_enabled() const {
+  bool value = (_has_bits_[0] & 0x00800000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_virtual_keyboard_enabled() const {
+  return _internal_has_login_screen_virtual_keyboard_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_virtual_keyboard_enabled() {
+  login_screen_virtual_keyboard_enabled_ = false;
+  _has_bits_[0] &= ~0x00800000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_virtual_keyboard_enabled() const {
+  return login_screen_virtual_keyboard_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_virtual_keyboard_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_virtual_keyboard_enabled)
+  return _internal_login_screen_virtual_keyboard_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_virtual_keyboard_enabled(bool value) {
+  _has_bits_[0] |= 0x00800000u;
+  login_screen_virtual_keyboard_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_virtual_keyboard_enabled(bool value) {
+  _internal_set_login_screen_virtual_keyboard_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_virtual_keyboard_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_virtual_keyboard_enabled_options = 13;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_virtual_keyboard_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_virtual_keyboard_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_virtual_keyboard_enabled_options() const {
+  return _internal_has_login_screen_virtual_keyboard_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_virtual_keyboard_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_virtual_keyboard_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_virtual_keyboard_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_virtual_keyboard_enabled_options)
+  return _internal_login_screen_virtual_keyboard_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_virtual_keyboard_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_virtual_keyboard_enabled_options)
+  _has_bits_[0] &= ~0x00000008u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_virtual_keyboard_enabled_options_;
+  login_screen_virtual_keyboard_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_virtual_keyboard_enabled_options() {
+  _has_bits_[0] |= 0x00000008u;
+  if (login_screen_virtual_keyboard_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_virtual_keyboard_enabled_options_ = p;
+  }
+  return login_screen_virtual_keyboard_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_virtual_keyboard_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_virtual_keyboard_enabled_options)
+  return _internal_mutable_login_screen_virtual_keyboard_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_virtual_keyboard_enabled_options(::enterprise_management::PolicyOptions* login_screen_virtual_keyboard_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_virtual_keyboard_enabled_options_);
+  }
+  if (login_screen_virtual_keyboard_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_virtual_keyboard_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_virtual_keyboard_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  login_screen_virtual_keyboard_enabled_options_ = login_screen_virtual_keyboard_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_virtual_keyboard_enabled_options)
+}
+
+// optional bool login_screen_dictation_enabled = 14;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_dictation_enabled() const {
+  bool value = (_has_bits_[0] & 0x01000000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_dictation_enabled() const {
+  return _internal_has_login_screen_dictation_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_dictation_enabled() {
+  login_screen_dictation_enabled_ = false;
+  _has_bits_[0] &= ~0x01000000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_dictation_enabled() const {
+  return login_screen_dictation_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_dictation_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_dictation_enabled)
+  return _internal_login_screen_dictation_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_dictation_enabled(bool value) {
+  _has_bits_[0] |= 0x01000000u;
+  login_screen_dictation_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_dictation_enabled(bool value) {
+  _internal_set_login_screen_dictation_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_dictation_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_dictation_enabled_options = 15;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_dictation_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_dictation_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_dictation_enabled_options() const {
+  return _internal_has_login_screen_dictation_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_dictation_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_dictation_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_dictation_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_dictation_enabled_options)
+  return _internal_login_screen_dictation_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_dictation_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_dictation_enabled_options)
+  _has_bits_[0] &= ~0x00000010u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_dictation_enabled_options_;
+  login_screen_dictation_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_dictation_enabled_options() {
+  _has_bits_[0] |= 0x00000010u;
+  if (login_screen_dictation_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_dictation_enabled_options_ = p;
+  }
+  return login_screen_dictation_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_dictation_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_dictation_enabled_options)
+  return _internal_mutable_login_screen_dictation_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_dictation_enabled_options(::enterprise_management::PolicyOptions* login_screen_dictation_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_dictation_enabled_options_);
+  }
+  if (login_screen_dictation_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_dictation_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_dictation_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  login_screen_dictation_enabled_options_ = login_screen_dictation_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_dictation_enabled_options)
+}
+
+// optional bool login_screen_select_to_speak_enabled = 16;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_select_to_speak_enabled() const {
+  bool value = (_has_bits_[0] & 0x02000000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_select_to_speak_enabled() const {
+  return _internal_has_login_screen_select_to_speak_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_select_to_speak_enabled() {
+  login_screen_select_to_speak_enabled_ = false;
+  _has_bits_[0] &= ~0x02000000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_select_to_speak_enabled() const {
+  return login_screen_select_to_speak_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_select_to_speak_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_select_to_speak_enabled)
+  return _internal_login_screen_select_to_speak_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_select_to_speak_enabled(bool value) {
+  _has_bits_[0] |= 0x02000000u;
+  login_screen_select_to_speak_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_select_to_speak_enabled(bool value) {
+  _internal_set_login_screen_select_to_speak_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_select_to_speak_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_select_to_speak_enabled_options = 17;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_select_to_speak_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_select_to_speak_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_select_to_speak_enabled_options() const {
+  return _internal_has_login_screen_select_to_speak_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_select_to_speak_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_select_to_speak_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_select_to_speak_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_select_to_speak_enabled_options)
+  return _internal_login_screen_select_to_speak_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_select_to_speak_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_select_to_speak_enabled_options)
+  _has_bits_[0] &= ~0x00000020u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_select_to_speak_enabled_options_;
+  login_screen_select_to_speak_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_select_to_speak_enabled_options() {
+  _has_bits_[0] |= 0x00000020u;
+  if (login_screen_select_to_speak_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_select_to_speak_enabled_options_ = p;
+  }
+  return login_screen_select_to_speak_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_select_to_speak_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_select_to_speak_enabled_options)
+  return _internal_mutable_login_screen_select_to_speak_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_select_to_speak_enabled_options(::enterprise_management::PolicyOptions* login_screen_select_to_speak_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_select_to_speak_enabled_options_);
+  }
+  if (login_screen_select_to_speak_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_select_to_speak_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_select_to_speak_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  login_screen_select_to_speak_enabled_options_ = login_screen_select_to_speak_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_select_to_speak_enabled_options)
+}
+
+// optional bool login_screen_cursor_highlight_enabled = 18;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_cursor_highlight_enabled() const {
+  bool value = (_has_bits_[0] & 0x04000000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_cursor_highlight_enabled() const {
+  return _internal_has_login_screen_cursor_highlight_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_cursor_highlight_enabled() {
+  login_screen_cursor_highlight_enabled_ = false;
+  _has_bits_[0] &= ~0x04000000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_cursor_highlight_enabled() const {
+  return login_screen_cursor_highlight_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_cursor_highlight_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_cursor_highlight_enabled)
+  return _internal_login_screen_cursor_highlight_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_cursor_highlight_enabled(bool value) {
+  _has_bits_[0] |= 0x04000000u;
+  login_screen_cursor_highlight_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_cursor_highlight_enabled(bool value) {
+  _internal_set_login_screen_cursor_highlight_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_cursor_highlight_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_cursor_highlight_enabled_options = 19;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_cursor_highlight_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_cursor_highlight_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_cursor_highlight_enabled_options() const {
+  return _internal_has_login_screen_cursor_highlight_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_cursor_highlight_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_cursor_highlight_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_cursor_highlight_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_cursor_highlight_enabled_options)
+  return _internal_login_screen_cursor_highlight_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_cursor_highlight_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_cursor_highlight_enabled_options)
+  _has_bits_[0] &= ~0x00000040u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_cursor_highlight_enabled_options_;
+  login_screen_cursor_highlight_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_cursor_highlight_enabled_options() {
+  _has_bits_[0] |= 0x00000040u;
+  if (login_screen_cursor_highlight_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_cursor_highlight_enabled_options_ = p;
+  }
+  return login_screen_cursor_highlight_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_cursor_highlight_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_cursor_highlight_enabled_options)
+  return _internal_mutable_login_screen_cursor_highlight_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_cursor_highlight_enabled_options(::enterprise_management::PolicyOptions* login_screen_cursor_highlight_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_cursor_highlight_enabled_options_);
+  }
+  if (login_screen_cursor_highlight_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_cursor_highlight_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_cursor_highlight_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  login_screen_cursor_highlight_enabled_options_ = login_screen_cursor_highlight_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_cursor_highlight_enabled_options)
+}
+
+// optional bool login_screen_caret_highlight_enabled = 20;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_caret_highlight_enabled() const {
+  bool value = (_has_bits_[0] & 0x08000000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_caret_highlight_enabled() const {
+  return _internal_has_login_screen_caret_highlight_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_caret_highlight_enabled() {
+  login_screen_caret_highlight_enabled_ = false;
+  _has_bits_[0] &= ~0x08000000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_caret_highlight_enabled() const {
+  return login_screen_caret_highlight_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_caret_highlight_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_caret_highlight_enabled)
+  return _internal_login_screen_caret_highlight_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_caret_highlight_enabled(bool value) {
+  _has_bits_[0] |= 0x08000000u;
+  login_screen_caret_highlight_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_caret_highlight_enabled(bool value) {
+  _internal_set_login_screen_caret_highlight_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_caret_highlight_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_caret_highlight_enabled_options = 21;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_caret_highlight_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_caret_highlight_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_caret_highlight_enabled_options() const {
+  return _internal_has_login_screen_caret_highlight_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_caret_highlight_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_caret_highlight_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_caret_highlight_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_caret_highlight_enabled_options)
+  return _internal_login_screen_caret_highlight_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_caret_highlight_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_caret_highlight_enabled_options)
+  _has_bits_[0] &= ~0x00000080u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_caret_highlight_enabled_options_;
+  login_screen_caret_highlight_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_caret_highlight_enabled_options() {
+  _has_bits_[0] |= 0x00000080u;
+  if (login_screen_caret_highlight_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_caret_highlight_enabled_options_ = p;
+  }
+  return login_screen_caret_highlight_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_caret_highlight_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_caret_highlight_enabled_options)
+  return _internal_mutable_login_screen_caret_highlight_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_caret_highlight_enabled_options(::enterprise_management::PolicyOptions* login_screen_caret_highlight_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_caret_highlight_enabled_options_);
+  }
+  if (login_screen_caret_highlight_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_caret_highlight_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_caret_highlight_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  login_screen_caret_highlight_enabled_options_ = login_screen_caret_highlight_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_caret_highlight_enabled_options)
+}
+
+// optional bool login_screen_mono_audio_enabled = 22;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_mono_audio_enabled() const {
+  bool value = (_has_bits_[0] & 0x10000000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_mono_audio_enabled() const {
+  return _internal_has_login_screen_mono_audio_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_mono_audio_enabled() {
+  login_screen_mono_audio_enabled_ = false;
+  _has_bits_[0] &= ~0x10000000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_mono_audio_enabled() const {
+  return login_screen_mono_audio_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_mono_audio_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_mono_audio_enabled)
+  return _internal_login_screen_mono_audio_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_mono_audio_enabled(bool value) {
+  _has_bits_[0] |= 0x10000000u;
+  login_screen_mono_audio_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_mono_audio_enabled(bool value) {
+  _internal_set_login_screen_mono_audio_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_mono_audio_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_mono_audio_enabled_options = 23;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_mono_audio_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_mono_audio_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_mono_audio_enabled_options() const {
+  return _internal_has_login_screen_mono_audio_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_mono_audio_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_mono_audio_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_mono_audio_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_mono_audio_enabled_options)
+  return _internal_login_screen_mono_audio_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_mono_audio_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_mono_audio_enabled_options)
+  _has_bits_[0] &= ~0x00000100u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_mono_audio_enabled_options_;
+  login_screen_mono_audio_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_mono_audio_enabled_options() {
+  _has_bits_[0] |= 0x00000100u;
+  if (login_screen_mono_audio_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_mono_audio_enabled_options_ = p;
+  }
+  return login_screen_mono_audio_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_mono_audio_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_mono_audio_enabled_options)
+  return _internal_mutable_login_screen_mono_audio_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_mono_audio_enabled_options(::enterprise_management::PolicyOptions* login_screen_mono_audio_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_mono_audio_enabled_options_);
+  }
+  if (login_screen_mono_audio_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_mono_audio_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_mono_audio_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  login_screen_mono_audio_enabled_options_ = login_screen_mono_audio_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_mono_audio_enabled_options)
+}
+
+// optional bool login_screen_autoclick_enabled = 24;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_autoclick_enabled() const {
+  bool value = (_has_bits_[0] & 0x20000000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_autoclick_enabled() const {
+  return _internal_has_login_screen_autoclick_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_autoclick_enabled() {
+  login_screen_autoclick_enabled_ = false;
+  _has_bits_[0] &= ~0x20000000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_autoclick_enabled() const {
+  return login_screen_autoclick_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_autoclick_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_autoclick_enabled)
+  return _internal_login_screen_autoclick_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_autoclick_enabled(bool value) {
+  _has_bits_[0] |= 0x20000000u;
+  login_screen_autoclick_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_autoclick_enabled(bool value) {
+  _internal_set_login_screen_autoclick_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_autoclick_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_autoclick_enabled_options = 25;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_autoclick_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_autoclick_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_autoclick_enabled_options() const {
+  return _internal_has_login_screen_autoclick_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_autoclick_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_autoclick_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_autoclick_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_autoclick_enabled_options)
+  return _internal_login_screen_autoclick_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_autoclick_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_autoclick_enabled_options)
+  _has_bits_[0] &= ~0x00000200u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_autoclick_enabled_options_;
+  login_screen_autoclick_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_autoclick_enabled_options() {
+  _has_bits_[0] |= 0x00000200u;
+  if (login_screen_autoclick_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_autoclick_enabled_options_ = p;
+  }
+  return login_screen_autoclick_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_autoclick_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_autoclick_enabled_options)
+  return _internal_mutable_login_screen_autoclick_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_autoclick_enabled_options(::enterprise_management::PolicyOptions* login_screen_autoclick_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_autoclick_enabled_options_);
+  }
+  if (login_screen_autoclick_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_autoclick_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_autoclick_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  login_screen_autoclick_enabled_options_ = login_screen_autoclick_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_autoclick_enabled_options)
+}
+
+// optional bool login_screen_sticky_keys_enabled = 26;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_sticky_keys_enabled() const {
+  bool value = (_has_bits_[0] & 0x40000000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_sticky_keys_enabled() const {
+  return _internal_has_login_screen_sticky_keys_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_sticky_keys_enabled() {
+  login_screen_sticky_keys_enabled_ = false;
+  _has_bits_[0] &= ~0x40000000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_sticky_keys_enabled() const {
+  return login_screen_sticky_keys_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_sticky_keys_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_sticky_keys_enabled)
+  return _internal_login_screen_sticky_keys_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_sticky_keys_enabled(bool value) {
+  _has_bits_[0] |= 0x40000000u;
+  login_screen_sticky_keys_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_sticky_keys_enabled(bool value) {
+  _internal_set_login_screen_sticky_keys_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_sticky_keys_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_sticky_keys_enabled_options = 27;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_sticky_keys_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_sticky_keys_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_sticky_keys_enabled_options() const {
+  return _internal_has_login_screen_sticky_keys_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_sticky_keys_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_sticky_keys_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_sticky_keys_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_sticky_keys_enabled_options)
+  return _internal_login_screen_sticky_keys_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_sticky_keys_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_sticky_keys_enabled_options)
+  _has_bits_[0] &= ~0x00000400u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_sticky_keys_enabled_options_;
+  login_screen_sticky_keys_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_sticky_keys_enabled_options() {
+  _has_bits_[0] |= 0x00000400u;
+  if (login_screen_sticky_keys_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_sticky_keys_enabled_options_ = p;
+  }
+  return login_screen_sticky_keys_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_sticky_keys_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_sticky_keys_enabled_options)
+  return _internal_mutable_login_screen_sticky_keys_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_sticky_keys_enabled_options(::enterprise_management::PolicyOptions* login_screen_sticky_keys_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_sticky_keys_enabled_options_);
+  }
+  if (login_screen_sticky_keys_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_sticky_keys_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_sticky_keys_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000400u;
+  } else {
+    _has_bits_[0] &= ~0x00000400u;
+  }
+  login_screen_sticky_keys_enabled_options_ = login_screen_sticky_keys_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_sticky_keys_enabled_options)
+}
+
+// optional bool login_screen_keyboard_focus_highlight_enabled = 28;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_keyboard_focus_highlight_enabled() const {
+  bool value = (_has_bits_[0] & 0x80000000u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_keyboard_focus_highlight_enabled() const {
+  return _internal_has_login_screen_keyboard_focus_highlight_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_keyboard_focus_highlight_enabled() {
+  login_screen_keyboard_focus_highlight_enabled_ = false;
+  _has_bits_[0] &= ~0x80000000u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_keyboard_focus_highlight_enabled() const {
+  return login_screen_keyboard_focus_highlight_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_keyboard_focus_highlight_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_keyboard_focus_highlight_enabled)
+  return _internal_login_screen_keyboard_focus_highlight_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_keyboard_focus_highlight_enabled(bool value) {
+  _has_bits_[0] |= 0x80000000u;
+  login_screen_keyboard_focus_highlight_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_keyboard_focus_highlight_enabled(bool value) {
+  _internal_set_login_screen_keyboard_focus_highlight_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_keyboard_focus_highlight_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_keyboard_focus_highlight_enabled_options = 29;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_keyboard_focus_highlight_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_keyboard_focus_highlight_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_keyboard_focus_highlight_enabled_options() const {
+  return _internal_has_login_screen_keyboard_focus_highlight_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_keyboard_focus_highlight_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_keyboard_focus_highlight_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_keyboard_focus_highlight_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_keyboard_focus_highlight_enabled_options)
+  return _internal_login_screen_keyboard_focus_highlight_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_keyboard_focus_highlight_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_keyboard_focus_highlight_enabled_options)
+  _has_bits_[0] &= ~0x00000800u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_keyboard_focus_highlight_enabled_options_;
+  login_screen_keyboard_focus_highlight_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_keyboard_focus_highlight_enabled_options() {
+  _has_bits_[0] |= 0x00000800u;
+  if (login_screen_keyboard_focus_highlight_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_keyboard_focus_highlight_enabled_options_ = p;
+  }
+  return login_screen_keyboard_focus_highlight_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_keyboard_focus_highlight_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_keyboard_focus_highlight_enabled_options)
+  return _internal_mutable_login_screen_keyboard_focus_highlight_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_keyboard_focus_highlight_enabled_options(::enterprise_management::PolicyOptions* login_screen_keyboard_focus_highlight_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_keyboard_focus_highlight_enabled_options_);
+  }
+  if (login_screen_keyboard_focus_highlight_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_keyboard_focus_highlight_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_keyboard_focus_highlight_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000800u;
+  } else {
+    _has_bits_[0] &= ~0x00000800u;
+  }
+  login_screen_keyboard_focus_highlight_enabled_options_ = login_screen_keyboard_focus_highlight_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_keyboard_focus_highlight_enabled_options)
+}
+
+// optional int64 login_screen_screen_magnifier_type = 30;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_screen_magnifier_type() const {
+  bool value = (_has_bits_[1] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_screen_magnifier_type() const {
+  return _internal_has_login_screen_screen_magnifier_type();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_screen_magnifier_type() {
+  login_screen_screen_magnifier_type_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[1] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AccessibilitySettingsProto::_internal_login_screen_screen_magnifier_type() const {
+  return login_screen_screen_magnifier_type_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AccessibilitySettingsProto::login_screen_screen_magnifier_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_screen_magnifier_type)
+  return _internal_login_screen_screen_magnifier_type();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_screen_magnifier_type(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[1] |= 0x00000004u;
+  login_screen_screen_magnifier_type_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_screen_magnifier_type(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_login_screen_screen_magnifier_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_screen_magnifier_type)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_screen_magnifier_type_options = 31;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_screen_magnifier_type_options() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_screen_magnifier_type_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_screen_magnifier_type_options() const {
+  return _internal_has_login_screen_screen_magnifier_type_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_screen_magnifier_type_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_screen_magnifier_type_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_screen_magnifier_type_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_screen_magnifier_type_options)
+  return _internal_login_screen_screen_magnifier_type_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_screen_magnifier_type_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_screen_magnifier_type_options)
+  _has_bits_[0] &= ~0x00001000u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_screen_magnifier_type_options_;
+  login_screen_screen_magnifier_type_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_screen_magnifier_type_options() {
+  _has_bits_[0] |= 0x00001000u;
+  if (login_screen_screen_magnifier_type_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_screen_magnifier_type_options_ = p;
+  }
+  return login_screen_screen_magnifier_type_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_screen_magnifier_type_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_screen_magnifier_type_options)
+  return _internal_mutable_login_screen_screen_magnifier_type_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_screen_magnifier_type_options(::enterprise_management::PolicyOptions* login_screen_screen_magnifier_type_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_screen_magnifier_type_options_);
+  }
+  if (login_screen_screen_magnifier_type_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_screen_magnifier_type_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_screen_magnifier_type_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00001000u;
+  } else {
+    _has_bits_[0] &= ~0x00001000u;
+  }
+  login_screen_screen_magnifier_type_options_ = login_screen_screen_magnifier_type_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_screen_magnifier_type_options)
+}
+
+// optional bool login_screen_show_options_in_system_tray_menu_enabled = 32;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_show_options_in_system_tray_menu_enabled() const {
+  bool value = (_has_bits_[1] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_show_options_in_system_tray_menu_enabled() const {
+  return _internal_has_login_screen_show_options_in_system_tray_menu_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_show_options_in_system_tray_menu_enabled() {
+  login_screen_show_options_in_system_tray_menu_enabled_ = false;
+  _has_bits_[1] &= ~0x00000001u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_show_options_in_system_tray_menu_enabled() const {
+  return login_screen_show_options_in_system_tray_menu_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_show_options_in_system_tray_menu_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_show_options_in_system_tray_menu_enabled)
+  return _internal_login_screen_show_options_in_system_tray_menu_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_show_options_in_system_tray_menu_enabled(bool value) {
+  _has_bits_[1] |= 0x00000001u;
+  login_screen_show_options_in_system_tray_menu_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_show_options_in_system_tray_menu_enabled(bool value) {
+  _internal_set_login_screen_show_options_in_system_tray_menu_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_show_options_in_system_tray_menu_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_show_options_in_system_tray_menu_enabled_options = 33;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_show_options_in_system_tray_menu_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_show_options_in_system_tray_menu_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_show_options_in_system_tray_menu_enabled_options() const {
+  return _internal_has_login_screen_show_options_in_system_tray_menu_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_show_options_in_system_tray_menu_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_show_options_in_system_tray_menu_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_show_options_in_system_tray_menu_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_show_options_in_system_tray_menu_enabled_options)
+  return _internal_login_screen_show_options_in_system_tray_menu_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_show_options_in_system_tray_menu_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_show_options_in_system_tray_menu_enabled_options)
+  _has_bits_[0] &= ~0x00002000u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_show_options_in_system_tray_menu_enabled_options_;
+  login_screen_show_options_in_system_tray_menu_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_show_options_in_system_tray_menu_enabled_options() {
+  _has_bits_[0] |= 0x00002000u;
+  if (login_screen_show_options_in_system_tray_menu_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_show_options_in_system_tray_menu_enabled_options_ = p;
+  }
+  return login_screen_show_options_in_system_tray_menu_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_show_options_in_system_tray_menu_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_show_options_in_system_tray_menu_enabled_options)
+  return _internal_mutable_login_screen_show_options_in_system_tray_menu_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_show_options_in_system_tray_menu_enabled_options(::enterprise_management::PolicyOptions* login_screen_show_options_in_system_tray_menu_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_show_options_in_system_tray_menu_enabled_options_);
+  }
+  if (login_screen_show_options_in_system_tray_menu_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_show_options_in_system_tray_menu_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_show_options_in_system_tray_menu_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00002000u;
+  } else {
+    _has_bits_[0] &= ~0x00002000u;
+  }
+  login_screen_show_options_in_system_tray_menu_enabled_options_ = login_screen_show_options_in_system_tray_menu_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_show_options_in_system_tray_menu_enabled_options)
+}
+
+// optional bool login_screen_shortcuts_enabled = 34;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_shortcuts_enabled() const {
+  bool value = (_has_bits_[1] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_shortcuts_enabled() const {
+  return _internal_has_login_screen_shortcuts_enabled();
+}
+inline void AccessibilitySettingsProto::clear_login_screen_shortcuts_enabled() {
+  login_screen_shortcuts_enabled_ = false;
+  _has_bits_[1] &= ~0x00000002u;
+}
+inline bool AccessibilitySettingsProto::_internal_login_screen_shortcuts_enabled() const {
+  return login_screen_shortcuts_enabled_;
+}
+inline bool AccessibilitySettingsProto::login_screen_shortcuts_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_shortcuts_enabled)
+  return _internal_login_screen_shortcuts_enabled();
+}
+inline void AccessibilitySettingsProto::_internal_set_login_screen_shortcuts_enabled(bool value) {
+  _has_bits_[1] |= 0x00000002u;
+  login_screen_shortcuts_enabled_ = value;
+}
+inline void AccessibilitySettingsProto::set_login_screen_shortcuts_enabled(bool value) {
+  _internal_set_login_screen_shortcuts_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AccessibilitySettingsProto.login_screen_shortcuts_enabled)
+}
+
+// optional .enterprise_management.PolicyOptions login_screen_shortcuts_enabled_options = 35;
+inline bool AccessibilitySettingsProto::_internal_has_login_screen_shortcuts_enabled_options() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_shortcuts_enabled_options_ != nullptr);
+  return value;
+}
+inline bool AccessibilitySettingsProto::has_login_screen_shortcuts_enabled_options() const {
+  return _internal_has_login_screen_shortcuts_enabled_options();
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::_internal_login_screen_shortcuts_enabled_options() const {
+  const ::enterprise_management::PolicyOptions* p = login_screen_shortcuts_enabled_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& AccessibilitySettingsProto::login_screen_shortcuts_enabled_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AccessibilitySettingsProto.login_screen_shortcuts_enabled_options)
+  return _internal_login_screen_shortcuts_enabled_options();
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::release_login_screen_shortcuts_enabled_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AccessibilitySettingsProto.login_screen_shortcuts_enabled_options)
+  _has_bits_[0] &= ~0x00004000u;
+  ::enterprise_management::PolicyOptions* temp = login_screen_shortcuts_enabled_options_;
+  login_screen_shortcuts_enabled_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::_internal_mutable_login_screen_shortcuts_enabled_options() {
+  _has_bits_[0] |= 0x00004000u;
+  if (login_screen_shortcuts_enabled_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    login_screen_shortcuts_enabled_options_ = p;
+  }
+  return login_screen_shortcuts_enabled_options_;
+}
+inline ::enterprise_management::PolicyOptions* AccessibilitySettingsProto::mutable_login_screen_shortcuts_enabled_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AccessibilitySettingsProto.login_screen_shortcuts_enabled_options)
+  return _internal_mutable_login_screen_shortcuts_enabled_options();
+}
+inline void AccessibilitySettingsProto::set_allocated_login_screen_shortcuts_enabled_options(::enterprise_management::PolicyOptions* login_screen_shortcuts_enabled_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_shortcuts_enabled_options_);
+  }
+  if (login_screen_shortcuts_enabled_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_shortcuts_enabled_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_shortcuts_enabled_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00004000u;
+  } else {
+    _has_bits_[0] &= ~0x00004000u;
+  }
+  login_screen_shortcuts_enabled_options_ = login_screen_shortcuts_enabled_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AccessibilitySettingsProto.login_screen_shortcuts_enabled_options)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_SupervisedUsersSettingsProto
+
+// optional bool OBSOLETE_supervised_users_enabled = 1 [deprecated = true];
+inline bool OBSOLETE_SupervisedUsersSettingsProto::_internal_has_obsolete_supervised_users_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OBSOLETE_SupervisedUsersSettingsProto::has_obsolete_supervised_users_enabled() const {
+  return _internal_has_obsolete_supervised_users_enabled();
+}
+inline void OBSOLETE_SupervisedUsersSettingsProto::clear_obsolete_supervised_users_enabled() {
+  obsolete_supervised_users_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool OBSOLETE_SupervisedUsersSettingsProto::_internal_obsolete_supervised_users_enabled() const {
+  return obsolete_supervised_users_enabled_;
+}
+inline bool OBSOLETE_SupervisedUsersSettingsProto::obsolete_supervised_users_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto.OBSOLETE_supervised_users_enabled)
+  return _internal_obsolete_supervised_users_enabled();
+}
+inline void OBSOLETE_SupervisedUsersSettingsProto::_internal_set_obsolete_supervised_users_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_supervised_users_enabled_ = value;
+}
+inline void OBSOLETE_SupervisedUsersSettingsProto::set_obsolete_supervised_users_enabled(bool value) {
+  _internal_set_obsolete_supervised_users_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_SupervisedUsersSettingsProto.OBSOLETE_supervised_users_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// LoginScreenPowerManagementProto
+
+// optional string login_screen_power_management = 1;
+inline bool LoginScreenPowerManagementProto::_internal_has_login_screen_power_management() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool LoginScreenPowerManagementProto::has_login_screen_power_management() const {
+  return _internal_has_login_screen_power_management();
+}
+inline void LoginScreenPowerManagementProto::clear_login_screen_power_management() {
+  login_screen_power_management_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& LoginScreenPowerManagementProto::login_screen_power_management() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LoginScreenPowerManagementProto.login_screen_power_management)
+  return _internal_login_screen_power_management();
+}
+inline void LoginScreenPowerManagementProto::set_login_screen_power_management(const std::string& value) {
+  _internal_set_login_screen_power_management(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginScreenPowerManagementProto.login_screen_power_management)
+}
+inline std::string* LoginScreenPowerManagementProto::mutable_login_screen_power_management() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LoginScreenPowerManagementProto.login_screen_power_management)
+  return _internal_mutable_login_screen_power_management();
+}
+inline const std::string& LoginScreenPowerManagementProto::_internal_login_screen_power_management() const {
+  return login_screen_power_management_.GetNoArena();
+}
+inline void LoginScreenPowerManagementProto::_internal_set_login_screen_power_management(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  login_screen_power_management_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void LoginScreenPowerManagementProto::set_login_screen_power_management(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  login_screen_power_management_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.LoginScreenPowerManagementProto.login_screen_power_management)
+}
+inline void LoginScreenPowerManagementProto::set_login_screen_power_management(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  login_screen_power_management_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.LoginScreenPowerManagementProto.login_screen_power_management)
+}
+inline void LoginScreenPowerManagementProto::set_login_screen_power_management(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  login_screen_power_management_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.LoginScreenPowerManagementProto.login_screen_power_management)
+}
+inline std::string* LoginScreenPowerManagementProto::_internal_mutable_login_screen_power_management() {
+  _has_bits_[0] |= 0x00000001u;
+  return login_screen_power_management_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* LoginScreenPowerManagementProto::release_login_screen_power_management() {
+  // @@protoc_insertion_point(field_release:enterprise_management.LoginScreenPowerManagementProto.login_screen_power_management)
+  if (!_internal_has_login_screen_power_management()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return login_screen_power_management_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void LoginScreenPowerManagementProto::set_allocated_login_screen_power_management(std::string* login_screen_power_management) {
+  if (login_screen_power_management != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  login_screen_power_management_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), login_screen_power_management);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.LoginScreenPowerManagementProto.login_screen_power_management)
+}
+
+// -------------------------------------------------------------------
+
+// AutoCleanupSettigsProto
+
+// optional string clean_up_strategy = 1;
+inline bool AutoCleanupSettigsProto::_internal_has_clean_up_strategy() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AutoCleanupSettigsProto::has_clean_up_strategy() const {
+  return _internal_has_clean_up_strategy();
+}
+inline void AutoCleanupSettigsProto::clear_clean_up_strategy() {
+  clean_up_strategy_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AutoCleanupSettigsProto::clean_up_strategy() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AutoCleanupSettigsProto.clean_up_strategy)
+  return _internal_clean_up_strategy();
+}
+inline void AutoCleanupSettigsProto::set_clean_up_strategy(const std::string& value) {
+  _internal_set_clean_up_strategy(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AutoCleanupSettigsProto.clean_up_strategy)
+}
+inline std::string* AutoCleanupSettigsProto::mutable_clean_up_strategy() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AutoCleanupSettigsProto.clean_up_strategy)
+  return _internal_mutable_clean_up_strategy();
+}
+inline const std::string& AutoCleanupSettigsProto::_internal_clean_up_strategy() const {
+  return clean_up_strategy_.GetNoArena();
+}
+inline void AutoCleanupSettigsProto::_internal_set_clean_up_strategy(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  clean_up_strategy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AutoCleanupSettigsProto::set_clean_up_strategy(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  clean_up_strategy_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AutoCleanupSettigsProto.clean_up_strategy)
+}
+inline void AutoCleanupSettigsProto::set_clean_up_strategy(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  clean_up_strategy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AutoCleanupSettigsProto.clean_up_strategy)
+}
+inline void AutoCleanupSettigsProto::set_clean_up_strategy(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  clean_up_strategy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AutoCleanupSettigsProto.clean_up_strategy)
+}
+inline std::string* AutoCleanupSettigsProto::_internal_mutable_clean_up_strategy() {
+  _has_bits_[0] |= 0x00000001u;
+  return clean_up_strategy_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AutoCleanupSettigsProto::release_clean_up_strategy() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AutoCleanupSettigsProto.clean_up_strategy)
+  if (!_internal_has_clean_up_strategy()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return clean_up_strategy_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AutoCleanupSettigsProto::set_allocated_clean_up_strategy(std::string* clean_up_strategy) {
+  if (clean_up_strategy != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  clean_up_strategy_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), clean_up_strategy);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AutoCleanupSettigsProto.clean_up_strategy)
+}
+
+// -------------------------------------------------------------------
+
+// SystemSettingsProto
+
+// optional bool block_devmode = 1;
+inline bool SystemSettingsProto::_internal_has_block_devmode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemSettingsProto::has_block_devmode() const {
+  return _internal_has_block_devmode();
+}
+inline void SystemSettingsProto::clear_block_devmode() {
+  block_devmode_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool SystemSettingsProto::_internal_block_devmode() const {
+  return block_devmode_;
+}
+inline bool SystemSettingsProto::block_devmode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemSettingsProto.block_devmode)
+  return _internal_block_devmode();
+}
+inline void SystemSettingsProto::_internal_set_block_devmode(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  block_devmode_ = value;
+}
+inline void SystemSettingsProto::set_block_devmode(bool value) {
+  _internal_set_block_devmode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemSettingsProto.block_devmode)
+}
+
+// -------------------------------------------------------------------
+
+// SAMLSettingsProto
+
+// optional bool transfer_saml_cookies = 1;
+inline bool SAMLSettingsProto::_internal_has_transfer_saml_cookies() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SAMLSettingsProto::has_transfer_saml_cookies() const {
+  return _internal_has_transfer_saml_cookies();
+}
+inline void SAMLSettingsProto::clear_transfer_saml_cookies() {
+  transfer_saml_cookies_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool SAMLSettingsProto::_internal_transfer_saml_cookies() const {
+  return transfer_saml_cookies_;
+}
+inline bool SAMLSettingsProto::transfer_saml_cookies() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SAMLSettingsProto.transfer_saml_cookies)
+  return _internal_transfer_saml_cookies();
+}
+inline void SAMLSettingsProto::_internal_set_transfer_saml_cookies(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  transfer_saml_cookies_ = value;
+}
+inline void SAMLSettingsProto::set_transfer_saml_cookies(bool value) {
+  _internal_set_transfer_saml_cookies(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SAMLSettingsProto.transfer_saml_cookies)
+}
+
+// -------------------------------------------------------------------
+
+// RebootOnShutdownProto
+
+// optional bool reboot_on_shutdown = 1 [default = false];
+inline bool RebootOnShutdownProto::_internal_has_reboot_on_shutdown() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RebootOnShutdownProto::has_reboot_on_shutdown() const {
+  return _internal_has_reboot_on_shutdown();
+}
+inline void RebootOnShutdownProto::clear_reboot_on_shutdown() {
+  reboot_on_shutdown_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool RebootOnShutdownProto::_internal_reboot_on_shutdown() const {
+  return reboot_on_shutdown_;
+}
+inline bool RebootOnShutdownProto::reboot_on_shutdown() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RebootOnShutdownProto.reboot_on_shutdown)
+  return _internal_reboot_on_shutdown();
+}
+inline void RebootOnShutdownProto::_internal_set_reboot_on_shutdown(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  reboot_on_shutdown_ = value;
+}
+inline void RebootOnShutdownProto::set_reboot_on_shutdown(bool value) {
+  _internal_set_reboot_on_shutdown(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RebootOnShutdownProto.reboot_on_shutdown)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceHeartbeatSettingsProto
+
+// optional bool heartbeat_enabled = 1 [default = false];
+inline bool DeviceHeartbeatSettingsProto::_internal_has_heartbeat_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceHeartbeatSettingsProto::has_heartbeat_enabled() const {
+  return _internal_has_heartbeat_enabled();
+}
+inline void DeviceHeartbeatSettingsProto::clear_heartbeat_enabled() {
+  heartbeat_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceHeartbeatSettingsProto::_internal_heartbeat_enabled() const {
+  return heartbeat_enabled_;
+}
+inline bool DeviceHeartbeatSettingsProto::heartbeat_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceHeartbeatSettingsProto.heartbeat_enabled)
+  return _internal_heartbeat_enabled();
+}
+inline void DeviceHeartbeatSettingsProto::_internal_set_heartbeat_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  heartbeat_enabled_ = value;
+}
+inline void DeviceHeartbeatSettingsProto::set_heartbeat_enabled(bool value) {
+  _internal_set_heartbeat_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceHeartbeatSettingsProto.heartbeat_enabled)
+}
+
+// optional int64 heartbeat_frequency = 2 [default = 120000];
+inline bool DeviceHeartbeatSettingsProto::_internal_has_heartbeat_frequency() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceHeartbeatSettingsProto::has_heartbeat_frequency() const {
+  return _internal_has_heartbeat_frequency();
+}
+inline void DeviceHeartbeatSettingsProto::clear_heartbeat_frequency() {
+  heartbeat_frequency_ = PROTOBUF_LONGLONG(120000);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceHeartbeatSettingsProto::_internal_heartbeat_frequency() const {
+  return heartbeat_frequency_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceHeartbeatSettingsProto::heartbeat_frequency() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceHeartbeatSettingsProto.heartbeat_frequency)
+  return _internal_heartbeat_frequency();
+}
+inline void DeviceHeartbeatSettingsProto::_internal_set_heartbeat_frequency(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  heartbeat_frequency_ = value;
+}
+inline void DeviceHeartbeatSettingsProto::set_heartbeat_frequency(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_heartbeat_frequency(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceHeartbeatSettingsProto.heartbeat_frequency)
+}
+
+// -------------------------------------------------------------------
+
+// ExtensionCacheSizeProto
+
+// optional int64 extension_cache_size = 1;
+inline bool ExtensionCacheSizeProto::_internal_has_extension_cache_size() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ExtensionCacheSizeProto::has_extension_cache_size() const {
+  return _internal_has_extension_cache_size();
+}
+inline void ExtensionCacheSizeProto::clear_extension_cache_size() {
+  extension_cache_size_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionCacheSizeProto::_internal_extension_cache_size() const {
+  return extension_cache_size_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionCacheSizeProto::extension_cache_size() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionCacheSizeProto.extension_cache_size)
+  return _internal_extension_cache_size();
+}
+inline void ExtensionCacheSizeProto::_internal_set_extension_cache_size(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  extension_cache_size_ = value;
+}
+inline void ExtensionCacheSizeProto::set_extension_cache_size(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_extension_cache_size(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionCacheSizeProto.extension_cache_size)
+}
+
+// -------------------------------------------------------------------
+
+// LoginScreenDomainAutoCompleteProto
+
+// optional string login_screen_domain_auto_complete = 1;
+inline bool LoginScreenDomainAutoCompleteProto::_internal_has_login_screen_domain_auto_complete() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool LoginScreenDomainAutoCompleteProto::has_login_screen_domain_auto_complete() const {
+  return _internal_has_login_screen_domain_auto_complete();
+}
+inline void LoginScreenDomainAutoCompleteProto::clear_login_screen_domain_auto_complete() {
+  login_screen_domain_auto_complete_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& LoginScreenDomainAutoCompleteProto::login_screen_domain_auto_complete() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LoginScreenDomainAutoCompleteProto.login_screen_domain_auto_complete)
+  return _internal_login_screen_domain_auto_complete();
+}
+inline void LoginScreenDomainAutoCompleteProto::set_login_screen_domain_auto_complete(const std::string& value) {
+  _internal_set_login_screen_domain_auto_complete(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginScreenDomainAutoCompleteProto.login_screen_domain_auto_complete)
+}
+inline std::string* LoginScreenDomainAutoCompleteProto::mutable_login_screen_domain_auto_complete() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LoginScreenDomainAutoCompleteProto.login_screen_domain_auto_complete)
+  return _internal_mutable_login_screen_domain_auto_complete();
+}
+inline const std::string& LoginScreenDomainAutoCompleteProto::_internal_login_screen_domain_auto_complete() const {
+  return login_screen_domain_auto_complete_.GetNoArena();
+}
+inline void LoginScreenDomainAutoCompleteProto::_internal_set_login_screen_domain_auto_complete(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  login_screen_domain_auto_complete_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void LoginScreenDomainAutoCompleteProto::set_login_screen_domain_auto_complete(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  login_screen_domain_auto_complete_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.LoginScreenDomainAutoCompleteProto.login_screen_domain_auto_complete)
+}
+inline void LoginScreenDomainAutoCompleteProto::set_login_screen_domain_auto_complete(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  login_screen_domain_auto_complete_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.LoginScreenDomainAutoCompleteProto.login_screen_domain_auto_complete)
+}
+inline void LoginScreenDomainAutoCompleteProto::set_login_screen_domain_auto_complete(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  login_screen_domain_auto_complete_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.LoginScreenDomainAutoCompleteProto.login_screen_domain_auto_complete)
+}
+inline std::string* LoginScreenDomainAutoCompleteProto::_internal_mutable_login_screen_domain_auto_complete() {
+  _has_bits_[0] |= 0x00000001u;
+  return login_screen_domain_auto_complete_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* LoginScreenDomainAutoCompleteProto::release_login_screen_domain_auto_complete() {
+  // @@protoc_insertion_point(field_release:enterprise_management.LoginScreenDomainAutoCompleteProto.login_screen_domain_auto_complete)
+  if (!_internal_has_login_screen_domain_auto_complete()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return login_screen_domain_auto_complete_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void LoginScreenDomainAutoCompleteProto::set_allocated_login_screen_domain_auto_complete(std::string* login_screen_domain_auto_complete) {
+  if (login_screen_domain_auto_complete != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  login_screen_domain_auto_complete_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), login_screen_domain_auto_complete);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.LoginScreenDomainAutoCompleteProto.login_screen_domain_auto_complete)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceLogUploadSettingsProto
+
+// optional bool system_log_upload_enabled = 1 [default = false];
+inline bool DeviceLogUploadSettingsProto::_internal_has_system_log_upload_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceLogUploadSettingsProto::has_system_log_upload_enabled() const {
+  return _internal_has_system_log_upload_enabled();
+}
+inline void DeviceLogUploadSettingsProto::clear_system_log_upload_enabled() {
+  system_log_upload_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceLogUploadSettingsProto::_internal_system_log_upload_enabled() const {
+  return system_log_upload_enabled_;
+}
+inline bool DeviceLogUploadSettingsProto::system_log_upload_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLogUploadSettingsProto.system_log_upload_enabled)
+  return _internal_system_log_upload_enabled();
+}
+inline void DeviceLogUploadSettingsProto::_internal_set_system_log_upload_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  system_log_upload_enabled_ = value;
+}
+inline void DeviceLogUploadSettingsProto::set_system_log_upload_enabled(bool value) {
+  _internal_set_system_log_upload_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLogUploadSettingsProto.system_log_upload_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DisplayRotationDefaultProto
+
+// optional .enterprise_management.DisplayRotationDefaultProto.Rotation display_rotation_default = 1;
+inline bool DisplayRotationDefaultProto::_internal_has_display_rotation_default() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DisplayRotationDefaultProto::has_display_rotation_default() const {
+  return _internal_has_display_rotation_default();
+}
+inline void DisplayRotationDefaultProto::clear_display_rotation_default() {
+  display_rotation_default_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto::_internal_display_rotation_default() const {
+  return static_cast< ::enterprise_management::DisplayRotationDefaultProto_Rotation >(display_rotation_default_);
+}
+inline ::enterprise_management::DisplayRotationDefaultProto_Rotation DisplayRotationDefaultProto::display_rotation_default() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DisplayRotationDefaultProto.display_rotation_default)
+  return _internal_display_rotation_default();
+}
+inline void DisplayRotationDefaultProto::_internal_set_display_rotation_default(::enterprise_management::DisplayRotationDefaultProto_Rotation value) {
+  assert(::enterprise_management::DisplayRotationDefaultProto_Rotation_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  display_rotation_default_ = value;
+}
+inline void DisplayRotationDefaultProto::set_display_rotation_default(::enterprise_management::DisplayRotationDefaultProto_Rotation value) {
+  _internal_set_display_rotation_default(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DisplayRotationDefaultProto.display_rotation_default)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceLoginScreenPrivacyScreenEnabledProto
+
+// optional bool enabled = 1 [default = false];
+inline bool DeviceLoginScreenPrivacyScreenEnabledProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceLoginScreenPrivacyScreenEnabledProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceLoginScreenPrivacyScreenEnabledProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceLoginScreenPrivacyScreenEnabledProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceLoginScreenPrivacyScreenEnabledProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceLoginScreenPrivacyScreenEnabledProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DeviceLoginScreenPrivacyScreenEnabledProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceDisplayResolutionProto
+
+// optional string device_display_resolution = 1;
+inline bool DeviceDisplayResolutionProto::_internal_has_device_display_resolution() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceDisplayResolutionProto::has_device_display_resolution() const {
+  return _internal_has_device_display_resolution();
+}
+inline void DeviceDisplayResolutionProto::clear_device_display_resolution() {
+  device_display_resolution_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceDisplayResolutionProto::device_display_resolution() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceDisplayResolutionProto.device_display_resolution)
+  return _internal_device_display_resolution();
+}
+inline void DeviceDisplayResolutionProto::set_device_display_resolution(const std::string& value) {
+  _internal_set_device_display_resolution(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceDisplayResolutionProto.device_display_resolution)
+}
+inline std::string* DeviceDisplayResolutionProto::mutable_device_display_resolution() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceDisplayResolutionProto.device_display_resolution)
+  return _internal_mutable_device_display_resolution();
+}
+inline const std::string& DeviceDisplayResolutionProto::_internal_device_display_resolution() const {
+  return device_display_resolution_.GetNoArena();
+}
+inline void DeviceDisplayResolutionProto::_internal_set_device_display_resolution(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_display_resolution_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceDisplayResolutionProto::set_device_display_resolution(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_display_resolution_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceDisplayResolutionProto.device_display_resolution)
+}
+inline void DeviceDisplayResolutionProto::set_device_display_resolution(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_display_resolution_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceDisplayResolutionProto.device_display_resolution)
+}
+inline void DeviceDisplayResolutionProto::set_device_display_resolution(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_display_resolution_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceDisplayResolutionProto.device_display_resolution)
+}
+inline std::string* DeviceDisplayResolutionProto::_internal_mutable_device_display_resolution() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_display_resolution_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceDisplayResolutionProto::release_device_display_resolution() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceDisplayResolutionProto.device_display_resolution)
+  if (!_internal_has_device_display_resolution()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_display_resolution_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceDisplayResolutionProto::set_allocated_device_display_resolution(std::string* device_display_resolution) {
+  if (device_display_resolution != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_display_resolution_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_display_resolution);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceDisplayResolutionProto.device_display_resolution)
+}
+
+// -------------------------------------------------------------------
+
+// AllowKioskAppControlChromeVersionProto
+
+// optional bool allow_kiosk_app_control_chrome_version = 1 [default = false];
+inline bool AllowKioskAppControlChromeVersionProto::_internal_has_allow_kiosk_app_control_chrome_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AllowKioskAppControlChromeVersionProto::has_allow_kiosk_app_control_chrome_version() const {
+  return _internal_has_allow_kiosk_app_control_chrome_version();
+}
+inline void AllowKioskAppControlChromeVersionProto::clear_allow_kiosk_app_control_chrome_version() {
+  allow_kiosk_app_control_chrome_version_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool AllowKioskAppControlChromeVersionProto::_internal_allow_kiosk_app_control_chrome_version() const {
+  return allow_kiosk_app_control_chrome_version_;
+}
+inline bool AllowKioskAppControlChromeVersionProto::allow_kiosk_app_control_chrome_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AllowKioskAppControlChromeVersionProto.allow_kiosk_app_control_chrome_version)
+  return _internal_allow_kiosk_app_control_chrome_version();
+}
+inline void AllowKioskAppControlChromeVersionProto::_internal_set_allow_kiosk_app_control_chrome_version(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  allow_kiosk_app_control_chrome_version_ = value;
+}
+inline void AllowKioskAppControlChromeVersionProto::set_allow_kiosk_app_control_chrome_version(bool value) {
+  _internal_set_allow_kiosk_app_control_chrome_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AllowKioskAppControlChromeVersionProto.allow_kiosk_app_control_chrome_version)
+}
+
+// -------------------------------------------------------------------
+
+// LoginAuthenticationBehaviorProto
+
+// optional .enterprise_management.LoginAuthenticationBehaviorProto.LoginBehavior login_authentication_behavior = 1 [default = GAIA];
+inline bool LoginAuthenticationBehaviorProto::_internal_has_login_authentication_behavior() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool LoginAuthenticationBehaviorProto::has_login_authentication_behavior() const {
+  return _internal_has_login_authentication_behavior();
+}
+inline void LoginAuthenticationBehaviorProto::clear_login_authentication_behavior() {
+  login_authentication_behavior_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior LoginAuthenticationBehaviorProto::_internal_login_authentication_behavior() const {
+  return static_cast< ::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior >(login_authentication_behavior_);
+}
+inline ::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior LoginAuthenticationBehaviorProto::login_authentication_behavior() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LoginAuthenticationBehaviorProto.login_authentication_behavior)
+  return _internal_login_authentication_behavior();
+}
+inline void LoginAuthenticationBehaviorProto::_internal_set_login_authentication_behavior(::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior value) {
+  assert(::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  login_authentication_behavior_ = value;
+}
+inline void LoginAuthenticationBehaviorProto::set_login_authentication_behavior(::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior value) {
+  _internal_set_login_authentication_behavior(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginAuthenticationBehaviorProto.login_authentication_behavior)
+}
+
+// -------------------------------------------------------------------
+
+// UsbDeviceIdProto
+
+// optional int32 vendor_id = 1;
+inline bool UsbDeviceIdProto::_internal_has_vendor_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool UsbDeviceIdProto::has_vendor_id() const {
+  return _internal_has_vendor_id();
+}
+inline void UsbDeviceIdProto::clear_vendor_id() {
+  vendor_id_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 UsbDeviceIdProto::_internal_vendor_id() const {
+  return vendor_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 UsbDeviceIdProto::vendor_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UsbDeviceIdProto.vendor_id)
+  return _internal_vendor_id();
+}
+inline void UsbDeviceIdProto::_internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_id_ = value;
+}
+inline void UsbDeviceIdProto::set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_vendor_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UsbDeviceIdProto.vendor_id)
+}
+
+// optional int32 product_id = 2;
+inline bool UsbDeviceIdProto::_internal_has_product_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool UsbDeviceIdProto::has_product_id() const {
+  return _internal_has_product_id();
+}
+inline void UsbDeviceIdProto::clear_product_id() {
+  product_id_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 UsbDeviceIdProto::_internal_product_id() const {
+  return product_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 UsbDeviceIdProto::product_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UsbDeviceIdProto.product_id)
+  return _internal_product_id();
+}
+inline void UsbDeviceIdProto::_internal_set_product_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  product_id_ = value;
+}
+inline void UsbDeviceIdProto::set_product_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_product_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UsbDeviceIdProto.product_id)
+}
+
+// -------------------------------------------------------------------
+
+// UsbDetachableWhitelistProto
+
+// repeated .enterprise_management.UsbDeviceIdProto id = 1;
+inline int UsbDetachableWhitelistProto::_internal_id_size() const {
+  return id_.size();
+}
+inline int UsbDetachableWhitelistProto::id_size() const {
+  return _internal_id_size();
+}
+inline void UsbDetachableWhitelistProto::clear_id() {
+  id_.Clear();
+}
+inline ::enterprise_management::UsbDeviceIdProto* UsbDetachableWhitelistProto::mutable_id(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.UsbDetachableWhitelistProto.id)
+  return id_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdProto >*
+UsbDetachableWhitelistProto::mutable_id() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.UsbDetachableWhitelistProto.id)
+  return &id_;
+}
+inline const ::enterprise_management::UsbDeviceIdProto& UsbDetachableWhitelistProto::_internal_id(int index) const {
+  return id_.Get(index);
+}
+inline const ::enterprise_management::UsbDeviceIdProto& UsbDetachableWhitelistProto::id(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UsbDetachableWhitelistProto.id)
+  return _internal_id(index);
+}
+inline ::enterprise_management::UsbDeviceIdProto* UsbDetachableWhitelistProto::_internal_add_id() {
+  return id_.Add();
+}
+inline ::enterprise_management::UsbDeviceIdProto* UsbDetachableWhitelistProto::add_id() {
+  // @@protoc_insertion_point(field_add:enterprise_management.UsbDetachableWhitelistProto.id)
+  return _internal_add_id();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdProto >&
+UsbDetachableWhitelistProto::id() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.UsbDetachableWhitelistProto.id)
+  return id_;
+}
+
+// -------------------------------------------------------------------
+
+// UsbDeviceIdInclusiveProto
+
+// optional int32 vendor_id = 1;
+inline bool UsbDeviceIdInclusiveProto::_internal_has_vendor_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool UsbDeviceIdInclusiveProto::has_vendor_id() const {
+  return _internal_has_vendor_id();
+}
+inline void UsbDeviceIdInclusiveProto::clear_vendor_id() {
+  vendor_id_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 UsbDeviceIdInclusiveProto::_internal_vendor_id() const {
+  return vendor_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 UsbDeviceIdInclusiveProto::vendor_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UsbDeviceIdInclusiveProto.vendor_id)
+  return _internal_vendor_id();
+}
+inline void UsbDeviceIdInclusiveProto::_internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_id_ = value;
+}
+inline void UsbDeviceIdInclusiveProto::set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_vendor_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UsbDeviceIdInclusiveProto.vendor_id)
+}
+
+// optional int32 product_id = 2;
+inline bool UsbDeviceIdInclusiveProto::_internal_has_product_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool UsbDeviceIdInclusiveProto::has_product_id() const {
+  return _internal_has_product_id();
+}
+inline void UsbDeviceIdInclusiveProto::clear_product_id() {
+  product_id_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 UsbDeviceIdInclusiveProto::_internal_product_id() const {
+  return product_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 UsbDeviceIdInclusiveProto::product_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UsbDeviceIdInclusiveProto.product_id)
+  return _internal_product_id();
+}
+inline void UsbDeviceIdInclusiveProto::_internal_set_product_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  product_id_ = value;
+}
+inline void UsbDeviceIdInclusiveProto::set_product_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_product_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UsbDeviceIdInclusiveProto.product_id)
+}
+
+// -------------------------------------------------------------------
+
+// UsbDetachableAllowlistProto
+
+// repeated .enterprise_management.UsbDeviceIdInclusiveProto id = 1;
+inline int UsbDetachableAllowlistProto::_internal_id_size() const {
+  return id_.size();
+}
+inline int UsbDetachableAllowlistProto::id_size() const {
+  return _internal_id_size();
+}
+inline void UsbDetachableAllowlistProto::clear_id() {
+  id_.Clear();
+}
+inline ::enterprise_management::UsbDeviceIdInclusiveProto* UsbDetachableAllowlistProto::mutable_id(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.UsbDetachableAllowlistProto.id)
+  return id_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdInclusiveProto >*
+UsbDetachableAllowlistProto::mutable_id() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.UsbDetachableAllowlistProto.id)
+  return &id_;
+}
+inline const ::enterprise_management::UsbDeviceIdInclusiveProto& UsbDetachableAllowlistProto::_internal_id(int index) const {
+  return id_.Get(index);
+}
+inline const ::enterprise_management::UsbDeviceIdInclusiveProto& UsbDetachableAllowlistProto::id(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UsbDetachableAllowlistProto.id)
+  return _internal_id(index);
+}
+inline ::enterprise_management::UsbDeviceIdInclusiveProto* UsbDetachableAllowlistProto::_internal_add_id() {
+  return id_.Add();
+}
+inline ::enterprise_management::UsbDeviceIdInclusiveProto* UsbDetachableAllowlistProto::add_id() {
+  // @@protoc_insertion_point(field_add:enterprise_management.UsbDetachableAllowlistProto.id)
+  return _internal_add_id();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::UsbDeviceIdInclusiveProto >&
+UsbDetachableAllowlistProto::id() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.UsbDetachableAllowlistProto.id)
+  return id_;
+}
+
+// -------------------------------------------------------------------
+
+// AllowBluetoothProto
+
+// optional bool allow_bluetooth = 1 [default = true];
+inline bool AllowBluetoothProto::_internal_has_allow_bluetooth() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AllowBluetoothProto::has_allow_bluetooth() const {
+  return _internal_has_allow_bluetooth();
+}
+inline void AllowBluetoothProto::clear_allow_bluetooth() {
+  allow_bluetooth_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool AllowBluetoothProto::_internal_allow_bluetooth() const {
+  return allow_bluetooth_;
+}
+inline bool AllowBluetoothProto::allow_bluetooth() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AllowBluetoothProto.allow_bluetooth)
+  return _internal_allow_bluetooth();
+}
+inline void AllowBluetoothProto::_internal_set_allow_bluetooth(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  allow_bluetooth_ = value;
+}
+inline void AllowBluetoothProto::set_allow_bluetooth(bool value) {
+  _internal_set_allow_bluetooth(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AllowBluetoothProto.allow_bluetooth)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceWiFiAllowedProto
+
+// optional bool device_wifi_allowed = 1 [default = true];
+inline bool DeviceWiFiAllowedProto::_internal_has_device_wifi_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceWiFiAllowedProto::has_device_wifi_allowed() const {
+  return _internal_has_device_wifi_allowed();
+}
+inline void DeviceWiFiAllowedProto::clear_device_wifi_allowed() {
+  device_wifi_allowed_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceWiFiAllowedProto::_internal_device_wifi_allowed() const {
+  return device_wifi_allowed_;
+}
+inline bool DeviceWiFiAllowedProto::device_wifi_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceWiFiAllowedProto.device_wifi_allowed)
+  return _internal_device_wifi_allowed();
+}
+inline void DeviceWiFiAllowedProto::_internal_set_device_wifi_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wifi_allowed_ = value;
+}
+inline void DeviceWiFiAllowedProto::set_device_wifi_allowed(bool value) {
+  _internal_set_device_wifi_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceWiFiAllowedProto.device_wifi_allowed)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceQuirksDownloadEnabledProto
+
+// optional bool quirks_download_enabled = 1;
+inline bool DeviceQuirksDownloadEnabledProto::_internal_has_quirks_download_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceQuirksDownloadEnabledProto::has_quirks_download_enabled() const {
+  return _internal_has_quirks_download_enabled();
+}
+inline void DeviceQuirksDownloadEnabledProto::clear_quirks_download_enabled() {
+  quirks_download_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceQuirksDownloadEnabledProto::_internal_quirks_download_enabled() const {
+  return quirks_download_enabled_;
+}
+inline bool DeviceQuirksDownloadEnabledProto::quirks_download_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceQuirksDownloadEnabledProto.quirks_download_enabled)
+  return _internal_quirks_download_enabled();
+}
+inline void DeviceQuirksDownloadEnabledProto::_internal_set_quirks_download_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  quirks_download_enabled_ = value;
+}
+inline void DeviceQuirksDownloadEnabledProto::set_quirks_download_enabled(bool value) {
+  _internal_set_quirks_download_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceQuirksDownloadEnabledProto.quirks_download_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// LoginVideoCaptureAllowedUrlsProto
+
+// repeated string urls = 1;
+inline int LoginVideoCaptureAllowedUrlsProto::_internal_urls_size() const {
+  return urls_.size();
+}
+inline int LoginVideoCaptureAllowedUrlsProto::urls_size() const {
+  return _internal_urls_size();
+}
+inline void LoginVideoCaptureAllowedUrlsProto::clear_urls() {
+  urls_.Clear();
+}
+inline std::string* LoginVideoCaptureAllowedUrlsProto::add_urls() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+  return _internal_add_urls();
+}
+inline const std::string& LoginVideoCaptureAllowedUrlsProto::_internal_urls(int index) const {
+  return urls_.Get(index);
+}
+inline const std::string& LoginVideoCaptureAllowedUrlsProto::urls(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+  return _internal_urls(index);
+}
+inline std::string* LoginVideoCaptureAllowedUrlsProto::mutable_urls(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+  return urls_.Mutable(index);
+}
+inline void LoginVideoCaptureAllowedUrlsProto::set_urls(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+  urls_.Mutable(index)->assign(value);
+}
+inline void LoginVideoCaptureAllowedUrlsProto::set_urls(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+  urls_.Mutable(index)->assign(std::move(value));
+}
+inline void LoginVideoCaptureAllowedUrlsProto::set_urls(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  urls_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+}
+inline void LoginVideoCaptureAllowedUrlsProto::set_urls(int index, const char* value, size_t size) {
+  urls_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+}
+inline std::string* LoginVideoCaptureAllowedUrlsProto::_internal_add_urls() {
+  return urls_.Add();
+}
+inline void LoginVideoCaptureAllowedUrlsProto::add_urls(const std::string& value) {
+  urls_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+}
+inline void LoginVideoCaptureAllowedUrlsProto::add_urls(std::string&& value) {
+  urls_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+}
+inline void LoginVideoCaptureAllowedUrlsProto::add_urls(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  urls_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+}
+inline void LoginVideoCaptureAllowedUrlsProto::add_urls(const char* value, size_t size) {
+  urls_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+LoginVideoCaptureAllowedUrlsProto::urls() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+  return urls_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+LoginVideoCaptureAllowedUrlsProto::mutable_urls() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.LoginVideoCaptureAllowedUrlsProto.urls)
+  return &urls_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceWiFiFastTransitionEnabledProto
+
+// optional bool device_wifi_fast_transition_enabled = 1;
+inline bool DeviceWiFiFastTransitionEnabledProto::_internal_has_device_wifi_fast_transition_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceWiFiFastTransitionEnabledProto::has_device_wifi_fast_transition_enabled() const {
+  return _internal_has_device_wifi_fast_transition_enabled();
+}
+inline void DeviceWiFiFastTransitionEnabledProto::clear_device_wifi_fast_transition_enabled() {
+  device_wifi_fast_transition_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceWiFiFastTransitionEnabledProto::_internal_device_wifi_fast_transition_enabled() const {
+  return device_wifi_fast_transition_enabled_;
+}
+inline bool DeviceWiFiFastTransitionEnabledProto::device_wifi_fast_transition_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceWiFiFastTransitionEnabledProto.device_wifi_fast_transition_enabled)
+  return _internal_device_wifi_fast_transition_enabled();
+}
+inline void DeviceWiFiFastTransitionEnabledProto::_internal_set_device_wifi_fast_transition_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wifi_fast_transition_enabled_ = value;
+}
+inline void DeviceWiFiFastTransitionEnabledProto::set_device_wifi_fast_transition_enabled(bool value) {
+  _internal_set_device_wifi_fast_transition_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceWiFiFastTransitionEnabledProto.device_wifi_fast_transition_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// NetworkThrottlingEnabledProto
+
+// optional bool enabled = 1 [default = false];
+inline bool NetworkThrottlingEnabledProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool NetworkThrottlingEnabledProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void NetworkThrottlingEnabledProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool NetworkThrottlingEnabledProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool NetworkThrottlingEnabledProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkThrottlingEnabledProto.enabled)
+  return _internal_enabled();
+}
+inline void NetworkThrottlingEnabledProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void NetworkThrottlingEnabledProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkThrottlingEnabledProto.enabled)
+}
+
+// optional int32 upload_rate_kbits = 2 [default = 0];
+inline bool NetworkThrottlingEnabledProto::_internal_has_upload_rate_kbits() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool NetworkThrottlingEnabledProto::has_upload_rate_kbits() const {
+  return _internal_has_upload_rate_kbits();
+}
+inline void NetworkThrottlingEnabledProto::clear_upload_rate_kbits() {
+  upload_rate_kbits_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkThrottlingEnabledProto::_internal_upload_rate_kbits() const {
+  return upload_rate_kbits_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkThrottlingEnabledProto::upload_rate_kbits() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkThrottlingEnabledProto.upload_rate_kbits)
+  return _internal_upload_rate_kbits();
+}
+inline void NetworkThrottlingEnabledProto::_internal_set_upload_rate_kbits(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  upload_rate_kbits_ = value;
+}
+inline void NetworkThrottlingEnabledProto::set_upload_rate_kbits(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_upload_rate_kbits(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkThrottlingEnabledProto.upload_rate_kbits)
+}
+
+// optional int32 download_rate_kbits = 3 [default = 0];
+inline bool NetworkThrottlingEnabledProto::_internal_has_download_rate_kbits() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool NetworkThrottlingEnabledProto::has_download_rate_kbits() const {
+  return _internal_has_download_rate_kbits();
+}
+inline void NetworkThrottlingEnabledProto::clear_download_rate_kbits() {
+  download_rate_kbits_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkThrottlingEnabledProto::_internal_download_rate_kbits() const {
+  return download_rate_kbits_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkThrottlingEnabledProto::download_rate_kbits() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkThrottlingEnabledProto.download_rate_kbits)
+  return _internal_download_rate_kbits();
+}
+inline void NetworkThrottlingEnabledProto::_internal_set_download_rate_kbits(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  download_rate_kbits_ = value;
+}
+inline void NetworkThrottlingEnabledProto::set_download_rate_kbits(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_download_rate_kbits(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkThrottlingEnabledProto.download_rate_kbits)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceLoginScreenExtensionsProto
+
+// repeated string device_login_screen_extensions = 1;
+inline int DeviceLoginScreenExtensionsProto::_internal_device_login_screen_extensions_size() const {
+  return device_login_screen_extensions_.size();
+}
+inline int DeviceLoginScreenExtensionsProto::device_login_screen_extensions_size() const {
+  return _internal_device_login_screen_extensions_size();
+}
+inline void DeviceLoginScreenExtensionsProto::clear_device_login_screen_extensions() {
+  device_login_screen_extensions_.Clear();
+}
+inline std::string* DeviceLoginScreenExtensionsProto::add_device_login_screen_extensions() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+  return _internal_add_device_login_screen_extensions();
+}
+inline const std::string& DeviceLoginScreenExtensionsProto::_internal_device_login_screen_extensions(int index) const {
+  return device_login_screen_extensions_.Get(index);
+}
+inline const std::string& DeviceLoginScreenExtensionsProto::device_login_screen_extensions(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+  return _internal_device_login_screen_extensions(index);
+}
+inline std::string* DeviceLoginScreenExtensionsProto::mutable_device_login_screen_extensions(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+  return device_login_screen_extensions_.Mutable(index);
+}
+inline void DeviceLoginScreenExtensionsProto::set_device_login_screen_extensions(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+  device_login_screen_extensions_.Mutable(index)->assign(value);
+}
+inline void DeviceLoginScreenExtensionsProto::set_device_login_screen_extensions(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+  device_login_screen_extensions_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceLoginScreenExtensionsProto::set_device_login_screen_extensions(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  device_login_screen_extensions_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+}
+inline void DeviceLoginScreenExtensionsProto::set_device_login_screen_extensions(int index, const char* value, size_t size) {
+  device_login_screen_extensions_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+}
+inline std::string* DeviceLoginScreenExtensionsProto::_internal_add_device_login_screen_extensions() {
+  return device_login_screen_extensions_.Add();
+}
+inline void DeviceLoginScreenExtensionsProto::add_device_login_screen_extensions(const std::string& value) {
+  device_login_screen_extensions_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+}
+inline void DeviceLoginScreenExtensionsProto::add_device_login_screen_extensions(std::string&& value) {
+  device_login_screen_extensions_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+}
+inline void DeviceLoginScreenExtensionsProto::add_device_login_screen_extensions(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  device_login_screen_extensions_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+}
+inline void DeviceLoginScreenExtensionsProto::add_device_login_screen_extensions(const char* value, size_t size) {
+  device_login_screen_extensions_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceLoginScreenExtensionsProto::device_login_screen_extensions() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+  return device_login_screen_extensions_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceLoginScreenExtensionsProto::mutable_device_login_screen_extensions() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceLoginScreenExtensionsProto.device_login_screen_extensions)
+  return &device_login_screen_extensions_;
+}
+
+// -------------------------------------------------------------------
+
+// LoginScreenLocalesProto
+
+// repeated string login_screen_locales = 1;
+inline int LoginScreenLocalesProto::_internal_login_screen_locales_size() const {
+  return login_screen_locales_.size();
+}
+inline int LoginScreenLocalesProto::login_screen_locales_size() const {
+  return _internal_login_screen_locales_size();
+}
+inline void LoginScreenLocalesProto::clear_login_screen_locales() {
+  login_screen_locales_.Clear();
+}
+inline std::string* LoginScreenLocalesProto::add_login_screen_locales() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+  return _internal_add_login_screen_locales();
+}
+inline const std::string& LoginScreenLocalesProto::_internal_login_screen_locales(int index) const {
+  return login_screen_locales_.Get(index);
+}
+inline const std::string& LoginScreenLocalesProto::login_screen_locales(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+  return _internal_login_screen_locales(index);
+}
+inline std::string* LoginScreenLocalesProto::mutable_login_screen_locales(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+  return login_screen_locales_.Mutable(index);
+}
+inline void LoginScreenLocalesProto::set_login_screen_locales(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+  login_screen_locales_.Mutable(index)->assign(value);
+}
+inline void LoginScreenLocalesProto::set_login_screen_locales(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+  login_screen_locales_.Mutable(index)->assign(std::move(value));
+}
+inline void LoginScreenLocalesProto::set_login_screen_locales(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  login_screen_locales_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+}
+inline void LoginScreenLocalesProto::set_login_screen_locales(int index, const char* value, size_t size) {
+  login_screen_locales_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+}
+inline std::string* LoginScreenLocalesProto::_internal_add_login_screen_locales() {
+  return login_screen_locales_.Add();
+}
+inline void LoginScreenLocalesProto::add_login_screen_locales(const std::string& value) {
+  login_screen_locales_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+}
+inline void LoginScreenLocalesProto::add_login_screen_locales(std::string&& value) {
+  login_screen_locales_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+}
+inline void LoginScreenLocalesProto::add_login_screen_locales(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  login_screen_locales_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+}
+inline void LoginScreenLocalesProto::add_login_screen_locales(const char* value, size_t size) {
+  login_screen_locales_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+LoginScreenLocalesProto::login_screen_locales() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+  return login_screen_locales_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+LoginScreenLocalesProto::mutable_login_screen_locales() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.LoginScreenLocalesProto.login_screen_locales)
+  return &login_screen_locales_;
+}
+
+// -------------------------------------------------------------------
+
+// LoginScreenInputMethodsProto
+
+// repeated string login_screen_input_methods = 1;
+inline int LoginScreenInputMethodsProto::_internal_login_screen_input_methods_size() const {
+  return login_screen_input_methods_.size();
+}
+inline int LoginScreenInputMethodsProto::login_screen_input_methods_size() const {
+  return _internal_login_screen_input_methods_size();
+}
+inline void LoginScreenInputMethodsProto::clear_login_screen_input_methods() {
+  login_screen_input_methods_.Clear();
+}
+inline std::string* LoginScreenInputMethodsProto::add_login_screen_input_methods() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+  return _internal_add_login_screen_input_methods();
+}
+inline const std::string& LoginScreenInputMethodsProto::_internal_login_screen_input_methods(int index) const {
+  return login_screen_input_methods_.Get(index);
+}
+inline const std::string& LoginScreenInputMethodsProto::login_screen_input_methods(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+  return _internal_login_screen_input_methods(index);
+}
+inline std::string* LoginScreenInputMethodsProto::mutable_login_screen_input_methods(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+  return login_screen_input_methods_.Mutable(index);
+}
+inline void LoginScreenInputMethodsProto::set_login_screen_input_methods(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+  login_screen_input_methods_.Mutable(index)->assign(value);
+}
+inline void LoginScreenInputMethodsProto::set_login_screen_input_methods(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+  login_screen_input_methods_.Mutable(index)->assign(std::move(value));
+}
+inline void LoginScreenInputMethodsProto::set_login_screen_input_methods(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  login_screen_input_methods_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+}
+inline void LoginScreenInputMethodsProto::set_login_screen_input_methods(int index, const char* value, size_t size) {
+  login_screen_input_methods_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+}
+inline std::string* LoginScreenInputMethodsProto::_internal_add_login_screen_input_methods() {
+  return login_screen_input_methods_.Add();
+}
+inline void LoginScreenInputMethodsProto::add_login_screen_input_methods(const std::string& value) {
+  login_screen_input_methods_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+}
+inline void LoginScreenInputMethodsProto::add_login_screen_input_methods(std::string&& value) {
+  login_screen_input_methods_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+}
+inline void LoginScreenInputMethodsProto::add_login_screen_input_methods(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  login_screen_input_methods_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+}
+inline void LoginScreenInputMethodsProto::add_login_screen_input_methods(const char* value, size_t size) {
+  login_screen_input_methods_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+LoginScreenInputMethodsProto::login_screen_input_methods() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+  return login_screen_input_methods_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+LoginScreenInputMethodsProto::mutable_login_screen_input_methods() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.LoginScreenInputMethodsProto.login_screen_input_methods)
+  return &login_screen_input_methods_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceWallpaperImageProto
+
+// optional string device_wallpaper_image = 1;
+inline bool DeviceWallpaperImageProto::_internal_has_device_wallpaper_image() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceWallpaperImageProto::has_device_wallpaper_image() const {
+  return _internal_has_device_wallpaper_image();
+}
+inline void DeviceWallpaperImageProto::clear_device_wallpaper_image() {
+  device_wallpaper_image_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceWallpaperImageProto::device_wallpaper_image() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceWallpaperImageProto.device_wallpaper_image)
+  return _internal_device_wallpaper_image();
+}
+inline void DeviceWallpaperImageProto::set_device_wallpaper_image(const std::string& value) {
+  _internal_set_device_wallpaper_image(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceWallpaperImageProto.device_wallpaper_image)
+}
+inline std::string* DeviceWallpaperImageProto::mutable_device_wallpaper_image() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceWallpaperImageProto.device_wallpaper_image)
+  return _internal_mutable_device_wallpaper_image();
+}
+inline const std::string& DeviceWallpaperImageProto::_internal_device_wallpaper_image() const {
+  return device_wallpaper_image_.GetNoArena();
+}
+inline void DeviceWallpaperImageProto::_internal_set_device_wallpaper_image(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wallpaper_image_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceWallpaperImageProto::set_device_wallpaper_image(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wallpaper_image_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceWallpaperImageProto.device_wallpaper_image)
+}
+inline void DeviceWallpaperImageProto::set_device_wallpaper_image(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_wallpaper_image_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceWallpaperImageProto.device_wallpaper_image)
+}
+inline void DeviceWallpaperImageProto::set_device_wallpaper_image(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wallpaper_image_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceWallpaperImageProto.device_wallpaper_image)
+}
+inline std::string* DeviceWallpaperImageProto::_internal_mutable_device_wallpaper_image() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_wallpaper_image_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceWallpaperImageProto::release_device_wallpaper_image() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceWallpaperImageProto.device_wallpaper_image)
+  if (!_internal_has_device_wallpaper_image()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_wallpaper_image_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceWallpaperImageProto::set_allocated_device_wallpaper_image(std::string* device_wallpaper_image) {
+  if (device_wallpaper_image != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_wallpaper_image_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_wallpaper_image);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceWallpaperImageProto.device_wallpaper_image)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceEcryptfsMigrationStrategyProto
+
+// optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto.MigrationStrategy migration_strategy = 1;
+inline bool DeviceEcryptfsMigrationStrategyProto::_internal_has_migration_strategy() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceEcryptfsMigrationStrategyProto::has_migration_strategy() const {
+  return _internal_has_migration_strategy();
+}
+inline void DeviceEcryptfsMigrationStrategyProto::clear_migration_strategy() {
+  migration_strategy_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto::_internal_migration_strategy() const {
+  return static_cast< ::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy >(migration_strategy_);
+}
+inline ::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy DeviceEcryptfsMigrationStrategyProto::migration_strategy() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceEcryptfsMigrationStrategyProto.migration_strategy)
+  return _internal_migration_strategy();
+}
+inline void DeviceEcryptfsMigrationStrategyProto::_internal_set_migration_strategy(::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy value) {
+  assert(::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  migration_strategy_ = value;
+}
+inline void DeviceEcryptfsMigrationStrategyProto::set_migration_strategy(::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy value) {
+  _internal_set_migration_strategy(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceEcryptfsMigrationStrategyProto.migration_strategy)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceSecondFactorAuthenticationProto
+
+// optional .enterprise_management.DeviceSecondFactorAuthenticationProto.U2fMode mode = 1;
+inline bool DeviceSecondFactorAuthenticationProto::_internal_has_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceSecondFactorAuthenticationProto::has_mode() const {
+  return _internal_has_mode();
+}
+inline void DeviceSecondFactorAuthenticationProto::clear_mode() {
+  mode_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto::_internal_mode() const {
+  return static_cast< ::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode >(mode_);
+}
+inline ::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode DeviceSecondFactorAuthenticationProto::mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceSecondFactorAuthenticationProto.mode)
+  return _internal_mode();
+}
+inline void DeviceSecondFactorAuthenticationProto::_internal_set_mode(::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode value) {
+  assert(::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  mode_ = value;
+}
+inline void DeviceSecondFactorAuthenticationProto::set_mode(::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode value) {
+  _internal_set_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceSecondFactorAuthenticationProto.mode)
+}
+
+// -------------------------------------------------------------------
+
+// CastReceiverNameProto
+
+// optional string name = 1;
+inline bool CastReceiverNameProto::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CastReceiverNameProto::has_name() const {
+  return _internal_has_name();
+}
+inline void CastReceiverNameProto::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CastReceiverNameProto::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CastReceiverNameProto.name)
+  return _internal_name();
+}
+inline void CastReceiverNameProto::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CastReceiverNameProto.name)
+}
+inline std::string* CastReceiverNameProto::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CastReceiverNameProto.name)
+  return _internal_mutable_name();
+}
+inline const std::string& CastReceiverNameProto::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void CastReceiverNameProto::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CastReceiverNameProto::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CastReceiverNameProto.name)
+}
+inline void CastReceiverNameProto::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CastReceiverNameProto.name)
+}
+inline void CastReceiverNameProto::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CastReceiverNameProto.name)
+}
+inline std::string* CastReceiverNameProto::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CastReceiverNameProto::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CastReceiverNameProto.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CastReceiverNameProto::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CastReceiverNameProto.name)
+}
+
+// -------------------------------------------------------------------
+
+// WeeklyTimeProto
+
+// optional .enterprise_management.WeeklyTimeProto.DayOfWeek day_of_week = 1;
+inline bool WeeklyTimeProto::_internal_has_day_of_week() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool WeeklyTimeProto::has_day_of_week() const {
+  return _internal_has_day_of_week();
+}
+inline void WeeklyTimeProto::clear_day_of_week() {
+  day_of_week_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::WeeklyTimeProto_DayOfWeek WeeklyTimeProto::_internal_day_of_week() const {
+  return static_cast< ::enterprise_management::WeeklyTimeProto_DayOfWeek >(day_of_week_);
+}
+inline ::enterprise_management::WeeklyTimeProto_DayOfWeek WeeklyTimeProto::day_of_week() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.WeeklyTimeProto.day_of_week)
+  return _internal_day_of_week();
+}
+inline void WeeklyTimeProto::_internal_set_day_of_week(::enterprise_management::WeeklyTimeProto_DayOfWeek value) {
+  assert(::enterprise_management::WeeklyTimeProto_DayOfWeek_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  day_of_week_ = value;
+}
+inline void WeeklyTimeProto::set_day_of_week(::enterprise_management::WeeklyTimeProto_DayOfWeek value) {
+  _internal_set_day_of_week(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.WeeklyTimeProto.day_of_week)
+}
+
+// optional int32 time = 2;
+inline bool WeeklyTimeProto::_internal_has_time() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool WeeklyTimeProto::has_time() const {
+  return _internal_has_time();
+}
+inline void WeeklyTimeProto::clear_time() {
+  time_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 WeeklyTimeProto::_internal_time() const {
+  return time_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 WeeklyTimeProto::time() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.WeeklyTimeProto.time)
+  return _internal_time();
+}
+inline void WeeklyTimeProto::_internal_set_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  time_ = value;
+}
+inline void WeeklyTimeProto::set_time(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_time(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.WeeklyTimeProto.time)
+}
+
+// -------------------------------------------------------------------
+
+// WeeklyTimeIntervalProto
+
+// optional .enterprise_management.WeeklyTimeProto start = 1;
+inline bool WeeklyTimeIntervalProto::_internal_has_start() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || start_ != nullptr);
+  return value;
+}
+inline bool WeeklyTimeIntervalProto::has_start() const {
+  return _internal_has_start();
+}
+inline void WeeklyTimeIntervalProto::clear_start() {
+  if (start_ != nullptr) start_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::WeeklyTimeProto& WeeklyTimeIntervalProto::_internal_start() const {
+  const ::enterprise_management::WeeklyTimeProto* p = start_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::WeeklyTimeProto*>(
+      &::enterprise_management::_WeeklyTimeProto_default_instance_);
+}
+inline const ::enterprise_management::WeeklyTimeProto& WeeklyTimeIntervalProto::start() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.WeeklyTimeIntervalProto.start)
+  return _internal_start();
+}
+inline ::enterprise_management::WeeklyTimeProto* WeeklyTimeIntervalProto::release_start() {
+  // @@protoc_insertion_point(field_release:enterprise_management.WeeklyTimeIntervalProto.start)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::WeeklyTimeProto* temp = start_;
+  start_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::WeeklyTimeProto* WeeklyTimeIntervalProto::_internal_mutable_start() {
+  _has_bits_[0] |= 0x00000001u;
+  if (start_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::WeeklyTimeProto>(GetArenaNoVirtual());
+    start_ = p;
+  }
+  return start_;
+}
+inline ::enterprise_management::WeeklyTimeProto* WeeklyTimeIntervalProto::mutable_start() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.WeeklyTimeIntervalProto.start)
+  return _internal_mutable_start();
+}
+inline void WeeklyTimeIntervalProto::set_allocated_start(::enterprise_management::WeeklyTimeProto* start) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete start_;
+  }
+  if (start) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      start = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, start, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  start_ = start;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.WeeklyTimeIntervalProto.start)
+}
+
+// optional .enterprise_management.WeeklyTimeProto end = 2;
+inline bool WeeklyTimeIntervalProto::_internal_has_end() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || end_ != nullptr);
+  return value;
+}
+inline bool WeeklyTimeIntervalProto::has_end() const {
+  return _internal_has_end();
+}
+inline void WeeklyTimeIntervalProto::clear_end() {
+  if (end_ != nullptr) end_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::WeeklyTimeProto& WeeklyTimeIntervalProto::_internal_end() const {
+  const ::enterprise_management::WeeklyTimeProto* p = end_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::WeeklyTimeProto*>(
+      &::enterprise_management::_WeeklyTimeProto_default_instance_);
+}
+inline const ::enterprise_management::WeeklyTimeProto& WeeklyTimeIntervalProto::end() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.WeeklyTimeIntervalProto.end)
+  return _internal_end();
+}
+inline ::enterprise_management::WeeklyTimeProto* WeeklyTimeIntervalProto::release_end() {
+  // @@protoc_insertion_point(field_release:enterprise_management.WeeklyTimeIntervalProto.end)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::WeeklyTimeProto* temp = end_;
+  end_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::WeeklyTimeProto* WeeklyTimeIntervalProto::_internal_mutable_end() {
+  _has_bits_[0] |= 0x00000002u;
+  if (end_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::WeeklyTimeProto>(GetArenaNoVirtual());
+    end_ = p;
+  }
+  return end_;
+}
+inline ::enterprise_management::WeeklyTimeProto* WeeklyTimeIntervalProto::mutable_end() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.WeeklyTimeIntervalProto.end)
+  return _internal_mutable_end();
+}
+inline void WeeklyTimeIntervalProto::set_allocated_end(::enterprise_management::WeeklyTimeProto* end) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete end_;
+  }
+  if (end) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      end = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, end, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  end_ = end;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.WeeklyTimeIntervalProto.end)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceOffHoursProto
+
+// repeated .enterprise_management.WeeklyTimeIntervalProto intervals = 1;
+inline int DeviceOffHoursProto::_internal_intervals_size() const {
+  return intervals_.size();
+}
+inline int DeviceOffHoursProto::intervals_size() const {
+  return _internal_intervals_size();
+}
+inline void DeviceOffHoursProto::clear_intervals() {
+  intervals_.Clear();
+}
+inline ::enterprise_management::WeeklyTimeIntervalProto* DeviceOffHoursProto::mutable_intervals(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceOffHoursProto.intervals)
+  return intervals_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::WeeklyTimeIntervalProto >*
+DeviceOffHoursProto::mutable_intervals() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceOffHoursProto.intervals)
+  return &intervals_;
+}
+inline const ::enterprise_management::WeeklyTimeIntervalProto& DeviceOffHoursProto::_internal_intervals(int index) const {
+  return intervals_.Get(index);
+}
+inline const ::enterprise_management::WeeklyTimeIntervalProto& DeviceOffHoursProto::intervals(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceOffHoursProto.intervals)
+  return _internal_intervals(index);
+}
+inline ::enterprise_management::WeeklyTimeIntervalProto* DeviceOffHoursProto::_internal_add_intervals() {
+  return intervals_.Add();
+}
+inline ::enterprise_management::WeeklyTimeIntervalProto* DeviceOffHoursProto::add_intervals() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceOffHoursProto.intervals)
+  return _internal_add_intervals();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::WeeklyTimeIntervalProto >&
+DeviceOffHoursProto::intervals() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceOffHoursProto.intervals)
+  return intervals_;
+}
+
+// optional string timezone = 2;
+inline bool DeviceOffHoursProto::_internal_has_timezone() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceOffHoursProto::has_timezone() const {
+  return _internal_has_timezone();
+}
+inline void DeviceOffHoursProto::clear_timezone() {
+  timezone_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceOffHoursProto::timezone() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceOffHoursProto.timezone)
+  return _internal_timezone();
+}
+inline void DeviceOffHoursProto::set_timezone(const std::string& value) {
+  _internal_set_timezone(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceOffHoursProto.timezone)
+}
+inline std::string* DeviceOffHoursProto::mutable_timezone() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceOffHoursProto.timezone)
+  return _internal_mutable_timezone();
+}
+inline const std::string& DeviceOffHoursProto::_internal_timezone() const {
+  return timezone_.GetNoArena();
+}
+inline void DeviceOffHoursProto::_internal_set_timezone(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  timezone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceOffHoursProto::set_timezone(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  timezone_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceOffHoursProto.timezone)
+}
+inline void DeviceOffHoursProto::set_timezone(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  timezone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceOffHoursProto.timezone)
+}
+inline void DeviceOffHoursProto::set_timezone(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  timezone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceOffHoursProto.timezone)
+}
+inline std::string* DeviceOffHoursProto::_internal_mutable_timezone() {
+  _has_bits_[0] |= 0x00000001u;
+  return timezone_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceOffHoursProto::release_timezone() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceOffHoursProto.timezone)
+  if (!_internal_has_timezone()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return timezone_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceOffHoursProto::set_allocated_timezone(std::string* timezone) {
+  if (timezone != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  timezone_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), timezone);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceOffHoursProto.timezone)
+}
+
+// repeated int32 ignored_policy_proto_tags = 3;
+inline int DeviceOffHoursProto::_internal_ignored_policy_proto_tags_size() const {
+  return ignored_policy_proto_tags_.size();
+}
+inline int DeviceOffHoursProto::ignored_policy_proto_tags_size() const {
+  return _internal_ignored_policy_proto_tags_size();
+}
+inline void DeviceOffHoursProto::clear_ignored_policy_proto_tags() {
+  ignored_policy_proto_tags_.Clear();
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceOffHoursProto::_internal_ignored_policy_proto_tags(int index) const {
+  return ignored_policy_proto_tags_.Get(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceOffHoursProto::ignored_policy_proto_tags(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceOffHoursProto.ignored_policy_proto_tags)
+  return _internal_ignored_policy_proto_tags(index);
+}
+inline void DeviceOffHoursProto::set_ignored_policy_proto_tags(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
+  ignored_policy_proto_tags_.Set(index, value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceOffHoursProto.ignored_policy_proto_tags)
+}
+inline void DeviceOffHoursProto::_internal_add_ignored_policy_proto_tags(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  ignored_policy_proto_tags_.Add(value);
+}
+inline void DeviceOffHoursProto::add_ignored_policy_proto_tags(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_add_ignored_policy_proto_tags(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceOffHoursProto.ignored_policy_proto_tags)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+DeviceOffHoursProto::_internal_ignored_policy_proto_tags() const {
+  return ignored_policy_proto_tags_;
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+DeviceOffHoursProto::ignored_policy_proto_tags() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceOffHoursProto.ignored_policy_proto_tags)
+  return _internal_ignored_policy_proto_tags();
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+DeviceOffHoursProto::_internal_mutable_ignored_policy_proto_tags() {
+  return &ignored_policy_proto_tags_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+DeviceOffHoursProto::mutable_ignored_policy_proto_tags() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceOffHoursProto.ignored_policy_proto_tags)
+  return _internal_mutable_ignored_policy_proto_tags();
+}
+
+// -------------------------------------------------------------------
+
+// DeviceNativePrintersProto
+
+// optional string external_policy = 1;
+inline bool DeviceNativePrintersProto::_internal_has_external_policy() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceNativePrintersProto::has_external_policy() const {
+  return _internal_has_external_policy();
+}
+inline void DeviceNativePrintersProto::clear_external_policy() {
+  external_policy_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceNativePrintersProto::external_policy() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceNativePrintersProto.external_policy)
+  return _internal_external_policy();
+}
+inline void DeviceNativePrintersProto::set_external_policy(const std::string& value) {
+  _internal_set_external_policy(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceNativePrintersProto.external_policy)
+}
+inline std::string* DeviceNativePrintersProto::mutable_external_policy() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceNativePrintersProto.external_policy)
+  return _internal_mutable_external_policy();
+}
+inline const std::string& DeviceNativePrintersProto::_internal_external_policy() const {
+  return external_policy_.GetNoArena();
+}
+inline void DeviceNativePrintersProto::_internal_set_external_policy(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceNativePrintersProto::set_external_policy(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceNativePrintersProto.external_policy)
+}
+inline void DeviceNativePrintersProto::set_external_policy(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceNativePrintersProto.external_policy)
+}
+inline void DeviceNativePrintersProto::set_external_policy(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceNativePrintersProto.external_policy)
+}
+inline std::string* DeviceNativePrintersProto::_internal_mutable_external_policy() {
+  _has_bits_[0] |= 0x00000001u;
+  return external_policy_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceNativePrintersProto::release_external_policy() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceNativePrintersProto.external_policy)
+  if (!_internal_has_external_policy()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return external_policy_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceNativePrintersProto::set_allocated_external_policy(std::string* external_policy) {
+  if (external_policy != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  external_policy_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), external_policy);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceNativePrintersProto.external_policy)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceNativePrintersAccessModeProto
+
+// optional .enterprise_management.DeviceNativePrintersAccessModeProto.AccessMode access_mode = 1;
+inline bool DeviceNativePrintersAccessModeProto::_internal_has_access_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceNativePrintersAccessModeProto::has_access_mode() const {
+  return _internal_has_access_mode();
+}
+inline void DeviceNativePrintersAccessModeProto::clear_access_mode() {
+  access_mode_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto::_internal_access_mode() const {
+  return static_cast< ::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode >(access_mode_);
+}
+inline ::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode DeviceNativePrintersAccessModeProto::access_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceNativePrintersAccessModeProto.access_mode)
+  return _internal_access_mode();
+}
+inline void DeviceNativePrintersAccessModeProto::_internal_set_access_mode(::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode value) {
+  assert(::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  access_mode_ = value;
+}
+inline void DeviceNativePrintersAccessModeProto::set_access_mode(::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode value) {
+  _internal_set_access_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceNativePrintersAccessModeProto.access_mode)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceNativePrintersBlacklistProto
+
+// repeated string blacklist = 1;
+inline int DeviceNativePrintersBlacklistProto::_internal_blacklist_size() const {
+  return blacklist_.size();
+}
+inline int DeviceNativePrintersBlacklistProto::blacklist_size() const {
+  return _internal_blacklist_size();
+}
+inline void DeviceNativePrintersBlacklistProto::clear_blacklist() {
+  blacklist_.Clear();
+}
+inline std::string* DeviceNativePrintersBlacklistProto::add_blacklist() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+  return _internal_add_blacklist();
+}
+inline const std::string& DeviceNativePrintersBlacklistProto::_internal_blacklist(int index) const {
+  return blacklist_.Get(index);
+}
+inline const std::string& DeviceNativePrintersBlacklistProto::blacklist(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+  return _internal_blacklist(index);
+}
+inline std::string* DeviceNativePrintersBlacklistProto::mutable_blacklist(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+  return blacklist_.Mutable(index);
+}
+inline void DeviceNativePrintersBlacklistProto::set_blacklist(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+  blacklist_.Mutable(index)->assign(value);
+}
+inline void DeviceNativePrintersBlacklistProto::set_blacklist(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+  blacklist_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceNativePrintersBlacklistProto::set_blacklist(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  blacklist_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+}
+inline void DeviceNativePrintersBlacklistProto::set_blacklist(int index, const char* value, size_t size) {
+  blacklist_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+}
+inline std::string* DeviceNativePrintersBlacklistProto::_internal_add_blacklist() {
+  return blacklist_.Add();
+}
+inline void DeviceNativePrintersBlacklistProto::add_blacklist(const std::string& value) {
+  blacklist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+}
+inline void DeviceNativePrintersBlacklistProto::add_blacklist(std::string&& value) {
+  blacklist_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+}
+inline void DeviceNativePrintersBlacklistProto::add_blacklist(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  blacklist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+}
+inline void DeviceNativePrintersBlacklistProto::add_blacklist(const char* value, size_t size) {
+  blacklist_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceNativePrintersBlacklistProto::blacklist() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+  return blacklist_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceNativePrintersBlacklistProto::mutable_blacklist() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceNativePrintersBlacklistProto.blacklist)
+  return &blacklist_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceNativePrintersWhitelistProto
+
+// repeated string whitelist = 1;
+inline int DeviceNativePrintersWhitelistProto::_internal_whitelist_size() const {
+  return whitelist_.size();
+}
+inline int DeviceNativePrintersWhitelistProto::whitelist_size() const {
+  return _internal_whitelist_size();
+}
+inline void DeviceNativePrintersWhitelistProto::clear_whitelist() {
+  whitelist_.Clear();
+}
+inline std::string* DeviceNativePrintersWhitelistProto::add_whitelist() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+  return _internal_add_whitelist();
+}
+inline const std::string& DeviceNativePrintersWhitelistProto::_internal_whitelist(int index) const {
+  return whitelist_.Get(index);
+}
+inline const std::string& DeviceNativePrintersWhitelistProto::whitelist(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+  return _internal_whitelist(index);
+}
+inline std::string* DeviceNativePrintersWhitelistProto::mutable_whitelist(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+  return whitelist_.Mutable(index);
+}
+inline void DeviceNativePrintersWhitelistProto::set_whitelist(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+  whitelist_.Mutable(index)->assign(value);
+}
+inline void DeviceNativePrintersWhitelistProto::set_whitelist(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+  whitelist_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceNativePrintersWhitelistProto::set_whitelist(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  whitelist_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+}
+inline void DeviceNativePrintersWhitelistProto::set_whitelist(int index, const char* value, size_t size) {
+  whitelist_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+}
+inline std::string* DeviceNativePrintersWhitelistProto::_internal_add_whitelist() {
+  return whitelist_.Add();
+}
+inline void DeviceNativePrintersWhitelistProto::add_whitelist(const std::string& value) {
+  whitelist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+}
+inline void DeviceNativePrintersWhitelistProto::add_whitelist(std::string&& value) {
+  whitelist_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+}
+inline void DeviceNativePrintersWhitelistProto::add_whitelist(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  whitelist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+}
+inline void DeviceNativePrintersWhitelistProto::add_whitelist(const char* value, size_t size) {
+  whitelist_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceNativePrintersWhitelistProto::whitelist() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+  return whitelist_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceNativePrintersWhitelistProto::mutable_whitelist() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceNativePrintersWhitelistProto.whitelist)
+  return &whitelist_;
+}
+
+// -------------------------------------------------------------------
+
+// DevicePrintersProto
+
+// optional string external_policy = 1;
+inline bool DevicePrintersProto::_internal_has_external_policy() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePrintersProto::has_external_policy() const {
+  return _internal_has_external_policy();
+}
+inline void DevicePrintersProto::clear_external_policy() {
+  external_policy_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DevicePrintersProto::external_policy() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePrintersProto.external_policy)
+  return _internal_external_policy();
+}
+inline void DevicePrintersProto::set_external_policy(const std::string& value) {
+  _internal_set_external_policy(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePrintersProto.external_policy)
+}
+inline std::string* DevicePrintersProto::mutable_external_policy() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DevicePrintersProto.external_policy)
+  return _internal_mutable_external_policy();
+}
+inline const std::string& DevicePrintersProto::_internal_external_policy() const {
+  return external_policy_.GetNoArena();
+}
+inline void DevicePrintersProto::_internal_set_external_policy(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DevicePrintersProto::set_external_policy(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DevicePrintersProto.external_policy)
+}
+inline void DevicePrintersProto::set_external_policy(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DevicePrintersProto.external_policy)
+}
+inline void DevicePrintersProto::set_external_policy(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DevicePrintersProto.external_policy)
+}
+inline std::string* DevicePrintersProto::_internal_mutable_external_policy() {
+  _has_bits_[0] |= 0x00000001u;
+  return external_policy_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DevicePrintersProto::release_external_policy() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DevicePrintersProto.external_policy)
+  if (!_internal_has_external_policy()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return external_policy_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DevicePrintersProto::set_allocated_external_policy(std::string* external_policy) {
+  if (external_policy != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  external_policy_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), external_policy);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DevicePrintersProto.external_policy)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePrintersAccessModeProto
+
+// optional .enterprise_management.DevicePrintersAccessModeProto.AccessMode access_mode = 1;
+inline bool DevicePrintersAccessModeProto::_internal_has_access_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePrintersAccessModeProto::has_access_mode() const {
+  return _internal_has_access_mode();
+}
+inline void DevicePrintersAccessModeProto::clear_access_mode() {
+  access_mode_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto::_internal_access_mode() const {
+  return static_cast< ::enterprise_management::DevicePrintersAccessModeProto_AccessMode >(access_mode_);
+}
+inline ::enterprise_management::DevicePrintersAccessModeProto_AccessMode DevicePrintersAccessModeProto::access_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePrintersAccessModeProto.access_mode)
+  return _internal_access_mode();
+}
+inline void DevicePrintersAccessModeProto::_internal_set_access_mode(::enterprise_management::DevicePrintersAccessModeProto_AccessMode value) {
+  assert(::enterprise_management::DevicePrintersAccessModeProto_AccessMode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  access_mode_ = value;
+}
+inline void DevicePrintersAccessModeProto::set_access_mode(::enterprise_management::DevicePrintersAccessModeProto_AccessMode value) {
+  _internal_set_access_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePrintersAccessModeProto.access_mode)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePrintersBlocklistProto
+
+// repeated string blocklist = 1;
+inline int DevicePrintersBlocklistProto::_internal_blocklist_size() const {
+  return blocklist_.size();
+}
+inline int DevicePrintersBlocklistProto::blocklist_size() const {
+  return _internal_blocklist_size();
+}
+inline void DevicePrintersBlocklistProto::clear_blocklist() {
+  blocklist_.Clear();
+}
+inline std::string* DevicePrintersBlocklistProto::add_blocklist() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+  return _internal_add_blocklist();
+}
+inline const std::string& DevicePrintersBlocklistProto::_internal_blocklist(int index) const {
+  return blocklist_.Get(index);
+}
+inline const std::string& DevicePrintersBlocklistProto::blocklist(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+  return _internal_blocklist(index);
+}
+inline std::string* DevicePrintersBlocklistProto::mutable_blocklist(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+  return blocklist_.Mutable(index);
+}
+inline void DevicePrintersBlocklistProto::set_blocklist(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+  blocklist_.Mutable(index)->assign(value);
+}
+inline void DevicePrintersBlocklistProto::set_blocklist(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+  blocklist_.Mutable(index)->assign(std::move(value));
+}
+inline void DevicePrintersBlocklistProto::set_blocklist(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  blocklist_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+}
+inline void DevicePrintersBlocklistProto::set_blocklist(int index, const char* value, size_t size) {
+  blocklist_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+}
+inline std::string* DevicePrintersBlocklistProto::_internal_add_blocklist() {
+  return blocklist_.Add();
+}
+inline void DevicePrintersBlocklistProto::add_blocklist(const std::string& value) {
+  blocklist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+}
+inline void DevicePrintersBlocklistProto::add_blocklist(std::string&& value) {
+  blocklist_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+}
+inline void DevicePrintersBlocklistProto::add_blocklist(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  blocklist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+}
+inline void DevicePrintersBlocklistProto::add_blocklist(const char* value, size_t size) {
+  blocklist_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DevicePrintersBlocklistProto::blocklist() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+  return blocklist_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DevicePrintersBlocklistProto::mutable_blocklist() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DevicePrintersBlocklistProto.blocklist)
+  return &blocklist_;
+}
+
+// -------------------------------------------------------------------
+
+// DevicePrintersAllowlistProto
+
+// repeated string allowlist = 1;
+inline int DevicePrintersAllowlistProto::_internal_allowlist_size() const {
+  return allowlist_.size();
+}
+inline int DevicePrintersAllowlistProto::allowlist_size() const {
+  return _internal_allowlist_size();
+}
+inline void DevicePrintersAllowlistProto::clear_allowlist() {
+  allowlist_.Clear();
+}
+inline std::string* DevicePrintersAllowlistProto::add_allowlist() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+  return _internal_add_allowlist();
+}
+inline const std::string& DevicePrintersAllowlistProto::_internal_allowlist(int index) const {
+  return allowlist_.Get(index);
+}
+inline const std::string& DevicePrintersAllowlistProto::allowlist(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+  return _internal_allowlist(index);
+}
+inline std::string* DevicePrintersAllowlistProto::mutable_allowlist(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+  return allowlist_.Mutable(index);
+}
+inline void DevicePrintersAllowlistProto::set_allowlist(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+  allowlist_.Mutable(index)->assign(value);
+}
+inline void DevicePrintersAllowlistProto::set_allowlist(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+  allowlist_.Mutable(index)->assign(std::move(value));
+}
+inline void DevicePrintersAllowlistProto::set_allowlist(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  allowlist_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+}
+inline void DevicePrintersAllowlistProto::set_allowlist(int index, const char* value, size_t size) {
+  allowlist_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+}
+inline std::string* DevicePrintersAllowlistProto::_internal_add_allowlist() {
+  return allowlist_.Add();
+}
+inline void DevicePrintersAllowlistProto::add_allowlist(const std::string& value) {
+  allowlist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+}
+inline void DevicePrintersAllowlistProto::add_allowlist(std::string&& value) {
+  allowlist_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+}
+inline void DevicePrintersAllowlistProto::add_allowlist(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  allowlist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+}
+inline void DevicePrintersAllowlistProto::add_allowlist(const char* value, size_t size) {
+  allowlist_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DevicePrintersAllowlistProto::allowlist() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+  return allowlist_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DevicePrintersAllowlistProto::mutable_allowlist() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DevicePrintersAllowlistProto.allowlist)
+  return &allowlist_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceExternalPrintServersProto
+
+// optional string external_policy = 1;
+inline bool DeviceExternalPrintServersProto::_internal_has_external_policy() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceExternalPrintServersProto::has_external_policy() const {
+  return _internal_has_external_policy();
+}
+inline void DeviceExternalPrintServersProto::clear_external_policy() {
+  external_policy_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceExternalPrintServersProto::external_policy() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceExternalPrintServersProto.external_policy)
+  return _internal_external_policy();
+}
+inline void DeviceExternalPrintServersProto::set_external_policy(const std::string& value) {
+  _internal_set_external_policy(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceExternalPrintServersProto.external_policy)
+}
+inline std::string* DeviceExternalPrintServersProto::mutable_external_policy() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceExternalPrintServersProto.external_policy)
+  return _internal_mutable_external_policy();
+}
+inline const std::string& DeviceExternalPrintServersProto::_internal_external_policy() const {
+  return external_policy_.GetNoArena();
+}
+inline void DeviceExternalPrintServersProto::_internal_set_external_policy(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceExternalPrintServersProto::set_external_policy(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceExternalPrintServersProto.external_policy)
+}
+inline void DeviceExternalPrintServersProto::set_external_policy(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceExternalPrintServersProto.external_policy)
+}
+inline void DeviceExternalPrintServersProto::set_external_policy(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  external_policy_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceExternalPrintServersProto.external_policy)
+}
+inline std::string* DeviceExternalPrintServersProto::_internal_mutable_external_policy() {
+  _has_bits_[0] |= 0x00000001u;
+  return external_policy_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceExternalPrintServersProto::release_external_policy() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceExternalPrintServersProto.external_policy)
+  if (!_internal_has_external_policy()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return external_policy_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceExternalPrintServersProto::set_allocated_external_policy(std::string* external_policy) {
+  if (external_policy != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  external_policy_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), external_policy);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceExternalPrintServersProto.external_policy)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceExternalPrintServersAllowlistProto
+
+// repeated string allowlist = 1;
+inline int DeviceExternalPrintServersAllowlistProto::_internal_allowlist_size() const {
+  return allowlist_.size();
+}
+inline int DeviceExternalPrintServersAllowlistProto::allowlist_size() const {
+  return _internal_allowlist_size();
+}
+inline void DeviceExternalPrintServersAllowlistProto::clear_allowlist() {
+  allowlist_.Clear();
+}
+inline std::string* DeviceExternalPrintServersAllowlistProto::add_allowlist() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+  return _internal_add_allowlist();
+}
+inline const std::string& DeviceExternalPrintServersAllowlistProto::_internal_allowlist(int index) const {
+  return allowlist_.Get(index);
+}
+inline const std::string& DeviceExternalPrintServersAllowlistProto::allowlist(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+  return _internal_allowlist(index);
+}
+inline std::string* DeviceExternalPrintServersAllowlistProto::mutable_allowlist(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+  return allowlist_.Mutable(index);
+}
+inline void DeviceExternalPrintServersAllowlistProto::set_allowlist(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+  allowlist_.Mutable(index)->assign(value);
+}
+inline void DeviceExternalPrintServersAllowlistProto::set_allowlist(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+  allowlist_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceExternalPrintServersAllowlistProto::set_allowlist(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  allowlist_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+}
+inline void DeviceExternalPrintServersAllowlistProto::set_allowlist(int index, const char* value, size_t size) {
+  allowlist_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+}
+inline std::string* DeviceExternalPrintServersAllowlistProto::_internal_add_allowlist() {
+  return allowlist_.Add();
+}
+inline void DeviceExternalPrintServersAllowlistProto::add_allowlist(const std::string& value) {
+  allowlist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+}
+inline void DeviceExternalPrintServersAllowlistProto::add_allowlist(std::string&& value) {
+  allowlist_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+}
+inline void DeviceExternalPrintServersAllowlistProto::add_allowlist(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  allowlist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+}
+inline void DeviceExternalPrintServersAllowlistProto::add_allowlist(const char* value, size_t size) {
+  allowlist_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceExternalPrintServersAllowlistProto::allowlist() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+  return allowlist_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceExternalPrintServersAllowlistProto::mutable_allowlist() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceExternalPrintServersAllowlistProto.allowlist)
+  return &allowlist_;
+}
+
+// -------------------------------------------------------------------
+
+// TPMFirmwareUpdateSettingsProto
+
+// optional bool allow_user_initiated_powerwash = 1;
+inline bool TPMFirmwareUpdateSettingsProto::_internal_has_allow_user_initiated_powerwash() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool TPMFirmwareUpdateSettingsProto::has_allow_user_initiated_powerwash() const {
+  return _internal_has_allow_user_initiated_powerwash();
+}
+inline void TPMFirmwareUpdateSettingsProto::clear_allow_user_initiated_powerwash() {
+  allow_user_initiated_powerwash_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool TPMFirmwareUpdateSettingsProto::_internal_allow_user_initiated_powerwash() const {
+  return allow_user_initiated_powerwash_;
+}
+inline bool TPMFirmwareUpdateSettingsProto::allow_user_initiated_powerwash() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TPMFirmwareUpdateSettingsProto.allow_user_initiated_powerwash)
+  return _internal_allow_user_initiated_powerwash();
+}
+inline void TPMFirmwareUpdateSettingsProto::_internal_set_allow_user_initiated_powerwash(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  allow_user_initiated_powerwash_ = value;
+}
+inline void TPMFirmwareUpdateSettingsProto::set_allow_user_initiated_powerwash(bool value) {
+  _internal_set_allow_user_initiated_powerwash(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TPMFirmwareUpdateSettingsProto.allow_user_initiated_powerwash)
+}
+
+// optional bool allow_user_initiated_preserve_device_state = 2;
+inline bool TPMFirmwareUpdateSettingsProto::_internal_has_allow_user_initiated_preserve_device_state() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool TPMFirmwareUpdateSettingsProto::has_allow_user_initiated_preserve_device_state() const {
+  return _internal_has_allow_user_initiated_preserve_device_state();
+}
+inline void TPMFirmwareUpdateSettingsProto::clear_allow_user_initiated_preserve_device_state() {
+  allow_user_initiated_preserve_device_state_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool TPMFirmwareUpdateSettingsProto::_internal_allow_user_initiated_preserve_device_state() const {
+  return allow_user_initiated_preserve_device_state_;
+}
+inline bool TPMFirmwareUpdateSettingsProto::allow_user_initiated_preserve_device_state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TPMFirmwareUpdateSettingsProto.allow_user_initiated_preserve_device_state)
+  return _internal_allow_user_initiated_preserve_device_state();
+}
+inline void TPMFirmwareUpdateSettingsProto::_internal_set_allow_user_initiated_preserve_device_state(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  allow_user_initiated_preserve_device_state_ = value;
+}
+inline void TPMFirmwareUpdateSettingsProto::set_allow_user_initiated_preserve_device_state(bool value) {
+  _internal_set_allow_user_initiated_preserve_device_state(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TPMFirmwareUpdateSettingsProto.allow_user_initiated_preserve_device_state)
+}
+
+// optional .enterprise_management.TPMFirmwareUpdateSettingsProto.AutoUpdateMode auto_update_mode = 3 [default = NEVER];
+inline bool TPMFirmwareUpdateSettingsProto::_internal_has_auto_update_mode() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool TPMFirmwareUpdateSettingsProto::has_auto_update_mode() const {
+  return _internal_has_auto_update_mode();
+}
+inline void TPMFirmwareUpdateSettingsProto::clear_auto_update_mode() {
+  auto_update_mode_ = 1;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::_internal_auto_update_mode() const {
+  return static_cast< ::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode >(auto_update_mode_);
+}
+inline ::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode TPMFirmwareUpdateSettingsProto::auto_update_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TPMFirmwareUpdateSettingsProto.auto_update_mode)
+  return _internal_auto_update_mode();
+}
+inline void TPMFirmwareUpdateSettingsProto::_internal_set_auto_update_mode(::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode value) {
+  assert(::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  auto_update_mode_ = value;
+}
+inline void TPMFirmwareUpdateSettingsProto::set_auto_update_mode(::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode value) {
+  _internal_set_auto_update_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TPMFirmwareUpdateSettingsProto.auto_update_mode)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_MinimumRequiredVersionProto
+
+// optional string OBSOLETE_chrome_version = 1 [deprecated = true];
+inline bool OBSOLETE_MinimumRequiredVersionProto::_internal_has_obsolete_chrome_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OBSOLETE_MinimumRequiredVersionProto::has_obsolete_chrome_version() const {
+  return _internal_has_obsolete_chrome_version();
+}
+inline void OBSOLETE_MinimumRequiredVersionProto::clear_obsolete_chrome_version() {
+  obsolete_chrome_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& OBSOLETE_MinimumRequiredVersionProto::obsolete_chrome_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_MinimumRequiredVersionProto.OBSOLETE_chrome_version)
+  return _internal_obsolete_chrome_version();
+}
+inline void OBSOLETE_MinimumRequiredVersionProto::set_obsolete_chrome_version(const std::string& value) {
+  _internal_set_obsolete_chrome_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_MinimumRequiredVersionProto.OBSOLETE_chrome_version)
+}
+inline std::string* OBSOLETE_MinimumRequiredVersionProto::mutable_obsolete_chrome_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_MinimumRequiredVersionProto.OBSOLETE_chrome_version)
+  return _internal_mutable_obsolete_chrome_version();
+}
+inline const std::string& OBSOLETE_MinimumRequiredVersionProto::_internal_obsolete_chrome_version() const {
+  return obsolete_chrome_version_.GetNoArena();
+}
+inline void OBSOLETE_MinimumRequiredVersionProto::_internal_set_obsolete_chrome_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_chrome_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_MinimumRequiredVersionProto::set_obsolete_chrome_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_chrome_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_MinimumRequiredVersionProto.OBSOLETE_chrome_version)
+}
+inline void OBSOLETE_MinimumRequiredVersionProto::set_obsolete_chrome_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_chrome_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_MinimumRequiredVersionProto.OBSOLETE_chrome_version)
+}
+inline void OBSOLETE_MinimumRequiredVersionProto::set_obsolete_chrome_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_chrome_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_MinimumRequiredVersionProto.OBSOLETE_chrome_version)
+}
+inline std::string* OBSOLETE_MinimumRequiredVersionProto::_internal_mutable_obsolete_chrome_version() {
+  _has_bits_[0] |= 0x00000001u;
+  return obsolete_chrome_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_MinimumRequiredVersionProto::release_obsolete_chrome_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_MinimumRequiredVersionProto.OBSOLETE_chrome_version)
+  if (!_internal_has_obsolete_chrome_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return obsolete_chrome_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_MinimumRequiredVersionProto::set_allocated_obsolete_chrome_version(std::string* obsolete_chrome_version) {
+  if (obsolete_chrome_version != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  obsolete_chrome_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_chrome_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_MinimumRequiredVersionProto.OBSOLETE_chrome_version)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceLoginScreenAutoSelectCertificateForUrls
+
+// repeated string login_screen_auto_select_certificate_rules = 1;
+inline int DeviceLoginScreenAutoSelectCertificateForUrls::_internal_login_screen_auto_select_certificate_rules_size() const {
+  return login_screen_auto_select_certificate_rules_.size();
+}
+inline int DeviceLoginScreenAutoSelectCertificateForUrls::login_screen_auto_select_certificate_rules_size() const {
+  return _internal_login_screen_auto_select_certificate_rules_size();
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::clear_login_screen_auto_select_certificate_rules() {
+  login_screen_auto_select_certificate_rules_.Clear();
+}
+inline std::string* DeviceLoginScreenAutoSelectCertificateForUrls::add_login_screen_auto_select_certificate_rules() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+  return _internal_add_login_screen_auto_select_certificate_rules();
+}
+inline const std::string& DeviceLoginScreenAutoSelectCertificateForUrls::_internal_login_screen_auto_select_certificate_rules(int index) const {
+  return login_screen_auto_select_certificate_rules_.Get(index);
+}
+inline const std::string& DeviceLoginScreenAutoSelectCertificateForUrls::login_screen_auto_select_certificate_rules(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+  return _internal_login_screen_auto_select_certificate_rules(index);
+}
+inline std::string* DeviceLoginScreenAutoSelectCertificateForUrls::mutable_login_screen_auto_select_certificate_rules(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+  return login_screen_auto_select_certificate_rules_.Mutable(index);
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::set_login_screen_auto_select_certificate_rules(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+  login_screen_auto_select_certificate_rules_.Mutable(index)->assign(value);
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::set_login_screen_auto_select_certificate_rules(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+  login_screen_auto_select_certificate_rules_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::set_login_screen_auto_select_certificate_rules(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  login_screen_auto_select_certificate_rules_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::set_login_screen_auto_select_certificate_rules(int index, const char* value, size_t size) {
+  login_screen_auto_select_certificate_rules_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+}
+inline std::string* DeviceLoginScreenAutoSelectCertificateForUrls::_internal_add_login_screen_auto_select_certificate_rules() {
+  return login_screen_auto_select_certificate_rules_.Add();
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::add_login_screen_auto_select_certificate_rules(const std::string& value) {
+  login_screen_auto_select_certificate_rules_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::add_login_screen_auto_select_certificate_rules(std::string&& value) {
+  login_screen_auto_select_certificate_rules_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::add_login_screen_auto_select_certificate_rules(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  login_screen_auto_select_certificate_rules_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+}
+inline void DeviceLoginScreenAutoSelectCertificateForUrls::add_login_screen_auto_select_certificate_rules(const char* value, size_t size) {
+  login_screen_auto_select_certificate_rules_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceLoginScreenAutoSelectCertificateForUrls::login_screen_auto_select_certificate_rules() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+  return login_screen_auto_select_certificate_rules_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceLoginScreenAutoSelectCertificateForUrls::mutable_login_screen_auto_select_certificate_rules() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls.login_screen_auto_select_certificate_rules)
+  return &login_screen_auto_select_certificate_rules_;
+}
+
+// -------------------------------------------------------------------
+
+// UnaffiliatedArcAllowedProto
+
+// optional bool unaffiliated_arc_allowed = 1;
+inline bool UnaffiliatedArcAllowedProto::_internal_has_unaffiliated_arc_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool UnaffiliatedArcAllowedProto::has_unaffiliated_arc_allowed() const {
+  return _internal_has_unaffiliated_arc_allowed();
+}
+inline void UnaffiliatedArcAllowedProto::clear_unaffiliated_arc_allowed() {
+  unaffiliated_arc_allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool UnaffiliatedArcAllowedProto::_internal_unaffiliated_arc_allowed() const {
+  return unaffiliated_arc_allowed_;
+}
+inline bool UnaffiliatedArcAllowedProto::unaffiliated_arc_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UnaffiliatedArcAllowedProto.unaffiliated_arc_allowed)
+  return _internal_unaffiliated_arc_allowed();
+}
+inline void UnaffiliatedArcAllowedProto::_internal_set_unaffiliated_arc_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  unaffiliated_arc_allowed_ = value;
+}
+inline void UnaffiliatedArcAllowedProto::set_unaffiliated_arc_allowed(bool value) {
+  _internal_set_unaffiliated_arc_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UnaffiliatedArcAllowedProto.unaffiliated_arc_allowed)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceKerberosEncryptionTypesProto
+
+// optional .enterprise_management.DeviceKerberosEncryptionTypesProto.Types types = 1 [default = ENC_TYPES_STRONG];
+inline bool DeviceKerberosEncryptionTypesProto::_internal_has_types() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceKerberosEncryptionTypesProto::has_types() const {
+  return _internal_has_types();
+}
+inline void DeviceKerberosEncryptionTypesProto::clear_types() {
+  types_ = 1;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto::_internal_types() const {
+  return static_cast< ::enterprise_management::DeviceKerberosEncryptionTypesProto_Types >(types_);
+}
+inline ::enterprise_management::DeviceKerberosEncryptionTypesProto_Types DeviceKerberosEncryptionTypesProto::types() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceKerberosEncryptionTypesProto.types)
+  return _internal_types();
+}
+inline void DeviceKerberosEncryptionTypesProto::_internal_set_types(::enterprise_management::DeviceKerberosEncryptionTypesProto_Types value) {
+  assert(::enterprise_management::DeviceKerberosEncryptionTypesProto_Types_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  types_ = value;
+}
+inline void DeviceKerberosEncryptionTypesProto::set_types(::enterprise_management::DeviceKerberosEncryptionTypesProto_Types value) {
+  _internal_set_types(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceKerberosEncryptionTypesProto.types)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceUserPolicyLoopbackProcessingModeProto
+
+// optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto.Mode mode = 1 [default = USER_POLICY_MODE_DEFAULT];
+inline bool DeviceUserPolicyLoopbackProcessingModeProto::_internal_has_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceUserPolicyLoopbackProcessingModeProto::has_mode() const {
+  return _internal_has_mode();
+}
+inline void DeviceUserPolicyLoopbackProcessingModeProto::clear_mode() {
+  mode_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto::_internal_mode() const {
+  return static_cast< ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode >(mode_);
+}
+inline ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode DeviceUserPolicyLoopbackProcessingModeProto::mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto.mode)
+  return _internal_mode();
+}
+inline void DeviceUserPolicyLoopbackProcessingModeProto::_internal_set_mode(::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode value) {
+  assert(::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  mode_ = value;
+}
+inline void DeviceUserPolicyLoopbackProcessingModeProto::set_mode(::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode value) {
+  _internal_set_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto.mode)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_DeviceLoginScreenIsolateOriginsProto
+
+// optional string OBSOLETE_isolate_origins = 1 [deprecated = true];
+inline bool OBSOLETE_DeviceLoginScreenIsolateOriginsProto::_internal_has_obsolete_isolate_origins() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OBSOLETE_DeviceLoginScreenIsolateOriginsProto::has_obsolete_isolate_origins() const {
+  return _internal_has_obsolete_isolate_origins();
+}
+inline void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::clear_obsolete_isolate_origins() {
+  obsolete_isolate_origins_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& OBSOLETE_DeviceLoginScreenIsolateOriginsProto::obsolete_isolate_origins() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto.OBSOLETE_isolate_origins)
+  return _internal_obsolete_isolate_origins();
+}
+inline void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::set_obsolete_isolate_origins(const std::string& value) {
+  _internal_set_obsolete_isolate_origins(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto.OBSOLETE_isolate_origins)
+}
+inline std::string* OBSOLETE_DeviceLoginScreenIsolateOriginsProto::mutable_obsolete_isolate_origins() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto.OBSOLETE_isolate_origins)
+  return _internal_mutable_obsolete_isolate_origins();
+}
+inline const std::string& OBSOLETE_DeviceLoginScreenIsolateOriginsProto::_internal_obsolete_isolate_origins() const {
+  return obsolete_isolate_origins_.GetNoArena();
+}
+inline void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::_internal_set_obsolete_isolate_origins(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_isolate_origins_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::set_obsolete_isolate_origins(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_isolate_origins_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto.OBSOLETE_isolate_origins)
+}
+inline void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::set_obsolete_isolate_origins(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_isolate_origins_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto.OBSOLETE_isolate_origins)
+}
+inline void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::set_obsolete_isolate_origins(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_isolate_origins_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto.OBSOLETE_isolate_origins)
+}
+inline std::string* OBSOLETE_DeviceLoginScreenIsolateOriginsProto::_internal_mutable_obsolete_isolate_origins() {
+  _has_bits_[0] |= 0x00000001u;
+  return obsolete_isolate_origins_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OBSOLETE_DeviceLoginScreenIsolateOriginsProto::release_obsolete_isolate_origins() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto.OBSOLETE_isolate_origins)
+  if (!_internal_has_obsolete_isolate_origins()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return obsolete_isolate_origins_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OBSOLETE_DeviceLoginScreenIsolateOriginsProto::set_allocated_obsolete_isolate_origins(std::string* obsolete_isolate_origins) {
+  if (obsolete_isolate_origins != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  obsolete_isolate_origins_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obsolete_isolate_origins);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto.OBSOLETE_isolate_origins)
+}
+
+// -------------------------------------------------------------------
+
+// OBSOLETE_DeviceLoginScreenSitePerProcessProto
+
+// optional bool OBSOLETE_site_per_process = 1 [deprecated = true];
+inline bool OBSOLETE_DeviceLoginScreenSitePerProcessProto::_internal_has_obsolete_site_per_process() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OBSOLETE_DeviceLoginScreenSitePerProcessProto::has_obsolete_site_per_process() const {
+  return _internal_has_obsolete_site_per_process();
+}
+inline void OBSOLETE_DeviceLoginScreenSitePerProcessProto::clear_obsolete_site_per_process() {
+  obsolete_site_per_process_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool OBSOLETE_DeviceLoginScreenSitePerProcessProto::_internal_obsolete_site_per_process() const {
+  return obsolete_site_per_process_;
+}
+inline bool OBSOLETE_DeviceLoginScreenSitePerProcessProto::obsolete_site_per_process() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto.OBSOLETE_site_per_process)
+  return _internal_obsolete_site_per_process();
+}
+inline void OBSOLETE_DeviceLoginScreenSitePerProcessProto::_internal_set_obsolete_site_per_process(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  obsolete_site_per_process_ = value;
+}
+inline void OBSOLETE_DeviceLoginScreenSitePerProcessProto::set_obsolete_site_per_process(bool value) {
+  _internal_set_obsolete_site_per_process(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto.OBSOLETE_site_per_process)
+}
+
+// -------------------------------------------------------------------
+
+// VirtualMachinesAllowedProto
+
+// optional bool virtual_machines_allowed = 1;
+inline bool VirtualMachinesAllowedProto::_internal_has_virtual_machines_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool VirtualMachinesAllowedProto::has_virtual_machines_allowed() const {
+  return _internal_has_virtual_machines_allowed();
+}
+inline void VirtualMachinesAllowedProto::clear_virtual_machines_allowed() {
+  virtual_machines_allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool VirtualMachinesAllowedProto::_internal_virtual_machines_allowed() const {
+  return virtual_machines_allowed_;
+}
+inline bool VirtualMachinesAllowedProto::virtual_machines_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.VirtualMachinesAllowedProto.virtual_machines_allowed)
+  return _internal_virtual_machines_allowed();
+}
+inline void VirtualMachinesAllowedProto::_internal_set_virtual_machines_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  virtual_machines_allowed_ = value;
+}
+inline void VirtualMachinesAllowedProto::set_virtual_machines_allowed(bool value) {
+  _internal_set_virtual_machines_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.VirtualMachinesAllowedProto.virtual_machines_allowed)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceMachinePasswordChangeRateProto
+
+// optional int32 rate_days = 1;
+inline bool DeviceMachinePasswordChangeRateProto::_internal_has_rate_days() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceMachinePasswordChangeRateProto::has_rate_days() const {
+  return _internal_has_rate_days();
+}
+inline void DeviceMachinePasswordChangeRateProto::clear_rate_days() {
+  rate_days_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceMachinePasswordChangeRateProto::_internal_rate_days() const {
+  return rate_days_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceMachinePasswordChangeRateProto::rate_days() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceMachinePasswordChangeRateProto.rate_days)
+  return _internal_rate_days();
+}
+inline void DeviceMachinePasswordChangeRateProto::_internal_set_rate_days(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  rate_days_ = value;
+}
+inline void DeviceMachinePasswordChangeRateProto::set_rate_days(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_rate_days(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceMachinePasswordChangeRateProto.rate_days)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceGpoCacheLifetimeProto
+
+// optional int32 lifetime_hours = 1;
+inline bool DeviceGpoCacheLifetimeProto::_internal_has_lifetime_hours() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceGpoCacheLifetimeProto::has_lifetime_hours() const {
+  return _internal_has_lifetime_hours();
+}
+inline void DeviceGpoCacheLifetimeProto::clear_lifetime_hours() {
+  lifetime_hours_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceGpoCacheLifetimeProto::_internal_lifetime_hours() const {
+  return lifetime_hours_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceGpoCacheLifetimeProto::lifetime_hours() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceGpoCacheLifetimeProto.lifetime_hours)
+  return _internal_lifetime_hours();
+}
+inline void DeviceGpoCacheLifetimeProto::_internal_set_lifetime_hours(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  lifetime_hours_ = value;
+}
+inline void DeviceGpoCacheLifetimeProto::set_lifetime_hours(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_lifetime_hours(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceGpoCacheLifetimeProto.lifetime_hours)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceAuthDataCacheLifetimeProto
+
+// optional int32 lifetime_hours = 1;
+inline bool DeviceAuthDataCacheLifetimeProto::_internal_has_lifetime_hours() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceAuthDataCacheLifetimeProto::has_lifetime_hours() const {
+  return _internal_has_lifetime_hours();
+}
+inline void DeviceAuthDataCacheLifetimeProto::clear_lifetime_hours() {
+  lifetime_hours_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceAuthDataCacheLifetimeProto::_internal_lifetime_hours() const {
+  return lifetime_hours_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceAuthDataCacheLifetimeProto::lifetime_hours() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAuthDataCacheLifetimeProto.lifetime_hours)
+  return _internal_lifetime_hours();
+}
+inline void DeviceAuthDataCacheLifetimeProto::_internal_set_lifetime_hours(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  lifetime_hours_ = value;
+}
+inline void DeviceAuthDataCacheLifetimeProto::set_lifetime_hours(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_lifetime_hours(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAuthDataCacheLifetimeProto.lifetime_hours)
+}
+
+// -------------------------------------------------------------------
+
+// SamlLoginAuthenticationTypeProto
+
+// optional .enterprise_management.SamlLoginAuthenticationTypeProto.Type saml_login_authentication_type = 1 [default = TYPE_DEFAULT];
+inline bool SamlLoginAuthenticationTypeProto::_internal_has_saml_login_authentication_type() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SamlLoginAuthenticationTypeProto::has_saml_login_authentication_type() const {
+  return _internal_has_saml_login_authentication_type();
+}
+inline void SamlLoginAuthenticationTypeProto::clear_saml_login_authentication_type() {
+  saml_login_authentication_type_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::SamlLoginAuthenticationTypeProto_Type SamlLoginAuthenticationTypeProto::_internal_saml_login_authentication_type() const {
+  return static_cast< ::enterprise_management::SamlLoginAuthenticationTypeProto_Type >(saml_login_authentication_type_);
+}
+inline ::enterprise_management::SamlLoginAuthenticationTypeProto_Type SamlLoginAuthenticationTypeProto::saml_login_authentication_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SamlLoginAuthenticationTypeProto.saml_login_authentication_type)
+  return _internal_saml_login_authentication_type();
+}
+inline void SamlLoginAuthenticationTypeProto::_internal_set_saml_login_authentication_type(::enterprise_management::SamlLoginAuthenticationTypeProto_Type value) {
+  assert(::enterprise_management::SamlLoginAuthenticationTypeProto_Type_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  saml_login_authentication_type_ = value;
+}
+inline void SamlLoginAuthenticationTypeProto::set_saml_login_authentication_type(::enterprise_management::SamlLoginAuthenticationTypeProto_Type value) {
+  _internal_set_saml_login_authentication_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SamlLoginAuthenticationTypeProto.saml_login_authentication_type)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceUnaffiliatedCrostiniAllowedProto
+
+// optional bool device_unaffiliated_crostini_allowed = 1;
+inline bool DeviceUnaffiliatedCrostiniAllowedProto::_internal_has_device_unaffiliated_crostini_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceUnaffiliatedCrostiniAllowedProto::has_device_unaffiliated_crostini_allowed() const {
+  return _internal_has_device_unaffiliated_crostini_allowed();
+}
+inline void DeviceUnaffiliatedCrostiniAllowedProto::clear_device_unaffiliated_crostini_allowed() {
+  device_unaffiliated_crostini_allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceUnaffiliatedCrostiniAllowedProto::_internal_device_unaffiliated_crostini_allowed() const {
+  return device_unaffiliated_crostini_allowed_;
+}
+inline bool DeviceUnaffiliatedCrostiniAllowedProto::device_unaffiliated_crostini_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto.device_unaffiliated_crostini_allowed)
+  return _internal_device_unaffiliated_crostini_allowed();
+}
+inline void DeviceUnaffiliatedCrostiniAllowedProto::_internal_set_device_unaffiliated_crostini_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_unaffiliated_crostini_allowed_ = value;
+}
+inline void DeviceUnaffiliatedCrostiniAllowedProto::set_device_unaffiliated_crostini_allowed(bool value) {
+  _internal_set_device_unaffiliated_crostini_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto.device_unaffiliated_crostini_allowed)
+}
+
+// -------------------------------------------------------------------
+
+// PluginVmAllowedProto
+
+// optional bool plugin_vm_allowed = 1;
+inline bool PluginVmAllowedProto::_internal_has_plugin_vm_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PluginVmAllowedProto::has_plugin_vm_allowed() const {
+  return _internal_has_plugin_vm_allowed();
+}
+inline void PluginVmAllowedProto::clear_plugin_vm_allowed() {
+  plugin_vm_allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool PluginVmAllowedProto::_internal_plugin_vm_allowed() const {
+  return plugin_vm_allowed_;
+}
+inline bool PluginVmAllowedProto::plugin_vm_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PluginVmAllowedProto.plugin_vm_allowed)
+  return _internal_plugin_vm_allowed();
+}
+inline void PluginVmAllowedProto::_internal_set_plugin_vm_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  plugin_vm_allowed_ = value;
+}
+inline void PluginVmAllowedProto::set_plugin_vm_allowed(bool value) {
+  _internal_set_plugin_vm_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PluginVmAllowedProto.plugin_vm_allowed)
+}
+
+// -------------------------------------------------------------------
+
+// PluginVmLicenseKeyProto
+
+// optional string plugin_vm_license_key = 1;
+inline bool PluginVmLicenseKeyProto::_internal_has_plugin_vm_license_key() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PluginVmLicenseKeyProto::has_plugin_vm_license_key() const {
+  return _internal_has_plugin_vm_license_key();
+}
+inline void PluginVmLicenseKeyProto::clear_plugin_vm_license_key() {
+  plugin_vm_license_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PluginVmLicenseKeyProto::plugin_vm_license_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PluginVmLicenseKeyProto.plugin_vm_license_key)
+  return _internal_plugin_vm_license_key();
+}
+inline void PluginVmLicenseKeyProto::set_plugin_vm_license_key(const std::string& value) {
+  _internal_set_plugin_vm_license_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PluginVmLicenseKeyProto.plugin_vm_license_key)
+}
+inline std::string* PluginVmLicenseKeyProto::mutable_plugin_vm_license_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PluginVmLicenseKeyProto.plugin_vm_license_key)
+  return _internal_mutable_plugin_vm_license_key();
+}
+inline const std::string& PluginVmLicenseKeyProto::_internal_plugin_vm_license_key() const {
+  return plugin_vm_license_key_.GetNoArena();
+}
+inline void PluginVmLicenseKeyProto::_internal_set_plugin_vm_license_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  plugin_vm_license_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PluginVmLicenseKeyProto::set_plugin_vm_license_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  plugin_vm_license_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PluginVmLicenseKeyProto.plugin_vm_license_key)
+}
+inline void PluginVmLicenseKeyProto::set_plugin_vm_license_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  plugin_vm_license_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PluginVmLicenseKeyProto.plugin_vm_license_key)
+}
+inline void PluginVmLicenseKeyProto::set_plugin_vm_license_key(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  plugin_vm_license_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PluginVmLicenseKeyProto.plugin_vm_license_key)
+}
+inline std::string* PluginVmLicenseKeyProto::_internal_mutable_plugin_vm_license_key() {
+  _has_bits_[0] |= 0x00000001u;
+  return plugin_vm_license_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PluginVmLicenseKeyProto::release_plugin_vm_license_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PluginVmLicenseKeyProto.plugin_vm_license_key)
+  if (!_internal_has_plugin_vm_license_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return plugin_vm_license_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PluginVmLicenseKeyProto::set_allocated_plugin_vm_license_key(std::string* plugin_vm_license_key) {
+  if (plugin_vm_license_key != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  plugin_vm_license_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), plugin_vm_license_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PluginVmLicenseKeyProto.plugin_vm_license_key)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceRebootOnUserSignoutProto
+
+// optional .enterprise_management.DeviceRebootOnUserSignoutProto.RebootOnSignoutMode reboot_on_signout_mode = 1 [default = NEVER];
+inline bool DeviceRebootOnUserSignoutProto::_internal_has_reboot_on_signout_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceRebootOnUserSignoutProto::has_reboot_on_signout_mode() const {
+  return _internal_has_reboot_on_signout_mode();
+}
+inline void DeviceRebootOnUserSignoutProto::clear_reboot_on_signout_mode() {
+  reboot_on_signout_mode_ = 1;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::_internal_reboot_on_signout_mode() const {
+  return static_cast< ::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode >(reboot_on_signout_mode_);
+}
+inline ::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode DeviceRebootOnUserSignoutProto::reboot_on_signout_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRebootOnUserSignoutProto.reboot_on_signout_mode)
+  return _internal_reboot_on_signout_mode();
+}
+inline void DeviceRebootOnUserSignoutProto::_internal_set_reboot_on_signout_mode(::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode value) {
+  assert(::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  reboot_on_signout_mode_ = value;
+}
+inline void DeviceRebootOnUserSignoutProto::set_reboot_on_signout_mode(::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode value) {
+  _internal_set_reboot_on_signout_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRebootOnUserSignoutProto.reboot_on_signout_mode)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceWilcoDtcAllowedProto
+
+// optional bool device_wilco_dtc_allowed = 1;
+inline bool DeviceWilcoDtcAllowedProto::_internal_has_device_wilco_dtc_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceWilcoDtcAllowedProto::has_device_wilco_dtc_allowed() const {
+  return _internal_has_device_wilco_dtc_allowed();
+}
+inline void DeviceWilcoDtcAllowedProto::clear_device_wilco_dtc_allowed() {
+  device_wilco_dtc_allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceWilcoDtcAllowedProto::_internal_device_wilco_dtc_allowed() const {
+  return device_wilco_dtc_allowed_;
+}
+inline bool DeviceWilcoDtcAllowedProto::device_wilco_dtc_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceWilcoDtcAllowedProto.device_wilco_dtc_allowed)
+  return _internal_device_wilco_dtc_allowed();
+}
+inline void DeviceWilcoDtcAllowedProto::_internal_set_device_wilco_dtc_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wilco_dtc_allowed_ = value;
+}
+inline void DeviceWilcoDtcAllowedProto::set_device_wilco_dtc_allowed(bool value) {
+  _internal_set_device_wilco_dtc_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceWilcoDtcAllowedProto.device_wilco_dtc_allowed)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceWilcoDtcConfigurationProto
+
+// optional string device_wilco_dtc_configuration = 1;
+inline bool DeviceWilcoDtcConfigurationProto::_internal_has_device_wilco_dtc_configuration() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceWilcoDtcConfigurationProto::has_device_wilco_dtc_configuration() const {
+  return _internal_has_device_wilco_dtc_configuration();
+}
+inline void DeviceWilcoDtcConfigurationProto::clear_device_wilco_dtc_configuration() {
+  device_wilco_dtc_configuration_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceWilcoDtcConfigurationProto::device_wilco_dtc_configuration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceWilcoDtcConfigurationProto.device_wilco_dtc_configuration)
+  return _internal_device_wilco_dtc_configuration();
+}
+inline void DeviceWilcoDtcConfigurationProto::set_device_wilco_dtc_configuration(const std::string& value) {
+  _internal_set_device_wilco_dtc_configuration(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceWilcoDtcConfigurationProto.device_wilco_dtc_configuration)
+}
+inline std::string* DeviceWilcoDtcConfigurationProto::mutable_device_wilco_dtc_configuration() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceWilcoDtcConfigurationProto.device_wilco_dtc_configuration)
+  return _internal_mutable_device_wilco_dtc_configuration();
+}
+inline const std::string& DeviceWilcoDtcConfigurationProto::_internal_device_wilco_dtc_configuration() const {
+  return device_wilco_dtc_configuration_.GetNoArena();
+}
+inline void DeviceWilcoDtcConfigurationProto::_internal_set_device_wilco_dtc_configuration(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wilco_dtc_configuration_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceWilcoDtcConfigurationProto::set_device_wilco_dtc_configuration(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wilco_dtc_configuration_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceWilcoDtcConfigurationProto.device_wilco_dtc_configuration)
+}
+inline void DeviceWilcoDtcConfigurationProto::set_device_wilco_dtc_configuration(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_wilco_dtc_configuration_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceWilcoDtcConfigurationProto.device_wilco_dtc_configuration)
+}
+inline void DeviceWilcoDtcConfigurationProto::set_device_wilco_dtc_configuration(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_wilco_dtc_configuration_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceWilcoDtcConfigurationProto.device_wilco_dtc_configuration)
+}
+inline std::string* DeviceWilcoDtcConfigurationProto::_internal_mutable_device_wilco_dtc_configuration() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_wilco_dtc_configuration_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceWilcoDtcConfigurationProto::release_device_wilco_dtc_configuration() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceWilcoDtcConfigurationProto.device_wilco_dtc_configuration)
+  if (!_internal_has_device_wilco_dtc_configuration()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_wilco_dtc_configuration_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceWilcoDtcConfigurationProto::set_allocated_device_wilco_dtc_configuration(std::string* device_wilco_dtc_configuration) {
+  if (device_wilco_dtc_configuration != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_wilco_dtc_configuration_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_wilco_dtc_configuration);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceWilcoDtcConfigurationProto.device_wilco_dtc_configuration)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePowerPeakShiftProto
+
+// optional bool enabled = 1;
+inline bool DevicePowerPeakShiftProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DevicePowerPeakShiftProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DevicePowerPeakShiftProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool DevicePowerPeakShiftProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DevicePowerPeakShiftProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePowerPeakShiftProto.enabled)
+  return _internal_enabled();
+}
+inline void DevicePowerPeakShiftProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  enabled_ = value;
+}
+inline void DevicePowerPeakShiftProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePowerPeakShiftProto.enabled)
+}
+
+// optional int32 battery_threshold = 2;
+inline bool DevicePowerPeakShiftProto::_internal_has_battery_threshold() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DevicePowerPeakShiftProto::has_battery_threshold() const {
+  return _internal_has_battery_threshold();
+}
+inline void DevicePowerPeakShiftProto::clear_battery_threshold() {
+  battery_threshold_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DevicePowerPeakShiftProto::_internal_battery_threshold() const {
+  return battery_threshold_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DevicePowerPeakShiftProto::battery_threshold() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePowerPeakShiftProto.battery_threshold)
+  return _internal_battery_threshold();
+}
+inline void DevicePowerPeakShiftProto::_internal_set_battery_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  battery_threshold_ = value;
+}
+inline void DevicePowerPeakShiftProto::set_battery_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_battery_threshold(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePowerPeakShiftProto.battery_threshold)
+}
+
+// optional string day_configs = 3;
+inline bool DevicePowerPeakShiftProto::_internal_has_day_configs() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePowerPeakShiftProto::has_day_configs() const {
+  return _internal_has_day_configs();
+}
+inline void DevicePowerPeakShiftProto::clear_day_configs() {
+  day_configs_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DevicePowerPeakShiftProto::day_configs() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePowerPeakShiftProto.day_configs)
+  return _internal_day_configs();
+}
+inline void DevicePowerPeakShiftProto::set_day_configs(const std::string& value) {
+  _internal_set_day_configs(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePowerPeakShiftProto.day_configs)
+}
+inline std::string* DevicePowerPeakShiftProto::mutable_day_configs() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DevicePowerPeakShiftProto.day_configs)
+  return _internal_mutable_day_configs();
+}
+inline const std::string& DevicePowerPeakShiftProto::_internal_day_configs() const {
+  return day_configs_.GetNoArena();
+}
+inline void DevicePowerPeakShiftProto::_internal_set_day_configs(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  day_configs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DevicePowerPeakShiftProto::set_day_configs(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  day_configs_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DevicePowerPeakShiftProto.day_configs)
+}
+inline void DevicePowerPeakShiftProto::set_day_configs(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  day_configs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DevicePowerPeakShiftProto.day_configs)
+}
+inline void DevicePowerPeakShiftProto::set_day_configs(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  day_configs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DevicePowerPeakShiftProto.day_configs)
+}
+inline std::string* DevicePowerPeakShiftProto::_internal_mutable_day_configs() {
+  _has_bits_[0] |= 0x00000001u;
+  return day_configs_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DevicePowerPeakShiftProto::release_day_configs() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DevicePowerPeakShiftProto.day_configs)
+  if (!_internal_has_day_configs()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return day_configs_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DevicePowerPeakShiftProto::set_allocated_day_configs(std::string* day_configs) {
+  if (day_configs != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  day_configs_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), day_configs);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DevicePowerPeakShiftProto.day_configs)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceBootOnAcProto
+
+// optional bool enabled = 1;
+inline bool DeviceBootOnAcProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceBootOnAcProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceBootOnAcProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceBootOnAcProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceBootOnAcProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceBootOnAcProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceBootOnAcProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DeviceBootOnAcProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceBootOnAcProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceDockMacAddressSourceProto
+
+// optional .enterprise_management.DeviceDockMacAddressSourceProto.Source source = 1;
+inline bool DeviceDockMacAddressSourceProto::_internal_has_source() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceDockMacAddressSourceProto::has_source() const {
+  return _internal_has_source();
+}
+inline void DeviceDockMacAddressSourceProto::clear_source() {
+  source_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto::_internal_source() const {
+  return static_cast< ::enterprise_management::DeviceDockMacAddressSourceProto_Source >(source_);
+}
+inline ::enterprise_management::DeviceDockMacAddressSourceProto_Source DeviceDockMacAddressSourceProto::source() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceDockMacAddressSourceProto.source)
+  return _internal_source();
+}
+inline void DeviceDockMacAddressSourceProto::_internal_set_source(::enterprise_management::DeviceDockMacAddressSourceProto_Source value) {
+  assert(::enterprise_management::DeviceDockMacAddressSourceProto_Source_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  source_ = value;
+}
+inline void DeviceDockMacAddressSourceProto::set_source(::enterprise_management::DeviceDockMacAddressSourceProto_Source value) {
+  _internal_set_source(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceDockMacAddressSourceProto.source)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceAdvancedBatteryChargeModeProto
+
+// optional bool enabled = 1;
+inline bool DeviceAdvancedBatteryChargeModeProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceAdvancedBatteryChargeModeProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceAdvancedBatteryChargeModeProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool DeviceAdvancedBatteryChargeModeProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceAdvancedBatteryChargeModeProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAdvancedBatteryChargeModeProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceAdvancedBatteryChargeModeProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  enabled_ = value;
+}
+inline void DeviceAdvancedBatteryChargeModeProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAdvancedBatteryChargeModeProto.enabled)
+}
+
+// optional string day_configs = 2;
+inline bool DeviceAdvancedBatteryChargeModeProto::_internal_has_day_configs() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceAdvancedBatteryChargeModeProto::has_day_configs() const {
+  return _internal_has_day_configs();
+}
+inline void DeviceAdvancedBatteryChargeModeProto::clear_day_configs() {
+  day_configs_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceAdvancedBatteryChargeModeProto::day_configs() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAdvancedBatteryChargeModeProto.day_configs)
+  return _internal_day_configs();
+}
+inline void DeviceAdvancedBatteryChargeModeProto::set_day_configs(const std::string& value) {
+  _internal_set_day_configs(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAdvancedBatteryChargeModeProto.day_configs)
+}
+inline std::string* DeviceAdvancedBatteryChargeModeProto::mutable_day_configs() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceAdvancedBatteryChargeModeProto.day_configs)
+  return _internal_mutable_day_configs();
+}
+inline const std::string& DeviceAdvancedBatteryChargeModeProto::_internal_day_configs() const {
+  return day_configs_.GetNoArena();
+}
+inline void DeviceAdvancedBatteryChargeModeProto::_internal_set_day_configs(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  day_configs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceAdvancedBatteryChargeModeProto::set_day_configs(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  day_configs_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceAdvancedBatteryChargeModeProto.day_configs)
+}
+inline void DeviceAdvancedBatteryChargeModeProto::set_day_configs(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  day_configs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceAdvancedBatteryChargeModeProto.day_configs)
+}
+inline void DeviceAdvancedBatteryChargeModeProto::set_day_configs(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  day_configs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceAdvancedBatteryChargeModeProto.day_configs)
+}
+inline std::string* DeviceAdvancedBatteryChargeModeProto::_internal_mutable_day_configs() {
+  _has_bits_[0] |= 0x00000001u;
+  return day_configs_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceAdvancedBatteryChargeModeProto::release_day_configs() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceAdvancedBatteryChargeModeProto.day_configs)
+  if (!_internal_has_day_configs()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return day_configs_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceAdvancedBatteryChargeModeProto::set_allocated_day_configs(std::string* day_configs) {
+  if (day_configs != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  day_configs_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), day_configs);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceAdvancedBatteryChargeModeProto.day_configs)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceBatteryChargeModeProto
+
+// optional .enterprise_management.DeviceBatteryChargeModeProto.BatteryChargeMode battery_charge_mode = 1;
+inline bool DeviceBatteryChargeModeProto::_internal_has_battery_charge_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceBatteryChargeModeProto::has_battery_charge_mode() const {
+  return _internal_has_battery_charge_mode();
+}
+inline void DeviceBatteryChargeModeProto::clear_battery_charge_mode() {
+  battery_charge_mode_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::_internal_battery_charge_mode() const {
+  return static_cast< ::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode >(battery_charge_mode_);
+}
+inline ::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode DeviceBatteryChargeModeProto::battery_charge_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceBatteryChargeModeProto.battery_charge_mode)
+  return _internal_battery_charge_mode();
+}
+inline void DeviceBatteryChargeModeProto::_internal_set_battery_charge_mode(::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode value) {
+  assert(::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  battery_charge_mode_ = value;
+}
+inline void DeviceBatteryChargeModeProto::set_battery_charge_mode(::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode value) {
+  _internal_set_battery_charge_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceBatteryChargeModeProto.battery_charge_mode)
+}
+
+// optional int32 custom_charge_start = 2;
+inline bool DeviceBatteryChargeModeProto::_internal_has_custom_charge_start() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceBatteryChargeModeProto::has_custom_charge_start() const {
+  return _internal_has_custom_charge_start();
+}
+inline void DeviceBatteryChargeModeProto::clear_custom_charge_start() {
+  custom_charge_start_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceBatteryChargeModeProto::_internal_custom_charge_start() const {
+  return custom_charge_start_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceBatteryChargeModeProto::custom_charge_start() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceBatteryChargeModeProto.custom_charge_start)
+  return _internal_custom_charge_start();
+}
+inline void DeviceBatteryChargeModeProto::_internal_set_custom_charge_start(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  custom_charge_start_ = value;
+}
+inline void DeviceBatteryChargeModeProto::set_custom_charge_start(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_custom_charge_start(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceBatteryChargeModeProto.custom_charge_start)
+}
+
+// optional int32 custom_charge_stop = 3;
+inline bool DeviceBatteryChargeModeProto::_internal_has_custom_charge_stop() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceBatteryChargeModeProto::has_custom_charge_stop() const {
+  return _internal_has_custom_charge_stop();
+}
+inline void DeviceBatteryChargeModeProto::clear_custom_charge_stop() {
+  custom_charge_stop_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceBatteryChargeModeProto::_internal_custom_charge_stop() const {
+  return custom_charge_stop_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceBatteryChargeModeProto::custom_charge_stop() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceBatteryChargeModeProto.custom_charge_stop)
+  return _internal_custom_charge_stop();
+}
+inline void DeviceBatteryChargeModeProto::_internal_set_custom_charge_stop(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  custom_charge_stop_ = value;
+}
+inline void DeviceBatteryChargeModeProto::set_custom_charge_stop(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_custom_charge_stop(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceBatteryChargeModeProto.custom_charge_stop)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceUsbPowerShareProto
+
+// optional bool enabled = 1;
+inline bool DeviceUsbPowerShareProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceUsbPowerShareProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceUsbPowerShareProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceUsbPowerShareProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceUsbPowerShareProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceUsbPowerShareProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceUsbPowerShareProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DeviceUsbPowerShareProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceUsbPowerShareProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceScheduledUpdateCheckProto
+
+// optional string device_scheduled_update_check_settings = 1;
+inline bool DeviceScheduledUpdateCheckProto::_internal_has_device_scheduled_update_check_settings() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceScheduledUpdateCheckProto::has_device_scheduled_update_check_settings() const {
+  return _internal_has_device_scheduled_update_check_settings();
+}
+inline void DeviceScheduledUpdateCheckProto::clear_device_scheduled_update_check_settings() {
+  device_scheduled_update_check_settings_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceScheduledUpdateCheckProto::device_scheduled_update_check_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceScheduledUpdateCheckProto.device_scheduled_update_check_settings)
+  return _internal_device_scheduled_update_check_settings();
+}
+inline void DeviceScheduledUpdateCheckProto::set_device_scheduled_update_check_settings(const std::string& value) {
+  _internal_set_device_scheduled_update_check_settings(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceScheduledUpdateCheckProto.device_scheduled_update_check_settings)
+}
+inline std::string* DeviceScheduledUpdateCheckProto::mutable_device_scheduled_update_check_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceScheduledUpdateCheckProto.device_scheduled_update_check_settings)
+  return _internal_mutable_device_scheduled_update_check_settings();
+}
+inline const std::string& DeviceScheduledUpdateCheckProto::_internal_device_scheduled_update_check_settings() const {
+  return device_scheduled_update_check_settings_.GetNoArena();
+}
+inline void DeviceScheduledUpdateCheckProto::_internal_set_device_scheduled_update_check_settings(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_scheduled_update_check_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceScheduledUpdateCheckProto::set_device_scheduled_update_check_settings(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_scheduled_update_check_settings_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceScheduledUpdateCheckProto.device_scheduled_update_check_settings)
+}
+inline void DeviceScheduledUpdateCheckProto::set_device_scheduled_update_check_settings(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_scheduled_update_check_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceScheduledUpdateCheckProto.device_scheduled_update_check_settings)
+}
+inline void DeviceScheduledUpdateCheckProto::set_device_scheduled_update_check_settings(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_scheduled_update_check_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceScheduledUpdateCheckProto.device_scheduled_update_check_settings)
+}
+inline std::string* DeviceScheduledUpdateCheckProto::_internal_mutable_device_scheduled_update_check_settings() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_scheduled_update_check_settings_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceScheduledUpdateCheckProto::release_device_scheduled_update_check_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceScheduledUpdateCheckProto.device_scheduled_update_check_settings)
+  if (!_internal_has_device_scheduled_update_check_settings()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_scheduled_update_check_settings_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceScheduledUpdateCheckProto::set_allocated_device_scheduled_update_check_settings(std::string* device_scheduled_update_check_settings) {
+  if (device_scheduled_update_check_settings != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_scheduled_update_check_settings_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_scheduled_update_check_settings);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceScheduledUpdateCheckProto.device_scheduled_update_check_settings)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePowerwashAllowedProto
+
+// optional bool device_powerwash_allowed = 1;
+inline bool DevicePowerwashAllowedProto::_internal_has_device_powerwash_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePowerwashAllowedProto::has_device_powerwash_allowed() const {
+  return _internal_has_device_powerwash_allowed();
+}
+inline void DevicePowerwashAllowedProto::clear_device_powerwash_allowed() {
+  device_powerwash_allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DevicePowerwashAllowedProto::_internal_device_powerwash_allowed() const {
+  return device_powerwash_allowed_;
+}
+inline bool DevicePowerwashAllowedProto::device_powerwash_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePowerwashAllowedProto.device_powerwash_allowed)
+  return _internal_device_powerwash_allowed();
+}
+inline void DevicePowerwashAllowedProto::_internal_set_device_powerwash_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_powerwash_allowed_ = value;
+}
+inline void DevicePowerwashAllowedProto::set_device_powerwash_allowed(bool value) {
+  _internal_set_device_powerwash_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePowerwashAllowedProto.device_powerwash_allowed)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceLoginScreenWebUsbAllowDevicesForUrlsProto
+
+// optional string device_login_screen_webusb_allow_devices_for_urls = 1;
+inline bool DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::_internal_has_device_login_screen_webusb_allow_devices_for_urls() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::has_device_login_screen_webusb_allow_devices_for_urls() const {
+  return _internal_has_device_login_screen_webusb_allow_devices_for_urls();
+}
+inline void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::clear_device_login_screen_webusb_allow_devices_for_urls() {
+  device_login_screen_webusb_allow_devices_for_urls_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::device_login_screen_webusb_allow_devices_for_urls() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto.device_login_screen_webusb_allow_devices_for_urls)
+  return _internal_device_login_screen_webusb_allow_devices_for_urls();
+}
+inline void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::set_device_login_screen_webusb_allow_devices_for_urls(const std::string& value) {
+  _internal_set_device_login_screen_webusb_allow_devices_for_urls(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto.device_login_screen_webusb_allow_devices_for_urls)
+}
+inline std::string* DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::mutable_device_login_screen_webusb_allow_devices_for_urls() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto.device_login_screen_webusb_allow_devices_for_urls)
+  return _internal_mutable_device_login_screen_webusb_allow_devices_for_urls();
+}
+inline const std::string& DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::_internal_device_login_screen_webusb_allow_devices_for_urls() const {
+  return device_login_screen_webusb_allow_devices_for_urls_.GetNoArena();
+}
+inline void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::_internal_set_device_login_screen_webusb_allow_devices_for_urls(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_login_screen_webusb_allow_devices_for_urls_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::set_device_login_screen_webusb_allow_devices_for_urls(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_login_screen_webusb_allow_devices_for_urls_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto.device_login_screen_webusb_allow_devices_for_urls)
+}
+inline void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::set_device_login_screen_webusb_allow_devices_for_urls(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_login_screen_webusb_allow_devices_for_urls_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto.device_login_screen_webusb_allow_devices_for_urls)
+}
+inline void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::set_device_login_screen_webusb_allow_devices_for_urls(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_login_screen_webusb_allow_devices_for_urls_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto.device_login_screen_webusb_allow_devices_for_urls)
+}
+inline std::string* DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::_internal_mutable_device_login_screen_webusb_allow_devices_for_urls() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_login_screen_webusb_allow_devices_for_urls_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::release_device_login_screen_webusb_allow_devices_for_urls() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto.device_login_screen_webusb_allow_devices_for_urls)
+  if (!_internal_has_device_login_screen_webusb_allow_devices_for_urls()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_login_screen_webusb_allow_devices_for_urls_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceLoginScreenWebUsbAllowDevicesForUrlsProto::set_allocated_device_login_screen_webusb_allow_devices_for_urls(std::string* device_login_screen_webusb_allow_devices_for_urls) {
+  if (device_login_screen_webusb_allow_devices_for_urls != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_login_screen_webusb_allow_devices_for_urls_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_login_screen_webusb_allow_devices_for_urls);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto.device_login_screen_webusb_allow_devices_for_urls)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProxySettingsProto
+
+// optional string system_proxy_settings = 1;
+inline bool SystemProxySettingsProto::_internal_has_system_proxy_settings() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProxySettingsProto::has_system_proxy_settings() const {
+  return _internal_has_system_proxy_settings();
+}
+inline void SystemProxySettingsProto::clear_system_proxy_settings() {
+  system_proxy_settings_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProxySettingsProto::system_proxy_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemProxySettingsProto.system_proxy_settings)
+  return _internal_system_proxy_settings();
+}
+inline void SystemProxySettingsProto::set_system_proxy_settings(const std::string& value) {
+  _internal_set_system_proxy_settings(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemProxySettingsProto.system_proxy_settings)
+}
+inline std::string* SystemProxySettingsProto::mutable_system_proxy_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemProxySettingsProto.system_proxy_settings)
+  return _internal_mutable_system_proxy_settings();
+}
+inline const std::string& SystemProxySettingsProto::_internal_system_proxy_settings() const {
+  return system_proxy_settings_.GetNoArena();
+}
+inline void SystemProxySettingsProto::_internal_set_system_proxy_settings(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  system_proxy_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProxySettingsProto::set_system_proxy_settings(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  system_proxy_settings_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemProxySettingsProto.system_proxy_settings)
+}
+inline void SystemProxySettingsProto::set_system_proxy_settings(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  system_proxy_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemProxySettingsProto.system_proxy_settings)
+}
+inline void SystemProxySettingsProto::set_system_proxy_settings(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  system_proxy_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemProxySettingsProto.system_proxy_settings)
+}
+inline std::string* SystemProxySettingsProto::_internal_mutable_system_proxy_settings() {
+  _has_bits_[0] |= 0x00000001u;
+  return system_proxy_settings_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProxySettingsProto::release_system_proxy_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemProxySettingsProto.system_proxy_settings)
+  if (!_internal_has_system_proxy_settings()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return system_proxy_settings_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProxySettingsProto::set_allocated_system_proxy_settings(std::string* system_proxy_settings) {
+  if (system_proxy_settings != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  system_proxy_settings_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), system_proxy_settings);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemProxySettingsProto.system_proxy_settings)
+}
+
+// -------------------------------------------------------------------
+
+// RequiredClientCertificateForDeviceProto
+
+// optional string required_client_certificate_for_device = 1;
+inline bool RequiredClientCertificateForDeviceProto::_internal_has_required_client_certificate_for_device() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RequiredClientCertificateForDeviceProto::has_required_client_certificate_for_device() const {
+  return _internal_has_required_client_certificate_for_device();
+}
+inline void RequiredClientCertificateForDeviceProto::clear_required_client_certificate_for_device() {
+  required_client_certificate_for_device_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& RequiredClientCertificateForDeviceProto::required_client_certificate_for_device() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RequiredClientCertificateForDeviceProto.required_client_certificate_for_device)
+  return _internal_required_client_certificate_for_device();
+}
+inline void RequiredClientCertificateForDeviceProto::set_required_client_certificate_for_device(const std::string& value) {
+  _internal_set_required_client_certificate_for_device(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RequiredClientCertificateForDeviceProto.required_client_certificate_for_device)
+}
+inline std::string* RequiredClientCertificateForDeviceProto::mutable_required_client_certificate_for_device() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RequiredClientCertificateForDeviceProto.required_client_certificate_for_device)
+  return _internal_mutable_required_client_certificate_for_device();
+}
+inline const std::string& RequiredClientCertificateForDeviceProto::_internal_required_client_certificate_for_device() const {
+  return required_client_certificate_for_device_.GetNoArena();
+}
+inline void RequiredClientCertificateForDeviceProto::_internal_set_required_client_certificate_for_device(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  required_client_certificate_for_device_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RequiredClientCertificateForDeviceProto::set_required_client_certificate_for_device(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  required_client_certificate_for_device_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RequiredClientCertificateForDeviceProto.required_client_certificate_for_device)
+}
+inline void RequiredClientCertificateForDeviceProto::set_required_client_certificate_for_device(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  required_client_certificate_for_device_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RequiredClientCertificateForDeviceProto.required_client_certificate_for_device)
+}
+inline void RequiredClientCertificateForDeviceProto::set_required_client_certificate_for_device(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  required_client_certificate_for_device_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RequiredClientCertificateForDeviceProto.required_client_certificate_for_device)
+}
+inline std::string* RequiredClientCertificateForDeviceProto::_internal_mutable_required_client_certificate_for_device() {
+  _has_bits_[0] |= 0x00000001u;
+  return required_client_certificate_for_device_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RequiredClientCertificateForDeviceProto::release_required_client_certificate_for_device() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RequiredClientCertificateForDeviceProto.required_client_certificate_for_device)
+  if (!_internal_has_required_client_certificate_for_device()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return required_client_certificate_for_device_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RequiredClientCertificateForDeviceProto::set_allocated_required_client_certificate_for_device(std::string* required_client_certificate_for_device) {
+  if (required_client_certificate_for_device != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  required_client_certificate_for_device_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), required_client_certificate_for_device);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RequiredClientCertificateForDeviceProto.required_client_certificate_for_device)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceCrostiniArcAdbSideloadingAllowedProto
+
+// optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto.AllowanceMode mode = 1 [default = DISALLOW];
+inline bool DeviceCrostiniArcAdbSideloadingAllowedProto::_internal_has_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceCrostiniArcAdbSideloadingAllowedProto::has_mode() const {
+  return _internal_has_mode();
+}
+inline void DeviceCrostiniArcAdbSideloadingAllowedProto::clear_mode() {
+  mode_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto::_internal_mode() const {
+  return static_cast< ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode >(mode_);
+}
+inline ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode DeviceCrostiniArcAdbSideloadingAllowedProto::mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto.mode)
+  return _internal_mode();
+}
+inline void DeviceCrostiniArcAdbSideloadingAllowedProto::_internal_set_mode(::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode value) {
+  assert(::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  mode_ = value;
+}
+inline void DeviceCrostiniArcAdbSideloadingAllowedProto::set_mode(::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode value) {
+  _internal_set_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto.mode)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceShowLowDiskSpaceNotificationProto
+
+// optional bool device_show_low_disk_space_notification = 1;
+inline bool DeviceShowLowDiskSpaceNotificationProto::_internal_has_device_show_low_disk_space_notification() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceShowLowDiskSpaceNotificationProto::has_device_show_low_disk_space_notification() const {
+  return _internal_has_device_show_low_disk_space_notification();
+}
+inline void DeviceShowLowDiskSpaceNotificationProto::clear_device_show_low_disk_space_notification() {
+  device_show_low_disk_space_notification_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceShowLowDiskSpaceNotificationProto::_internal_device_show_low_disk_space_notification() const {
+  return device_show_low_disk_space_notification_;
+}
+inline bool DeviceShowLowDiskSpaceNotificationProto::device_show_low_disk_space_notification() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceShowLowDiskSpaceNotificationProto.device_show_low_disk_space_notification)
+  return _internal_device_show_low_disk_space_notification();
+}
+inline void DeviceShowLowDiskSpaceNotificationProto::_internal_set_device_show_low_disk_space_notification(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_show_low_disk_space_notification_ = value;
+}
+inline void DeviceShowLowDiskSpaceNotificationProto::set_device_show_low_disk_space_notification(bool value) {
+  _internal_set_device_show_low_disk_space_notification(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceShowLowDiskSpaceNotificationProto.device_show_low_disk_space_notification)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceFamilyLinkAccountsAllowedProto
+
+// optional bool family_link_accounts_allowed = 1 [default = false];
+inline bool DeviceFamilyLinkAccountsAllowedProto::_internal_has_family_link_accounts_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceFamilyLinkAccountsAllowedProto::has_family_link_accounts_allowed() const {
+  return _internal_has_family_link_accounts_allowed();
+}
+inline void DeviceFamilyLinkAccountsAllowedProto::clear_family_link_accounts_allowed() {
+  family_link_accounts_allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceFamilyLinkAccountsAllowedProto::_internal_family_link_accounts_allowed() const {
+  return family_link_accounts_allowed_;
+}
+inline bool DeviceFamilyLinkAccountsAllowedProto::family_link_accounts_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceFamilyLinkAccountsAllowedProto.family_link_accounts_allowed)
+  return _internal_family_link_accounts_allowed();
+}
+inline void DeviceFamilyLinkAccountsAllowedProto::_internal_set_family_link_accounts_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  family_link_accounts_allowed_ = value;
+}
+inline void DeviceFamilyLinkAccountsAllowedProto::set_family_link_accounts_allowed(bool value) {
+  _internal_set_family_link_accounts_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceFamilyLinkAccountsAllowedProto.family_link_accounts_allowed)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceArcDataSnapshotHoursProto
+
+// optional string arc_data_snapshot_hours = 1;
+inline bool DeviceArcDataSnapshotHoursProto::_internal_has_arc_data_snapshot_hours() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceArcDataSnapshotHoursProto::has_arc_data_snapshot_hours() const {
+  return _internal_has_arc_data_snapshot_hours();
+}
+inline void DeviceArcDataSnapshotHoursProto::clear_arc_data_snapshot_hours() {
+  arc_data_snapshot_hours_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceArcDataSnapshotHoursProto::arc_data_snapshot_hours() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceArcDataSnapshotHoursProto.arc_data_snapshot_hours)
+  return _internal_arc_data_snapshot_hours();
+}
+inline void DeviceArcDataSnapshotHoursProto::set_arc_data_snapshot_hours(const std::string& value) {
+  _internal_set_arc_data_snapshot_hours(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceArcDataSnapshotHoursProto.arc_data_snapshot_hours)
+}
+inline std::string* DeviceArcDataSnapshotHoursProto::mutable_arc_data_snapshot_hours() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceArcDataSnapshotHoursProto.arc_data_snapshot_hours)
+  return _internal_mutable_arc_data_snapshot_hours();
+}
+inline const std::string& DeviceArcDataSnapshotHoursProto::_internal_arc_data_snapshot_hours() const {
+  return arc_data_snapshot_hours_.GetNoArena();
+}
+inline void DeviceArcDataSnapshotHoursProto::_internal_set_arc_data_snapshot_hours(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  arc_data_snapshot_hours_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceArcDataSnapshotHoursProto::set_arc_data_snapshot_hours(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  arc_data_snapshot_hours_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceArcDataSnapshotHoursProto.arc_data_snapshot_hours)
+}
+inline void DeviceArcDataSnapshotHoursProto::set_arc_data_snapshot_hours(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  arc_data_snapshot_hours_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceArcDataSnapshotHoursProto.arc_data_snapshot_hours)
+}
+inline void DeviceArcDataSnapshotHoursProto::set_arc_data_snapshot_hours(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  arc_data_snapshot_hours_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceArcDataSnapshotHoursProto.arc_data_snapshot_hours)
+}
+inline std::string* DeviceArcDataSnapshotHoursProto::_internal_mutable_arc_data_snapshot_hours() {
+  _has_bits_[0] |= 0x00000001u;
+  return arc_data_snapshot_hours_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceArcDataSnapshotHoursProto::release_arc_data_snapshot_hours() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceArcDataSnapshotHoursProto.arc_data_snapshot_hours)
+  if (!_internal_has_arc_data_snapshot_hours()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return arc_data_snapshot_hours_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceArcDataSnapshotHoursProto::set_allocated_arc_data_snapshot_hours(std::string* arc_data_snapshot_hours) {
+  if (arc_data_snapshot_hours != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  arc_data_snapshot_hours_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), arc_data_snapshot_hours);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceArcDataSnapshotHoursProto.arc_data_snapshot_hours)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceSystemWideTracingEnabledProto
+
+// optional bool enabled = 1 [default = false];
+inline bool DeviceSystemWideTracingEnabledProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceSystemWideTracingEnabledProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceSystemWideTracingEnabledProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceSystemWideTracingEnabledProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceSystemWideTracingEnabledProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceSystemWideTracingEnabledProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceSystemWideTracingEnabledProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DeviceSystemWideTracingEnabledProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceSystemWideTracingEnabledProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePciPeripheralDataAccessEnabledProto
+
+// optional bool enabled = 1 [default = false];
+inline bool DevicePciPeripheralDataAccessEnabledProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePciPeripheralDataAccessEnabledProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DevicePciPeripheralDataAccessEnabledProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DevicePciPeripheralDataAccessEnabledProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DevicePciPeripheralDataAccessEnabledProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePciPeripheralDataAccessEnabledProto.enabled)
+  return _internal_enabled();
+}
+inline void DevicePciPeripheralDataAccessEnabledProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DevicePciPeripheralDataAccessEnabledProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePciPeripheralDataAccessEnabledProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePciPeripheralDataAccessEnabledProtoV2
+
+// optional bool enabled = 1;
+inline bool DevicePciPeripheralDataAccessEnabledProtoV2::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePciPeripheralDataAccessEnabledProtoV2::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DevicePciPeripheralDataAccessEnabledProtoV2::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DevicePciPeripheralDataAccessEnabledProtoV2::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DevicePciPeripheralDataAccessEnabledProtoV2::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2.enabled)
+  return _internal_enabled();
+}
+inline void DevicePciPeripheralDataAccessEnabledProtoV2::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DevicePciPeripheralDataAccessEnabledProtoV2::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceBorealisAllowedProto
+
+// optional bool allowed = 1 [default = true];
+inline bool DeviceBorealisAllowedProto::_internal_has_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceBorealisAllowedProto::has_allowed() const {
+  return _internal_has_allowed();
+}
+inline void DeviceBorealisAllowedProto::clear_allowed() {
+  allowed_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceBorealisAllowedProto::_internal_allowed() const {
+  return allowed_;
+}
+inline bool DeviceBorealisAllowedProto::allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceBorealisAllowedProto.allowed)
+  return _internal_allowed();
+}
+inline void DeviceBorealisAllowedProto::_internal_set_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  allowed_ = value;
+}
+inline void DeviceBorealisAllowedProto::set_allowed(bool value) {
+  _internal_set_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceBorealisAllowedProto.allowed)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceAllowedBluetoothServicesProto
+
+// repeated string allowlist = 1;
+inline int DeviceAllowedBluetoothServicesProto::_internal_allowlist_size() const {
+  return allowlist_.size();
+}
+inline int DeviceAllowedBluetoothServicesProto::allowlist_size() const {
+  return _internal_allowlist_size();
+}
+inline void DeviceAllowedBluetoothServicesProto::clear_allowlist() {
+  allowlist_.Clear();
+}
+inline std::string* DeviceAllowedBluetoothServicesProto::add_allowlist() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+  return _internal_add_allowlist();
+}
+inline const std::string& DeviceAllowedBluetoothServicesProto::_internal_allowlist(int index) const {
+  return allowlist_.Get(index);
+}
+inline const std::string& DeviceAllowedBluetoothServicesProto::allowlist(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+  return _internal_allowlist(index);
+}
+inline std::string* DeviceAllowedBluetoothServicesProto::mutable_allowlist(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+  return allowlist_.Mutable(index);
+}
+inline void DeviceAllowedBluetoothServicesProto::set_allowlist(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+  allowlist_.Mutable(index)->assign(value);
+}
+inline void DeviceAllowedBluetoothServicesProto::set_allowlist(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+  allowlist_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceAllowedBluetoothServicesProto::set_allowlist(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  allowlist_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+}
+inline void DeviceAllowedBluetoothServicesProto::set_allowlist(int index, const char* value, size_t size) {
+  allowlist_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+}
+inline std::string* DeviceAllowedBluetoothServicesProto::_internal_add_allowlist() {
+  return allowlist_.Add();
+}
+inline void DeviceAllowedBluetoothServicesProto::add_allowlist(const std::string& value) {
+  allowlist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+}
+inline void DeviceAllowedBluetoothServicesProto::add_allowlist(std::string&& value) {
+  allowlist_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+}
+inline void DeviceAllowedBluetoothServicesProto::add_allowlist(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  allowlist_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+}
+inline void DeviceAllowedBluetoothServicesProto::add_allowlist(const char* value, size_t size) {
+  allowlist_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceAllowedBluetoothServicesProto::allowlist() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+  return allowlist_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceAllowedBluetoothServicesProto::mutable_allowlist() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceAllowedBluetoothServicesProto.allowlist)
+  return &allowlist_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceDebugPacketCaptureAllowedProto
+
+// optional bool allowed = 1;
+inline bool DeviceDebugPacketCaptureAllowedProto::_internal_has_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceDebugPacketCaptureAllowedProto::has_allowed() const {
+  return _internal_has_allowed();
+}
+inline void DeviceDebugPacketCaptureAllowedProto::clear_allowed() {
+  allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceDebugPacketCaptureAllowedProto::_internal_allowed() const {
+  return allowed_;
+}
+inline bool DeviceDebugPacketCaptureAllowedProto::allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceDebugPacketCaptureAllowedProto.allowed)
+  return _internal_allowed();
+}
+inline void DeviceDebugPacketCaptureAllowedProto::_internal_set_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  allowed_ = value;
+}
+inline void DeviceDebugPacketCaptureAllowedProto::set_allowed(bool value) {
+  _internal_set_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceDebugPacketCaptureAllowedProto.allowed)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceScheduledRebootProto
+
+// optional string device_scheduled_reboot_settings = 1;
+inline bool DeviceScheduledRebootProto::_internal_has_device_scheduled_reboot_settings() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceScheduledRebootProto::has_device_scheduled_reboot_settings() const {
+  return _internal_has_device_scheduled_reboot_settings();
+}
+inline void DeviceScheduledRebootProto::clear_device_scheduled_reboot_settings() {
+  device_scheduled_reboot_settings_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceScheduledRebootProto::device_scheduled_reboot_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceScheduledRebootProto.device_scheduled_reboot_settings)
+  return _internal_device_scheduled_reboot_settings();
+}
+inline void DeviceScheduledRebootProto::set_device_scheduled_reboot_settings(const std::string& value) {
+  _internal_set_device_scheduled_reboot_settings(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceScheduledRebootProto.device_scheduled_reboot_settings)
+}
+inline std::string* DeviceScheduledRebootProto::mutable_device_scheduled_reboot_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceScheduledRebootProto.device_scheduled_reboot_settings)
+  return _internal_mutable_device_scheduled_reboot_settings();
+}
+inline const std::string& DeviceScheduledRebootProto::_internal_device_scheduled_reboot_settings() const {
+  return device_scheduled_reboot_settings_.GetNoArena();
+}
+inline void DeviceScheduledRebootProto::_internal_set_device_scheduled_reboot_settings(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_scheduled_reboot_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceScheduledRebootProto::set_device_scheduled_reboot_settings(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_scheduled_reboot_settings_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceScheduledRebootProto.device_scheduled_reboot_settings)
+}
+inline void DeviceScheduledRebootProto::set_device_scheduled_reboot_settings(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_scheduled_reboot_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceScheduledRebootProto.device_scheduled_reboot_settings)
+}
+inline void DeviceScheduledRebootProto::set_device_scheduled_reboot_settings(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_scheduled_reboot_settings_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceScheduledRebootProto.device_scheduled_reboot_settings)
+}
+inline std::string* DeviceScheduledRebootProto::_internal_mutable_device_scheduled_reboot_settings() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_scheduled_reboot_settings_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceScheduledRebootProto::release_device_scheduled_reboot_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceScheduledRebootProto.device_scheduled_reboot_settings)
+  if (!_internal_has_device_scheduled_reboot_settings()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_scheduled_reboot_settings_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceScheduledRebootProto::set_allocated_device_scheduled_reboot_settings(std::string* device_scheduled_reboot_settings) {
+  if (device_scheduled_reboot_settings != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_scheduled_reboot_settings_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_scheduled_reboot_settings);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceScheduledRebootProto.device_scheduled_reboot_settings)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceRestrictedManagedGuestSessionEnabledProto
+
+// optional bool enabled = 1 [default = false];
+inline bool DeviceRestrictedManagedGuestSessionEnabledProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceRestrictedManagedGuestSessionEnabledProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceRestrictedManagedGuestSessionEnabledProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceRestrictedManagedGuestSessionEnabledProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceRestrictedManagedGuestSessionEnabledProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceRestrictedManagedGuestSessionEnabledProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DeviceRestrictedManagedGuestSessionEnabledProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceI18nShortcutsEnabledProto
+
+// optional bool enabled = 1 [default = true];
+inline bool DeviceI18nShortcutsEnabledProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceI18nShortcutsEnabledProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceI18nShortcutsEnabledProto::clear_enabled() {
+  enabled_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceI18nShortcutsEnabledProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceI18nShortcutsEnabledProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceI18nShortcutsEnabledProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceI18nShortcutsEnabledProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DeviceI18nShortcutsEnabledProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceI18nShortcutsEnabledProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// RevenDeviceHWDataUsageEnabledProto
+
+// optional bool hardware_data_usage_enabled = 1 [default = false];
+inline bool RevenDeviceHWDataUsageEnabledProto::_internal_has_hardware_data_usage_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RevenDeviceHWDataUsageEnabledProto::has_hardware_data_usage_enabled() const {
+  return _internal_has_hardware_data_usage_enabled();
+}
+inline void RevenDeviceHWDataUsageEnabledProto::clear_hardware_data_usage_enabled() {
+  hardware_data_usage_enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool RevenDeviceHWDataUsageEnabledProto::_internal_hardware_data_usage_enabled() const {
+  return hardware_data_usage_enabled_;
+}
+inline bool RevenDeviceHWDataUsageEnabledProto::hardware_data_usage_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RevenDeviceHWDataUsageEnabledProto.hardware_data_usage_enabled)
+  return _internal_hardware_data_usage_enabled();
+}
+inline void RevenDeviceHWDataUsageEnabledProto::_internal_set_hardware_data_usage_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  hardware_data_usage_enabled_ = value;
+}
+inline void RevenDeviceHWDataUsageEnabledProto::set_hardware_data_usage_enabled(bool value) {
+  _internal_set_hardware_data_usage_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RevenDeviceHWDataUsageEnabledProto.hardware_data_usage_enabled)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceLoginScreenWebUILazyLoadingProto
+
+// optional bool enabled = 1 [default = false];
+inline bool DeviceLoginScreenWebUILazyLoadingProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceLoginScreenWebUILazyLoadingProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void DeviceLoginScreenWebUILazyLoadingProto::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceLoginScreenWebUILazyLoadingProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool DeviceLoginScreenWebUILazyLoadingProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto.enabled)
+  return _internal_enabled();
+}
+inline void DeviceLoginScreenWebUILazyLoadingProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void DeviceLoginScreenWebUILazyLoadingProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceLoginScreenWebUILazyLoadingProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// EncryptedReportingPipelineConfigurationProto
+
+// optional bool enabled = 1 [default = true];
+inline bool EncryptedReportingPipelineConfigurationProto::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool EncryptedReportingPipelineConfigurationProto::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void EncryptedReportingPipelineConfigurationProto::clear_enabled() {
+  enabled_ = true;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool EncryptedReportingPipelineConfigurationProto::_internal_enabled() const {
+  return enabled_;
+}
+inline bool EncryptedReportingPipelineConfigurationProto::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.EncryptedReportingPipelineConfigurationProto.enabled)
+  return _internal_enabled();
+}
+inline void EncryptedReportingPipelineConfigurationProto::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enabled_ = value;
+}
+inline void EncryptedReportingPipelineConfigurationProto::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.EncryptedReportingPipelineConfigurationProto.enabled)
+}
+
+// -------------------------------------------------------------------
+
+// ChromeDeviceSettingsProto
+
+// optional .enterprise_management.DevicePolicyRefreshRateProto device_policy_refresh_rate = 1;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_policy_refresh_rate() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || device_policy_refresh_rate_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_policy_refresh_rate() const {
+  return _internal_has_device_policy_refresh_rate();
+}
+inline void ChromeDeviceSettingsProto::clear_device_policy_refresh_rate() {
+  if (device_policy_refresh_rate_ != nullptr) device_policy_refresh_rate_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::DevicePolicyRefreshRateProto& ChromeDeviceSettingsProto::_internal_device_policy_refresh_rate() const {
+  const ::enterprise_management::DevicePolicyRefreshRateProto* p = device_policy_refresh_rate_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePolicyRefreshRateProto*>(
+      &::enterprise_management::_DevicePolicyRefreshRateProto_default_instance_);
+}
+inline const ::enterprise_management::DevicePolicyRefreshRateProto& ChromeDeviceSettingsProto::device_policy_refresh_rate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_policy_refresh_rate)
+  return _internal_device_policy_refresh_rate();
+}
+inline ::enterprise_management::DevicePolicyRefreshRateProto* ChromeDeviceSettingsProto::release_device_policy_refresh_rate() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_policy_refresh_rate)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::DevicePolicyRefreshRateProto* temp = device_policy_refresh_rate_;
+  device_policy_refresh_rate_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePolicyRefreshRateProto* ChromeDeviceSettingsProto::_internal_mutable_device_policy_refresh_rate() {
+  _has_bits_[0] |= 0x00000001u;
+  if (device_policy_refresh_rate_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePolicyRefreshRateProto>(GetArenaNoVirtual());
+    device_policy_refresh_rate_ = p;
+  }
+  return device_policy_refresh_rate_;
+}
+inline ::enterprise_management::DevicePolicyRefreshRateProto* ChromeDeviceSettingsProto::mutable_device_policy_refresh_rate() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_policy_refresh_rate)
+  return _internal_mutable_device_policy_refresh_rate();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_policy_refresh_rate(::enterprise_management::DevicePolicyRefreshRateProto* device_policy_refresh_rate) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_policy_refresh_rate_;
+  }
+  if (device_policy_refresh_rate) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_policy_refresh_rate = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_policy_refresh_rate, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_policy_refresh_rate_ = device_policy_refresh_rate;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_policy_refresh_rate)
+}
+
+// optional .enterprise_management.UserWhitelistProto user_whitelist = 2;
+inline bool ChromeDeviceSettingsProto::_internal_has_user_whitelist() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || user_whitelist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_user_whitelist() const {
+  return _internal_has_user_whitelist();
+}
+inline void ChromeDeviceSettingsProto::clear_user_whitelist() {
+  if (user_whitelist_ != nullptr) user_whitelist_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::UserWhitelistProto& ChromeDeviceSettingsProto::_internal_user_whitelist() const {
+  const ::enterprise_management::UserWhitelistProto* p = user_whitelist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::UserWhitelistProto*>(
+      &::enterprise_management::_UserWhitelistProto_default_instance_);
+}
+inline const ::enterprise_management::UserWhitelistProto& ChromeDeviceSettingsProto::user_whitelist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.user_whitelist)
+  return _internal_user_whitelist();
+}
+inline ::enterprise_management::UserWhitelistProto* ChromeDeviceSettingsProto::release_user_whitelist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.user_whitelist)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::UserWhitelistProto* temp = user_whitelist_;
+  user_whitelist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::UserWhitelistProto* ChromeDeviceSettingsProto::_internal_mutable_user_whitelist() {
+  _has_bits_[0] |= 0x00000002u;
+  if (user_whitelist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::UserWhitelistProto>(GetArenaNoVirtual());
+    user_whitelist_ = p;
+  }
+  return user_whitelist_;
+}
+inline ::enterprise_management::UserWhitelistProto* ChromeDeviceSettingsProto::mutable_user_whitelist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.user_whitelist)
+  return _internal_mutable_user_whitelist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_user_whitelist(::enterprise_management::UserWhitelistProto* user_whitelist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete user_whitelist_;
+  }
+  if (user_whitelist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      user_whitelist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, user_whitelist, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  user_whitelist_ = user_whitelist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.user_whitelist)
+}
+
+// optional .enterprise_management.GuestModeEnabledProto guest_mode_enabled = 3;
+inline bool ChromeDeviceSettingsProto::_internal_has_guest_mode_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || guest_mode_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_guest_mode_enabled() const {
+  return _internal_has_guest_mode_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_guest_mode_enabled() {
+  if (guest_mode_enabled_ != nullptr) guest_mode_enabled_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::GuestModeEnabledProto& ChromeDeviceSettingsProto::_internal_guest_mode_enabled() const {
+  const ::enterprise_management::GuestModeEnabledProto* p = guest_mode_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::GuestModeEnabledProto*>(
+      &::enterprise_management::_GuestModeEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::GuestModeEnabledProto& ChromeDeviceSettingsProto::guest_mode_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.guest_mode_enabled)
+  return _internal_guest_mode_enabled();
+}
+inline ::enterprise_management::GuestModeEnabledProto* ChromeDeviceSettingsProto::release_guest_mode_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.guest_mode_enabled)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::GuestModeEnabledProto* temp = guest_mode_enabled_;
+  guest_mode_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::GuestModeEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_guest_mode_enabled() {
+  _has_bits_[0] |= 0x00000004u;
+  if (guest_mode_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::GuestModeEnabledProto>(GetArenaNoVirtual());
+    guest_mode_enabled_ = p;
+  }
+  return guest_mode_enabled_;
+}
+inline ::enterprise_management::GuestModeEnabledProto* ChromeDeviceSettingsProto::mutable_guest_mode_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.guest_mode_enabled)
+  return _internal_mutable_guest_mode_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_guest_mode_enabled(::enterprise_management::GuestModeEnabledProto* guest_mode_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete guest_mode_enabled_;
+  }
+  if (guest_mode_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      guest_mode_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, guest_mode_enabled, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  guest_mode_enabled_ = guest_mode_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.guest_mode_enabled)
+}
+
+// optional .enterprise_management.OBSOLETE_DeviceProxySettingsProto device_proxy_settings = 4 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_device_proxy_settings() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || device_proxy_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_proxy_settings() const {
+  return _internal_has_device_proxy_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_device_proxy_settings() {
+  if (device_proxy_settings_ != nullptr) device_proxy_settings_->Clear();
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const ::enterprise_management::OBSOLETE_DeviceProxySettingsProto& ChromeDeviceSettingsProto::_internal_device_proxy_settings() const {
+  const ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* p = device_proxy_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_DeviceProxySettingsProto*>(
+      &::enterprise_management::_OBSOLETE_DeviceProxySettingsProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_DeviceProxySettingsProto& ChromeDeviceSettingsProto::device_proxy_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_proxy_settings)
+  return _internal_device_proxy_settings();
+}
+inline ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* ChromeDeviceSettingsProto::release_device_proxy_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_proxy_settings)
+  _has_bits_[0] &= ~0x00000008u;
+  ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* temp = device_proxy_settings_;
+  device_proxy_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* ChromeDeviceSettingsProto::_internal_mutable_device_proxy_settings() {
+  _has_bits_[0] |= 0x00000008u;
+  if (device_proxy_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_DeviceProxySettingsProto>(GetArenaNoVirtual());
+    device_proxy_settings_ = p;
+  }
+  return device_proxy_settings_;
+}
+inline ::enterprise_management::OBSOLETE_DeviceProxySettingsProto* ChromeDeviceSettingsProto::mutable_device_proxy_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_proxy_settings)
+  return _internal_mutable_device_proxy_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_proxy_settings(::enterprise_management::OBSOLETE_DeviceProxySettingsProto* device_proxy_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_proxy_settings_;
+  }
+  if (device_proxy_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_proxy_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_proxy_settings, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  device_proxy_settings_ = device_proxy_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_proxy_settings)
+}
+
+// optional .enterprise_management.CameraEnabledProto camera_enabled = 5;
+inline bool ChromeDeviceSettingsProto::_internal_has_camera_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || camera_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_camera_enabled() const {
+  return _internal_has_camera_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_camera_enabled() {
+  if (camera_enabled_ != nullptr) camera_enabled_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::enterprise_management::CameraEnabledProto& ChromeDeviceSettingsProto::_internal_camera_enabled() const {
+  const ::enterprise_management::CameraEnabledProto* p = camera_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CameraEnabledProto*>(
+      &::enterprise_management::_CameraEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::CameraEnabledProto& ChromeDeviceSettingsProto::camera_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.camera_enabled)
+  return _internal_camera_enabled();
+}
+inline ::enterprise_management::CameraEnabledProto* ChromeDeviceSettingsProto::release_camera_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.camera_enabled)
+  _has_bits_[0] &= ~0x00000010u;
+  ::enterprise_management::CameraEnabledProto* temp = camera_enabled_;
+  camera_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CameraEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_camera_enabled() {
+  _has_bits_[0] |= 0x00000010u;
+  if (camera_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CameraEnabledProto>(GetArenaNoVirtual());
+    camera_enabled_ = p;
+  }
+  return camera_enabled_;
+}
+inline ::enterprise_management::CameraEnabledProto* ChromeDeviceSettingsProto::mutable_camera_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.camera_enabled)
+  return _internal_mutable_camera_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_camera_enabled(::enterprise_management::CameraEnabledProto* camera_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete camera_enabled_;
+  }
+  if (camera_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      camera_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, camera_enabled, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  camera_enabled_ = camera_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.camera_enabled)
+}
+
+// optional .enterprise_management.ShowUserNamesOnSigninProto show_user_names = 6;
+inline bool ChromeDeviceSettingsProto::_internal_has_show_user_names() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || show_user_names_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_show_user_names() const {
+  return _internal_has_show_user_names();
+}
+inline void ChromeDeviceSettingsProto::clear_show_user_names() {
+  if (show_user_names_ != nullptr) show_user_names_->Clear();
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const ::enterprise_management::ShowUserNamesOnSigninProto& ChromeDeviceSettingsProto::_internal_show_user_names() const {
+  const ::enterprise_management::ShowUserNamesOnSigninProto* p = show_user_names_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ShowUserNamesOnSigninProto*>(
+      &::enterprise_management::_ShowUserNamesOnSigninProto_default_instance_);
+}
+inline const ::enterprise_management::ShowUserNamesOnSigninProto& ChromeDeviceSettingsProto::show_user_names() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.show_user_names)
+  return _internal_show_user_names();
+}
+inline ::enterprise_management::ShowUserNamesOnSigninProto* ChromeDeviceSettingsProto::release_show_user_names() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.show_user_names)
+  _has_bits_[0] &= ~0x00000020u;
+  ::enterprise_management::ShowUserNamesOnSigninProto* temp = show_user_names_;
+  show_user_names_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ShowUserNamesOnSigninProto* ChromeDeviceSettingsProto::_internal_mutable_show_user_names() {
+  _has_bits_[0] |= 0x00000020u;
+  if (show_user_names_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ShowUserNamesOnSigninProto>(GetArenaNoVirtual());
+    show_user_names_ = p;
+  }
+  return show_user_names_;
+}
+inline ::enterprise_management::ShowUserNamesOnSigninProto* ChromeDeviceSettingsProto::mutable_show_user_names() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.show_user_names)
+  return _internal_mutable_show_user_names();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_show_user_names(::enterprise_management::ShowUserNamesOnSigninProto* show_user_names) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete show_user_names_;
+  }
+  if (show_user_names) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      show_user_names = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, show_user_names, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  show_user_names_ = show_user_names;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.show_user_names)
+}
+
+// optional .enterprise_management.DataRoamingEnabledProto data_roaming_enabled = 7;
+inline bool ChromeDeviceSettingsProto::_internal_has_data_roaming_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || data_roaming_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_data_roaming_enabled() const {
+  return _internal_has_data_roaming_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_data_roaming_enabled() {
+  if (data_roaming_enabled_ != nullptr) data_roaming_enabled_->Clear();
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const ::enterprise_management::DataRoamingEnabledProto& ChromeDeviceSettingsProto::_internal_data_roaming_enabled() const {
+  const ::enterprise_management::DataRoamingEnabledProto* p = data_roaming_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DataRoamingEnabledProto*>(
+      &::enterprise_management::_DataRoamingEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DataRoamingEnabledProto& ChromeDeviceSettingsProto::data_roaming_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.data_roaming_enabled)
+  return _internal_data_roaming_enabled();
+}
+inline ::enterprise_management::DataRoamingEnabledProto* ChromeDeviceSettingsProto::release_data_roaming_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.data_roaming_enabled)
+  _has_bits_[0] &= ~0x00000040u;
+  ::enterprise_management::DataRoamingEnabledProto* temp = data_roaming_enabled_;
+  data_roaming_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DataRoamingEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_data_roaming_enabled() {
+  _has_bits_[0] |= 0x00000040u;
+  if (data_roaming_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DataRoamingEnabledProto>(GetArenaNoVirtual());
+    data_roaming_enabled_ = p;
+  }
+  return data_roaming_enabled_;
+}
+inline ::enterprise_management::DataRoamingEnabledProto* ChromeDeviceSettingsProto::mutable_data_roaming_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.data_roaming_enabled)
+  return _internal_mutable_data_roaming_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_data_roaming_enabled(::enterprise_management::DataRoamingEnabledProto* data_roaming_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete data_roaming_enabled_;
+  }
+  if (data_roaming_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      data_roaming_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, data_roaming_enabled, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  data_roaming_enabled_ = data_roaming_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.data_roaming_enabled)
+}
+
+// optional .enterprise_management.AllowNewUsersProto allow_new_users = 8;
+inline bool ChromeDeviceSettingsProto::_internal_has_allow_new_users() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || allow_new_users_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_allow_new_users() const {
+  return _internal_has_allow_new_users();
+}
+inline void ChromeDeviceSettingsProto::clear_allow_new_users() {
+  if (allow_new_users_ != nullptr) allow_new_users_->Clear();
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const ::enterprise_management::AllowNewUsersProto& ChromeDeviceSettingsProto::_internal_allow_new_users() const {
+  const ::enterprise_management::AllowNewUsersProto* p = allow_new_users_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AllowNewUsersProto*>(
+      &::enterprise_management::_AllowNewUsersProto_default_instance_);
+}
+inline const ::enterprise_management::AllowNewUsersProto& ChromeDeviceSettingsProto::allow_new_users() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.allow_new_users)
+  return _internal_allow_new_users();
+}
+inline ::enterprise_management::AllowNewUsersProto* ChromeDeviceSettingsProto::release_allow_new_users() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.allow_new_users)
+  _has_bits_[0] &= ~0x00000080u;
+  ::enterprise_management::AllowNewUsersProto* temp = allow_new_users_;
+  allow_new_users_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AllowNewUsersProto* ChromeDeviceSettingsProto::_internal_mutable_allow_new_users() {
+  _has_bits_[0] |= 0x00000080u;
+  if (allow_new_users_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AllowNewUsersProto>(GetArenaNoVirtual());
+    allow_new_users_ = p;
+  }
+  return allow_new_users_;
+}
+inline ::enterprise_management::AllowNewUsersProto* ChromeDeviceSettingsProto::mutable_allow_new_users() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.allow_new_users)
+  return _internal_mutable_allow_new_users();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_allow_new_users(::enterprise_management::AllowNewUsersProto* allow_new_users) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete allow_new_users_;
+  }
+  if (allow_new_users) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      allow_new_users = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, allow_new_users, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  allow_new_users_ = allow_new_users;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.allow_new_users)
+}
+
+// optional .enterprise_management.MetricsEnabledProto metrics_enabled = 9;
+inline bool ChromeDeviceSettingsProto::_internal_has_metrics_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || metrics_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_metrics_enabled() const {
+  return _internal_has_metrics_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_metrics_enabled() {
+  if (metrics_enabled_ != nullptr) metrics_enabled_->Clear();
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const ::enterprise_management::MetricsEnabledProto& ChromeDeviceSettingsProto::_internal_metrics_enabled() const {
+  const ::enterprise_management::MetricsEnabledProto* p = metrics_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::MetricsEnabledProto*>(
+      &::enterprise_management::_MetricsEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::MetricsEnabledProto& ChromeDeviceSettingsProto::metrics_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.metrics_enabled)
+  return _internal_metrics_enabled();
+}
+inline ::enterprise_management::MetricsEnabledProto* ChromeDeviceSettingsProto::release_metrics_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.metrics_enabled)
+  _has_bits_[0] &= ~0x00000100u;
+  ::enterprise_management::MetricsEnabledProto* temp = metrics_enabled_;
+  metrics_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::MetricsEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_metrics_enabled() {
+  _has_bits_[0] |= 0x00000100u;
+  if (metrics_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::MetricsEnabledProto>(GetArenaNoVirtual());
+    metrics_enabled_ = p;
+  }
+  return metrics_enabled_;
+}
+inline ::enterprise_management::MetricsEnabledProto* ChromeDeviceSettingsProto::mutable_metrics_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.metrics_enabled)
+  return _internal_mutable_metrics_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_metrics_enabled(::enterprise_management::MetricsEnabledProto* metrics_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete metrics_enabled_;
+  }
+  if (metrics_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      metrics_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, metrics_enabled, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  metrics_enabled_ = metrics_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.metrics_enabled)
+}
+
+// optional .enterprise_management.ReleaseChannelProto release_channel = 10;
+inline bool ChromeDeviceSettingsProto::_internal_has_release_channel() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || release_channel_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_release_channel() const {
+  return _internal_has_release_channel();
+}
+inline void ChromeDeviceSettingsProto::clear_release_channel() {
+  if (release_channel_ != nullptr) release_channel_->Clear();
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline const ::enterprise_management::ReleaseChannelProto& ChromeDeviceSettingsProto::_internal_release_channel() const {
+  const ::enterprise_management::ReleaseChannelProto* p = release_channel_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ReleaseChannelProto*>(
+      &::enterprise_management::_ReleaseChannelProto_default_instance_);
+}
+inline const ::enterprise_management::ReleaseChannelProto& ChromeDeviceSettingsProto::release_channel() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.release_channel)
+  return _internal_release_channel();
+}
+inline ::enterprise_management::ReleaseChannelProto* ChromeDeviceSettingsProto::release_release_channel() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.release_channel)
+  _has_bits_[0] &= ~0x00000200u;
+  ::enterprise_management::ReleaseChannelProto* temp = release_channel_;
+  release_channel_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ReleaseChannelProto* ChromeDeviceSettingsProto::_internal_mutable_release_channel() {
+  _has_bits_[0] |= 0x00000200u;
+  if (release_channel_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ReleaseChannelProto>(GetArenaNoVirtual());
+    release_channel_ = p;
+  }
+  return release_channel_;
+}
+inline ::enterprise_management::ReleaseChannelProto* ChromeDeviceSettingsProto::mutable_release_channel() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.release_channel)
+  return _internal_mutable_release_channel();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_release_channel(::enterprise_management::ReleaseChannelProto* release_channel) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete release_channel_;
+  }
+  if (release_channel) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      release_channel = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, release_channel, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  release_channel_ = release_channel;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.release_channel)
+}
+
+// optional .enterprise_management.DeviceOpenNetworkConfigurationProto open_network_configuration = 11;
+inline bool ChromeDeviceSettingsProto::_internal_has_open_network_configuration() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || open_network_configuration_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_open_network_configuration() const {
+  return _internal_has_open_network_configuration();
+}
+inline void ChromeDeviceSettingsProto::clear_open_network_configuration() {
+  if (open_network_configuration_ != nullptr) open_network_configuration_->Clear();
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline const ::enterprise_management::DeviceOpenNetworkConfigurationProto& ChromeDeviceSettingsProto::_internal_open_network_configuration() const {
+  const ::enterprise_management::DeviceOpenNetworkConfigurationProto* p = open_network_configuration_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceOpenNetworkConfigurationProto*>(
+      &::enterprise_management::_DeviceOpenNetworkConfigurationProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceOpenNetworkConfigurationProto& ChromeDeviceSettingsProto::open_network_configuration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.open_network_configuration)
+  return _internal_open_network_configuration();
+}
+inline ::enterprise_management::DeviceOpenNetworkConfigurationProto* ChromeDeviceSettingsProto::release_open_network_configuration() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.open_network_configuration)
+  _has_bits_[0] &= ~0x00000400u;
+  ::enterprise_management::DeviceOpenNetworkConfigurationProto* temp = open_network_configuration_;
+  open_network_configuration_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceOpenNetworkConfigurationProto* ChromeDeviceSettingsProto::_internal_mutable_open_network_configuration() {
+  _has_bits_[0] |= 0x00000400u;
+  if (open_network_configuration_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceOpenNetworkConfigurationProto>(GetArenaNoVirtual());
+    open_network_configuration_ = p;
+  }
+  return open_network_configuration_;
+}
+inline ::enterprise_management::DeviceOpenNetworkConfigurationProto* ChromeDeviceSettingsProto::mutable_open_network_configuration() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.open_network_configuration)
+  return _internal_mutable_open_network_configuration();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_open_network_configuration(::enterprise_management::DeviceOpenNetworkConfigurationProto* open_network_configuration) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete open_network_configuration_;
+  }
+  if (open_network_configuration) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      open_network_configuration = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, open_network_configuration, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000400u;
+  } else {
+    _has_bits_[0] &= ~0x00000400u;
+  }
+  open_network_configuration_ = open_network_configuration;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.open_network_configuration)
+}
+
+// optional .enterprise_management.DeviceReportingProto device_reporting = 12;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_reporting() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || device_reporting_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_reporting() const {
+  return _internal_has_device_reporting();
+}
+inline void ChromeDeviceSettingsProto::clear_device_reporting() {
+  if (device_reporting_ != nullptr) device_reporting_->Clear();
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline const ::enterprise_management::DeviceReportingProto& ChromeDeviceSettingsProto::_internal_device_reporting() const {
+  const ::enterprise_management::DeviceReportingProto* p = device_reporting_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceReportingProto*>(
+      &::enterprise_management::_DeviceReportingProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceReportingProto& ChromeDeviceSettingsProto::device_reporting() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_reporting)
+  return _internal_device_reporting();
+}
+inline ::enterprise_management::DeviceReportingProto* ChromeDeviceSettingsProto::release_device_reporting() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_reporting)
+  _has_bits_[0] &= ~0x00000800u;
+  ::enterprise_management::DeviceReportingProto* temp = device_reporting_;
+  device_reporting_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceReportingProto* ChromeDeviceSettingsProto::_internal_mutable_device_reporting() {
+  _has_bits_[0] |= 0x00000800u;
+  if (device_reporting_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceReportingProto>(GetArenaNoVirtual());
+    device_reporting_ = p;
+  }
+  return device_reporting_;
+}
+inline ::enterprise_management::DeviceReportingProto* ChromeDeviceSettingsProto::mutable_device_reporting() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_reporting)
+  return _internal_mutable_device_reporting();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_reporting(::enterprise_management::DeviceReportingProto* device_reporting) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_reporting_;
+  }
+  if (device_reporting) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_reporting = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_reporting, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000800u;
+  } else {
+    _has_bits_[0] &= ~0x00000800u;
+  }
+  device_reporting_ = device_reporting;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_reporting)
+}
+
+// optional .enterprise_management.EphemeralUsersEnabledProto ephemeral_users_enabled = 13;
+inline bool ChromeDeviceSettingsProto::_internal_has_ephemeral_users_enabled() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  PROTOBUF_ASSUME(!value || ephemeral_users_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_ephemeral_users_enabled() const {
+  return _internal_has_ephemeral_users_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_ephemeral_users_enabled() {
+  if (ephemeral_users_enabled_ != nullptr) ephemeral_users_enabled_->Clear();
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline const ::enterprise_management::EphemeralUsersEnabledProto& ChromeDeviceSettingsProto::_internal_ephemeral_users_enabled() const {
+  const ::enterprise_management::EphemeralUsersEnabledProto* p = ephemeral_users_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::EphemeralUsersEnabledProto*>(
+      &::enterprise_management::_EphemeralUsersEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::EphemeralUsersEnabledProto& ChromeDeviceSettingsProto::ephemeral_users_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.ephemeral_users_enabled)
+  return _internal_ephemeral_users_enabled();
+}
+inline ::enterprise_management::EphemeralUsersEnabledProto* ChromeDeviceSettingsProto::release_ephemeral_users_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.ephemeral_users_enabled)
+  _has_bits_[0] &= ~0x00001000u;
+  ::enterprise_management::EphemeralUsersEnabledProto* temp = ephemeral_users_enabled_;
+  ephemeral_users_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::EphemeralUsersEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_ephemeral_users_enabled() {
+  _has_bits_[0] |= 0x00001000u;
+  if (ephemeral_users_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::EphemeralUsersEnabledProto>(GetArenaNoVirtual());
+    ephemeral_users_enabled_ = p;
+  }
+  return ephemeral_users_enabled_;
+}
+inline ::enterprise_management::EphemeralUsersEnabledProto* ChromeDeviceSettingsProto::mutable_ephemeral_users_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.ephemeral_users_enabled)
+  return _internal_mutable_ephemeral_users_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_ephemeral_users_enabled(::enterprise_management::EphemeralUsersEnabledProto* ephemeral_users_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete ephemeral_users_enabled_;
+  }
+  if (ephemeral_users_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      ephemeral_users_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, ephemeral_users_enabled, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00001000u;
+  } else {
+    _has_bits_[0] &= ~0x00001000u;
+  }
+  ephemeral_users_enabled_ = ephemeral_users_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.ephemeral_users_enabled)
+}
+
+// optional .enterprise_management.OBSOLETE_AppPackProto app_pack = 14 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_app_pack() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  PROTOBUF_ASSUME(!value || app_pack_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_app_pack() const {
+  return _internal_has_app_pack();
+}
+inline void ChromeDeviceSettingsProto::clear_app_pack() {
+  if (app_pack_ != nullptr) app_pack_->Clear();
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline const ::enterprise_management::OBSOLETE_AppPackProto& ChromeDeviceSettingsProto::_internal_app_pack() const {
+  const ::enterprise_management::OBSOLETE_AppPackProto* p = app_pack_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_AppPackProto*>(
+      &::enterprise_management::_OBSOLETE_AppPackProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_AppPackProto& ChromeDeviceSettingsProto::app_pack() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.app_pack)
+  return _internal_app_pack();
+}
+inline ::enterprise_management::OBSOLETE_AppPackProto* ChromeDeviceSettingsProto::release_app_pack() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.app_pack)
+  _has_bits_[0] &= ~0x00002000u;
+  ::enterprise_management::OBSOLETE_AppPackProto* temp = app_pack_;
+  app_pack_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_AppPackProto* ChromeDeviceSettingsProto::_internal_mutable_app_pack() {
+  _has_bits_[0] |= 0x00002000u;
+  if (app_pack_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_AppPackProto>(GetArenaNoVirtual());
+    app_pack_ = p;
+  }
+  return app_pack_;
+}
+inline ::enterprise_management::OBSOLETE_AppPackProto* ChromeDeviceSettingsProto::mutable_app_pack() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.app_pack)
+  return _internal_mutable_app_pack();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_app_pack(::enterprise_management::OBSOLETE_AppPackProto* app_pack) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete app_pack_;
+  }
+  if (app_pack) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      app_pack = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, app_pack, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00002000u;
+  } else {
+    _has_bits_[0] &= ~0x00002000u;
+  }
+  app_pack_ = app_pack;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.app_pack)
+}
+
+// optional .enterprise_management.OBSOLETE_ForcedLogoutTimeoutsProto forced_logout_timeouts = 15 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_forced_logout_timeouts() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  PROTOBUF_ASSUME(!value || forced_logout_timeouts_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_forced_logout_timeouts() const {
+  return _internal_has_forced_logout_timeouts();
+}
+inline void ChromeDeviceSettingsProto::clear_forced_logout_timeouts() {
+  if (forced_logout_timeouts_ != nullptr) forced_logout_timeouts_->Clear();
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline const ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto& ChromeDeviceSettingsProto::_internal_forced_logout_timeouts() const {
+  const ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* p = forced_logout_timeouts_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto*>(
+      &::enterprise_management::_OBSOLETE_ForcedLogoutTimeoutsProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto& ChromeDeviceSettingsProto::forced_logout_timeouts() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.forced_logout_timeouts)
+  return _internal_forced_logout_timeouts();
+}
+inline ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* ChromeDeviceSettingsProto::release_forced_logout_timeouts() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.forced_logout_timeouts)
+  _has_bits_[0] &= ~0x00004000u;
+  ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* temp = forced_logout_timeouts_;
+  forced_logout_timeouts_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* ChromeDeviceSettingsProto::_internal_mutable_forced_logout_timeouts() {
+  _has_bits_[0] |= 0x00004000u;
+  if (forced_logout_timeouts_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto>(GetArenaNoVirtual());
+    forced_logout_timeouts_ = p;
+  }
+  return forced_logout_timeouts_;
+}
+inline ::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* ChromeDeviceSettingsProto::mutable_forced_logout_timeouts() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.forced_logout_timeouts)
+  return _internal_mutable_forced_logout_timeouts();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_forced_logout_timeouts(::enterprise_management::OBSOLETE_ForcedLogoutTimeoutsProto* forced_logout_timeouts) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete forced_logout_timeouts_;
+  }
+  if (forced_logout_timeouts) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      forced_logout_timeouts = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, forced_logout_timeouts, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00004000u;
+  } else {
+    _has_bits_[0] &= ~0x00004000u;
+  }
+  forced_logout_timeouts_ = forced_logout_timeouts;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.forced_logout_timeouts)
+}
+
+// optional .enterprise_management.OBSOLETE_ScreenSaverProto login_screen_saver = 16 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_login_screen_saver() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_saver_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_screen_saver() const {
+  return _internal_has_login_screen_saver();
+}
+inline void ChromeDeviceSettingsProto::clear_login_screen_saver() {
+  if (login_screen_saver_ != nullptr) login_screen_saver_->Clear();
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline const ::enterprise_management::OBSOLETE_ScreenSaverProto& ChromeDeviceSettingsProto::_internal_login_screen_saver() const {
+  const ::enterprise_management::OBSOLETE_ScreenSaverProto* p = login_screen_saver_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_ScreenSaverProto*>(
+      &::enterprise_management::_OBSOLETE_ScreenSaverProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_ScreenSaverProto& ChromeDeviceSettingsProto::login_screen_saver() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_screen_saver)
+  return _internal_login_screen_saver();
+}
+inline ::enterprise_management::OBSOLETE_ScreenSaverProto* ChromeDeviceSettingsProto::release_login_screen_saver() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_screen_saver)
+  _has_bits_[0] &= ~0x00008000u;
+  ::enterprise_management::OBSOLETE_ScreenSaverProto* temp = login_screen_saver_;
+  login_screen_saver_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_ScreenSaverProto* ChromeDeviceSettingsProto::_internal_mutable_login_screen_saver() {
+  _has_bits_[0] |= 0x00008000u;
+  if (login_screen_saver_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_ScreenSaverProto>(GetArenaNoVirtual());
+    login_screen_saver_ = p;
+  }
+  return login_screen_saver_;
+}
+inline ::enterprise_management::OBSOLETE_ScreenSaverProto* ChromeDeviceSettingsProto::mutable_login_screen_saver() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_screen_saver)
+  return _internal_mutable_login_screen_saver();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_screen_saver(::enterprise_management::OBSOLETE_ScreenSaverProto* login_screen_saver) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete login_screen_saver_;
+  }
+  if (login_screen_saver) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_saver = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_saver, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00008000u;
+  } else {
+    _has_bits_[0] &= ~0x00008000u;
+  }
+  login_screen_saver_ = login_screen_saver;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_screen_saver)
+}
+
+// optional .enterprise_management.AutoUpdateSettingsProto auto_update_settings = 17;
+inline bool ChromeDeviceSettingsProto::_internal_has_auto_update_settings() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  PROTOBUF_ASSUME(!value || auto_update_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_auto_update_settings() const {
+  return _internal_has_auto_update_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_auto_update_settings() {
+  if (auto_update_settings_ != nullptr) auto_update_settings_->Clear();
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline const ::enterprise_management::AutoUpdateSettingsProto& ChromeDeviceSettingsProto::_internal_auto_update_settings() const {
+  const ::enterprise_management::AutoUpdateSettingsProto* p = auto_update_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AutoUpdateSettingsProto*>(
+      &::enterprise_management::_AutoUpdateSettingsProto_default_instance_);
+}
+inline const ::enterprise_management::AutoUpdateSettingsProto& ChromeDeviceSettingsProto::auto_update_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.auto_update_settings)
+  return _internal_auto_update_settings();
+}
+inline ::enterprise_management::AutoUpdateSettingsProto* ChromeDeviceSettingsProto::release_auto_update_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.auto_update_settings)
+  _has_bits_[0] &= ~0x00010000u;
+  ::enterprise_management::AutoUpdateSettingsProto* temp = auto_update_settings_;
+  auto_update_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AutoUpdateSettingsProto* ChromeDeviceSettingsProto::_internal_mutable_auto_update_settings() {
+  _has_bits_[0] |= 0x00010000u;
+  if (auto_update_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AutoUpdateSettingsProto>(GetArenaNoVirtual());
+    auto_update_settings_ = p;
+  }
+  return auto_update_settings_;
+}
+inline ::enterprise_management::AutoUpdateSettingsProto* ChromeDeviceSettingsProto::mutable_auto_update_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.auto_update_settings)
+  return _internal_mutable_auto_update_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_auto_update_settings(::enterprise_management::AutoUpdateSettingsProto* auto_update_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete auto_update_settings_;
+  }
+  if (auto_update_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      auto_update_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, auto_update_settings, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00010000u;
+  } else {
+    _has_bits_[0] &= ~0x00010000u;
+  }
+  auto_update_settings_ = auto_update_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.auto_update_settings)
+}
+
+// optional .enterprise_management.OBSOLETE_StartUpUrlsProto start_up_urls = 18 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_start_up_urls() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  PROTOBUF_ASSUME(!value || start_up_urls_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_start_up_urls() const {
+  return _internal_has_start_up_urls();
+}
+inline void ChromeDeviceSettingsProto::clear_start_up_urls() {
+  if (start_up_urls_ != nullptr) start_up_urls_->Clear();
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline const ::enterprise_management::OBSOLETE_StartUpUrlsProto& ChromeDeviceSettingsProto::_internal_start_up_urls() const {
+  const ::enterprise_management::OBSOLETE_StartUpUrlsProto* p = start_up_urls_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_StartUpUrlsProto*>(
+      &::enterprise_management::_OBSOLETE_StartUpUrlsProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_StartUpUrlsProto& ChromeDeviceSettingsProto::start_up_urls() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.start_up_urls)
+  return _internal_start_up_urls();
+}
+inline ::enterprise_management::OBSOLETE_StartUpUrlsProto* ChromeDeviceSettingsProto::release_start_up_urls() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.start_up_urls)
+  _has_bits_[0] &= ~0x00020000u;
+  ::enterprise_management::OBSOLETE_StartUpUrlsProto* temp = start_up_urls_;
+  start_up_urls_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_StartUpUrlsProto* ChromeDeviceSettingsProto::_internal_mutable_start_up_urls() {
+  _has_bits_[0] |= 0x00020000u;
+  if (start_up_urls_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_StartUpUrlsProto>(GetArenaNoVirtual());
+    start_up_urls_ = p;
+  }
+  return start_up_urls_;
+}
+inline ::enterprise_management::OBSOLETE_StartUpUrlsProto* ChromeDeviceSettingsProto::mutable_start_up_urls() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.start_up_urls)
+  return _internal_mutable_start_up_urls();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_start_up_urls(::enterprise_management::OBSOLETE_StartUpUrlsProto* start_up_urls) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete start_up_urls_;
+  }
+  if (start_up_urls) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      start_up_urls = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, start_up_urls, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00020000u;
+  } else {
+    _has_bits_[0] &= ~0x00020000u;
+  }
+  start_up_urls_ = start_up_urls;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.start_up_urls)
+}
+
+// optional .enterprise_management.OBSOLETE_PinnedAppsProto pinned_apps = 19 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_pinned_apps() const {
+  bool value = (_has_bits_[0] & 0x00040000u) != 0;
+  PROTOBUF_ASSUME(!value || pinned_apps_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_pinned_apps() const {
+  return _internal_has_pinned_apps();
+}
+inline void ChromeDeviceSettingsProto::clear_pinned_apps() {
+  if (pinned_apps_ != nullptr) pinned_apps_->Clear();
+  _has_bits_[0] &= ~0x00040000u;
+}
+inline const ::enterprise_management::OBSOLETE_PinnedAppsProto& ChromeDeviceSettingsProto::_internal_pinned_apps() const {
+  const ::enterprise_management::OBSOLETE_PinnedAppsProto* p = pinned_apps_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_PinnedAppsProto*>(
+      &::enterprise_management::_OBSOLETE_PinnedAppsProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_PinnedAppsProto& ChromeDeviceSettingsProto::pinned_apps() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.pinned_apps)
+  return _internal_pinned_apps();
+}
+inline ::enterprise_management::OBSOLETE_PinnedAppsProto* ChromeDeviceSettingsProto::release_pinned_apps() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.pinned_apps)
+  _has_bits_[0] &= ~0x00040000u;
+  ::enterprise_management::OBSOLETE_PinnedAppsProto* temp = pinned_apps_;
+  pinned_apps_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_PinnedAppsProto* ChromeDeviceSettingsProto::_internal_mutable_pinned_apps() {
+  _has_bits_[0] |= 0x00040000u;
+  if (pinned_apps_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_PinnedAppsProto>(GetArenaNoVirtual());
+    pinned_apps_ = p;
+  }
+  return pinned_apps_;
+}
+inline ::enterprise_management::OBSOLETE_PinnedAppsProto* ChromeDeviceSettingsProto::mutable_pinned_apps() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.pinned_apps)
+  return _internal_mutable_pinned_apps();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_pinned_apps(::enterprise_management::OBSOLETE_PinnedAppsProto* pinned_apps) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete pinned_apps_;
+  }
+  if (pinned_apps) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      pinned_apps = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, pinned_apps, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00040000u;
+  } else {
+    _has_bits_[0] &= ~0x00040000u;
+  }
+  pinned_apps_ = pinned_apps;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.pinned_apps)
+}
+
+// optional .enterprise_management.SystemTimezoneProto system_timezone = 20;
+inline bool ChromeDeviceSettingsProto::_internal_has_system_timezone() const {
+  bool value = (_has_bits_[0] & 0x00080000u) != 0;
+  PROTOBUF_ASSUME(!value || system_timezone_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_system_timezone() const {
+  return _internal_has_system_timezone();
+}
+inline void ChromeDeviceSettingsProto::clear_system_timezone() {
+  if (system_timezone_ != nullptr) system_timezone_->Clear();
+  _has_bits_[0] &= ~0x00080000u;
+}
+inline const ::enterprise_management::SystemTimezoneProto& ChromeDeviceSettingsProto::_internal_system_timezone() const {
+  const ::enterprise_management::SystemTimezoneProto* p = system_timezone_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SystemTimezoneProto*>(
+      &::enterprise_management::_SystemTimezoneProto_default_instance_);
+}
+inline const ::enterprise_management::SystemTimezoneProto& ChromeDeviceSettingsProto::system_timezone() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.system_timezone)
+  return _internal_system_timezone();
+}
+inline ::enterprise_management::SystemTimezoneProto* ChromeDeviceSettingsProto::release_system_timezone() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.system_timezone)
+  _has_bits_[0] &= ~0x00080000u;
+  ::enterprise_management::SystemTimezoneProto* temp = system_timezone_;
+  system_timezone_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SystemTimezoneProto* ChromeDeviceSettingsProto::_internal_mutable_system_timezone() {
+  _has_bits_[0] |= 0x00080000u;
+  if (system_timezone_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SystemTimezoneProto>(GetArenaNoVirtual());
+    system_timezone_ = p;
+  }
+  return system_timezone_;
+}
+inline ::enterprise_management::SystemTimezoneProto* ChromeDeviceSettingsProto::mutable_system_timezone() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.system_timezone)
+  return _internal_mutable_system_timezone();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_system_timezone(::enterprise_management::SystemTimezoneProto* system_timezone) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete system_timezone_;
+  }
+  if (system_timezone) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      system_timezone = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, system_timezone, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00080000u;
+  } else {
+    _has_bits_[0] &= ~0x00080000u;
+  }
+  system_timezone_ = system_timezone;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.system_timezone)
+}
+
+// optional .enterprise_management.DeviceLocalAccountsProto device_local_accounts = 21;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_local_accounts() const {
+  bool value = (_has_bits_[0] & 0x00100000u) != 0;
+  PROTOBUF_ASSUME(!value || device_local_accounts_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_local_accounts() const {
+  return _internal_has_device_local_accounts();
+}
+inline void ChromeDeviceSettingsProto::clear_device_local_accounts() {
+  if (device_local_accounts_ != nullptr) device_local_accounts_->Clear();
+  _has_bits_[0] &= ~0x00100000u;
+}
+inline const ::enterprise_management::DeviceLocalAccountsProto& ChromeDeviceSettingsProto::_internal_device_local_accounts() const {
+  const ::enterprise_management::DeviceLocalAccountsProto* p = device_local_accounts_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceLocalAccountsProto*>(
+      &::enterprise_management::_DeviceLocalAccountsProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceLocalAccountsProto& ChromeDeviceSettingsProto::device_local_accounts() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_local_accounts)
+  return _internal_device_local_accounts();
+}
+inline ::enterprise_management::DeviceLocalAccountsProto* ChromeDeviceSettingsProto::release_device_local_accounts() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_local_accounts)
+  _has_bits_[0] &= ~0x00100000u;
+  ::enterprise_management::DeviceLocalAccountsProto* temp = device_local_accounts_;
+  device_local_accounts_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceLocalAccountsProto* ChromeDeviceSettingsProto::_internal_mutable_device_local_accounts() {
+  _has_bits_[0] |= 0x00100000u;
+  if (device_local_accounts_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceLocalAccountsProto>(GetArenaNoVirtual());
+    device_local_accounts_ = p;
+  }
+  return device_local_accounts_;
+}
+inline ::enterprise_management::DeviceLocalAccountsProto* ChromeDeviceSettingsProto::mutable_device_local_accounts() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_local_accounts)
+  return _internal_mutable_device_local_accounts();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_local_accounts(::enterprise_management::DeviceLocalAccountsProto* device_local_accounts) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_local_accounts_;
+  }
+  if (device_local_accounts) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_local_accounts = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_local_accounts, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00100000u;
+  } else {
+    _has_bits_[0] &= ~0x00100000u;
+  }
+  device_local_accounts_ = device_local_accounts;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_local_accounts)
+}
+
+// optional .enterprise_management.AllowRedeemChromeOsRegistrationOffersProto allow_redeem_offers = 22;
+inline bool ChromeDeviceSettingsProto::_internal_has_allow_redeem_offers() const {
+  bool value = (_has_bits_[0] & 0x00200000u) != 0;
+  PROTOBUF_ASSUME(!value || allow_redeem_offers_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_allow_redeem_offers() const {
+  return _internal_has_allow_redeem_offers();
+}
+inline void ChromeDeviceSettingsProto::clear_allow_redeem_offers() {
+  if (allow_redeem_offers_ != nullptr) allow_redeem_offers_->Clear();
+  _has_bits_[0] &= ~0x00200000u;
+}
+inline const ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto& ChromeDeviceSettingsProto::_internal_allow_redeem_offers() const {
+  const ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* p = allow_redeem_offers_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto*>(
+      &::enterprise_management::_AllowRedeemChromeOsRegistrationOffersProto_default_instance_);
+}
+inline const ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto& ChromeDeviceSettingsProto::allow_redeem_offers() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.allow_redeem_offers)
+  return _internal_allow_redeem_offers();
+}
+inline ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* ChromeDeviceSettingsProto::release_allow_redeem_offers() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.allow_redeem_offers)
+  _has_bits_[0] &= ~0x00200000u;
+  ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* temp = allow_redeem_offers_;
+  allow_redeem_offers_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* ChromeDeviceSettingsProto::_internal_mutable_allow_redeem_offers() {
+  _has_bits_[0] |= 0x00200000u;
+  if (allow_redeem_offers_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto>(GetArenaNoVirtual());
+    allow_redeem_offers_ = p;
+  }
+  return allow_redeem_offers_;
+}
+inline ::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* ChromeDeviceSettingsProto::mutable_allow_redeem_offers() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.allow_redeem_offers)
+  return _internal_mutable_allow_redeem_offers();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_allow_redeem_offers(::enterprise_management::AllowRedeemChromeOsRegistrationOffersProto* allow_redeem_offers) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete allow_redeem_offers_;
+  }
+  if (allow_redeem_offers) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      allow_redeem_offers = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, allow_redeem_offers, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00200000u;
+  } else {
+    _has_bits_[0] &= ~0x00200000u;
+  }
+  allow_redeem_offers_ = allow_redeem_offers;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.allow_redeem_offers)
+}
+
+// optional .enterprise_management.FeatureFlagsProto feature_flags = 23;
+inline bool ChromeDeviceSettingsProto::_internal_has_feature_flags() const {
+  bool value = (_has_bits_[0] & 0x00400000u) != 0;
+  PROTOBUF_ASSUME(!value || feature_flags_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_feature_flags() const {
+  return _internal_has_feature_flags();
+}
+inline void ChromeDeviceSettingsProto::clear_feature_flags() {
+  if (feature_flags_ != nullptr) feature_flags_->Clear();
+  _has_bits_[0] &= ~0x00400000u;
+}
+inline const ::enterprise_management::FeatureFlagsProto& ChromeDeviceSettingsProto::_internal_feature_flags() const {
+  const ::enterprise_management::FeatureFlagsProto* p = feature_flags_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::FeatureFlagsProto*>(
+      &::enterprise_management::_FeatureFlagsProto_default_instance_);
+}
+inline const ::enterprise_management::FeatureFlagsProto& ChromeDeviceSettingsProto::feature_flags() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.feature_flags)
+  return _internal_feature_flags();
+}
+inline ::enterprise_management::FeatureFlagsProto* ChromeDeviceSettingsProto::release_feature_flags() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.feature_flags)
+  _has_bits_[0] &= ~0x00400000u;
+  ::enterprise_management::FeatureFlagsProto* temp = feature_flags_;
+  feature_flags_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::FeatureFlagsProto* ChromeDeviceSettingsProto::_internal_mutable_feature_flags() {
+  _has_bits_[0] |= 0x00400000u;
+  if (feature_flags_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::FeatureFlagsProto>(GetArenaNoVirtual());
+    feature_flags_ = p;
+  }
+  return feature_flags_;
+}
+inline ::enterprise_management::FeatureFlagsProto* ChromeDeviceSettingsProto::mutable_feature_flags() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.feature_flags)
+  return _internal_mutable_feature_flags();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_feature_flags(::enterprise_management::FeatureFlagsProto* feature_flags) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete feature_flags_;
+  }
+  if (feature_flags) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      feature_flags = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, feature_flags, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00400000u;
+  } else {
+    _has_bits_[0] &= ~0x00400000u;
+  }
+  feature_flags_ = feature_flags;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.feature_flags)
+}
+
+// optional .enterprise_management.UptimeLimitProto uptime_limit = 24;
+inline bool ChromeDeviceSettingsProto::_internal_has_uptime_limit() const {
+  bool value = (_has_bits_[0] & 0x00800000u) != 0;
+  PROTOBUF_ASSUME(!value || uptime_limit_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_uptime_limit() const {
+  return _internal_has_uptime_limit();
+}
+inline void ChromeDeviceSettingsProto::clear_uptime_limit() {
+  if (uptime_limit_ != nullptr) uptime_limit_->Clear();
+  _has_bits_[0] &= ~0x00800000u;
+}
+inline const ::enterprise_management::UptimeLimitProto& ChromeDeviceSettingsProto::_internal_uptime_limit() const {
+  const ::enterprise_management::UptimeLimitProto* p = uptime_limit_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::UptimeLimitProto*>(
+      &::enterprise_management::_UptimeLimitProto_default_instance_);
+}
+inline const ::enterprise_management::UptimeLimitProto& ChromeDeviceSettingsProto::uptime_limit() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.uptime_limit)
+  return _internal_uptime_limit();
+}
+inline ::enterprise_management::UptimeLimitProto* ChromeDeviceSettingsProto::release_uptime_limit() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.uptime_limit)
+  _has_bits_[0] &= ~0x00800000u;
+  ::enterprise_management::UptimeLimitProto* temp = uptime_limit_;
+  uptime_limit_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::UptimeLimitProto* ChromeDeviceSettingsProto::_internal_mutable_uptime_limit() {
+  _has_bits_[0] |= 0x00800000u;
+  if (uptime_limit_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::UptimeLimitProto>(GetArenaNoVirtual());
+    uptime_limit_ = p;
+  }
+  return uptime_limit_;
+}
+inline ::enterprise_management::UptimeLimitProto* ChromeDeviceSettingsProto::mutable_uptime_limit() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.uptime_limit)
+  return _internal_mutable_uptime_limit();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_uptime_limit(::enterprise_management::UptimeLimitProto* uptime_limit) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete uptime_limit_;
+  }
+  if (uptime_limit) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      uptime_limit = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, uptime_limit, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00800000u;
+  } else {
+    _has_bits_[0] &= ~0x00800000u;
+  }
+  uptime_limit_ = uptime_limit;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.uptime_limit)
+}
+
+// optional .enterprise_management.VariationsParameterProto variations_parameter = 25;
+inline bool ChromeDeviceSettingsProto::_internal_has_variations_parameter() const {
+  bool value = (_has_bits_[0] & 0x01000000u) != 0;
+  PROTOBUF_ASSUME(!value || variations_parameter_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_variations_parameter() const {
+  return _internal_has_variations_parameter();
+}
+inline void ChromeDeviceSettingsProto::clear_variations_parameter() {
+  if (variations_parameter_ != nullptr) variations_parameter_->Clear();
+  _has_bits_[0] &= ~0x01000000u;
+}
+inline const ::enterprise_management::VariationsParameterProto& ChromeDeviceSettingsProto::_internal_variations_parameter() const {
+  const ::enterprise_management::VariationsParameterProto* p = variations_parameter_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::VariationsParameterProto*>(
+      &::enterprise_management::_VariationsParameterProto_default_instance_);
+}
+inline const ::enterprise_management::VariationsParameterProto& ChromeDeviceSettingsProto::variations_parameter() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.variations_parameter)
+  return _internal_variations_parameter();
+}
+inline ::enterprise_management::VariationsParameterProto* ChromeDeviceSettingsProto::release_variations_parameter() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.variations_parameter)
+  _has_bits_[0] &= ~0x01000000u;
+  ::enterprise_management::VariationsParameterProto* temp = variations_parameter_;
+  variations_parameter_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::VariationsParameterProto* ChromeDeviceSettingsProto::_internal_mutable_variations_parameter() {
+  _has_bits_[0] |= 0x01000000u;
+  if (variations_parameter_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::VariationsParameterProto>(GetArenaNoVirtual());
+    variations_parameter_ = p;
+  }
+  return variations_parameter_;
+}
+inline ::enterprise_management::VariationsParameterProto* ChromeDeviceSettingsProto::mutable_variations_parameter() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.variations_parameter)
+  return _internal_mutable_variations_parameter();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_variations_parameter(::enterprise_management::VariationsParameterProto* variations_parameter) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete variations_parameter_;
+  }
+  if (variations_parameter) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      variations_parameter = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, variations_parameter, submessage_arena);
+    }
+    _has_bits_[0] |= 0x01000000u;
+  } else {
+    _has_bits_[0] &= ~0x01000000u;
+  }
+  variations_parameter_ = variations_parameter;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.variations_parameter)
+}
+
+// optional .enterprise_management.AttestationSettingsProto attestation_settings = 26;
+inline bool ChromeDeviceSettingsProto::_internal_has_attestation_settings() const {
+  bool value = (_has_bits_[0] & 0x02000000u) != 0;
+  PROTOBUF_ASSUME(!value || attestation_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_attestation_settings() const {
+  return _internal_has_attestation_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_attestation_settings() {
+  if (attestation_settings_ != nullptr) attestation_settings_->Clear();
+  _has_bits_[0] &= ~0x02000000u;
+}
+inline const ::enterprise_management::AttestationSettingsProto& ChromeDeviceSettingsProto::_internal_attestation_settings() const {
+  const ::enterprise_management::AttestationSettingsProto* p = attestation_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AttestationSettingsProto*>(
+      &::enterprise_management::_AttestationSettingsProto_default_instance_);
+}
+inline const ::enterprise_management::AttestationSettingsProto& ChromeDeviceSettingsProto::attestation_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.attestation_settings)
+  return _internal_attestation_settings();
+}
+inline ::enterprise_management::AttestationSettingsProto* ChromeDeviceSettingsProto::release_attestation_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.attestation_settings)
+  _has_bits_[0] &= ~0x02000000u;
+  ::enterprise_management::AttestationSettingsProto* temp = attestation_settings_;
+  attestation_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AttestationSettingsProto* ChromeDeviceSettingsProto::_internal_mutable_attestation_settings() {
+  _has_bits_[0] |= 0x02000000u;
+  if (attestation_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AttestationSettingsProto>(GetArenaNoVirtual());
+    attestation_settings_ = p;
+  }
+  return attestation_settings_;
+}
+inline ::enterprise_management::AttestationSettingsProto* ChromeDeviceSettingsProto::mutable_attestation_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.attestation_settings)
+  return _internal_mutable_attestation_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_attestation_settings(::enterprise_management::AttestationSettingsProto* attestation_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete attestation_settings_;
+  }
+  if (attestation_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      attestation_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, attestation_settings, submessage_arena);
+    }
+    _has_bits_[0] |= 0x02000000u;
+  } else {
+    _has_bits_[0] &= ~0x02000000u;
+  }
+  attestation_settings_ = attestation_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.attestation_settings)
+}
+
+// optional .enterprise_management.AccessibilitySettingsProto accessibility_settings = 27;
+inline bool ChromeDeviceSettingsProto::_internal_has_accessibility_settings() const {
+  bool value = (_has_bits_[0] & 0x04000000u) != 0;
+  PROTOBUF_ASSUME(!value || accessibility_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_accessibility_settings() const {
+  return _internal_has_accessibility_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_accessibility_settings() {
+  if (accessibility_settings_ != nullptr) accessibility_settings_->Clear();
+  _has_bits_[0] &= ~0x04000000u;
+}
+inline const ::enterprise_management::AccessibilitySettingsProto& ChromeDeviceSettingsProto::_internal_accessibility_settings() const {
+  const ::enterprise_management::AccessibilitySettingsProto* p = accessibility_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AccessibilitySettingsProto*>(
+      &::enterprise_management::_AccessibilitySettingsProto_default_instance_);
+}
+inline const ::enterprise_management::AccessibilitySettingsProto& ChromeDeviceSettingsProto::accessibility_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.accessibility_settings)
+  return _internal_accessibility_settings();
+}
+inline ::enterprise_management::AccessibilitySettingsProto* ChromeDeviceSettingsProto::release_accessibility_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.accessibility_settings)
+  _has_bits_[0] &= ~0x04000000u;
+  ::enterprise_management::AccessibilitySettingsProto* temp = accessibility_settings_;
+  accessibility_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AccessibilitySettingsProto* ChromeDeviceSettingsProto::_internal_mutable_accessibility_settings() {
+  _has_bits_[0] |= 0x04000000u;
+  if (accessibility_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AccessibilitySettingsProto>(GetArenaNoVirtual());
+    accessibility_settings_ = p;
+  }
+  return accessibility_settings_;
+}
+inline ::enterprise_management::AccessibilitySettingsProto* ChromeDeviceSettingsProto::mutable_accessibility_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.accessibility_settings)
+  return _internal_mutable_accessibility_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_accessibility_settings(::enterprise_management::AccessibilitySettingsProto* accessibility_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete accessibility_settings_;
+  }
+  if (accessibility_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      accessibility_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, accessibility_settings, submessage_arena);
+    }
+    _has_bits_[0] |= 0x04000000u;
+  } else {
+    _has_bits_[0] &= ~0x04000000u;
+  }
+  accessibility_settings_ = accessibility_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.accessibility_settings)
+}
+
+// optional .enterprise_management.OBSOLETE_SupervisedUsersSettingsProto supervised_users_settings = 28 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_supervised_users_settings() const {
+  bool value = (_has_bits_[0] & 0x08000000u) != 0;
+  PROTOBUF_ASSUME(!value || supervised_users_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_supervised_users_settings() const {
+  return _internal_has_supervised_users_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_supervised_users_settings() {
+  if (supervised_users_settings_ != nullptr) supervised_users_settings_->Clear();
+  _has_bits_[0] &= ~0x08000000u;
+}
+inline const ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto& ChromeDeviceSettingsProto::_internal_supervised_users_settings() const {
+  const ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* p = supervised_users_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto*>(
+      &::enterprise_management::_OBSOLETE_SupervisedUsersSettingsProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto& ChromeDeviceSettingsProto::supervised_users_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.supervised_users_settings)
+  return _internal_supervised_users_settings();
+}
+inline ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* ChromeDeviceSettingsProto::release_supervised_users_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.supervised_users_settings)
+  _has_bits_[0] &= ~0x08000000u;
+  ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* temp = supervised_users_settings_;
+  supervised_users_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* ChromeDeviceSettingsProto::_internal_mutable_supervised_users_settings() {
+  _has_bits_[0] |= 0x08000000u;
+  if (supervised_users_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto>(GetArenaNoVirtual());
+    supervised_users_settings_ = p;
+  }
+  return supervised_users_settings_;
+}
+inline ::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* ChromeDeviceSettingsProto::mutable_supervised_users_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.supervised_users_settings)
+  return _internal_mutable_supervised_users_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_supervised_users_settings(::enterprise_management::OBSOLETE_SupervisedUsersSettingsProto* supervised_users_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete supervised_users_settings_;
+  }
+  if (supervised_users_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      supervised_users_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, supervised_users_settings, submessage_arena);
+    }
+    _has_bits_[0] |= 0x08000000u;
+  } else {
+    _has_bits_[0] &= ~0x08000000u;
+  }
+  supervised_users_settings_ = supervised_users_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.supervised_users_settings)
+}
+
+// optional .enterprise_management.LoginScreenPowerManagementProto login_screen_power_management = 29;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_screen_power_management() const {
+  bool value = (_has_bits_[0] & 0x10000000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_power_management_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_screen_power_management() const {
+  return _internal_has_login_screen_power_management();
+}
+inline void ChromeDeviceSettingsProto::clear_login_screen_power_management() {
+  if (login_screen_power_management_ != nullptr) login_screen_power_management_->Clear();
+  _has_bits_[0] &= ~0x10000000u;
+}
+inline const ::enterprise_management::LoginScreenPowerManagementProto& ChromeDeviceSettingsProto::_internal_login_screen_power_management() const {
+  const ::enterprise_management::LoginScreenPowerManagementProto* p = login_screen_power_management_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::LoginScreenPowerManagementProto*>(
+      &::enterprise_management::_LoginScreenPowerManagementProto_default_instance_);
+}
+inline const ::enterprise_management::LoginScreenPowerManagementProto& ChromeDeviceSettingsProto::login_screen_power_management() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_screen_power_management)
+  return _internal_login_screen_power_management();
+}
+inline ::enterprise_management::LoginScreenPowerManagementProto* ChromeDeviceSettingsProto::release_login_screen_power_management() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_screen_power_management)
+  _has_bits_[0] &= ~0x10000000u;
+  ::enterprise_management::LoginScreenPowerManagementProto* temp = login_screen_power_management_;
+  login_screen_power_management_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::LoginScreenPowerManagementProto* ChromeDeviceSettingsProto::_internal_mutable_login_screen_power_management() {
+  _has_bits_[0] |= 0x10000000u;
+  if (login_screen_power_management_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::LoginScreenPowerManagementProto>(GetArenaNoVirtual());
+    login_screen_power_management_ = p;
+  }
+  return login_screen_power_management_;
+}
+inline ::enterprise_management::LoginScreenPowerManagementProto* ChromeDeviceSettingsProto::mutable_login_screen_power_management() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_screen_power_management)
+  return _internal_mutable_login_screen_power_management();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_screen_power_management(::enterprise_management::LoginScreenPowerManagementProto* login_screen_power_management) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete login_screen_power_management_;
+  }
+  if (login_screen_power_management) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_power_management = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_power_management, submessage_arena);
+    }
+    _has_bits_[0] |= 0x10000000u;
+  } else {
+    _has_bits_[0] &= ~0x10000000u;
+  }
+  login_screen_power_management_ = login_screen_power_management;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_screen_power_management)
+}
+
+// optional .enterprise_management.SystemUse24HourClockProto use_24hour_clock = 30;
+inline bool ChromeDeviceSettingsProto::_internal_has_use_24hour_clock() const {
+  bool value = (_has_bits_[0] & 0x20000000u) != 0;
+  PROTOBUF_ASSUME(!value || use_24hour_clock_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_use_24hour_clock() const {
+  return _internal_has_use_24hour_clock();
+}
+inline void ChromeDeviceSettingsProto::clear_use_24hour_clock() {
+  if (use_24hour_clock_ != nullptr) use_24hour_clock_->Clear();
+  _has_bits_[0] &= ~0x20000000u;
+}
+inline const ::enterprise_management::SystemUse24HourClockProto& ChromeDeviceSettingsProto::_internal_use_24hour_clock() const {
+  const ::enterprise_management::SystemUse24HourClockProto* p = use_24hour_clock_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SystemUse24HourClockProto*>(
+      &::enterprise_management::_SystemUse24HourClockProto_default_instance_);
+}
+inline const ::enterprise_management::SystemUse24HourClockProto& ChromeDeviceSettingsProto::use_24hour_clock() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.use_24hour_clock)
+  return _internal_use_24hour_clock();
+}
+inline ::enterprise_management::SystemUse24HourClockProto* ChromeDeviceSettingsProto::release_use_24hour_clock() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.use_24hour_clock)
+  _has_bits_[0] &= ~0x20000000u;
+  ::enterprise_management::SystemUse24HourClockProto* temp = use_24hour_clock_;
+  use_24hour_clock_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SystemUse24HourClockProto* ChromeDeviceSettingsProto::_internal_mutable_use_24hour_clock() {
+  _has_bits_[0] |= 0x20000000u;
+  if (use_24hour_clock_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SystemUse24HourClockProto>(GetArenaNoVirtual());
+    use_24hour_clock_ = p;
+  }
+  return use_24hour_clock_;
+}
+inline ::enterprise_management::SystemUse24HourClockProto* ChromeDeviceSettingsProto::mutable_use_24hour_clock() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.use_24hour_clock)
+  return _internal_mutable_use_24hour_clock();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_use_24hour_clock(::enterprise_management::SystemUse24HourClockProto* use_24hour_clock) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete use_24hour_clock_;
+  }
+  if (use_24hour_clock) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      use_24hour_clock = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, use_24hour_clock, submessage_arena);
+    }
+    _has_bits_[0] |= 0x20000000u;
+  } else {
+    _has_bits_[0] &= ~0x20000000u;
+  }
+  use_24hour_clock_ = use_24hour_clock;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.use_24hour_clock)
+}
+
+// optional .enterprise_management.AutoCleanupSettigsProto auto_clean_up_settings = 31;
+inline bool ChromeDeviceSettingsProto::_internal_has_auto_clean_up_settings() const {
+  bool value = (_has_bits_[0] & 0x40000000u) != 0;
+  PROTOBUF_ASSUME(!value || auto_clean_up_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_auto_clean_up_settings() const {
+  return _internal_has_auto_clean_up_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_auto_clean_up_settings() {
+  if (auto_clean_up_settings_ != nullptr) auto_clean_up_settings_->Clear();
+  _has_bits_[0] &= ~0x40000000u;
+}
+inline const ::enterprise_management::AutoCleanupSettigsProto& ChromeDeviceSettingsProto::_internal_auto_clean_up_settings() const {
+  const ::enterprise_management::AutoCleanupSettigsProto* p = auto_clean_up_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AutoCleanupSettigsProto*>(
+      &::enterprise_management::_AutoCleanupSettigsProto_default_instance_);
+}
+inline const ::enterprise_management::AutoCleanupSettigsProto& ChromeDeviceSettingsProto::auto_clean_up_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.auto_clean_up_settings)
+  return _internal_auto_clean_up_settings();
+}
+inline ::enterprise_management::AutoCleanupSettigsProto* ChromeDeviceSettingsProto::release_auto_clean_up_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.auto_clean_up_settings)
+  _has_bits_[0] &= ~0x40000000u;
+  ::enterprise_management::AutoCleanupSettigsProto* temp = auto_clean_up_settings_;
+  auto_clean_up_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AutoCleanupSettigsProto* ChromeDeviceSettingsProto::_internal_mutable_auto_clean_up_settings() {
+  _has_bits_[0] |= 0x40000000u;
+  if (auto_clean_up_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AutoCleanupSettigsProto>(GetArenaNoVirtual());
+    auto_clean_up_settings_ = p;
+  }
+  return auto_clean_up_settings_;
+}
+inline ::enterprise_management::AutoCleanupSettigsProto* ChromeDeviceSettingsProto::mutable_auto_clean_up_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.auto_clean_up_settings)
+  return _internal_mutable_auto_clean_up_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_auto_clean_up_settings(::enterprise_management::AutoCleanupSettigsProto* auto_clean_up_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete auto_clean_up_settings_;
+  }
+  if (auto_clean_up_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      auto_clean_up_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, auto_clean_up_settings, submessage_arena);
+    }
+    _has_bits_[0] |= 0x40000000u;
+  } else {
+    _has_bits_[0] &= ~0x40000000u;
+  }
+  auto_clean_up_settings_ = auto_clean_up_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.auto_clean_up_settings)
+}
+
+// optional .enterprise_management.SystemSettingsProto system_settings = 32;
+inline bool ChromeDeviceSettingsProto::_internal_has_system_settings() const {
+  bool value = (_has_bits_[0] & 0x80000000u) != 0;
+  PROTOBUF_ASSUME(!value || system_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_system_settings() const {
+  return _internal_has_system_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_system_settings() {
+  if (system_settings_ != nullptr) system_settings_->Clear();
+  _has_bits_[0] &= ~0x80000000u;
+}
+inline const ::enterprise_management::SystemSettingsProto& ChromeDeviceSettingsProto::_internal_system_settings() const {
+  const ::enterprise_management::SystemSettingsProto* p = system_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SystemSettingsProto*>(
+      &::enterprise_management::_SystemSettingsProto_default_instance_);
+}
+inline const ::enterprise_management::SystemSettingsProto& ChromeDeviceSettingsProto::system_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.system_settings)
+  return _internal_system_settings();
+}
+inline ::enterprise_management::SystemSettingsProto* ChromeDeviceSettingsProto::release_system_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.system_settings)
+  _has_bits_[0] &= ~0x80000000u;
+  ::enterprise_management::SystemSettingsProto* temp = system_settings_;
+  system_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SystemSettingsProto* ChromeDeviceSettingsProto::_internal_mutable_system_settings() {
+  _has_bits_[0] |= 0x80000000u;
+  if (system_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SystemSettingsProto>(GetArenaNoVirtual());
+    system_settings_ = p;
+  }
+  return system_settings_;
+}
+inline ::enterprise_management::SystemSettingsProto* ChromeDeviceSettingsProto::mutable_system_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.system_settings)
+  return _internal_mutable_system_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_system_settings(::enterprise_management::SystemSettingsProto* system_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete system_settings_;
+  }
+  if (system_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      system_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, system_settings, submessage_arena);
+    }
+    _has_bits_[0] |= 0x80000000u;
+  } else {
+    _has_bits_[0] &= ~0x80000000u;
+  }
+  system_settings_ = system_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.system_settings)
+}
+
+// optional .enterprise_management.SAMLSettingsProto saml_settings = 33;
+inline bool ChromeDeviceSettingsProto::_internal_has_saml_settings() const {
+  bool value = (_has_bits_[1] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || saml_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_saml_settings() const {
+  return _internal_has_saml_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_saml_settings() {
+  if (saml_settings_ != nullptr) saml_settings_->Clear();
+  _has_bits_[1] &= ~0x00000001u;
+}
+inline const ::enterprise_management::SAMLSettingsProto& ChromeDeviceSettingsProto::_internal_saml_settings() const {
+  const ::enterprise_management::SAMLSettingsProto* p = saml_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SAMLSettingsProto*>(
+      &::enterprise_management::_SAMLSettingsProto_default_instance_);
+}
+inline const ::enterprise_management::SAMLSettingsProto& ChromeDeviceSettingsProto::saml_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.saml_settings)
+  return _internal_saml_settings();
+}
+inline ::enterprise_management::SAMLSettingsProto* ChromeDeviceSettingsProto::release_saml_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.saml_settings)
+  _has_bits_[1] &= ~0x00000001u;
+  ::enterprise_management::SAMLSettingsProto* temp = saml_settings_;
+  saml_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SAMLSettingsProto* ChromeDeviceSettingsProto::_internal_mutable_saml_settings() {
+  _has_bits_[1] |= 0x00000001u;
+  if (saml_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SAMLSettingsProto>(GetArenaNoVirtual());
+    saml_settings_ = p;
+  }
+  return saml_settings_;
+}
+inline ::enterprise_management::SAMLSettingsProto* ChromeDeviceSettingsProto::mutable_saml_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.saml_settings)
+  return _internal_mutable_saml_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_saml_settings(::enterprise_management::SAMLSettingsProto* saml_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete saml_settings_;
+  }
+  if (saml_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      saml_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, saml_settings, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000001u;
+  } else {
+    _has_bits_[1] &= ~0x00000001u;
+  }
+  saml_settings_ = saml_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.saml_settings)
+}
+
+// optional .enterprise_management.RebootOnShutdownProto reboot_on_shutdown = 34;
+inline bool ChromeDeviceSettingsProto::_internal_has_reboot_on_shutdown() const {
+  bool value = (_has_bits_[1] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || reboot_on_shutdown_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_reboot_on_shutdown() const {
+  return _internal_has_reboot_on_shutdown();
+}
+inline void ChromeDeviceSettingsProto::clear_reboot_on_shutdown() {
+  if (reboot_on_shutdown_ != nullptr) reboot_on_shutdown_->Clear();
+  _has_bits_[1] &= ~0x00000002u;
+}
+inline const ::enterprise_management::RebootOnShutdownProto& ChromeDeviceSettingsProto::_internal_reboot_on_shutdown() const {
+  const ::enterprise_management::RebootOnShutdownProto* p = reboot_on_shutdown_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::RebootOnShutdownProto*>(
+      &::enterprise_management::_RebootOnShutdownProto_default_instance_);
+}
+inline const ::enterprise_management::RebootOnShutdownProto& ChromeDeviceSettingsProto::reboot_on_shutdown() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.reboot_on_shutdown)
+  return _internal_reboot_on_shutdown();
+}
+inline ::enterprise_management::RebootOnShutdownProto* ChromeDeviceSettingsProto::release_reboot_on_shutdown() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.reboot_on_shutdown)
+  _has_bits_[1] &= ~0x00000002u;
+  ::enterprise_management::RebootOnShutdownProto* temp = reboot_on_shutdown_;
+  reboot_on_shutdown_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::RebootOnShutdownProto* ChromeDeviceSettingsProto::_internal_mutable_reboot_on_shutdown() {
+  _has_bits_[1] |= 0x00000002u;
+  if (reboot_on_shutdown_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::RebootOnShutdownProto>(GetArenaNoVirtual());
+    reboot_on_shutdown_ = p;
+  }
+  return reboot_on_shutdown_;
+}
+inline ::enterprise_management::RebootOnShutdownProto* ChromeDeviceSettingsProto::mutable_reboot_on_shutdown() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.reboot_on_shutdown)
+  return _internal_mutable_reboot_on_shutdown();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_reboot_on_shutdown(::enterprise_management::RebootOnShutdownProto* reboot_on_shutdown) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reboot_on_shutdown_;
+  }
+  if (reboot_on_shutdown) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      reboot_on_shutdown = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, reboot_on_shutdown, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000002u;
+  } else {
+    _has_bits_[1] &= ~0x00000002u;
+  }
+  reboot_on_shutdown_ = reboot_on_shutdown;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.reboot_on_shutdown)
+}
+
+// optional .enterprise_management.DeviceHeartbeatSettingsProto device_heartbeat_settings = 35;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_heartbeat_settings() const {
+  bool value = (_has_bits_[1] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || device_heartbeat_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_heartbeat_settings() const {
+  return _internal_has_device_heartbeat_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_device_heartbeat_settings() {
+  if (device_heartbeat_settings_ != nullptr) device_heartbeat_settings_->Clear();
+  _has_bits_[1] &= ~0x00000004u;
+}
+inline const ::enterprise_management::DeviceHeartbeatSettingsProto& ChromeDeviceSettingsProto::_internal_device_heartbeat_settings() const {
+  const ::enterprise_management::DeviceHeartbeatSettingsProto* p = device_heartbeat_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceHeartbeatSettingsProto*>(
+      &::enterprise_management::_DeviceHeartbeatSettingsProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceHeartbeatSettingsProto& ChromeDeviceSettingsProto::device_heartbeat_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_heartbeat_settings)
+  return _internal_device_heartbeat_settings();
+}
+inline ::enterprise_management::DeviceHeartbeatSettingsProto* ChromeDeviceSettingsProto::release_device_heartbeat_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_heartbeat_settings)
+  _has_bits_[1] &= ~0x00000004u;
+  ::enterprise_management::DeviceHeartbeatSettingsProto* temp = device_heartbeat_settings_;
+  device_heartbeat_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceHeartbeatSettingsProto* ChromeDeviceSettingsProto::_internal_mutable_device_heartbeat_settings() {
+  _has_bits_[1] |= 0x00000004u;
+  if (device_heartbeat_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceHeartbeatSettingsProto>(GetArenaNoVirtual());
+    device_heartbeat_settings_ = p;
+  }
+  return device_heartbeat_settings_;
+}
+inline ::enterprise_management::DeviceHeartbeatSettingsProto* ChromeDeviceSettingsProto::mutable_device_heartbeat_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_heartbeat_settings)
+  return _internal_mutable_device_heartbeat_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_heartbeat_settings(::enterprise_management::DeviceHeartbeatSettingsProto* device_heartbeat_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_heartbeat_settings_;
+  }
+  if (device_heartbeat_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_heartbeat_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_heartbeat_settings, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000004u;
+  } else {
+    _has_bits_[1] &= ~0x00000004u;
+  }
+  device_heartbeat_settings_ = device_heartbeat_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_heartbeat_settings)
+}
+
+// optional .enterprise_management.ExtensionCacheSizeProto extension_cache_size = 36;
+inline bool ChromeDeviceSettingsProto::_internal_has_extension_cache_size() const {
+  bool value = (_has_bits_[1] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || extension_cache_size_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_extension_cache_size() const {
+  return _internal_has_extension_cache_size();
+}
+inline void ChromeDeviceSettingsProto::clear_extension_cache_size() {
+  if (extension_cache_size_ != nullptr) extension_cache_size_->Clear();
+  _has_bits_[1] &= ~0x00000008u;
+}
+inline const ::enterprise_management::ExtensionCacheSizeProto& ChromeDeviceSettingsProto::_internal_extension_cache_size() const {
+  const ::enterprise_management::ExtensionCacheSizeProto* p = extension_cache_size_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ExtensionCacheSizeProto*>(
+      &::enterprise_management::_ExtensionCacheSizeProto_default_instance_);
+}
+inline const ::enterprise_management::ExtensionCacheSizeProto& ChromeDeviceSettingsProto::extension_cache_size() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.extension_cache_size)
+  return _internal_extension_cache_size();
+}
+inline ::enterprise_management::ExtensionCacheSizeProto* ChromeDeviceSettingsProto::release_extension_cache_size() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.extension_cache_size)
+  _has_bits_[1] &= ~0x00000008u;
+  ::enterprise_management::ExtensionCacheSizeProto* temp = extension_cache_size_;
+  extension_cache_size_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ExtensionCacheSizeProto* ChromeDeviceSettingsProto::_internal_mutable_extension_cache_size() {
+  _has_bits_[1] |= 0x00000008u;
+  if (extension_cache_size_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ExtensionCacheSizeProto>(GetArenaNoVirtual());
+    extension_cache_size_ = p;
+  }
+  return extension_cache_size_;
+}
+inline ::enterprise_management::ExtensionCacheSizeProto* ChromeDeviceSettingsProto::mutable_extension_cache_size() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.extension_cache_size)
+  return _internal_mutable_extension_cache_size();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_extension_cache_size(::enterprise_management::ExtensionCacheSizeProto* extension_cache_size) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete extension_cache_size_;
+  }
+  if (extension_cache_size) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      extension_cache_size = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, extension_cache_size, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000008u;
+  } else {
+    _has_bits_[1] &= ~0x00000008u;
+  }
+  extension_cache_size_ = extension_cache_size;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.extension_cache_size)
+}
+
+// optional .enterprise_management.LoginScreenDomainAutoCompleteProto login_screen_domain_auto_complete = 37;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_screen_domain_auto_complete() const {
+  bool value = (_has_bits_[1] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_domain_auto_complete_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_screen_domain_auto_complete() const {
+  return _internal_has_login_screen_domain_auto_complete();
+}
+inline void ChromeDeviceSettingsProto::clear_login_screen_domain_auto_complete() {
+  if (login_screen_domain_auto_complete_ != nullptr) login_screen_domain_auto_complete_->Clear();
+  _has_bits_[1] &= ~0x00000010u;
+}
+inline const ::enterprise_management::LoginScreenDomainAutoCompleteProto& ChromeDeviceSettingsProto::_internal_login_screen_domain_auto_complete() const {
+  const ::enterprise_management::LoginScreenDomainAutoCompleteProto* p = login_screen_domain_auto_complete_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::LoginScreenDomainAutoCompleteProto*>(
+      &::enterprise_management::_LoginScreenDomainAutoCompleteProto_default_instance_);
+}
+inline const ::enterprise_management::LoginScreenDomainAutoCompleteProto& ChromeDeviceSettingsProto::login_screen_domain_auto_complete() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_screen_domain_auto_complete)
+  return _internal_login_screen_domain_auto_complete();
+}
+inline ::enterprise_management::LoginScreenDomainAutoCompleteProto* ChromeDeviceSettingsProto::release_login_screen_domain_auto_complete() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_screen_domain_auto_complete)
+  _has_bits_[1] &= ~0x00000010u;
+  ::enterprise_management::LoginScreenDomainAutoCompleteProto* temp = login_screen_domain_auto_complete_;
+  login_screen_domain_auto_complete_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::LoginScreenDomainAutoCompleteProto* ChromeDeviceSettingsProto::_internal_mutable_login_screen_domain_auto_complete() {
+  _has_bits_[1] |= 0x00000010u;
+  if (login_screen_domain_auto_complete_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::LoginScreenDomainAutoCompleteProto>(GetArenaNoVirtual());
+    login_screen_domain_auto_complete_ = p;
+  }
+  return login_screen_domain_auto_complete_;
+}
+inline ::enterprise_management::LoginScreenDomainAutoCompleteProto* ChromeDeviceSettingsProto::mutable_login_screen_domain_auto_complete() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_screen_domain_auto_complete)
+  return _internal_mutable_login_screen_domain_auto_complete();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_screen_domain_auto_complete(::enterprise_management::LoginScreenDomainAutoCompleteProto* login_screen_domain_auto_complete) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete login_screen_domain_auto_complete_;
+  }
+  if (login_screen_domain_auto_complete) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_domain_auto_complete = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_domain_auto_complete, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000010u;
+  } else {
+    _has_bits_[1] &= ~0x00000010u;
+  }
+  login_screen_domain_auto_complete_ = login_screen_domain_auto_complete;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_screen_domain_auto_complete)
+}
+
+// optional .enterprise_management.DeviceLogUploadSettingsProto device_log_upload_settings = 38;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_log_upload_settings() const {
+  bool value = (_has_bits_[1] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || device_log_upload_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_log_upload_settings() const {
+  return _internal_has_device_log_upload_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_device_log_upload_settings() {
+  if (device_log_upload_settings_ != nullptr) device_log_upload_settings_->Clear();
+  _has_bits_[1] &= ~0x00000020u;
+}
+inline const ::enterprise_management::DeviceLogUploadSettingsProto& ChromeDeviceSettingsProto::_internal_device_log_upload_settings() const {
+  const ::enterprise_management::DeviceLogUploadSettingsProto* p = device_log_upload_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceLogUploadSettingsProto*>(
+      &::enterprise_management::_DeviceLogUploadSettingsProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceLogUploadSettingsProto& ChromeDeviceSettingsProto::device_log_upload_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_log_upload_settings)
+  return _internal_device_log_upload_settings();
+}
+inline ::enterprise_management::DeviceLogUploadSettingsProto* ChromeDeviceSettingsProto::release_device_log_upload_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_log_upload_settings)
+  _has_bits_[1] &= ~0x00000020u;
+  ::enterprise_management::DeviceLogUploadSettingsProto* temp = device_log_upload_settings_;
+  device_log_upload_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceLogUploadSettingsProto* ChromeDeviceSettingsProto::_internal_mutable_device_log_upload_settings() {
+  _has_bits_[1] |= 0x00000020u;
+  if (device_log_upload_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceLogUploadSettingsProto>(GetArenaNoVirtual());
+    device_log_upload_settings_ = p;
+  }
+  return device_log_upload_settings_;
+}
+inline ::enterprise_management::DeviceLogUploadSettingsProto* ChromeDeviceSettingsProto::mutable_device_log_upload_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_log_upload_settings)
+  return _internal_mutable_device_log_upload_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_log_upload_settings(::enterprise_management::DeviceLogUploadSettingsProto* device_log_upload_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_log_upload_settings_;
+  }
+  if (device_log_upload_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_log_upload_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_log_upload_settings, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000020u;
+  } else {
+    _has_bits_[1] &= ~0x00000020u;
+  }
+  device_log_upload_settings_ = device_log_upload_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_log_upload_settings)
+}
+
+// optional .enterprise_management.DisplayRotationDefaultProto display_rotation_default = 39;
+inline bool ChromeDeviceSettingsProto::_internal_has_display_rotation_default() const {
+  bool value = (_has_bits_[1] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || display_rotation_default_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_display_rotation_default() const {
+  return _internal_has_display_rotation_default();
+}
+inline void ChromeDeviceSettingsProto::clear_display_rotation_default() {
+  if (display_rotation_default_ != nullptr) display_rotation_default_->Clear();
+  _has_bits_[1] &= ~0x00000040u;
+}
+inline const ::enterprise_management::DisplayRotationDefaultProto& ChromeDeviceSettingsProto::_internal_display_rotation_default() const {
+  const ::enterprise_management::DisplayRotationDefaultProto* p = display_rotation_default_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DisplayRotationDefaultProto*>(
+      &::enterprise_management::_DisplayRotationDefaultProto_default_instance_);
+}
+inline const ::enterprise_management::DisplayRotationDefaultProto& ChromeDeviceSettingsProto::display_rotation_default() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.display_rotation_default)
+  return _internal_display_rotation_default();
+}
+inline ::enterprise_management::DisplayRotationDefaultProto* ChromeDeviceSettingsProto::release_display_rotation_default() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.display_rotation_default)
+  _has_bits_[1] &= ~0x00000040u;
+  ::enterprise_management::DisplayRotationDefaultProto* temp = display_rotation_default_;
+  display_rotation_default_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DisplayRotationDefaultProto* ChromeDeviceSettingsProto::_internal_mutable_display_rotation_default() {
+  _has_bits_[1] |= 0x00000040u;
+  if (display_rotation_default_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DisplayRotationDefaultProto>(GetArenaNoVirtual());
+    display_rotation_default_ = p;
+  }
+  return display_rotation_default_;
+}
+inline ::enterprise_management::DisplayRotationDefaultProto* ChromeDeviceSettingsProto::mutable_display_rotation_default() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.display_rotation_default)
+  return _internal_mutable_display_rotation_default();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_display_rotation_default(::enterprise_management::DisplayRotationDefaultProto* display_rotation_default) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete display_rotation_default_;
+  }
+  if (display_rotation_default) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      display_rotation_default = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, display_rotation_default, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000040u;
+  } else {
+    _has_bits_[1] &= ~0x00000040u;
+  }
+  display_rotation_default_ = display_rotation_default;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.display_rotation_default)
+}
+
+// optional .enterprise_management.AllowKioskAppControlChromeVersionProto allow_kiosk_app_control_chrome_version = 40;
+inline bool ChromeDeviceSettingsProto::_internal_has_allow_kiosk_app_control_chrome_version() const {
+  bool value = (_has_bits_[1] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || allow_kiosk_app_control_chrome_version_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_allow_kiosk_app_control_chrome_version() const {
+  return _internal_has_allow_kiosk_app_control_chrome_version();
+}
+inline void ChromeDeviceSettingsProto::clear_allow_kiosk_app_control_chrome_version() {
+  if (allow_kiosk_app_control_chrome_version_ != nullptr) allow_kiosk_app_control_chrome_version_->Clear();
+  _has_bits_[1] &= ~0x00000080u;
+}
+inline const ::enterprise_management::AllowKioskAppControlChromeVersionProto& ChromeDeviceSettingsProto::_internal_allow_kiosk_app_control_chrome_version() const {
+  const ::enterprise_management::AllowKioskAppControlChromeVersionProto* p = allow_kiosk_app_control_chrome_version_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AllowKioskAppControlChromeVersionProto*>(
+      &::enterprise_management::_AllowKioskAppControlChromeVersionProto_default_instance_);
+}
+inline const ::enterprise_management::AllowKioskAppControlChromeVersionProto& ChromeDeviceSettingsProto::allow_kiosk_app_control_chrome_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.allow_kiosk_app_control_chrome_version)
+  return _internal_allow_kiosk_app_control_chrome_version();
+}
+inline ::enterprise_management::AllowKioskAppControlChromeVersionProto* ChromeDeviceSettingsProto::release_allow_kiosk_app_control_chrome_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.allow_kiosk_app_control_chrome_version)
+  _has_bits_[1] &= ~0x00000080u;
+  ::enterprise_management::AllowKioskAppControlChromeVersionProto* temp = allow_kiosk_app_control_chrome_version_;
+  allow_kiosk_app_control_chrome_version_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AllowKioskAppControlChromeVersionProto* ChromeDeviceSettingsProto::_internal_mutable_allow_kiosk_app_control_chrome_version() {
+  _has_bits_[1] |= 0x00000080u;
+  if (allow_kiosk_app_control_chrome_version_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AllowKioskAppControlChromeVersionProto>(GetArenaNoVirtual());
+    allow_kiosk_app_control_chrome_version_ = p;
+  }
+  return allow_kiosk_app_control_chrome_version_;
+}
+inline ::enterprise_management::AllowKioskAppControlChromeVersionProto* ChromeDeviceSettingsProto::mutable_allow_kiosk_app_control_chrome_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.allow_kiosk_app_control_chrome_version)
+  return _internal_mutable_allow_kiosk_app_control_chrome_version();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_allow_kiosk_app_control_chrome_version(::enterprise_management::AllowKioskAppControlChromeVersionProto* allow_kiosk_app_control_chrome_version) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete allow_kiosk_app_control_chrome_version_;
+  }
+  if (allow_kiosk_app_control_chrome_version) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      allow_kiosk_app_control_chrome_version = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, allow_kiosk_app_control_chrome_version, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000080u;
+  } else {
+    _has_bits_[1] &= ~0x00000080u;
+  }
+  allow_kiosk_app_control_chrome_version_ = allow_kiosk_app_control_chrome_version;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.allow_kiosk_app_control_chrome_version)
+}
+
+// optional .enterprise_management.LoginAuthenticationBehaviorProto login_authentication_behavior = 41;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_authentication_behavior() const {
+  bool value = (_has_bits_[1] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || login_authentication_behavior_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_authentication_behavior() const {
+  return _internal_has_login_authentication_behavior();
+}
+inline void ChromeDeviceSettingsProto::clear_login_authentication_behavior() {
+  if (login_authentication_behavior_ != nullptr) login_authentication_behavior_->Clear();
+  _has_bits_[1] &= ~0x00000100u;
+}
+inline const ::enterprise_management::LoginAuthenticationBehaviorProto& ChromeDeviceSettingsProto::_internal_login_authentication_behavior() const {
+  const ::enterprise_management::LoginAuthenticationBehaviorProto* p = login_authentication_behavior_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::LoginAuthenticationBehaviorProto*>(
+      &::enterprise_management::_LoginAuthenticationBehaviorProto_default_instance_);
+}
+inline const ::enterprise_management::LoginAuthenticationBehaviorProto& ChromeDeviceSettingsProto::login_authentication_behavior() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_authentication_behavior)
+  return _internal_login_authentication_behavior();
+}
+inline ::enterprise_management::LoginAuthenticationBehaviorProto* ChromeDeviceSettingsProto::release_login_authentication_behavior() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_authentication_behavior)
+  _has_bits_[1] &= ~0x00000100u;
+  ::enterprise_management::LoginAuthenticationBehaviorProto* temp = login_authentication_behavior_;
+  login_authentication_behavior_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::LoginAuthenticationBehaviorProto* ChromeDeviceSettingsProto::_internal_mutable_login_authentication_behavior() {
+  _has_bits_[1] |= 0x00000100u;
+  if (login_authentication_behavior_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::LoginAuthenticationBehaviorProto>(GetArenaNoVirtual());
+    login_authentication_behavior_ = p;
+  }
+  return login_authentication_behavior_;
+}
+inline ::enterprise_management::LoginAuthenticationBehaviorProto* ChromeDeviceSettingsProto::mutable_login_authentication_behavior() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_authentication_behavior)
+  return _internal_mutable_login_authentication_behavior();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_authentication_behavior(::enterprise_management::LoginAuthenticationBehaviorProto* login_authentication_behavior) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete login_authentication_behavior_;
+  }
+  if (login_authentication_behavior) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_authentication_behavior = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_authentication_behavior, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000100u;
+  } else {
+    _has_bits_[1] &= ~0x00000100u;
+  }
+  login_authentication_behavior_ = login_authentication_behavior;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_authentication_behavior)
+}
+
+// optional .enterprise_management.UsbDetachableWhitelistProto usb_detachable_whitelist = 42;
+inline bool ChromeDeviceSettingsProto::_internal_has_usb_detachable_whitelist() const {
+  bool value = (_has_bits_[1] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || usb_detachable_whitelist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_usb_detachable_whitelist() const {
+  return _internal_has_usb_detachable_whitelist();
+}
+inline void ChromeDeviceSettingsProto::clear_usb_detachable_whitelist() {
+  if (usb_detachable_whitelist_ != nullptr) usb_detachable_whitelist_->Clear();
+  _has_bits_[1] &= ~0x00000200u;
+}
+inline const ::enterprise_management::UsbDetachableWhitelistProto& ChromeDeviceSettingsProto::_internal_usb_detachable_whitelist() const {
+  const ::enterprise_management::UsbDetachableWhitelistProto* p = usb_detachable_whitelist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::UsbDetachableWhitelistProto*>(
+      &::enterprise_management::_UsbDetachableWhitelistProto_default_instance_);
+}
+inline const ::enterprise_management::UsbDetachableWhitelistProto& ChromeDeviceSettingsProto::usb_detachable_whitelist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.usb_detachable_whitelist)
+  return _internal_usb_detachable_whitelist();
+}
+inline ::enterprise_management::UsbDetachableWhitelistProto* ChromeDeviceSettingsProto::release_usb_detachable_whitelist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.usb_detachable_whitelist)
+  _has_bits_[1] &= ~0x00000200u;
+  ::enterprise_management::UsbDetachableWhitelistProto* temp = usb_detachable_whitelist_;
+  usb_detachable_whitelist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::UsbDetachableWhitelistProto* ChromeDeviceSettingsProto::_internal_mutable_usb_detachable_whitelist() {
+  _has_bits_[1] |= 0x00000200u;
+  if (usb_detachable_whitelist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::UsbDetachableWhitelistProto>(GetArenaNoVirtual());
+    usb_detachable_whitelist_ = p;
+  }
+  return usb_detachable_whitelist_;
+}
+inline ::enterprise_management::UsbDetachableWhitelistProto* ChromeDeviceSettingsProto::mutable_usb_detachable_whitelist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.usb_detachable_whitelist)
+  return _internal_mutable_usb_detachable_whitelist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_usb_detachable_whitelist(::enterprise_management::UsbDetachableWhitelistProto* usb_detachable_whitelist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete usb_detachable_whitelist_;
+  }
+  if (usb_detachable_whitelist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      usb_detachable_whitelist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, usb_detachable_whitelist, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000200u;
+  } else {
+    _has_bits_[1] &= ~0x00000200u;
+  }
+  usb_detachable_whitelist_ = usb_detachable_whitelist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.usb_detachable_whitelist)
+}
+
+// optional .enterprise_management.AllowBluetoothProto allow_bluetooth = 43;
+inline bool ChromeDeviceSettingsProto::_internal_has_allow_bluetooth() const {
+  bool value = (_has_bits_[1] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || allow_bluetooth_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_allow_bluetooth() const {
+  return _internal_has_allow_bluetooth();
+}
+inline void ChromeDeviceSettingsProto::clear_allow_bluetooth() {
+  if (allow_bluetooth_ != nullptr) allow_bluetooth_->Clear();
+  _has_bits_[1] &= ~0x00000400u;
+}
+inline const ::enterprise_management::AllowBluetoothProto& ChromeDeviceSettingsProto::_internal_allow_bluetooth() const {
+  const ::enterprise_management::AllowBluetoothProto* p = allow_bluetooth_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AllowBluetoothProto*>(
+      &::enterprise_management::_AllowBluetoothProto_default_instance_);
+}
+inline const ::enterprise_management::AllowBluetoothProto& ChromeDeviceSettingsProto::allow_bluetooth() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.allow_bluetooth)
+  return _internal_allow_bluetooth();
+}
+inline ::enterprise_management::AllowBluetoothProto* ChromeDeviceSettingsProto::release_allow_bluetooth() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.allow_bluetooth)
+  _has_bits_[1] &= ~0x00000400u;
+  ::enterprise_management::AllowBluetoothProto* temp = allow_bluetooth_;
+  allow_bluetooth_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AllowBluetoothProto* ChromeDeviceSettingsProto::_internal_mutable_allow_bluetooth() {
+  _has_bits_[1] |= 0x00000400u;
+  if (allow_bluetooth_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AllowBluetoothProto>(GetArenaNoVirtual());
+    allow_bluetooth_ = p;
+  }
+  return allow_bluetooth_;
+}
+inline ::enterprise_management::AllowBluetoothProto* ChromeDeviceSettingsProto::mutable_allow_bluetooth() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.allow_bluetooth)
+  return _internal_mutable_allow_bluetooth();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_allow_bluetooth(::enterprise_management::AllowBluetoothProto* allow_bluetooth) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete allow_bluetooth_;
+  }
+  if (allow_bluetooth) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      allow_bluetooth = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, allow_bluetooth, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000400u;
+  } else {
+    _has_bits_[1] &= ~0x00000400u;
+  }
+  allow_bluetooth_ = allow_bluetooth;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.allow_bluetooth)
+}
+
+// optional .enterprise_management.DeviceQuirksDownloadEnabledProto quirks_download_enabled = 44;
+inline bool ChromeDeviceSettingsProto::_internal_has_quirks_download_enabled() const {
+  bool value = (_has_bits_[1] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || quirks_download_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_quirks_download_enabled() const {
+  return _internal_has_quirks_download_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_quirks_download_enabled() {
+  if (quirks_download_enabled_ != nullptr) quirks_download_enabled_->Clear();
+  _has_bits_[1] &= ~0x00000800u;
+}
+inline const ::enterprise_management::DeviceQuirksDownloadEnabledProto& ChromeDeviceSettingsProto::_internal_quirks_download_enabled() const {
+  const ::enterprise_management::DeviceQuirksDownloadEnabledProto* p = quirks_download_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceQuirksDownloadEnabledProto*>(
+      &::enterprise_management::_DeviceQuirksDownloadEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceQuirksDownloadEnabledProto& ChromeDeviceSettingsProto::quirks_download_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.quirks_download_enabled)
+  return _internal_quirks_download_enabled();
+}
+inline ::enterprise_management::DeviceQuirksDownloadEnabledProto* ChromeDeviceSettingsProto::release_quirks_download_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.quirks_download_enabled)
+  _has_bits_[1] &= ~0x00000800u;
+  ::enterprise_management::DeviceQuirksDownloadEnabledProto* temp = quirks_download_enabled_;
+  quirks_download_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceQuirksDownloadEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_quirks_download_enabled() {
+  _has_bits_[1] |= 0x00000800u;
+  if (quirks_download_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceQuirksDownloadEnabledProto>(GetArenaNoVirtual());
+    quirks_download_enabled_ = p;
+  }
+  return quirks_download_enabled_;
+}
+inline ::enterprise_management::DeviceQuirksDownloadEnabledProto* ChromeDeviceSettingsProto::mutable_quirks_download_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.quirks_download_enabled)
+  return _internal_mutable_quirks_download_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_quirks_download_enabled(::enterprise_management::DeviceQuirksDownloadEnabledProto* quirks_download_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete quirks_download_enabled_;
+  }
+  if (quirks_download_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      quirks_download_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, quirks_download_enabled, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000800u;
+  } else {
+    _has_bits_[1] &= ~0x00000800u;
+  }
+  quirks_download_enabled_ = quirks_download_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.quirks_download_enabled)
+}
+
+// optional .enterprise_management.LoginVideoCaptureAllowedUrlsProto login_video_capture_allowed_urls = 45;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_video_capture_allowed_urls() const {
+  bool value = (_has_bits_[1] & 0x00001000u) != 0;
+  PROTOBUF_ASSUME(!value || login_video_capture_allowed_urls_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_video_capture_allowed_urls() const {
+  return _internal_has_login_video_capture_allowed_urls();
+}
+inline void ChromeDeviceSettingsProto::clear_login_video_capture_allowed_urls() {
+  if (login_video_capture_allowed_urls_ != nullptr) login_video_capture_allowed_urls_->Clear();
+  _has_bits_[1] &= ~0x00001000u;
+}
+inline const ::enterprise_management::LoginVideoCaptureAllowedUrlsProto& ChromeDeviceSettingsProto::_internal_login_video_capture_allowed_urls() const {
+  const ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* p = login_video_capture_allowed_urls_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::LoginVideoCaptureAllowedUrlsProto*>(
+      &::enterprise_management::_LoginVideoCaptureAllowedUrlsProto_default_instance_);
+}
+inline const ::enterprise_management::LoginVideoCaptureAllowedUrlsProto& ChromeDeviceSettingsProto::login_video_capture_allowed_urls() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_video_capture_allowed_urls)
+  return _internal_login_video_capture_allowed_urls();
+}
+inline ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* ChromeDeviceSettingsProto::release_login_video_capture_allowed_urls() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_video_capture_allowed_urls)
+  _has_bits_[1] &= ~0x00001000u;
+  ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* temp = login_video_capture_allowed_urls_;
+  login_video_capture_allowed_urls_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* ChromeDeviceSettingsProto::_internal_mutable_login_video_capture_allowed_urls() {
+  _has_bits_[1] |= 0x00001000u;
+  if (login_video_capture_allowed_urls_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::LoginVideoCaptureAllowedUrlsProto>(GetArenaNoVirtual());
+    login_video_capture_allowed_urls_ = p;
+  }
+  return login_video_capture_allowed_urls_;
+}
+inline ::enterprise_management::LoginVideoCaptureAllowedUrlsProto* ChromeDeviceSettingsProto::mutable_login_video_capture_allowed_urls() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_video_capture_allowed_urls)
+  return _internal_mutable_login_video_capture_allowed_urls();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_video_capture_allowed_urls(::enterprise_management::LoginVideoCaptureAllowedUrlsProto* login_video_capture_allowed_urls) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete login_video_capture_allowed_urls_;
+  }
+  if (login_video_capture_allowed_urls) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_video_capture_allowed_urls = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_video_capture_allowed_urls, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00001000u;
+  } else {
+    _has_bits_[1] &= ~0x00001000u;
+  }
+  login_video_capture_allowed_urls_ = login_video_capture_allowed_urls;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_video_capture_allowed_urls)
+}
+
+// optional .enterprise_management.DeviceLoginScreenExtensionsProto device_login_screen_extensions = 46;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_login_screen_extensions() const {
+  bool value = (_has_bits_[1] & 0x00002000u) != 0;
+  PROTOBUF_ASSUME(!value || device_login_screen_extensions_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_login_screen_extensions() const {
+  return _internal_has_device_login_screen_extensions();
+}
+inline void ChromeDeviceSettingsProto::clear_device_login_screen_extensions() {
+  if (device_login_screen_extensions_ != nullptr) device_login_screen_extensions_->Clear();
+  _has_bits_[1] &= ~0x00002000u;
+}
+inline const ::enterprise_management::DeviceLoginScreenExtensionsProto& ChromeDeviceSettingsProto::_internal_device_login_screen_extensions() const {
+  const ::enterprise_management::DeviceLoginScreenExtensionsProto* p = device_login_screen_extensions_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceLoginScreenExtensionsProto*>(
+      &::enterprise_management::_DeviceLoginScreenExtensionsProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceLoginScreenExtensionsProto& ChromeDeviceSettingsProto::device_login_screen_extensions() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_extensions)
+  return _internal_device_login_screen_extensions();
+}
+inline ::enterprise_management::DeviceLoginScreenExtensionsProto* ChromeDeviceSettingsProto::release_device_login_screen_extensions() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_extensions)
+  _has_bits_[1] &= ~0x00002000u;
+  ::enterprise_management::DeviceLoginScreenExtensionsProto* temp = device_login_screen_extensions_;
+  device_login_screen_extensions_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceLoginScreenExtensionsProto* ChromeDeviceSettingsProto::_internal_mutable_device_login_screen_extensions() {
+  _has_bits_[1] |= 0x00002000u;
+  if (device_login_screen_extensions_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceLoginScreenExtensionsProto>(GetArenaNoVirtual());
+    device_login_screen_extensions_ = p;
+  }
+  return device_login_screen_extensions_;
+}
+inline ::enterprise_management::DeviceLoginScreenExtensionsProto* ChromeDeviceSettingsProto::mutable_device_login_screen_extensions() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_extensions)
+  return _internal_mutable_device_login_screen_extensions();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_login_screen_extensions(::enterprise_management::DeviceLoginScreenExtensionsProto* device_login_screen_extensions) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_login_screen_extensions_;
+  }
+  if (device_login_screen_extensions) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_login_screen_extensions = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_login_screen_extensions, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00002000u;
+  } else {
+    _has_bits_[1] &= ~0x00002000u;
+  }
+  device_login_screen_extensions_ = device_login_screen_extensions;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_extensions)
+}
+
+// optional .enterprise_management.NetworkThrottlingEnabledProto network_throttling = 47;
+inline bool ChromeDeviceSettingsProto::_internal_has_network_throttling() const {
+  bool value = (_has_bits_[1] & 0x00004000u) != 0;
+  PROTOBUF_ASSUME(!value || network_throttling_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_network_throttling() const {
+  return _internal_has_network_throttling();
+}
+inline void ChromeDeviceSettingsProto::clear_network_throttling() {
+  if (network_throttling_ != nullptr) network_throttling_->Clear();
+  _has_bits_[1] &= ~0x00004000u;
+}
+inline const ::enterprise_management::NetworkThrottlingEnabledProto& ChromeDeviceSettingsProto::_internal_network_throttling() const {
+  const ::enterprise_management::NetworkThrottlingEnabledProto* p = network_throttling_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::NetworkThrottlingEnabledProto*>(
+      &::enterprise_management::_NetworkThrottlingEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::NetworkThrottlingEnabledProto& ChromeDeviceSettingsProto::network_throttling() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.network_throttling)
+  return _internal_network_throttling();
+}
+inline ::enterprise_management::NetworkThrottlingEnabledProto* ChromeDeviceSettingsProto::release_network_throttling() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.network_throttling)
+  _has_bits_[1] &= ~0x00004000u;
+  ::enterprise_management::NetworkThrottlingEnabledProto* temp = network_throttling_;
+  network_throttling_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::NetworkThrottlingEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_network_throttling() {
+  _has_bits_[1] |= 0x00004000u;
+  if (network_throttling_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::NetworkThrottlingEnabledProto>(GetArenaNoVirtual());
+    network_throttling_ = p;
+  }
+  return network_throttling_;
+}
+inline ::enterprise_management::NetworkThrottlingEnabledProto* ChromeDeviceSettingsProto::mutable_network_throttling() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.network_throttling)
+  return _internal_mutable_network_throttling();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_network_throttling(::enterprise_management::NetworkThrottlingEnabledProto* network_throttling) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete network_throttling_;
+  }
+  if (network_throttling) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      network_throttling = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, network_throttling, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00004000u;
+  } else {
+    _has_bits_[1] &= ~0x00004000u;
+  }
+  network_throttling_ = network_throttling;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.network_throttling)
+}
+
+// optional .enterprise_management.DeviceWallpaperImageProto device_wallpaper_image = 48;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_wallpaper_image() const {
+  bool value = (_has_bits_[1] & 0x00008000u) != 0;
+  PROTOBUF_ASSUME(!value || device_wallpaper_image_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_wallpaper_image() const {
+  return _internal_has_device_wallpaper_image();
+}
+inline void ChromeDeviceSettingsProto::clear_device_wallpaper_image() {
+  if (device_wallpaper_image_ != nullptr) device_wallpaper_image_->Clear();
+  _has_bits_[1] &= ~0x00008000u;
+}
+inline const ::enterprise_management::DeviceWallpaperImageProto& ChromeDeviceSettingsProto::_internal_device_wallpaper_image() const {
+  const ::enterprise_management::DeviceWallpaperImageProto* p = device_wallpaper_image_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceWallpaperImageProto*>(
+      &::enterprise_management::_DeviceWallpaperImageProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceWallpaperImageProto& ChromeDeviceSettingsProto::device_wallpaper_image() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_wallpaper_image)
+  return _internal_device_wallpaper_image();
+}
+inline ::enterprise_management::DeviceWallpaperImageProto* ChromeDeviceSettingsProto::release_device_wallpaper_image() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_wallpaper_image)
+  _has_bits_[1] &= ~0x00008000u;
+  ::enterprise_management::DeviceWallpaperImageProto* temp = device_wallpaper_image_;
+  device_wallpaper_image_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceWallpaperImageProto* ChromeDeviceSettingsProto::_internal_mutable_device_wallpaper_image() {
+  _has_bits_[1] |= 0x00008000u;
+  if (device_wallpaper_image_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceWallpaperImageProto>(GetArenaNoVirtual());
+    device_wallpaper_image_ = p;
+  }
+  return device_wallpaper_image_;
+}
+inline ::enterprise_management::DeviceWallpaperImageProto* ChromeDeviceSettingsProto::mutable_device_wallpaper_image() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_wallpaper_image)
+  return _internal_mutable_device_wallpaper_image();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_wallpaper_image(::enterprise_management::DeviceWallpaperImageProto* device_wallpaper_image) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_wallpaper_image_;
+  }
+  if (device_wallpaper_image) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_wallpaper_image = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_wallpaper_image, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00008000u;
+  } else {
+    _has_bits_[1] &= ~0x00008000u;
+  }
+  device_wallpaper_image_ = device_wallpaper_image;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_wallpaper_image)
+}
+
+// optional .enterprise_management.LoginScreenLocalesProto login_screen_locales = 49;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_screen_locales() const {
+  bool value = (_has_bits_[1] & 0x00010000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_locales_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_screen_locales() const {
+  return _internal_has_login_screen_locales();
+}
+inline void ChromeDeviceSettingsProto::clear_login_screen_locales() {
+  if (login_screen_locales_ != nullptr) login_screen_locales_->Clear();
+  _has_bits_[1] &= ~0x00010000u;
+}
+inline const ::enterprise_management::LoginScreenLocalesProto& ChromeDeviceSettingsProto::_internal_login_screen_locales() const {
+  const ::enterprise_management::LoginScreenLocalesProto* p = login_screen_locales_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::LoginScreenLocalesProto*>(
+      &::enterprise_management::_LoginScreenLocalesProto_default_instance_);
+}
+inline const ::enterprise_management::LoginScreenLocalesProto& ChromeDeviceSettingsProto::login_screen_locales() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_screen_locales)
+  return _internal_login_screen_locales();
+}
+inline ::enterprise_management::LoginScreenLocalesProto* ChromeDeviceSettingsProto::release_login_screen_locales() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_screen_locales)
+  _has_bits_[1] &= ~0x00010000u;
+  ::enterprise_management::LoginScreenLocalesProto* temp = login_screen_locales_;
+  login_screen_locales_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::LoginScreenLocalesProto* ChromeDeviceSettingsProto::_internal_mutable_login_screen_locales() {
+  _has_bits_[1] |= 0x00010000u;
+  if (login_screen_locales_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::LoginScreenLocalesProto>(GetArenaNoVirtual());
+    login_screen_locales_ = p;
+  }
+  return login_screen_locales_;
+}
+inline ::enterprise_management::LoginScreenLocalesProto* ChromeDeviceSettingsProto::mutable_login_screen_locales() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_screen_locales)
+  return _internal_mutable_login_screen_locales();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_screen_locales(::enterprise_management::LoginScreenLocalesProto* login_screen_locales) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete login_screen_locales_;
+  }
+  if (login_screen_locales) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_locales = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_locales, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00010000u;
+  } else {
+    _has_bits_[1] &= ~0x00010000u;
+  }
+  login_screen_locales_ = login_screen_locales;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_screen_locales)
+}
+
+// optional .enterprise_management.LoginScreenInputMethodsProto login_screen_input_methods = 50;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_screen_input_methods() const {
+  bool value = (_has_bits_[1] & 0x00020000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_input_methods_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_screen_input_methods() const {
+  return _internal_has_login_screen_input_methods();
+}
+inline void ChromeDeviceSettingsProto::clear_login_screen_input_methods() {
+  if (login_screen_input_methods_ != nullptr) login_screen_input_methods_->Clear();
+  _has_bits_[1] &= ~0x00020000u;
+}
+inline const ::enterprise_management::LoginScreenInputMethodsProto& ChromeDeviceSettingsProto::_internal_login_screen_input_methods() const {
+  const ::enterprise_management::LoginScreenInputMethodsProto* p = login_screen_input_methods_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::LoginScreenInputMethodsProto*>(
+      &::enterprise_management::_LoginScreenInputMethodsProto_default_instance_);
+}
+inline const ::enterprise_management::LoginScreenInputMethodsProto& ChromeDeviceSettingsProto::login_screen_input_methods() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_screen_input_methods)
+  return _internal_login_screen_input_methods();
+}
+inline ::enterprise_management::LoginScreenInputMethodsProto* ChromeDeviceSettingsProto::release_login_screen_input_methods() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_screen_input_methods)
+  _has_bits_[1] &= ~0x00020000u;
+  ::enterprise_management::LoginScreenInputMethodsProto* temp = login_screen_input_methods_;
+  login_screen_input_methods_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::LoginScreenInputMethodsProto* ChromeDeviceSettingsProto::_internal_mutable_login_screen_input_methods() {
+  _has_bits_[1] |= 0x00020000u;
+  if (login_screen_input_methods_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::LoginScreenInputMethodsProto>(GetArenaNoVirtual());
+    login_screen_input_methods_ = p;
+  }
+  return login_screen_input_methods_;
+}
+inline ::enterprise_management::LoginScreenInputMethodsProto* ChromeDeviceSettingsProto::mutable_login_screen_input_methods() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_screen_input_methods)
+  return _internal_mutable_login_screen_input_methods();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_screen_input_methods(::enterprise_management::LoginScreenInputMethodsProto* login_screen_input_methods) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete login_screen_input_methods_;
+  }
+  if (login_screen_input_methods) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_input_methods = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_input_methods, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00020000u;
+  } else {
+    _has_bits_[1] &= ~0x00020000u;
+  }
+  login_screen_input_methods_ = login_screen_input_methods;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_screen_input_methods)
+}
+
+// optional .enterprise_management.DeviceEcryptfsMigrationStrategyProto device_ecryptfs_migration_strategy = 51 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_device_ecryptfs_migration_strategy() const {
+  bool value = (_has_bits_[1] & 0x00040000u) != 0;
+  PROTOBUF_ASSUME(!value || device_ecryptfs_migration_strategy_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_ecryptfs_migration_strategy() const {
+  return _internal_has_device_ecryptfs_migration_strategy();
+}
+inline void ChromeDeviceSettingsProto::clear_device_ecryptfs_migration_strategy() {
+  if (device_ecryptfs_migration_strategy_ != nullptr) device_ecryptfs_migration_strategy_->Clear();
+  _has_bits_[1] &= ~0x00040000u;
+}
+inline const ::enterprise_management::DeviceEcryptfsMigrationStrategyProto& ChromeDeviceSettingsProto::_internal_device_ecryptfs_migration_strategy() const {
+  const ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* p = device_ecryptfs_migration_strategy_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceEcryptfsMigrationStrategyProto*>(
+      &::enterprise_management::_DeviceEcryptfsMigrationStrategyProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceEcryptfsMigrationStrategyProto& ChromeDeviceSettingsProto::device_ecryptfs_migration_strategy() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_ecryptfs_migration_strategy)
+  return _internal_device_ecryptfs_migration_strategy();
+}
+inline ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* ChromeDeviceSettingsProto::release_device_ecryptfs_migration_strategy() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_ecryptfs_migration_strategy)
+  _has_bits_[1] &= ~0x00040000u;
+  ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* temp = device_ecryptfs_migration_strategy_;
+  device_ecryptfs_migration_strategy_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* ChromeDeviceSettingsProto::_internal_mutable_device_ecryptfs_migration_strategy() {
+  _has_bits_[1] |= 0x00040000u;
+  if (device_ecryptfs_migration_strategy_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceEcryptfsMigrationStrategyProto>(GetArenaNoVirtual());
+    device_ecryptfs_migration_strategy_ = p;
+  }
+  return device_ecryptfs_migration_strategy_;
+}
+inline ::enterprise_management::DeviceEcryptfsMigrationStrategyProto* ChromeDeviceSettingsProto::mutable_device_ecryptfs_migration_strategy() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_ecryptfs_migration_strategy)
+  return _internal_mutable_device_ecryptfs_migration_strategy();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_ecryptfs_migration_strategy(::enterprise_management::DeviceEcryptfsMigrationStrategyProto* device_ecryptfs_migration_strategy) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_ecryptfs_migration_strategy_;
+  }
+  if (device_ecryptfs_migration_strategy) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_ecryptfs_migration_strategy = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_ecryptfs_migration_strategy, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00040000u;
+  } else {
+    _has_bits_[1] &= ~0x00040000u;
+  }
+  device_ecryptfs_migration_strategy_ = device_ecryptfs_migration_strategy;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_ecryptfs_migration_strategy)
+}
+
+// optional .enterprise_management.DeviceSecondFactorAuthenticationProto device_second_factor_authentication = 52;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_second_factor_authentication() const {
+  bool value = (_has_bits_[1] & 0x00080000u) != 0;
+  PROTOBUF_ASSUME(!value || device_second_factor_authentication_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_second_factor_authentication() const {
+  return _internal_has_device_second_factor_authentication();
+}
+inline void ChromeDeviceSettingsProto::clear_device_second_factor_authentication() {
+  if (device_second_factor_authentication_ != nullptr) device_second_factor_authentication_->Clear();
+  _has_bits_[1] &= ~0x00080000u;
+}
+inline const ::enterprise_management::DeviceSecondFactorAuthenticationProto& ChromeDeviceSettingsProto::_internal_device_second_factor_authentication() const {
+  const ::enterprise_management::DeviceSecondFactorAuthenticationProto* p = device_second_factor_authentication_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceSecondFactorAuthenticationProto*>(
+      &::enterprise_management::_DeviceSecondFactorAuthenticationProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceSecondFactorAuthenticationProto& ChromeDeviceSettingsProto::device_second_factor_authentication() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_second_factor_authentication)
+  return _internal_device_second_factor_authentication();
+}
+inline ::enterprise_management::DeviceSecondFactorAuthenticationProto* ChromeDeviceSettingsProto::release_device_second_factor_authentication() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_second_factor_authentication)
+  _has_bits_[1] &= ~0x00080000u;
+  ::enterprise_management::DeviceSecondFactorAuthenticationProto* temp = device_second_factor_authentication_;
+  device_second_factor_authentication_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceSecondFactorAuthenticationProto* ChromeDeviceSettingsProto::_internal_mutable_device_second_factor_authentication() {
+  _has_bits_[1] |= 0x00080000u;
+  if (device_second_factor_authentication_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceSecondFactorAuthenticationProto>(GetArenaNoVirtual());
+    device_second_factor_authentication_ = p;
+  }
+  return device_second_factor_authentication_;
+}
+inline ::enterprise_management::DeviceSecondFactorAuthenticationProto* ChromeDeviceSettingsProto::mutable_device_second_factor_authentication() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_second_factor_authentication)
+  return _internal_mutable_device_second_factor_authentication();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_second_factor_authentication(::enterprise_management::DeviceSecondFactorAuthenticationProto* device_second_factor_authentication) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_second_factor_authentication_;
+  }
+  if (device_second_factor_authentication) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_second_factor_authentication = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_second_factor_authentication, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00080000u;
+  } else {
+    _has_bits_[1] &= ~0x00080000u;
+  }
+  device_second_factor_authentication_ = device_second_factor_authentication;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_second_factor_authentication)
+}
+
+// optional .enterprise_management.CastReceiverNameProto cast_receiver_name = 53;
+inline bool ChromeDeviceSettingsProto::_internal_has_cast_receiver_name() const {
+  bool value = (_has_bits_[1] & 0x00100000u) != 0;
+  PROTOBUF_ASSUME(!value || cast_receiver_name_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_cast_receiver_name() const {
+  return _internal_has_cast_receiver_name();
+}
+inline void ChromeDeviceSettingsProto::clear_cast_receiver_name() {
+  if (cast_receiver_name_ != nullptr) cast_receiver_name_->Clear();
+  _has_bits_[1] &= ~0x00100000u;
+}
+inline const ::enterprise_management::CastReceiverNameProto& ChromeDeviceSettingsProto::_internal_cast_receiver_name() const {
+  const ::enterprise_management::CastReceiverNameProto* p = cast_receiver_name_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CastReceiverNameProto*>(
+      &::enterprise_management::_CastReceiverNameProto_default_instance_);
+}
+inline const ::enterprise_management::CastReceiverNameProto& ChromeDeviceSettingsProto::cast_receiver_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.cast_receiver_name)
+  return _internal_cast_receiver_name();
+}
+inline ::enterprise_management::CastReceiverNameProto* ChromeDeviceSettingsProto::release_cast_receiver_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.cast_receiver_name)
+  _has_bits_[1] &= ~0x00100000u;
+  ::enterprise_management::CastReceiverNameProto* temp = cast_receiver_name_;
+  cast_receiver_name_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CastReceiverNameProto* ChromeDeviceSettingsProto::_internal_mutable_cast_receiver_name() {
+  _has_bits_[1] |= 0x00100000u;
+  if (cast_receiver_name_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CastReceiverNameProto>(GetArenaNoVirtual());
+    cast_receiver_name_ = p;
+  }
+  return cast_receiver_name_;
+}
+inline ::enterprise_management::CastReceiverNameProto* ChromeDeviceSettingsProto::mutable_cast_receiver_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.cast_receiver_name)
+  return _internal_mutable_cast_receiver_name();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_cast_receiver_name(::enterprise_management::CastReceiverNameProto* cast_receiver_name) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete cast_receiver_name_;
+  }
+  if (cast_receiver_name) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      cast_receiver_name = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, cast_receiver_name, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00100000u;
+  } else {
+    _has_bits_[1] &= ~0x00100000u;
+  }
+  cast_receiver_name_ = cast_receiver_name;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.cast_receiver_name)
+}
+
+// optional .enterprise_management.DeviceOffHoursProto device_off_hours = 54;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_off_hours() const {
+  bool value = (_has_bits_[1] & 0x00200000u) != 0;
+  PROTOBUF_ASSUME(!value || device_off_hours_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_off_hours() const {
+  return _internal_has_device_off_hours();
+}
+inline void ChromeDeviceSettingsProto::clear_device_off_hours() {
+  if (device_off_hours_ != nullptr) device_off_hours_->Clear();
+  _has_bits_[1] &= ~0x00200000u;
+}
+inline const ::enterprise_management::DeviceOffHoursProto& ChromeDeviceSettingsProto::_internal_device_off_hours() const {
+  const ::enterprise_management::DeviceOffHoursProto* p = device_off_hours_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceOffHoursProto*>(
+      &::enterprise_management::_DeviceOffHoursProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceOffHoursProto& ChromeDeviceSettingsProto::device_off_hours() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_off_hours)
+  return _internal_device_off_hours();
+}
+inline ::enterprise_management::DeviceOffHoursProto* ChromeDeviceSettingsProto::release_device_off_hours() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_off_hours)
+  _has_bits_[1] &= ~0x00200000u;
+  ::enterprise_management::DeviceOffHoursProto* temp = device_off_hours_;
+  device_off_hours_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceOffHoursProto* ChromeDeviceSettingsProto::_internal_mutable_device_off_hours() {
+  _has_bits_[1] |= 0x00200000u;
+  if (device_off_hours_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceOffHoursProto>(GetArenaNoVirtual());
+    device_off_hours_ = p;
+  }
+  return device_off_hours_;
+}
+inline ::enterprise_management::DeviceOffHoursProto* ChromeDeviceSettingsProto::mutable_device_off_hours() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_off_hours)
+  return _internal_mutable_device_off_hours();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_off_hours(::enterprise_management::DeviceOffHoursProto* device_off_hours) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_off_hours_;
+  }
+  if (device_off_hours) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_off_hours = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_off_hours, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00200000u;
+  } else {
+    _has_bits_[1] &= ~0x00200000u;
+  }
+  device_off_hours_ = device_off_hours;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_off_hours)
+}
+
+// optional .enterprise_management.DeviceNativePrintersProto native_device_printers = 55;
+inline bool ChromeDeviceSettingsProto::_internal_has_native_device_printers() const {
+  bool value = (_has_bits_[1] & 0x00400000u) != 0;
+  PROTOBUF_ASSUME(!value || native_device_printers_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_native_device_printers() const {
+  return _internal_has_native_device_printers();
+}
+inline void ChromeDeviceSettingsProto::clear_native_device_printers() {
+  if (native_device_printers_ != nullptr) native_device_printers_->Clear();
+  _has_bits_[1] &= ~0x00400000u;
+}
+inline const ::enterprise_management::DeviceNativePrintersProto& ChromeDeviceSettingsProto::_internal_native_device_printers() const {
+  const ::enterprise_management::DeviceNativePrintersProto* p = native_device_printers_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceNativePrintersProto*>(
+      &::enterprise_management::_DeviceNativePrintersProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceNativePrintersProto& ChromeDeviceSettingsProto::native_device_printers() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.native_device_printers)
+  return _internal_native_device_printers();
+}
+inline ::enterprise_management::DeviceNativePrintersProto* ChromeDeviceSettingsProto::release_native_device_printers() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.native_device_printers)
+  _has_bits_[1] &= ~0x00400000u;
+  ::enterprise_management::DeviceNativePrintersProto* temp = native_device_printers_;
+  native_device_printers_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceNativePrintersProto* ChromeDeviceSettingsProto::_internal_mutable_native_device_printers() {
+  _has_bits_[1] |= 0x00400000u;
+  if (native_device_printers_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceNativePrintersProto>(GetArenaNoVirtual());
+    native_device_printers_ = p;
+  }
+  return native_device_printers_;
+}
+inline ::enterprise_management::DeviceNativePrintersProto* ChromeDeviceSettingsProto::mutable_native_device_printers() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.native_device_printers)
+  return _internal_mutable_native_device_printers();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_native_device_printers(::enterprise_management::DeviceNativePrintersProto* native_device_printers) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete native_device_printers_;
+  }
+  if (native_device_printers) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      native_device_printers = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, native_device_printers, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00400000u;
+  } else {
+    _has_bits_[1] &= ~0x00400000u;
+  }
+  native_device_printers_ = native_device_printers;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.native_device_printers)
+}
+
+// optional .enterprise_management.DeviceNativePrintersAccessModeProto native_device_printers_access_mode = 56;
+inline bool ChromeDeviceSettingsProto::_internal_has_native_device_printers_access_mode() const {
+  bool value = (_has_bits_[1] & 0x00800000u) != 0;
+  PROTOBUF_ASSUME(!value || native_device_printers_access_mode_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_native_device_printers_access_mode() const {
+  return _internal_has_native_device_printers_access_mode();
+}
+inline void ChromeDeviceSettingsProto::clear_native_device_printers_access_mode() {
+  if (native_device_printers_access_mode_ != nullptr) native_device_printers_access_mode_->Clear();
+  _has_bits_[1] &= ~0x00800000u;
+}
+inline const ::enterprise_management::DeviceNativePrintersAccessModeProto& ChromeDeviceSettingsProto::_internal_native_device_printers_access_mode() const {
+  const ::enterprise_management::DeviceNativePrintersAccessModeProto* p = native_device_printers_access_mode_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceNativePrintersAccessModeProto*>(
+      &::enterprise_management::_DeviceNativePrintersAccessModeProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceNativePrintersAccessModeProto& ChromeDeviceSettingsProto::native_device_printers_access_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_access_mode)
+  return _internal_native_device_printers_access_mode();
+}
+inline ::enterprise_management::DeviceNativePrintersAccessModeProto* ChromeDeviceSettingsProto::release_native_device_printers_access_mode() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_access_mode)
+  _has_bits_[1] &= ~0x00800000u;
+  ::enterprise_management::DeviceNativePrintersAccessModeProto* temp = native_device_printers_access_mode_;
+  native_device_printers_access_mode_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceNativePrintersAccessModeProto* ChromeDeviceSettingsProto::_internal_mutable_native_device_printers_access_mode() {
+  _has_bits_[1] |= 0x00800000u;
+  if (native_device_printers_access_mode_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceNativePrintersAccessModeProto>(GetArenaNoVirtual());
+    native_device_printers_access_mode_ = p;
+  }
+  return native_device_printers_access_mode_;
+}
+inline ::enterprise_management::DeviceNativePrintersAccessModeProto* ChromeDeviceSettingsProto::mutable_native_device_printers_access_mode() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_access_mode)
+  return _internal_mutable_native_device_printers_access_mode();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_native_device_printers_access_mode(::enterprise_management::DeviceNativePrintersAccessModeProto* native_device_printers_access_mode) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete native_device_printers_access_mode_;
+  }
+  if (native_device_printers_access_mode) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      native_device_printers_access_mode = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, native_device_printers_access_mode, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00800000u;
+  } else {
+    _has_bits_[1] &= ~0x00800000u;
+  }
+  native_device_printers_access_mode_ = native_device_printers_access_mode;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_access_mode)
+}
+
+// optional .enterprise_management.DeviceNativePrintersBlacklistProto native_device_printers_blacklist = 57;
+inline bool ChromeDeviceSettingsProto::_internal_has_native_device_printers_blacklist() const {
+  bool value = (_has_bits_[1] & 0x01000000u) != 0;
+  PROTOBUF_ASSUME(!value || native_device_printers_blacklist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_native_device_printers_blacklist() const {
+  return _internal_has_native_device_printers_blacklist();
+}
+inline void ChromeDeviceSettingsProto::clear_native_device_printers_blacklist() {
+  if (native_device_printers_blacklist_ != nullptr) native_device_printers_blacklist_->Clear();
+  _has_bits_[1] &= ~0x01000000u;
+}
+inline const ::enterprise_management::DeviceNativePrintersBlacklistProto& ChromeDeviceSettingsProto::_internal_native_device_printers_blacklist() const {
+  const ::enterprise_management::DeviceNativePrintersBlacklistProto* p = native_device_printers_blacklist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceNativePrintersBlacklistProto*>(
+      &::enterprise_management::_DeviceNativePrintersBlacklistProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceNativePrintersBlacklistProto& ChromeDeviceSettingsProto::native_device_printers_blacklist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_blacklist)
+  return _internal_native_device_printers_blacklist();
+}
+inline ::enterprise_management::DeviceNativePrintersBlacklistProto* ChromeDeviceSettingsProto::release_native_device_printers_blacklist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_blacklist)
+  _has_bits_[1] &= ~0x01000000u;
+  ::enterprise_management::DeviceNativePrintersBlacklistProto* temp = native_device_printers_blacklist_;
+  native_device_printers_blacklist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceNativePrintersBlacklistProto* ChromeDeviceSettingsProto::_internal_mutable_native_device_printers_blacklist() {
+  _has_bits_[1] |= 0x01000000u;
+  if (native_device_printers_blacklist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceNativePrintersBlacklistProto>(GetArenaNoVirtual());
+    native_device_printers_blacklist_ = p;
+  }
+  return native_device_printers_blacklist_;
+}
+inline ::enterprise_management::DeviceNativePrintersBlacklistProto* ChromeDeviceSettingsProto::mutable_native_device_printers_blacklist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_blacklist)
+  return _internal_mutable_native_device_printers_blacklist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_native_device_printers_blacklist(::enterprise_management::DeviceNativePrintersBlacklistProto* native_device_printers_blacklist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete native_device_printers_blacklist_;
+  }
+  if (native_device_printers_blacklist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      native_device_printers_blacklist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, native_device_printers_blacklist, submessage_arena);
+    }
+    _has_bits_[1] |= 0x01000000u;
+  } else {
+    _has_bits_[1] &= ~0x01000000u;
+  }
+  native_device_printers_blacklist_ = native_device_printers_blacklist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_blacklist)
+}
+
+// optional .enterprise_management.DeviceNativePrintersWhitelistProto native_device_printers_whitelist = 58;
+inline bool ChromeDeviceSettingsProto::_internal_has_native_device_printers_whitelist() const {
+  bool value = (_has_bits_[1] & 0x02000000u) != 0;
+  PROTOBUF_ASSUME(!value || native_device_printers_whitelist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_native_device_printers_whitelist() const {
+  return _internal_has_native_device_printers_whitelist();
+}
+inline void ChromeDeviceSettingsProto::clear_native_device_printers_whitelist() {
+  if (native_device_printers_whitelist_ != nullptr) native_device_printers_whitelist_->Clear();
+  _has_bits_[1] &= ~0x02000000u;
+}
+inline const ::enterprise_management::DeviceNativePrintersWhitelistProto& ChromeDeviceSettingsProto::_internal_native_device_printers_whitelist() const {
+  const ::enterprise_management::DeviceNativePrintersWhitelistProto* p = native_device_printers_whitelist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceNativePrintersWhitelistProto*>(
+      &::enterprise_management::_DeviceNativePrintersWhitelistProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceNativePrintersWhitelistProto& ChromeDeviceSettingsProto::native_device_printers_whitelist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_whitelist)
+  return _internal_native_device_printers_whitelist();
+}
+inline ::enterprise_management::DeviceNativePrintersWhitelistProto* ChromeDeviceSettingsProto::release_native_device_printers_whitelist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_whitelist)
+  _has_bits_[1] &= ~0x02000000u;
+  ::enterprise_management::DeviceNativePrintersWhitelistProto* temp = native_device_printers_whitelist_;
+  native_device_printers_whitelist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceNativePrintersWhitelistProto* ChromeDeviceSettingsProto::_internal_mutable_native_device_printers_whitelist() {
+  _has_bits_[1] |= 0x02000000u;
+  if (native_device_printers_whitelist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceNativePrintersWhitelistProto>(GetArenaNoVirtual());
+    native_device_printers_whitelist_ = p;
+  }
+  return native_device_printers_whitelist_;
+}
+inline ::enterprise_management::DeviceNativePrintersWhitelistProto* ChromeDeviceSettingsProto::mutable_native_device_printers_whitelist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_whitelist)
+  return _internal_mutable_native_device_printers_whitelist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_native_device_printers_whitelist(::enterprise_management::DeviceNativePrintersWhitelistProto* native_device_printers_whitelist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete native_device_printers_whitelist_;
+  }
+  if (native_device_printers_whitelist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      native_device_printers_whitelist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, native_device_printers_whitelist, submessage_arena);
+    }
+    _has_bits_[1] |= 0x02000000u;
+  } else {
+    _has_bits_[1] &= ~0x02000000u;
+  }
+  native_device_printers_whitelist_ = native_device_printers_whitelist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.native_device_printers_whitelist)
+}
+
+// optional .enterprise_management.TPMFirmwareUpdateSettingsProto tpm_firmware_update_settings = 59;
+inline bool ChromeDeviceSettingsProto::_internal_has_tpm_firmware_update_settings() const {
+  bool value = (_has_bits_[1] & 0x04000000u) != 0;
+  PROTOBUF_ASSUME(!value || tpm_firmware_update_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_tpm_firmware_update_settings() const {
+  return _internal_has_tpm_firmware_update_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_tpm_firmware_update_settings() {
+  if (tpm_firmware_update_settings_ != nullptr) tpm_firmware_update_settings_->Clear();
+  _has_bits_[1] &= ~0x04000000u;
+}
+inline const ::enterprise_management::TPMFirmwareUpdateSettingsProto& ChromeDeviceSettingsProto::_internal_tpm_firmware_update_settings() const {
+  const ::enterprise_management::TPMFirmwareUpdateSettingsProto* p = tpm_firmware_update_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::TPMFirmwareUpdateSettingsProto*>(
+      &::enterprise_management::_TPMFirmwareUpdateSettingsProto_default_instance_);
+}
+inline const ::enterprise_management::TPMFirmwareUpdateSettingsProto& ChromeDeviceSettingsProto::tpm_firmware_update_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.tpm_firmware_update_settings)
+  return _internal_tpm_firmware_update_settings();
+}
+inline ::enterprise_management::TPMFirmwareUpdateSettingsProto* ChromeDeviceSettingsProto::release_tpm_firmware_update_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.tpm_firmware_update_settings)
+  _has_bits_[1] &= ~0x04000000u;
+  ::enterprise_management::TPMFirmwareUpdateSettingsProto* temp = tpm_firmware_update_settings_;
+  tpm_firmware_update_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::TPMFirmwareUpdateSettingsProto* ChromeDeviceSettingsProto::_internal_mutable_tpm_firmware_update_settings() {
+  _has_bits_[1] |= 0x04000000u;
+  if (tpm_firmware_update_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::TPMFirmwareUpdateSettingsProto>(GetArenaNoVirtual());
+    tpm_firmware_update_settings_ = p;
+  }
+  return tpm_firmware_update_settings_;
+}
+inline ::enterprise_management::TPMFirmwareUpdateSettingsProto* ChromeDeviceSettingsProto::mutable_tpm_firmware_update_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.tpm_firmware_update_settings)
+  return _internal_mutable_tpm_firmware_update_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_tpm_firmware_update_settings(::enterprise_management::TPMFirmwareUpdateSettingsProto* tpm_firmware_update_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete tpm_firmware_update_settings_;
+  }
+  if (tpm_firmware_update_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      tpm_firmware_update_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, tpm_firmware_update_settings, submessage_arena);
+    }
+    _has_bits_[1] |= 0x04000000u;
+  } else {
+    _has_bits_[1] &= ~0x04000000u;
+  }
+  tpm_firmware_update_settings_ = tpm_firmware_update_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.tpm_firmware_update_settings)
+}
+
+// optional .enterprise_management.OBSOLETE_MinimumRequiredVersionProto minimum_required_version = 60 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_minimum_required_version() const {
+  bool value = (_has_bits_[1] & 0x08000000u) != 0;
+  PROTOBUF_ASSUME(!value || minimum_required_version_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_minimum_required_version() const {
+  return _internal_has_minimum_required_version();
+}
+inline void ChromeDeviceSettingsProto::clear_minimum_required_version() {
+  if (minimum_required_version_ != nullptr) minimum_required_version_->Clear();
+  _has_bits_[1] &= ~0x08000000u;
+}
+inline const ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto& ChromeDeviceSettingsProto::_internal_minimum_required_version() const {
+  const ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* p = minimum_required_version_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto*>(
+      &::enterprise_management::_OBSOLETE_MinimumRequiredVersionProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto& ChromeDeviceSettingsProto::minimum_required_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.minimum_required_version)
+  return _internal_minimum_required_version();
+}
+inline ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* ChromeDeviceSettingsProto::release_minimum_required_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.minimum_required_version)
+  _has_bits_[1] &= ~0x08000000u;
+  ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* temp = minimum_required_version_;
+  minimum_required_version_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* ChromeDeviceSettingsProto::_internal_mutable_minimum_required_version() {
+  _has_bits_[1] |= 0x08000000u;
+  if (minimum_required_version_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_MinimumRequiredVersionProto>(GetArenaNoVirtual());
+    minimum_required_version_ = p;
+  }
+  return minimum_required_version_;
+}
+inline ::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* ChromeDeviceSettingsProto::mutable_minimum_required_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.minimum_required_version)
+  return _internal_mutable_minimum_required_version();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_minimum_required_version(::enterprise_management::OBSOLETE_MinimumRequiredVersionProto* minimum_required_version) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete minimum_required_version_;
+  }
+  if (minimum_required_version) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      minimum_required_version = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, minimum_required_version, submessage_arena);
+    }
+    _has_bits_[1] |= 0x08000000u;
+  } else {
+    _has_bits_[1] &= ~0x08000000u;
+  }
+  minimum_required_version_ = minimum_required_version;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.minimum_required_version)
+}
+
+// optional .enterprise_management.DeviceLoginScreenAutoSelectCertificateForUrls device_login_screen_auto_select_certificate_for_urls = 62;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_login_screen_auto_select_certificate_for_urls() const {
+  bool value = (_has_bits_[1] & 0x10000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_login_screen_auto_select_certificate_for_urls_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_login_screen_auto_select_certificate_for_urls() const {
+  return _internal_has_device_login_screen_auto_select_certificate_for_urls();
+}
+inline void ChromeDeviceSettingsProto::clear_device_login_screen_auto_select_certificate_for_urls() {
+  if (device_login_screen_auto_select_certificate_for_urls_ != nullptr) device_login_screen_auto_select_certificate_for_urls_->Clear();
+  _has_bits_[1] &= ~0x10000000u;
+}
+inline const ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls& ChromeDeviceSettingsProto::_internal_device_login_screen_auto_select_certificate_for_urls() const {
+  const ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* p = device_login_screen_auto_select_certificate_for_urls_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls*>(
+      &::enterprise_management::_DeviceLoginScreenAutoSelectCertificateForUrls_default_instance_);
+}
+inline const ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls& ChromeDeviceSettingsProto::device_login_screen_auto_select_certificate_for_urls() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_auto_select_certificate_for_urls)
+  return _internal_device_login_screen_auto_select_certificate_for_urls();
+}
+inline ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* ChromeDeviceSettingsProto::release_device_login_screen_auto_select_certificate_for_urls() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_auto_select_certificate_for_urls)
+  _has_bits_[1] &= ~0x10000000u;
+  ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* temp = device_login_screen_auto_select_certificate_for_urls_;
+  device_login_screen_auto_select_certificate_for_urls_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* ChromeDeviceSettingsProto::_internal_mutable_device_login_screen_auto_select_certificate_for_urls() {
+  _has_bits_[1] |= 0x10000000u;
+  if (device_login_screen_auto_select_certificate_for_urls_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls>(GetArenaNoVirtual());
+    device_login_screen_auto_select_certificate_for_urls_ = p;
+  }
+  return device_login_screen_auto_select_certificate_for_urls_;
+}
+inline ::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* ChromeDeviceSettingsProto::mutable_device_login_screen_auto_select_certificate_for_urls() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_auto_select_certificate_for_urls)
+  return _internal_mutable_device_login_screen_auto_select_certificate_for_urls();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_login_screen_auto_select_certificate_for_urls(::enterprise_management::DeviceLoginScreenAutoSelectCertificateForUrls* device_login_screen_auto_select_certificate_for_urls) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_login_screen_auto_select_certificate_for_urls_;
+  }
+  if (device_login_screen_auto_select_certificate_for_urls) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_login_screen_auto_select_certificate_for_urls = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_login_screen_auto_select_certificate_for_urls, submessage_arena);
+    }
+    _has_bits_[1] |= 0x10000000u;
+  } else {
+    _has_bits_[1] &= ~0x10000000u;
+  }
+  device_login_screen_auto_select_certificate_for_urls_ = device_login_screen_auto_select_certificate_for_urls;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_auto_select_certificate_for_urls)
+}
+
+// optional .enterprise_management.UnaffiliatedArcAllowedProto unaffiliated_arc_allowed = 63;
+inline bool ChromeDeviceSettingsProto::_internal_has_unaffiliated_arc_allowed() const {
+  bool value = (_has_bits_[1] & 0x20000000u) != 0;
+  PROTOBUF_ASSUME(!value || unaffiliated_arc_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_unaffiliated_arc_allowed() const {
+  return _internal_has_unaffiliated_arc_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_unaffiliated_arc_allowed() {
+  if (unaffiliated_arc_allowed_ != nullptr) unaffiliated_arc_allowed_->Clear();
+  _has_bits_[1] &= ~0x20000000u;
+}
+inline const ::enterprise_management::UnaffiliatedArcAllowedProto& ChromeDeviceSettingsProto::_internal_unaffiliated_arc_allowed() const {
+  const ::enterprise_management::UnaffiliatedArcAllowedProto* p = unaffiliated_arc_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::UnaffiliatedArcAllowedProto*>(
+      &::enterprise_management::_UnaffiliatedArcAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::UnaffiliatedArcAllowedProto& ChromeDeviceSettingsProto::unaffiliated_arc_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.unaffiliated_arc_allowed)
+  return _internal_unaffiliated_arc_allowed();
+}
+inline ::enterprise_management::UnaffiliatedArcAllowedProto* ChromeDeviceSettingsProto::release_unaffiliated_arc_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.unaffiliated_arc_allowed)
+  _has_bits_[1] &= ~0x20000000u;
+  ::enterprise_management::UnaffiliatedArcAllowedProto* temp = unaffiliated_arc_allowed_;
+  unaffiliated_arc_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::UnaffiliatedArcAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_unaffiliated_arc_allowed() {
+  _has_bits_[1] |= 0x20000000u;
+  if (unaffiliated_arc_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::UnaffiliatedArcAllowedProto>(GetArenaNoVirtual());
+    unaffiliated_arc_allowed_ = p;
+  }
+  return unaffiliated_arc_allowed_;
+}
+inline ::enterprise_management::UnaffiliatedArcAllowedProto* ChromeDeviceSettingsProto::mutable_unaffiliated_arc_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.unaffiliated_arc_allowed)
+  return _internal_mutable_unaffiliated_arc_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_unaffiliated_arc_allowed(::enterprise_management::UnaffiliatedArcAllowedProto* unaffiliated_arc_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete unaffiliated_arc_allowed_;
+  }
+  if (unaffiliated_arc_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      unaffiliated_arc_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, unaffiliated_arc_allowed, submessage_arena);
+    }
+    _has_bits_[1] |= 0x20000000u;
+  } else {
+    _has_bits_[1] &= ~0x20000000u;
+  }
+  unaffiliated_arc_allowed_ = unaffiliated_arc_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.unaffiliated_arc_allowed)
+}
+
+// optional .enterprise_management.NetworkHostnameProto network_hostname = 64;
+inline bool ChromeDeviceSettingsProto::_internal_has_network_hostname() const {
+  bool value = (_has_bits_[1] & 0x40000000u) != 0;
+  PROTOBUF_ASSUME(!value || network_hostname_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_network_hostname() const {
+  return _internal_has_network_hostname();
+}
+inline void ChromeDeviceSettingsProto::clear_network_hostname() {
+  if (network_hostname_ != nullptr) network_hostname_->Clear();
+  _has_bits_[1] &= ~0x40000000u;
+}
+inline const ::enterprise_management::NetworkHostnameProto& ChromeDeviceSettingsProto::_internal_network_hostname() const {
+  const ::enterprise_management::NetworkHostnameProto* p = network_hostname_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::NetworkHostnameProto*>(
+      &::enterprise_management::_NetworkHostnameProto_default_instance_);
+}
+inline const ::enterprise_management::NetworkHostnameProto& ChromeDeviceSettingsProto::network_hostname() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.network_hostname)
+  return _internal_network_hostname();
+}
+inline ::enterprise_management::NetworkHostnameProto* ChromeDeviceSettingsProto::release_network_hostname() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.network_hostname)
+  _has_bits_[1] &= ~0x40000000u;
+  ::enterprise_management::NetworkHostnameProto* temp = network_hostname_;
+  network_hostname_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::NetworkHostnameProto* ChromeDeviceSettingsProto::_internal_mutable_network_hostname() {
+  _has_bits_[1] |= 0x40000000u;
+  if (network_hostname_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::NetworkHostnameProto>(GetArenaNoVirtual());
+    network_hostname_ = p;
+  }
+  return network_hostname_;
+}
+inline ::enterprise_management::NetworkHostnameProto* ChromeDeviceSettingsProto::mutable_network_hostname() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.network_hostname)
+  return _internal_mutable_network_hostname();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_network_hostname(::enterprise_management::NetworkHostnameProto* network_hostname) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete network_hostname_;
+  }
+  if (network_hostname) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      network_hostname = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, network_hostname, submessage_arena);
+    }
+    _has_bits_[1] |= 0x40000000u;
+  } else {
+    _has_bits_[1] &= ~0x40000000u;
+  }
+  network_hostname_ = network_hostname;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.network_hostname)
+}
+
+// optional .enterprise_management.DeviceKerberosEncryptionTypesProto device_kerberos_encryption_types = 65;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_kerberos_encryption_types() const {
+  bool value = (_has_bits_[1] & 0x80000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_kerberos_encryption_types_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_kerberos_encryption_types() const {
+  return _internal_has_device_kerberos_encryption_types();
+}
+inline void ChromeDeviceSettingsProto::clear_device_kerberos_encryption_types() {
+  if (device_kerberos_encryption_types_ != nullptr) device_kerberos_encryption_types_->Clear();
+  _has_bits_[1] &= ~0x80000000u;
+}
+inline const ::enterprise_management::DeviceKerberosEncryptionTypesProto& ChromeDeviceSettingsProto::_internal_device_kerberos_encryption_types() const {
+  const ::enterprise_management::DeviceKerberosEncryptionTypesProto* p = device_kerberos_encryption_types_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceKerberosEncryptionTypesProto*>(
+      &::enterprise_management::_DeviceKerberosEncryptionTypesProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceKerberosEncryptionTypesProto& ChromeDeviceSettingsProto::device_kerberos_encryption_types() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_kerberos_encryption_types)
+  return _internal_device_kerberos_encryption_types();
+}
+inline ::enterprise_management::DeviceKerberosEncryptionTypesProto* ChromeDeviceSettingsProto::release_device_kerberos_encryption_types() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_kerberos_encryption_types)
+  _has_bits_[1] &= ~0x80000000u;
+  ::enterprise_management::DeviceKerberosEncryptionTypesProto* temp = device_kerberos_encryption_types_;
+  device_kerberos_encryption_types_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceKerberosEncryptionTypesProto* ChromeDeviceSettingsProto::_internal_mutable_device_kerberos_encryption_types() {
+  _has_bits_[1] |= 0x80000000u;
+  if (device_kerberos_encryption_types_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceKerberosEncryptionTypesProto>(GetArenaNoVirtual());
+    device_kerberos_encryption_types_ = p;
+  }
+  return device_kerberos_encryption_types_;
+}
+inline ::enterprise_management::DeviceKerberosEncryptionTypesProto* ChromeDeviceSettingsProto::mutable_device_kerberos_encryption_types() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_kerberos_encryption_types)
+  return _internal_mutable_device_kerberos_encryption_types();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_kerberos_encryption_types(::enterprise_management::DeviceKerberosEncryptionTypesProto* device_kerberos_encryption_types) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_kerberos_encryption_types_;
+  }
+  if (device_kerberos_encryption_types) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_kerberos_encryption_types = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_kerberos_encryption_types, submessage_arena);
+    }
+    _has_bits_[1] |= 0x80000000u;
+  } else {
+    _has_bits_[1] &= ~0x80000000u;
+  }
+  device_kerberos_encryption_types_ = device_kerberos_encryption_types;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_kerberos_encryption_types)
+}
+
+// optional .enterprise_management.DeviceUserPolicyLoopbackProcessingModeProto device_user_policy_loopback_processing_mode = 66;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_user_policy_loopback_processing_mode() const {
+  bool value = (_has_bits_[2] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || device_user_policy_loopback_processing_mode_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_user_policy_loopback_processing_mode() const {
+  return _internal_has_device_user_policy_loopback_processing_mode();
+}
+inline void ChromeDeviceSettingsProto::clear_device_user_policy_loopback_processing_mode() {
+  if (device_user_policy_loopback_processing_mode_ != nullptr) device_user_policy_loopback_processing_mode_->Clear();
+  _has_bits_[2] &= ~0x00000001u;
+}
+inline const ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto& ChromeDeviceSettingsProto::_internal_device_user_policy_loopback_processing_mode() const {
+  const ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* p = device_user_policy_loopback_processing_mode_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto*>(
+      &::enterprise_management::_DeviceUserPolicyLoopbackProcessingModeProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto& ChromeDeviceSettingsProto::device_user_policy_loopback_processing_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_user_policy_loopback_processing_mode)
+  return _internal_device_user_policy_loopback_processing_mode();
+}
+inline ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* ChromeDeviceSettingsProto::release_device_user_policy_loopback_processing_mode() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_user_policy_loopback_processing_mode)
+  _has_bits_[2] &= ~0x00000001u;
+  ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* temp = device_user_policy_loopback_processing_mode_;
+  device_user_policy_loopback_processing_mode_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* ChromeDeviceSettingsProto::_internal_mutable_device_user_policy_loopback_processing_mode() {
+  _has_bits_[2] |= 0x00000001u;
+  if (device_user_policy_loopback_processing_mode_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto>(GetArenaNoVirtual());
+    device_user_policy_loopback_processing_mode_ = p;
+  }
+  return device_user_policy_loopback_processing_mode_;
+}
+inline ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* ChromeDeviceSettingsProto::mutable_device_user_policy_loopback_processing_mode() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_user_policy_loopback_processing_mode)
+  return _internal_mutable_device_user_policy_loopback_processing_mode();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_user_policy_loopback_processing_mode(::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto* device_user_policy_loopback_processing_mode) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_user_policy_loopback_processing_mode_;
+  }
+  if (device_user_policy_loopback_processing_mode) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_user_policy_loopback_processing_mode = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_user_policy_loopback_processing_mode, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000001u;
+  } else {
+    _has_bits_[2] &= ~0x00000001u;
+  }
+  device_user_policy_loopback_processing_mode_ = device_user_policy_loopback_processing_mode;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_user_policy_loopback_processing_mode)
+}
+
+// optional .enterprise_management.OBSOLETE_DeviceLoginScreenIsolateOriginsProto device_login_screen_isolate_origins = 67 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_device_login_screen_isolate_origins() const {
+  bool value = (_has_bits_[2] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || device_login_screen_isolate_origins_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_login_screen_isolate_origins() const {
+  return _internal_has_device_login_screen_isolate_origins();
+}
+inline void ChromeDeviceSettingsProto::clear_device_login_screen_isolate_origins() {
+  if (device_login_screen_isolate_origins_ != nullptr) device_login_screen_isolate_origins_->Clear();
+  _has_bits_[2] &= ~0x00000002u;
+}
+inline const ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto& ChromeDeviceSettingsProto::_internal_device_login_screen_isolate_origins() const {
+  const ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* p = device_login_screen_isolate_origins_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto*>(
+      &::enterprise_management::_OBSOLETE_DeviceLoginScreenIsolateOriginsProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto& ChromeDeviceSettingsProto::device_login_screen_isolate_origins() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_isolate_origins)
+  return _internal_device_login_screen_isolate_origins();
+}
+inline ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* ChromeDeviceSettingsProto::release_device_login_screen_isolate_origins() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_isolate_origins)
+  _has_bits_[2] &= ~0x00000002u;
+  ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* temp = device_login_screen_isolate_origins_;
+  device_login_screen_isolate_origins_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* ChromeDeviceSettingsProto::_internal_mutable_device_login_screen_isolate_origins() {
+  _has_bits_[2] |= 0x00000002u;
+  if (device_login_screen_isolate_origins_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto>(GetArenaNoVirtual());
+    device_login_screen_isolate_origins_ = p;
+  }
+  return device_login_screen_isolate_origins_;
+}
+inline ::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* ChromeDeviceSettingsProto::mutable_device_login_screen_isolate_origins() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_isolate_origins)
+  return _internal_mutable_device_login_screen_isolate_origins();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_login_screen_isolate_origins(::enterprise_management::OBSOLETE_DeviceLoginScreenIsolateOriginsProto* device_login_screen_isolate_origins) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_login_screen_isolate_origins_;
+  }
+  if (device_login_screen_isolate_origins) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_login_screen_isolate_origins = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_login_screen_isolate_origins, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000002u;
+  } else {
+    _has_bits_[2] &= ~0x00000002u;
+  }
+  device_login_screen_isolate_origins_ = device_login_screen_isolate_origins;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_isolate_origins)
+}
+
+// optional .enterprise_management.OBSOLETE_DeviceLoginScreenSitePerProcessProto device_login_screen_site_per_process = 68 [deprecated = true];
+inline bool ChromeDeviceSettingsProto::_internal_has_device_login_screen_site_per_process() const {
+  bool value = (_has_bits_[2] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || device_login_screen_site_per_process_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_login_screen_site_per_process() const {
+  return _internal_has_device_login_screen_site_per_process();
+}
+inline void ChromeDeviceSettingsProto::clear_device_login_screen_site_per_process() {
+  if (device_login_screen_site_per_process_ != nullptr) device_login_screen_site_per_process_->Clear();
+  _has_bits_[2] &= ~0x00000004u;
+}
+inline const ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto& ChromeDeviceSettingsProto::_internal_device_login_screen_site_per_process() const {
+  const ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* p = device_login_screen_site_per_process_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto*>(
+      &::enterprise_management::_OBSOLETE_DeviceLoginScreenSitePerProcessProto_default_instance_);
+}
+inline const ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto& ChromeDeviceSettingsProto::device_login_screen_site_per_process() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_site_per_process)
+  return _internal_device_login_screen_site_per_process();
+}
+inline ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* ChromeDeviceSettingsProto::release_device_login_screen_site_per_process() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_site_per_process)
+  _has_bits_[2] &= ~0x00000004u;
+  ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* temp = device_login_screen_site_per_process_;
+  device_login_screen_site_per_process_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* ChromeDeviceSettingsProto::_internal_mutable_device_login_screen_site_per_process() {
+  _has_bits_[2] |= 0x00000004u;
+  if (device_login_screen_site_per_process_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto>(GetArenaNoVirtual());
+    device_login_screen_site_per_process_ = p;
+  }
+  return device_login_screen_site_per_process_;
+}
+inline ::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* ChromeDeviceSettingsProto::mutable_device_login_screen_site_per_process() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_site_per_process)
+  return _internal_mutable_device_login_screen_site_per_process();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_login_screen_site_per_process(::enterprise_management::OBSOLETE_DeviceLoginScreenSitePerProcessProto* device_login_screen_site_per_process) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_login_screen_site_per_process_;
+  }
+  if (device_login_screen_site_per_process) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_login_screen_site_per_process = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_login_screen_site_per_process, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000004u;
+  } else {
+    _has_bits_[2] &= ~0x00000004u;
+  }
+  device_login_screen_site_per_process_ = device_login_screen_site_per_process;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_site_per_process)
+}
+
+// optional .enterprise_management.VirtualMachinesAllowedProto virtual_machines_allowed = 69;
+inline bool ChromeDeviceSettingsProto::_internal_has_virtual_machines_allowed() const {
+  bool value = (_has_bits_[2] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || virtual_machines_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_virtual_machines_allowed() const {
+  return _internal_has_virtual_machines_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_virtual_machines_allowed() {
+  if (virtual_machines_allowed_ != nullptr) virtual_machines_allowed_->Clear();
+  _has_bits_[2] &= ~0x00000008u;
+}
+inline const ::enterprise_management::VirtualMachinesAllowedProto& ChromeDeviceSettingsProto::_internal_virtual_machines_allowed() const {
+  const ::enterprise_management::VirtualMachinesAllowedProto* p = virtual_machines_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::VirtualMachinesAllowedProto*>(
+      &::enterprise_management::_VirtualMachinesAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::VirtualMachinesAllowedProto& ChromeDeviceSettingsProto::virtual_machines_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.virtual_machines_allowed)
+  return _internal_virtual_machines_allowed();
+}
+inline ::enterprise_management::VirtualMachinesAllowedProto* ChromeDeviceSettingsProto::release_virtual_machines_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.virtual_machines_allowed)
+  _has_bits_[2] &= ~0x00000008u;
+  ::enterprise_management::VirtualMachinesAllowedProto* temp = virtual_machines_allowed_;
+  virtual_machines_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::VirtualMachinesAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_virtual_machines_allowed() {
+  _has_bits_[2] |= 0x00000008u;
+  if (virtual_machines_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::VirtualMachinesAllowedProto>(GetArenaNoVirtual());
+    virtual_machines_allowed_ = p;
+  }
+  return virtual_machines_allowed_;
+}
+inline ::enterprise_management::VirtualMachinesAllowedProto* ChromeDeviceSettingsProto::mutable_virtual_machines_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.virtual_machines_allowed)
+  return _internal_mutable_virtual_machines_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_virtual_machines_allowed(::enterprise_management::VirtualMachinesAllowedProto* virtual_machines_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete virtual_machines_allowed_;
+  }
+  if (virtual_machines_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      virtual_machines_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, virtual_machines_allowed, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000008u;
+  } else {
+    _has_bits_[2] &= ~0x00000008u;
+  }
+  virtual_machines_allowed_ = virtual_machines_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.virtual_machines_allowed)
+}
+
+// optional .enterprise_management.DeviceMachinePasswordChangeRateProto device_machine_password_change_rate = 70;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_machine_password_change_rate() const {
+  bool value = (_has_bits_[2] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || device_machine_password_change_rate_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_machine_password_change_rate() const {
+  return _internal_has_device_machine_password_change_rate();
+}
+inline void ChromeDeviceSettingsProto::clear_device_machine_password_change_rate() {
+  if (device_machine_password_change_rate_ != nullptr) device_machine_password_change_rate_->Clear();
+  _has_bits_[2] &= ~0x00000010u;
+}
+inline const ::enterprise_management::DeviceMachinePasswordChangeRateProto& ChromeDeviceSettingsProto::_internal_device_machine_password_change_rate() const {
+  const ::enterprise_management::DeviceMachinePasswordChangeRateProto* p = device_machine_password_change_rate_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceMachinePasswordChangeRateProto*>(
+      &::enterprise_management::_DeviceMachinePasswordChangeRateProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceMachinePasswordChangeRateProto& ChromeDeviceSettingsProto::device_machine_password_change_rate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_machine_password_change_rate)
+  return _internal_device_machine_password_change_rate();
+}
+inline ::enterprise_management::DeviceMachinePasswordChangeRateProto* ChromeDeviceSettingsProto::release_device_machine_password_change_rate() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_machine_password_change_rate)
+  _has_bits_[2] &= ~0x00000010u;
+  ::enterprise_management::DeviceMachinePasswordChangeRateProto* temp = device_machine_password_change_rate_;
+  device_machine_password_change_rate_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceMachinePasswordChangeRateProto* ChromeDeviceSettingsProto::_internal_mutable_device_machine_password_change_rate() {
+  _has_bits_[2] |= 0x00000010u;
+  if (device_machine_password_change_rate_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceMachinePasswordChangeRateProto>(GetArenaNoVirtual());
+    device_machine_password_change_rate_ = p;
+  }
+  return device_machine_password_change_rate_;
+}
+inline ::enterprise_management::DeviceMachinePasswordChangeRateProto* ChromeDeviceSettingsProto::mutable_device_machine_password_change_rate() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_machine_password_change_rate)
+  return _internal_mutable_device_machine_password_change_rate();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_machine_password_change_rate(::enterprise_management::DeviceMachinePasswordChangeRateProto* device_machine_password_change_rate) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_machine_password_change_rate_;
+  }
+  if (device_machine_password_change_rate) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_machine_password_change_rate = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_machine_password_change_rate, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000010u;
+  } else {
+    _has_bits_[2] &= ~0x00000010u;
+  }
+  device_machine_password_change_rate_ = device_machine_password_change_rate;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_machine_password_change_rate)
+}
+
+// optional .enterprise_management.SamlLoginAuthenticationTypeProto saml_login_authentication_type = 71;
+inline bool ChromeDeviceSettingsProto::_internal_has_saml_login_authentication_type() const {
+  bool value = (_has_bits_[2] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || saml_login_authentication_type_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_saml_login_authentication_type() const {
+  return _internal_has_saml_login_authentication_type();
+}
+inline void ChromeDeviceSettingsProto::clear_saml_login_authentication_type() {
+  if (saml_login_authentication_type_ != nullptr) saml_login_authentication_type_->Clear();
+  _has_bits_[2] &= ~0x00000020u;
+}
+inline const ::enterprise_management::SamlLoginAuthenticationTypeProto& ChromeDeviceSettingsProto::_internal_saml_login_authentication_type() const {
+  const ::enterprise_management::SamlLoginAuthenticationTypeProto* p = saml_login_authentication_type_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SamlLoginAuthenticationTypeProto*>(
+      &::enterprise_management::_SamlLoginAuthenticationTypeProto_default_instance_);
+}
+inline const ::enterprise_management::SamlLoginAuthenticationTypeProto& ChromeDeviceSettingsProto::saml_login_authentication_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.saml_login_authentication_type)
+  return _internal_saml_login_authentication_type();
+}
+inline ::enterprise_management::SamlLoginAuthenticationTypeProto* ChromeDeviceSettingsProto::release_saml_login_authentication_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.saml_login_authentication_type)
+  _has_bits_[2] &= ~0x00000020u;
+  ::enterprise_management::SamlLoginAuthenticationTypeProto* temp = saml_login_authentication_type_;
+  saml_login_authentication_type_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SamlLoginAuthenticationTypeProto* ChromeDeviceSettingsProto::_internal_mutable_saml_login_authentication_type() {
+  _has_bits_[2] |= 0x00000020u;
+  if (saml_login_authentication_type_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SamlLoginAuthenticationTypeProto>(GetArenaNoVirtual());
+    saml_login_authentication_type_ = p;
+  }
+  return saml_login_authentication_type_;
+}
+inline ::enterprise_management::SamlLoginAuthenticationTypeProto* ChromeDeviceSettingsProto::mutable_saml_login_authentication_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.saml_login_authentication_type)
+  return _internal_mutable_saml_login_authentication_type();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_saml_login_authentication_type(::enterprise_management::SamlLoginAuthenticationTypeProto* saml_login_authentication_type) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete saml_login_authentication_type_;
+  }
+  if (saml_login_authentication_type) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      saml_login_authentication_type = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, saml_login_authentication_type, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000020u;
+  } else {
+    _has_bits_[2] &= ~0x00000020u;
+  }
+  saml_login_authentication_type_ = saml_login_authentication_type;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.saml_login_authentication_type)
+}
+
+// optional .enterprise_management.DeviceUnaffiliatedCrostiniAllowedProto device_unaffiliated_crostini_allowed = 72;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_unaffiliated_crostini_allowed() const {
+  bool value = (_has_bits_[2] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || device_unaffiliated_crostini_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_unaffiliated_crostini_allowed() const {
+  return _internal_has_device_unaffiliated_crostini_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_device_unaffiliated_crostini_allowed() {
+  if (device_unaffiliated_crostini_allowed_ != nullptr) device_unaffiliated_crostini_allowed_->Clear();
+  _has_bits_[2] &= ~0x00000040u;
+}
+inline const ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto& ChromeDeviceSettingsProto::_internal_device_unaffiliated_crostini_allowed() const {
+  const ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* p = device_unaffiliated_crostini_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto*>(
+      &::enterprise_management::_DeviceUnaffiliatedCrostiniAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto& ChromeDeviceSettingsProto::device_unaffiliated_crostini_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_unaffiliated_crostini_allowed)
+  return _internal_device_unaffiliated_crostini_allowed();
+}
+inline ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* ChromeDeviceSettingsProto::release_device_unaffiliated_crostini_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_unaffiliated_crostini_allowed)
+  _has_bits_[2] &= ~0x00000040u;
+  ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* temp = device_unaffiliated_crostini_allowed_;
+  device_unaffiliated_crostini_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_device_unaffiliated_crostini_allowed() {
+  _has_bits_[2] |= 0x00000040u;
+  if (device_unaffiliated_crostini_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto>(GetArenaNoVirtual());
+    device_unaffiliated_crostini_allowed_ = p;
+  }
+  return device_unaffiliated_crostini_allowed_;
+}
+inline ::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* ChromeDeviceSettingsProto::mutable_device_unaffiliated_crostini_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_unaffiliated_crostini_allowed)
+  return _internal_mutable_device_unaffiliated_crostini_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_unaffiliated_crostini_allowed(::enterprise_management::DeviceUnaffiliatedCrostiniAllowedProto* device_unaffiliated_crostini_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_unaffiliated_crostini_allowed_;
+  }
+  if (device_unaffiliated_crostini_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_unaffiliated_crostini_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_unaffiliated_crostini_allowed, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000040u;
+  } else {
+    _has_bits_[2] &= ~0x00000040u;
+  }
+  device_unaffiliated_crostini_allowed_ = device_unaffiliated_crostini_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_unaffiliated_crostini_allowed)
+}
+
+// optional .enterprise_management.DeviceWiFiFastTransitionEnabledProto device_wifi_fast_transition_enabled = 73;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_wifi_fast_transition_enabled() const {
+  bool value = (_has_bits_[2] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || device_wifi_fast_transition_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_wifi_fast_transition_enabled() const {
+  return _internal_has_device_wifi_fast_transition_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_device_wifi_fast_transition_enabled() {
+  if (device_wifi_fast_transition_enabled_ != nullptr) device_wifi_fast_transition_enabled_->Clear();
+  _has_bits_[2] &= ~0x00000080u;
+}
+inline const ::enterprise_management::DeviceWiFiFastTransitionEnabledProto& ChromeDeviceSettingsProto::_internal_device_wifi_fast_transition_enabled() const {
+  const ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* p = device_wifi_fast_transition_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceWiFiFastTransitionEnabledProto*>(
+      &::enterprise_management::_DeviceWiFiFastTransitionEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceWiFiFastTransitionEnabledProto& ChromeDeviceSettingsProto::device_wifi_fast_transition_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_wifi_fast_transition_enabled)
+  return _internal_device_wifi_fast_transition_enabled();
+}
+inline ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* ChromeDeviceSettingsProto::release_device_wifi_fast_transition_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_wifi_fast_transition_enabled)
+  _has_bits_[2] &= ~0x00000080u;
+  ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* temp = device_wifi_fast_transition_enabled_;
+  device_wifi_fast_transition_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_device_wifi_fast_transition_enabled() {
+  _has_bits_[2] |= 0x00000080u;
+  if (device_wifi_fast_transition_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceWiFiFastTransitionEnabledProto>(GetArenaNoVirtual());
+    device_wifi_fast_transition_enabled_ = p;
+  }
+  return device_wifi_fast_transition_enabled_;
+}
+inline ::enterprise_management::DeviceWiFiFastTransitionEnabledProto* ChromeDeviceSettingsProto::mutable_device_wifi_fast_transition_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_wifi_fast_transition_enabled)
+  return _internal_mutable_device_wifi_fast_transition_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_wifi_fast_transition_enabled(::enterprise_management::DeviceWiFiFastTransitionEnabledProto* device_wifi_fast_transition_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_wifi_fast_transition_enabled_;
+  }
+  if (device_wifi_fast_transition_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_wifi_fast_transition_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_wifi_fast_transition_enabled, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000080u;
+  } else {
+    _has_bits_[2] &= ~0x00000080u;
+  }
+  device_wifi_fast_transition_enabled_ = device_wifi_fast_transition_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_wifi_fast_transition_enabled)
+}
+
+// optional .enterprise_management.DeviceDisplayResolutionProto device_display_resolution = 74;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_display_resolution() const {
+  bool value = (_has_bits_[2] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || device_display_resolution_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_display_resolution() const {
+  return _internal_has_device_display_resolution();
+}
+inline void ChromeDeviceSettingsProto::clear_device_display_resolution() {
+  if (device_display_resolution_ != nullptr) device_display_resolution_->Clear();
+  _has_bits_[2] &= ~0x00000100u;
+}
+inline const ::enterprise_management::DeviceDisplayResolutionProto& ChromeDeviceSettingsProto::_internal_device_display_resolution() const {
+  const ::enterprise_management::DeviceDisplayResolutionProto* p = device_display_resolution_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceDisplayResolutionProto*>(
+      &::enterprise_management::_DeviceDisplayResolutionProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceDisplayResolutionProto& ChromeDeviceSettingsProto::device_display_resolution() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_display_resolution)
+  return _internal_device_display_resolution();
+}
+inline ::enterprise_management::DeviceDisplayResolutionProto* ChromeDeviceSettingsProto::release_device_display_resolution() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_display_resolution)
+  _has_bits_[2] &= ~0x00000100u;
+  ::enterprise_management::DeviceDisplayResolutionProto* temp = device_display_resolution_;
+  device_display_resolution_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceDisplayResolutionProto* ChromeDeviceSettingsProto::_internal_mutable_device_display_resolution() {
+  _has_bits_[2] |= 0x00000100u;
+  if (device_display_resolution_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceDisplayResolutionProto>(GetArenaNoVirtual());
+    device_display_resolution_ = p;
+  }
+  return device_display_resolution_;
+}
+inline ::enterprise_management::DeviceDisplayResolutionProto* ChromeDeviceSettingsProto::mutable_device_display_resolution() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_display_resolution)
+  return _internal_mutable_device_display_resolution();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_display_resolution(::enterprise_management::DeviceDisplayResolutionProto* device_display_resolution) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_display_resolution_;
+  }
+  if (device_display_resolution) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_display_resolution = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_display_resolution, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000100u;
+  } else {
+    _has_bits_[2] &= ~0x00000100u;
+  }
+  device_display_resolution_ = device_display_resolution;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_display_resolution)
+}
+
+// optional .enterprise_management.PluginVmAllowedProto plugin_vm_allowed = 75;
+inline bool ChromeDeviceSettingsProto::_internal_has_plugin_vm_allowed() const {
+  bool value = (_has_bits_[2] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || plugin_vm_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_plugin_vm_allowed() const {
+  return _internal_has_plugin_vm_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_plugin_vm_allowed() {
+  if (plugin_vm_allowed_ != nullptr) plugin_vm_allowed_->Clear();
+  _has_bits_[2] &= ~0x00000200u;
+}
+inline const ::enterprise_management::PluginVmAllowedProto& ChromeDeviceSettingsProto::_internal_plugin_vm_allowed() const {
+  const ::enterprise_management::PluginVmAllowedProto* p = plugin_vm_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PluginVmAllowedProto*>(
+      &::enterprise_management::_PluginVmAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::PluginVmAllowedProto& ChromeDeviceSettingsProto::plugin_vm_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.plugin_vm_allowed)
+  return _internal_plugin_vm_allowed();
+}
+inline ::enterprise_management::PluginVmAllowedProto* ChromeDeviceSettingsProto::release_plugin_vm_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.plugin_vm_allowed)
+  _has_bits_[2] &= ~0x00000200u;
+  ::enterprise_management::PluginVmAllowedProto* temp = plugin_vm_allowed_;
+  plugin_vm_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PluginVmAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_plugin_vm_allowed() {
+  _has_bits_[2] |= 0x00000200u;
+  if (plugin_vm_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PluginVmAllowedProto>(GetArenaNoVirtual());
+    plugin_vm_allowed_ = p;
+  }
+  return plugin_vm_allowed_;
+}
+inline ::enterprise_management::PluginVmAllowedProto* ChromeDeviceSettingsProto::mutable_plugin_vm_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.plugin_vm_allowed)
+  return _internal_mutable_plugin_vm_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_plugin_vm_allowed(::enterprise_management::PluginVmAllowedProto* plugin_vm_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete plugin_vm_allowed_;
+  }
+  if (plugin_vm_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      plugin_vm_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, plugin_vm_allowed, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000200u;
+  } else {
+    _has_bits_[2] &= ~0x00000200u;
+  }
+  plugin_vm_allowed_ = plugin_vm_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.plugin_vm_allowed)
+}
+
+// optional .enterprise_management.DeviceGpoCacheLifetimeProto device_gpo_cache_lifetime = 76;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_gpo_cache_lifetime() const {
+  bool value = (_has_bits_[2] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || device_gpo_cache_lifetime_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_gpo_cache_lifetime() const {
+  return _internal_has_device_gpo_cache_lifetime();
+}
+inline void ChromeDeviceSettingsProto::clear_device_gpo_cache_lifetime() {
+  if (device_gpo_cache_lifetime_ != nullptr) device_gpo_cache_lifetime_->Clear();
+  _has_bits_[2] &= ~0x00000400u;
+}
+inline const ::enterprise_management::DeviceGpoCacheLifetimeProto& ChromeDeviceSettingsProto::_internal_device_gpo_cache_lifetime() const {
+  const ::enterprise_management::DeviceGpoCacheLifetimeProto* p = device_gpo_cache_lifetime_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceGpoCacheLifetimeProto*>(
+      &::enterprise_management::_DeviceGpoCacheLifetimeProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceGpoCacheLifetimeProto& ChromeDeviceSettingsProto::device_gpo_cache_lifetime() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_gpo_cache_lifetime)
+  return _internal_device_gpo_cache_lifetime();
+}
+inline ::enterprise_management::DeviceGpoCacheLifetimeProto* ChromeDeviceSettingsProto::release_device_gpo_cache_lifetime() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_gpo_cache_lifetime)
+  _has_bits_[2] &= ~0x00000400u;
+  ::enterprise_management::DeviceGpoCacheLifetimeProto* temp = device_gpo_cache_lifetime_;
+  device_gpo_cache_lifetime_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceGpoCacheLifetimeProto* ChromeDeviceSettingsProto::_internal_mutable_device_gpo_cache_lifetime() {
+  _has_bits_[2] |= 0x00000400u;
+  if (device_gpo_cache_lifetime_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceGpoCacheLifetimeProto>(GetArenaNoVirtual());
+    device_gpo_cache_lifetime_ = p;
+  }
+  return device_gpo_cache_lifetime_;
+}
+inline ::enterprise_management::DeviceGpoCacheLifetimeProto* ChromeDeviceSettingsProto::mutable_device_gpo_cache_lifetime() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_gpo_cache_lifetime)
+  return _internal_mutable_device_gpo_cache_lifetime();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_gpo_cache_lifetime(::enterprise_management::DeviceGpoCacheLifetimeProto* device_gpo_cache_lifetime) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_gpo_cache_lifetime_;
+  }
+  if (device_gpo_cache_lifetime) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_gpo_cache_lifetime = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_gpo_cache_lifetime, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000400u;
+  } else {
+    _has_bits_[2] &= ~0x00000400u;
+  }
+  device_gpo_cache_lifetime_ = device_gpo_cache_lifetime;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_gpo_cache_lifetime)
+}
+
+// optional .enterprise_management.DeviceAuthDataCacheLifetimeProto device_auth_data_cache_lifetime = 77;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_auth_data_cache_lifetime() const {
+  bool value = (_has_bits_[2] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || device_auth_data_cache_lifetime_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_auth_data_cache_lifetime() const {
+  return _internal_has_device_auth_data_cache_lifetime();
+}
+inline void ChromeDeviceSettingsProto::clear_device_auth_data_cache_lifetime() {
+  if (device_auth_data_cache_lifetime_ != nullptr) device_auth_data_cache_lifetime_->Clear();
+  _has_bits_[2] &= ~0x00000800u;
+}
+inline const ::enterprise_management::DeviceAuthDataCacheLifetimeProto& ChromeDeviceSettingsProto::_internal_device_auth_data_cache_lifetime() const {
+  const ::enterprise_management::DeviceAuthDataCacheLifetimeProto* p = device_auth_data_cache_lifetime_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAuthDataCacheLifetimeProto*>(
+      &::enterprise_management::_DeviceAuthDataCacheLifetimeProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceAuthDataCacheLifetimeProto& ChromeDeviceSettingsProto::device_auth_data_cache_lifetime() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_auth_data_cache_lifetime)
+  return _internal_device_auth_data_cache_lifetime();
+}
+inline ::enterprise_management::DeviceAuthDataCacheLifetimeProto* ChromeDeviceSettingsProto::release_device_auth_data_cache_lifetime() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_auth_data_cache_lifetime)
+  _has_bits_[2] &= ~0x00000800u;
+  ::enterprise_management::DeviceAuthDataCacheLifetimeProto* temp = device_auth_data_cache_lifetime_;
+  device_auth_data_cache_lifetime_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAuthDataCacheLifetimeProto* ChromeDeviceSettingsProto::_internal_mutable_device_auth_data_cache_lifetime() {
+  _has_bits_[2] |= 0x00000800u;
+  if (device_auth_data_cache_lifetime_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAuthDataCacheLifetimeProto>(GetArenaNoVirtual());
+    device_auth_data_cache_lifetime_ = p;
+  }
+  return device_auth_data_cache_lifetime_;
+}
+inline ::enterprise_management::DeviceAuthDataCacheLifetimeProto* ChromeDeviceSettingsProto::mutable_device_auth_data_cache_lifetime() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_auth_data_cache_lifetime)
+  return _internal_mutable_device_auth_data_cache_lifetime();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_auth_data_cache_lifetime(::enterprise_management::DeviceAuthDataCacheLifetimeProto* device_auth_data_cache_lifetime) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_auth_data_cache_lifetime_;
+  }
+  if (device_auth_data_cache_lifetime) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_auth_data_cache_lifetime = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_auth_data_cache_lifetime, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00000800u;
+  } else {
+    _has_bits_[2] &= ~0x00000800u;
+  }
+  device_auth_data_cache_lifetime_ = device_auth_data_cache_lifetime;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_auth_data_cache_lifetime)
+}
+
+// optional .enterprise_management.PluginVmLicenseKeyProto plugin_vm_license_key = 78;
+inline bool ChromeDeviceSettingsProto::_internal_has_plugin_vm_license_key() const {
+  bool value = (_has_bits_[2] & 0x00001000u) != 0;
+  PROTOBUF_ASSUME(!value || plugin_vm_license_key_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_plugin_vm_license_key() const {
+  return _internal_has_plugin_vm_license_key();
+}
+inline void ChromeDeviceSettingsProto::clear_plugin_vm_license_key() {
+  if (plugin_vm_license_key_ != nullptr) plugin_vm_license_key_->Clear();
+  _has_bits_[2] &= ~0x00001000u;
+}
+inline const ::enterprise_management::PluginVmLicenseKeyProto& ChromeDeviceSettingsProto::_internal_plugin_vm_license_key() const {
+  const ::enterprise_management::PluginVmLicenseKeyProto* p = plugin_vm_license_key_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PluginVmLicenseKeyProto*>(
+      &::enterprise_management::_PluginVmLicenseKeyProto_default_instance_);
+}
+inline const ::enterprise_management::PluginVmLicenseKeyProto& ChromeDeviceSettingsProto::plugin_vm_license_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.plugin_vm_license_key)
+  return _internal_plugin_vm_license_key();
+}
+inline ::enterprise_management::PluginVmLicenseKeyProto* ChromeDeviceSettingsProto::release_plugin_vm_license_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.plugin_vm_license_key)
+  _has_bits_[2] &= ~0x00001000u;
+  ::enterprise_management::PluginVmLicenseKeyProto* temp = plugin_vm_license_key_;
+  plugin_vm_license_key_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PluginVmLicenseKeyProto* ChromeDeviceSettingsProto::_internal_mutable_plugin_vm_license_key() {
+  _has_bits_[2] |= 0x00001000u;
+  if (plugin_vm_license_key_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PluginVmLicenseKeyProto>(GetArenaNoVirtual());
+    plugin_vm_license_key_ = p;
+  }
+  return plugin_vm_license_key_;
+}
+inline ::enterprise_management::PluginVmLicenseKeyProto* ChromeDeviceSettingsProto::mutable_plugin_vm_license_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.plugin_vm_license_key)
+  return _internal_mutable_plugin_vm_license_key();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_plugin_vm_license_key(::enterprise_management::PluginVmLicenseKeyProto* plugin_vm_license_key) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete plugin_vm_license_key_;
+  }
+  if (plugin_vm_license_key) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      plugin_vm_license_key = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, plugin_vm_license_key, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00001000u;
+  } else {
+    _has_bits_[2] &= ~0x00001000u;
+  }
+  plugin_vm_license_key_ = plugin_vm_license_key;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.plugin_vm_license_key)
+}
+
+// optional .enterprise_management.DeviceRebootOnUserSignoutProto device_reboot_on_user_signout = 79;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_reboot_on_user_signout() const {
+  bool value = (_has_bits_[2] & 0x00002000u) != 0;
+  PROTOBUF_ASSUME(!value || device_reboot_on_user_signout_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_reboot_on_user_signout() const {
+  return _internal_has_device_reboot_on_user_signout();
+}
+inline void ChromeDeviceSettingsProto::clear_device_reboot_on_user_signout() {
+  if (device_reboot_on_user_signout_ != nullptr) device_reboot_on_user_signout_->Clear();
+  _has_bits_[2] &= ~0x00002000u;
+}
+inline const ::enterprise_management::DeviceRebootOnUserSignoutProto& ChromeDeviceSettingsProto::_internal_device_reboot_on_user_signout() const {
+  const ::enterprise_management::DeviceRebootOnUserSignoutProto* p = device_reboot_on_user_signout_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRebootOnUserSignoutProto*>(
+      &::enterprise_management::_DeviceRebootOnUserSignoutProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceRebootOnUserSignoutProto& ChromeDeviceSettingsProto::device_reboot_on_user_signout() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_reboot_on_user_signout)
+  return _internal_device_reboot_on_user_signout();
+}
+inline ::enterprise_management::DeviceRebootOnUserSignoutProto* ChromeDeviceSettingsProto::release_device_reboot_on_user_signout() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_reboot_on_user_signout)
+  _has_bits_[2] &= ~0x00002000u;
+  ::enterprise_management::DeviceRebootOnUserSignoutProto* temp = device_reboot_on_user_signout_;
+  device_reboot_on_user_signout_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRebootOnUserSignoutProto* ChromeDeviceSettingsProto::_internal_mutable_device_reboot_on_user_signout() {
+  _has_bits_[2] |= 0x00002000u;
+  if (device_reboot_on_user_signout_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRebootOnUserSignoutProto>(GetArenaNoVirtual());
+    device_reboot_on_user_signout_ = p;
+  }
+  return device_reboot_on_user_signout_;
+}
+inline ::enterprise_management::DeviceRebootOnUserSignoutProto* ChromeDeviceSettingsProto::mutable_device_reboot_on_user_signout() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_reboot_on_user_signout)
+  return _internal_mutable_device_reboot_on_user_signout();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_reboot_on_user_signout(::enterprise_management::DeviceRebootOnUserSignoutProto* device_reboot_on_user_signout) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_reboot_on_user_signout_;
+  }
+  if (device_reboot_on_user_signout) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_reboot_on_user_signout = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_reboot_on_user_signout, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00002000u;
+  } else {
+    _has_bits_[2] &= ~0x00002000u;
+  }
+  device_reboot_on_user_signout_ = device_reboot_on_user_signout;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_reboot_on_user_signout)
+}
+
+// optional .enterprise_management.DeviceWilcoDtcAllowedProto device_wilco_dtc_allowed = 80;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_wilco_dtc_allowed() const {
+  bool value = (_has_bits_[2] & 0x00004000u) != 0;
+  PROTOBUF_ASSUME(!value || device_wilco_dtc_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_wilco_dtc_allowed() const {
+  return _internal_has_device_wilco_dtc_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_device_wilco_dtc_allowed() {
+  if (device_wilco_dtc_allowed_ != nullptr) device_wilco_dtc_allowed_->Clear();
+  _has_bits_[2] &= ~0x00004000u;
+}
+inline const ::enterprise_management::DeviceWilcoDtcAllowedProto& ChromeDeviceSettingsProto::_internal_device_wilco_dtc_allowed() const {
+  const ::enterprise_management::DeviceWilcoDtcAllowedProto* p = device_wilco_dtc_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceWilcoDtcAllowedProto*>(
+      &::enterprise_management::_DeviceWilcoDtcAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceWilcoDtcAllowedProto& ChromeDeviceSettingsProto::device_wilco_dtc_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_wilco_dtc_allowed)
+  return _internal_device_wilco_dtc_allowed();
+}
+inline ::enterprise_management::DeviceWilcoDtcAllowedProto* ChromeDeviceSettingsProto::release_device_wilco_dtc_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_wilco_dtc_allowed)
+  _has_bits_[2] &= ~0x00004000u;
+  ::enterprise_management::DeviceWilcoDtcAllowedProto* temp = device_wilco_dtc_allowed_;
+  device_wilco_dtc_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceWilcoDtcAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_device_wilco_dtc_allowed() {
+  _has_bits_[2] |= 0x00004000u;
+  if (device_wilco_dtc_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceWilcoDtcAllowedProto>(GetArenaNoVirtual());
+    device_wilco_dtc_allowed_ = p;
+  }
+  return device_wilco_dtc_allowed_;
+}
+inline ::enterprise_management::DeviceWilcoDtcAllowedProto* ChromeDeviceSettingsProto::mutable_device_wilco_dtc_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_wilco_dtc_allowed)
+  return _internal_mutable_device_wilco_dtc_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_wilco_dtc_allowed(::enterprise_management::DeviceWilcoDtcAllowedProto* device_wilco_dtc_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_wilco_dtc_allowed_;
+  }
+  if (device_wilco_dtc_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_wilco_dtc_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_wilco_dtc_allowed, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00004000u;
+  } else {
+    _has_bits_[2] &= ~0x00004000u;
+  }
+  device_wilco_dtc_allowed_ = device_wilco_dtc_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_wilco_dtc_allowed)
+}
+
+// optional .enterprise_management.DeviceWilcoDtcConfigurationProto device_wilco_dtc_configuration = 81;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_wilco_dtc_configuration() const {
+  bool value = (_has_bits_[2] & 0x00008000u) != 0;
+  PROTOBUF_ASSUME(!value || device_wilco_dtc_configuration_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_wilco_dtc_configuration() const {
+  return _internal_has_device_wilco_dtc_configuration();
+}
+inline void ChromeDeviceSettingsProto::clear_device_wilco_dtc_configuration() {
+  if (device_wilco_dtc_configuration_ != nullptr) device_wilco_dtc_configuration_->Clear();
+  _has_bits_[2] &= ~0x00008000u;
+}
+inline const ::enterprise_management::DeviceWilcoDtcConfigurationProto& ChromeDeviceSettingsProto::_internal_device_wilco_dtc_configuration() const {
+  const ::enterprise_management::DeviceWilcoDtcConfigurationProto* p = device_wilco_dtc_configuration_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceWilcoDtcConfigurationProto*>(
+      &::enterprise_management::_DeviceWilcoDtcConfigurationProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceWilcoDtcConfigurationProto& ChromeDeviceSettingsProto::device_wilco_dtc_configuration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_wilco_dtc_configuration)
+  return _internal_device_wilco_dtc_configuration();
+}
+inline ::enterprise_management::DeviceWilcoDtcConfigurationProto* ChromeDeviceSettingsProto::release_device_wilco_dtc_configuration() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_wilco_dtc_configuration)
+  _has_bits_[2] &= ~0x00008000u;
+  ::enterprise_management::DeviceWilcoDtcConfigurationProto* temp = device_wilco_dtc_configuration_;
+  device_wilco_dtc_configuration_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceWilcoDtcConfigurationProto* ChromeDeviceSettingsProto::_internal_mutable_device_wilco_dtc_configuration() {
+  _has_bits_[2] |= 0x00008000u;
+  if (device_wilco_dtc_configuration_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceWilcoDtcConfigurationProto>(GetArenaNoVirtual());
+    device_wilco_dtc_configuration_ = p;
+  }
+  return device_wilco_dtc_configuration_;
+}
+inline ::enterprise_management::DeviceWilcoDtcConfigurationProto* ChromeDeviceSettingsProto::mutable_device_wilco_dtc_configuration() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_wilco_dtc_configuration)
+  return _internal_mutable_device_wilco_dtc_configuration();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_wilco_dtc_configuration(::enterprise_management::DeviceWilcoDtcConfigurationProto* device_wilco_dtc_configuration) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_wilco_dtc_configuration_;
+  }
+  if (device_wilco_dtc_configuration) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_wilco_dtc_configuration = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_wilco_dtc_configuration, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00008000u;
+  } else {
+    _has_bits_[2] &= ~0x00008000u;
+  }
+  device_wilco_dtc_configuration_ = device_wilco_dtc_configuration;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_wilco_dtc_configuration)
+}
+
+// optional .enterprise_management.DeviceWiFiAllowedProto device_wifi_allowed = 82;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_wifi_allowed() const {
+  bool value = (_has_bits_[2] & 0x00010000u) != 0;
+  PROTOBUF_ASSUME(!value || device_wifi_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_wifi_allowed() const {
+  return _internal_has_device_wifi_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_device_wifi_allowed() {
+  if (device_wifi_allowed_ != nullptr) device_wifi_allowed_->Clear();
+  _has_bits_[2] &= ~0x00010000u;
+}
+inline const ::enterprise_management::DeviceWiFiAllowedProto& ChromeDeviceSettingsProto::_internal_device_wifi_allowed() const {
+  const ::enterprise_management::DeviceWiFiAllowedProto* p = device_wifi_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceWiFiAllowedProto*>(
+      &::enterprise_management::_DeviceWiFiAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceWiFiAllowedProto& ChromeDeviceSettingsProto::device_wifi_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_wifi_allowed)
+  return _internal_device_wifi_allowed();
+}
+inline ::enterprise_management::DeviceWiFiAllowedProto* ChromeDeviceSettingsProto::release_device_wifi_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_wifi_allowed)
+  _has_bits_[2] &= ~0x00010000u;
+  ::enterprise_management::DeviceWiFiAllowedProto* temp = device_wifi_allowed_;
+  device_wifi_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceWiFiAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_device_wifi_allowed() {
+  _has_bits_[2] |= 0x00010000u;
+  if (device_wifi_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceWiFiAllowedProto>(GetArenaNoVirtual());
+    device_wifi_allowed_ = p;
+  }
+  return device_wifi_allowed_;
+}
+inline ::enterprise_management::DeviceWiFiAllowedProto* ChromeDeviceSettingsProto::mutable_device_wifi_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_wifi_allowed)
+  return _internal_mutable_device_wifi_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_wifi_allowed(::enterprise_management::DeviceWiFiAllowedProto* device_wifi_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_wifi_allowed_;
+  }
+  if (device_wifi_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_wifi_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_wifi_allowed, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00010000u;
+  } else {
+    _has_bits_[2] &= ~0x00010000u;
+  }
+  device_wifi_allowed_ = device_wifi_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_wifi_allowed)
+}
+
+// optional .enterprise_management.DevicePowerPeakShiftProto device_power_peak_shift = 83;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_power_peak_shift() const {
+  bool value = (_has_bits_[2] & 0x00020000u) != 0;
+  PROTOBUF_ASSUME(!value || device_power_peak_shift_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_power_peak_shift() const {
+  return _internal_has_device_power_peak_shift();
+}
+inline void ChromeDeviceSettingsProto::clear_device_power_peak_shift() {
+  if (device_power_peak_shift_ != nullptr) device_power_peak_shift_->Clear();
+  _has_bits_[2] &= ~0x00020000u;
+}
+inline const ::enterprise_management::DevicePowerPeakShiftProto& ChromeDeviceSettingsProto::_internal_device_power_peak_shift() const {
+  const ::enterprise_management::DevicePowerPeakShiftProto* p = device_power_peak_shift_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePowerPeakShiftProto*>(
+      &::enterprise_management::_DevicePowerPeakShiftProto_default_instance_);
+}
+inline const ::enterprise_management::DevicePowerPeakShiftProto& ChromeDeviceSettingsProto::device_power_peak_shift() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_power_peak_shift)
+  return _internal_device_power_peak_shift();
+}
+inline ::enterprise_management::DevicePowerPeakShiftProto* ChromeDeviceSettingsProto::release_device_power_peak_shift() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_power_peak_shift)
+  _has_bits_[2] &= ~0x00020000u;
+  ::enterprise_management::DevicePowerPeakShiftProto* temp = device_power_peak_shift_;
+  device_power_peak_shift_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePowerPeakShiftProto* ChromeDeviceSettingsProto::_internal_mutable_device_power_peak_shift() {
+  _has_bits_[2] |= 0x00020000u;
+  if (device_power_peak_shift_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePowerPeakShiftProto>(GetArenaNoVirtual());
+    device_power_peak_shift_ = p;
+  }
+  return device_power_peak_shift_;
+}
+inline ::enterprise_management::DevicePowerPeakShiftProto* ChromeDeviceSettingsProto::mutable_device_power_peak_shift() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_power_peak_shift)
+  return _internal_mutable_device_power_peak_shift();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_power_peak_shift(::enterprise_management::DevicePowerPeakShiftProto* device_power_peak_shift) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_power_peak_shift_;
+  }
+  if (device_power_peak_shift) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_power_peak_shift = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_power_peak_shift, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00020000u;
+  } else {
+    _has_bits_[2] &= ~0x00020000u;
+  }
+  device_power_peak_shift_ = device_power_peak_shift;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_power_peak_shift)
+}
+
+// optional .enterprise_management.DeviceBootOnAcProto device_boot_on_ac = 84;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_boot_on_ac() const {
+  bool value = (_has_bits_[2] & 0x00040000u) != 0;
+  PROTOBUF_ASSUME(!value || device_boot_on_ac_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_boot_on_ac() const {
+  return _internal_has_device_boot_on_ac();
+}
+inline void ChromeDeviceSettingsProto::clear_device_boot_on_ac() {
+  if (device_boot_on_ac_ != nullptr) device_boot_on_ac_->Clear();
+  _has_bits_[2] &= ~0x00040000u;
+}
+inline const ::enterprise_management::DeviceBootOnAcProto& ChromeDeviceSettingsProto::_internal_device_boot_on_ac() const {
+  const ::enterprise_management::DeviceBootOnAcProto* p = device_boot_on_ac_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceBootOnAcProto*>(
+      &::enterprise_management::_DeviceBootOnAcProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceBootOnAcProto& ChromeDeviceSettingsProto::device_boot_on_ac() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_boot_on_ac)
+  return _internal_device_boot_on_ac();
+}
+inline ::enterprise_management::DeviceBootOnAcProto* ChromeDeviceSettingsProto::release_device_boot_on_ac() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_boot_on_ac)
+  _has_bits_[2] &= ~0x00040000u;
+  ::enterprise_management::DeviceBootOnAcProto* temp = device_boot_on_ac_;
+  device_boot_on_ac_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceBootOnAcProto* ChromeDeviceSettingsProto::_internal_mutable_device_boot_on_ac() {
+  _has_bits_[2] |= 0x00040000u;
+  if (device_boot_on_ac_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceBootOnAcProto>(GetArenaNoVirtual());
+    device_boot_on_ac_ = p;
+  }
+  return device_boot_on_ac_;
+}
+inline ::enterprise_management::DeviceBootOnAcProto* ChromeDeviceSettingsProto::mutable_device_boot_on_ac() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_boot_on_ac)
+  return _internal_mutable_device_boot_on_ac();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_boot_on_ac(::enterprise_management::DeviceBootOnAcProto* device_boot_on_ac) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_boot_on_ac_;
+  }
+  if (device_boot_on_ac) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_boot_on_ac = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_boot_on_ac, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00040000u;
+  } else {
+    _has_bits_[2] &= ~0x00040000u;
+  }
+  device_boot_on_ac_ = device_boot_on_ac;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_boot_on_ac)
+}
+
+// optional .enterprise_management.DeviceDockMacAddressSourceProto device_dock_mac_address_source = 85;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_dock_mac_address_source() const {
+  bool value = (_has_bits_[2] & 0x00080000u) != 0;
+  PROTOBUF_ASSUME(!value || device_dock_mac_address_source_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_dock_mac_address_source() const {
+  return _internal_has_device_dock_mac_address_source();
+}
+inline void ChromeDeviceSettingsProto::clear_device_dock_mac_address_source() {
+  if (device_dock_mac_address_source_ != nullptr) device_dock_mac_address_source_->Clear();
+  _has_bits_[2] &= ~0x00080000u;
+}
+inline const ::enterprise_management::DeviceDockMacAddressSourceProto& ChromeDeviceSettingsProto::_internal_device_dock_mac_address_source() const {
+  const ::enterprise_management::DeviceDockMacAddressSourceProto* p = device_dock_mac_address_source_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceDockMacAddressSourceProto*>(
+      &::enterprise_management::_DeviceDockMacAddressSourceProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceDockMacAddressSourceProto& ChromeDeviceSettingsProto::device_dock_mac_address_source() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_dock_mac_address_source)
+  return _internal_device_dock_mac_address_source();
+}
+inline ::enterprise_management::DeviceDockMacAddressSourceProto* ChromeDeviceSettingsProto::release_device_dock_mac_address_source() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_dock_mac_address_source)
+  _has_bits_[2] &= ~0x00080000u;
+  ::enterprise_management::DeviceDockMacAddressSourceProto* temp = device_dock_mac_address_source_;
+  device_dock_mac_address_source_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceDockMacAddressSourceProto* ChromeDeviceSettingsProto::_internal_mutable_device_dock_mac_address_source() {
+  _has_bits_[2] |= 0x00080000u;
+  if (device_dock_mac_address_source_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceDockMacAddressSourceProto>(GetArenaNoVirtual());
+    device_dock_mac_address_source_ = p;
+  }
+  return device_dock_mac_address_source_;
+}
+inline ::enterprise_management::DeviceDockMacAddressSourceProto* ChromeDeviceSettingsProto::mutable_device_dock_mac_address_source() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_dock_mac_address_source)
+  return _internal_mutable_device_dock_mac_address_source();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_dock_mac_address_source(::enterprise_management::DeviceDockMacAddressSourceProto* device_dock_mac_address_source) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_dock_mac_address_source_;
+  }
+  if (device_dock_mac_address_source) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_dock_mac_address_source = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_dock_mac_address_source, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00080000u;
+  } else {
+    _has_bits_[2] &= ~0x00080000u;
+  }
+  device_dock_mac_address_source_ = device_dock_mac_address_source;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_dock_mac_address_source)
+}
+
+// optional .enterprise_management.DeviceAdvancedBatteryChargeModeProto device_advanced_battery_charge_mode = 86;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_advanced_battery_charge_mode() const {
+  bool value = (_has_bits_[2] & 0x00100000u) != 0;
+  PROTOBUF_ASSUME(!value || device_advanced_battery_charge_mode_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_advanced_battery_charge_mode() const {
+  return _internal_has_device_advanced_battery_charge_mode();
+}
+inline void ChromeDeviceSettingsProto::clear_device_advanced_battery_charge_mode() {
+  if (device_advanced_battery_charge_mode_ != nullptr) device_advanced_battery_charge_mode_->Clear();
+  _has_bits_[2] &= ~0x00100000u;
+}
+inline const ::enterprise_management::DeviceAdvancedBatteryChargeModeProto& ChromeDeviceSettingsProto::_internal_device_advanced_battery_charge_mode() const {
+  const ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* p = device_advanced_battery_charge_mode_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAdvancedBatteryChargeModeProto*>(
+      &::enterprise_management::_DeviceAdvancedBatteryChargeModeProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceAdvancedBatteryChargeModeProto& ChromeDeviceSettingsProto::device_advanced_battery_charge_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_advanced_battery_charge_mode)
+  return _internal_device_advanced_battery_charge_mode();
+}
+inline ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* ChromeDeviceSettingsProto::release_device_advanced_battery_charge_mode() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_advanced_battery_charge_mode)
+  _has_bits_[2] &= ~0x00100000u;
+  ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* temp = device_advanced_battery_charge_mode_;
+  device_advanced_battery_charge_mode_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* ChromeDeviceSettingsProto::_internal_mutable_device_advanced_battery_charge_mode() {
+  _has_bits_[2] |= 0x00100000u;
+  if (device_advanced_battery_charge_mode_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAdvancedBatteryChargeModeProto>(GetArenaNoVirtual());
+    device_advanced_battery_charge_mode_ = p;
+  }
+  return device_advanced_battery_charge_mode_;
+}
+inline ::enterprise_management::DeviceAdvancedBatteryChargeModeProto* ChromeDeviceSettingsProto::mutable_device_advanced_battery_charge_mode() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_advanced_battery_charge_mode)
+  return _internal_mutable_device_advanced_battery_charge_mode();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_advanced_battery_charge_mode(::enterprise_management::DeviceAdvancedBatteryChargeModeProto* device_advanced_battery_charge_mode) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_advanced_battery_charge_mode_;
+  }
+  if (device_advanced_battery_charge_mode) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_advanced_battery_charge_mode = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_advanced_battery_charge_mode, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00100000u;
+  } else {
+    _has_bits_[2] &= ~0x00100000u;
+  }
+  device_advanced_battery_charge_mode_ = device_advanced_battery_charge_mode;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_advanced_battery_charge_mode)
+}
+
+// optional .enterprise_management.DeviceBatteryChargeModeProto device_battery_charge_mode = 87;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_battery_charge_mode() const {
+  bool value = (_has_bits_[2] & 0x00200000u) != 0;
+  PROTOBUF_ASSUME(!value || device_battery_charge_mode_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_battery_charge_mode() const {
+  return _internal_has_device_battery_charge_mode();
+}
+inline void ChromeDeviceSettingsProto::clear_device_battery_charge_mode() {
+  if (device_battery_charge_mode_ != nullptr) device_battery_charge_mode_->Clear();
+  _has_bits_[2] &= ~0x00200000u;
+}
+inline const ::enterprise_management::DeviceBatteryChargeModeProto& ChromeDeviceSettingsProto::_internal_device_battery_charge_mode() const {
+  const ::enterprise_management::DeviceBatteryChargeModeProto* p = device_battery_charge_mode_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceBatteryChargeModeProto*>(
+      &::enterprise_management::_DeviceBatteryChargeModeProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceBatteryChargeModeProto& ChromeDeviceSettingsProto::device_battery_charge_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_battery_charge_mode)
+  return _internal_device_battery_charge_mode();
+}
+inline ::enterprise_management::DeviceBatteryChargeModeProto* ChromeDeviceSettingsProto::release_device_battery_charge_mode() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_battery_charge_mode)
+  _has_bits_[2] &= ~0x00200000u;
+  ::enterprise_management::DeviceBatteryChargeModeProto* temp = device_battery_charge_mode_;
+  device_battery_charge_mode_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceBatteryChargeModeProto* ChromeDeviceSettingsProto::_internal_mutable_device_battery_charge_mode() {
+  _has_bits_[2] |= 0x00200000u;
+  if (device_battery_charge_mode_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceBatteryChargeModeProto>(GetArenaNoVirtual());
+    device_battery_charge_mode_ = p;
+  }
+  return device_battery_charge_mode_;
+}
+inline ::enterprise_management::DeviceBatteryChargeModeProto* ChromeDeviceSettingsProto::mutable_device_battery_charge_mode() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_battery_charge_mode)
+  return _internal_mutable_device_battery_charge_mode();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_battery_charge_mode(::enterprise_management::DeviceBatteryChargeModeProto* device_battery_charge_mode) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_battery_charge_mode_;
+  }
+  if (device_battery_charge_mode) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_battery_charge_mode = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_battery_charge_mode, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00200000u;
+  } else {
+    _has_bits_[2] &= ~0x00200000u;
+  }
+  device_battery_charge_mode_ = device_battery_charge_mode;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_battery_charge_mode)
+}
+
+// optional .enterprise_management.DeviceUsbPowerShareProto device_usb_power_share = 88;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_usb_power_share() const {
+  bool value = (_has_bits_[2] & 0x00400000u) != 0;
+  PROTOBUF_ASSUME(!value || device_usb_power_share_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_usb_power_share() const {
+  return _internal_has_device_usb_power_share();
+}
+inline void ChromeDeviceSettingsProto::clear_device_usb_power_share() {
+  if (device_usb_power_share_ != nullptr) device_usb_power_share_->Clear();
+  _has_bits_[2] &= ~0x00400000u;
+}
+inline const ::enterprise_management::DeviceUsbPowerShareProto& ChromeDeviceSettingsProto::_internal_device_usb_power_share() const {
+  const ::enterprise_management::DeviceUsbPowerShareProto* p = device_usb_power_share_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceUsbPowerShareProto*>(
+      &::enterprise_management::_DeviceUsbPowerShareProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceUsbPowerShareProto& ChromeDeviceSettingsProto::device_usb_power_share() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_usb_power_share)
+  return _internal_device_usb_power_share();
+}
+inline ::enterprise_management::DeviceUsbPowerShareProto* ChromeDeviceSettingsProto::release_device_usb_power_share() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_usb_power_share)
+  _has_bits_[2] &= ~0x00400000u;
+  ::enterprise_management::DeviceUsbPowerShareProto* temp = device_usb_power_share_;
+  device_usb_power_share_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceUsbPowerShareProto* ChromeDeviceSettingsProto::_internal_mutable_device_usb_power_share() {
+  _has_bits_[2] |= 0x00400000u;
+  if (device_usb_power_share_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceUsbPowerShareProto>(GetArenaNoVirtual());
+    device_usb_power_share_ = p;
+  }
+  return device_usb_power_share_;
+}
+inline ::enterprise_management::DeviceUsbPowerShareProto* ChromeDeviceSettingsProto::mutable_device_usb_power_share() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_usb_power_share)
+  return _internal_mutable_device_usb_power_share();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_usb_power_share(::enterprise_management::DeviceUsbPowerShareProto* device_usb_power_share) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_usb_power_share_;
+  }
+  if (device_usb_power_share) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_usb_power_share = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_usb_power_share, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00400000u;
+  } else {
+    _has_bits_[2] &= ~0x00400000u;
+  }
+  device_usb_power_share_ = device_usb_power_share;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_usb_power_share)
+}
+
+// optional .enterprise_management.DeviceScheduledUpdateCheckProto device_scheduled_update_check = 89;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_scheduled_update_check() const {
+  bool value = (_has_bits_[2] & 0x00800000u) != 0;
+  PROTOBUF_ASSUME(!value || device_scheduled_update_check_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_scheduled_update_check() const {
+  return _internal_has_device_scheduled_update_check();
+}
+inline void ChromeDeviceSettingsProto::clear_device_scheduled_update_check() {
+  if (device_scheduled_update_check_ != nullptr) device_scheduled_update_check_->Clear();
+  _has_bits_[2] &= ~0x00800000u;
+}
+inline const ::enterprise_management::DeviceScheduledUpdateCheckProto& ChromeDeviceSettingsProto::_internal_device_scheduled_update_check() const {
+  const ::enterprise_management::DeviceScheduledUpdateCheckProto* p = device_scheduled_update_check_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceScheduledUpdateCheckProto*>(
+      &::enterprise_management::_DeviceScheduledUpdateCheckProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceScheduledUpdateCheckProto& ChromeDeviceSettingsProto::device_scheduled_update_check() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_scheduled_update_check)
+  return _internal_device_scheduled_update_check();
+}
+inline ::enterprise_management::DeviceScheduledUpdateCheckProto* ChromeDeviceSettingsProto::release_device_scheduled_update_check() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_scheduled_update_check)
+  _has_bits_[2] &= ~0x00800000u;
+  ::enterprise_management::DeviceScheduledUpdateCheckProto* temp = device_scheduled_update_check_;
+  device_scheduled_update_check_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceScheduledUpdateCheckProto* ChromeDeviceSettingsProto::_internal_mutable_device_scheduled_update_check() {
+  _has_bits_[2] |= 0x00800000u;
+  if (device_scheduled_update_check_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceScheduledUpdateCheckProto>(GetArenaNoVirtual());
+    device_scheduled_update_check_ = p;
+  }
+  return device_scheduled_update_check_;
+}
+inline ::enterprise_management::DeviceScheduledUpdateCheckProto* ChromeDeviceSettingsProto::mutable_device_scheduled_update_check() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_scheduled_update_check)
+  return _internal_mutable_device_scheduled_update_check();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_scheduled_update_check(::enterprise_management::DeviceScheduledUpdateCheckProto* device_scheduled_update_check) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_scheduled_update_check_;
+  }
+  if (device_scheduled_update_check) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_scheduled_update_check = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_scheduled_update_check, submessage_arena);
+    }
+    _has_bits_[2] |= 0x00800000u;
+  } else {
+    _has_bits_[2] &= ~0x00800000u;
+  }
+  device_scheduled_update_check_ = device_scheduled_update_check;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_scheduled_update_check)
+}
+
+// optional .enterprise_management.DevicePowerwashAllowedProto device_powerwash_allowed = 91;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_powerwash_allowed() const {
+  bool value = (_has_bits_[2] & 0x01000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_powerwash_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_powerwash_allowed() const {
+  return _internal_has_device_powerwash_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_device_powerwash_allowed() {
+  if (device_powerwash_allowed_ != nullptr) device_powerwash_allowed_->Clear();
+  _has_bits_[2] &= ~0x01000000u;
+}
+inline const ::enterprise_management::DevicePowerwashAllowedProto& ChromeDeviceSettingsProto::_internal_device_powerwash_allowed() const {
+  const ::enterprise_management::DevicePowerwashAllowedProto* p = device_powerwash_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePowerwashAllowedProto*>(
+      &::enterprise_management::_DevicePowerwashAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::DevicePowerwashAllowedProto& ChromeDeviceSettingsProto::device_powerwash_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_powerwash_allowed)
+  return _internal_device_powerwash_allowed();
+}
+inline ::enterprise_management::DevicePowerwashAllowedProto* ChromeDeviceSettingsProto::release_device_powerwash_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_powerwash_allowed)
+  _has_bits_[2] &= ~0x01000000u;
+  ::enterprise_management::DevicePowerwashAllowedProto* temp = device_powerwash_allowed_;
+  device_powerwash_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePowerwashAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_device_powerwash_allowed() {
+  _has_bits_[2] |= 0x01000000u;
+  if (device_powerwash_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePowerwashAllowedProto>(GetArenaNoVirtual());
+    device_powerwash_allowed_ = p;
+  }
+  return device_powerwash_allowed_;
+}
+inline ::enterprise_management::DevicePowerwashAllowedProto* ChromeDeviceSettingsProto::mutable_device_powerwash_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_powerwash_allowed)
+  return _internal_mutable_device_powerwash_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_powerwash_allowed(::enterprise_management::DevicePowerwashAllowedProto* device_powerwash_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_powerwash_allowed_;
+  }
+  if (device_powerwash_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_powerwash_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_powerwash_allowed, submessage_arena);
+    }
+    _has_bits_[2] |= 0x01000000u;
+  } else {
+    _has_bits_[2] &= ~0x01000000u;
+  }
+  device_powerwash_allowed_ = device_powerwash_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_powerwash_allowed)
+}
+
+// optional .enterprise_management.DeviceLoginScreenWebUsbAllowDevicesForUrlsProto device_login_screen_webusb_allow_devices_for_urls = 92;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_login_screen_webusb_allow_devices_for_urls() const {
+  bool value = (_has_bits_[2] & 0x02000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_login_screen_webusb_allow_devices_for_urls_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_login_screen_webusb_allow_devices_for_urls() const {
+  return _internal_has_device_login_screen_webusb_allow_devices_for_urls();
+}
+inline void ChromeDeviceSettingsProto::clear_device_login_screen_webusb_allow_devices_for_urls() {
+  if (device_login_screen_webusb_allow_devices_for_urls_ != nullptr) device_login_screen_webusb_allow_devices_for_urls_->Clear();
+  _has_bits_[2] &= ~0x02000000u;
+}
+inline const ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& ChromeDeviceSettingsProto::_internal_device_login_screen_webusb_allow_devices_for_urls() const {
+  const ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* p = device_login_screen_webusb_allow_devices_for_urls_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto*>(
+      &::enterprise_management::_DeviceLoginScreenWebUsbAllowDevicesForUrlsProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto& ChromeDeviceSettingsProto::device_login_screen_webusb_allow_devices_for_urls() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_webusb_allow_devices_for_urls)
+  return _internal_device_login_screen_webusb_allow_devices_for_urls();
+}
+inline ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* ChromeDeviceSettingsProto::release_device_login_screen_webusb_allow_devices_for_urls() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_webusb_allow_devices_for_urls)
+  _has_bits_[2] &= ~0x02000000u;
+  ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* temp = device_login_screen_webusb_allow_devices_for_urls_;
+  device_login_screen_webusb_allow_devices_for_urls_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* ChromeDeviceSettingsProto::_internal_mutable_device_login_screen_webusb_allow_devices_for_urls() {
+  _has_bits_[2] |= 0x02000000u;
+  if (device_login_screen_webusb_allow_devices_for_urls_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto>(GetArenaNoVirtual());
+    device_login_screen_webusb_allow_devices_for_urls_ = p;
+  }
+  return device_login_screen_webusb_allow_devices_for_urls_;
+}
+inline ::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* ChromeDeviceSettingsProto::mutable_device_login_screen_webusb_allow_devices_for_urls() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_webusb_allow_devices_for_urls)
+  return _internal_mutable_device_login_screen_webusb_allow_devices_for_urls();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_login_screen_webusb_allow_devices_for_urls(::enterprise_management::DeviceLoginScreenWebUsbAllowDevicesForUrlsProto* device_login_screen_webusb_allow_devices_for_urls) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_login_screen_webusb_allow_devices_for_urls_;
+  }
+  if (device_login_screen_webusb_allow_devices_for_urls) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_login_screen_webusb_allow_devices_for_urls = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_login_screen_webusb_allow_devices_for_urls, submessage_arena);
+    }
+    _has_bits_[2] |= 0x02000000u;
+  } else {
+    _has_bits_[2] &= ~0x02000000u;
+  }
+  device_login_screen_webusb_allow_devices_for_urls_ = device_login_screen_webusb_allow_devices_for_urls;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_webusb_allow_devices_for_urls)
+}
+
+// optional .enterprise_management.BooleanPolicyProto device_login_screen_system_info_enforced = 93;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_login_screen_system_info_enforced() const {
+  bool value = (_has_bits_[2] & 0x04000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_login_screen_system_info_enforced_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_login_screen_system_info_enforced() const {
+  return _internal_has_device_login_screen_system_info_enforced();
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::_internal_device_login_screen_system_info_enforced() const {
+  const ::enterprise_management::BooleanPolicyProto* p = device_login_screen_system_info_enforced_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BooleanPolicyProto*>(
+      &::enterprise_management::_BooleanPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::device_login_screen_system_info_enforced() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_system_info_enforced)
+  return _internal_device_login_screen_system_info_enforced();
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::release_device_login_screen_system_info_enforced() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_system_info_enforced)
+  _has_bits_[2] &= ~0x04000000u;
+  ::enterprise_management::BooleanPolicyProto* temp = device_login_screen_system_info_enforced_;
+  device_login_screen_system_info_enforced_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_device_login_screen_system_info_enforced() {
+  _has_bits_[2] |= 0x04000000u;
+  if (device_login_screen_system_info_enforced_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(GetArenaNoVirtual());
+    device_login_screen_system_info_enforced_ = p;
+  }
+  return device_login_screen_system_info_enforced_;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::mutable_device_login_screen_system_info_enforced() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_system_info_enforced)
+  return _internal_mutable_device_login_screen_system_info_enforced();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_login_screen_system_info_enforced(::enterprise_management::BooleanPolicyProto* device_login_screen_system_info_enforced) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(device_login_screen_system_info_enforced_);
+  }
+  if (device_login_screen_system_info_enforced) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_login_screen_system_info_enforced = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_login_screen_system_info_enforced, submessage_arena);
+    }
+    _has_bits_[2] |= 0x04000000u;
+  } else {
+    _has_bits_[2] &= ~0x04000000u;
+  }
+  device_login_screen_system_info_enforced_ = device_login_screen_system_info_enforced;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_system_info_enforced)
+}
+
+// optional .enterprise_management.StringListPolicyProto device_web_based_attestation_allowed_urls = 94;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_web_based_attestation_allowed_urls() const {
+  bool value = (_has_bits_[2] & 0x08000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_web_based_attestation_allowed_urls_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_web_based_attestation_allowed_urls() const {
+  return _internal_has_device_web_based_attestation_allowed_urls();
+}
+inline const ::enterprise_management::StringListPolicyProto& ChromeDeviceSettingsProto::_internal_device_web_based_attestation_allowed_urls() const {
+  const ::enterprise_management::StringListPolicyProto* p = device_web_based_attestation_allowed_urls_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::StringListPolicyProto*>(
+      &::enterprise_management::_StringListPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::StringListPolicyProto& ChromeDeviceSettingsProto::device_web_based_attestation_allowed_urls() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_web_based_attestation_allowed_urls)
+  return _internal_device_web_based_attestation_allowed_urls();
+}
+inline ::enterprise_management::StringListPolicyProto* ChromeDeviceSettingsProto::release_device_web_based_attestation_allowed_urls() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_web_based_attestation_allowed_urls)
+  _has_bits_[2] &= ~0x08000000u;
+  ::enterprise_management::StringListPolicyProto* temp = device_web_based_attestation_allowed_urls_;
+  device_web_based_attestation_allowed_urls_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::StringListPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_device_web_based_attestation_allowed_urls() {
+  _has_bits_[2] |= 0x08000000u;
+  if (device_web_based_attestation_allowed_urls_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::StringListPolicyProto>(GetArenaNoVirtual());
+    device_web_based_attestation_allowed_urls_ = p;
+  }
+  return device_web_based_attestation_allowed_urls_;
+}
+inline ::enterprise_management::StringListPolicyProto* ChromeDeviceSettingsProto::mutable_device_web_based_attestation_allowed_urls() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_web_based_attestation_allowed_urls)
+  return _internal_mutable_device_web_based_attestation_allowed_urls();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_web_based_attestation_allowed_urls(::enterprise_management::StringListPolicyProto* device_web_based_attestation_allowed_urls) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(device_web_based_attestation_allowed_urls_);
+  }
+  if (device_web_based_attestation_allowed_urls) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_web_based_attestation_allowed_urls = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_web_based_attestation_allowed_urls, submessage_arena);
+    }
+    _has_bits_[2] |= 0x08000000u;
+  } else {
+    _has_bits_[2] &= ~0x08000000u;
+  }
+  device_web_based_attestation_allowed_urls_ = device_web_based_attestation_allowed_urls;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_web_based_attestation_allowed_urls)
+}
+
+// optional .enterprise_management.BooleanPolicyProto device_show_numeric_keyboard_for_password = 95;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_show_numeric_keyboard_for_password() const {
+  bool value = (_has_bits_[2] & 0x10000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_show_numeric_keyboard_for_password_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_show_numeric_keyboard_for_password() const {
+  return _internal_has_device_show_numeric_keyboard_for_password();
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::_internal_device_show_numeric_keyboard_for_password() const {
+  const ::enterprise_management::BooleanPolicyProto* p = device_show_numeric_keyboard_for_password_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BooleanPolicyProto*>(
+      &::enterprise_management::_BooleanPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::device_show_numeric_keyboard_for_password() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_show_numeric_keyboard_for_password)
+  return _internal_device_show_numeric_keyboard_for_password();
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::release_device_show_numeric_keyboard_for_password() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_show_numeric_keyboard_for_password)
+  _has_bits_[2] &= ~0x10000000u;
+  ::enterprise_management::BooleanPolicyProto* temp = device_show_numeric_keyboard_for_password_;
+  device_show_numeric_keyboard_for_password_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_device_show_numeric_keyboard_for_password() {
+  _has_bits_[2] |= 0x10000000u;
+  if (device_show_numeric_keyboard_for_password_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(GetArenaNoVirtual());
+    device_show_numeric_keyboard_for_password_ = p;
+  }
+  return device_show_numeric_keyboard_for_password_;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::mutable_device_show_numeric_keyboard_for_password() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_show_numeric_keyboard_for_password)
+  return _internal_mutable_device_show_numeric_keyboard_for_password();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_show_numeric_keyboard_for_password(::enterprise_management::BooleanPolicyProto* device_show_numeric_keyboard_for_password) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(device_show_numeric_keyboard_for_password_);
+  }
+  if (device_show_numeric_keyboard_for_password) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_show_numeric_keyboard_for_password = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_show_numeric_keyboard_for_password, submessage_arena);
+    }
+    _has_bits_[2] |= 0x10000000u;
+  } else {
+    _has_bits_[2] &= ~0x10000000u;
+  }
+  device_show_numeric_keyboard_for_password_ = device_show_numeric_keyboard_for_password;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_show_numeric_keyboard_for_password)
+}
+
+// optional .enterprise_management.BooleanPolicyProto login_screen_primary_mouse_button_switch = 96;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_screen_primary_mouse_button_switch() const {
+  bool value = (_has_bits_[2] & 0x20000000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_primary_mouse_button_switch_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_screen_primary_mouse_button_switch() const {
+  return _internal_has_login_screen_primary_mouse_button_switch();
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::_internal_login_screen_primary_mouse_button_switch() const {
+  const ::enterprise_management::BooleanPolicyProto* p = login_screen_primary_mouse_button_switch_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BooleanPolicyProto*>(
+      &::enterprise_management::_BooleanPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::login_screen_primary_mouse_button_switch() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_screen_primary_mouse_button_switch)
+  return _internal_login_screen_primary_mouse_button_switch();
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::release_login_screen_primary_mouse_button_switch() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_screen_primary_mouse_button_switch)
+  _has_bits_[2] &= ~0x20000000u;
+  ::enterprise_management::BooleanPolicyProto* temp = login_screen_primary_mouse_button_switch_;
+  login_screen_primary_mouse_button_switch_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_login_screen_primary_mouse_button_switch() {
+  _has_bits_[2] |= 0x20000000u;
+  if (login_screen_primary_mouse_button_switch_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(GetArenaNoVirtual());
+    login_screen_primary_mouse_button_switch_ = p;
+  }
+  return login_screen_primary_mouse_button_switch_;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::mutable_login_screen_primary_mouse_button_switch() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_screen_primary_mouse_button_switch)
+  return _internal_mutable_login_screen_primary_mouse_button_switch();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_screen_primary_mouse_button_switch(::enterprise_management::BooleanPolicyProto* login_screen_primary_mouse_button_switch) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_primary_mouse_button_switch_);
+  }
+  if (login_screen_primary_mouse_button_switch) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_primary_mouse_button_switch = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_primary_mouse_button_switch, submessage_arena);
+    }
+    _has_bits_[2] |= 0x20000000u;
+  } else {
+    _has_bits_[2] &= ~0x20000000u;
+  }
+  login_screen_primary_mouse_button_switch_ = login_screen_primary_mouse_button_switch;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_screen_primary_mouse_button_switch)
+}
+
+// optional .enterprise_management.StringPolicyProto device_minimum_version = 97;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_minimum_version() const {
+  bool value = (_has_bits_[2] & 0x40000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_minimum_version_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_minimum_version() const {
+  return _internal_has_device_minimum_version();
+}
+inline const ::enterprise_management::StringPolicyProto& ChromeDeviceSettingsProto::_internal_device_minimum_version() const {
+  const ::enterprise_management::StringPolicyProto* p = device_minimum_version_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::StringPolicyProto*>(
+      &::enterprise_management::_StringPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::StringPolicyProto& ChromeDeviceSettingsProto::device_minimum_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_minimum_version)
+  return _internal_device_minimum_version();
+}
+inline ::enterprise_management::StringPolicyProto* ChromeDeviceSettingsProto::release_device_minimum_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_minimum_version)
+  _has_bits_[2] &= ~0x40000000u;
+  ::enterprise_management::StringPolicyProto* temp = device_minimum_version_;
+  device_minimum_version_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::StringPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_device_minimum_version() {
+  _has_bits_[2] |= 0x40000000u;
+  if (device_minimum_version_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::StringPolicyProto>(GetArenaNoVirtual());
+    device_minimum_version_ = p;
+  }
+  return device_minimum_version_;
+}
+inline ::enterprise_management::StringPolicyProto* ChromeDeviceSettingsProto::mutable_device_minimum_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_minimum_version)
+  return _internal_mutable_device_minimum_version();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_minimum_version(::enterprise_management::StringPolicyProto* device_minimum_version) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(device_minimum_version_);
+  }
+  if (device_minimum_version) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_minimum_version = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_minimum_version, submessage_arena);
+    }
+    _has_bits_[2] |= 0x40000000u;
+  } else {
+    _has_bits_[2] &= ~0x40000000u;
+  }
+  device_minimum_version_ = device_minimum_version;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_minimum_version)
+}
+
+// optional .enterprise_management.SystemProxySettingsProto system_proxy_settings = 98;
+inline bool ChromeDeviceSettingsProto::_internal_has_system_proxy_settings() const {
+  bool value = (_has_bits_[2] & 0x80000000u) != 0;
+  PROTOBUF_ASSUME(!value || system_proxy_settings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_system_proxy_settings() const {
+  return _internal_has_system_proxy_settings();
+}
+inline void ChromeDeviceSettingsProto::clear_system_proxy_settings() {
+  if (system_proxy_settings_ != nullptr) system_proxy_settings_->Clear();
+  _has_bits_[2] &= ~0x80000000u;
+}
+inline const ::enterprise_management::SystemProxySettingsProto& ChromeDeviceSettingsProto::_internal_system_proxy_settings() const {
+  const ::enterprise_management::SystemProxySettingsProto* p = system_proxy_settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SystemProxySettingsProto*>(
+      &::enterprise_management::_SystemProxySettingsProto_default_instance_);
+}
+inline const ::enterprise_management::SystemProxySettingsProto& ChromeDeviceSettingsProto::system_proxy_settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.system_proxy_settings)
+  return _internal_system_proxy_settings();
+}
+inline ::enterprise_management::SystemProxySettingsProto* ChromeDeviceSettingsProto::release_system_proxy_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.system_proxy_settings)
+  _has_bits_[2] &= ~0x80000000u;
+  ::enterprise_management::SystemProxySettingsProto* temp = system_proxy_settings_;
+  system_proxy_settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SystemProxySettingsProto* ChromeDeviceSettingsProto::_internal_mutable_system_proxy_settings() {
+  _has_bits_[2] |= 0x80000000u;
+  if (system_proxy_settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SystemProxySettingsProto>(GetArenaNoVirtual());
+    system_proxy_settings_ = p;
+  }
+  return system_proxy_settings_;
+}
+inline ::enterprise_management::SystemProxySettingsProto* ChromeDeviceSettingsProto::mutable_system_proxy_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.system_proxy_settings)
+  return _internal_mutable_system_proxy_settings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_system_proxy_settings(::enterprise_management::SystemProxySettingsProto* system_proxy_settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete system_proxy_settings_;
+  }
+  if (system_proxy_settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      system_proxy_settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, system_proxy_settings, submessage_arena);
+    }
+    _has_bits_[2] |= 0x80000000u;
+  } else {
+    _has_bits_[2] &= ~0x80000000u;
+  }
+  system_proxy_settings_ = system_proxy_settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.system_proxy_settings)
+}
+
+// optional .enterprise_management.IntegerPolicyProto device_chrome_variations_type = 99;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_chrome_variations_type() const {
+  bool value = (_has_bits_[3] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || device_chrome_variations_type_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_chrome_variations_type() const {
+  return _internal_has_device_chrome_variations_type();
+}
+inline const ::enterprise_management::IntegerPolicyProto& ChromeDeviceSettingsProto::_internal_device_chrome_variations_type() const {
+  const ::enterprise_management::IntegerPolicyProto* p = device_chrome_variations_type_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::IntegerPolicyProto*>(
+      &::enterprise_management::_IntegerPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::IntegerPolicyProto& ChromeDeviceSettingsProto::device_chrome_variations_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_chrome_variations_type)
+  return _internal_device_chrome_variations_type();
+}
+inline ::enterprise_management::IntegerPolicyProto* ChromeDeviceSettingsProto::release_device_chrome_variations_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_chrome_variations_type)
+  _has_bits_[3] &= ~0x00000001u;
+  ::enterprise_management::IntegerPolicyProto* temp = device_chrome_variations_type_;
+  device_chrome_variations_type_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::IntegerPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_device_chrome_variations_type() {
+  _has_bits_[3] |= 0x00000001u;
+  if (device_chrome_variations_type_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::IntegerPolicyProto>(GetArenaNoVirtual());
+    device_chrome_variations_type_ = p;
+  }
+  return device_chrome_variations_type_;
+}
+inline ::enterprise_management::IntegerPolicyProto* ChromeDeviceSettingsProto::mutable_device_chrome_variations_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_chrome_variations_type)
+  return _internal_mutable_device_chrome_variations_type();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_chrome_variations_type(::enterprise_management::IntegerPolicyProto* device_chrome_variations_type) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(device_chrome_variations_type_);
+  }
+  if (device_chrome_variations_type) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_chrome_variations_type = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_chrome_variations_type, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000001u;
+  } else {
+    _has_bits_[3] &= ~0x00000001u;
+  }
+  device_chrome_variations_type_ = device_chrome_variations_type;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_chrome_variations_type)
+}
+
+// optional .enterprise_management.DeviceLoginScreenPrivacyScreenEnabledProto device_login_screen_privacy_screen_enabled = 100;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_login_screen_privacy_screen_enabled() const {
+  bool value = (_has_bits_[3] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || device_login_screen_privacy_screen_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_login_screen_privacy_screen_enabled() const {
+  return _internal_has_device_login_screen_privacy_screen_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_device_login_screen_privacy_screen_enabled() {
+  if (device_login_screen_privacy_screen_enabled_ != nullptr) device_login_screen_privacy_screen_enabled_->Clear();
+  _has_bits_[3] &= ~0x00000002u;
+}
+inline const ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto& ChromeDeviceSettingsProto::_internal_device_login_screen_privacy_screen_enabled() const {
+  const ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* p = device_login_screen_privacy_screen_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto*>(
+      &::enterprise_management::_DeviceLoginScreenPrivacyScreenEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto& ChromeDeviceSettingsProto::device_login_screen_privacy_screen_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_privacy_screen_enabled)
+  return _internal_device_login_screen_privacy_screen_enabled();
+}
+inline ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* ChromeDeviceSettingsProto::release_device_login_screen_privacy_screen_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_privacy_screen_enabled)
+  _has_bits_[3] &= ~0x00000002u;
+  ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* temp = device_login_screen_privacy_screen_enabled_;
+  device_login_screen_privacy_screen_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_device_login_screen_privacy_screen_enabled() {
+  _has_bits_[3] |= 0x00000002u;
+  if (device_login_screen_privacy_screen_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto>(GetArenaNoVirtual());
+    device_login_screen_privacy_screen_enabled_ = p;
+  }
+  return device_login_screen_privacy_screen_enabled_;
+}
+inline ::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* ChromeDeviceSettingsProto::mutable_device_login_screen_privacy_screen_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_privacy_screen_enabled)
+  return _internal_mutable_device_login_screen_privacy_screen_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_login_screen_privacy_screen_enabled(::enterprise_management::DeviceLoginScreenPrivacyScreenEnabledProto* device_login_screen_privacy_screen_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_login_screen_privacy_screen_enabled_;
+  }
+  if (device_login_screen_privacy_screen_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_login_screen_privacy_screen_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_login_screen_privacy_screen_enabled, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000002u;
+  } else {
+    _has_bits_[3] &= ~0x00000002u;
+  }
+  device_login_screen_privacy_screen_enabled_ = device_login_screen_privacy_screen_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_login_screen_privacy_screen_enabled)
+}
+
+// optional .enterprise_management.RequiredClientCertificateForDeviceProto required_client_certificate_for_device = 101;
+inline bool ChromeDeviceSettingsProto::_internal_has_required_client_certificate_for_device() const {
+  bool value = (_has_bits_[3] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || required_client_certificate_for_device_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_required_client_certificate_for_device() const {
+  return _internal_has_required_client_certificate_for_device();
+}
+inline void ChromeDeviceSettingsProto::clear_required_client_certificate_for_device() {
+  if (required_client_certificate_for_device_ != nullptr) required_client_certificate_for_device_->Clear();
+  _has_bits_[3] &= ~0x00000004u;
+}
+inline const ::enterprise_management::RequiredClientCertificateForDeviceProto& ChromeDeviceSettingsProto::_internal_required_client_certificate_for_device() const {
+  const ::enterprise_management::RequiredClientCertificateForDeviceProto* p = required_client_certificate_for_device_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::RequiredClientCertificateForDeviceProto*>(
+      &::enterprise_management::_RequiredClientCertificateForDeviceProto_default_instance_);
+}
+inline const ::enterprise_management::RequiredClientCertificateForDeviceProto& ChromeDeviceSettingsProto::required_client_certificate_for_device() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.required_client_certificate_for_device)
+  return _internal_required_client_certificate_for_device();
+}
+inline ::enterprise_management::RequiredClientCertificateForDeviceProto* ChromeDeviceSettingsProto::release_required_client_certificate_for_device() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.required_client_certificate_for_device)
+  _has_bits_[3] &= ~0x00000004u;
+  ::enterprise_management::RequiredClientCertificateForDeviceProto* temp = required_client_certificate_for_device_;
+  required_client_certificate_for_device_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::RequiredClientCertificateForDeviceProto* ChromeDeviceSettingsProto::_internal_mutable_required_client_certificate_for_device() {
+  _has_bits_[3] |= 0x00000004u;
+  if (required_client_certificate_for_device_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::RequiredClientCertificateForDeviceProto>(GetArenaNoVirtual());
+    required_client_certificate_for_device_ = p;
+  }
+  return required_client_certificate_for_device_;
+}
+inline ::enterprise_management::RequiredClientCertificateForDeviceProto* ChromeDeviceSettingsProto::mutable_required_client_certificate_for_device() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.required_client_certificate_for_device)
+  return _internal_mutable_required_client_certificate_for_device();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_required_client_certificate_for_device(::enterprise_management::RequiredClientCertificateForDeviceProto* required_client_certificate_for_device) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete required_client_certificate_for_device_;
+  }
+  if (required_client_certificate_for_device) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      required_client_certificate_for_device = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, required_client_certificate_for_device, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000004u;
+  } else {
+    _has_bits_[3] &= ~0x00000004u;
+  }
+  required_client_certificate_for_device_ = required_client_certificate_for_device;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.required_client_certificate_for_device)
+}
+
+// optional .enterprise_management.DeviceCrostiniArcAdbSideloadingAllowedProto device_crostini_arc_adb_sideloading_allowed = 102;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_crostini_arc_adb_sideloading_allowed() const {
+  bool value = (_has_bits_[3] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || device_crostini_arc_adb_sideloading_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_crostini_arc_adb_sideloading_allowed() const {
+  return _internal_has_device_crostini_arc_adb_sideloading_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_device_crostini_arc_adb_sideloading_allowed() {
+  if (device_crostini_arc_adb_sideloading_allowed_ != nullptr) device_crostini_arc_adb_sideloading_allowed_->Clear();
+  _has_bits_[3] &= ~0x00000008u;
+}
+inline const ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto& ChromeDeviceSettingsProto::_internal_device_crostini_arc_adb_sideloading_allowed() const {
+  const ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* p = device_crostini_arc_adb_sideloading_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto*>(
+      &::enterprise_management::_DeviceCrostiniArcAdbSideloadingAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto& ChromeDeviceSettingsProto::device_crostini_arc_adb_sideloading_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_crostini_arc_adb_sideloading_allowed)
+  return _internal_device_crostini_arc_adb_sideloading_allowed();
+}
+inline ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* ChromeDeviceSettingsProto::release_device_crostini_arc_adb_sideloading_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_crostini_arc_adb_sideloading_allowed)
+  _has_bits_[3] &= ~0x00000008u;
+  ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* temp = device_crostini_arc_adb_sideloading_allowed_;
+  device_crostini_arc_adb_sideloading_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_device_crostini_arc_adb_sideloading_allowed() {
+  _has_bits_[3] |= 0x00000008u;
+  if (device_crostini_arc_adb_sideloading_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto>(GetArenaNoVirtual());
+    device_crostini_arc_adb_sideloading_allowed_ = p;
+  }
+  return device_crostini_arc_adb_sideloading_allowed_;
+}
+inline ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* ChromeDeviceSettingsProto::mutable_device_crostini_arc_adb_sideloading_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_crostini_arc_adb_sideloading_allowed)
+  return _internal_mutable_device_crostini_arc_adb_sideloading_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_crostini_arc_adb_sideloading_allowed(::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto* device_crostini_arc_adb_sideloading_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_crostini_arc_adb_sideloading_allowed_;
+  }
+  if (device_crostini_arc_adb_sideloading_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_crostini_arc_adb_sideloading_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_crostini_arc_adb_sideloading_allowed, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000008u;
+  } else {
+    _has_bits_[3] &= ~0x00000008u;
+  }
+  device_crostini_arc_adb_sideloading_allowed_ = device_crostini_arc_adb_sideloading_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_crostini_arc_adb_sideloading_allowed)
+}
+
+// optional .enterprise_management.StringPolicyProto device_minimum_version_aue_message = 103;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_minimum_version_aue_message() const {
+  bool value = (_has_bits_[3] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || device_minimum_version_aue_message_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_minimum_version_aue_message() const {
+  return _internal_has_device_minimum_version_aue_message();
+}
+inline const ::enterprise_management::StringPolicyProto& ChromeDeviceSettingsProto::_internal_device_minimum_version_aue_message() const {
+  const ::enterprise_management::StringPolicyProto* p = device_minimum_version_aue_message_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::StringPolicyProto*>(
+      &::enterprise_management::_StringPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::StringPolicyProto& ChromeDeviceSettingsProto::device_minimum_version_aue_message() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_minimum_version_aue_message)
+  return _internal_device_minimum_version_aue_message();
+}
+inline ::enterprise_management::StringPolicyProto* ChromeDeviceSettingsProto::release_device_minimum_version_aue_message() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_minimum_version_aue_message)
+  _has_bits_[3] &= ~0x00000010u;
+  ::enterprise_management::StringPolicyProto* temp = device_minimum_version_aue_message_;
+  device_minimum_version_aue_message_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::StringPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_device_minimum_version_aue_message() {
+  _has_bits_[3] |= 0x00000010u;
+  if (device_minimum_version_aue_message_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::StringPolicyProto>(GetArenaNoVirtual());
+    device_minimum_version_aue_message_ = p;
+  }
+  return device_minimum_version_aue_message_;
+}
+inline ::enterprise_management::StringPolicyProto* ChromeDeviceSettingsProto::mutable_device_minimum_version_aue_message() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_minimum_version_aue_message)
+  return _internal_mutable_device_minimum_version_aue_message();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_minimum_version_aue_message(::enterprise_management::StringPolicyProto* device_minimum_version_aue_message) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(device_minimum_version_aue_message_);
+  }
+  if (device_minimum_version_aue_message) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_minimum_version_aue_message = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_minimum_version_aue_message, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000010u;
+  } else {
+    _has_bits_[3] &= ~0x00000010u;
+  }
+  device_minimum_version_aue_message_ = device_minimum_version_aue_message;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_minimum_version_aue_message)
+}
+
+// optional .enterprise_management.ManagedGuestSessionPrivacyWarningsProto managed_guest_session_privacy_warnings = 104;
+inline bool ChromeDeviceSettingsProto::_internal_has_managed_guest_session_privacy_warnings() const {
+  bool value = (_has_bits_[3] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || managed_guest_session_privacy_warnings_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_managed_guest_session_privacy_warnings() const {
+  return _internal_has_managed_guest_session_privacy_warnings();
+}
+inline void ChromeDeviceSettingsProto::clear_managed_guest_session_privacy_warnings() {
+  if (managed_guest_session_privacy_warnings_ != nullptr) managed_guest_session_privacy_warnings_->Clear();
+  _has_bits_[3] &= ~0x00000020u;
+}
+inline const ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto& ChromeDeviceSettingsProto::_internal_managed_guest_session_privacy_warnings() const {
+  const ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* p = managed_guest_session_privacy_warnings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto*>(
+      &::enterprise_management::_ManagedGuestSessionPrivacyWarningsProto_default_instance_);
+}
+inline const ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto& ChromeDeviceSettingsProto::managed_guest_session_privacy_warnings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.managed_guest_session_privacy_warnings)
+  return _internal_managed_guest_session_privacy_warnings();
+}
+inline ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* ChromeDeviceSettingsProto::release_managed_guest_session_privacy_warnings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.managed_guest_session_privacy_warnings)
+  _has_bits_[3] &= ~0x00000020u;
+  ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* temp = managed_guest_session_privacy_warnings_;
+  managed_guest_session_privacy_warnings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* ChromeDeviceSettingsProto::_internal_mutable_managed_guest_session_privacy_warnings() {
+  _has_bits_[3] |= 0x00000020u;
+  if (managed_guest_session_privacy_warnings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ManagedGuestSessionPrivacyWarningsProto>(GetArenaNoVirtual());
+    managed_guest_session_privacy_warnings_ = p;
+  }
+  return managed_guest_session_privacy_warnings_;
+}
+inline ::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* ChromeDeviceSettingsProto::mutable_managed_guest_session_privacy_warnings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.managed_guest_session_privacy_warnings)
+  return _internal_mutable_managed_guest_session_privacy_warnings();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_managed_guest_session_privacy_warnings(::enterprise_management::ManagedGuestSessionPrivacyWarningsProto* managed_guest_session_privacy_warnings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete managed_guest_session_privacy_warnings_;
+  }
+  if (managed_guest_session_privacy_warnings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      managed_guest_session_privacy_warnings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, managed_guest_session_privacy_warnings, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000020u;
+  } else {
+    _has_bits_[3] &= ~0x00000020u;
+  }
+  managed_guest_session_privacy_warnings_ = managed_guest_session_privacy_warnings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.managed_guest_session_privacy_warnings)
+}
+
+// optional .enterprise_management.DeviceExternalPrintServersProto external_print_servers = 105;
+inline bool ChromeDeviceSettingsProto::_internal_has_external_print_servers() const {
+  bool value = (_has_bits_[3] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || external_print_servers_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_external_print_servers() const {
+  return _internal_has_external_print_servers();
+}
+inline void ChromeDeviceSettingsProto::clear_external_print_servers() {
+  if (external_print_servers_ != nullptr) external_print_servers_->Clear();
+  _has_bits_[3] &= ~0x00000040u;
+}
+inline const ::enterprise_management::DeviceExternalPrintServersProto& ChromeDeviceSettingsProto::_internal_external_print_servers() const {
+  const ::enterprise_management::DeviceExternalPrintServersProto* p = external_print_servers_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceExternalPrintServersProto*>(
+      &::enterprise_management::_DeviceExternalPrintServersProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceExternalPrintServersProto& ChromeDeviceSettingsProto::external_print_servers() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.external_print_servers)
+  return _internal_external_print_servers();
+}
+inline ::enterprise_management::DeviceExternalPrintServersProto* ChromeDeviceSettingsProto::release_external_print_servers() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.external_print_servers)
+  _has_bits_[3] &= ~0x00000040u;
+  ::enterprise_management::DeviceExternalPrintServersProto* temp = external_print_servers_;
+  external_print_servers_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceExternalPrintServersProto* ChromeDeviceSettingsProto::_internal_mutable_external_print_servers() {
+  _has_bits_[3] |= 0x00000040u;
+  if (external_print_servers_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceExternalPrintServersProto>(GetArenaNoVirtual());
+    external_print_servers_ = p;
+  }
+  return external_print_servers_;
+}
+inline ::enterprise_management::DeviceExternalPrintServersProto* ChromeDeviceSettingsProto::mutable_external_print_servers() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.external_print_servers)
+  return _internal_mutable_external_print_servers();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_external_print_servers(::enterprise_management::DeviceExternalPrintServersProto* external_print_servers) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete external_print_servers_;
+  }
+  if (external_print_servers) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      external_print_servers = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, external_print_servers, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000040u;
+  } else {
+    _has_bits_[3] &= ~0x00000040u;
+  }
+  external_print_servers_ = external_print_servers;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.external_print_servers)
+}
+
+// optional .enterprise_management.DeviceExternalPrintServersAllowlistProto external_print_servers_allowlist = 106;
+inline bool ChromeDeviceSettingsProto::_internal_has_external_print_servers_allowlist() const {
+  bool value = (_has_bits_[3] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || external_print_servers_allowlist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_external_print_servers_allowlist() const {
+  return _internal_has_external_print_servers_allowlist();
+}
+inline void ChromeDeviceSettingsProto::clear_external_print_servers_allowlist() {
+  if (external_print_servers_allowlist_ != nullptr) external_print_servers_allowlist_->Clear();
+  _has_bits_[3] &= ~0x00000080u;
+}
+inline const ::enterprise_management::DeviceExternalPrintServersAllowlistProto& ChromeDeviceSettingsProto::_internal_external_print_servers_allowlist() const {
+  const ::enterprise_management::DeviceExternalPrintServersAllowlistProto* p = external_print_servers_allowlist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceExternalPrintServersAllowlistProto*>(
+      &::enterprise_management::_DeviceExternalPrintServersAllowlistProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceExternalPrintServersAllowlistProto& ChromeDeviceSettingsProto::external_print_servers_allowlist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.external_print_servers_allowlist)
+  return _internal_external_print_servers_allowlist();
+}
+inline ::enterprise_management::DeviceExternalPrintServersAllowlistProto* ChromeDeviceSettingsProto::release_external_print_servers_allowlist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.external_print_servers_allowlist)
+  _has_bits_[3] &= ~0x00000080u;
+  ::enterprise_management::DeviceExternalPrintServersAllowlistProto* temp = external_print_servers_allowlist_;
+  external_print_servers_allowlist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceExternalPrintServersAllowlistProto* ChromeDeviceSettingsProto::_internal_mutable_external_print_servers_allowlist() {
+  _has_bits_[3] |= 0x00000080u;
+  if (external_print_servers_allowlist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceExternalPrintServersAllowlistProto>(GetArenaNoVirtual());
+    external_print_servers_allowlist_ = p;
+  }
+  return external_print_servers_allowlist_;
+}
+inline ::enterprise_management::DeviceExternalPrintServersAllowlistProto* ChromeDeviceSettingsProto::mutable_external_print_servers_allowlist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.external_print_servers_allowlist)
+  return _internal_mutable_external_print_servers_allowlist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_external_print_servers_allowlist(::enterprise_management::DeviceExternalPrintServersAllowlistProto* external_print_servers_allowlist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete external_print_servers_allowlist_;
+  }
+  if (external_print_servers_allowlist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      external_print_servers_allowlist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, external_print_servers_allowlist, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000080u;
+  } else {
+    _has_bits_[3] &= ~0x00000080u;
+  }
+  external_print_servers_allowlist_ = external_print_servers_allowlist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.external_print_servers_allowlist)
+}
+
+// optional .enterprise_management.DevicePrintersAccessModeProto device_printers_access_mode = 107;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_printers_access_mode() const {
+  bool value = (_has_bits_[3] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || device_printers_access_mode_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_printers_access_mode() const {
+  return _internal_has_device_printers_access_mode();
+}
+inline void ChromeDeviceSettingsProto::clear_device_printers_access_mode() {
+  if (device_printers_access_mode_ != nullptr) device_printers_access_mode_->Clear();
+  _has_bits_[3] &= ~0x00000100u;
+}
+inline const ::enterprise_management::DevicePrintersAccessModeProto& ChromeDeviceSettingsProto::_internal_device_printers_access_mode() const {
+  const ::enterprise_management::DevicePrintersAccessModeProto* p = device_printers_access_mode_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePrintersAccessModeProto*>(
+      &::enterprise_management::_DevicePrintersAccessModeProto_default_instance_);
+}
+inline const ::enterprise_management::DevicePrintersAccessModeProto& ChromeDeviceSettingsProto::device_printers_access_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_printers_access_mode)
+  return _internal_device_printers_access_mode();
+}
+inline ::enterprise_management::DevicePrintersAccessModeProto* ChromeDeviceSettingsProto::release_device_printers_access_mode() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_printers_access_mode)
+  _has_bits_[3] &= ~0x00000100u;
+  ::enterprise_management::DevicePrintersAccessModeProto* temp = device_printers_access_mode_;
+  device_printers_access_mode_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePrintersAccessModeProto* ChromeDeviceSettingsProto::_internal_mutable_device_printers_access_mode() {
+  _has_bits_[3] |= 0x00000100u;
+  if (device_printers_access_mode_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePrintersAccessModeProto>(GetArenaNoVirtual());
+    device_printers_access_mode_ = p;
+  }
+  return device_printers_access_mode_;
+}
+inline ::enterprise_management::DevicePrintersAccessModeProto* ChromeDeviceSettingsProto::mutable_device_printers_access_mode() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_printers_access_mode)
+  return _internal_mutable_device_printers_access_mode();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_printers_access_mode(::enterprise_management::DevicePrintersAccessModeProto* device_printers_access_mode) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_printers_access_mode_;
+  }
+  if (device_printers_access_mode) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_printers_access_mode = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_printers_access_mode, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000100u;
+  } else {
+    _has_bits_[3] &= ~0x00000100u;
+  }
+  device_printers_access_mode_ = device_printers_access_mode;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_printers_access_mode)
+}
+
+// optional .enterprise_management.DevicePrintersBlocklistProto device_printers_blocklist = 108;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_printers_blocklist() const {
+  bool value = (_has_bits_[3] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || device_printers_blocklist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_printers_blocklist() const {
+  return _internal_has_device_printers_blocklist();
+}
+inline void ChromeDeviceSettingsProto::clear_device_printers_blocklist() {
+  if (device_printers_blocklist_ != nullptr) device_printers_blocklist_->Clear();
+  _has_bits_[3] &= ~0x00000200u;
+}
+inline const ::enterprise_management::DevicePrintersBlocklistProto& ChromeDeviceSettingsProto::_internal_device_printers_blocklist() const {
+  const ::enterprise_management::DevicePrintersBlocklistProto* p = device_printers_blocklist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePrintersBlocklistProto*>(
+      &::enterprise_management::_DevicePrintersBlocklistProto_default_instance_);
+}
+inline const ::enterprise_management::DevicePrintersBlocklistProto& ChromeDeviceSettingsProto::device_printers_blocklist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_printers_blocklist)
+  return _internal_device_printers_blocklist();
+}
+inline ::enterprise_management::DevicePrintersBlocklistProto* ChromeDeviceSettingsProto::release_device_printers_blocklist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_printers_blocklist)
+  _has_bits_[3] &= ~0x00000200u;
+  ::enterprise_management::DevicePrintersBlocklistProto* temp = device_printers_blocklist_;
+  device_printers_blocklist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePrintersBlocklistProto* ChromeDeviceSettingsProto::_internal_mutable_device_printers_blocklist() {
+  _has_bits_[3] |= 0x00000200u;
+  if (device_printers_blocklist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePrintersBlocklistProto>(GetArenaNoVirtual());
+    device_printers_blocklist_ = p;
+  }
+  return device_printers_blocklist_;
+}
+inline ::enterprise_management::DevicePrintersBlocklistProto* ChromeDeviceSettingsProto::mutable_device_printers_blocklist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_printers_blocklist)
+  return _internal_mutable_device_printers_blocklist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_printers_blocklist(::enterprise_management::DevicePrintersBlocklistProto* device_printers_blocklist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_printers_blocklist_;
+  }
+  if (device_printers_blocklist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_printers_blocklist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_printers_blocklist, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000200u;
+  } else {
+    _has_bits_[3] &= ~0x00000200u;
+  }
+  device_printers_blocklist_ = device_printers_blocklist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_printers_blocklist)
+}
+
+// optional .enterprise_management.DevicePrintersAllowlistProto device_printers_allowlist = 109;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_printers_allowlist() const {
+  bool value = (_has_bits_[3] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || device_printers_allowlist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_printers_allowlist() const {
+  return _internal_has_device_printers_allowlist();
+}
+inline void ChromeDeviceSettingsProto::clear_device_printers_allowlist() {
+  if (device_printers_allowlist_ != nullptr) device_printers_allowlist_->Clear();
+  _has_bits_[3] &= ~0x00000400u;
+}
+inline const ::enterprise_management::DevicePrintersAllowlistProto& ChromeDeviceSettingsProto::_internal_device_printers_allowlist() const {
+  const ::enterprise_management::DevicePrintersAllowlistProto* p = device_printers_allowlist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePrintersAllowlistProto*>(
+      &::enterprise_management::_DevicePrintersAllowlistProto_default_instance_);
+}
+inline const ::enterprise_management::DevicePrintersAllowlistProto& ChromeDeviceSettingsProto::device_printers_allowlist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_printers_allowlist)
+  return _internal_device_printers_allowlist();
+}
+inline ::enterprise_management::DevicePrintersAllowlistProto* ChromeDeviceSettingsProto::release_device_printers_allowlist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_printers_allowlist)
+  _has_bits_[3] &= ~0x00000400u;
+  ::enterprise_management::DevicePrintersAllowlistProto* temp = device_printers_allowlist_;
+  device_printers_allowlist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePrintersAllowlistProto* ChromeDeviceSettingsProto::_internal_mutable_device_printers_allowlist() {
+  _has_bits_[3] |= 0x00000400u;
+  if (device_printers_allowlist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePrintersAllowlistProto>(GetArenaNoVirtual());
+    device_printers_allowlist_ = p;
+  }
+  return device_printers_allowlist_;
+}
+inline ::enterprise_management::DevicePrintersAllowlistProto* ChromeDeviceSettingsProto::mutable_device_printers_allowlist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_printers_allowlist)
+  return _internal_mutable_device_printers_allowlist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_printers_allowlist(::enterprise_management::DevicePrintersAllowlistProto* device_printers_allowlist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_printers_allowlist_;
+  }
+  if (device_printers_allowlist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_printers_allowlist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_printers_allowlist, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000400u;
+  } else {
+    _has_bits_[3] &= ~0x00000400u;
+  }
+  device_printers_allowlist_ = device_printers_allowlist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_printers_allowlist)
+}
+
+// optional .enterprise_management.DevicePrintersProto device_printers = 110;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_printers() const {
+  bool value = (_has_bits_[3] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || device_printers_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_printers() const {
+  return _internal_has_device_printers();
+}
+inline void ChromeDeviceSettingsProto::clear_device_printers() {
+  if (device_printers_ != nullptr) device_printers_->Clear();
+  _has_bits_[3] &= ~0x00000800u;
+}
+inline const ::enterprise_management::DevicePrintersProto& ChromeDeviceSettingsProto::_internal_device_printers() const {
+  const ::enterprise_management::DevicePrintersProto* p = device_printers_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePrintersProto*>(
+      &::enterprise_management::_DevicePrintersProto_default_instance_);
+}
+inline const ::enterprise_management::DevicePrintersProto& ChromeDeviceSettingsProto::device_printers() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_printers)
+  return _internal_device_printers();
+}
+inline ::enterprise_management::DevicePrintersProto* ChromeDeviceSettingsProto::release_device_printers() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_printers)
+  _has_bits_[3] &= ~0x00000800u;
+  ::enterprise_management::DevicePrintersProto* temp = device_printers_;
+  device_printers_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePrintersProto* ChromeDeviceSettingsProto::_internal_mutable_device_printers() {
+  _has_bits_[3] |= 0x00000800u;
+  if (device_printers_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePrintersProto>(GetArenaNoVirtual());
+    device_printers_ = p;
+  }
+  return device_printers_;
+}
+inline ::enterprise_management::DevicePrintersProto* ChromeDeviceSettingsProto::mutable_device_printers() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_printers)
+  return _internal_mutable_device_printers();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_printers(::enterprise_management::DevicePrintersProto* device_printers) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_printers_;
+  }
+  if (device_printers) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_printers = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_printers, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00000800u;
+  } else {
+    _has_bits_[3] &= ~0x00000800u;
+  }
+  device_printers_ = device_printers;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_printers)
+}
+
+// optional .enterprise_management.DeviceShowLowDiskSpaceNotificationProto device_show_low_disk_space_notification = 111;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_show_low_disk_space_notification() const {
+  bool value = (_has_bits_[3] & 0x00001000u) != 0;
+  PROTOBUF_ASSUME(!value || device_show_low_disk_space_notification_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_show_low_disk_space_notification() const {
+  return _internal_has_device_show_low_disk_space_notification();
+}
+inline void ChromeDeviceSettingsProto::clear_device_show_low_disk_space_notification() {
+  if (device_show_low_disk_space_notification_ != nullptr) device_show_low_disk_space_notification_->Clear();
+  _has_bits_[3] &= ~0x00001000u;
+}
+inline const ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto& ChromeDeviceSettingsProto::_internal_device_show_low_disk_space_notification() const {
+  const ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* p = device_show_low_disk_space_notification_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto*>(
+      &::enterprise_management::_DeviceShowLowDiskSpaceNotificationProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto& ChromeDeviceSettingsProto::device_show_low_disk_space_notification() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_show_low_disk_space_notification)
+  return _internal_device_show_low_disk_space_notification();
+}
+inline ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* ChromeDeviceSettingsProto::release_device_show_low_disk_space_notification() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_show_low_disk_space_notification)
+  _has_bits_[3] &= ~0x00001000u;
+  ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* temp = device_show_low_disk_space_notification_;
+  device_show_low_disk_space_notification_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* ChromeDeviceSettingsProto::_internal_mutable_device_show_low_disk_space_notification() {
+  _has_bits_[3] |= 0x00001000u;
+  if (device_show_low_disk_space_notification_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceShowLowDiskSpaceNotificationProto>(GetArenaNoVirtual());
+    device_show_low_disk_space_notification_ = p;
+  }
+  return device_show_low_disk_space_notification_;
+}
+inline ::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* ChromeDeviceSettingsProto::mutable_device_show_low_disk_space_notification() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_show_low_disk_space_notification)
+  return _internal_mutable_device_show_low_disk_space_notification();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_show_low_disk_space_notification(::enterprise_management::DeviceShowLowDiskSpaceNotificationProto* device_show_low_disk_space_notification) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_show_low_disk_space_notification_;
+  }
+  if (device_show_low_disk_space_notification) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_show_low_disk_space_notification = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_show_low_disk_space_notification, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00001000u;
+  } else {
+    _has_bits_[3] &= ~0x00001000u;
+  }
+  device_show_low_disk_space_notification_ = device_show_low_disk_space_notification;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_show_low_disk_space_notification)
+}
+
+// optional .enterprise_management.UserAllowlistProto user_allowlist = 112;
+inline bool ChromeDeviceSettingsProto::_internal_has_user_allowlist() const {
+  bool value = (_has_bits_[3] & 0x00002000u) != 0;
+  PROTOBUF_ASSUME(!value || user_allowlist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_user_allowlist() const {
+  return _internal_has_user_allowlist();
+}
+inline void ChromeDeviceSettingsProto::clear_user_allowlist() {
+  if (user_allowlist_ != nullptr) user_allowlist_->Clear();
+  _has_bits_[3] &= ~0x00002000u;
+}
+inline const ::enterprise_management::UserAllowlistProto& ChromeDeviceSettingsProto::_internal_user_allowlist() const {
+  const ::enterprise_management::UserAllowlistProto* p = user_allowlist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::UserAllowlistProto*>(
+      &::enterprise_management::_UserAllowlistProto_default_instance_);
+}
+inline const ::enterprise_management::UserAllowlistProto& ChromeDeviceSettingsProto::user_allowlist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.user_allowlist)
+  return _internal_user_allowlist();
+}
+inline ::enterprise_management::UserAllowlistProto* ChromeDeviceSettingsProto::release_user_allowlist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.user_allowlist)
+  _has_bits_[3] &= ~0x00002000u;
+  ::enterprise_management::UserAllowlistProto* temp = user_allowlist_;
+  user_allowlist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::UserAllowlistProto* ChromeDeviceSettingsProto::_internal_mutable_user_allowlist() {
+  _has_bits_[3] |= 0x00002000u;
+  if (user_allowlist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::UserAllowlistProto>(GetArenaNoVirtual());
+    user_allowlist_ = p;
+  }
+  return user_allowlist_;
+}
+inline ::enterprise_management::UserAllowlistProto* ChromeDeviceSettingsProto::mutable_user_allowlist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.user_allowlist)
+  return _internal_mutable_user_allowlist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_user_allowlist(::enterprise_management::UserAllowlistProto* user_allowlist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete user_allowlist_;
+  }
+  if (user_allowlist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      user_allowlist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, user_allowlist, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00002000u;
+  } else {
+    _has_bits_[3] &= ~0x00002000u;
+  }
+  user_allowlist_ = user_allowlist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.user_allowlist)
+}
+
+// optional .enterprise_management.UsbDetachableAllowlistProto usb_detachable_allowlist = 113;
+inline bool ChromeDeviceSettingsProto::_internal_has_usb_detachable_allowlist() const {
+  bool value = (_has_bits_[3] & 0x00004000u) != 0;
+  PROTOBUF_ASSUME(!value || usb_detachable_allowlist_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_usb_detachable_allowlist() const {
+  return _internal_has_usb_detachable_allowlist();
+}
+inline void ChromeDeviceSettingsProto::clear_usb_detachable_allowlist() {
+  if (usb_detachable_allowlist_ != nullptr) usb_detachable_allowlist_->Clear();
+  _has_bits_[3] &= ~0x00004000u;
+}
+inline const ::enterprise_management::UsbDetachableAllowlistProto& ChromeDeviceSettingsProto::_internal_usb_detachable_allowlist() const {
+  const ::enterprise_management::UsbDetachableAllowlistProto* p = usb_detachable_allowlist_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::UsbDetachableAllowlistProto*>(
+      &::enterprise_management::_UsbDetachableAllowlistProto_default_instance_);
+}
+inline const ::enterprise_management::UsbDetachableAllowlistProto& ChromeDeviceSettingsProto::usb_detachable_allowlist() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.usb_detachable_allowlist)
+  return _internal_usb_detachable_allowlist();
+}
+inline ::enterprise_management::UsbDetachableAllowlistProto* ChromeDeviceSettingsProto::release_usb_detachable_allowlist() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.usb_detachable_allowlist)
+  _has_bits_[3] &= ~0x00004000u;
+  ::enterprise_management::UsbDetachableAllowlistProto* temp = usb_detachable_allowlist_;
+  usb_detachable_allowlist_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::UsbDetachableAllowlistProto* ChromeDeviceSettingsProto::_internal_mutable_usb_detachable_allowlist() {
+  _has_bits_[3] |= 0x00004000u;
+  if (usb_detachable_allowlist_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::UsbDetachableAllowlistProto>(GetArenaNoVirtual());
+    usb_detachable_allowlist_ = p;
+  }
+  return usb_detachable_allowlist_;
+}
+inline ::enterprise_management::UsbDetachableAllowlistProto* ChromeDeviceSettingsProto::mutable_usb_detachable_allowlist() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.usb_detachable_allowlist)
+  return _internal_mutable_usb_detachable_allowlist();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_usb_detachable_allowlist(::enterprise_management::UsbDetachableAllowlistProto* usb_detachable_allowlist) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete usb_detachable_allowlist_;
+  }
+  if (usb_detachable_allowlist) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      usb_detachable_allowlist = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, usb_detachable_allowlist, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00004000u;
+  } else {
+    _has_bits_[3] &= ~0x00004000u;
+  }
+  usb_detachable_allowlist_ = usb_detachable_allowlist;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.usb_detachable_allowlist)
+}
+
+// optional .enterprise_management.DeviceFamilyLinkAccountsAllowedProto family_link_accounts_allowed = 114;
+inline bool ChromeDeviceSettingsProto::_internal_has_family_link_accounts_allowed() const {
+  bool value = (_has_bits_[3] & 0x00008000u) != 0;
+  PROTOBUF_ASSUME(!value || family_link_accounts_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_family_link_accounts_allowed() const {
+  return _internal_has_family_link_accounts_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_family_link_accounts_allowed() {
+  if (family_link_accounts_allowed_ != nullptr) family_link_accounts_allowed_->Clear();
+  _has_bits_[3] &= ~0x00008000u;
+}
+inline const ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto& ChromeDeviceSettingsProto::_internal_family_link_accounts_allowed() const {
+  const ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* p = family_link_accounts_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto*>(
+      &::enterprise_management::_DeviceFamilyLinkAccountsAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto& ChromeDeviceSettingsProto::family_link_accounts_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.family_link_accounts_allowed)
+  return _internal_family_link_accounts_allowed();
+}
+inline ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* ChromeDeviceSettingsProto::release_family_link_accounts_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.family_link_accounts_allowed)
+  _has_bits_[3] &= ~0x00008000u;
+  ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* temp = family_link_accounts_allowed_;
+  family_link_accounts_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_family_link_accounts_allowed() {
+  _has_bits_[3] |= 0x00008000u;
+  if (family_link_accounts_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceFamilyLinkAccountsAllowedProto>(GetArenaNoVirtual());
+    family_link_accounts_allowed_ = p;
+  }
+  return family_link_accounts_allowed_;
+}
+inline ::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* ChromeDeviceSettingsProto::mutable_family_link_accounts_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.family_link_accounts_allowed)
+  return _internal_mutable_family_link_accounts_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_family_link_accounts_allowed(::enterprise_management::DeviceFamilyLinkAccountsAllowedProto* family_link_accounts_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete family_link_accounts_allowed_;
+  }
+  if (family_link_accounts_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      family_link_accounts_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, family_link_accounts_allowed, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00008000u;
+  } else {
+    _has_bits_[3] &= ~0x00008000u;
+  }
+  family_link_accounts_allowed_ = family_link_accounts_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.family_link_accounts_allowed)
+}
+
+// optional .enterprise_management.DeviceArcDataSnapshotHoursProto arc_data_snapshot_hours = 115;
+inline bool ChromeDeviceSettingsProto::_internal_has_arc_data_snapshot_hours() const {
+  bool value = (_has_bits_[3] & 0x00010000u) != 0;
+  PROTOBUF_ASSUME(!value || arc_data_snapshot_hours_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_arc_data_snapshot_hours() const {
+  return _internal_has_arc_data_snapshot_hours();
+}
+inline void ChromeDeviceSettingsProto::clear_arc_data_snapshot_hours() {
+  if (arc_data_snapshot_hours_ != nullptr) arc_data_snapshot_hours_->Clear();
+  _has_bits_[3] &= ~0x00010000u;
+}
+inline const ::enterprise_management::DeviceArcDataSnapshotHoursProto& ChromeDeviceSettingsProto::_internal_arc_data_snapshot_hours() const {
+  const ::enterprise_management::DeviceArcDataSnapshotHoursProto* p = arc_data_snapshot_hours_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceArcDataSnapshotHoursProto*>(
+      &::enterprise_management::_DeviceArcDataSnapshotHoursProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceArcDataSnapshotHoursProto& ChromeDeviceSettingsProto::arc_data_snapshot_hours() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.arc_data_snapshot_hours)
+  return _internal_arc_data_snapshot_hours();
+}
+inline ::enterprise_management::DeviceArcDataSnapshotHoursProto* ChromeDeviceSettingsProto::release_arc_data_snapshot_hours() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.arc_data_snapshot_hours)
+  _has_bits_[3] &= ~0x00010000u;
+  ::enterprise_management::DeviceArcDataSnapshotHoursProto* temp = arc_data_snapshot_hours_;
+  arc_data_snapshot_hours_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceArcDataSnapshotHoursProto* ChromeDeviceSettingsProto::_internal_mutable_arc_data_snapshot_hours() {
+  _has_bits_[3] |= 0x00010000u;
+  if (arc_data_snapshot_hours_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceArcDataSnapshotHoursProto>(GetArenaNoVirtual());
+    arc_data_snapshot_hours_ = p;
+  }
+  return arc_data_snapshot_hours_;
+}
+inline ::enterprise_management::DeviceArcDataSnapshotHoursProto* ChromeDeviceSettingsProto::mutable_arc_data_snapshot_hours() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.arc_data_snapshot_hours)
+  return _internal_mutable_arc_data_snapshot_hours();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_arc_data_snapshot_hours(::enterprise_management::DeviceArcDataSnapshotHoursProto* arc_data_snapshot_hours) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete arc_data_snapshot_hours_;
+  }
+  if (arc_data_snapshot_hours) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      arc_data_snapshot_hours = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, arc_data_snapshot_hours, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00010000u;
+  } else {
+    _has_bits_[3] &= ~0x00010000u;
+  }
+  arc_data_snapshot_hours_ = arc_data_snapshot_hours;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.arc_data_snapshot_hours)
+}
+
+// optional .enterprise_management.BooleanPolicyProto device_allow_mgs_to_store_display_properties = 116;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_allow_mgs_to_store_display_properties() const {
+  bool value = (_has_bits_[3] & 0x00020000u) != 0;
+  PROTOBUF_ASSUME(!value || device_allow_mgs_to_store_display_properties_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_allow_mgs_to_store_display_properties() const {
+  return _internal_has_device_allow_mgs_to_store_display_properties();
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::_internal_device_allow_mgs_to_store_display_properties() const {
+  const ::enterprise_management::BooleanPolicyProto* p = device_allow_mgs_to_store_display_properties_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BooleanPolicyProto*>(
+      &::enterprise_management::_BooleanPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::device_allow_mgs_to_store_display_properties() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_allow_mgs_to_store_display_properties)
+  return _internal_device_allow_mgs_to_store_display_properties();
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::release_device_allow_mgs_to_store_display_properties() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_allow_mgs_to_store_display_properties)
+  _has_bits_[3] &= ~0x00020000u;
+  ::enterprise_management::BooleanPolicyProto* temp = device_allow_mgs_to_store_display_properties_;
+  device_allow_mgs_to_store_display_properties_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_device_allow_mgs_to_store_display_properties() {
+  _has_bits_[3] |= 0x00020000u;
+  if (device_allow_mgs_to_store_display_properties_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(GetArenaNoVirtual());
+    device_allow_mgs_to_store_display_properties_ = p;
+  }
+  return device_allow_mgs_to_store_display_properties_;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::mutable_device_allow_mgs_to_store_display_properties() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_allow_mgs_to_store_display_properties)
+  return _internal_mutable_device_allow_mgs_to_store_display_properties();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_allow_mgs_to_store_display_properties(::enterprise_management::BooleanPolicyProto* device_allow_mgs_to_store_display_properties) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(device_allow_mgs_to_store_display_properties_);
+  }
+  if (device_allow_mgs_to_store_display_properties) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_allow_mgs_to_store_display_properties = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_allow_mgs_to_store_display_properties, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00020000u;
+  } else {
+    _has_bits_[3] &= ~0x00020000u;
+  }
+  device_allow_mgs_to_store_display_properties_ = device_allow_mgs_to_store_display_properties;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_allow_mgs_to_store_display_properties)
+}
+
+// optional .enterprise_management.DeviceSystemWideTracingEnabledProto device_system_wide_tracing_enabled = 117;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_system_wide_tracing_enabled() const {
+  bool value = (_has_bits_[3] & 0x00040000u) != 0;
+  PROTOBUF_ASSUME(!value || device_system_wide_tracing_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_system_wide_tracing_enabled() const {
+  return _internal_has_device_system_wide_tracing_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_device_system_wide_tracing_enabled() {
+  if (device_system_wide_tracing_enabled_ != nullptr) device_system_wide_tracing_enabled_->Clear();
+  _has_bits_[3] &= ~0x00040000u;
+}
+inline const ::enterprise_management::DeviceSystemWideTracingEnabledProto& ChromeDeviceSettingsProto::_internal_device_system_wide_tracing_enabled() const {
+  const ::enterprise_management::DeviceSystemWideTracingEnabledProto* p = device_system_wide_tracing_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceSystemWideTracingEnabledProto*>(
+      &::enterprise_management::_DeviceSystemWideTracingEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceSystemWideTracingEnabledProto& ChromeDeviceSettingsProto::device_system_wide_tracing_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_system_wide_tracing_enabled)
+  return _internal_device_system_wide_tracing_enabled();
+}
+inline ::enterprise_management::DeviceSystemWideTracingEnabledProto* ChromeDeviceSettingsProto::release_device_system_wide_tracing_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_system_wide_tracing_enabled)
+  _has_bits_[3] &= ~0x00040000u;
+  ::enterprise_management::DeviceSystemWideTracingEnabledProto* temp = device_system_wide_tracing_enabled_;
+  device_system_wide_tracing_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceSystemWideTracingEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_device_system_wide_tracing_enabled() {
+  _has_bits_[3] |= 0x00040000u;
+  if (device_system_wide_tracing_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceSystemWideTracingEnabledProto>(GetArenaNoVirtual());
+    device_system_wide_tracing_enabled_ = p;
+  }
+  return device_system_wide_tracing_enabled_;
+}
+inline ::enterprise_management::DeviceSystemWideTracingEnabledProto* ChromeDeviceSettingsProto::mutable_device_system_wide_tracing_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_system_wide_tracing_enabled)
+  return _internal_mutable_device_system_wide_tracing_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_system_wide_tracing_enabled(::enterprise_management::DeviceSystemWideTracingEnabledProto* device_system_wide_tracing_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_system_wide_tracing_enabled_;
+  }
+  if (device_system_wide_tracing_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_system_wide_tracing_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_system_wide_tracing_enabled, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00040000u;
+  } else {
+    _has_bits_[3] &= ~0x00040000u;
+  }
+  device_system_wide_tracing_enabled_ = device_system_wide_tracing_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_system_wide_tracing_enabled)
+}
+
+// optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProto device_pci_peripheral_data_access_enabled = 118;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_pci_peripheral_data_access_enabled() const {
+  bool value = (_has_bits_[3] & 0x00080000u) != 0;
+  PROTOBUF_ASSUME(!value || device_pci_peripheral_data_access_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_pci_peripheral_data_access_enabled() const {
+  return _internal_has_device_pci_peripheral_data_access_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_device_pci_peripheral_data_access_enabled() {
+  if (device_pci_peripheral_data_access_enabled_ != nullptr) device_pci_peripheral_data_access_enabled_->Clear();
+  _has_bits_[3] &= ~0x00080000u;
+}
+inline const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto& ChromeDeviceSettingsProto::_internal_device_pci_peripheral_data_access_enabled() const {
+  const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* p = device_pci_peripheral_data_access_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto*>(
+      &::enterprise_management::_DevicePciPeripheralDataAccessEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto& ChromeDeviceSettingsProto::device_pci_peripheral_data_access_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_pci_peripheral_data_access_enabled)
+  return _internal_device_pci_peripheral_data_access_enabled();
+}
+inline ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* ChromeDeviceSettingsProto::release_device_pci_peripheral_data_access_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_pci_peripheral_data_access_enabled)
+  _has_bits_[3] &= ~0x00080000u;
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* temp = device_pci_peripheral_data_access_enabled_;
+  device_pci_peripheral_data_access_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_device_pci_peripheral_data_access_enabled() {
+  _has_bits_[3] |= 0x00080000u;
+  if (device_pci_peripheral_data_access_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePciPeripheralDataAccessEnabledProto>(GetArenaNoVirtual());
+    device_pci_peripheral_data_access_enabled_ = p;
+  }
+  return device_pci_peripheral_data_access_enabled_;
+}
+inline ::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* ChromeDeviceSettingsProto::mutable_device_pci_peripheral_data_access_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_pci_peripheral_data_access_enabled)
+  return _internal_mutable_device_pci_peripheral_data_access_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_pci_peripheral_data_access_enabled(::enterprise_management::DevicePciPeripheralDataAccessEnabledProto* device_pci_peripheral_data_access_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_pci_peripheral_data_access_enabled_;
+  }
+  if (device_pci_peripheral_data_access_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_pci_peripheral_data_access_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_pci_peripheral_data_access_enabled, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00080000u;
+  } else {
+    _has_bits_[3] &= ~0x00080000u;
+  }
+  device_pci_peripheral_data_access_enabled_ = device_pci_peripheral_data_access_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_pci_peripheral_data_access_enabled)
+}
+
+// optional .enterprise_management.DeviceBorealisAllowedProto device_borealis_allowed = 119;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_borealis_allowed() const {
+  bool value = (_has_bits_[3] & 0x00100000u) != 0;
+  PROTOBUF_ASSUME(!value || device_borealis_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_borealis_allowed() const {
+  return _internal_has_device_borealis_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_device_borealis_allowed() {
+  if (device_borealis_allowed_ != nullptr) device_borealis_allowed_->Clear();
+  _has_bits_[3] &= ~0x00100000u;
+}
+inline const ::enterprise_management::DeviceBorealisAllowedProto& ChromeDeviceSettingsProto::_internal_device_borealis_allowed() const {
+  const ::enterprise_management::DeviceBorealisAllowedProto* p = device_borealis_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceBorealisAllowedProto*>(
+      &::enterprise_management::_DeviceBorealisAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceBorealisAllowedProto& ChromeDeviceSettingsProto::device_borealis_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_borealis_allowed)
+  return _internal_device_borealis_allowed();
+}
+inline ::enterprise_management::DeviceBorealisAllowedProto* ChromeDeviceSettingsProto::release_device_borealis_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_borealis_allowed)
+  _has_bits_[3] &= ~0x00100000u;
+  ::enterprise_management::DeviceBorealisAllowedProto* temp = device_borealis_allowed_;
+  device_borealis_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceBorealisAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_device_borealis_allowed() {
+  _has_bits_[3] |= 0x00100000u;
+  if (device_borealis_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceBorealisAllowedProto>(GetArenaNoVirtual());
+    device_borealis_allowed_ = p;
+  }
+  return device_borealis_allowed_;
+}
+inline ::enterprise_management::DeviceBorealisAllowedProto* ChromeDeviceSettingsProto::mutable_device_borealis_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_borealis_allowed)
+  return _internal_mutable_device_borealis_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_borealis_allowed(::enterprise_management::DeviceBorealisAllowedProto* device_borealis_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_borealis_allowed_;
+  }
+  if (device_borealis_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_borealis_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_borealis_allowed, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00100000u;
+  } else {
+    _has_bits_[3] &= ~0x00100000u;
+  }
+  device_borealis_allowed_ = device_borealis_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_borealis_allowed)
+}
+
+// optional .enterprise_management.DeviceAllowedBluetoothServicesProto device_allowed_bluetooth_services = 120;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_allowed_bluetooth_services() const {
+  bool value = (_has_bits_[3] & 0x00200000u) != 0;
+  PROTOBUF_ASSUME(!value || device_allowed_bluetooth_services_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_allowed_bluetooth_services() const {
+  return _internal_has_device_allowed_bluetooth_services();
+}
+inline void ChromeDeviceSettingsProto::clear_device_allowed_bluetooth_services() {
+  if (device_allowed_bluetooth_services_ != nullptr) device_allowed_bluetooth_services_->Clear();
+  _has_bits_[3] &= ~0x00200000u;
+}
+inline const ::enterprise_management::DeviceAllowedBluetoothServicesProto& ChromeDeviceSettingsProto::_internal_device_allowed_bluetooth_services() const {
+  const ::enterprise_management::DeviceAllowedBluetoothServicesProto* p = device_allowed_bluetooth_services_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAllowedBluetoothServicesProto*>(
+      &::enterprise_management::_DeviceAllowedBluetoothServicesProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceAllowedBluetoothServicesProto& ChromeDeviceSettingsProto::device_allowed_bluetooth_services() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_allowed_bluetooth_services)
+  return _internal_device_allowed_bluetooth_services();
+}
+inline ::enterprise_management::DeviceAllowedBluetoothServicesProto* ChromeDeviceSettingsProto::release_device_allowed_bluetooth_services() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_allowed_bluetooth_services)
+  _has_bits_[3] &= ~0x00200000u;
+  ::enterprise_management::DeviceAllowedBluetoothServicesProto* temp = device_allowed_bluetooth_services_;
+  device_allowed_bluetooth_services_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAllowedBluetoothServicesProto* ChromeDeviceSettingsProto::_internal_mutable_device_allowed_bluetooth_services() {
+  _has_bits_[3] |= 0x00200000u;
+  if (device_allowed_bluetooth_services_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAllowedBluetoothServicesProto>(GetArenaNoVirtual());
+    device_allowed_bluetooth_services_ = p;
+  }
+  return device_allowed_bluetooth_services_;
+}
+inline ::enterprise_management::DeviceAllowedBluetoothServicesProto* ChromeDeviceSettingsProto::mutable_device_allowed_bluetooth_services() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_allowed_bluetooth_services)
+  return _internal_mutable_device_allowed_bluetooth_services();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_allowed_bluetooth_services(::enterprise_management::DeviceAllowedBluetoothServicesProto* device_allowed_bluetooth_services) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_allowed_bluetooth_services_;
+  }
+  if (device_allowed_bluetooth_services) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_allowed_bluetooth_services = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_allowed_bluetooth_services, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00200000u;
+  } else {
+    _has_bits_[3] &= ~0x00200000u;
+  }
+  device_allowed_bluetooth_services_ = device_allowed_bluetooth_services;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_allowed_bluetooth_services)
+}
+
+// optional .enterprise_management.DeviceDebugPacketCaptureAllowedProto device_debug_packet_capture_allowed = 121;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_debug_packet_capture_allowed() const {
+  bool value = (_has_bits_[3] & 0x00400000u) != 0;
+  PROTOBUF_ASSUME(!value || device_debug_packet_capture_allowed_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_debug_packet_capture_allowed() const {
+  return _internal_has_device_debug_packet_capture_allowed();
+}
+inline void ChromeDeviceSettingsProto::clear_device_debug_packet_capture_allowed() {
+  if (device_debug_packet_capture_allowed_ != nullptr) device_debug_packet_capture_allowed_->Clear();
+  _has_bits_[3] &= ~0x00400000u;
+}
+inline const ::enterprise_management::DeviceDebugPacketCaptureAllowedProto& ChromeDeviceSettingsProto::_internal_device_debug_packet_capture_allowed() const {
+  const ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* p = device_debug_packet_capture_allowed_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceDebugPacketCaptureAllowedProto*>(
+      &::enterprise_management::_DeviceDebugPacketCaptureAllowedProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceDebugPacketCaptureAllowedProto& ChromeDeviceSettingsProto::device_debug_packet_capture_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_debug_packet_capture_allowed)
+  return _internal_device_debug_packet_capture_allowed();
+}
+inline ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* ChromeDeviceSettingsProto::release_device_debug_packet_capture_allowed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_debug_packet_capture_allowed)
+  _has_bits_[3] &= ~0x00400000u;
+  ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* temp = device_debug_packet_capture_allowed_;
+  device_debug_packet_capture_allowed_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* ChromeDeviceSettingsProto::_internal_mutable_device_debug_packet_capture_allowed() {
+  _has_bits_[3] |= 0x00400000u;
+  if (device_debug_packet_capture_allowed_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceDebugPacketCaptureAllowedProto>(GetArenaNoVirtual());
+    device_debug_packet_capture_allowed_ = p;
+  }
+  return device_debug_packet_capture_allowed_;
+}
+inline ::enterprise_management::DeviceDebugPacketCaptureAllowedProto* ChromeDeviceSettingsProto::mutable_device_debug_packet_capture_allowed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_debug_packet_capture_allowed)
+  return _internal_mutable_device_debug_packet_capture_allowed();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_debug_packet_capture_allowed(::enterprise_management::DeviceDebugPacketCaptureAllowedProto* device_debug_packet_capture_allowed) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_debug_packet_capture_allowed_;
+  }
+  if (device_debug_packet_capture_allowed) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_debug_packet_capture_allowed = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_debug_packet_capture_allowed, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00400000u;
+  } else {
+    _has_bits_[3] &= ~0x00400000u;
+  }
+  device_debug_packet_capture_allowed_ = device_debug_packet_capture_allowed;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_debug_packet_capture_allowed)
+}
+
+// optional .enterprise_management.DeviceScheduledRebootProto device_scheduled_reboot = 122;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_scheduled_reboot() const {
+  bool value = (_has_bits_[3] & 0x00800000u) != 0;
+  PROTOBUF_ASSUME(!value || device_scheduled_reboot_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_scheduled_reboot() const {
+  return _internal_has_device_scheduled_reboot();
+}
+inline void ChromeDeviceSettingsProto::clear_device_scheduled_reboot() {
+  if (device_scheduled_reboot_ != nullptr) device_scheduled_reboot_->Clear();
+  _has_bits_[3] &= ~0x00800000u;
+}
+inline const ::enterprise_management::DeviceScheduledRebootProto& ChromeDeviceSettingsProto::_internal_device_scheduled_reboot() const {
+  const ::enterprise_management::DeviceScheduledRebootProto* p = device_scheduled_reboot_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceScheduledRebootProto*>(
+      &::enterprise_management::_DeviceScheduledRebootProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceScheduledRebootProto& ChromeDeviceSettingsProto::device_scheduled_reboot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_scheduled_reboot)
+  return _internal_device_scheduled_reboot();
+}
+inline ::enterprise_management::DeviceScheduledRebootProto* ChromeDeviceSettingsProto::release_device_scheduled_reboot() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_scheduled_reboot)
+  _has_bits_[3] &= ~0x00800000u;
+  ::enterprise_management::DeviceScheduledRebootProto* temp = device_scheduled_reboot_;
+  device_scheduled_reboot_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceScheduledRebootProto* ChromeDeviceSettingsProto::_internal_mutable_device_scheduled_reboot() {
+  _has_bits_[3] |= 0x00800000u;
+  if (device_scheduled_reboot_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceScheduledRebootProto>(GetArenaNoVirtual());
+    device_scheduled_reboot_ = p;
+  }
+  return device_scheduled_reboot_;
+}
+inline ::enterprise_management::DeviceScheduledRebootProto* ChromeDeviceSettingsProto::mutable_device_scheduled_reboot() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_scheduled_reboot)
+  return _internal_mutable_device_scheduled_reboot();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_scheduled_reboot(::enterprise_management::DeviceScheduledRebootProto* device_scheduled_reboot) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_scheduled_reboot_;
+  }
+  if (device_scheduled_reboot) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_scheduled_reboot = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_scheduled_reboot, submessage_arena);
+    }
+    _has_bits_[3] |= 0x00800000u;
+  } else {
+    _has_bits_[3] &= ~0x00800000u;
+  }
+  device_scheduled_reboot_ = device_scheduled_reboot;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_scheduled_reboot)
+}
+
+// optional .enterprise_management.DevicePciPeripheralDataAccessEnabledProtoV2 device_pci_peripheral_data_access_enabled_v2 = 123;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_pci_peripheral_data_access_enabled_v2() const {
+  bool value = (_has_bits_[3] & 0x01000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_pci_peripheral_data_access_enabled_v2_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_pci_peripheral_data_access_enabled_v2() const {
+  return _internal_has_device_pci_peripheral_data_access_enabled_v2();
+}
+inline void ChromeDeviceSettingsProto::clear_device_pci_peripheral_data_access_enabled_v2() {
+  if (device_pci_peripheral_data_access_enabled_v2_ != nullptr) device_pci_peripheral_data_access_enabled_v2_->Clear();
+  _has_bits_[3] &= ~0x01000000u;
+}
+inline const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2& ChromeDeviceSettingsProto::_internal_device_pci_peripheral_data_access_enabled_v2() const {
+  const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* p = device_pci_peripheral_data_access_enabled_v2_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2*>(
+      &::enterprise_management::_DevicePciPeripheralDataAccessEnabledProtoV2_default_instance_);
+}
+inline const ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2& ChromeDeviceSettingsProto::device_pci_peripheral_data_access_enabled_v2() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_pci_peripheral_data_access_enabled_v2)
+  return _internal_device_pci_peripheral_data_access_enabled_v2();
+}
+inline ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* ChromeDeviceSettingsProto::release_device_pci_peripheral_data_access_enabled_v2() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_pci_peripheral_data_access_enabled_v2)
+  _has_bits_[3] &= ~0x01000000u;
+  ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* temp = device_pci_peripheral_data_access_enabled_v2_;
+  device_pci_peripheral_data_access_enabled_v2_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* ChromeDeviceSettingsProto::_internal_mutable_device_pci_peripheral_data_access_enabled_v2() {
+  _has_bits_[3] |= 0x01000000u;
+  if (device_pci_peripheral_data_access_enabled_v2_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2>(GetArenaNoVirtual());
+    device_pci_peripheral_data_access_enabled_v2_ = p;
+  }
+  return device_pci_peripheral_data_access_enabled_v2_;
+}
+inline ::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* ChromeDeviceSettingsProto::mutable_device_pci_peripheral_data_access_enabled_v2() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_pci_peripheral_data_access_enabled_v2)
+  return _internal_mutable_device_pci_peripheral_data_access_enabled_v2();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_pci_peripheral_data_access_enabled_v2(::enterprise_management::DevicePciPeripheralDataAccessEnabledProtoV2* device_pci_peripheral_data_access_enabled_v2) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_pci_peripheral_data_access_enabled_v2_;
+  }
+  if (device_pci_peripheral_data_access_enabled_v2) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_pci_peripheral_data_access_enabled_v2 = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_pci_peripheral_data_access_enabled_v2, submessage_arena);
+    }
+    _has_bits_[3] |= 0x01000000u;
+  } else {
+    _has_bits_[3] &= ~0x01000000u;
+  }
+  device_pci_peripheral_data_access_enabled_v2_ = device_pci_peripheral_data_access_enabled_v2;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_pci_peripheral_data_access_enabled_v2)
+}
+
+// optional .enterprise_management.DeviceRestrictedManagedGuestSessionEnabledProto device_restricted_managed_guest_session_enabled = 124;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_restricted_managed_guest_session_enabled() const {
+  bool value = (_has_bits_[3] & 0x02000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_restricted_managed_guest_session_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_restricted_managed_guest_session_enabled() const {
+  return _internal_has_device_restricted_managed_guest_session_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_device_restricted_managed_guest_session_enabled() {
+  if (device_restricted_managed_guest_session_enabled_ != nullptr) device_restricted_managed_guest_session_enabled_->Clear();
+  _has_bits_[3] &= ~0x02000000u;
+}
+inline const ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto& ChromeDeviceSettingsProto::_internal_device_restricted_managed_guest_session_enabled() const {
+  const ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* p = device_restricted_managed_guest_session_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto*>(
+      &::enterprise_management::_DeviceRestrictedManagedGuestSessionEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto& ChromeDeviceSettingsProto::device_restricted_managed_guest_session_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_restricted_managed_guest_session_enabled)
+  return _internal_device_restricted_managed_guest_session_enabled();
+}
+inline ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* ChromeDeviceSettingsProto::release_device_restricted_managed_guest_session_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_restricted_managed_guest_session_enabled)
+  _has_bits_[3] &= ~0x02000000u;
+  ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* temp = device_restricted_managed_guest_session_enabled_;
+  device_restricted_managed_guest_session_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_device_restricted_managed_guest_session_enabled() {
+  _has_bits_[3] |= 0x02000000u;
+  if (device_restricted_managed_guest_session_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto>(GetArenaNoVirtual());
+    device_restricted_managed_guest_session_enabled_ = p;
+  }
+  return device_restricted_managed_guest_session_enabled_;
+}
+inline ::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* ChromeDeviceSettingsProto::mutable_device_restricted_managed_guest_session_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_restricted_managed_guest_session_enabled)
+  return _internal_mutable_device_restricted_managed_guest_session_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_restricted_managed_guest_session_enabled(::enterprise_management::DeviceRestrictedManagedGuestSessionEnabledProto* device_restricted_managed_guest_session_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_restricted_managed_guest_session_enabled_;
+  }
+  if (device_restricted_managed_guest_session_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_restricted_managed_guest_session_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_restricted_managed_guest_session_enabled, submessage_arena);
+    }
+    _has_bits_[3] |= 0x02000000u;
+  } else {
+    _has_bits_[3] &= ~0x02000000u;
+  }
+  device_restricted_managed_guest_session_enabled_ = device_restricted_managed_guest_session_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_restricted_managed_guest_session_enabled)
+}
+
+// optional .enterprise_management.HostnameUserConfigurableProto hostname_user_configurable = 125;
+inline bool ChromeDeviceSettingsProto::_internal_has_hostname_user_configurable() const {
+  bool value = (_has_bits_[3] & 0x04000000u) != 0;
+  PROTOBUF_ASSUME(!value || hostname_user_configurable_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_hostname_user_configurable() const {
+  return _internal_has_hostname_user_configurable();
+}
+inline void ChromeDeviceSettingsProto::clear_hostname_user_configurable() {
+  if (hostname_user_configurable_ != nullptr) hostname_user_configurable_->Clear();
+  _has_bits_[3] &= ~0x04000000u;
+}
+inline const ::enterprise_management::HostnameUserConfigurableProto& ChromeDeviceSettingsProto::_internal_hostname_user_configurable() const {
+  const ::enterprise_management::HostnameUserConfigurableProto* p = hostname_user_configurable_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::HostnameUserConfigurableProto*>(
+      &::enterprise_management::_HostnameUserConfigurableProto_default_instance_);
+}
+inline const ::enterprise_management::HostnameUserConfigurableProto& ChromeDeviceSettingsProto::hostname_user_configurable() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.hostname_user_configurable)
+  return _internal_hostname_user_configurable();
+}
+inline ::enterprise_management::HostnameUserConfigurableProto* ChromeDeviceSettingsProto::release_hostname_user_configurable() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.hostname_user_configurable)
+  _has_bits_[3] &= ~0x04000000u;
+  ::enterprise_management::HostnameUserConfigurableProto* temp = hostname_user_configurable_;
+  hostname_user_configurable_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::HostnameUserConfigurableProto* ChromeDeviceSettingsProto::_internal_mutable_hostname_user_configurable() {
+  _has_bits_[3] |= 0x04000000u;
+  if (hostname_user_configurable_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::HostnameUserConfigurableProto>(GetArenaNoVirtual());
+    hostname_user_configurable_ = p;
+  }
+  return hostname_user_configurable_;
+}
+inline ::enterprise_management::HostnameUserConfigurableProto* ChromeDeviceSettingsProto::mutable_hostname_user_configurable() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.hostname_user_configurable)
+  return _internal_mutable_hostname_user_configurable();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_hostname_user_configurable(::enterprise_management::HostnameUserConfigurableProto* hostname_user_configurable) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete hostname_user_configurable_;
+  }
+  if (hostname_user_configurable) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      hostname_user_configurable = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, hostname_user_configurable, submessage_arena);
+    }
+    _has_bits_[3] |= 0x04000000u;
+  } else {
+    _has_bits_[3] &= ~0x04000000u;
+  }
+  hostname_user_configurable_ = hostname_user_configurable;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.hostname_user_configurable)
+}
+
+// optional .enterprise_management.BooleanPolicyProto login_screen_prompt_on_multiple_matching_certificates = 126;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_screen_prompt_on_multiple_matching_certificates() const {
+  bool value = (_has_bits_[3] & 0x08000000u) != 0;
+  PROTOBUF_ASSUME(!value || login_screen_prompt_on_multiple_matching_certificates_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_screen_prompt_on_multiple_matching_certificates() const {
+  return _internal_has_login_screen_prompt_on_multiple_matching_certificates();
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::_internal_login_screen_prompt_on_multiple_matching_certificates() const {
+  const ::enterprise_management::BooleanPolicyProto* p = login_screen_prompt_on_multiple_matching_certificates_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BooleanPolicyProto*>(
+      &::enterprise_management::_BooleanPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::login_screen_prompt_on_multiple_matching_certificates() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_screen_prompt_on_multiple_matching_certificates)
+  return _internal_login_screen_prompt_on_multiple_matching_certificates();
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::release_login_screen_prompt_on_multiple_matching_certificates() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_screen_prompt_on_multiple_matching_certificates)
+  _has_bits_[3] &= ~0x08000000u;
+  ::enterprise_management::BooleanPolicyProto* temp = login_screen_prompt_on_multiple_matching_certificates_;
+  login_screen_prompt_on_multiple_matching_certificates_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_login_screen_prompt_on_multiple_matching_certificates() {
+  _has_bits_[3] |= 0x08000000u;
+  if (login_screen_prompt_on_multiple_matching_certificates_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(GetArenaNoVirtual());
+    login_screen_prompt_on_multiple_matching_certificates_ = p;
+  }
+  return login_screen_prompt_on_multiple_matching_certificates_;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::mutable_login_screen_prompt_on_multiple_matching_certificates() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_screen_prompt_on_multiple_matching_certificates)
+  return _internal_mutable_login_screen_prompt_on_multiple_matching_certificates();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_screen_prompt_on_multiple_matching_certificates(::enterprise_management::BooleanPolicyProto* login_screen_prompt_on_multiple_matching_certificates) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(login_screen_prompt_on_multiple_matching_certificates_);
+  }
+  if (login_screen_prompt_on_multiple_matching_certificates) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_screen_prompt_on_multiple_matching_certificates = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_screen_prompt_on_multiple_matching_certificates, submessage_arena);
+    }
+    _has_bits_[3] |= 0x08000000u;
+  } else {
+    _has_bits_[3] &= ~0x08000000u;
+  }
+  login_screen_prompt_on_multiple_matching_certificates_ = login_screen_prompt_on_multiple_matching_certificates;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_screen_prompt_on_multiple_matching_certificates)
+}
+
+// optional .enterprise_management.BooleanPolicyProto kiosk_crx_manifest_update_url_ignored = 127;
+inline bool ChromeDeviceSettingsProto::_internal_has_kiosk_crx_manifest_update_url_ignored() const {
+  bool value = (_has_bits_[3] & 0x10000000u) != 0;
+  PROTOBUF_ASSUME(!value || kiosk_crx_manifest_update_url_ignored_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_kiosk_crx_manifest_update_url_ignored() const {
+  return _internal_has_kiosk_crx_manifest_update_url_ignored();
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::_internal_kiosk_crx_manifest_update_url_ignored() const {
+  const ::enterprise_management::BooleanPolicyProto* p = kiosk_crx_manifest_update_url_ignored_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BooleanPolicyProto*>(
+      &::enterprise_management::_BooleanPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::kiosk_crx_manifest_update_url_ignored() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.kiosk_crx_manifest_update_url_ignored)
+  return _internal_kiosk_crx_manifest_update_url_ignored();
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::release_kiosk_crx_manifest_update_url_ignored() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.kiosk_crx_manifest_update_url_ignored)
+  _has_bits_[3] &= ~0x10000000u;
+  ::enterprise_management::BooleanPolicyProto* temp = kiosk_crx_manifest_update_url_ignored_;
+  kiosk_crx_manifest_update_url_ignored_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_kiosk_crx_manifest_update_url_ignored() {
+  _has_bits_[3] |= 0x10000000u;
+  if (kiosk_crx_manifest_update_url_ignored_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(GetArenaNoVirtual());
+    kiosk_crx_manifest_update_url_ignored_ = p;
+  }
+  return kiosk_crx_manifest_update_url_ignored_;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::mutable_kiosk_crx_manifest_update_url_ignored() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.kiosk_crx_manifest_update_url_ignored)
+  return _internal_mutable_kiosk_crx_manifest_update_url_ignored();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_kiosk_crx_manifest_update_url_ignored(::enterprise_management::BooleanPolicyProto* kiosk_crx_manifest_update_url_ignored) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(kiosk_crx_manifest_update_url_ignored_);
+  }
+  if (kiosk_crx_manifest_update_url_ignored) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      kiosk_crx_manifest_update_url_ignored = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, kiosk_crx_manifest_update_url_ignored, submessage_arena);
+    }
+    _has_bits_[3] |= 0x10000000u;
+  } else {
+    _has_bits_[3] &= ~0x10000000u;
+  }
+  kiosk_crx_manifest_update_url_ignored_ = kiosk_crx_manifest_update_url_ignored;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.kiosk_crx_manifest_update_url_ignored)
+}
+
+// optional .enterprise_management.DeviceI18nShortcutsEnabledProto device_i18n_shortcuts_enabled = 128;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_i18n_shortcuts_enabled() const {
+  bool value = (_has_bits_[3] & 0x20000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_i18n_shortcuts_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_i18n_shortcuts_enabled() const {
+  return _internal_has_device_i18n_shortcuts_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_device_i18n_shortcuts_enabled() {
+  if (device_i18n_shortcuts_enabled_ != nullptr) device_i18n_shortcuts_enabled_->Clear();
+  _has_bits_[3] &= ~0x20000000u;
+}
+inline const ::enterprise_management::DeviceI18nShortcutsEnabledProto& ChromeDeviceSettingsProto::_internal_device_i18n_shortcuts_enabled() const {
+  const ::enterprise_management::DeviceI18nShortcutsEnabledProto* p = device_i18n_shortcuts_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceI18nShortcutsEnabledProto*>(
+      &::enterprise_management::_DeviceI18nShortcutsEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceI18nShortcutsEnabledProto& ChromeDeviceSettingsProto::device_i18n_shortcuts_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_i18n_shortcuts_enabled)
+  return _internal_device_i18n_shortcuts_enabled();
+}
+inline ::enterprise_management::DeviceI18nShortcutsEnabledProto* ChromeDeviceSettingsProto::release_device_i18n_shortcuts_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_i18n_shortcuts_enabled)
+  _has_bits_[3] &= ~0x20000000u;
+  ::enterprise_management::DeviceI18nShortcutsEnabledProto* temp = device_i18n_shortcuts_enabled_;
+  device_i18n_shortcuts_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceI18nShortcutsEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_device_i18n_shortcuts_enabled() {
+  _has_bits_[3] |= 0x20000000u;
+  if (device_i18n_shortcuts_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceI18nShortcutsEnabledProto>(GetArenaNoVirtual());
+    device_i18n_shortcuts_enabled_ = p;
+  }
+  return device_i18n_shortcuts_enabled_;
+}
+inline ::enterprise_management::DeviceI18nShortcutsEnabledProto* ChromeDeviceSettingsProto::mutable_device_i18n_shortcuts_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_i18n_shortcuts_enabled)
+  return _internal_mutable_device_i18n_shortcuts_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_i18n_shortcuts_enabled(::enterprise_management::DeviceI18nShortcutsEnabledProto* device_i18n_shortcuts_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_i18n_shortcuts_enabled_;
+  }
+  if (device_i18n_shortcuts_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_i18n_shortcuts_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_i18n_shortcuts_enabled, submessage_arena);
+    }
+    _has_bits_[3] |= 0x20000000u;
+  } else {
+    _has_bits_[3] &= ~0x20000000u;
+  }
+  device_i18n_shortcuts_enabled_ = device_i18n_shortcuts_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_i18n_shortcuts_enabled)
+}
+
+// optional .enterprise_management.BooleanPolicyProto chromad_to_cloud_migration_enabled = 129;
+inline bool ChromeDeviceSettingsProto::_internal_has_chromad_to_cloud_migration_enabled() const {
+  bool value = (_has_bits_[3] & 0x40000000u) != 0;
+  PROTOBUF_ASSUME(!value || chromad_to_cloud_migration_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_chromad_to_cloud_migration_enabled() const {
+  return _internal_has_chromad_to_cloud_migration_enabled();
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::_internal_chromad_to_cloud_migration_enabled() const {
+  const ::enterprise_management::BooleanPolicyProto* p = chromad_to_cloud_migration_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BooleanPolicyProto*>(
+      &::enterprise_management::_BooleanPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::chromad_to_cloud_migration_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.chromad_to_cloud_migration_enabled)
+  return _internal_chromad_to_cloud_migration_enabled();
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::release_chromad_to_cloud_migration_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.chromad_to_cloud_migration_enabled)
+  _has_bits_[3] &= ~0x40000000u;
+  ::enterprise_management::BooleanPolicyProto* temp = chromad_to_cloud_migration_enabled_;
+  chromad_to_cloud_migration_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_chromad_to_cloud_migration_enabled() {
+  _has_bits_[3] |= 0x40000000u;
+  if (chromad_to_cloud_migration_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(GetArenaNoVirtual());
+    chromad_to_cloud_migration_enabled_ = p;
+  }
+  return chromad_to_cloud_migration_enabled_;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::mutable_chromad_to_cloud_migration_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.chromad_to_cloud_migration_enabled)
+  return _internal_mutable_chromad_to_cloud_migration_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_chromad_to_cloud_migration_enabled(::enterprise_management::BooleanPolicyProto* chromad_to_cloud_migration_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(chromad_to_cloud_migration_enabled_);
+  }
+  if (chromad_to_cloud_migration_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      chromad_to_cloud_migration_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, chromad_to_cloud_migration_enabled, submessage_arena);
+    }
+    _has_bits_[3] |= 0x40000000u;
+  } else {
+    _has_bits_[3] &= ~0x40000000u;
+  }
+  chromad_to_cloud_migration_enabled_ = chromad_to_cloud_migration_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.chromad_to_cloud_migration_enabled)
+}
+
+// optional .enterprise_management.RevenDeviceHWDataUsageEnabledProto hardware_data_usage_enabled = 130;
+inline bool ChromeDeviceSettingsProto::_internal_has_hardware_data_usage_enabled() const {
+  bool value = (_has_bits_[3] & 0x80000000u) != 0;
+  PROTOBUF_ASSUME(!value || hardware_data_usage_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_hardware_data_usage_enabled() const {
+  return _internal_has_hardware_data_usage_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_hardware_data_usage_enabled() {
+  if (hardware_data_usage_enabled_ != nullptr) hardware_data_usage_enabled_->Clear();
+  _has_bits_[3] &= ~0x80000000u;
+}
+inline const ::enterprise_management::RevenDeviceHWDataUsageEnabledProto& ChromeDeviceSettingsProto::_internal_hardware_data_usage_enabled() const {
+  const ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* p = hardware_data_usage_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::RevenDeviceHWDataUsageEnabledProto*>(
+      &::enterprise_management::_RevenDeviceHWDataUsageEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::RevenDeviceHWDataUsageEnabledProto& ChromeDeviceSettingsProto::hardware_data_usage_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.hardware_data_usage_enabled)
+  return _internal_hardware_data_usage_enabled();
+}
+inline ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* ChromeDeviceSettingsProto::release_hardware_data_usage_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.hardware_data_usage_enabled)
+  _has_bits_[3] &= ~0x80000000u;
+  ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* temp = hardware_data_usage_enabled_;
+  hardware_data_usage_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_hardware_data_usage_enabled() {
+  _has_bits_[3] |= 0x80000000u;
+  if (hardware_data_usage_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::RevenDeviceHWDataUsageEnabledProto>(GetArenaNoVirtual());
+    hardware_data_usage_enabled_ = p;
+  }
+  return hardware_data_usage_enabled_;
+}
+inline ::enterprise_management::RevenDeviceHWDataUsageEnabledProto* ChromeDeviceSettingsProto::mutable_hardware_data_usage_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.hardware_data_usage_enabled)
+  return _internal_mutable_hardware_data_usage_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_hardware_data_usage_enabled(::enterprise_management::RevenDeviceHWDataUsageEnabledProto* hardware_data_usage_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete hardware_data_usage_enabled_;
+  }
+  if (hardware_data_usage_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      hardware_data_usage_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, hardware_data_usage_enabled, submessage_arena);
+    }
+    _has_bits_[3] |= 0x80000000u;
+  } else {
+    _has_bits_[3] &= ~0x80000000u;
+  }
+  hardware_data_usage_enabled_ = hardware_data_usage_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.hardware_data_usage_enabled)
+}
+
+// optional .enterprise_management.DeviceLoginScreenWebUILazyLoadingProto login_web_ui_lazy_loading = 131;
+inline bool ChromeDeviceSettingsProto::_internal_has_login_web_ui_lazy_loading() const {
+  bool value = (_has_bits_[4] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || login_web_ui_lazy_loading_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_login_web_ui_lazy_loading() const {
+  return _internal_has_login_web_ui_lazy_loading();
+}
+inline void ChromeDeviceSettingsProto::clear_login_web_ui_lazy_loading() {
+  if (login_web_ui_lazy_loading_ != nullptr) login_web_ui_lazy_loading_->Clear();
+  _has_bits_[4] &= ~0x00000001u;
+}
+inline const ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto& ChromeDeviceSettingsProto::_internal_login_web_ui_lazy_loading() const {
+  const ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* p = login_web_ui_lazy_loading_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto*>(
+      &::enterprise_management::_DeviceLoginScreenWebUILazyLoadingProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto& ChromeDeviceSettingsProto::login_web_ui_lazy_loading() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.login_web_ui_lazy_loading)
+  return _internal_login_web_ui_lazy_loading();
+}
+inline ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* ChromeDeviceSettingsProto::release_login_web_ui_lazy_loading() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.login_web_ui_lazy_loading)
+  _has_bits_[4] &= ~0x00000001u;
+  ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* temp = login_web_ui_lazy_loading_;
+  login_web_ui_lazy_loading_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* ChromeDeviceSettingsProto::_internal_mutable_login_web_ui_lazy_loading() {
+  _has_bits_[4] |= 0x00000001u;
+  if (login_web_ui_lazy_loading_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto>(GetArenaNoVirtual());
+    login_web_ui_lazy_loading_ = p;
+  }
+  return login_web_ui_lazy_loading_;
+}
+inline ::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* ChromeDeviceSettingsProto::mutable_login_web_ui_lazy_loading() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.login_web_ui_lazy_loading)
+  return _internal_mutable_login_web_ui_lazy_loading();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_login_web_ui_lazy_loading(::enterprise_management::DeviceLoginScreenWebUILazyLoadingProto* login_web_ui_lazy_loading) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete login_web_ui_lazy_loading_;
+  }
+  if (login_web_ui_lazy_loading) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      login_web_ui_lazy_loading = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, login_web_ui_lazy_loading, submessage_arena);
+    }
+    _has_bits_[4] |= 0x00000001u;
+  } else {
+    _has_bits_[4] &= ~0x00000001u;
+  }
+  login_web_ui_lazy_loading_ = login_web_ui_lazy_loading;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.login_web_ui_lazy_loading)
+}
+
+// optional .enterprise_management.DeviceKeylockerForStorageEncryptionEnabledProto keylocker_for_storage_encryption_enabled = 132;
+inline bool ChromeDeviceSettingsProto::_internal_has_keylocker_for_storage_encryption_enabled() const {
+  bool value = (_has_bits_[4] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || keylocker_for_storage_encryption_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_keylocker_for_storage_encryption_enabled() const {
+  return _internal_has_keylocker_for_storage_encryption_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_keylocker_for_storage_encryption_enabled() {
+  if (keylocker_for_storage_encryption_enabled_ != nullptr) keylocker_for_storage_encryption_enabled_->Clear();
+  _has_bits_[4] &= ~0x00000002u;
+}
+inline const ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto& ChromeDeviceSettingsProto::_internal_keylocker_for_storage_encryption_enabled() const {
+  const ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* p = keylocker_for_storage_encryption_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto*>(
+      &::enterprise_management::_DeviceKeylockerForStorageEncryptionEnabledProto_default_instance_);
+}
+inline const ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto& ChromeDeviceSettingsProto::keylocker_for_storage_encryption_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.keylocker_for_storage_encryption_enabled)
+  return _internal_keylocker_for_storage_encryption_enabled();
+}
+inline ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* ChromeDeviceSettingsProto::release_keylocker_for_storage_encryption_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.keylocker_for_storage_encryption_enabled)
+  _has_bits_[4] &= ~0x00000002u;
+  ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* temp = keylocker_for_storage_encryption_enabled_;
+  keylocker_for_storage_encryption_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* ChromeDeviceSettingsProto::_internal_mutable_keylocker_for_storage_encryption_enabled() {
+  _has_bits_[4] |= 0x00000002u;
+  if (keylocker_for_storage_encryption_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto>(GetArenaNoVirtual());
+    keylocker_for_storage_encryption_enabled_ = p;
+  }
+  return keylocker_for_storage_encryption_enabled_;
+}
+inline ::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* ChromeDeviceSettingsProto::mutable_keylocker_for_storage_encryption_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.keylocker_for_storage_encryption_enabled)
+  return _internal_mutable_keylocker_for_storage_encryption_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_keylocker_for_storage_encryption_enabled(::enterprise_management::DeviceKeylockerForStorageEncryptionEnabledProto* keylocker_for_storage_encryption_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete keylocker_for_storage_encryption_enabled_;
+  }
+  if (keylocker_for_storage_encryption_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      keylocker_for_storage_encryption_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, keylocker_for_storage_encryption_enabled, submessage_arena);
+    }
+    _has_bits_[4] |= 0x00000002u;
+  } else {
+    _has_bits_[4] &= ~0x00000002u;
+  }
+  keylocker_for_storage_encryption_enabled_ = keylocker_for_storage_encryption_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.keylocker_for_storage_encryption_enabled)
+}
+
+// optional .enterprise_management.BooleanPolicyProto device_run_automatic_cleanup_on_login = 133;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_run_automatic_cleanup_on_login() const {
+  bool value = (_has_bits_[4] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || device_run_automatic_cleanup_on_login_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_run_automatic_cleanup_on_login() const {
+  return _internal_has_device_run_automatic_cleanup_on_login();
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::_internal_device_run_automatic_cleanup_on_login() const {
+  const ::enterprise_management::BooleanPolicyProto* p = device_run_automatic_cleanup_on_login_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BooleanPolicyProto*>(
+      &::enterprise_management::_BooleanPolicyProto_default_instance_);
+}
+inline const ::enterprise_management::BooleanPolicyProto& ChromeDeviceSettingsProto::device_run_automatic_cleanup_on_login() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_run_automatic_cleanup_on_login)
+  return _internal_device_run_automatic_cleanup_on_login();
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::release_device_run_automatic_cleanup_on_login() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_run_automatic_cleanup_on_login)
+  _has_bits_[4] &= ~0x00000004u;
+  ::enterprise_management::BooleanPolicyProto* temp = device_run_automatic_cleanup_on_login_;
+  device_run_automatic_cleanup_on_login_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::_internal_mutable_device_run_automatic_cleanup_on_login() {
+  _has_bits_[4] |= 0x00000004u;
+  if (device_run_automatic_cleanup_on_login_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(GetArenaNoVirtual());
+    device_run_automatic_cleanup_on_login_ = p;
+  }
+  return device_run_automatic_cleanup_on_login_;
+}
+inline ::enterprise_management::BooleanPolicyProto* ChromeDeviceSettingsProto::mutable_device_run_automatic_cleanup_on_login() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_run_automatic_cleanup_on_login)
+  return _internal_mutable_device_run_automatic_cleanup_on_login();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_run_automatic_cleanup_on_login(::enterprise_management::BooleanPolicyProto* device_run_automatic_cleanup_on_login) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(device_run_automatic_cleanup_on_login_);
+  }
+  if (device_run_automatic_cleanup_on_login) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_run_automatic_cleanup_on_login = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_run_automatic_cleanup_on_login, submessage_arena);
+    }
+    _has_bits_[4] |= 0x00000004u;
+  } else {
+    _has_bits_[4] &= ~0x00000004u;
+  }
+  device_run_automatic_cleanup_on_login_ = device_run_automatic_cleanup_on_login;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_run_automatic_cleanup_on_login)
+}
+
+// optional .enterprise_management.EncryptedReportingPipelineConfigurationProto device_encrypted_reporting_pipeline_enabled = 134;
+inline bool ChromeDeviceSettingsProto::_internal_has_device_encrypted_reporting_pipeline_enabled() const {
+  bool value = (_has_bits_[4] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || device_encrypted_reporting_pipeline_enabled_ != nullptr);
+  return value;
+}
+inline bool ChromeDeviceSettingsProto::has_device_encrypted_reporting_pipeline_enabled() const {
+  return _internal_has_device_encrypted_reporting_pipeline_enabled();
+}
+inline void ChromeDeviceSettingsProto::clear_device_encrypted_reporting_pipeline_enabled() {
+  if (device_encrypted_reporting_pipeline_enabled_ != nullptr) device_encrypted_reporting_pipeline_enabled_->Clear();
+  _has_bits_[4] &= ~0x00000008u;
+}
+inline const ::enterprise_management::EncryptedReportingPipelineConfigurationProto& ChromeDeviceSettingsProto::_internal_device_encrypted_reporting_pipeline_enabled() const {
+  const ::enterprise_management::EncryptedReportingPipelineConfigurationProto* p = device_encrypted_reporting_pipeline_enabled_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::EncryptedReportingPipelineConfigurationProto*>(
+      &::enterprise_management::_EncryptedReportingPipelineConfigurationProto_default_instance_);
+}
+inline const ::enterprise_management::EncryptedReportingPipelineConfigurationProto& ChromeDeviceSettingsProto::device_encrypted_reporting_pipeline_enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDeviceSettingsProto.device_encrypted_reporting_pipeline_enabled)
+  return _internal_device_encrypted_reporting_pipeline_enabled();
+}
+inline ::enterprise_management::EncryptedReportingPipelineConfigurationProto* ChromeDeviceSettingsProto::release_device_encrypted_reporting_pipeline_enabled() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDeviceSettingsProto.device_encrypted_reporting_pipeline_enabled)
+  _has_bits_[4] &= ~0x00000008u;
+  ::enterprise_management::EncryptedReportingPipelineConfigurationProto* temp = device_encrypted_reporting_pipeline_enabled_;
+  device_encrypted_reporting_pipeline_enabled_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::EncryptedReportingPipelineConfigurationProto* ChromeDeviceSettingsProto::_internal_mutable_device_encrypted_reporting_pipeline_enabled() {
+  _has_bits_[4] |= 0x00000008u;
+  if (device_encrypted_reporting_pipeline_enabled_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::EncryptedReportingPipelineConfigurationProto>(GetArenaNoVirtual());
+    device_encrypted_reporting_pipeline_enabled_ = p;
+  }
+  return device_encrypted_reporting_pipeline_enabled_;
+}
+inline ::enterprise_management::EncryptedReportingPipelineConfigurationProto* ChromeDeviceSettingsProto::mutable_device_encrypted_reporting_pipeline_enabled() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDeviceSettingsProto.device_encrypted_reporting_pipeline_enabled)
+  return _internal_mutable_device_encrypted_reporting_pipeline_enabled();
+}
+inline void ChromeDeviceSettingsProto::set_allocated_device_encrypted_reporting_pipeline_enabled(::enterprise_management::EncryptedReportingPipelineConfigurationProto* device_encrypted_reporting_pipeline_enabled) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_encrypted_reporting_pipeline_enabled_;
+  }
+  if (device_encrypted_reporting_pipeline_enabled) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_encrypted_reporting_pipeline_enabled = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_encrypted_reporting_pipeline_enabled, submessage_arena);
+    }
+    _has_bits_[4] |= 0x00000008u;
+  } else {
+    _has_bits_[4] &= ~0x00000008u;
+  }
+  device_encrypted_reporting_pipeline_enabled_ = device_encrypted_reporting_pipeline_enabled;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDeviceSettingsProto.device_encrypted_reporting_pipeline_enabled)
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace enterprise_management
+
+PROTOBUF_NAMESPACE_OPEN
+
+template <> struct is_proto_enum< ::enterprise_management::AutoUpdateSettingsProto_ConnectionType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AutoUpdateSettingsProto_RollbackToTargetVersion> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AutoUpdateSettingsProto_ChannelDowngradeBehavior> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::SystemTimezoneProto_AutomaticTimezoneDetectionType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceLocalAccountInfoProto_AccountType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AccessibilitySettingsProto_ScreenMagnifierType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DisplayRotationDefaultProto_Rotation> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::LoginAuthenticationBehaviorProto_LoginBehavior> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceEcryptfsMigrationStrategyProto_MigrationStrategy> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceSecondFactorAuthenticationProto_U2fMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::WeeklyTimeProto_DayOfWeek> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceNativePrintersAccessModeProto_AccessMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DevicePrintersAccessModeProto_AccessMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::TPMFirmwareUpdateSettingsProto_AutoUpdateMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceKerberosEncryptionTypesProto_Types> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceUserPolicyLoopbackProcessingModeProto_Mode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::SamlLoginAuthenticationTypeProto_Type> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceRebootOnUserSignoutProto_RebootOnSignoutMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceDockMacAddressSourceProto_Source> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceBatteryChargeModeProto_BatteryChargeMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceCrostiniArcAdbSideloadingAllowedProto_AllowanceMode> : ::std::true_type {};
+
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_chrome_5fdevice_5fpolicy_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_extension_policy.pb.cc b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_extension_policy.pb.cc
new file mode 100644
index 0000000..e2bcd05
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_extension_policy.pb.cc
@@ -0,0 +1,282 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: chrome_extension_policy.proto
+
+#include "chrome_extension_policy.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+namespace enterprise_management {
+class ExternalPolicyDataDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ExternalPolicyData> _instance;
+} _ExternalPolicyData_default_instance_;
+}  // namespace enterprise_management
+static void InitDefaultsscc_info_ExternalPolicyData_chrome_5fextension_5fpolicy_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ExternalPolicyData_default_instance_;
+    new (ptr) ::enterprise_management::ExternalPolicyData();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ExternalPolicyData::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ExternalPolicyData_chrome_5fextension_5fpolicy_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ExternalPolicyData_chrome_5fextension_5fpolicy_2eproto}, {}};
+
+namespace enterprise_management {
+
+// ===================================================================
+
+void ExternalPolicyData::InitAsDefaultInstance() {
+}
+class ExternalPolicyData::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ExternalPolicyData>()._has_bits_);
+  static void set_has_download_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_secure_hash(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+ExternalPolicyData::ExternalPolicyData()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ExternalPolicyData)
+}
+ExternalPolicyData::ExternalPolicyData(const ExternalPolicyData& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  download_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_download_url()) {
+    download_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.download_url_);
+  }
+  secure_hash_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_secure_hash()) {
+    secure_hash_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.secure_hash_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ExternalPolicyData)
+}
+
+void ExternalPolicyData::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ExternalPolicyData_chrome_5fextension_5fpolicy_2eproto.base);
+  download_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  secure_hash_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+ExternalPolicyData::~ExternalPolicyData() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ExternalPolicyData)
+  SharedDtor();
+}
+
+void ExternalPolicyData::SharedDtor() {
+  download_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  secure_hash_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ExternalPolicyData::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ExternalPolicyData& ExternalPolicyData::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ExternalPolicyData_chrome_5fextension_5fpolicy_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ExternalPolicyData::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ExternalPolicyData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      download_url_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      secure_hash_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ExternalPolicyData::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string download_url = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_download_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes secure_hash = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_secure_hash();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ExternalPolicyData::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ExternalPolicyData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string download_url = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_download_url(), target);
+  }
+
+  // optional bytes secure_hash = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_secure_hash(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ExternalPolicyData)
+  return target;
+}
+
+size_t ExternalPolicyData::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ExternalPolicyData)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string download_url = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_download_url());
+    }
+
+    // optional bytes secure_hash = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_secure_hash());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ExternalPolicyData::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ExternalPolicyData*>(
+      &from));
+}
+
+void ExternalPolicyData::MergeFrom(const ExternalPolicyData& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ExternalPolicyData)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      download_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.download_url_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      secure_hash_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.secure_hash_);
+    }
+  }
+}
+
+void ExternalPolicyData::CopyFrom(const ExternalPolicyData& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ExternalPolicyData)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ExternalPolicyData::IsInitialized() const {
+  return true;
+}
+
+void ExternalPolicyData::InternalSwap(ExternalPolicyData* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  download_url_.Swap(&other->download_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  secure_hash_.Swap(&other->secure_hash_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string ExternalPolicyData::GetTypeName() const {
+  return "enterprise_management.ExternalPolicyData";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace enterprise_management
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::enterprise_management::ExternalPolicyData* Arena::CreateMaybeMessage< ::enterprise_management::ExternalPolicyData >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ExternalPolicyData >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_extension_policy.pb.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_extension_policy.pb.h
new file mode 100644
index 0000000..b3fc968
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/chrome_extension_policy.pb.h
@@ -0,0 +1,382 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: chrome_extension_policy.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_chrome_5fextension_5fpolicy_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_chrome_5fextension_5fpolicy_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_chrome_5fextension_5fpolicy_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_chrome_5fextension_5fpolicy_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace enterprise_management {
+class ExternalPolicyData;
+class ExternalPolicyDataDefaultTypeInternal;
+extern ExternalPolicyDataDefaultTypeInternal _ExternalPolicyData_default_instance_;
+}  // namespace enterprise_management
+PROTOBUF_NAMESPACE_OPEN
+template<> ::enterprise_management::ExternalPolicyData* Arena::CreateMaybeMessage<::enterprise_management::ExternalPolicyData>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace enterprise_management {
+
+// ===================================================================
+
+class ExternalPolicyData :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ExternalPolicyData) */ {
+ public:
+  ExternalPolicyData();
+  virtual ~ExternalPolicyData();
+
+  ExternalPolicyData(const ExternalPolicyData& from);
+  ExternalPolicyData(ExternalPolicyData&& from) noexcept
+    : ExternalPolicyData() {
+    *this = ::std::move(from);
+  }
+
+  inline ExternalPolicyData& operator=(const ExternalPolicyData& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ExternalPolicyData& operator=(ExternalPolicyData&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ExternalPolicyData& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ExternalPolicyData* internal_default_instance() {
+    return reinterpret_cast<const ExternalPolicyData*>(
+               &_ExternalPolicyData_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(ExternalPolicyData& a, ExternalPolicyData& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ExternalPolicyData* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ExternalPolicyData* New() const final {
+    return CreateMaybeMessage<ExternalPolicyData>(nullptr);
+  }
+
+  ExternalPolicyData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ExternalPolicyData>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ExternalPolicyData& from);
+  void MergeFrom(const ExternalPolicyData& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ExternalPolicyData* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ExternalPolicyData";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDownloadUrlFieldNumber = 1,
+    kSecureHashFieldNumber = 2,
+  };
+  // optional string download_url = 1;
+  bool has_download_url() const;
+  private:
+  bool _internal_has_download_url() const;
+  public:
+  void clear_download_url();
+  const std::string& download_url() const;
+  void set_download_url(const std::string& value);
+  void set_download_url(std::string&& value);
+  void set_download_url(const char* value);
+  void set_download_url(const char* value, size_t size);
+  std::string* mutable_download_url();
+  std::string* release_download_url();
+  void set_allocated_download_url(std::string* download_url);
+  private:
+  const std::string& _internal_download_url() const;
+  void _internal_set_download_url(const std::string& value);
+  std::string* _internal_mutable_download_url();
+  public:
+
+  // optional bytes secure_hash = 2;
+  bool has_secure_hash() const;
+  private:
+  bool _internal_has_secure_hash() const;
+  public:
+  void clear_secure_hash();
+  const std::string& secure_hash() const;
+  void set_secure_hash(const std::string& value);
+  void set_secure_hash(std::string&& value);
+  void set_secure_hash(const char* value);
+  void set_secure_hash(const void* value, size_t size);
+  std::string* mutable_secure_hash();
+  std::string* release_secure_hash();
+  void set_allocated_secure_hash(std::string* secure_hash);
+  private:
+  const std::string& _internal_secure_hash() const;
+  void _internal_set_secure_hash(const std::string& value);
+  std::string* _internal_mutable_secure_hash();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ExternalPolicyData)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr download_url_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr secure_hash_;
+  friend struct ::TableStruct_chrome_5fextension_5fpolicy_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// ExternalPolicyData
+
+// optional string download_url = 1;
+inline bool ExternalPolicyData::_internal_has_download_url() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ExternalPolicyData::has_download_url() const {
+  return _internal_has_download_url();
+}
+inline void ExternalPolicyData::clear_download_url() {
+  download_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ExternalPolicyData::download_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExternalPolicyData.download_url)
+  return _internal_download_url();
+}
+inline void ExternalPolicyData::set_download_url(const std::string& value) {
+  _internal_set_download_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExternalPolicyData.download_url)
+}
+inline std::string* ExternalPolicyData::mutable_download_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExternalPolicyData.download_url)
+  return _internal_mutable_download_url();
+}
+inline const std::string& ExternalPolicyData::_internal_download_url() const {
+  return download_url_.GetNoArena();
+}
+inline void ExternalPolicyData::_internal_set_download_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  download_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ExternalPolicyData::set_download_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  download_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ExternalPolicyData.download_url)
+}
+inline void ExternalPolicyData::set_download_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  download_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ExternalPolicyData.download_url)
+}
+inline void ExternalPolicyData::set_download_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  download_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ExternalPolicyData.download_url)
+}
+inline std::string* ExternalPolicyData::_internal_mutable_download_url() {
+  _has_bits_[0] |= 0x00000001u;
+  return download_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ExternalPolicyData::release_download_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ExternalPolicyData.download_url)
+  if (!_internal_has_download_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return download_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ExternalPolicyData::set_allocated_download_url(std::string* download_url) {
+  if (download_url != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  download_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), download_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ExternalPolicyData.download_url)
+}
+
+// optional bytes secure_hash = 2;
+inline bool ExternalPolicyData::_internal_has_secure_hash() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ExternalPolicyData::has_secure_hash() const {
+  return _internal_has_secure_hash();
+}
+inline void ExternalPolicyData::clear_secure_hash() {
+  secure_hash_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ExternalPolicyData::secure_hash() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExternalPolicyData.secure_hash)
+  return _internal_secure_hash();
+}
+inline void ExternalPolicyData::set_secure_hash(const std::string& value) {
+  _internal_set_secure_hash(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExternalPolicyData.secure_hash)
+}
+inline std::string* ExternalPolicyData::mutable_secure_hash() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExternalPolicyData.secure_hash)
+  return _internal_mutable_secure_hash();
+}
+inline const std::string& ExternalPolicyData::_internal_secure_hash() const {
+  return secure_hash_.GetNoArena();
+}
+inline void ExternalPolicyData::_internal_set_secure_hash(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  secure_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ExternalPolicyData::set_secure_hash(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  secure_hash_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ExternalPolicyData.secure_hash)
+}
+inline void ExternalPolicyData::set_secure_hash(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  secure_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ExternalPolicyData.secure_hash)
+}
+inline void ExternalPolicyData::set_secure_hash(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  secure_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ExternalPolicyData.secure_hash)
+}
+inline std::string* ExternalPolicyData::_internal_mutable_secure_hash() {
+  _has_bits_[0] |= 0x00000002u;
+  return secure_hash_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ExternalPolicyData::release_secure_hash() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ExternalPolicyData.secure_hash)
+  if (!_internal_has_secure_hash()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return secure_hash_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ExternalPolicyData::set_allocated_secure_hash(std::string* secure_hash) {
+  if (secure_hash != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  secure_hash_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), secure_hash);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ExternalPolicyData.secure_hash)
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace enterprise_management
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_chrome_5fextension_5fpolicy_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/device_management_backend.pb.cc b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/device_management_backend.pb.cc
new file mode 100644
index 0000000..9a86191
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/device_management_backend.pb.cc
@@ -0,0 +1,66077 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: device_management_backend.proto
+
+#include "device_management_backend.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryEnrollPlayUserRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ActiveDirectoryEnrollPlayUserResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryPlayActivityRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryPlayActivityResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryUserSigninRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryUserSigninResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ActiveTimePeriod_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AndroidAppInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AndroidAppPermission_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AndroidStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_App_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_AppActivity_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AppInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AppInstallReport_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AppInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AppInstallReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AppInstallReportResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AppStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BacklightInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_BatteryInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BatterySample_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BluetoothAdapterInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_BoardStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BootInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BrowserPublicKeyUploadRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BrowserPublicKeyUploadResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CPUTempInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CertificateBasedDeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckAndroidManagementRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckAndroidManagementResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckDeviceLicenseRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CheckDeviceLicenseResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckDevicePairingRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckDevicePairingResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckUserAccountRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckUserAccountResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<4> scc_info_ChildStatusReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChildStatusReportResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_ChromeDesktopReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChromeDesktopReportResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_ChromeOsUserReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChromeOsUserReportResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_ChromeProfileReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChromeProfileReportResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChromeSignedInUser_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_ChromeUserProfileInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ChromeUserProfileReport_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ClientActionRequired_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_ClientCertificateProvisioningRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_ClientCertificateProvisioningResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CpuCStateInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CpuInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CpuUtilizationInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CrashReportInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CrostiniApp_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CrostiniStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CustomerLogo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAttributeUpdatePermissionRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAttributeUpdatePermissionResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAttributeUpdateRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAttributeUpdateResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAutoEnrollmentRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAutoEnrollmentResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceCertUploadRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceCertUploadResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceInitialEnrollmentStateRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceInitialEnrollmentStateResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePairingRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePairingResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DevicePolicyRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DevicePolicyResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRegisterConfiguration_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRegisterIdentification_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_DeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRegisterResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceRemoteCommandRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_DeviceRemoteCommandResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceServiceApiAccessRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceServiceApiAccessResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceState_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceStateKeyUpdateRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceStateRetrievalRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_DeviceStateRetrievalResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<32> scc_info_DeviceStatusReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceStatusReportResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUnregisterRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUnregisterResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUser_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DisabledState_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DiskInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DiskLifetimeEstimation_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DisplayInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DownloadCertRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DownloadCertResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EFIVars_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ESimProfileInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Extension_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionInstallReport_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ExtensionInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionInstallReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionPolicy_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ExtensionRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FanInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FinishCsrRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FinishCsrResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GcmIdUpdateRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GcmIdUpdateResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GlobalCpuInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GraphicsAdapterInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_GraphicsStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_KernelParameters_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_LaCrOsBrowserReport_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_LicenseAvailability_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LicenseType_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_LogicalCpuInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_MemoryInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkAdapterInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkInterface_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkState_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OSReport_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OsUpdateStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Plugin_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Policy_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PolicyFetchRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyFetchResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyFetchTimestamp_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PolicyValidationReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyValidationReportResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyValueValidationIssue_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PowerStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrintJobEvent_PrintJobConfiguration_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrintJobEvent_PrintSettings_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PrintJobEvent_PrintSettings_MediaSize_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PrintJobEvent_Printer_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateSetMembershipRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateSetMembershipResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_PrivateSetMembershipRlweRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_PrivateSetMembershipRlweResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PublicSamlUserRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PublicSamlUserResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RefreshAccountRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RefreshAccountResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_RegisterBrowserRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RemoteCommand_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RemoteCommandResult_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RsuLookupKeyUploadRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RsuLookupKeyUploadResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SamlParametersProto_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ScreenTimeSpan_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<4> scc_info_SessionStatusReportRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SessionStatusReportResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SignedData_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SmbiosInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StartCsrRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StartCsrResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StatefulPartitionInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_StorageStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemFreeRamInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemStatus_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ThermalInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ThermalSample_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TimezoneInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_TpmStatusInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TpmSupportedFeatures_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TpmVersionInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UploadEuiccInfoRequest_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UploadEuiccInfoResponse_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_VolumeInfo_device_5fmanagement_5fbackend_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PrivateMembershipRlweOprfRequest_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<4> scc_info_PrivateMembershipRlweOprfResponse_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateMembershipRlweQueryRequest_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateMembershipRlweQueryResponse_private_5fmembership_5frlwe_2eproto;
+namespace enterprise_management {
+class LicenseTypeDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LicenseType> _instance;
+} _LicenseType_default_instance_;
+class SignedDataDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SignedData> _instance;
+} _SignedData_default_instance_;
+class CheckUserAccountRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CheckUserAccountRequest> _instance;
+} _CheckUserAccountRequest_default_instance_;
+class DeviceRegisterRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceRegisterRequest> _instance;
+} _DeviceRegisterRequest_default_instance_;
+class DeviceRegisterIdentificationDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceRegisterIdentification> _instance;
+} _DeviceRegisterIdentification_default_instance_;
+class CheckUserAccountResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CheckUserAccountResponse> _instance;
+} _CheckUserAccountResponse_default_instance_;
+class DeviceRegisterResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceRegisterResponse> _instance;
+} _DeviceRegisterResponse_default_instance_;
+class DeviceUnregisterRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceUnregisterRequest> _instance;
+} _DeviceUnregisterRequest_default_instance_;
+class DeviceUnregisterResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceUnregisterResponse> _instance;
+} _DeviceUnregisterResponse_default_instance_;
+class DeviceCertUploadRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceCertUploadRequest> _instance;
+} _DeviceCertUploadRequest_default_instance_;
+class DeviceCertUploadResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceCertUploadResponse> _instance;
+} _DeviceCertUploadResponse_default_instance_;
+class DeviceServiceApiAccessRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceServiceApiAccessRequest> _instance;
+} _DeviceServiceApiAccessRequest_default_instance_;
+class DeviceServiceApiAccessResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceServiceApiAccessResponse> _instance;
+} _DeviceServiceApiAccessResponse_default_instance_;
+class BrowserDeviceIdentifierDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BrowserDeviceIdentifier> _instance;
+} _BrowserDeviceIdentifier_default_instance_;
+class PolicyFetchRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PolicyFetchRequest> _instance;
+} _PolicyFetchRequest_default_instance_;
+class DisabledStateDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DisabledState> _instance;
+} _DisabledState_default_instance_;
+class DeviceStateDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceState> _instance;
+} _DeviceState_default_instance_;
+class CustomerLogoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CustomerLogo> _instance;
+} _CustomerLogo_default_instance_;
+class PolicyDataDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PolicyData> _instance;
+} _PolicyData_default_instance_;
+class ClientActionRequiredDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ClientActionRequired> _instance;
+} _ClientActionRequired_default_instance_;
+class PolicyFetchResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PolicyFetchResponse> _instance;
+} _PolicyFetchResponse_default_instance_;
+class DEPRECATEDPolicyPublicKeyAndDomainDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DEPRECATEDPolicyPublicKeyAndDomain> _instance;
+} _DEPRECATEDPolicyPublicKeyAndDomain_default_instance_;
+class PublicKeyVerificationDataDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PublicKeyVerificationData> _instance;
+} _PublicKeyVerificationData_default_instance_;
+class DevicePolicyRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePolicyRequest> _instance;
+} _DevicePolicyRequest_default_instance_;
+class DevicePolicyResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePolicyResponse> _instance;
+} _DevicePolicyResponse_default_instance_;
+class TimePeriodDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<TimePeriod> _instance;
+} _TimePeriod_default_instance_;
+class ActiveTimePeriodDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ActiveTimePeriod> _instance;
+} _ActiveTimePeriod_default_instance_;
+class NetworkInterfaceDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<NetworkInterface> _instance;
+} _NetworkInterface_default_instance_;
+class NetworkStateDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<NetworkState> _instance;
+} _NetworkState_default_instance_;
+class DeviceUserDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceUser> _instance;
+} _DeviceUser_default_instance_;
+class VolumeInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<VolumeInfo> _instance;
+} _VolumeInfo_default_instance_;
+class CpuUtilizationInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CpuUtilizationInfo> _instance;
+} _CpuUtilizationInfo_default_instance_;
+class SystemFreeRamInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemFreeRamInfo> _instance;
+} _SystemFreeRamInfo_default_instance_;
+class CPUTempInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CPUTempInfo> _instance;
+} _CPUTempInfo_default_instance_;
+class StatefulPartitionInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StatefulPartitionInfo> _instance;
+} _StatefulPartitionInfo_default_instance_;
+class BatterySampleDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BatterySample> _instance;
+} _BatterySample_default_instance_;
+class BatteryInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BatteryInfo> _instance;
+} _BatteryInfo_default_instance_;
+class PowerStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PowerStatus> _instance;
+} _PowerStatus_default_instance_;
+class DiskLifetimeEstimationDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DiskLifetimeEstimation> _instance;
+} _DiskLifetimeEstimation_default_instance_;
+class DiskInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DiskInfo> _instance;
+  ::PROTOBUF_NAMESPACE_ID::uint32 nvme_subsystem_vendor_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 emmc_oemid_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 other_vendor_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 nvme_subsystem_device_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 emmc_pnm_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 other_product_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 nvme_hardware_rev_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 emmc_hardware_rev_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 other_hardware_rev_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 nvme_firmware_rev_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 emmc_firmware_rev_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 other_firmware_rev_;
+} _DiskInfo_default_instance_;
+class StorageStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StorageStatus> _instance;
+} _StorageStatus_default_instance_;
+class ThermalSampleDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ThermalSample> _instance;
+} _ThermalSample_default_instance_;
+class ThermalInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ThermalInfo> _instance;
+} _ThermalInfo_default_instance_;
+class BoardStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BoardStatus> _instance;
+} _BoardStatus_default_instance_;
+class SystemStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemStatus> _instance;
+} _SystemStatus_default_instance_;
+class CpuCStateInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CpuCStateInfo> _instance;
+} _CpuCStateInfo_default_instance_;
+class LogicalCpuInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LogicalCpuInfo> _instance;
+} _LogicalCpuInfo_default_instance_;
+class CpuInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CpuInfo> _instance;
+} _CpuInfo_default_instance_;
+class GlobalCpuInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<GlobalCpuInfo> _instance;
+} _GlobalCpuInfo_default_instance_;
+class DisplayInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DisplayInfo> _instance;
+} _DisplayInfo_default_instance_;
+class GraphicsAdapterInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<GraphicsAdapterInfo> _instance;
+} _GraphicsAdapterInfo_default_instance_;
+class GraphicsStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<GraphicsStatus> _instance;
+} _GraphicsStatus_default_instance_;
+class CrashReportInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CrashReportInfo> _instance;
+} _CrashReportInfo_default_instance_;
+class TimezoneInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<TimezoneInfo> _instance;
+} _TimezoneInfo_default_instance_;
+class MemoryInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<MemoryInfo> _instance;
+} _MemoryInfo_default_instance_;
+class BacklightInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BacklightInfo> _instance;
+} _BacklightInfo_default_instance_;
+class FanInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<FanInfo> _instance;
+} _FanInfo_default_instance_;
+class BluetoothAdapterInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BluetoothAdapterInfo> _instance;
+} _BluetoothAdapterInfo_default_instance_;
+class SmbiosInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SmbiosInfo> _instance;
+} _SmbiosInfo_default_instance_;
+class KernelParametersDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<KernelParameters> _instance;
+} _KernelParameters_default_instance_;
+class EFIVarsDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<EFIVars> _instance;
+} _EFIVars_default_instance_;
+class BootInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BootInfo> _instance;
+} _BootInfo_default_instance_;
+class NetworkAdapterInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<NetworkAdapterInfo> _instance;
+} _NetworkAdapterInfo_default_instance_;
+class LaCrOsBrowserReportDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LaCrOsBrowserReport> _instance;
+} _LaCrOsBrowserReport_default_instance_;
+class DeviceStatusReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceStatusReportRequest> _instance;
+} _DeviceStatusReportRequest_default_instance_;
+class OsUpdateStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OsUpdateStatus> _instance;
+} _OsUpdateStatus_default_instance_;
+class AppStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AppStatus> _instance;
+} _AppStatus_default_instance_;
+class AppInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AppInfo> _instance;
+} _AppInfo_default_instance_;
+class AndroidAppPermissionDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AndroidAppPermission> _instance;
+} _AndroidAppPermission_default_instance_;
+class AndroidAppInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AndroidAppInfo> _instance;
+} _AndroidAppInfo_default_instance_;
+class ChromeUserProfileReportDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeUserProfileReport> _instance;
+} _ChromeUserProfileReport_default_instance_;
+class ChromeSignedInUserDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeSignedInUser> _instance;
+} _ChromeSignedInUser_default_instance_;
+class ExtensionRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ExtensionRequest> _instance;
+} _ExtensionRequest_default_instance_;
+class ExtensionDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<Extension> _instance;
+} _Extension_default_instance_;
+class PluginDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<Plugin> _instance;
+} _Plugin_default_instance_;
+class PolicyDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<Policy> _instance;
+} _Policy_default_instance_;
+class ExtensionPolicyDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ExtensionPolicy> _instance;
+} _ExtensionPolicy_default_instance_;
+class PolicyFetchTimestampDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PolicyFetchTimestamp> _instance;
+} _PolicyFetchTimestamp_default_instance_;
+class ChromeUserProfileInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeUserProfileInfo> _instance;
+} _ChromeUserProfileInfo_default_instance_;
+class BrowserReportDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BrowserReport> _instance;
+} _BrowserReport_default_instance_;
+class OSReportDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<OSReport> _instance;
+} _OSReport_default_instance_;
+class ChromeDesktopReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeDesktopReportRequest> _instance;
+} _ChromeDesktopReportRequest_default_instance_;
+class ChromeOsUserReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeOsUserReportRequest> _instance;
+} _ChromeOsUserReportRequest_default_instance_;
+class ChromeProfileReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeProfileReportRequest> _instance;
+} _ChromeProfileReportRequest_default_instance_;
+class PolicyValueValidationIssueDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PolicyValueValidationIssue> _instance;
+} _PolicyValueValidationIssue_default_instance_;
+class PolicyValidationReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PolicyValidationReportRequest> _instance;
+} _PolicyValidationReportRequest_default_instance_;
+class PolicyValidationReportResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PolicyValidationReportResponse> _instance;
+} _PolicyValidationReportResponse_default_instance_;
+class AndroidStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AndroidStatus> _instance;
+} _AndroidStatus_default_instance_;
+class CrostiniAppDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CrostiniApp> _instance;
+} _CrostiniApp_default_instance_;
+class CrostiniStatusDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CrostiniStatus> _instance;
+} _CrostiniStatus_default_instance_;
+class SessionStatusReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SessionStatusReportRequest> _instance;
+} _SessionStatusReportRequest_default_instance_;
+class DeviceStatusReportResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceStatusReportResponse> _instance;
+} _DeviceStatusReportResponse_default_instance_;
+class ChromeDesktopReportResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeDesktopReportResponse> _instance;
+} _ChromeDesktopReportResponse_default_instance_;
+class ChromeOsUserReportResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeOsUserReportResponse> _instance;
+} _ChromeOsUserReportResponse_default_instance_;
+class ChromeProfileReportResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeProfileReportResponse> _instance;
+} _ChromeProfileReportResponse_default_instance_;
+class SessionStatusReportResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SessionStatusReportResponse> _instance;
+} _SessionStatusReportResponse_default_instance_;
+class PrivateSetMembershipRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateSetMembershipRequest> _instance;
+} _PrivateSetMembershipRequest_default_instance_;
+class PrivateSetMembershipResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateSetMembershipResponse> _instance;
+} _PrivateSetMembershipResponse_default_instance_;
+class PrivateSetMembershipRlweRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateSetMembershipRlweRequest> _instance;
+} _PrivateSetMembershipRlweRequest_default_instance_;
+class PrivateSetMembershipRlweResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateSetMembershipRlweResponse> _instance;
+} _PrivateSetMembershipRlweResponse_default_instance_;
+class DeviceAutoEnrollmentRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAutoEnrollmentRequest> _instance;
+} _DeviceAutoEnrollmentRequest_default_instance_;
+class DeviceAutoEnrollmentResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAutoEnrollmentResponse> _instance;
+} _DeviceAutoEnrollmentResponse_default_instance_;
+class DeviceStateRetrievalRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceStateRetrievalRequest> _instance;
+} _DeviceStateRetrievalRequest_default_instance_;
+class DeviceStateKeyUpdateRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceStateKeyUpdateRequest> _instance;
+} _DeviceStateKeyUpdateRequest_default_instance_;
+class DeviceStateRetrievalResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceStateRetrievalResponse> _instance;
+} _DeviceStateRetrievalResponse_default_instance_;
+class DeviceInitialEnrollmentStateRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceInitialEnrollmentStateRequest> _instance;
+} _DeviceInitialEnrollmentStateRequest_default_instance_;
+class DeviceInitialEnrollmentStateResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceInitialEnrollmentStateResponse> _instance;
+} _DeviceInitialEnrollmentStateResponse_default_instance_;
+class DevicePairingRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePairingRequest> _instance;
+} _DevicePairingRequest_default_instance_;
+class DevicePairingResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DevicePairingResponse> _instance;
+} _DevicePairingResponse_default_instance_;
+class CheckDevicePairingRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CheckDevicePairingRequest> _instance;
+} _CheckDevicePairingRequest_default_instance_;
+class CheckDevicePairingResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CheckDevicePairingResponse> _instance;
+} _CheckDevicePairingResponse_default_instance_;
+class RemoteCommandDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RemoteCommand> _instance;
+} _RemoteCommand_default_instance_;
+class RemoteCommandResultDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RemoteCommandResult> _instance;
+} _RemoteCommandResult_default_instance_;
+class DeviceRemoteCommandRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceRemoteCommandRequest> _instance;
+} _DeviceRemoteCommandRequest_default_instance_;
+class DeviceRemoteCommandResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceRemoteCommandResponse> _instance;
+} _DeviceRemoteCommandResponse_default_instance_;
+class DeviceAttributeUpdatePermissionRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAttributeUpdatePermissionRequest> _instance;
+} _DeviceAttributeUpdatePermissionRequest_default_instance_;
+class DeviceAttributeUpdatePermissionResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAttributeUpdatePermissionResponse> _instance;
+} _DeviceAttributeUpdatePermissionResponse_default_instance_;
+class DeviceAttributeUpdateRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAttributeUpdateRequest> _instance;
+} _DeviceAttributeUpdateRequest_default_instance_;
+class DeviceAttributeUpdateResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceAttributeUpdateResponse> _instance;
+} _DeviceAttributeUpdateResponse_default_instance_;
+class GcmIdUpdateRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<GcmIdUpdateRequest> _instance;
+} _GcmIdUpdateRequest_default_instance_;
+class GcmIdUpdateResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<GcmIdUpdateResponse> _instance;
+} _GcmIdUpdateResponse_default_instance_;
+class CheckAndroidManagementRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CheckAndroidManagementRequest> _instance;
+} _CheckAndroidManagementRequest_default_instance_;
+class CheckAndroidManagementResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CheckAndroidManagementResponse> _instance;
+} _CheckAndroidManagementResponse_default_instance_;
+class CertificateBasedDeviceRegisterRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CertificateBasedDeviceRegisterRequest> _instance;
+} _CertificateBasedDeviceRegisterRequest_default_instance_;
+class DeviceRegisterConfigurationDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceRegisterConfiguration> _instance;
+} _DeviceRegisterConfiguration_default_instance_;
+class CertificateBasedDeviceRegistrationDataDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CertificateBasedDeviceRegistrationData> _instance;
+} _CertificateBasedDeviceRegistrationData_default_instance_;
+class RegisterBrowserRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RegisterBrowserRequest> _instance;
+} _RegisterBrowserRequest_default_instance_;
+class ActiveDirectoryEnrollPlayUserRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ActiveDirectoryEnrollPlayUserRequest> _instance;
+} _ActiveDirectoryEnrollPlayUserRequest_default_instance_;
+class ActiveDirectoryEnrollPlayUserResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ActiveDirectoryEnrollPlayUserResponse> _instance;
+} _ActiveDirectoryEnrollPlayUserResponse_default_instance_;
+class SamlParametersProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SamlParametersProto> _instance;
+} _SamlParametersProto_default_instance_;
+class PublicSamlUserRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PublicSamlUserRequest> _instance;
+} _PublicSamlUserRequest_default_instance_;
+class PublicSamlUserResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PublicSamlUserResponse> _instance;
+} _PublicSamlUserResponse_default_instance_;
+class ActiveDirectoryPlayActivityRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ActiveDirectoryPlayActivityRequest> _instance;
+} _ActiveDirectoryPlayActivityRequest_default_instance_;
+class ActiveDirectoryPlayActivityResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ActiveDirectoryPlayActivityResponse> _instance;
+} _ActiveDirectoryPlayActivityResponse_default_instance_;
+class CheckDeviceLicenseRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CheckDeviceLicenseRequest> _instance;
+} _CheckDeviceLicenseRequest_default_instance_;
+class LicenseAvailabilityDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<LicenseAvailability> _instance;
+} _LicenseAvailability_default_instance_;
+class CheckDeviceLicenseResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<CheckDeviceLicenseResponse> _instance;
+} _CheckDeviceLicenseResponse_default_instance_;
+class ActiveDirectoryUserSigninRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ActiveDirectoryUserSigninRequest> _instance;
+} _ActiveDirectoryUserSigninRequest_default_instance_;
+class ActiveDirectoryUserSigninResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ActiveDirectoryUserSigninResponse> _instance;
+} _ActiveDirectoryUserSigninResponse_default_instance_;
+class TpmVersionInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<TpmVersionInfo> _instance;
+} _TpmVersionInfo_default_instance_;
+class TpmStatusInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<TpmStatusInfo> _instance;
+} _TpmStatusInfo_default_instance_;
+class TpmSupportedFeaturesDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<TpmSupportedFeatures> _instance;
+} _TpmSupportedFeatures_default_instance_;
+class SystemStateDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemState> _instance;
+} _SystemState_default_instance_;
+class ExtensionInstallReportLogEventDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ExtensionInstallReportLogEvent> _instance;
+} _ExtensionInstallReportLogEvent_default_instance_;
+class AppInstallReportLogEventDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AppInstallReportLogEvent> _instance;
+} _AppInstallReportLogEvent_default_instance_;
+class ExtensionInstallReportDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ExtensionInstallReport> _instance;
+} _ExtensionInstallReport_default_instance_;
+class AppInstallReportDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AppInstallReport> _instance;
+} _AppInstallReport_default_instance_;
+class AppInstallReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AppInstallReportRequest> _instance;
+} _AppInstallReportRequest_default_instance_;
+class ExtensionInstallReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ExtensionInstallReportRequest> _instance;
+} _ExtensionInstallReportRequest_default_instance_;
+class AppInstallReportResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AppInstallReportResponse> _instance;
+} _AppInstallReportResponse_default_instance_;
+class RefreshAccountRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RefreshAccountRequest> _instance;
+} _RefreshAccountRequest_default_instance_;
+class RefreshAccountResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RefreshAccountResponse> _instance;
+} _RefreshAccountResponse_default_instance_;
+class RsuLookupKeyUploadRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RsuLookupKeyUploadRequest> _instance;
+} _RsuLookupKeyUploadRequest_default_instance_;
+class RsuLookupKeyUploadResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RsuLookupKeyUploadResponse> _instance;
+} _RsuLookupKeyUploadResponse_default_instance_;
+class ESimProfileInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ESimProfileInfo> _instance;
+} _ESimProfileInfo_default_instance_;
+class UploadEuiccInfoRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UploadEuiccInfoRequest> _instance;
+} _UploadEuiccInfoRequest_default_instance_;
+class UploadEuiccInfoResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UploadEuiccInfoResponse> _instance;
+} _UploadEuiccInfoResponse_default_instance_;
+class PrintJobEvent_PrintJobConfigurationDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrintJobEvent_PrintJobConfiguration> _instance;
+} _PrintJobEvent_PrintJobConfiguration_default_instance_;
+class PrintJobEvent_PrinterDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrintJobEvent_Printer> _instance;
+} _PrintJobEvent_Printer_default_instance_;
+class PrintJobEvent_PrintSettings_MediaSizeDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrintJobEvent_PrintSettings_MediaSize> _instance;
+} _PrintJobEvent_PrintSettings_MediaSize_default_instance_;
+class PrintJobEvent_PrintSettingsDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrintJobEvent_PrintSettings> _instance;
+} _PrintJobEvent_PrintSettings_default_instance_;
+class PrintJobEventDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrintJobEvent> _instance;
+} _PrintJobEvent_default_instance_;
+class AppDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<App> _instance;
+} _App_default_instance_;
+class AppActivityDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<AppActivity> _instance;
+} _AppActivity_default_instance_;
+class ScreenTimeSpanDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ScreenTimeSpan> _instance;
+} _ScreenTimeSpan_default_instance_;
+class ChildStatusReportRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChildStatusReportRequest> _instance;
+} _ChildStatusReportRequest_default_instance_;
+class ChildStatusReportResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChildStatusReportResponse> _instance;
+} _ChildStatusReportResponse_default_instance_;
+class StartCsrRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StartCsrRequest> _instance;
+} _StartCsrRequest_default_instance_;
+class StartCsrResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StartCsrResponse> _instance;
+} _StartCsrResponse_default_instance_;
+class FinishCsrRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<FinishCsrRequest> _instance;
+} _FinishCsrRequest_default_instance_;
+class FinishCsrResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<FinishCsrResponse> _instance;
+} _FinishCsrResponse_default_instance_;
+class DownloadCertRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DownloadCertRequest> _instance;
+} _DownloadCertRequest_default_instance_;
+class DownloadCertResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DownloadCertResponse> _instance;
+} _DownloadCertResponse_default_instance_;
+class ClientCertificateProvisioningRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ClientCertificateProvisioningRequest> _instance;
+  const ::enterprise_management::StartCsrRequest* start_csr_request_;
+  const ::enterprise_management::FinishCsrRequest* finish_csr_request_;
+  const ::enterprise_management::DownloadCertRequest* download_cert_request_;
+} _ClientCertificateProvisioningRequest_default_instance_;
+class ClientCertificateProvisioningResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ClientCertificateProvisioningResponse> _instance;
+  int error_;
+  const ::enterprise_management::StartCsrResponse* start_csr_response_;
+  const ::enterprise_management::FinishCsrResponse* finish_csr_response_;
+  const ::enterprise_management::DownloadCertResponse* download_cert_response_;
+} _ClientCertificateProvisioningResponse_default_instance_;
+class BrowserPublicKeyUploadRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BrowserPublicKeyUploadRequest> _instance;
+} _BrowserPublicKeyUploadRequest_default_instance_;
+class BrowserPublicKeyUploadResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BrowserPublicKeyUploadResponse> _instance;
+} _BrowserPublicKeyUploadResponse_default_instance_;
+class DeviceManagementRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceManagementRequest> _instance;
+} _DeviceManagementRequest_default_instance_;
+class DeviceManagementResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceManagementResponse> _instance;
+} _DeviceManagementResponse_default_instance_;
+class DeviceStateRetrievalInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DeviceStateRetrievalInfo> _instance;
+} _DeviceStateRetrievalInfo_default_instance_;
+}  // namespace enterprise_management
+static void InitDefaultsscc_info_ActiveDirectoryEnrollPlayUserRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ActiveDirectoryEnrollPlayUserRequest_default_instance_;
+    new (ptr) ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryEnrollPlayUserRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ActiveDirectoryEnrollPlayUserRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ActiveDirectoryEnrollPlayUserResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ActiveDirectoryEnrollPlayUserResponse_default_instance_;
+    new (ptr) ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ActiveDirectoryEnrollPlayUserResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_ActiveDirectoryEnrollPlayUserResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_SamlParametersProto_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ActiveDirectoryPlayActivityRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ActiveDirectoryPlayActivityRequest_default_instance_;
+    new (ptr) ::enterprise_management::ActiveDirectoryPlayActivityRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ActiveDirectoryPlayActivityRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryPlayActivityRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ActiveDirectoryPlayActivityRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ActiveDirectoryPlayActivityResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ActiveDirectoryPlayActivityResponse_default_instance_;
+    new (ptr) ::enterprise_management::ActiveDirectoryPlayActivityResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ActiveDirectoryPlayActivityResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryPlayActivityResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ActiveDirectoryPlayActivityResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ActiveDirectoryUserSigninRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ActiveDirectoryUserSigninRequest_default_instance_;
+    new (ptr) ::enterprise_management::ActiveDirectoryUserSigninRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ActiveDirectoryUserSigninRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryUserSigninRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ActiveDirectoryUserSigninRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ActiveDirectoryUserSigninResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ActiveDirectoryUserSigninResponse_default_instance_;
+    new (ptr) ::enterprise_management::ActiveDirectoryUserSigninResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ActiveDirectoryUserSigninResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ActiveDirectoryUserSigninResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ActiveDirectoryUserSigninResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ActiveTimePeriod_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ActiveTimePeriod_default_instance_;
+    new (ptr) ::enterprise_management::ActiveTimePeriod();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ActiveTimePeriod::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ActiveTimePeriod_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_ActiveTimePeriod_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_AndroidAppInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AndroidAppInfo_default_instance_;
+    new (ptr) ::enterprise_management::AndroidAppInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AndroidAppInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AndroidAppInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_AndroidAppInfo_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_AndroidAppPermission_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_AndroidAppPermission_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AndroidAppPermission_default_instance_;
+    new (ptr) ::enterprise_management::AndroidAppPermission();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AndroidAppPermission::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AndroidAppPermission_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AndroidAppPermission_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_AndroidStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AndroidStatus_default_instance_;
+    new (ptr) ::enterprise_management::AndroidStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AndroidStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AndroidStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AndroidStatus_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_App_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_App_default_instance_;
+    new (ptr) ::enterprise_management::App();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::App::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_App_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_App_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_AppActivity_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AppActivity_default_instance_;
+    new (ptr) ::enterprise_management::AppActivity();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AppActivity::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_AppActivity_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_AppActivity_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_App_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_AppInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AppInfo_default_instance_;
+    new (ptr) ::enterprise_management::AppInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AppInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AppInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_AppInfo_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_AppInstallReport_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AppInstallReport_default_instance_;
+    new (ptr) ::enterprise_management::AppInstallReport();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AppInstallReport::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AppInstallReport_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_AppInstallReport_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_AppInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_AppInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AppInstallReportLogEvent_default_instance_;
+    new (ptr) ::enterprise_management::AppInstallReportLogEvent();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AppInstallReportLogEvent::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AppInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AppInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_AppInstallReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AppInstallReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::AppInstallReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AppInstallReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_AppInstallReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_AppInstallReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_AppInstallReport_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_AppInstallReportResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AppInstallReportResponse_default_instance_;
+    new (ptr) ::enterprise_management::AppInstallReportResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AppInstallReportResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AppInstallReportResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AppInstallReportResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_AppStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_AppStatus_default_instance_;
+    new (ptr) ::enterprise_management::AppStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::AppStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_AppStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_AppStatus_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_BacklightInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BacklightInfo_default_instance_;
+    new (ptr) ::enterprise_management::BacklightInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BacklightInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BacklightInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_BacklightInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_BatteryInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BatteryInfo_default_instance_;
+    new (ptr) ::enterprise_management::BatteryInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BatteryInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_BatteryInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_BatteryInfo_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_BatterySample_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_BatterySample_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BatterySample_default_instance_;
+    new (ptr) ::enterprise_management::BatterySample();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BatterySample::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BatterySample_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_BatterySample_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_BluetoothAdapterInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BluetoothAdapterInfo_default_instance_;
+    new (ptr) ::enterprise_management::BluetoothAdapterInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BluetoothAdapterInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BluetoothAdapterInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_BluetoothAdapterInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_BoardStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BoardStatus_default_instance_;
+    new (ptr) ::enterprise_management::BoardStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BoardStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_BoardStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_BoardStatus_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ThermalInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_BootInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BootInfo_default_instance_;
+    new (ptr) ::enterprise_management::BootInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BootInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BootInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_BootInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BrowserDeviceIdentifier_default_instance_;
+    new (ptr) ::enterprise_management::BrowserDeviceIdentifier();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BrowserDeviceIdentifier::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_BrowserPublicKeyUploadRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BrowserPublicKeyUploadRequest_default_instance_;
+    new (ptr) ::enterprise_management::BrowserPublicKeyUploadRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BrowserPublicKeyUploadRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BrowserPublicKeyUploadRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_BrowserPublicKeyUploadRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_BrowserPublicKeyUploadResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BrowserPublicKeyUploadResponse_default_instance_;
+    new (ptr) ::enterprise_management::BrowserPublicKeyUploadResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BrowserPublicKeyUploadResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_BrowserPublicKeyUploadResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_BrowserPublicKeyUploadResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BrowserReport_default_instance_;
+    new (ptr) ::enterprise_management::BrowserReport();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BrowserReport::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, 0, InitDefaultsscc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ChromeUserProfileReport_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChromeUserProfileInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_Plugin_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_CPUTempInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CPUTempInfo_default_instance_;
+    new (ptr) ::enterprise_management::CPUTempInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CPUTempInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CPUTempInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CPUTempInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CertificateBasedDeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CertificateBasedDeviceRegisterRequest_default_instance_;
+    new (ptr) ::enterprise_management::CertificateBasedDeviceRegisterRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CertificateBasedDeviceRegisterRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CertificateBasedDeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_CertificateBasedDeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_SignedData_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_CertificateBasedDeviceRegistrationData_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CertificateBasedDeviceRegistrationData_default_instance_;
+    new (ptr) ::enterprise_management::CertificateBasedDeviceRegistrationData();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CertificateBasedDeviceRegistrationData::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_CertificateBasedDeviceRegistrationData_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_CertificateBasedDeviceRegistrationData_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceRegisterConfiguration_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_CheckAndroidManagementRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CheckAndroidManagementRequest_default_instance_;
+    new (ptr) ::enterprise_management::CheckAndroidManagementRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CheckAndroidManagementRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckAndroidManagementRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CheckAndroidManagementRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CheckAndroidManagementResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CheckAndroidManagementResponse_default_instance_;
+    new (ptr) ::enterprise_management::CheckAndroidManagementResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CheckAndroidManagementResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckAndroidManagementResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CheckAndroidManagementResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CheckDeviceLicenseRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CheckDeviceLicenseRequest_default_instance_;
+    new (ptr) ::enterprise_management::CheckDeviceLicenseRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CheckDeviceLicenseRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckDeviceLicenseRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CheckDeviceLicenseRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CheckDeviceLicenseResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CheckDeviceLicenseResponse_default_instance_;
+    new (ptr) ::enterprise_management::CheckDeviceLicenseResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CheckDeviceLicenseResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CheckDeviceLicenseResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_CheckDeviceLicenseResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_LicenseAvailability_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_CheckDevicePairingRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CheckDevicePairingRequest_default_instance_;
+    new (ptr) ::enterprise_management::CheckDevicePairingRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CheckDevicePairingRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckDevicePairingRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CheckDevicePairingRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CheckDevicePairingResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CheckDevicePairingResponse_default_instance_;
+    new (ptr) ::enterprise_management::CheckDevicePairingResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CheckDevicePairingResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckDevicePairingResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CheckDevicePairingResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CheckUserAccountRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CheckUserAccountRequest_default_instance_;
+    new (ptr) ::enterprise_management::CheckUserAccountRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CheckUserAccountRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckUserAccountRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CheckUserAccountRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CheckUserAccountResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CheckUserAccountResponse_default_instance_;
+    new (ptr) ::enterprise_management::CheckUserAccountResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CheckUserAccountResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CheckUserAccountResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CheckUserAccountResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ChildStatusReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChildStatusReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::ChildStatusReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChildStatusReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<4> scc_info_ChildStatusReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 4, 0, InitDefaultsscc_info_ChildStatusReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ScreenTimeSpan_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_AndroidStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_AppActivity_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_App_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ChildStatusReportResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChildStatusReportResponse_default_instance_;
+    new (ptr) ::enterprise_management::ChildStatusReportResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChildStatusReportResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChildStatusReportResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ChildStatusReportResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ChromeDesktopReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeDesktopReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::ChromeDesktopReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeDesktopReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_ChromeDesktopReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, 0, InitDefaultsscc_info_ChromeDesktopReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_OSReport_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ChromeDesktopReportResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeDesktopReportResponse_default_instance_;
+    new (ptr) ::enterprise_management::ChromeDesktopReportResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeDesktopReportResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChromeDesktopReportResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ChromeDesktopReportResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ChromeOsUserReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeOsUserReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::ChromeOsUserReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeOsUserReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_ChromeOsUserReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_ChromeOsUserReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_AndroidAppInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ChromeOsUserReportResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeOsUserReportResponse_default_instance_;
+    new (ptr) ::enterprise_management::ChromeOsUserReportResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeOsUserReportResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChromeOsUserReportResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ChromeOsUserReportResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ChromeProfileReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeProfileReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::ChromeProfileReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeProfileReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_ChromeProfileReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_ChromeProfileReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_OSReport_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ChromeProfileReportResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeProfileReportResponse_default_instance_;
+    new (ptr) ::enterprise_management::ChromeProfileReportResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeProfileReportResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChromeProfileReportResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ChromeProfileReportResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ChromeSignedInUser_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeSignedInUser_default_instance_;
+    new (ptr) ::enterprise_management::ChromeSignedInUser();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeSignedInUser::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ChromeSignedInUser_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ChromeSignedInUser_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ChromeUserProfileInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeUserProfileInfo_default_instance_;
+    new (ptr) ::enterprise_management::ChromeUserProfileInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeUserProfileInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_ChromeUserProfileInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 6, 0, InitDefaultsscc_info_ChromeUserProfileInfo_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ChromeSignedInUser_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_Extension_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ExtensionRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_Policy_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ExtensionPolicy_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PolicyFetchTimestamp_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ChromeUserProfileReport_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ChromeUserProfileReport_default_instance_;
+    new (ptr) ::enterprise_management::ChromeUserProfileReport();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ChromeUserProfileReport::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ChromeUserProfileReport_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_ChromeUserProfileReport_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ExtensionRequest_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ClientActionRequired_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ClientActionRequired_default_instance_;
+    new (ptr) ::enterprise_management::ClientActionRequired();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ClientActionRequired::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ClientActionRequired_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ClientActionRequired_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ClientCertificateProvisioningRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ClientCertificateProvisioningRequest_default_instance_;
+    new (ptr) ::enterprise_management::ClientCertificateProvisioningRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ClientCertificateProvisioningRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_ClientCertificateProvisioningRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, 0, InitDefaultsscc_info_ClientCertificateProvisioningRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_StartCsrRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_FinishCsrRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DownloadCertRequest_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ClientCertificateProvisioningResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ClientCertificateProvisioningResponse_default_instance_;
+    new (ptr) ::enterprise_management::ClientCertificateProvisioningResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ClientCertificateProvisioningResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_ClientCertificateProvisioningResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, 0, InitDefaultsscc_info_ClientCertificateProvisioningResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_StartCsrResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_FinishCsrResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DownloadCertResponse_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_CpuCStateInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CpuCStateInfo_default_instance_;
+    new (ptr) ::enterprise_management::CpuCStateInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CpuCStateInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CpuCStateInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CpuCStateInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CpuInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CpuInfo_default_instance_;
+    new (ptr) ::enterprise_management::CpuInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CpuInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CpuInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_CpuInfo_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_LogicalCpuInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_CpuUtilizationInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CpuUtilizationInfo_default_instance_;
+    new (ptr) ::enterprise_management::CpuUtilizationInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CpuUtilizationInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CpuUtilizationInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CpuUtilizationInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CrashReportInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CrashReportInfo_default_instance_;
+    new (ptr) ::enterprise_management::CrashReportInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CrashReportInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CrashReportInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CrashReportInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CrostiniApp_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CrostiniApp_default_instance_;
+    new (ptr) ::enterprise_management::CrostiniApp();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CrostiniApp::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CrostiniApp_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CrostiniApp_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_CrostiniStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CrostiniStatus_default_instance_;
+    new (ptr) ::enterprise_management::CrostiniStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CrostiniStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CrostiniStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_CrostiniStatus_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_CrostiniApp_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_CustomerLogo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_CustomerLogo_default_instance_;
+    new (ptr) ::enterprise_management::CustomerLogo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::CustomerLogo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CustomerLogo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_CustomerLogo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DEPRECATEDPolicyPublicKeyAndDomain_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DEPRECATEDPolicyPublicKeyAndDomain_default_instance_;
+    new (ptr) ::enterprise_management::DEPRECATEDPolicyPublicKeyAndDomain();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DEPRECATEDPolicyPublicKeyAndDomain::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DEPRECATEDPolicyPublicKeyAndDomain_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DEPRECATEDPolicyPublicKeyAndDomain_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAttributeUpdatePermissionRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAttributeUpdatePermissionRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAttributeUpdatePermissionRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAttributeUpdatePermissionRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAttributeUpdatePermissionRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAttributeUpdatePermissionRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAttributeUpdatePermissionResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAttributeUpdatePermissionResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAttributeUpdatePermissionResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAttributeUpdatePermissionResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAttributeUpdatePermissionResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAttributeUpdatePermissionResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAttributeUpdateRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAttributeUpdateRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAttributeUpdateRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAttributeUpdateRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAttributeUpdateRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAttributeUpdateRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAttributeUpdateResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAttributeUpdateResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAttributeUpdateResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAttributeUpdateResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAttributeUpdateResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAttributeUpdateResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAutoEnrollmentRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAutoEnrollmentRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAutoEnrollmentRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAutoEnrollmentRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAutoEnrollmentRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAutoEnrollmentRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceAutoEnrollmentResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceAutoEnrollmentResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceAutoEnrollmentResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceAutoEnrollmentResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceAutoEnrollmentResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceAutoEnrollmentResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceCertUploadRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceCertUploadRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceCertUploadRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceCertUploadRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceCertUploadRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceCertUploadRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceCertUploadResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceCertUploadResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceCertUploadResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceCertUploadResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceCertUploadResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceCertUploadResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceInitialEnrollmentStateRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceInitialEnrollmentStateRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceInitialEnrollmentStateRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceInitialEnrollmentStateRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceInitialEnrollmentStateRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceInitialEnrollmentStateRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceInitialEnrollmentStateResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceInitialEnrollmentStateResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceInitialEnrollmentStateResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceInitialEnrollmentStateResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_DeviceInitialEnrollmentStateResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DisabledState_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceManagementRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceManagementRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceManagementRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceManagementRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<39> scc_info_DeviceManagementRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 39, 0, InitDefaultsscc_info_DeviceManagementRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceUnregisterRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DevicePolicyRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_SessionStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChildStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceAutoEnrollmentRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceCertUploadRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceServiceApiAccessRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceStateRetrievalRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceStateKeyUpdateRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DevicePairingRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CheckDevicePairingRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceRemoteCommandRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceAttributeUpdatePermissionRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceAttributeUpdateRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_GcmIdUpdateRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CheckAndroidManagementRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CertificateBasedDeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ActiveDirectoryEnrollPlayUserRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ActiveDirectoryPlayActivityRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CheckDeviceLicenseRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ActiveDirectoryUserSigninRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_RegisterBrowserRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_AppInstallReportRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChromeDesktopReportRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PolicyValidationReportRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceInitialEnrollmentStateRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_RefreshAccountRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_RsuLookupKeyUploadRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PublicSamlUserRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChromeOsUserReportRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ClientCertificateProvisioningRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ExtensionInstallReportRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CheckUserAccountRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PrivateSetMembershipRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_BrowserPublicKeyUploadRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_UploadEuiccInfoRequest_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChromeProfileReportRequest_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceManagementResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceManagementResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceManagementResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceManagementResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<35> scc_info_DeviceManagementResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 35, 0, InitDefaultsscc_info_DeviceManagementResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DeviceRegisterResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceUnregisterResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DevicePolicyResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_SessionStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChildStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceAutoEnrollmentResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceCertUploadResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceServiceApiAccessResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceStateRetrievalResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DevicePairingResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CheckDevicePairingResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceRemoteCommandResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceAttributeUpdatePermissionResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceAttributeUpdateResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_GcmIdUpdateResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CheckAndroidManagementResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ActiveDirectoryEnrollPlayUserResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ActiveDirectoryPlayActivityResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CheckDeviceLicenseResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ActiveDirectoryUserSigninResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChromeDesktopReportResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_AppInstallReportResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PolicyValidationReportResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceInitialEnrollmentStateResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_RefreshAccountResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_RsuLookupKeyUploadResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PublicSamlUserResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChromeOsUserReportResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ClientCertificateProvisioningResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CheckUserAccountResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PrivateSetMembershipResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_BrowserPublicKeyUploadResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_UploadEuiccInfoResponse_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ChromeProfileReportResponse_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DevicePairingRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePairingRequest_default_instance_;
+    new (ptr) ::enterprise_management::DevicePairingRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePairingRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePairingRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePairingRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePairingResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePairingResponse_default_instance_;
+    new (ptr) ::enterprise_management::DevicePairingResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePairingResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DevicePairingResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DevicePairingResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DevicePolicyRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePolicyRequest_default_instance_;
+    new (ptr) ::enterprise_management::DevicePolicyRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePolicyRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DevicePolicyRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_DevicePolicyRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PolicyFetchRequest_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DevicePolicyResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DevicePolicyResponse_default_instance_;
+    new (ptr) ::enterprise_management::DevicePolicyResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DevicePolicyResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DevicePolicyResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_DevicePolicyResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PolicyFetchResponse_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceRegisterConfiguration_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceRegisterConfiguration_default_instance_;
+    new (ptr) ::enterprise_management::DeviceRegisterConfiguration();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceRegisterConfiguration::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRegisterConfiguration_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceRegisterConfiguration_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceRegisterIdentification_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceRegisterIdentification_default_instance_;
+    new (ptr) ::enterprise_management::DeviceRegisterIdentification();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceRegisterIdentification::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRegisterIdentification_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceRegisterIdentification_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceRegisterRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceRegisterRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceRegisterRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_DeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_DeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_LicenseType_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceRegisterIdentification_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceRegisterResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceRegisterResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceRegisterResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceRegisterResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceRegisterResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceRegisterResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceRemoteCommandRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceRemoteCommandRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceRemoteCommandRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceRemoteCommandRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceRemoteCommandRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_DeviceRemoteCommandRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_RemoteCommandResult_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceRemoteCommandResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceRemoteCommandResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceRemoteCommandResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceRemoteCommandResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_DeviceRemoteCommandResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_DeviceRemoteCommandResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_RemoteCommand_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_SignedData_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceServiceApiAccessRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceServiceApiAccessRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceServiceApiAccessRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceServiceApiAccessRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceServiceApiAccessRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceServiceApiAccessRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceServiceApiAccessResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceServiceApiAccessResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceServiceApiAccessResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceServiceApiAccessResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceServiceApiAccessResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceServiceApiAccessResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceState_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceState_default_instance_;
+    new (ptr) ::enterprise_management::DeviceState();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceState::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DeviceState_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_DeviceState_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DisabledState_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceStateKeyUpdateRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceStateKeyUpdateRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceStateKeyUpdateRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceStateKeyUpdateRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceStateKeyUpdateRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceStateKeyUpdateRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceStateRetrievalInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceStateRetrievalInfo_default_instance_;
+    new (ptr) ::enterprise_management::DeviceStateRetrievalInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceStateRetrievalInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceStateRetrievalInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceStateRetrievalInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceStateRetrievalRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceStateRetrievalRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceStateRetrievalRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceStateRetrievalRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceStateRetrievalRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceStateRetrievalRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceStateRetrievalResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceStateRetrievalResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceStateRetrievalResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceStateRetrievalResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_DeviceStateRetrievalResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_DeviceStateRetrievalResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DisabledState_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceInitialEnrollmentStateResponse_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceStatusReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceStatusReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceStatusReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceStatusReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<32> scc_info_DeviceStatusReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 32, 0, InitDefaultsscc_info_DeviceStatusReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ActiveTimePeriod_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_NetworkInterface_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DeviceUser_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_VolumeInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_NetworkState_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CPUTempInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_OsUpdateStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_AppStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_TpmVersionInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_TpmStatusInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PowerStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_StorageStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_BoardStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_SystemStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_StatefulPartitionInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CpuUtilizationInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_SystemFreeRamInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CpuInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_GraphicsStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CrashReportInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_TimezoneInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_MemoryInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_BacklightInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_FanInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_GlobalCpuInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_BluetoothAdapterInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_SmbiosInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_KernelParameters_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_EFIVars_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_BootInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_NetworkAdapterInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_LaCrOsBrowserReport_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_DeviceStatusReportResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceStatusReportResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceStatusReportResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceStatusReportResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceStatusReportResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceStatusReportResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceUnregisterRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceUnregisterRequest_default_instance_;
+    new (ptr) ::enterprise_management::DeviceUnregisterRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceUnregisterRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUnregisterRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceUnregisterRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceUnregisterResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceUnregisterResponse_default_instance_;
+    new (ptr) ::enterprise_management::DeviceUnregisterResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceUnregisterResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUnregisterResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceUnregisterResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DeviceUser_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DeviceUser_default_instance_;
+    new (ptr) ::enterprise_management::DeviceUser();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DeviceUser::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DeviceUser_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DeviceUser_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DisabledState_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DisabledState_default_instance_;
+    new (ptr) ::enterprise_management::DisabledState();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DisabledState::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DisabledState_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DisabledState_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DiskInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DiskInfo_default_instance_;
+    new (ptr) ::enterprise_management::DiskInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DiskInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DiskInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DiskInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DiskLifetimeEstimation_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DiskLifetimeEstimation_default_instance_;
+    new (ptr) ::enterprise_management::DiskLifetimeEstimation();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DiskLifetimeEstimation::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DiskLifetimeEstimation_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DiskLifetimeEstimation_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DisplayInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DisplayInfo_default_instance_;
+    new (ptr) ::enterprise_management::DisplayInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DisplayInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DisplayInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DisplayInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DownloadCertRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DownloadCertRequest_default_instance_;
+    new (ptr) ::enterprise_management::DownloadCertRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DownloadCertRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DownloadCertRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DownloadCertRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_DownloadCertResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_DownloadCertResponse_default_instance_;
+    new (ptr) ::enterprise_management::DownloadCertResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::DownloadCertResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DownloadCertResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DownloadCertResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_EFIVars_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_EFIVars_default_instance_;
+    new (ptr) ::enterprise_management::EFIVars();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::EFIVars::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EFIVars_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_EFIVars_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ESimProfileInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ESimProfileInfo_default_instance_;
+    new (ptr) ::enterprise_management::ESimProfileInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ESimProfileInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ESimProfileInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ESimProfileInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_Extension_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_Extension_default_instance_;
+    new (ptr) ::enterprise_management::Extension();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::Extension::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Extension_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_Extension_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ExtensionInstallReport_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ExtensionInstallReport_default_instance_;
+    new (ptr) ::enterprise_management::ExtensionInstallReport();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ExtensionInstallReport::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionInstallReport_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_ExtensionInstallReport_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ExtensionInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ExtensionInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ExtensionInstallReportLogEvent_default_instance_;
+    new (ptr) ::enterprise_management::ExtensionInstallReportLogEvent();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ExtensionInstallReportLogEvent::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ExtensionInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ExtensionInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ExtensionInstallReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ExtensionInstallReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::ExtensionInstallReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ExtensionInstallReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionInstallReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_ExtensionInstallReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ExtensionInstallReport_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ExtensionPolicy_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ExtensionPolicy_default_instance_;
+    new (ptr) ::enterprise_management::ExtensionPolicy();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ExtensionPolicy::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionPolicy_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_ExtensionPolicy_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_Policy_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ExtensionRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ExtensionRequest_default_instance_;
+    new (ptr) ::enterprise_management::ExtensionRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ExtensionRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ExtensionRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ExtensionRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_FanInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_FanInfo_default_instance_;
+    new (ptr) ::enterprise_management::FanInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::FanInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FanInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_FanInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_FinishCsrRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_FinishCsrRequest_default_instance_;
+    new (ptr) ::enterprise_management::FinishCsrRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::FinishCsrRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FinishCsrRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_FinishCsrRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_FinishCsrResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_FinishCsrResponse_default_instance_;
+    new (ptr) ::enterprise_management::FinishCsrResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::FinishCsrResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FinishCsrResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_FinishCsrResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_GcmIdUpdateRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_GcmIdUpdateRequest_default_instance_;
+    new (ptr) ::enterprise_management::GcmIdUpdateRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::GcmIdUpdateRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GcmIdUpdateRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_GcmIdUpdateRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_GcmIdUpdateResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_GcmIdUpdateResponse_default_instance_;
+    new (ptr) ::enterprise_management::GcmIdUpdateResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::GcmIdUpdateResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GcmIdUpdateResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_GcmIdUpdateResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_GlobalCpuInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_GlobalCpuInfo_default_instance_;
+    new (ptr) ::enterprise_management::GlobalCpuInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::GlobalCpuInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GlobalCpuInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_GlobalCpuInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_GraphicsAdapterInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_GraphicsAdapterInfo_default_instance_;
+    new (ptr) ::enterprise_management::GraphicsAdapterInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::GraphicsAdapterInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GraphicsAdapterInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_GraphicsAdapterInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_GraphicsStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_GraphicsStatus_default_instance_;
+    new (ptr) ::enterprise_management::GraphicsStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::GraphicsStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_GraphicsStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_GraphicsStatus_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_GraphicsAdapterInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DisplayInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_KernelParameters_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_KernelParameters_default_instance_;
+    new (ptr) ::enterprise_management::KernelParameters();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::KernelParameters::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_KernelParameters_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_KernelParameters_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_LaCrOsBrowserReport_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LaCrOsBrowserReport_default_instance_;
+    new (ptr) ::enterprise_management::LaCrOsBrowserReport();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LaCrOsBrowserReport::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_LaCrOsBrowserReport_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_LaCrOsBrowserReport_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DeviceUser_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_LicenseAvailability_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LicenseAvailability_default_instance_;
+    new (ptr) ::enterprise_management::LicenseAvailability();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LicenseAvailability::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_LicenseAvailability_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_LicenseAvailability_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_LicenseType_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_LicenseType_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LicenseType_default_instance_;
+    new (ptr) ::enterprise_management::LicenseType();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LicenseType::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_LicenseType_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_LicenseType_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_LogicalCpuInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_LogicalCpuInfo_default_instance_;
+    new (ptr) ::enterprise_management::LogicalCpuInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::LogicalCpuInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_LogicalCpuInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_LogicalCpuInfo_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_CpuCStateInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_MemoryInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_MemoryInfo_default_instance_;
+    new (ptr) ::enterprise_management::MemoryInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::MemoryInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_MemoryInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_MemoryInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_NetworkAdapterInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_NetworkAdapterInfo_default_instance_;
+    new (ptr) ::enterprise_management::NetworkAdapterInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::NetworkAdapterInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkAdapterInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_NetworkAdapterInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_NetworkInterface_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_NetworkInterface_default_instance_;
+    new (ptr) ::enterprise_management::NetworkInterface();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::NetworkInterface::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkInterface_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_NetworkInterface_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_NetworkState_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_NetworkState_default_instance_;
+    new (ptr) ::enterprise_management::NetworkState();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::NetworkState::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_NetworkState_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_NetworkState_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_OSReport_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OSReport_default_instance_;
+    new (ptr) ::enterprise_management::OSReport();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OSReport::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OSReport_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OSReport_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_OsUpdateStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_OsUpdateStatus_default_instance_;
+    new (ptr) ::enterprise_management::OsUpdateStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::OsUpdateStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_OsUpdateStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_OsUpdateStatus_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_Plugin_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_Plugin_default_instance_;
+    new (ptr) ::enterprise_management::Plugin();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::Plugin::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Plugin_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_Plugin_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_Policy_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_Policy_default_instance_;
+    new (ptr) ::enterprise_management::Policy();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::Policy::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Policy_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_Policy_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PolicyData_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PolicyData_default_instance_;
+    new (ptr) ::enterprise_management::PolicyData();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PolicyData::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_PolicyData_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, 0, InitDefaultsscc_info_PolicyData_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DeviceState_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CustomerLogo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_ClientActionRequired_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PolicyFetchRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PolicyFetchRequest_default_instance_;
+    new (ptr) ::enterprise_management::PolicyFetchRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PolicyFetchRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PolicyFetchRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PolicyFetchRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PolicyFetchResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PolicyFetchResponse_default_instance_;
+    new (ptr) ::enterprise_management::PolicyFetchResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PolicyFetchResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyFetchResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PolicyFetchResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PolicyFetchTimestamp_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PolicyFetchTimestamp_default_instance_;
+    new (ptr) ::enterprise_management::PolicyFetchTimestamp();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PolicyFetchTimestamp::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyFetchTimestamp_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PolicyFetchTimestamp_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PolicyValidationReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PolicyValidationReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::PolicyValidationReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PolicyValidationReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PolicyValidationReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PolicyValidationReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PolicyValueValidationIssue_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PolicyValidationReportResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PolicyValidationReportResponse_default_instance_;
+    new (ptr) ::enterprise_management::PolicyValidationReportResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PolicyValidationReportResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyValidationReportResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PolicyValidationReportResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PolicyValueValidationIssue_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PolicyValueValidationIssue_default_instance_;
+    new (ptr) ::enterprise_management::PolicyValueValidationIssue();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PolicyValueValidationIssue::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyValueValidationIssue_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PolicyValueValidationIssue_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PowerStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PowerStatus_default_instance_;
+    new (ptr) ::enterprise_management::PowerStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PowerStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PowerStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PowerStatus_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_BatteryInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrintJobEvent_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrintJobEvent_default_instance_;
+    new (ptr) ::enterprise_management::PrintJobEvent();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrintJobEvent::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_PrintJobEvent_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_PrintJobEvent_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PrintJobEvent_PrintJobConfiguration_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_PrintJobEvent_Printer_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrintJobEvent_PrintJobConfiguration_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrintJobEvent_PrintJobConfiguration_default_instance_;
+    new (ptr) ::enterprise_management::PrintJobEvent_PrintJobConfiguration();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrintJobEvent_PrintJobConfiguration::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrintJobEvent_PrintJobConfiguration_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PrintJobEvent_PrintJobConfiguration_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PrintJobEvent_PrintSettings_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrintJobEvent_PrintSettings_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrintJobEvent_PrintSettings_default_instance_;
+    new (ptr) ::enterprise_management::PrintJobEvent_PrintSettings();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrintJobEvent_PrintSettings::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrintJobEvent_PrintSettings_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PrintJobEvent_PrintSettings_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PrintJobEvent_PrintSettings_MediaSize_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrintJobEvent_PrintSettings_MediaSize_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrintJobEvent_PrintSettings_MediaSize_default_instance_;
+    new (ptr) ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PrintJobEvent_PrintSettings_MediaSize_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PrintJobEvent_PrintSettings_MediaSize_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PrintJobEvent_Printer_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrintJobEvent_Printer_default_instance_;
+    new (ptr) ::enterprise_management::PrintJobEvent_Printer();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrintJobEvent_Printer::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PrintJobEvent_Printer_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PrintJobEvent_Printer_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PrivateSetMembershipRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrivateSetMembershipRequest_default_instance_;
+    new (ptr) ::enterprise_management::PrivateSetMembershipRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrivateSetMembershipRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateSetMembershipRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PrivateSetMembershipRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PrivateSetMembershipRlweRequest_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrivateSetMembershipResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrivateSetMembershipResponse_default_instance_;
+    new (ptr) ::enterprise_management::PrivateSetMembershipResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrivateSetMembershipResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateSetMembershipResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PrivateSetMembershipResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PrivateSetMembershipRlweResponse_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrivateSetMembershipRlweRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrivateSetMembershipRlweRequest_default_instance_;
+    new (ptr) ::enterprise_management::PrivateSetMembershipRlweRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrivateSetMembershipRlweRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_PrivateSetMembershipRlweRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_PrivateSetMembershipRlweRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PrivateMembershipRlweOprfRequest_private_5fmembership_5frlwe_2eproto.base,
+      &scc_info_PrivateMembershipRlweQueryRequest_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrivateSetMembershipRlweResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PrivateSetMembershipRlweResponse_default_instance_;
+    new (ptr) ::enterprise_management::PrivateSetMembershipRlweResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PrivateSetMembershipRlweResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_PrivateSetMembershipRlweResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_PrivateSetMembershipRlweResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_PrivateMembershipRlweOprfResponse_private_5fmembership_5frlwe_2eproto.base,
+      &scc_info_PrivateMembershipRlweQueryResponse_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_PublicKeyVerificationData_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PublicKeyVerificationData_default_instance_;
+    new (ptr) ::enterprise_management::PublicKeyVerificationData();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PublicKeyVerificationData::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PublicKeyVerificationData_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PublicKeyVerificationData_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PublicSamlUserRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PublicSamlUserRequest_default_instance_;
+    new (ptr) ::enterprise_management::PublicSamlUserRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PublicSamlUserRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PublicSamlUserRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PublicSamlUserRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_PublicSamlUserResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PublicSamlUserResponse_default_instance_;
+    new (ptr) ::enterprise_management::PublicSamlUserResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PublicSamlUserResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PublicSamlUserResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PublicSamlUserResponse_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_SamlParametersProto_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_RefreshAccountRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RefreshAccountRequest_default_instance_;
+    new (ptr) ::enterprise_management::RefreshAccountRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RefreshAccountRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RefreshAccountRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RefreshAccountRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_RefreshAccountResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RefreshAccountResponse_default_instance_;
+    new (ptr) ::enterprise_management::RefreshAccountResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RefreshAccountResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RefreshAccountResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RefreshAccountResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_RegisterBrowserRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RegisterBrowserRequest_default_instance_;
+    new (ptr) ::enterprise_management::RegisterBrowserRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RegisterBrowserRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_RegisterBrowserRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_RegisterBrowserRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_RemoteCommand_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RemoteCommand_default_instance_;
+    new (ptr) ::enterprise_management::RemoteCommand();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RemoteCommand::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RemoteCommand_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RemoteCommand_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_RemoteCommandResult_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RemoteCommandResult_default_instance_;
+    new (ptr) ::enterprise_management::RemoteCommandResult();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RemoteCommandResult::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RemoteCommandResult_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RemoteCommandResult_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_RsuLookupKeyUploadRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RsuLookupKeyUploadRequest_default_instance_;
+    new (ptr) ::enterprise_management::RsuLookupKeyUploadRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RsuLookupKeyUploadRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RsuLookupKeyUploadRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RsuLookupKeyUploadRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_RsuLookupKeyUploadResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_RsuLookupKeyUploadResponse_default_instance_;
+    new (ptr) ::enterprise_management::RsuLookupKeyUploadResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::RsuLookupKeyUploadResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RsuLookupKeyUploadResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RsuLookupKeyUploadResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_SamlParametersProto_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SamlParametersProto_default_instance_;
+    new (ptr) ::enterprise_management::SamlParametersProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SamlParametersProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SamlParametersProto_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SamlParametersProto_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ScreenTimeSpan_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ScreenTimeSpan_default_instance_;
+    new (ptr) ::enterprise_management::ScreenTimeSpan();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ScreenTimeSpan::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ScreenTimeSpan_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_ScreenTimeSpan_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_SessionStatusReportRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SessionStatusReportRequest_default_instance_;
+    new (ptr) ::enterprise_management::SessionStatusReportRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SessionStatusReportRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<4> scc_info_SessionStatusReportRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 4, 0, InitDefaultsscc_info_SessionStatusReportRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_AppStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_AndroidStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_CrostiniStatus_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_AppInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_SessionStatusReportResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SessionStatusReportResponse_default_instance_;
+    new (ptr) ::enterprise_management::SessionStatusReportResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SessionStatusReportResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SessionStatusReportResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SessionStatusReportResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_SignedData_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SignedData_default_instance_;
+    new (ptr) ::enterprise_management::SignedData();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SignedData::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SignedData_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SignedData_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_SmbiosInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SmbiosInfo_default_instance_;
+    new (ptr) ::enterprise_management::SmbiosInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SmbiosInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SmbiosInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SmbiosInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_StartCsrRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_StartCsrRequest_default_instance_;
+    new (ptr) ::enterprise_management::StartCsrRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::StartCsrRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StartCsrRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_StartCsrRequest_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_StartCsrResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_StartCsrResponse_default_instance_;
+    new (ptr) ::enterprise_management::StartCsrResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::StartCsrResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StartCsrResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_StartCsrResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_StatefulPartitionInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_StatefulPartitionInfo_default_instance_;
+    new (ptr) ::enterprise_management::StatefulPartitionInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::StatefulPartitionInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StatefulPartitionInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_StatefulPartitionInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_StorageStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_StorageStatus_default_instance_;
+    new (ptr) ::enterprise_management::StorageStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::StorageStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_StorageStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_StorageStatus_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_DiskInfo_device_5fmanagement_5fbackend_2eproto.base,
+      &scc_info_DiskLifetimeEstimation_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemFreeRamInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SystemFreeRamInfo_default_instance_;
+    new (ptr) ::enterprise_management::SystemFreeRamInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SystemFreeRamInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemFreeRamInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemFreeRamInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemState_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SystemState_default_instance_;
+    new (ptr) ::enterprise_management::SystemState();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SystemState::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemState_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SystemState_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_VolumeInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemStatus_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_SystemStatus_default_instance_;
+    new (ptr) ::enterprise_management::SystemStatus();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::SystemStatus::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemStatus_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemStatus_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_ThermalInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ThermalInfo_default_instance_;
+    new (ptr) ::enterprise_management::ThermalInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ThermalInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ThermalInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_ThermalInfo_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ThermalSample_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_ThermalSample_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_ThermalSample_default_instance_;
+    new (ptr) ::enterprise_management::ThermalSample();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::ThermalSample::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ThermalSample_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_ThermalSample_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_TimePeriod_default_instance_;
+    new (ptr) ::enterprise_management::TimePeriod();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::TimePeriod::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_TimezoneInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_TimezoneInfo_default_instance_;
+    new (ptr) ::enterprise_management::TimezoneInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::TimezoneInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TimezoneInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_TimezoneInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_TpmStatusInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_TpmStatusInfo_default_instance_;
+    new (ptr) ::enterprise_management::TpmStatusInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::TpmStatusInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_TpmStatusInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_TpmStatusInfo_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_TpmSupportedFeatures_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_TpmSupportedFeatures_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_TpmSupportedFeatures_default_instance_;
+    new (ptr) ::enterprise_management::TpmSupportedFeatures();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::TpmSupportedFeatures::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TpmSupportedFeatures_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_TpmSupportedFeatures_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_TpmVersionInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_TpmVersionInfo_default_instance_;
+    new (ptr) ::enterprise_management::TpmVersionInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::TpmVersionInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_TpmVersionInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_TpmVersionInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_UploadEuiccInfoRequest_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UploadEuiccInfoRequest_default_instance_;
+    new (ptr) ::enterprise_management::UploadEuiccInfoRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UploadEuiccInfoRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UploadEuiccInfoRequest_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_UploadEuiccInfoRequest_device_5fmanagement_5fbackend_2eproto}, {
+      &scc_info_ESimProfileInfo_device_5fmanagement_5fbackend_2eproto.base,}};
+
+static void InitDefaultsscc_info_UploadEuiccInfoResponse_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_UploadEuiccInfoResponse_default_instance_;
+    new (ptr) ::enterprise_management::UploadEuiccInfoResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::UploadEuiccInfoResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UploadEuiccInfoResponse_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_UploadEuiccInfoResponse_device_5fmanagement_5fbackend_2eproto}, {}};
+
+static void InitDefaultsscc_info_VolumeInfo_device_5fmanagement_5fbackend_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_VolumeInfo_default_instance_;
+    new (ptr) ::enterprise_management::VolumeInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::VolumeInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_VolumeInfo_device_5fmanagement_5fbackend_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_VolumeInfo_device_5fmanagement_5fbackend_2eproto}, {}};
+
+namespace enterprise_management {
+bool LicenseType_LicenseTypeEnum_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> LicenseType_LicenseTypeEnum_strings[4] = {};
+
+static const char LicenseType_LicenseTypeEnum_names[] =
+  "CDM_ANNUAL"
+  "CDM_PERPETUAL"
+  "KIOSK"
+  "UNDEFINED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry LicenseType_LicenseTypeEnum_entries[] = {
+  { {LicenseType_LicenseTypeEnum_names + 0, 10}, 2 },
+  { {LicenseType_LicenseTypeEnum_names + 10, 13}, 1 },
+  { {LicenseType_LicenseTypeEnum_names + 23, 5}, 3 },
+  { {LicenseType_LicenseTypeEnum_names + 28, 9}, 0 },
+};
+
+static const int LicenseType_LicenseTypeEnum_entries_by_number[] = {
+  3, // 0 -> UNDEFINED
+  1, // 1 -> CDM_PERPETUAL
+  0, // 2 -> CDM_ANNUAL
+  2, // 3 -> KIOSK
+};
+
+const std::string& LicenseType_LicenseTypeEnum_Name(
+    LicenseType_LicenseTypeEnum value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          LicenseType_LicenseTypeEnum_entries,
+          LicenseType_LicenseTypeEnum_entries_by_number,
+          4, LicenseType_LicenseTypeEnum_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      LicenseType_LicenseTypeEnum_entries,
+      LicenseType_LicenseTypeEnum_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     LicenseType_LicenseTypeEnum_strings[idx].get();
+}
+bool LicenseType_LicenseTypeEnum_Parse(
+    const std::string& name, LicenseType_LicenseTypeEnum* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      LicenseType_LicenseTypeEnum_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<LicenseType_LicenseTypeEnum>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr LicenseType_LicenseTypeEnum LicenseType::UNDEFINED;
+constexpr LicenseType_LicenseTypeEnum LicenseType::CDM_PERPETUAL;
+constexpr LicenseType_LicenseTypeEnum LicenseType::CDM_ANNUAL;
+constexpr LicenseType_LicenseTypeEnum LicenseType::KIOSK;
+constexpr LicenseType_LicenseTypeEnum LicenseType::LicenseTypeEnum_MIN;
+constexpr LicenseType_LicenseTypeEnum LicenseType::LicenseTypeEnum_MAX;
+constexpr int LicenseType::LicenseTypeEnum_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceRegisterRequest_Type_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 6:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceRegisterRequest_Type_strings[6] = {};
+
+static const char DeviceRegisterRequest_Type_names[] =
+  "ANDROID_BROWSER"
+  "BROWSER"
+  "DEVICE"
+  "IOS_BROWSER"
+  "TT"
+  "USER";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceRegisterRequest_Type_entries[] = {
+  { {DeviceRegisterRequest_Type_names + 0, 15}, 4 },
+  { {DeviceRegisterRequest_Type_names + 15, 7}, 3 },
+  { {DeviceRegisterRequest_Type_names + 22, 6}, 2 },
+  { {DeviceRegisterRequest_Type_names + 28, 11}, 6 },
+  { {DeviceRegisterRequest_Type_names + 39, 2}, 0 },
+  { {DeviceRegisterRequest_Type_names + 41, 4}, 1 },
+};
+
+static const int DeviceRegisterRequest_Type_entries_by_number[] = {
+  4, // 0 -> TT
+  5, // 1 -> USER
+  2, // 2 -> DEVICE
+  1, // 3 -> BROWSER
+  0, // 4 -> ANDROID_BROWSER
+  3, // 6 -> IOS_BROWSER
+};
+
+const std::string& DeviceRegisterRequest_Type_Name(
+    DeviceRegisterRequest_Type value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceRegisterRequest_Type_entries,
+          DeviceRegisterRequest_Type_entries_by_number,
+          6, DeviceRegisterRequest_Type_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceRegisterRequest_Type_entries,
+      DeviceRegisterRequest_Type_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceRegisterRequest_Type_strings[idx].get();
+}
+bool DeviceRegisterRequest_Type_Parse(
+    const std::string& name, DeviceRegisterRequest_Type* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceRegisterRequest_Type_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceRegisterRequest_Type>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest::TT;
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest::USER;
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest::DEVICE;
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest::BROWSER;
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest::ANDROID_BROWSER;
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest::IOS_BROWSER;
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest::Type_MIN;
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest::Type_MAX;
+constexpr int DeviceRegisterRequest::Type_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceRegisterRequest_Flavor_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 13:
+    case 14:
+    case 15:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceRegisterRequest_Flavor_strings[15] = {};
+
+static const char DeviceRegisterRequest_Flavor_names[] =
+  "FLAVOR_ENROLLMENT_ATTESTATION"
+  "FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_MANUAL_FALLBACK"
+  "FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_SERVER_FORCED"
+  "FLAVOR_ENROLLMENT_ATTESTATION_LOCAL_FORCED"
+  "FLAVOR_ENROLLMENT_ATTESTATION_MANUAL_FALLBACK"
+  "FLAVOR_ENROLLMENT_ATTESTATION_SERVER_FORCED"
+  "FLAVOR_ENROLLMENT_INITIAL_SERVER_FORCED"
+  "FLAVOR_ENROLLMENT_LOCAL_ADVERTISED"
+  "FLAVOR_ENROLLMENT_LOCAL_FORCED"
+  "FLAVOR_ENROLLMENT_MANUAL"
+  "FLAVOR_ENROLLMENT_MANUAL_RENEW"
+  "FLAVOR_ENROLLMENT_RECOVERY"
+  "FLAVOR_ENROLLMENT_SERVER_ADVERTISED"
+  "FLAVOR_ENROLLMENT_SERVER_FORCED"
+  "FLAVOR_USER_REGISTRATION";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceRegisterRequest_Flavor_entries[] = {
+  { {DeviceRegisterRequest_Flavor_names + 0, 29}, 8 },
+  { {DeviceRegisterRequest_Flavor_names + 29, 53}, 15 },
+  { {DeviceRegisterRequest_Flavor_names + 82, 51}, 14 },
+  { {DeviceRegisterRequest_Flavor_names + 133, 42}, 9 },
+  { {DeviceRegisterRequest_Flavor_names + 175, 45}, 11 },
+  { {DeviceRegisterRequest_Flavor_names + 220, 43}, 10 },
+  { {DeviceRegisterRequest_Flavor_names + 263, 39}, 13 },
+  { {DeviceRegisterRequest_Flavor_names + 302, 34}, 3 },
+  { {DeviceRegisterRequest_Flavor_names + 336, 30}, 2 },
+  { {DeviceRegisterRequest_Flavor_names + 366, 24}, 0 },
+  { {DeviceRegisterRequest_Flavor_names + 390, 30}, 1 },
+  { {DeviceRegisterRequest_Flavor_names + 420, 26}, 6 },
+  { {DeviceRegisterRequest_Flavor_names + 446, 35}, 5 },
+  { {DeviceRegisterRequest_Flavor_names + 481, 31}, 4 },
+  { {DeviceRegisterRequest_Flavor_names + 512, 24}, 7 },
+};
+
+static const int DeviceRegisterRequest_Flavor_entries_by_number[] = {
+  9, // 0 -> FLAVOR_ENROLLMENT_MANUAL
+  10, // 1 -> FLAVOR_ENROLLMENT_MANUAL_RENEW
+  8, // 2 -> FLAVOR_ENROLLMENT_LOCAL_FORCED
+  7, // 3 -> FLAVOR_ENROLLMENT_LOCAL_ADVERTISED
+  13, // 4 -> FLAVOR_ENROLLMENT_SERVER_FORCED
+  12, // 5 -> FLAVOR_ENROLLMENT_SERVER_ADVERTISED
+  11, // 6 -> FLAVOR_ENROLLMENT_RECOVERY
+  14, // 7 -> FLAVOR_USER_REGISTRATION
+  0, // 8 -> FLAVOR_ENROLLMENT_ATTESTATION
+  3, // 9 -> FLAVOR_ENROLLMENT_ATTESTATION_LOCAL_FORCED
+  5, // 10 -> FLAVOR_ENROLLMENT_ATTESTATION_SERVER_FORCED
+  4, // 11 -> FLAVOR_ENROLLMENT_ATTESTATION_MANUAL_FALLBACK
+  6, // 13 -> FLAVOR_ENROLLMENT_INITIAL_SERVER_FORCED
+  2, // 14 -> FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_SERVER_FORCED
+  1, // 15 -> FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_MANUAL_FALLBACK
+};
+
+const std::string& DeviceRegisterRequest_Flavor_Name(
+    DeviceRegisterRequest_Flavor value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceRegisterRequest_Flavor_entries,
+          DeviceRegisterRequest_Flavor_entries_by_number,
+          15, DeviceRegisterRequest_Flavor_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceRegisterRequest_Flavor_entries,
+      DeviceRegisterRequest_Flavor_entries_by_number,
+      15, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceRegisterRequest_Flavor_strings[idx].get();
+}
+bool DeviceRegisterRequest_Flavor_Parse(
+    const std::string& name, DeviceRegisterRequest_Flavor* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceRegisterRequest_Flavor_entries, 15, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceRegisterRequest_Flavor>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_MANUAL;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_MANUAL_RENEW;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_LOCAL_FORCED;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_LOCAL_ADVERTISED;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_SERVER_FORCED;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_SERVER_ADVERTISED;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_RECOVERY;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_USER_REGISTRATION;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_ATTESTATION;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_ATTESTATION_LOCAL_FORCED;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_ATTESTATION_SERVER_FORCED;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_ATTESTATION_MANUAL_FALLBACK;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_INITIAL_SERVER_FORCED;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_SERVER_FORCED;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_MANUAL_FALLBACK;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::Flavor_MIN;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest::Flavor_MAX;
+constexpr int DeviceRegisterRequest::Flavor_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceRegisterRequest_Lifetime_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceRegisterRequest_Lifetime_strings[3] = {};
+
+static const char DeviceRegisterRequest_Lifetime_names[] =
+  "LIFETIME_EPHEMERAL_USER"
+  "LIFETIME_INDEFINITE"
+  "LIFETIME_UNDEFINED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceRegisterRequest_Lifetime_entries[] = {
+  { {DeviceRegisterRequest_Lifetime_names + 0, 23}, 2 },
+  { {DeviceRegisterRequest_Lifetime_names + 23, 19}, 1 },
+  { {DeviceRegisterRequest_Lifetime_names + 42, 18}, 0 },
+};
+
+static const int DeviceRegisterRequest_Lifetime_entries_by_number[] = {
+  2, // 0 -> LIFETIME_UNDEFINED
+  1, // 1 -> LIFETIME_INDEFINITE
+  0, // 2 -> LIFETIME_EPHEMERAL_USER
+};
+
+const std::string& DeviceRegisterRequest_Lifetime_Name(
+    DeviceRegisterRequest_Lifetime value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceRegisterRequest_Lifetime_entries,
+          DeviceRegisterRequest_Lifetime_entries_by_number,
+          3, DeviceRegisterRequest_Lifetime_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceRegisterRequest_Lifetime_entries,
+      DeviceRegisterRequest_Lifetime_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceRegisterRequest_Lifetime_strings[idx].get();
+}
+bool DeviceRegisterRequest_Lifetime_Parse(
+    const std::string& name, DeviceRegisterRequest_Lifetime* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceRegisterRequest_Lifetime_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceRegisterRequest_Lifetime>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceRegisterRequest_Lifetime DeviceRegisterRequest::LIFETIME_UNDEFINED;
+constexpr DeviceRegisterRequest_Lifetime DeviceRegisterRequest::LIFETIME_INDEFINITE;
+constexpr DeviceRegisterRequest_Lifetime DeviceRegisterRequest::LIFETIME_EPHEMERAL_USER;
+constexpr DeviceRegisterRequest_Lifetime DeviceRegisterRequest::Lifetime_MIN;
+constexpr DeviceRegisterRequest_Lifetime DeviceRegisterRequest::Lifetime_MAX;
+constexpr int DeviceRegisterRequest::Lifetime_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceRegisterRequest_PsmExecutionResult_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceRegisterRequest_PsmExecutionResult_strings[4] = {};
+
+static const char DeviceRegisterRequest_PsmExecutionResult_names[] =
+  "PSM_RESULT_ERROR"
+  "PSM_RESULT_SUCCESSFUL_WITHOUT_STATE"
+  "PSM_RESULT_SUCCESSFUL_WITH_STATE"
+  "PSM_RESULT_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceRegisterRequest_PsmExecutionResult_entries[] = {
+  { {DeviceRegisterRequest_PsmExecutionResult_names + 0, 16}, 3 },
+  { {DeviceRegisterRequest_PsmExecutionResult_names + 16, 35}, 2 },
+  { {DeviceRegisterRequest_PsmExecutionResult_names + 51, 32}, 1 },
+  { {DeviceRegisterRequest_PsmExecutionResult_names + 83, 18}, 0 },
+};
+
+static const int DeviceRegisterRequest_PsmExecutionResult_entries_by_number[] = {
+  3, // 0 -> PSM_RESULT_UNKNOWN
+  2, // 1 -> PSM_RESULT_SUCCESSFUL_WITH_STATE
+  1, // 2 -> PSM_RESULT_SUCCESSFUL_WITHOUT_STATE
+  0, // 3 -> PSM_RESULT_ERROR
+};
+
+const std::string& DeviceRegisterRequest_PsmExecutionResult_Name(
+    DeviceRegisterRequest_PsmExecutionResult value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceRegisterRequest_PsmExecutionResult_entries,
+          DeviceRegisterRequest_PsmExecutionResult_entries_by_number,
+          4, DeviceRegisterRequest_PsmExecutionResult_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceRegisterRequest_PsmExecutionResult_entries,
+      DeviceRegisterRequest_PsmExecutionResult_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceRegisterRequest_PsmExecutionResult_strings[idx].get();
+}
+bool DeviceRegisterRequest_PsmExecutionResult_Parse(
+    const std::string& name, DeviceRegisterRequest_PsmExecutionResult* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceRegisterRequest_PsmExecutionResult_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceRegisterRequest_PsmExecutionResult>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest::PSM_RESULT_UNKNOWN;
+constexpr DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest::PSM_RESULT_SUCCESSFUL_WITH_STATE;
+constexpr DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest::PSM_RESULT_SUCCESSFUL_WITHOUT_STATE;
+constexpr DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest::PSM_RESULT_ERROR;
+constexpr DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest::PsmExecutionResult_MIN;
+constexpr DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest::PsmExecutionResult_MAX;
+constexpr int DeviceRegisterRequest::PsmExecutionResult_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool CheckUserAccountResponse_UserAccountType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> CheckUserAccountResponse_UserAccountType_strings[4] = {};
+
+static const char CheckUserAccountResponse_UserAccountType_names[] =
+  "CONSUMER"
+  "DASHER"
+  "NOT_EXIST"
+  "UNKNOWN_USER_ACCOUNT_TYPE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry CheckUserAccountResponse_UserAccountType_entries[] = {
+  { {CheckUserAccountResponse_UserAccountType_names + 0, 8}, 2 },
+  { {CheckUserAccountResponse_UserAccountType_names + 8, 6}, 3 },
+  { {CheckUserAccountResponse_UserAccountType_names + 14, 9}, 1 },
+  { {CheckUserAccountResponse_UserAccountType_names + 23, 25}, 0 },
+};
+
+static const int CheckUserAccountResponse_UserAccountType_entries_by_number[] = {
+  3, // 0 -> UNKNOWN_USER_ACCOUNT_TYPE
+  2, // 1 -> NOT_EXIST
+  0, // 2 -> CONSUMER
+  1, // 3 -> DASHER
+};
+
+const std::string& CheckUserAccountResponse_UserAccountType_Name(
+    CheckUserAccountResponse_UserAccountType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          CheckUserAccountResponse_UserAccountType_entries,
+          CheckUserAccountResponse_UserAccountType_entries_by_number,
+          4, CheckUserAccountResponse_UserAccountType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      CheckUserAccountResponse_UserAccountType_entries,
+      CheckUserAccountResponse_UserAccountType_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     CheckUserAccountResponse_UserAccountType_strings[idx].get();
+}
+bool CheckUserAccountResponse_UserAccountType_Parse(
+    const std::string& name, CheckUserAccountResponse_UserAccountType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      CheckUserAccountResponse_UserAccountType_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<CheckUserAccountResponse_UserAccountType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr CheckUserAccountResponse_UserAccountType CheckUserAccountResponse::UNKNOWN_USER_ACCOUNT_TYPE;
+constexpr CheckUserAccountResponse_UserAccountType CheckUserAccountResponse::NOT_EXIST;
+constexpr CheckUserAccountResponse_UserAccountType CheckUserAccountResponse::CONSUMER;
+constexpr CheckUserAccountResponse_UserAccountType CheckUserAccountResponse::DASHER;
+constexpr CheckUserAccountResponse_UserAccountType CheckUserAccountResponse::UserAccountType_MIN;
+constexpr CheckUserAccountResponse_UserAccountType CheckUserAccountResponse::UserAccountType_MAX;
+constexpr int CheckUserAccountResponse::UserAccountType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceRegisterResponse_DeviceMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceRegisterResponse_DeviceMode_strings[4] = {};
+
+static const char DeviceRegisterResponse_DeviceMode_names[] =
+  "CHROME_AD"
+  "DEMO"
+  "ENTERPRISE"
+  "RETAIL_DEPRECATED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceRegisterResponse_DeviceMode_entries[] = {
+  { {DeviceRegisterResponse_DeviceMode_names + 0, 9}, 2 },
+  { {DeviceRegisterResponse_DeviceMode_names + 9, 4}, 3 },
+  { {DeviceRegisterResponse_DeviceMode_names + 13, 10}, 0 },
+  { {DeviceRegisterResponse_DeviceMode_names + 23, 17}, 1 },
+};
+
+static const int DeviceRegisterResponse_DeviceMode_entries_by_number[] = {
+  2, // 0 -> ENTERPRISE
+  3, // 1 -> RETAIL_DEPRECATED
+  0, // 2 -> CHROME_AD
+  1, // 3 -> DEMO
+};
+
+const std::string& DeviceRegisterResponse_DeviceMode_Name(
+    DeviceRegisterResponse_DeviceMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceRegisterResponse_DeviceMode_entries,
+          DeviceRegisterResponse_DeviceMode_entries_by_number,
+          4, DeviceRegisterResponse_DeviceMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceRegisterResponse_DeviceMode_entries,
+      DeviceRegisterResponse_DeviceMode_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceRegisterResponse_DeviceMode_strings[idx].get();
+}
+bool DeviceRegisterResponse_DeviceMode_Parse(
+    const std::string& name, DeviceRegisterResponse_DeviceMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceRegisterResponse_DeviceMode_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceRegisterResponse_DeviceMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceRegisterResponse_DeviceMode DeviceRegisterResponse::ENTERPRISE;
+constexpr DeviceRegisterResponse_DeviceMode DeviceRegisterResponse::RETAIL_DEPRECATED;
+constexpr DeviceRegisterResponse_DeviceMode DeviceRegisterResponse::CHROME_AD;
+constexpr DeviceRegisterResponse_DeviceMode DeviceRegisterResponse::DEMO;
+constexpr DeviceRegisterResponse_DeviceMode DeviceRegisterResponse::DeviceMode_MIN;
+constexpr DeviceRegisterResponse_DeviceMode DeviceRegisterResponse::DeviceMode_MAX;
+constexpr int DeviceRegisterResponse::DeviceMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceCertUploadRequest_CertificateType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceCertUploadRequest_CertificateType_strings[3] = {};
+
+static const char DeviceCertUploadRequest_CertificateType_names[] =
+  "CERTIFICATE_TYPE_UNSPECIFIED"
+  "ENTERPRISE_ENROLLMENT_CERTIFICATE"
+  "ENTERPRISE_MACHINE_CERTIFICATE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceCertUploadRequest_CertificateType_entries[] = {
+  { {DeviceCertUploadRequest_CertificateType_names + 0, 28}, 0 },
+  { {DeviceCertUploadRequest_CertificateType_names + 28, 33}, 2 },
+  { {DeviceCertUploadRequest_CertificateType_names + 61, 30}, 1 },
+};
+
+static const int DeviceCertUploadRequest_CertificateType_entries_by_number[] = {
+  0, // 0 -> CERTIFICATE_TYPE_UNSPECIFIED
+  2, // 1 -> ENTERPRISE_MACHINE_CERTIFICATE
+  1, // 2 -> ENTERPRISE_ENROLLMENT_CERTIFICATE
+};
+
+const std::string& DeviceCertUploadRequest_CertificateType_Name(
+    DeviceCertUploadRequest_CertificateType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceCertUploadRequest_CertificateType_entries,
+          DeviceCertUploadRequest_CertificateType_entries_by_number,
+          3, DeviceCertUploadRequest_CertificateType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceCertUploadRequest_CertificateType_entries,
+      DeviceCertUploadRequest_CertificateType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceCertUploadRequest_CertificateType_strings[idx].get();
+}
+bool DeviceCertUploadRequest_CertificateType_Parse(
+    const std::string& name, DeviceCertUploadRequest_CertificateType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceCertUploadRequest_CertificateType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceCertUploadRequest_CertificateType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest::CERTIFICATE_TYPE_UNSPECIFIED;
+constexpr DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest::ENTERPRISE_MACHINE_CERTIFICATE;
+constexpr DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest::ENTERPRISE_ENROLLMENT_CERTIFICATE;
+constexpr DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest::CertificateType_MIN;
+constexpr DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest::CertificateType_MAX;
+constexpr int DeviceCertUploadRequest::CertificateType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceServiceApiAccessRequest_DeviceType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceServiceApiAccessRequest_DeviceType_strings[4] = {};
+
+static const char DeviceServiceApiAccessRequest_DeviceType_names[] =
+  "ANDROID_OS"
+  "CHROME_BROWSER"
+  "CHROME_OS"
+  "CHROME_OS_DEMO_MODE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceServiceApiAccessRequest_DeviceType_entries[] = {
+  { {DeviceServiceApiAccessRequest_DeviceType_names + 0, 10}, 1 },
+  { {DeviceServiceApiAccessRequest_DeviceType_names + 10, 14}, 3 },
+  { {DeviceServiceApiAccessRequest_DeviceType_names + 24, 9}, 0 },
+  { {DeviceServiceApiAccessRequest_DeviceType_names + 33, 19}, 2 },
+};
+
+static const int DeviceServiceApiAccessRequest_DeviceType_entries_by_number[] = {
+  2, // 0 -> CHROME_OS
+  0, // 1 -> ANDROID_OS
+  3, // 2 -> CHROME_OS_DEMO_MODE
+  1, // 3 -> CHROME_BROWSER
+};
+
+const std::string& DeviceServiceApiAccessRequest_DeviceType_Name(
+    DeviceServiceApiAccessRequest_DeviceType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceServiceApiAccessRequest_DeviceType_entries,
+          DeviceServiceApiAccessRequest_DeviceType_entries_by_number,
+          4, DeviceServiceApiAccessRequest_DeviceType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceServiceApiAccessRequest_DeviceType_entries,
+      DeviceServiceApiAccessRequest_DeviceType_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceServiceApiAccessRequest_DeviceType_strings[idx].get();
+}
+bool DeviceServiceApiAccessRequest_DeviceType_Parse(
+    const std::string& name, DeviceServiceApiAccessRequest_DeviceType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceServiceApiAccessRequest_DeviceType_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceServiceApiAccessRequest_DeviceType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest::CHROME_OS;
+constexpr DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest::ANDROID_OS;
+constexpr DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest::CHROME_OS_DEMO_MODE;
+constexpr DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest::CHROME_BROWSER;
+constexpr DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest::DeviceType_MIN;
+constexpr DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest::DeviceType_MAX;
+constexpr int DeviceServiceApiAccessRequest::DeviceType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PolicyFetchRequest_SignatureType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PolicyFetchRequest_SignatureType_strings[3] = {};
+
+static const char PolicyFetchRequest_SignatureType_names[] =
+  "NONE"
+  "SHA1_RSA"
+  "SHA256_RSA";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PolicyFetchRequest_SignatureType_entries[] = {
+  { {PolicyFetchRequest_SignatureType_names + 0, 4}, 0 },
+  { {PolicyFetchRequest_SignatureType_names + 4, 8}, 1 },
+  { {PolicyFetchRequest_SignatureType_names + 12, 10}, 2 },
+};
+
+static const int PolicyFetchRequest_SignatureType_entries_by_number[] = {
+  0, // 0 -> NONE
+  1, // 1 -> SHA1_RSA
+  2, // 2 -> SHA256_RSA
+};
+
+const std::string& PolicyFetchRequest_SignatureType_Name(
+    PolicyFetchRequest_SignatureType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PolicyFetchRequest_SignatureType_entries,
+          PolicyFetchRequest_SignatureType_entries_by_number,
+          3, PolicyFetchRequest_SignatureType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PolicyFetchRequest_SignatureType_entries,
+      PolicyFetchRequest_SignatureType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PolicyFetchRequest_SignatureType_strings[idx].get();
+}
+bool PolicyFetchRequest_SignatureType_Parse(
+    const std::string& name, PolicyFetchRequest_SignatureType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PolicyFetchRequest_SignatureType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<PolicyFetchRequest_SignatureType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PolicyFetchRequest_SignatureType PolicyFetchRequest::NONE;
+constexpr PolicyFetchRequest_SignatureType PolicyFetchRequest::SHA1_RSA;
+constexpr PolicyFetchRequest_SignatureType PolicyFetchRequest::SHA256_RSA;
+constexpr PolicyFetchRequest_SignatureType PolicyFetchRequest::SignatureType_MIN;
+constexpr PolicyFetchRequest_SignatureType PolicyFetchRequest::SignatureType_MAX;
+constexpr int PolicyFetchRequest::SignatureType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceState_DeviceMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceState_DeviceMode_strings[2] = {};
+
+static const char DeviceState_DeviceMode_names[] =
+  "DEVICE_MODE_DISABLED"
+  "DEVICE_MODE_NORMAL";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceState_DeviceMode_entries[] = {
+  { {DeviceState_DeviceMode_names + 0, 20}, 1 },
+  { {DeviceState_DeviceMode_names + 20, 18}, 0 },
+};
+
+static const int DeviceState_DeviceMode_entries_by_number[] = {
+  1, // 0 -> DEVICE_MODE_NORMAL
+  0, // 1 -> DEVICE_MODE_DISABLED
+};
+
+const std::string& DeviceState_DeviceMode_Name(
+    DeviceState_DeviceMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceState_DeviceMode_entries,
+          DeviceState_DeviceMode_entries_by_number,
+          2, DeviceState_DeviceMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceState_DeviceMode_entries,
+      DeviceState_DeviceMode_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceState_DeviceMode_strings[idx].get();
+}
+bool DeviceState_DeviceMode_Parse(
+    const std::string& name, DeviceState_DeviceMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceState_DeviceMode_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceState_DeviceMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceState_DeviceMode DeviceState::DEVICE_MODE_NORMAL;
+constexpr DeviceState_DeviceMode DeviceState::DEVICE_MODE_DISABLED;
+constexpr DeviceState_DeviceMode DeviceState::DeviceMode_MIN;
+constexpr DeviceState_DeviceMode DeviceState::DeviceMode_MAX;
+constexpr int DeviceState::DeviceMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PolicyData_AssociationState_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PolicyData_AssociationState_strings[3] = {};
+
+static const char PolicyData_AssociationState_names[] =
+  "ACTIVE"
+  "DEPROVISIONED"
+  "UNMANAGED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PolicyData_AssociationState_entries[] = {
+  { {PolicyData_AssociationState_names + 0, 6}, 0 },
+  { {PolicyData_AssociationState_names + 6, 13}, 2 },
+  { {PolicyData_AssociationState_names + 19, 9}, 1 },
+};
+
+static const int PolicyData_AssociationState_entries_by_number[] = {
+  0, // 0 -> ACTIVE
+  2, // 1 -> UNMANAGED
+  1, // 2 -> DEPROVISIONED
+};
+
+const std::string& PolicyData_AssociationState_Name(
+    PolicyData_AssociationState value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PolicyData_AssociationState_entries,
+          PolicyData_AssociationState_entries_by_number,
+          3, PolicyData_AssociationState_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PolicyData_AssociationState_entries,
+      PolicyData_AssociationState_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PolicyData_AssociationState_strings[idx].get();
+}
+bool PolicyData_AssociationState_Parse(
+    const std::string& name, PolicyData_AssociationState* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PolicyData_AssociationState_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<PolicyData_AssociationState>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PolicyData_AssociationState PolicyData::ACTIVE;
+constexpr PolicyData_AssociationState PolicyData::UNMANAGED;
+constexpr PolicyData_AssociationState PolicyData::DEPROVISIONED;
+constexpr PolicyData_AssociationState PolicyData::AssociationState_MIN;
+constexpr PolicyData_AssociationState PolicyData::AssociationState_MAX;
+constexpr int PolicyData::AssociationState_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PolicyData_ManagementMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PolicyData_ManagementMode_strings[3] = {};
+
+static const char PolicyData_ManagementMode_names[] =
+  "ENTERPRISE_MANAGED"
+  "LOCAL_OWNER"
+  "OBSOLETE_CONSUMER_MANAGED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PolicyData_ManagementMode_entries[] = {
+  { {PolicyData_ManagementMode_names + 0, 18}, 1 },
+  { {PolicyData_ManagementMode_names + 18, 11}, 0 },
+  { {PolicyData_ManagementMode_names + 29, 25}, 2 },
+};
+
+static const int PolicyData_ManagementMode_entries_by_number[] = {
+  1, // 0 -> LOCAL_OWNER
+  0, // 1 -> ENTERPRISE_MANAGED
+  2, // 2 -> OBSOLETE_CONSUMER_MANAGED
+};
+
+const std::string& PolicyData_ManagementMode_Name(
+    PolicyData_ManagementMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PolicyData_ManagementMode_entries,
+          PolicyData_ManagementMode_entries_by_number,
+          3, PolicyData_ManagementMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PolicyData_ManagementMode_entries,
+      PolicyData_ManagementMode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PolicyData_ManagementMode_strings[idx].get();
+}
+bool PolicyData_ManagementMode_Parse(
+    const std::string& name, PolicyData_ManagementMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PolicyData_ManagementMode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<PolicyData_ManagementMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PolicyData_ManagementMode PolicyData::LOCAL_OWNER;
+constexpr PolicyData_ManagementMode PolicyData::ENTERPRISE_MANAGED;
+constexpr PolicyData_ManagementMode PolicyData::OBSOLETE_CONSUMER_MANAGED;
+constexpr PolicyData_ManagementMode PolicyData::ManagementMode_MIN;
+constexpr PolicyData_ManagementMode PolicyData::ManagementMode_MAX;
+constexpr int PolicyData::ManagementMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PolicyData_MarketSegment_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PolicyData_MarketSegment_strings[3] = {};
+
+static const char PolicyData_MarketSegment_names[] =
+  "ENROLLED_EDUCATION"
+  "ENROLLED_ENTERPRISE"
+  "MARKET_SEGMENT_UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PolicyData_MarketSegment_entries[] = {
+  { {PolicyData_MarketSegment_names + 0, 18}, 1 },
+  { {PolicyData_MarketSegment_names + 18, 19}, 2 },
+  { {PolicyData_MarketSegment_names + 37, 26}, 0 },
+};
+
+static const int PolicyData_MarketSegment_entries_by_number[] = {
+  2, // 0 -> MARKET_SEGMENT_UNSPECIFIED
+  0, // 1 -> ENROLLED_EDUCATION
+  1, // 2 -> ENROLLED_ENTERPRISE
+};
+
+const std::string& PolicyData_MarketSegment_Name(
+    PolicyData_MarketSegment value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PolicyData_MarketSegment_entries,
+          PolicyData_MarketSegment_entries_by_number,
+          3, PolicyData_MarketSegment_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PolicyData_MarketSegment_entries,
+      PolicyData_MarketSegment_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PolicyData_MarketSegment_strings[idx].get();
+}
+bool PolicyData_MarketSegment_Parse(
+    const std::string& name, PolicyData_MarketSegment* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PolicyData_MarketSegment_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<PolicyData_MarketSegment>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PolicyData_MarketSegment PolicyData::MARKET_SEGMENT_UNSPECIFIED;
+constexpr PolicyData_MarketSegment PolicyData::ENROLLED_EDUCATION;
+constexpr PolicyData_MarketSegment PolicyData::ENROLLED_ENTERPRISE;
+constexpr PolicyData_MarketSegment PolicyData::MarketSegment_MIN;
+constexpr PolicyData_MarketSegment PolicyData::MarketSegment_MAX;
+constexpr int PolicyData::MarketSegment_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PolicyData_MetricsLogSegment_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PolicyData_MetricsLogSegment_strings[5] = {};
+
+static const char PolicyData_MetricsLogSegment_names[] =
+  "ENTERPRISE"
+  "K12"
+  "NONPROFIT"
+  "UNIVERSITY"
+  "UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PolicyData_MetricsLogSegment_entries[] = {
+  { {PolicyData_MetricsLogSegment_names + 0, 10}, 4 },
+  { {PolicyData_MetricsLogSegment_names + 10, 3}, 1 },
+  { {PolicyData_MetricsLogSegment_names + 13, 9}, 3 },
+  { {PolicyData_MetricsLogSegment_names + 22, 10}, 2 },
+  { {PolicyData_MetricsLogSegment_names + 32, 11}, 0 },
+};
+
+static const int PolicyData_MetricsLogSegment_entries_by_number[] = {
+  4, // 0 -> UNSPECIFIED
+  1, // 1 -> K12
+  3, // 2 -> UNIVERSITY
+  2, // 3 -> NONPROFIT
+  0, // 4 -> ENTERPRISE
+};
+
+const std::string& PolicyData_MetricsLogSegment_Name(
+    PolicyData_MetricsLogSegment value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PolicyData_MetricsLogSegment_entries,
+          PolicyData_MetricsLogSegment_entries_by_number,
+          5, PolicyData_MetricsLogSegment_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PolicyData_MetricsLogSegment_entries,
+      PolicyData_MetricsLogSegment_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PolicyData_MetricsLogSegment_strings[idx].get();
+}
+bool PolicyData_MetricsLogSegment_Parse(
+    const std::string& name, PolicyData_MetricsLogSegment* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PolicyData_MetricsLogSegment_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<PolicyData_MetricsLogSegment>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PolicyData_MetricsLogSegment PolicyData::UNSPECIFIED;
+constexpr PolicyData_MetricsLogSegment PolicyData::K12;
+constexpr PolicyData_MetricsLogSegment PolicyData::UNIVERSITY;
+constexpr PolicyData_MetricsLogSegment PolicyData::NONPROFIT;
+constexpr PolicyData_MetricsLogSegment PolicyData::ENTERPRISE;
+constexpr PolicyData_MetricsLogSegment PolicyData::MetricsLogSegment_MIN;
+constexpr PolicyData_MetricsLogSegment PolicyData::MetricsLogSegment_MAX;
+constexpr int PolicyData::MetricsLogSegment_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ActiveTimePeriod_SessionType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ActiveTimePeriod_SessionType_strings[6] = {};
+
+static const char ActiveTimePeriod_SessionType_names[] =
+  "SESSION_AFFILIATED_USER"
+  "SESSION_ARC_KIOSK"
+  "SESSION_KIOSK"
+  "SESSION_MANAGED_GUEST"
+  "SESSION_UNKNOWN"
+  "SESSION_WEB_KIOSK";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ActiveTimePeriod_SessionType_entries[] = {
+  { {ActiveTimePeriod_SessionType_names + 0, 23}, 1 },
+  { {ActiveTimePeriod_SessionType_names + 23, 17}, 4 },
+  { {ActiveTimePeriod_SessionType_names + 40, 13}, 3 },
+  { {ActiveTimePeriod_SessionType_names + 53, 21}, 2 },
+  { {ActiveTimePeriod_SessionType_names + 74, 15}, 0 },
+  { {ActiveTimePeriod_SessionType_names + 89, 17}, 5 },
+};
+
+static const int ActiveTimePeriod_SessionType_entries_by_number[] = {
+  4, // 0 -> SESSION_UNKNOWN
+  0, // 1 -> SESSION_AFFILIATED_USER
+  3, // 2 -> SESSION_MANAGED_GUEST
+  2, // 3 -> SESSION_KIOSK
+  1, // 4 -> SESSION_ARC_KIOSK
+  5, // 5 -> SESSION_WEB_KIOSK
+};
+
+const std::string& ActiveTimePeriod_SessionType_Name(
+    ActiveTimePeriod_SessionType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ActiveTimePeriod_SessionType_entries,
+          ActiveTimePeriod_SessionType_entries_by_number,
+          6, ActiveTimePeriod_SessionType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ActiveTimePeriod_SessionType_entries,
+      ActiveTimePeriod_SessionType_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ActiveTimePeriod_SessionType_strings[idx].get();
+}
+bool ActiveTimePeriod_SessionType_Parse(
+    const std::string& name, ActiveTimePeriod_SessionType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ActiveTimePeriod_SessionType_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<ActiveTimePeriod_SessionType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod::SESSION_UNKNOWN;
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod::SESSION_AFFILIATED_USER;
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod::SESSION_MANAGED_GUEST;
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod::SESSION_KIOSK;
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod::SESSION_ARC_KIOSK;
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod::SESSION_WEB_KIOSK;
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod::SessionType_MIN;
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod::SessionType_MAX;
+constexpr int ActiveTimePeriod::SessionType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool NetworkInterface_NetworkDeviceType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> NetworkInterface_NetworkDeviceType_strings[4] = {};
+
+static const char NetworkInterface_NetworkDeviceType_names[] =
+  "TYPE_BLUETOOTH"
+  "TYPE_CELLULAR"
+  "TYPE_ETHERNET"
+  "TYPE_WIFI";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry NetworkInterface_NetworkDeviceType_entries[] = {
+  { {NetworkInterface_NetworkDeviceType_names + 0, 14}, 3 },
+  { {NetworkInterface_NetworkDeviceType_names + 14, 13}, 4 },
+  { {NetworkInterface_NetworkDeviceType_names + 27, 13}, 0 },
+  { {NetworkInterface_NetworkDeviceType_names + 40, 9}, 1 },
+};
+
+static const int NetworkInterface_NetworkDeviceType_entries_by_number[] = {
+  2, // 0 -> TYPE_ETHERNET
+  3, // 1 -> TYPE_WIFI
+  0, // 3 -> TYPE_BLUETOOTH
+  1, // 4 -> TYPE_CELLULAR
+};
+
+const std::string& NetworkInterface_NetworkDeviceType_Name(
+    NetworkInterface_NetworkDeviceType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          NetworkInterface_NetworkDeviceType_entries,
+          NetworkInterface_NetworkDeviceType_entries_by_number,
+          4, NetworkInterface_NetworkDeviceType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      NetworkInterface_NetworkDeviceType_entries,
+      NetworkInterface_NetworkDeviceType_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     NetworkInterface_NetworkDeviceType_strings[idx].get();
+}
+bool NetworkInterface_NetworkDeviceType_Parse(
+    const std::string& name, NetworkInterface_NetworkDeviceType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      NetworkInterface_NetworkDeviceType_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<NetworkInterface_NetworkDeviceType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr NetworkInterface_NetworkDeviceType NetworkInterface::TYPE_ETHERNET;
+constexpr NetworkInterface_NetworkDeviceType NetworkInterface::TYPE_WIFI;
+constexpr NetworkInterface_NetworkDeviceType NetworkInterface::TYPE_BLUETOOTH;
+constexpr NetworkInterface_NetworkDeviceType NetworkInterface::TYPE_CELLULAR;
+constexpr NetworkInterface_NetworkDeviceType NetworkInterface::NetworkDeviceType_MIN;
+constexpr NetworkInterface_NetworkDeviceType NetworkInterface::NetworkDeviceType_MAX;
+constexpr int NetworkInterface::NetworkDeviceType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool NetworkState_ConnectionState_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> NetworkState_ConnectionState_strings[12] = {};
+
+static const char NetworkState_ConnectionState_names[] =
+  "ACTIVATION_FAILURE"
+  "ASSOCIATION"
+  "CARRIER"
+  "CONFIGURATION"
+  "DISCONNECT"
+  "FAILURE"
+  "IDLE"
+  "OFFLINE"
+  "ONLINE"
+  "PORTAL"
+  "READY"
+  "UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry NetworkState_ConnectionState_entries[] = {
+  { {NetworkState_ConnectionState_names + 0, 18}, 10 },
+  { {NetworkState_ConnectionState_names + 18, 11}, 2 },
+  { {NetworkState_ConnectionState_names + 29, 7}, 1 },
+  { {NetworkState_ConnectionState_names + 36, 13}, 3 },
+  { {NetworkState_ConnectionState_names + 49, 10}, 8 },
+  { {NetworkState_ConnectionState_names + 59, 7}, 9 },
+  { {NetworkState_ConnectionState_names + 66, 4}, 0 },
+  { {NetworkState_ConnectionState_names + 70, 7}, 6 },
+  { {NetworkState_ConnectionState_names + 77, 6}, 7 },
+  { {NetworkState_ConnectionState_names + 83, 6}, 5 },
+  { {NetworkState_ConnectionState_names + 89, 5}, 4 },
+  { {NetworkState_ConnectionState_names + 94, 7}, 11 },
+};
+
+static const int NetworkState_ConnectionState_entries_by_number[] = {
+  6, // 0 -> IDLE
+  2, // 1 -> CARRIER
+  1, // 2 -> ASSOCIATION
+  3, // 3 -> CONFIGURATION
+  10, // 4 -> READY
+  9, // 5 -> PORTAL
+  7, // 6 -> OFFLINE
+  8, // 7 -> ONLINE
+  4, // 8 -> DISCONNECT
+  5, // 9 -> FAILURE
+  0, // 10 -> ACTIVATION_FAILURE
+  11, // 11 -> UNKNOWN
+};
+
+const std::string& NetworkState_ConnectionState_Name(
+    NetworkState_ConnectionState value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          NetworkState_ConnectionState_entries,
+          NetworkState_ConnectionState_entries_by_number,
+          12, NetworkState_ConnectionState_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      NetworkState_ConnectionState_entries,
+      NetworkState_ConnectionState_entries_by_number,
+      12, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     NetworkState_ConnectionState_strings[idx].get();
+}
+bool NetworkState_ConnectionState_Parse(
+    const std::string& name, NetworkState_ConnectionState* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      NetworkState_ConnectionState_entries, 12, name, &int_value);
+  if (success) {
+    *value = static_cast<NetworkState_ConnectionState>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr NetworkState_ConnectionState NetworkState::IDLE;
+constexpr NetworkState_ConnectionState NetworkState::CARRIER;
+constexpr NetworkState_ConnectionState NetworkState::ASSOCIATION;
+constexpr NetworkState_ConnectionState NetworkState::CONFIGURATION;
+constexpr NetworkState_ConnectionState NetworkState::READY;
+constexpr NetworkState_ConnectionState NetworkState::PORTAL;
+constexpr NetworkState_ConnectionState NetworkState::OFFLINE;
+constexpr NetworkState_ConnectionState NetworkState::ONLINE;
+constexpr NetworkState_ConnectionState NetworkState::DISCONNECT;
+constexpr NetworkState_ConnectionState NetworkState::FAILURE;
+constexpr NetworkState_ConnectionState NetworkState::ACTIVATION_FAILURE;
+constexpr NetworkState_ConnectionState NetworkState::UNKNOWN;
+constexpr NetworkState_ConnectionState NetworkState::ConnectionState_MIN;
+constexpr NetworkState_ConnectionState NetworkState::ConnectionState_MAX;
+constexpr int NetworkState::ConnectionState_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceUser_UserType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceUser_UserType_strings[2] = {};
+
+static const char DeviceUser_UserType_names[] =
+  "USER_TYPE_MANAGED"
+  "USER_TYPE_UNMANAGED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceUser_UserType_entries[] = {
+  { {DeviceUser_UserType_names + 0, 17}, 0 },
+  { {DeviceUser_UserType_names + 17, 19}, 1 },
+};
+
+static const int DeviceUser_UserType_entries_by_number[] = {
+  0, // 0 -> USER_TYPE_MANAGED
+  1, // 1 -> USER_TYPE_UNMANAGED
+};
+
+const std::string& DeviceUser_UserType_Name(
+    DeviceUser_UserType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceUser_UserType_entries,
+          DeviceUser_UserType_entries_by_number,
+          2, DeviceUser_UserType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceUser_UserType_entries,
+      DeviceUser_UserType_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceUser_UserType_strings[idx].get();
+}
+bool DeviceUser_UserType_Parse(
+    const std::string& name, DeviceUser_UserType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceUser_UserType_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceUser_UserType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceUser_UserType DeviceUser::USER_TYPE_MANAGED;
+constexpr DeviceUser_UserType DeviceUser::USER_TYPE_UNMANAGED;
+constexpr DeviceUser_UserType DeviceUser::UserType_MIN;
+constexpr DeviceUser_UserType DeviceUser::UserType_MAX;
+constexpr int DeviceUser::UserType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PowerStatus_PowerSource_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PowerStatus_PowerSource_strings[3] = {};
+
+static const char PowerStatus_PowerSource_names[] =
+  "POWER_AC"
+  "POWER_BATTERY"
+  "POWER_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PowerStatus_PowerSource_entries[] = {
+  { {PowerStatus_PowerSource_names + 0, 8}, 1 },
+  { {PowerStatus_PowerSource_names + 8, 13}, 2 },
+  { {PowerStatus_PowerSource_names + 21, 13}, 0 },
+};
+
+static const int PowerStatus_PowerSource_entries_by_number[] = {
+  2, // 0 -> POWER_UNKNOWN
+  0, // 1 -> POWER_AC
+  1, // 2 -> POWER_BATTERY
+};
+
+const std::string& PowerStatus_PowerSource_Name(
+    PowerStatus_PowerSource value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PowerStatus_PowerSource_entries,
+          PowerStatus_PowerSource_entries_by_number,
+          3, PowerStatus_PowerSource_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PowerStatus_PowerSource_entries,
+      PowerStatus_PowerSource_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PowerStatus_PowerSource_strings[idx].get();
+}
+bool PowerStatus_PowerSource_Parse(
+    const std::string& name, PowerStatus_PowerSource* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PowerStatus_PowerSource_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<PowerStatus_PowerSource>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PowerStatus_PowerSource PowerStatus::POWER_UNKNOWN;
+constexpr PowerStatus_PowerSource PowerStatus::POWER_AC;
+constexpr PowerStatus_PowerSource PowerStatus::POWER_BATTERY;
+constexpr PowerStatus_PowerSource PowerStatus::PowerSource_MIN;
+constexpr PowerStatus_PowerSource PowerStatus::PowerSource_MAX;
+constexpr int PowerStatus::PowerSource_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DiskInfo_DevicePurpose_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DiskInfo_DevicePurpose_strings[3] = {};
+
+static const char DiskInfo_DevicePurpose_names[] =
+  "PURPOSE_BOOT"
+  "PURPOSE_SWAP"
+  "PURPOSE_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DiskInfo_DevicePurpose_entries[] = {
+  { {DiskInfo_DevicePurpose_names + 0, 12}, 1 },
+  { {DiskInfo_DevicePurpose_names + 12, 12}, 2 },
+  { {DiskInfo_DevicePurpose_names + 24, 15}, 0 },
+};
+
+static const int DiskInfo_DevicePurpose_entries_by_number[] = {
+  2, // 0 -> PURPOSE_UNKNOWN
+  0, // 1 -> PURPOSE_BOOT
+  1, // 2 -> PURPOSE_SWAP
+};
+
+const std::string& DiskInfo_DevicePurpose_Name(
+    DiskInfo_DevicePurpose value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DiskInfo_DevicePurpose_entries,
+          DiskInfo_DevicePurpose_entries_by_number,
+          3, DiskInfo_DevicePurpose_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DiskInfo_DevicePurpose_entries,
+      DiskInfo_DevicePurpose_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DiskInfo_DevicePurpose_strings[idx].get();
+}
+bool DiskInfo_DevicePurpose_Parse(
+    const std::string& name, DiskInfo_DevicePurpose* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DiskInfo_DevicePurpose_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DiskInfo_DevicePurpose>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DiskInfo_DevicePurpose DiskInfo::PURPOSE_UNKNOWN;
+constexpr DiskInfo_DevicePurpose DiskInfo::PURPOSE_BOOT;
+constexpr DiskInfo_DevicePurpose DiskInfo::PURPOSE_SWAP;
+constexpr DiskInfo_DevicePurpose DiskInfo::DevicePurpose_MIN;
+constexpr DiskInfo_DevicePurpose DiskInfo::DevicePurpose_MAX;
+constexpr int DiskInfo::DevicePurpose_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool CpuInfo_Architecture_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> CpuInfo_Architecture_strings[4] = {};
+
+static const char CpuInfo_Architecture_names[] =
+  "AARCH64"
+  "ARCHITECTURE_UNSPECIFIED"
+  "ARMV7L"
+  "X86_64";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry CpuInfo_Architecture_entries[] = {
+  { {CpuInfo_Architecture_names + 0, 7}, 2 },
+  { {CpuInfo_Architecture_names + 7, 24}, 0 },
+  { {CpuInfo_Architecture_names + 31, 6}, 3 },
+  { {CpuInfo_Architecture_names + 37, 6}, 1 },
+};
+
+static const int CpuInfo_Architecture_entries_by_number[] = {
+  1, // 0 -> ARCHITECTURE_UNSPECIFIED
+  3, // 1 -> X86_64
+  0, // 2 -> AARCH64
+  2, // 3 -> ARMV7L
+};
+
+const std::string& CpuInfo_Architecture_Name(
+    CpuInfo_Architecture value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          CpuInfo_Architecture_entries,
+          CpuInfo_Architecture_entries_by_number,
+          4, CpuInfo_Architecture_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      CpuInfo_Architecture_entries,
+      CpuInfo_Architecture_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     CpuInfo_Architecture_strings[idx].get();
+}
+bool CpuInfo_Architecture_Parse(
+    const std::string& name, CpuInfo_Architecture* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      CpuInfo_Architecture_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<CpuInfo_Architecture>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr CpuInfo_Architecture CpuInfo::ARCHITECTURE_UNSPECIFIED;
+constexpr CpuInfo_Architecture CpuInfo::X86_64;
+constexpr CpuInfo_Architecture CpuInfo::AARCH64;
+constexpr CpuInfo_Architecture CpuInfo::ARMV7L;
+constexpr CpuInfo_Architecture CpuInfo::Architecture_MIN;
+constexpr CpuInfo_Architecture CpuInfo::Architecture_MAX;
+constexpr int CpuInfo::Architecture_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool CrashReportInfo_CrashReportUploadStatus_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> CrashReportInfo_CrashReportUploadStatus_strings[5] = {};
+
+static const char CrashReportInfo_CrashReportUploadStatus_names[] =
+  "UPLOAD_STATUS_NOT_UPLOADED"
+  "UPLOAD_STATUS_PENDING"
+  "UPLOAD_STATUS_PENDING_USER_REQUESTED"
+  "UPLOAD_STATUS_UNKNOWN"
+  "UPLOAD_STATUS_UPLOADED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry CrashReportInfo_CrashReportUploadStatus_entries[] = {
+  { {CrashReportInfo_CrashReportUploadStatus_names + 0, 26}, 1 },
+  { {CrashReportInfo_CrashReportUploadStatus_names + 26, 21}, 2 },
+  { {CrashReportInfo_CrashReportUploadStatus_names + 47, 36}, 3 },
+  { {CrashReportInfo_CrashReportUploadStatus_names + 83, 21}, 0 },
+  { {CrashReportInfo_CrashReportUploadStatus_names + 104, 22}, 4 },
+};
+
+static const int CrashReportInfo_CrashReportUploadStatus_entries_by_number[] = {
+  3, // 0 -> UPLOAD_STATUS_UNKNOWN
+  0, // 1 -> UPLOAD_STATUS_NOT_UPLOADED
+  1, // 2 -> UPLOAD_STATUS_PENDING
+  2, // 3 -> UPLOAD_STATUS_PENDING_USER_REQUESTED
+  4, // 4 -> UPLOAD_STATUS_UPLOADED
+};
+
+const std::string& CrashReportInfo_CrashReportUploadStatus_Name(
+    CrashReportInfo_CrashReportUploadStatus value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          CrashReportInfo_CrashReportUploadStatus_entries,
+          CrashReportInfo_CrashReportUploadStatus_entries_by_number,
+          5, CrashReportInfo_CrashReportUploadStatus_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      CrashReportInfo_CrashReportUploadStatus_entries,
+      CrashReportInfo_CrashReportUploadStatus_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     CrashReportInfo_CrashReportUploadStatus_strings[idx].get();
+}
+bool CrashReportInfo_CrashReportUploadStatus_Parse(
+    const std::string& name, CrashReportInfo_CrashReportUploadStatus* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      CrashReportInfo_CrashReportUploadStatus_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<CrashReportInfo_CrashReportUploadStatus>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo::UPLOAD_STATUS_UNKNOWN;
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo::UPLOAD_STATUS_NOT_UPLOADED;
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo::UPLOAD_STATUS_PENDING;
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo::UPLOAD_STATUS_PENDING_USER_REQUESTED;
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo::UPLOAD_STATUS_UPLOADED;
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo::CrashReportUploadStatus_MIN;
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo::CrashReportUploadStatus_MAX;
+constexpr int CrashReportInfo::CrashReportUploadStatus_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool BootInfo_BootMethod_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> BootInfo_BootMethod_strings[5] = {};
+
+static const char BootInfo_BootMethod_names[] =
+  "CROS_EFI_SECURE"
+  "CROS_LEGACY"
+  "CROS_SECURE"
+  "CROS_UEFI"
+  "UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry BootInfo_BootMethod_entries[] = {
+  { {BootInfo_BootMethod_names + 0, 15}, 4 },
+  { {BootInfo_BootMethod_names + 15, 11}, 3 },
+  { {BootInfo_BootMethod_names + 26, 11}, 1 },
+  { {BootInfo_BootMethod_names + 37, 9}, 2 },
+  { {BootInfo_BootMethod_names + 46, 7}, 0 },
+};
+
+static const int BootInfo_BootMethod_entries_by_number[] = {
+  4, // 0 -> UNKNOWN
+  2, // 1 -> CROS_SECURE
+  3, // 2 -> CROS_UEFI
+  1, // 3 -> CROS_LEGACY
+  0, // 4 -> CROS_EFI_SECURE
+};
+
+const std::string& BootInfo_BootMethod_Name(
+    BootInfo_BootMethod value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          BootInfo_BootMethod_entries,
+          BootInfo_BootMethod_entries_by_number,
+          5, BootInfo_BootMethod_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      BootInfo_BootMethod_entries,
+      BootInfo_BootMethod_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     BootInfo_BootMethod_strings[idx].get();
+}
+bool BootInfo_BootMethod_Parse(
+    const std::string& name, BootInfo_BootMethod* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      BootInfo_BootMethod_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<BootInfo_BootMethod>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr BootInfo_BootMethod BootInfo::UNKNOWN;
+constexpr BootInfo_BootMethod BootInfo::CROS_SECURE;
+constexpr BootInfo_BootMethod BootInfo::CROS_UEFI;
+constexpr BootInfo_BootMethod BootInfo::CROS_LEGACY;
+constexpr BootInfo_BootMethod BootInfo::CROS_EFI_SECURE;
+constexpr BootInfo_BootMethod BootInfo::BootMethod_MIN;
+constexpr BootInfo_BootMethod BootInfo::BootMethod_MAX;
+constexpr int BootInfo::BootMethod_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool OsUpdateStatus_UpdateStatus_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> OsUpdateStatus_UpdateStatus_strings[4] = {};
+
+static const char OsUpdateStatus_UpdateStatus_names[] =
+  "OS_IMAGE_DOWNLOAD_IN_PROGRESS"
+  "OS_IMAGE_DOWNLOAD_NOT_STARTED"
+  "OS_UPDATE_NEED_REBOOT"
+  "OS_UP_TO_DATE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry OsUpdateStatus_UpdateStatus_entries[] = {
+  { {OsUpdateStatus_UpdateStatus_names + 0, 29}, 2 },
+  { {OsUpdateStatus_UpdateStatus_names + 29, 29}, 1 },
+  { {OsUpdateStatus_UpdateStatus_names + 58, 21}, 3 },
+  { {OsUpdateStatus_UpdateStatus_names + 79, 13}, 0 },
+};
+
+static const int OsUpdateStatus_UpdateStatus_entries_by_number[] = {
+  3, // 0 -> OS_UP_TO_DATE
+  1, // 1 -> OS_IMAGE_DOWNLOAD_NOT_STARTED
+  0, // 2 -> OS_IMAGE_DOWNLOAD_IN_PROGRESS
+  2, // 3 -> OS_UPDATE_NEED_REBOOT
+};
+
+const std::string& OsUpdateStatus_UpdateStatus_Name(
+    OsUpdateStatus_UpdateStatus value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          OsUpdateStatus_UpdateStatus_entries,
+          OsUpdateStatus_UpdateStatus_entries_by_number,
+          4, OsUpdateStatus_UpdateStatus_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      OsUpdateStatus_UpdateStatus_entries,
+      OsUpdateStatus_UpdateStatus_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     OsUpdateStatus_UpdateStatus_strings[idx].get();
+}
+bool OsUpdateStatus_UpdateStatus_Parse(
+    const std::string& name, OsUpdateStatus_UpdateStatus* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      OsUpdateStatus_UpdateStatus_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<OsUpdateStatus_UpdateStatus>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr OsUpdateStatus_UpdateStatus OsUpdateStatus::OS_UP_TO_DATE;
+constexpr OsUpdateStatus_UpdateStatus OsUpdateStatus::OS_IMAGE_DOWNLOAD_NOT_STARTED;
+constexpr OsUpdateStatus_UpdateStatus OsUpdateStatus::OS_IMAGE_DOWNLOAD_IN_PROGRESS;
+constexpr OsUpdateStatus_UpdateStatus OsUpdateStatus::OS_UPDATE_NEED_REBOOT;
+constexpr OsUpdateStatus_UpdateStatus OsUpdateStatus::UpdateStatus_MIN;
+constexpr OsUpdateStatus_UpdateStatus OsUpdateStatus::UpdateStatus_MAX;
+constexpr int OsUpdateStatus::UpdateStatus_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AppInfo_AppType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AppInfo_AppType_strings[8] = {};
+
+static const char AppInfo_AppType_names[] =
+  "TYPE_ARC"
+  "TYPE_BOREALIS"
+  "TYPE_BUILTIN"
+  "TYPE_CROSTINI"
+  "TYPE_EXTENSION"
+  "TYPE_PLUGINVM"
+  "TYPE_UNKNOWN"
+  "TYPE_WEB";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AppInfo_AppType_entries[] = {
+  { {AppInfo_AppType_names + 0, 8}, 1 },
+  { {AppInfo_AppType_names + 8, 13}, 7 },
+  { {AppInfo_AppType_names + 21, 12}, 2 },
+  { {AppInfo_AppType_names + 33, 13}, 3 },
+  { {AppInfo_AppType_names + 46, 14}, 4 },
+  { {AppInfo_AppType_names + 60, 13}, 6 },
+  { {AppInfo_AppType_names + 73, 12}, 0 },
+  { {AppInfo_AppType_names + 85, 8}, 5 },
+};
+
+static const int AppInfo_AppType_entries_by_number[] = {
+  6, // 0 -> TYPE_UNKNOWN
+  0, // 1 -> TYPE_ARC
+  2, // 2 -> TYPE_BUILTIN
+  3, // 3 -> TYPE_CROSTINI
+  4, // 4 -> TYPE_EXTENSION
+  7, // 5 -> TYPE_WEB
+  5, // 6 -> TYPE_PLUGINVM
+  1, // 7 -> TYPE_BOREALIS
+};
+
+const std::string& AppInfo_AppType_Name(
+    AppInfo_AppType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AppInfo_AppType_entries,
+          AppInfo_AppType_entries_by_number,
+          8, AppInfo_AppType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AppInfo_AppType_entries,
+      AppInfo_AppType_entries_by_number,
+      8, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AppInfo_AppType_strings[idx].get();
+}
+bool AppInfo_AppType_Parse(
+    const std::string& name, AppInfo_AppType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AppInfo_AppType_entries, 8, name, &int_value);
+  if (success) {
+    *value = static_cast<AppInfo_AppType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AppInfo_AppType AppInfo::TYPE_UNKNOWN;
+constexpr AppInfo_AppType AppInfo::TYPE_ARC;
+constexpr AppInfo_AppType AppInfo::TYPE_BUILTIN;
+constexpr AppInfo_AppType AppInfo::TYPE_CROSTINI;
+constexpr AppInfo_AppType AppInfo::TYPE_EXTENSION;
+constexpr AppInfo_AppType AppInfo::TYPE_WEB;
+constexpr AppInfo_AppType AppInfo::TYPE_PLUGINVM;
+constexpr AppInfo_AppType AppInfo::TYPE_BOREALIS;
+constexpr AppInfo_AppType AppInfo::AppType_MIN;
+constexpr AppInfo_AppType AppInfo::AppType_MAX;
+constexpr int AppInfo::AppType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AppInfo_Status_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AppInfo_Status_strings[4] = {};
+
+static const char AppInfo_Status_names[] =
+  "STATUS_DISABLED"
+  "STATUS_INSTALLED"
+  "STATUS_UNINSTALLED"
+  "STATUS_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AppInfo_Status_entries[] = {
+  { {AppInfo_Status_names + 0, 15}, 2 },
+  { {AppInfo_Status_names + 15, 16}, 1 },
+  { {AppInfo_Status_names + 31, 18}, 3 },
+  { {AppInfo_Status_names + 49, 14}, 0 },
+};
+
+static const int AppInfo_Status_entries_by_number[] = {
+  3, // 0 -> STATUS_UNKNOWN
+  1, // 1 -> STATUS_INSTALLED
+  0, // 2 -> STATUS_DISABLED
+  2, // 3 -> STATUS_UNINSTALLED
+};
+
+const std::string& AppInfo_Status_Name(
+    AppInfo_Status value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AppInfo_Status_entries,
+          AppInfo_Status_entries_by_number,
+          4, AppInfo_Status_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AppInfo_Status_entries,
+      AppInfo_Status_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AppInfo_Status_strings[idx].get();
+}
+bool AppInfo_Status_Parse(
+    const std::string& name, AppInfo_Status* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AppInfo_Status_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<AppInfo_Status>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AppInfo_Status AppInfo::STATUS_UNKNOWN;
+constexpr AppInfo_Status AppInfo::STATUS_INSTALLED;
+constexpr AppInfo_Status AppInfo::STATUS_DISABLED;
+constexpr AppInfo_Status AppInfo::STATUS_UNINSTALLED;
+constexpr AppInfo_Status AppInfo::Status_MIN;
+constexpr AppInfo_Status AppInfo::Status_MAX;
+constexpr int AppInfo::Status_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AndroidAppInfo_AndroidAppStatus_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AndroidAppInfo_AndroidAppStatus_strings[4] = {};
+
+static const char AndroidAppInfo_AndroidAppStatus_names[] =
+  "STATUS_DISABLED"
+  "STATUS_ENABLED"
+  "STATUS_SUSPENDED"
+  "STATUS_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AndroidAppInfo_AndroidAppStatus_entries[] = {
+  { {AndroidAppInfo_AndroidAppStatus_names + 0, 15}, 3 },
+  { {AndroidAppInfo_AndroidAppStatus_names + 15, 14}, 1 },
+  { {AndroidAppInfo_AndroidAppStatus_names + 29, 16}, 2 },
+  { {AndroidAppInfo_AndroidAppStatus_names + 45, 14}, 0 },
+};
+
+static const int AndroidAppInfo_AndroidAppStatus_entries_by_number[] = {
+  3, // 0 -> STATUS_UNKNOWN
+  1, // 1 -> STATUS_ENABLED
+  2, // 2 -> STATUS_SUSPENDED
+  0, // 3 -> STATUS_DISABLED
+};
+
+const std::string& AndroidAppInfo_AndroidAppStatus_Name(
+    AndroidAppInfo_AndroidAppStatus value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AndroidAppInfo_AndroidAppStatus_entries,
+          AndroidAppInfo_AndroidAppStatus_entries_by_number,
+          4, AndroidAppInfo_AndroidAppStatus_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AndroidAppInfo_AndroidAppStatus_entries,
+      AndroidAppInfo_AndroidAppStatus_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AndroidAppInfo_AndroidAppStatus_strings[idx].get();
+}
+bool AndroidAppInfo_AndroidAppStatus_Parse(
+    const std::string& name, AndroidAppInfo_AndroidAppStatus* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AndroidAppInfo_AndroidAppStatus_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<AndroidAppInfo_AndroidAppStatus>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AndroidAppInfo_AndroidAppStatus AndroidAppInfo::STATUS_UNKNOWN;
+constexpr AndroidAppInfo_AndroidAppStatus AndroidAppInfo::STATUS_ENABLED;
+constexpr AndroidAppInfo_AndroidAppStatus AndroidAppInfo::STATUS_SUSPENDED;
+constexpr AndroidAppInfo_AndroidAppStatus AndroidAppInfo::STATUS_DISABLED;
+constexpr AndroidAppInfo_AndroidAppStatus AndroidAppInfo::AndroidAppStatus_MIN;
+constexpr AndroidAppInfo_AndroidAppStatus AndroidAppInfo::AndroidAppStatus_MAX;
+constexpr int AndroidAppInfo::AndroidAppStatus_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AndroidAppInfo_InstalledSource_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AndroidAppInfo_InstalledSource_strings[4] = {};
+
+static const char AndroidAppInfo_InstalledSource_names[] =
+  "SOURCE_BY_ADMIN"
+  "SOURCE_BY_USER"
+  "SOURCE_NOT_INSTALLED"
+  "SOURCE_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AndroidAppInfo_InstalledSource_entries[] = {
+  { {AndroidAppInfo_InstalledSource_names + 0, 15}, 1 },
+  { {AndroidAppInfo_InstalledSource_names + 15, 14}, 2 },
+  { {AndroidAppInfo_InstalledSource_names + 29, 20}, 3 },
+  { {AndroidAppInfo_InstalledSource_names + 49, 14}, 0 },
+};
+
+static const int AndroidAppInfo_InstalledSource_entries_by_number[] = {
+  3, // 0 -> SOURCE_UNKNOWN
+  0, // 1 -> SOURCE_BY_ADMIN
+  1, // 2 -> SOURCE_BY_USER
+  2, // 3 -> SOURCE_NOT_INSTALLED
+};
+
+const std::string& AndroidAppInfo_InstalledSource_Name(
+    AndroidAppInfo_InstalledSource value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AndroidAppInfo_InstalledSource_entries,
+          AndroidAppInfo_InstalledSource_entries_by_number,
+          4, AndroidAppInfo_InstalledSource_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AndroidAppInfo_InstalledSource_entries,
+      AndroidAppInfo_InstalledSource_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AndroidAppInfo_InstalledSource_strings[idx].get();
+}
+bool AndroidAppInfo_InstalledSource_Parse(
+    const std::string& name, AndroidAppInfo_InstalledSource* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AndroidAppInfo_InstalledSource_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<AndroidAppInfo_InstalledSource>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AndroidAppInfo_InstalledSource AndroidAppInfo::SOURCE_UNKNOWN;
+constexpr AndroidAppInfo_InstalledSource AndroidAppInfo::SOURCE_BY_ADMIN;
+constexpr AndroidAppInfo_InstalledSource AndroidAppInfo::SOURCE_BY_USER;
+constexpr AndroidAppInfo_InstalledSource AndroidAppInfo::SOURCE_NOT_INSTALLED;
+constexpr AndroidAppInfo_InstalledSource AndroidAppInfo::InstalledSource_MIN;
+constexpr AndroidAppInfo_InstalledSource AndroidAppInfo::InstalledSource_MAX;
+constexpr int AndroidAppInfo::InstalledSource_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool Extension_ExtensionType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> Extension_ExtensionType_strings[10] = {};
+
+static const char Extension_ExtensionType_names[] =
+  "TYPE_CHROMEOS_SYSTEM_EXTENSION"
+  "TYPE_EXTENSION"
+  "TYPE_HOSTED_APP"
+  "TYPE_LEGACY_PACKAGED_APP"
+  "TYPE_LOGIN_SCREEN_EXTENSION"
+  "TYPE_PACKAGED_APP"
+  "TYPE_PLATFORM_APP"
+  "TYPE_THEME"
+  "TYPE_UNKNOWN"
+  "TYPE_USER_SCRIPT";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry Extension_ExtensionType_entries[] = {
+  { {Extension_ExtensionType_names + 0, 30}, 9 },
+  { {Extension_ExtensionType_names + 30, 14}, 1 },
+  { {Extension_ExtensionType_names + 44, 15}, 2 },
+  { {Extension_ExtensionType_names + 59, 24}, 4 },
+  { {Extension_ExtensionType_names + 83, 27}, 8 },
+  { {Extension_ExtensionType_names + 110, 17}, 3 },
+  { {Extension_ExtensionType_names + 127, 17}, 7 },
+  { {Extension_ExtensionType_names + 144, 10}, 5 },
+  { {Extension_ExtensionType_names + 154, 12}, 0 },
+  { {Extension_ExtensionType_names + 166, 16}, 6 },
+};
+
+static const int Extension_ExtensionType_entries_by_number[] = {
+  8, // 0 -> TYPE_UNKNOWN
+  1, // 1 -> TYPE_EXTENSION
+  2, // 2 -> TYPE_HOSTED_APP
+  5, // 3 -> TYPE_PACKAGED_APP
+  3, // 4 -> TYPE_LEGACY_PACKAGED_APP
+  7, // 5 -> TYPE_THEME
+  9, // 6 -> TYPE_USER_SCRIPT
+  6, // 7 -> TYPE_PLATFORM_APP
+  4, // 8 -> TYPE_LOGIN_SCREEN_EXTENSION
+  0, // 9 -> TYPE_CHROMEOS_SYSTEM_EXTENSION
+};
+
+const std::string& Extension_ExtensionType_Name(
+    Extension_ExtensionType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          Extension_ExtensionType_entries,
+          Extension_ExtensionType_entries_by_number,
+          10, Extension_ExtensionType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      Extension_ExtensionType_entries,
+      Extension_ExtensionType_entries_by_number,
+      10, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     Extension_ExtensionType_strings[idx].get();
+}
+bool Extension_ExtensionType_Parse(
+    const std::string& name, Extension_ExtensionType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      Extension_ExtensionType_entries, 10, name, &int_value);
+  if (success) {
+    *value = static_cast<Extension_ExtensionType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr Extension_ExtensionType Extension::TYPE_UNKNOWN;
+constexpr Extension_ExtensionType Extension::TYPE_EXTENSION;
+constexpr Extension_ExtensionType Extension::TYPE_HOSTED_APP;
+constexpr Extension_ExtensionType Extension::TYPE_PACKAGED_APP;
+constexpr Extension_ExtensionType Extension::TYPE_LEGACY_PACKAGED_APP;
+constexpr Extension_ExtensionType Extension::TYPE_THEME;
+constexpr Extension_ExtensionType Extension::TYPE_USER_SCRIPT;
+constexpr Extension_ExtensionType Extension::TYPE_PLATFORM_APP;
+constexpr Extension_ExtensionType Extension::TYPE_LOGIN_SCREEN_EXTENSION;
+constexpr Extension_ExtensionType Extension::TYPE_CHROMEOS_SYSTEM_EXTENSION;
+constexpr Extension_ExtensionType Extension::ExtensionType_MIN;
+constexpr Extension_ExtensionType Extension::ExtensionType_MAX;
+constexpr int Extension::ExtensionType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool Extension_InstallType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> Extension_InstallType_strings[5] = {};
+
+static const char Extension_InstallType_names[] =
+  "TYPE_ADMIN"
+  "TYPE_DEVELOPMENT"
+  "TYPE_NORMAL"
+  "TYPE_OTHER"
+  "TYPE_SIDELOAD";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry Extension_InstallType_entries[] = {
+  { {Extension_InstallType_names + 0, 10}, 3 },
+  { {Extension_InstallType_names + 10, 16}, 1 },
+  { {Extension_InstallType_names + 26, 11}, 0 },
+  { {Extension_InstallType_names + 37, 10}, 4 },
+  { {Extension_InstallType_names + 47, 13}, 2 },
+};
+
+static const int Extension_InstallType_entries_by_number[] = {
+  2, // 0 -> TYPE_NORMAL
+  1, // 1 -> TYPE_DEVELOPMENT
+  4, // 2 -> TYPE_SIDELOAD
+  0, // 3 -> TYPE_ADMIN
+  3, // 4 -> TYPE_OTHER
+};
+
+const std::string& Extension_InstallType_Name(
+    Extension_InstallType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          Extension_InstallType_entries,
+          Extension_InstallType_entries_by_number,
+          5, Extension_InstallType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      Extension_InstallType_entries,
+      Extension_InstallType_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     Extension_InstallType_strings[idx].get();
+}
+bool Extension_InstallType_Parse(
+    const std::string& name, Extension_InstallType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      Extension_InstallType_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<Extension_InstallType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr Extension_InstallType Extension::TYPE_NORMAL;
+constexpr Extension_InstallType Extension::TYPE_DEVELOPMENT;
+constexpr Extension_InstallType Extension::TYPE_SIDELOAD;
+constexpr Extension_InstallType Extension::TYPE_ADMIN;
+constexpr Extension_InstallType Extension::TYPE_OTHER;
+constexpr Extension_InstallType Extension::InstallType_MIN;
+constexpr Extension_InstallType Extension::InstallType_MAX;
+constexpr int Extension::InstallType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool Policy_PolicyLevel_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> Policy_PolicyLevel_strings[3] = {};
+
+static const char Policy_PolicyLevel_names[] =
+  "LEVEL_MANDATORY"
+  "LEVEL_RECOMMENDED"
+  "LEVEL_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry Policy_PolicyLevel_entries[] = {
+  { {Policy_PolicyLevel_names + 0, 15}, 2 },
+  { {Policy_PolicyLevel_names + 15, 17}, 1 },
+  { {Policy_PolicyLevel_names + 32, 13}, 0 },
+};
+
+static const int Policy_PolicyLevel_entries_by_number[] = {
+  2, // 0 -> LEVEL_UNKNOWN
+  1, // 1 -> LEVEL_RECOMMENDED
+  0, // 2 -> LEVEL_MANDATORY
+};
+
+const std::string& Policy_PolicyLevel_Name(
+    Policy_PolicyLevel value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          Policy_PolicyLevel_entries,
+          Policy_PolicyLevel_entries_by_number,
+          3, Policy_PolicyLevel_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      Policy_PolicyLevel_entries,
+      Policy_PolicyLevel_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     Policy_PolicyLevel_strings[idx].get();
+}
+bool Policy_PolicyLevel_Parse(
+    const std::string& name, Policy_PolicyLevel* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      Policy_PolicyLevel_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<Policy_PolicyLevel>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr Policy_PolicyLevel Policy::LEVEL_UNKNOWN;
+constexpr Policy_PolicyLevel Policy::LEVEL_RECOMMENDED;
+constexpr Policy_PolicyLevel Policy::LEVEL_MANDATORY;
+constexpr Policy_PolicyLevel Policy::PolicyLevel_MIN;
+constexpr Policy_PolicyLevel Policy::PolicyLevel_MAX;
+constexpr int Policy::PolicyLevel_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool Policy_PolicyScope_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> Policy_PolicyScope_strings[3] = {};
+
+static const char Policy_PolicyScope_names[] =
+  "SCOPE_MACHINE"
+  "SCOPE_UNKNOWN"
+  "SCOPE_USER";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry Policy_PolicyScope_entries[] = {
+  { {Policy_PolicyScope_names + 0, 13}, 2 },
+  { {Policy_PolicyScope_names + 13, 13}, 0 },
+  { {Policy_PolicyScope_names + 26, 10}, 1 },
+};
+
+static const int Policy_PolicyScope_entries_by_number[] = {
+  1, // 0 -> SCOPE_UNKNOWN
+  2, // 1 -> SCOPE_USER
+  0, // 2 -> SCOPE_MACHINE
+};
+
+const std::string& Policy_PolicyScope_Name(
+    Policy_PolicyScope value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          Policy_PolicyScope_entries,
+          Policy_PolicyScope_entries_by_number,
+          3, Policy_PolicyScope_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      Policy_PolicyScope_entries,
+      Policy_PolicyScope_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     Policy_PolicyScope_strings[idx].get();
+}
+bool Policy_PolicyScope_Parse(
+    const std::string& name, Policy_PolicyScope* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      Policy_PolicyScope_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<Policy_PolicyScope>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr Policy_PolicyScope Policy::SCOPE_UNKNOWN;
+constexpr Policy_PolicyScope Policy::SCOPE_USER;
+constexpr Policy_PolicyScope Policy::SCOPE_MACHINE;
+constexpr Policy_PolicyScope Policy::PolicyScope_MIN;
+constexpr Policy_PolicyScope Policy::PolicyScope_MAX;
+constexpr int Policy::PolicyScope_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool Policy_PolicySource_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> Policy_PolicySource_strings[11] = {};
+
+static const char Policy_PolicySource_names[] =
+  "SOURCE_ACTIVE_DIRECTORY"
+  "SOURCE_CLOUD"
+  "SOURCE_CLOUD_FROM_ASH"
+  "SOURCE_COMMAND_LINE"
+  "SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE_DEPRECATED"
+  "SOURCE_ENTERPRISE_DEFAULT"
+  "SOURCE_MERGED"
+  "SOURCE_PLATFORM"
+  "SOURCE_PRIORITY_CLOUD_DEPRECATED"
+  "SOURCE_RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE"
+  "SOURCE_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry Policy_PolicySource_entries[] = {
+  { {Policy_PolicySource_names + 0, 23}, 3 },
+  { {Policy_PolicySource_names + 23, 12}, 2 },
+  { {Policy_PolicySource_names + 35, 21}, 9 },
+  { {Policy_PolicySource_names + 56, 19}, 8 },
+  { {Policy_PolicySource_names + 75, 47}, 4 },
+  { {Policy_PolicySource_names + 122, 25}, 1 },
+  { {Policy_PolicySource_names + 147, 13}, 7 },
+  { {Policy_PolicySource_names + 160, 15}, 5 },
+  { {Policy_PolicySource_names + 175, 32}, 6 },
+  { {Policy_PolicySource_names + 207, 48}, 10 },
+  { {Policy_PolicySource_names + 255, 14}, 0 },
+};
+
+static const int Policy_PolicySource_entries_by_number[] = {
+  10, // 0 -> SOURCE_UNKNOWN
+  5, // 1 -> SOURCE_ENTERPRISE_DEFAULT
+  1, // 2 -> SOURCE_CLOUD
+  0, // 3 -> SOURCE_ACTIVE_DIRECTORY
+  4, // 4 -> SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE_DEPRECATED
+  7, // 5 -> SOURCE_PLATFORM
+  8, // 6 -> SOURCE_PRIORITY_CLOUD_DEPRECATED
+  6, // 7 -> SOURCE_MERGED
+  3, // 8 -> SOURCE_COMMAND_LINE
+  2, // 9 -> SOURCE_CLOUD_FROM_ASH
+  9, // 10 -> SOURCE_RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE
+};
+
+const std::string& Policy_PolicySource_Name(
+    Policy_PolicySource value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          Policy_PolicySource_entries,
+          Policy_PolicySource_entries_by_number,
+          11, Policy_PolicySource_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      Policy_PolicySource_entries,
+      Policy_PolicySource_entries_by_number,
+      11, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     Policy_PolicySource_strings[idx].get();
+}
+bool Policy_PolicySource_Parse(
+    const std::string& name, Policy_PolicySource* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      Policy_PolicySource_entries, 11, name, &int_value);
+  if (success) {
+    *value = static_cast<Policy_PolicySource>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr Policy_PolicySource Policy::SOURCE_UNKNOWN;
+constexpr Policy_PolicySource Policy::SOURCE_ENTERPRISE_DEFAULT;
+constexpr Policy_PolicySource Policy::SOURCE_CLOUD;
+constexpr Policy_PolicySource Policy::SOURCE_ACTIVE_DIRECTORY;
+constexpr Policy_PolicySource Policy::SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE_DEPRECATED;
+constexpr Policy_PolicySource Policy::SOURCE_PLATFORM;
+constexpr Policy_PolicySource Policy::SOURCE_PRIORITY_CLOUD_DEPRECATED;
+constexpr Policy_PolicySource Policy::SOURCE_MERGED;
+constexpr Policy_PolicySource Policy::SOURCE_COMMAND_LINE;
+constexpr Policy_PolicySource Policy::SOURCE_CLOUD_FROM_ASH;
+constexpr Policy_PolicySource Policy::SOURCE_RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE;
+constexpr Policy_PolicySource Policy::PolicySource_MIN;
+constexpr Policy_PolicySource Policy::PolicySource_MAX;
+constexpr int Policy::PolicySource_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PolicyValueValidationIssue_ValueValidationIssueSeverity_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PolicyValueValidationIssue_ValueValidationIssueSeverity_strings[3] = {};
+
+static const char PolicyValueValidationIssue_ValueValidationIssueSeverity_names[] =
+  "VALUE_VALIDATION_ISSUE_SEVERITY_ERROR"
+  "VALUE_VALIDATION_ISSUE_SEVERITY_UNSPECIFIED"
+  "VALUE_VALIDATION_ISSUE_SEVERITY_WARNING";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PolicyValueValidationIssue_ValueValidationIssueSeverity_entries[] = {
+  { {PolicyValueValidationIssue_ValueValidationIssueSeverity_names + 0, 37}, 2 },
+  { {PolicyValueValidationIssue_ValueValidationIssueSeverity_names + 37, 43}, 0 },
+  { {PolicyValueValidationIssue_ValueValidationIssueSeverity_names + 80, 39}, 1 },
+};
+
+static const int PolicyValueValidationIssue_ValueValidationIssueSeverity_entries_by_number[] = {
+  1, // 0 -> VALUE_VALIDATION_ISSUE_SEVERITY_UNSPECIFIED
+  2, // 1 -> VALUE_VALIDATION_ISSUE_SEVERITY_WARNING
+  0, // 2 -> VALUE_VALIDATION_ISSUE_SEVERITY_ERROR
+};
+
+const std::string& PolicyValueValidationIssue_ValueValidationIssueSeverity_Name(
+    PolicyValueValidationIssue_ValueValidationIssueSeverity value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PolicyValueValidationIssue_ValueValidationIssueSeverity_entries,
+          PolicyValueValidationIssue_ValueValidationIssueSeverity_entries_by_number,
+          3, PolicyValueValidationIssue_ValueValidationIssueSeverity_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PolicyValueValidationIssue_ValueValidationIssueSeverity_entries,
+      PolicyValueValidationIssue_ValueValidationIssueSeverity_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PolicyValueValidationIssue_ValueValidationIssueSeverity_strings[idx].get();
+}
+bool PolicyValueValidationIssue_ValueValidationIssueSeverity_Parse(
+    const std::string& name, PolicyValueValidationIssue_ValueValidationIssueSeverity* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PolicyValueValidationIssue_ValueValidationIssueSeverity_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<PolicyValueValidationIssue_ValueValidationIssueSeverity>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue::VALUE_VALIDATION_ISSUE_SEVERITY_UNSPECIFIED;
+constexpr PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue::VALUE_VALIDATION_ISSUE_SEVERITY_WARNING;
+constexpr PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue::VALUE_VALIDATION_ISSUE_SEVERITY_ERROR;
+constexpr PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue::ValueValidationIssueSeverity_MIN;
+constexpr PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue::ValueValidationIssueSeverity_MAX;
+constexpr int PolicyValueValidationIssue::ValueValidationIssueSeverity_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PolicyValidationReportRequest_ValidationResultType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+    case 14:
+    case 15:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PolicyValidationReportRequest_ValidationResultType_strings[16] = {};
+
+static const char PolicyValidationReportRequest_ValidationResultType_names[] =
+  "VALIDATION_RESULT_TYPE_BAD_DEVICE_ID"
+  "VALIDATION_RESULT_TYPE_BAD_DM_TOKEN"
+  "VALIDATION_RESULT_TYPE_BAD_INITIAL_SIGNATURE"
+  "VALIDATION_RESULT_TYPE_BAD_KEY_VERIFICATION_SIGNATURE"
+  "VALIDATION_RESULT_TYPE_BAD_SIGNATURE"
+  "VALIDATION_RESULT_TYPE_BAD_TIMESTAMP"
+  "VALIDATION_RESULT_TYPE_BAD_USER"
+  "VALIDATION_RESULT_TYPE_ERROR_CODE_PRESENT"
+  "VALIDATION_RESULT_TYPE_ERROR_UNSPECIFIED"
+  "VALIDATION_RESULT_TYPE_PAYLOAD_PARSE_ERROR"
+  "VALIDATION_RESULT_TYPE_POLICY_PARSE_ERROR"
+  "VALIDATION_RESULT_TYPE_SUCCESS"
+  "VALIDATION_RESULT_TYPE_VALUE_ERROR"
+  "VALIDATION_RESULT_TYPE_VALUE_WARNING"
+  "VALIDATION_RESULT_TYPE_WRONG_POLICY_TYPE"
+  "VALIDATION_RESULT_TYPE_WRONG_SETTINGS_ENTITY_ID";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PolicyValidationReportRequest_ValidationResultType_entries[] = {
+  { {PolicyValidationReportRequest_ValidationResultType_names + 0, 36}, 10 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 36, 35}, 9 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 71, 44}, 2 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 115, 53}, 13 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 168, 36}, 3 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 204, 36}, 8 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 240, 31}, 11 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 271, 41}, 4 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 312, 40}, 0 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 352, 42}, 5 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 394, 41}, 12 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 435, 30}, 1 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 465, 34}, 15 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 499, 36}, 14 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 535, 40}, 6 },
+  { {PolicyValidationReportRequest_ValidationResultType_names + 575, 47}, 7 },
+};
+
+static const int PolicyValidationReportRequest_ValidationResultType_entries_by_number[] = {
+  8, // 0 -> VALIDATION_RESULT_TYPE_ERROR_UNSPECIFIED
+  11, // 1 -> VALIDATION_RESULT_TYPE_SUCCESS
+  2, // 2 -> VALIDATION_RESULT_TYPE_BAD_INITIAL_SIGNATURE
+  4, // 3 -> VALIDATION_RESULT_TYPE_BAD_SIGNATURE
+  7, // 4 -> VALIDATION_RESULT_TYPE_ERROR_CODE_PRESENT
+  9, // 5 -> VALIDATION_RESULT_TYPE_PAYLOAD_PARSE_ERROR
+  14, // 6 -> VALIDATION_RESULT_TYPE_WRONG_POLICY_TYPE
+  15, // 7 -> VALIDATION_RESULT_TYPE_WRONG_SETTINGS_ENTITY_ID
+  5, // 8 -> VALIDATION_RESULT_TYPE_BAD_TIMESTAMP
+  1, // 9 -> VALIDATION_RESULT_TYPE_BAD_DM_TOKEN
+  0, // 10 -> VALIDATION_RESULT_TYPE_BAD_DEVICE_ID
+  6, // 11 -> VALIDATION_RESULT_TYPE_BAD_USER
+  10, // 12 -> VALIDATION_RESULT_TYPE_POLICY_PARSE_ERROR
+  3, // 13 -> VALIDATION_RESULT_TYPE_BAD_KEY_VERIFICATION_SIGNATURE
+  13, // 14 -> VALIDATION_RESULT_TYPE_VALUE_WARNING
+  12, // 15 -> VALIDATION_RESULT_TYPE_VALUE_ERROR
+};
+
+const std::string& PolicyValidationReportRequest_ValidationResultType_Name(
+    PolicyValidationReportRequest_ValidationResultType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PolicyValidationReportRequest_ValidationResultType_entries,
+          PolicyValidationReportRequest_ValidationResultType_entries_by_number,
+          16, PolicyValidationReportRequest_ValidationResultType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PolicyValidationReportRequest_ValidationResultType_entries,
+      PolicyValidationReportRequest_ValidationResultType_entries_by_number,
+      16, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PolicyValidationReportRequest_ValidationResultType_strings[idx].get();
+}
+bool PolicyValidationReportRequest_ValidationResultType_Parse(
+    const std::string& name, PolicyValidationReportRequest_ValidationResultType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PolicyValidationReportRequest_ValidationResultType_entries, 16, name, &int_value);
+  if (success) {
+    *value = static_cast<PolicyValidationReportRequest_ValidationResultType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_ERROR_UNSPECIFIED;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_SUCCESS;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_BAD_INITIAL_SIGNATURE;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_BAD_SIGNATURE;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_ERROR_CODE_PRESENT;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_PAYLOAD_PARSE_ERROR;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_WRONG_POLICY_TYPE;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_WRONG_SETTINGS_ENTITY_ID;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_BAD_TIMESTAMP;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_BAD_DM_TOKEN;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_BAD_DEVICE_ID;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_BAD_USER;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_POLICY_PARSE_ERROR;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_BAD_KEY_VERIFICATION_SIGNATURE;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_VALUE_WARNING;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::VALIDATION_RESULT_TYPE_VALUE_ERROR;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::ValidationResultType_MIN;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::ValidationResultType_MAX;
+constexpr int PolicyValidationReportRequest::ValidationResultType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceAutoEnrollmentRequest_EnrollmentCheckType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceAutoEnrollmentRequest_EnrollmentCheckType_strings[3] = {};
+
+static const char DeviceAutoEnrollmentRequest_EnrollmentCheckType_names[] =
+  "ENROLLMENT_CHECK_TYPE_FORCED_ENROLLMENT"
+  "ENROLLMENT_CHECK_TYPE_FRE"
+  "ENROLLMENT_CHECK_TYPE_UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceAutoEnrollmentRequest_EnrollmentCheckType_entries[] = {
+  { {DeviceAutoEnrollmentRequest_EnrollmentCheckType_names + 0, 39}, 2 },
+  { {DeviceAutoEnrollmentRequest_EnrollmentCheckType_names + 39, 25}, 1 },
+  { {DeviceAutoEnrollmentRequest_EnrollmentCheckType_names + 64, 33}, 0 },
+};
+
+static const int DeviceAutoEnrollmentRequest_EnrollmentCheckType_entries_by_number[] = {
+  2, // 0 -> ENROLLMENT_CHECK_TYPE_UNSPECIFIED
+  1, // 1 -> ENROLLMENT_CHECK_TYPE_FRE
+  0, // 2 -> ENROLLMENT_CHECK_TYPE_FORCED_ENROLLMENT
+};
+
+const std::string& DeviceAutoEnrollmentRequest_EnrollmentCheckType_Name(
+    DeviceAutoEnrollmentRequest_EnrollmentCheckType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceAutoEnrollmentRequest_EnrollmentCheckType_entries,
+          DeviceAutoEnrollmentRequest_EnrollmentCheckType_entries_by_number,
+          3, DeviceAutoEnrollmentRequest_EnrollmentCheckType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceAutoEnrollmentRequest_EnrollmentCheckType_entries,
+      DeviceAutoEnrollmentRequest_EnrollmentCheckType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceAutoEnrollmentRequest_EnrollmentCheckType_strings[idx].get();
+}
+bool DeviceAutoEnrollmentRequest_EnrollmentCheckType_Parse(
+    const std::string& name, DeviceAutoEnrollmentRequest_EnrollmentCheckType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceAutoEnrollmentRequest_EnrollmentCheckType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceAutoEnrollmentRequest_EnrollmentCheckType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest::ENROLLMENT_CHECK_TYPE_UNSPECIFIED;
+constexpr DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest::ENROLLMENT_CHECK_TYPE_FRE;
+constexpr DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest::ENROLLMENT_CHECK_TYPE_FORCED_ENROLLMENT;
+constexpr DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest::EnrollmentCheckType_MIN;
+constexpr DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest::EnrollmentCheckType_MAX;
+constexpr int DeviceAutoEnrollmentRequest::EnrollmentCheckType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceStateRetrievalResponse_RestoreMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceStateRetrievalResponse_RestoreMode_strings[5] = {};
+
+static const char DeviceStateRetrievalResponse_RestoreMode_names[] =
+  "RESTORE_MODE_DISABLED"
+  "RESTORE_MODE_NONE"
+  "RESTORE_MODE_REENROLLMENT_ENFORCED"
+  "RESTORE_MODE_REENROLLMENT_REQUESTED"
+  "RESTORE_MODE_REENROLLMENT_ZERO_TOUCH";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceStateRetrievalResponse_RestoreMode_entries[] = {
+  { {DeviceStateRetrievalResponse_RestoreMode_names + 0, 21}, 3 },
+  { {DeviceStateRetrievalResponse_RestoreMode_names + 21, 17}, 0 },
+  { {DeviceStateRetrievalResponse_RestoreMode_names + 38, 34}, 2 },
+  { {DeviceStateRetrievalResponse_RestoreMode_names + 72, 35}, 1 },
+  { {DeviceStateRetrievalResponse_RestoreMode_names + 107, 36}, 4 },
+};
+
+static const int DeviceStateRetrievalResponse_RestoreMode_entries_by_number[] = {
+  1, // 0 -> RESTORE_MODE_NONE
+  3, // 1 -> RESTORE_MODE_REENROLLMENT_REQUESTED
+  2, // 2 -> RESTORE_MODE_REENROLLMENT_ENFORCED
+  0, // 3 -> RESTORE_MODE_DISABLED
+  4, // 4 -> RESTORE_MODE_REENROLLMENT_ZERO_TOUCH
+};
+
+const std::string& DeviceStateRetrievalResponse_RestoreMode_Name(
+    DeviceStateRetrievalResponse_RestoreMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceStateRetrievalResponse_RestoreMode_entries,
+          DeviceStateRetrievalResponse_RestoreMode_entries_by_number,
+          5, DeviceStateRetrievalResponse_RestoreMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceStateRetrievalResponse_RestoreMode_entries,
+      DeviceStateRetrievalResponse_RestoreMode_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceStateRetrievalResponse_RestoreMode_strings[idx].get();
+}
+bool DeviceStateRetrievalResponse_RestoreMode_Parse(
+    const std::string& name, DeviceStateRetrievalResponse_RestoreMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceStateRetrievalResponse_RestoreMode_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceStateRetrievalResponse_RestoreMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::RESTORE_MODE_NONE;
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::RESTORE_MODE_REENROLLMENT_REQUESTED;
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::RESTORE_MODE_REENROLLMENT_ENFORCED;
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::RESTORE_MODE_DISABLED;
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::RESTORE_MODE_REENROLLMENT_ZERO_TOUCH;
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::RestoreMode_MIN;
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::RestoreMode_MAX;
+constexpr int DeviceStateRetrievalResponse::RestoreMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_strings[4] = {};
+
+static const char DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_names[] =
+  "INITIAL_ENROLLMENT_MODE_DISABLED"
+  "INITIAL_ENROLLMENT_MODE_ENROLLMENT_ENFORCED"
+  "INITIAL_ENROLLMENT_MODE_NONE"
+  "INITIAL_ENROLLMENT_MODE_ZERO_TOUCH_ENFORCED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_entries[] = {
+  { {DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_names + 0, 32}, 3 },
+  { {DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_names + 32, 43}, 1 },
+  { {DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_names + 75, 28}, 0 },
+  { {DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_names + 103, 43}, 2 },
+};
+
+static const int DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_entries_by_number[] = {
+  2, // 0 -> INITIAL_ENROLLMENT_MODE_NONE
+  1, // 1 -> INITIAL_ENROLLMENT_MODE_ENROLLMENT_ENFORCED
+  3, // 2 -> INITIAL_ENROLLMENT_MODE_ZERO_TOUCH_ENFORCED
+  0, // 3 -> INITIAL_ENROLLMENT_MODE_DISABLED
+};
+
+const std::string& DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Name(
+    DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_entries,
+          DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_entries_by_number,
+          4, DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_entries,
+      DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_strings[idx].get();
+}
+bool DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Parse(
+    const std::string& name, DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse::INITIAL_ENROLLMENT_MODE_NONE;
+constexpr DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse::INITIAL_ENROLLMENT_MODE_ENROLLMENT_ENFORCED;
+constexpr DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse::INITIAL_ENROLLMENT_MODE_ZERO_TOUCH_ENFORCED;
+constexpr DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse::INITIAL_ENROLLMENT_MODE_DISABLED;
+constexpr DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse::InitialEnrollmentMode_MIN;
+constexpr DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse::InitialEnrollmentMode_MAX;
+constexpr int DeviceInitialEnrollmentStateResponse::InitialEnrollmentMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_strings[4] = {};
+
+static const char DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_names[] =
+  "CHROME_EDUCATION"
+  "CHROME_ENTERPRISE"
+  "CHROME_TERMINAL"
+  "NOT_EXIST";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_entries[] = {
+  { {DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_names + 0, 16}, 2 },
+  { {DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_names + 16, 17}, 1 },
+  { {DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_names + 33, 15}, 3 },
+  { {DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_names + 48, 9}, 0 },
+};
+
+static const int DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_entries_by_number[] = {
+  3, // 0 -> NOT_EXIST
+  1, // 1 -> CHROME_ENTERPRISE
+  0, // 2 -> CHROME_EDUCATION
+  2, // 3 -> CHROME_TERMINAL
+};
+
+const std::string& DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Name(
+    DeviceInitialEnrollmentStateResponse_LicensePackagingSKU value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_entries,
+          DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_entries_by_number,
+          4, DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_entries,
+      DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_strings[idx].get();
+}
+bool DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Parse(
+    const std::string& name, DeviceInitialEnrollmentStateResponse_LicensePackagingSKU* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceInitialEnrollmentStateResponse_LicensePackagingSKU>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse::NOT_EXIST;
+constexpr DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse::CHROME_ENTERPRISE;
+constexpr DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse::CHROME_EDUCATION;
+constexpr DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse::CHROME_TERMINAL;
+constexpr DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse::LicensePackagingSKU_MIN;
+constexpr DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse::LicensePackagingSKU_MAX;
+constexpr int DeviceInitialEnrollmentStateResponse::LicensePackagingSKU_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DevicePairingResponse_StatusCode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DevicePairingResponse_StatusCode_strings[6] = {};
+
+static const char DevicePairingResponse_StatusCode_names[] =
+  "CONTROLLER_DEVICE_DEPROVISIONED"
+  "CONTROLLER_DEVICE_NOT_FOUND"
+  "FAILED"
+  "HOST_DEVICE_DEPROVISIONED"
+  "HOST_DEVICE_NOT_FOUND"
+  "SUCCESS";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DevicePairingResponse_StatusCode_entries[] = {
+  { {DevicePairingResponse_StatusCode_names + 0, 31}, 5 },
+  { {DevicePairingResponse_StatusCode_names + 31, 27}, 3 },
+  { {DevicePairingResponse_StatusCode_names + 58, 6}, 1 },
+  { {DevicePairingResponse_StatusCode_names + 64, 25}, 4 },
+  { {DevicePairingResponse_StatusCode_names + 89, 21}, 2 },
+  { {DevicePairingResponse_StatusCode_names + 110, 7}, 0 },
+};
+
+static const int DevicePairingResponse_StatusCode_entries_by_number[] = {
+  5, // 0 -> SUCCESS
+  2, // 1 -> FAILED
+  4, // 2 -> HOST_DEVICE_NOT_FOUND
+  1, // 3 -> CONTROLLER_DEVICE_NOT_FOUND
+  3, // 4 -> HOST_DEVICE_DEPROVISIONED
+  0, // 5 -> CONTROLLER_DEVICE_DEPROVISIONED
+};
+
+const std::string& DevicePairingResponse_StatusCode_Name(
+    DevicePairingResponse_StatusCode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DevicePairingResponse_StatusCode_entries,
+          DevicePairingResponse_StatusCode_entries_by_number,
+          6, DevicePairingResponse_StatusCode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DevicePairingResponse_StatusCode_entries,
+      DevicePairingResponse_StatusCode_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DevicePairingResponse_StatusCode_strings[idx].get();
+}
+bool DevicePairingResponse_StatusCode_Parse(
+    const std::string& name, DevicePairingResponse_StatusCode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DevicePairingResponse_StatusCode_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<DevicePairingResponse_StatusCode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse::SUCCESS;
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse::FAILED;
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse::HOST_DEVICE_NOT_FOUND;
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse::CONTROLLER_DEVICE_NOT_FOUND;
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse::HOST_DEVICE_DEPROVISIONED;
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse::CONTROLLER_DEVICE_DEPROVISIONED;
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse::StatusCode_MIN;
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse::StatusCode_MAX;
+constexpr int DevicePairingResponse::StatusCode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool CheckDevicePairingResponse_StatusCode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> CheckDevicePairingResponse_StatusCode_strings[7] = {};
+
+static const char CheckDevicePairingResponse_StatusCode_names[] =
+  "CONTROLLER_DEVICE_DEPROVISIONED"
+  "CONTROLLER_DEVICE_NOT_FOUND"
+  "HOST_DEVICE_DEPROVISIONED"
+  "HOST_DEVICE_NOT_FOUND"
+  "INVALID_CONTROLLER_DEVICE_IDENTITY"
+  "NOT_PAIRED"
+  "PAIRED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry CheckDevicePairingResponse_StatusCode_entries[] = {
+  { {CheckDevicePairingResponse_StatusCode_names + 0, 31}, 5 },
+  { {CheckDevicePairingResponse_StatusCode_names + 31, 27}, 3 },
+  { {CheckDevicePairingResponse_StatusCode_names + 58, 25}, 4 },
+  { {CheckDevicePairingResponse_StatusCode_names + 83, 21}, 2 },
+  { {CheckDevicePairingResponse_StatusCode_names + 104, 34}, 6 },
+  { {CheckDevicePairingResponse_StatusCode_names + 138, 10}, 1 },
+  { {CheckDevicePairingResponse_StatusCode_names + 148, 6}, 0 },
+};
+
+static const int CheckDevicePairingResponse_StatusCode_entries_by_number[] = {
+  6, // 0 -> PAIRED
+  5, // 1 -> NOT_PAIRED
+  3, // 2 -> HOST_DEVICE_NOT_FOUND
+  1, // 3 -> CONTROLLER_DEVICE_NOT_FOUND
+  2, // 4 -> HOST_DEVICE_DEPROVISIONED
+  0, // 5 -> CONTROLLER_DEVICE_DEPROVISIONED
+  4, // 6 -> INVALID_CONTROLLER_DEVICE_IDENTITY
+};
+
+const std::string& CheckDevicePairingResponse_StatusCode_Name(
+    CheckDevicePairingResponse_StatusCode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          CheckDevicePairingResponse_StatusCode_entries,
+          CheckDevicePairingResponse_StatusCode_entries_by_number,
+          7, CheckDevicePairingResponse_StatusCode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      CheckDevicePairingResponse_StatusCode_entries,
+      CheckDevicePairingResponse_StatusCode_entries_by_number,
+      7, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     CheckDevicePairingResponse_StatusCode_strings[idx].get();
+}
+bool CheckDevicePairingResponse_StatusCode_Parse(
+    const std::string& name, CheckDevicePairingResponse_StatusCode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      CheckDevicePairingResponse_StatusCode_entries, 7, name, &int_value);
+  if (success) {
+    *value = static_cast<CheckDevicePairingResponse_StatusCode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::PAIRED;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::NOT_PAIRED;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::HOST_DEVICE_NOT_FOUND;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::CONTROLLER_DEVICE_NOT_FOUND;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::HOST_DEVICE_DEPROVISIONED;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::CONTROLLER_DEVICE_DEPROVISIONED;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::INVALID_CONTROLLER_DEVICE_IDENTITY;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::StatusCode_MIN;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::StatusCode_MAX;
+constexpr int CheckDevicePairingResponse::StatusCode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool RemoteCommand_Type_IsValid(int value) {
+  switch (value) {
+    case -1:
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+    case 14:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> RemoteCommand_Type_strings[16] = {};
+
+static const char RemoteCommand_Type_names[] =
+  "BROWSER_CLEAR_BROWSING_DATA"
+  "BROWSER_ROTATE_ATTESTATION_CREDENTIAL"
+  "COMMAND_ECHO_TEST"
+  "DEVICE_FETCH_STATUS"
+  "DEVICE_GET_AVAILABLE_DIAGNOSTIC_ROUTINES"
+  "DEVICE_GET_DIAGNOSTIC_ROUTINE_UPDATE"
+  "DEVICE_REBOOT"
+  "DEVICE_REFRESH_ENTERPRISE_MACHINE_CERTIFICATE"
+  "DEVICE_REMOTE_POWERWASH"
+  "DEVICE_RESET_EUICC"
+  "DEVICE_RUN_DIAGNOSTIC_ROUTINE"
+  "DEVICE_SCREENSHOT"
+  "DEVICE_SET_VOLUME"
+  "DEVICE_START_CRD_SESSION"
+  "DEVICE_WIPE_USERS"
+  "USER_ARC_COMMAND";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry RemoteCommand_Type_entries[] = {
+  { {RemoteCommand_Type_names + 0, 27}, 12 },
+  { {RemoteCommand_Type_names + 27, 37}, 14 },
+  { {RemoteCommand_Type_names + 64, 17}, -1 },
+  { {RemoteCommand_Type_names + 81, 19}, 3 },
+  { {RemoteCommand_Type_names + 100, 40}, 9 },
+  { {RemoteCommand_Type_names + 140, 36}, 11 },
+  { {RemoteCommand_Type_names + 176, 13}, 0 },
+  { {RemoteCommand_Type_names + 189, 45}, 8 },
+  { {RemoteCommand_Type_names + 234, 23}, 7 },
+  { {RemoteCommand_Type_names + 257, 18}, 13 },
+  { {RemoteCommand_Type_names + 275, 29}, 10 },
+  { {RemoteCommand_Type_names + 304, 17}, 1 },
+  { {RemoteCommand_Type_names + 321, 17}, 2 },
+  { {RemoteCommand_Type_names + 338, 24}, 6 },
+  { {RemoteCommand_Type_names + 362, 17}, 5 },
+  { {RemoteCommand_Type_names + 379, 16}, 4 },
+};
+
+static const int RemoteCommand_Type_entries_by_number[] = {
+  2, // -1 -> COMMAND_ECHO_TEST
+  6, // 0 -> DEVICE_REBOOT
+  11, // 1 -> DEVICE_SCREENSHOT
+  12, // 2 -> DEVICE_SET_VOLUME
+  3, // 3 -> DEVICE_FETCH_STATUS
+  15, // 4 -> USER_ARC_COMMAND
+  14, // 5 -> DEVICE_WIPE_USERS
+  13, // 6 -> DEVICE_START_CRD_SESSION
+  8, // 7 -> DEVICE_REMOTE_POWERWASH
+  7, // 8 -> DEVICE_REFRESH_ENTERPRISE_MACHINE_CERTIFICATE
+  4, // 9 -> DEVICE_GET_AVAILABLE_DIAGNOSTIC_ROUTINES
+  10, // 10 -> DEVICE_RUN_DIAGNOSTIC_ROUTINE
+  5, // 11 -> DEVICE_GET_DIAGNOSTIC_ROUTINE_UPDATE
+  0, // 12 -> BROWSER_CLEAR_BROWSING_DATA
+  9, // 13 -> DEVICE_RESET_EUICC
+  1, // 14 -> BROWSER_ROTATE_ATTESTATION_CREDENTIAL
+};
+
+const std::string& RemoteCommand_Type_Name(
+    RemoteCommand_Type value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          RemoteCommand_Type_entries,
+          RemoteCommand_Type_entries_by_number,
+          16, RemoteCommand_Type_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      RemoteCommand_Type_entries,
+      RemoteCommand_Type_entries_by_number,
+      16, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     RemoteCommand_Type_strings[idx].get();
+}
+bool RemoteCommand_Type_Parse(
+    const std::string& name, RemoteCommand_Type* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      RemoteCommand_Type_entries, 16, name, &int_value);
+  if (success) {
+    *value = static_cast<RemoteCommand_Type>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr RemoteCommand_Type RemoteCommand::COMMAND_ECHO_TEST;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_REBOOT;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_SCREENSHOT;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_SET_VOLUME;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_FETCH_STATUS;
+constexpr RemoteCommand_Type RemoteCommand::USER_ARC_COMMAND;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_WIPE_USERS;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_START_CRD_SESSION;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_REMOTE_POWERWASH;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_REFRESH_ENTERPRISE_MACHINE_CERTIFICATE;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_GET_AVAILABLE_DIAGNOSTIC_ROUTINES;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_RUN_DIAGNOSTIC_ROUTINE;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_GET_DIAGNOSTIC_ROUTINE_UPDATE;
+constexpr RemoteCommand_Type RemoteCommand::BROWSER_CLEAR_BROWSING_DATA;
+constexpr RemoteCommand_Type RemoteCommand::DEVICE_RESET_EUICC;
+constexpr RemoteCommand_Type RemoteCommand::BROWSER_ROTATE_ATTESTATION_CREDENTIAL;
+constexpr RemoteCommand_Type RemoteCommand::Type_MIN;
+constexpr RemoteCommand_Type RemoteCommand::Type_MAX;
+constexpr int RemoteCommand::Type_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool RemoteCommandResult_ResultType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> RemoteCommandResult_ResultType_strings[3] = {};
+
+static const char RemoteCommandResult_ResultType_names[] =
+  "RESULT_FAILURE"
+  "RESULT_IGNORED"
+  "RESULT_SUCCESS";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry RemoteCommandResult_ResultType_entries[] = {
+  { {RemoteCommandResult_ResultType_names + 0, 14}, 1 },
+  { {RemoteCommandResult_ResultType_names + 14, 14}, 0 },
+  { {RemoteCommandResult_ResultType_names + 28, 14}, 2 },
+};
+
+static const int RemoteCommandResult_ResultType_entries_by_number[] = {
+  1, // 0 -> RESULT_IGNORED
+  0, // 1 -> RESULT_FAILURE
+  2, // 2 -> RESULT_SUCCESS
+};
+
+const std::string& RemoteCommandResult_ResultType_Name(
+    RemoteCommandResult_ResultType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          RemoteCommandResult_ResultType_entries,
+          RemoteCommandResult_ResultType_entries_by_number,
+          3, RemoteCommandResult_ResultType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      RemoteCommandResult_ResultType_entries,
+      RemoteCommandResult_ResultType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     RemoteCommandResult_ResultType_strings[idx].get();
+}
+bool RemoteCommandResult_ResultType_Parse(
+    const std::string& name, RemoteCommandResult_ResultType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      RemoteCommandResult_ResultType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<RemoteCommandResult_ResultType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr RemoteCommandResult_ResultType RemoteCommandResult::RESULT_IGNORED;
+constexpr RemoteCommandResult_ResultType RemoteCommandResult::RESULT_FAILURE;
+constexpr RemoteCommandResult_ResultType RemoteCommandResult::RESULT_SUCCESS;
+constexpr RemoteCommandResult_ResultType RemoteCommandResult::ResultType_MIN;
+constexpr RemoteCommandResult_ResultType RemoteCommandResult::ResultType_MAX;
+constexpr int RemoteCommandResult::ResultType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceAttributeUpdatePermissionResponse_ResultType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceAttributeUpdatePermissionResponse_ResultType_strings[2] = {};
+
+static const char DeviceAttributeUpdatePermissionResponse_ResultType_names[] =
+  "ATTRIBUTE_UPDATE_ALLOWED"
+  "ATTRIBUTE_UPDATE_DISALLOWED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceAttributeUpdatePermissionResponse_ResultType_entries[] = {
+  { {DeviceAttributeUpdatePermissionResponse_ResultType_names + 0, 24}, 1 },
+  { {DeviceAttributeUpdatePermissionResponse_ResultType_names + 24, 27}, 0 },
+};
+
+static const int DeviceAttributeUpdatePermissionResponse_ResultType_entries_by_number[] = {
+  1, // 0 -> ATTRIBUTE_UPDATE_DISALLOWED
+  0, // 1 -> ATTRIBUTE_UPDATE_ALLOWED
+};
+
+const std::string& DeviceAttributeUpdatePermissionResponse_ResultType_Name(
+    DeviceAttributeUpdatePermissionResponse_ResultType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceAttributeUpdatePermissionResponse_ResultType_entries,
+          DeviceAttributeUpdatePermissionResponse_ResultType_entries_by_number,
+          2, DeviceAttributeUpdatePermissionResponse_ResultType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceAttributeUpdatePermissionResponse_ResultType_entries,
+      DeviceAttributeUpdatePermissionResponse_ResultType_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceAttributeUpdatePermissionResponse_ResultType_strings[idx].get();
+}
+bool DeviceAttributeUpdatePermissionResponse_ResultType_Parse(
+    const std::string& name, DeviceAttributeUpdatePermissionResponse_ResultType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceAttributeUpdatePermissionResponse_ResultType_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceAttributeUpdatePermissionResponse_ResultType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceAttributeUpdatePermissionResponse_ResultType DeviceAttributeUpdatePermissionResponse::ATTRIBUTE_UPDATE_DISALLOWED;
+constexpr DeviceAttributeUpdatePermissionResponse_ResultType DeviceAttributeUpdatePermissionResponse::ATTRIBUTE_UPDATE_ALLOWED;
+constexpr DeviceAttributeUpdatePermissionResponse_ResultType DeviceAttributeUpdatePermissionResponse::ResultType_MIN;
+constexpr DeviceAttributeUpdatePermissionResponse_ResultType DeviceAttributeUpdatePermissionResponse::ResultType_MAX;
+constexpr int DeviceAttributeUpdatePermissionResponse::ResultType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool DeviceAttributeUpdateResponse_ResultType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceAttributeUpdateResponse_ResultType_strings[2] = {};
+
+static const char DeviceAttributeUpdateResponse_ResultType_names[] =
+  "ATTRIBUTE_UPDATE_ERROR"
+  "ATTRIBUTE_UPDATE_SUCCESS";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceAttributeUpdateResponse_ResultType_entries[] = {
+  { {DeviceAttributeUpdateResponse_ResultType_names + 0, 22}, 0 },
+  { {DeviceAttributeUpdateResponse_ResultType_names + 22, 24}, 1 },
+};
+
+static const int DeviceAttributeUpdateResponse_ResultType_entries_by_number[] = {
+  0, // 0 -> ATTRIBUTE_UPDATE_ERROR
+  1, // 1 -> ATTRIBUTE_UPDATE_SUCCESS
+};
+
+const std::string& DeviceAttributeUpdateResponse_ResultType_Name(
+    DeviceAttributeUpdateResponse_ResultType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceAttributeUpdateResponse_ResultType_entries,
+          DeviceAttributeUpdateResponse_ResultType_entries_by_number,
+          2, DeviceAttributeUpdateResponse_ResultType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceAttributeUpdateResponse_ResultType_entries,
+      DeviceAttributeUpdateResponse_ResultType_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceAttributeUpdateResponse_ResultType_strings[idx].get();
+}
+bool DeviceAttributeUpdateResponse_ResultType_Parse(
+    const std::string& name, DeviceAttributeUpdateResponse_ResultType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceAttributeUpdateResponse_ResultType_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceAttributeUpdateResponse_ResultType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr DeviceAttributeUpdateResponse_ResultType DeviceAttributeUpdateResponse::ATTRIBUTE_UPDATE_ERROR;
+constexpr DeviceAttributeUpdateResponse_ResultType DeviceAttributeUpdateResponse::ATTRIBUTE_UPDATE_SUCCESS;
+constexpr DeviceAttributeUpdateResponse_ResultType DeviceAttributeUpdateResponse::ResultType_MIN;
+constexpr DeviceAttributeUpdateResponse_ResultType DeviceAttributeUpdateResponse::ResultType_MAX;
+constexpr int DeviceAttributeUpdateResponse::ResultType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool CertificateBasedDeviceRegistrationData_CertificateType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> CertificateBasedDeviceRegistrationData_CertificateType_strings[2] = {};
+
+static const char CertificateBasedDeviceRegistrationData_CertificateType_names[] =
+  "ENTERPRISE_ENROLLMENT_CERTIFICATE"
+  "UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry CertificateBasedDeviceRegistrationData_CertificateType_entries[] = {
+  { {CertificateBasedDeviceRegistrationData_CertificateType_names + 0, 33}, 1 },
+  { {CertificateBasedDeviceRegistrationData_CertificateType_names + 33, 7}, 0 },
+};
+
+static const int CertificateBasedDeviceRegistrationData_CertificateType_entries_by_number[] = {
+  1, // 0 -> UNKNOWN
+  0, // 1 -> ENTERPRISE_ENROLLMENT_CERTIFICATE
+};
+
+const std::string& CertificateBasedDeviceRegistrationData_CertificateType_Name(
+    CertificateBasedDeviceRegistrationData_CertificateType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          CertificateBasedDeviceRegistrationData_CertificateType_entries,
+          CertificateBasedDeviceRegistrationData_CertificateType_entries_by_number,
+          2, CertificateBasedDeviceRegistrationData_CertificateType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      CertificateBasedDeviceRegistrationData_CertificateType_entries,
+      CertificateBasedDeviceRegistrationData_CertificateType_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     CertificateBasedDeviceRegistrationData_CertificateType_strings[idx].get();
+}
+bool CertificateBasedDeviceRegistrationData_CertificateType_Parse(
+    const std::string& name, CertificateBasedDeviceRegistrationData_CertificateType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      CertificateBasedDeviceRegistrationData_CertificateType_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<CertificateBasedDeviceRegistrationData_CertificateType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr CertificateBasedDeviceRegistrationData_CertificateType CertificateBasedDeviceRegistrationData::UNKNOWN;
+constexpr CertificateBasedDeviceRegistrationData_CertificateType CertificateBasedDeviceRegistrationData::ENTERPRISE_ENROLLMENT_CERTIFICATE;
+constexpr CertificateBasedDeviceRegistrationData_CertificateType CertificateBasedDeviceRegistrationData::CertificateType_MIN;
+constexpr CertificateBasedDeviceRegistrationData_CertificateType CertificateBasedDeviceRegistrationData::CertificateType_MAX;
+constexpr int CertificateBasedDeviceRegistrationData::CertificateType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool CheckDeviceLicenseResponse_LicenseSelectionMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> CheckDeviceLicenseResponse_LicenseSelectionMode_strings[3] = {};
+
+static const char CheckDeviceLicenseResponse_LicenseSelectionMode_names[] =
+  "ADMIN_SELECTION"
+  "UNDEFINED"
+  "USER_SELECTION";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry CheckDeviceLicenseResponse_LicenseSelectionMode_entries[] = {
+  { {CheckDeviceLicenseResponse_LicenseSelectionMode_names + 0, 15}, 2 },
+  { {CheckDeviceLicenseResponse_LicenseSelectionMode_names + 15, 9}, 0 },
+  { {CheckDeviceLicenseResponse_LicenseSelectionMode_names + 24, 14}, 1 },
+};
+
+static const int CheckDeviceLicenseResponse_LicenseSelectionMode_entries_by_number[] = {
+  1, // 0 -> UNDEFINED
+  2, // 1 -> USER_SELECTION
+  0, // 2 -> ADMIN_SELECTION
+};
+
+const std::string& CheckDeviceLicenseResponse_LicenseSelectionMode_Name(
+    CheckDeviceLicenseResponse_LicenseSelectionMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          CheckDeviceLicenseResponse_LicenseSelectionMode_entries,
+          CheckDeviceLicenseResponse_LicenseSelectionMode_entries_by_number,
+          3, CheckDeviceLicenseResponse_LicenseSelectionMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      CheckDeviceLicenseResponse_LicenseSelectionMode_entries,
+      CheckDeviceLicenseResponse_LicenseSelectionMode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     CheckDeviceLicenseResponse_LicenseSelectionMode_strings[idx].get();
+}
+bool CheckDeviceLicenseResponse_LicenseSelectionMode_Parse(
+    const std::string& name, CheckDeviceLicenseResponse_LicenseSelectionMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      CheckDeviceLicenseResponse_LicenseSelectionMode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<CheckDeviceLicenseResponse_LicenseSelectionMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse::UNDEFINED;
+constexpr CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse::USER_SELECTION;
+constexpr CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse::ADMIN_SELECTION;
+constexpr CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse::LicenseSelectionMode_MIN;
+constexpr CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse::LicenseSelectionMode_MAX;
+constexpr int CheckDeviceLicenseResponse::LicenseSelectionMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool TpmVersionInfo_GscVersion_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> TpmVersionInfo_GscVersion_strings[4] = {};
+
+static const char TpmVersionInfo_GscVersion_names[] =
+  "GSC_VERSION_CR50"
+  "GSC_VERSION_NOT_GSC"
+  "GSC_VERSION_TI50"
+  "GSC_VERSION_UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry TpmVersionInfo_GscVersion_entries[] = {
+  { {TpmVersionInfo_GscVersion_names + 0, 16}, 2 },
+  { {TpmVersionInfo_GscVersion_names + 16, 19}, 1 },
+  { {TpmVersionInfo_GscVersion_names + 35, 16}, 3 },
+  { {TpmVersionInfo_GscVersion_names + 51, 23}, 0 },
+};
+
+static const int TpmVersionInfo_GscVersion_entries_by_number[] = {
+  3, // 0 -> GSC_VERSION_UNSPECIFIED
+  1, // 1 -> GSC_VERSION_NOT_GSC
+  0, // 2 -> GSC_VERSION_CR50
+  2, // 3 -> GSC_VERSION_TI50
+};
+
+const std::string& TpmVersionInfo_GscVersion_Name(
+    TpmVersionInfo_GscVersion value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          TpmVersionInfo_GscVersion_entries,
+          TpmVersionInfo_GscVersion_entries_by_number,
+          4, TpmVersionInfo_GscVersion_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      TpmVersionInfo_GscVersion_entries,
+      TpmVersionInfo_GscVersion_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     TpmVersionInfo_GscVersion_strings[idx].get();
+}
+bool TpmVersionInfo_GscVersion_Parse(
+    const std::string& name, TpmVersionInfo_GscVersion* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      TpmVersionInfo_GscVersion_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<TpmVersionInfo_GscVersion>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr TpmVersionInfo_GscVersion TpmVersionInfo::GSC_VERSION_UNSPECIFIED;
+constexpr TpmVersionInfo_GscVersion TpmVersionInfo::GSC_VERSION_NOT_GSC;
+constexpr TpmVersionInfo_GscVersion TpmVersionInfo::GSC_VERSION_CR50;
+constexpr TpmVersionInfo_GscVersion TpmVersionInfo::GSC_VERSION_TI50;
+constexpr TpmVersionInfo_GscVersion TpmVersionInfo::GscVersion_MIN;
+constexpr TpmVersionInfo_GscVersion TpmVersionInfo::GscVersion_MAX;
+constexpr int TpmVersionInfo::GscVersion_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_EventType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_EventType_strings[7] = {};
+
+static const char ExtensionInstallReportLogEvent_EventType_names[] =
+  "CANCELED"
+  "CONNECTIVITY_CHANGE"
+  "INSTALLATION_FAILED"
+  "LOG_EVENT_TYPE_UNKNOWN"
+  "POLICY_REQUEST"
+  "SESSION_STATE_CHANGE"
+  "SUCCESS";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_EventType_entries[] = {
+  { {ExtensionInstallReportLogEvent_EventType_names + 0, 8}, 3 },
+  { {ExtensionInstallReportLogEvent_EventType_names + 8, 19}, 4 },
+  { {ExtensionInstallReportLogEvent_EventType_names + 27, 19}, 6 },
+  { {ExtensionInstallReportLogEvent_EventType_names + 46, 22}, 0 },
+  { {ExtensionInstallReportLogEvent_EventType_names + 68, 14}, 1 },
+  { {ExtensionInstallReportLogEvent_EventType_names + 82, 20}, 5 },
+  { {ExtensionInstallReportLogEvent_EventType_names + 102, 7}, 2 },
+};
+
+static const int ExtensionInstallReportLogEvent_EventType_entries_by_number[] = {
+  3, // 0 -> LOG_EVENT_TYPE_UNKNOWN
+  4, // 1 -> POLICY_REQUEST
+  6, // 2 -> SUCCESS
+  0, // 3 -> CANCELED
+  1, // 4 -> CONNECTIVITY_CHANGE
+  5, // 5 -> SESSION_STATE_CHANGE
+  2, // 6 -> INSTALLATION_FAILED
+};
+
+const std::string& ExtensionInstallReportLogEvent_EventType_Name(
+    ExtensionInstallReportLogEvent_EventType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_EventType_entries,
+          ExtensionInstallReportLogEvent_EventType_entries_by_number,
+          7, ExtensionInstallReportLogEvent_EventType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_EventType_entries,
+      ExtensionInstallReportLogEvent_EventType_entries_by_number,
+      7, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_EventType_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_EventType_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_EventType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_EventType_entries, 7, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_EventType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::LOG_EVENT_TYPE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::POLICY_REQUEST;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::SUCCESS;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::CANCELED;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::CONNECTIVITY_CHANGE;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::SESSION_STATE_CHANGE;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::INSTALLATION_FAILED;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::EventType_MIN;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::EventType_MAX;
+constexpr int ExtensionInstallReportLogEvent::EventType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_SessionStateChangeType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_SessionStateChangeType_strings[5] = {};
+
+static const char ExtensionInstallReportLogEvent_SessionStateChangeType_names[] =
+  "LOGIN"
+  "LOGOUT"
+  "RESUME"
+  "SESSION_STATE_CHANGE_TYPE_UNKNOWN"
+  "SUSPEND";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_SessionStateChangeType_entries[] = {
+  { {ExtensionInstallReportLogEvent_SessionStateChangeType_names + 0, 5}, 1 },
+  { {ExtensionInstallReportLogEvent_SessionStateChangeType_names + 5, 6}, 2 },
+  { {ExtensionInstallReportLogEvent_SessionStateChangeType_names + 11, 6}, 4 },
+  { {ExtensionInstallReportLogEvent_SessionStateChangeType_names + 17, 33}, 0 },
+  { {ExtensionInstallReportLogEvent_SessionStateChangeType_names + 50, 7}, 3 },
+};
+
+static const int ExtensionInstallReportLogEvent_SessionStateChangeType_entries_by_number[] = {
+  3, // 0 -> SESSION_STATE_CHANGE_TYPE_UNKNOWN
+  0, // 1 -> LOGIN
+  1, // 2 -> LOGOUT
+  4, // 3 -> SUSPEND
+  2, // 4 -> RESUME
+};
+
+const std::string& ExtensionInstallReportLogEvent_SessionStateChangeType_Name(
+    ExtensionInstallReportLogEvent_SessionStateChangeType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_SessionStateChangeType_entries,
+          ExtensionInstallReportLogEvent_SessionStateChangeType_entries_by_number,
+          5, ExtensionInstallReportLogEvent_SessionStateChangeType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_SessionStateChangeType_entries,
+      ExtensionInstallReportLogEvent_SessionStateChangeType_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_SessionStateChangeType_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_SessionStateChangeType_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_SessionStateChangeType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_SessionStateChangeType_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_SessionStateChangeType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::SESSION_STATE_CHANGE_TYPE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::LOGIN;
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::LOGOUT;
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::SUSPEND;
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::RESUME;
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::SessionStateChangeType_MIN;
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::SessionStateChangeType_MAX;
+constexpr int ExtensionInstallReportLogEvent::SessionStateChangeType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_FailureReason_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+    case 14:
+    case 15:
+    case 16:
+    case 17:
+    case 18:
+    case 19:
+    case 20:
+    case 21:
+    case 22:
+    case 23:
+    case 24:
+    case 25:
+    case 26:
+    case 27:
+    case 28:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_FailureReason_strings[29] = {};
+
+static const char ExtensionInstallReportLogEvent_FailureReason_names[] =
+  "ALREADY_INSTALLED"
+  "CRX_FETCH_FAILED"
+  "CRX_FETCH_URL_EMPTY"
+  "CRX_FETCH_URL_INVALID"
+  "CRX_INSTALL_ERROR_DECLINED"
+  "CRX_INSTALL_ERROR_OTHER"
+  "CRX_INSTALL_ERROR_SANDBOXED_UNPACKER_FAILURE"
+  "DOWNLOADER_ADD_FAILED"
+  "DO_NOT_INSTALL_FOR_ENTERPRISE"
+  "FAILURE_REASON_UNKNOWN"
+  "INVALID_ID"
+  "IN_PROGRESS"
+  "LOCALE_NOT_SUPPORTED"
+  "MALFORMED_EXTENSION_DICT"
+  "MALFORMED_EXTENSION_DICT_FILE_PATH"
+  "MALFORMED_EXTENSION_DICT_UPDATE_URL"
+  "MALFORMED_EXTENSION_DICT_VERSION"
+  "MALFORMED_EXTENSION_SETTINGS"
+  "MANIFEST_FETCH_FAILED"
+  "MANIFEST_INVALID"
+  "NOT_PERFORMING_NEW_INSTALL"
+  "NOT_SUPPORTED_EXTENSION_DICT"
+  "NO_UPDATE"
+  "NO_UPDATE_URL"
+  "OVERRIDDEN_BY_SETTINGS"
+  "PENDING_ADD_FAILED"
+  "REPLACED_BY_ARC_APP"
+  "REPLACED_BY_SYSTEM_APP"
+  "TOO_OLD_PROFILE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_FailureReason_entries[] = {
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 0, 17}, 13 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 17, 16}, 14 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 33, 19}, 25 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 52, 21}, 26 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 73, 26}, 18 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 99, 23}, 20 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 122, 44}, 19 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 166, 21}, 23 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 187, 29}, 12 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 216, 22}, 0 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 238, 10}, 1 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 248, 11}, 24 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 259, 20}, 9 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 279, 24}, 4 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 303, 34}, 6 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 337, 35}, 8 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 372, 32}, 7 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 404, 28}, 2 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 432, 21}, 15 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 453, 16}, 16 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 469, 26}, 10 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 495, 28}, 5 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 523, 9}, 17 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 532, 13}, 21 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 545, 22}, 27 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 567, 18}, 22 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 585, 19}, 3 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 604, 22}, 28 },
+  { {ExtensionInstallReportLogEvent_FailureReason_names + 626, 15}, 11 },
+};
+
+static const int ExtensionInstallReportLogEvent_FailureReason_entries_by_number[] = {
+  9, // 0 -> FAILURE_REASON_UNKNOWN
+  10, // 1 -> INVALID_ID
+  17, // 2 -> MALFORMED_EXTENSION_SETTINGS
+  26, // 3 -> REPLACED_BY_ARC_APP
+  13, // 4 -> MALFORMED_EXTENSION_DICT
+  21, // 5 -> NOT_SUPPORTED_EXTENSION_DICT
+  14, // 6 -> MALFORMED_EXTENSION_DICT_FILE_PATH
+  16, // 7 -> MALFORMED_EXTENSION_DICT_VERSION
+  15, // 8 -> MALFORMED_EXTENSION_DICT_UPDATE_URL
+  12, // 9 -> LOCALE_NOT_SUPPORTED
+  20, // 10 -> NOT_PERFORMING_NEW_INSTALL
+  28, // 11 -> TOO_OLD_PROFILE
+  8, // 12 -> DO_NOT_INSTALL_FOR_ENTERPRISE
+  0, // 13 -> ALREADY_INSTALLED
+  1, // 14 -> CRX_FETCH_FAILED
+  18, // 15 -> MANIFEST_FETCH_FAILED
+  19, // 16 -> MANIFEST_INVALID
+  22, // 17 -> NO_UPDATE
+  4, // 18 -> CRX_INSTALL_ERROR_DECLINED
+  6, // 19 -> CRX_INSTALL_ERROR_SANDBOXED_UNPACKER_FAILURE
+  5, // 20 -> CRX_INSTALL_ERROR_OTHER
+  23, // 21 -> NO_UPDATE_URL
+  25, // 22 -> PENDING_ADD_FAILED
+  7, // 23 -> DOWNLOADER_ADD_FAILED
+  11, // 24 -> IN_PROGRESS
+  2, // 25 -> CRX_FETCH_URL_EMPTY
+  3, // 26 -> CRX_FETCH_URL_INVALID
+  24, // 27 -> OVERRIDDEN_BY_SETTINGS
+  27, // 28 -> REPLACED_BY_SYSTEM_APP
+};
+
+const std::string& ExtensionInstallReportLogEvent_FailureReason_Name(
+    ExtensionInstallReportLogEvent_FailureReason value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_FailureReason_entries,
+          ExtensionInstallReportLogEvent_FailureReason_entries_by_number,
+          29, ExtensionInstallReportLogEvent_FailureReason_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_FailureReason_entries,
+      ExtensionInstallReportLogEvent_FailureReason_entries_by_number,
+      29, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_FailureReason_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_FailureReason_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_FailureReason* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_FailureReason_entries, 29, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_FailureReason>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::FAILURE_REASON_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::INVALID_ID;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::MALFORMED_EXTENSION_SETTINGS;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::REPLACED_BY_ARC_APP;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::MALFORMED_EXTENSION_DICT;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::NOT_SUPPORTED_EXTENSION_DICT;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::MALFORMED_EXTENSION_DICT_FILE_PATH;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::MALFORMED_EXTENSION_DICT_VERSION;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::MALFORMED_EXTENSION_DICT_UPDATE_URL;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::LOCALE_NOT_SUPPORTED;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::NOT_PERFORMING_NEW_INSTALL;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::TOO_OLD_PROFILE;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::DO_NOT_INSTALL_FOR_ENTERPRISE;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::ALREADY_INSTALLED;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::CRX_FETCH_FAILED;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::MANIFEST_FETCH_FAILED;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::MANIFEST_INVALID;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::NO_UPDATE;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::CRX_INSTALL_ERROR_DECLINED;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::CRX_INSTALL_ERROR_SANDBOXED_UNPACKER_FAILURE;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::CRX_INSTALL_ERROR_OTHER;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::NO_UPDATE_URL;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::PENDING_ADD_FAILED;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::DOWNLOADER_ADD_FAILED;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::IN_PROGRESS;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::CRX_FETCH_URL_EMPTY;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::CRX_FETCH_URL_INVALID;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::OVERRIDDEN_BY_SETTINGS;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::REPLACED_BY_SYSTEM_APP;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::FailureReason_MIN;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::FailureReason_MAX;
+constexpr int ExtensionInstallReportLogEvent::FailureReason_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_InstallationStage_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_InstallationStage_strings[6] = {};
+
+static const char ExtensionInstallReportLogEvent_InstallationStage_names[] =
+  "COMPLETE"
+  "CREATED"
+  "DOWNLOADING"
+  "INSTALLATION_STAGE_UNKNOWN"
+  "INSTALLING"
+  "PENDING";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_InstallationStage_entries[] = {
+  { {ExtensionInstallReportLogEvent_InstallationStage_names + 0, 8}, 5 },
+  { {ExtensionInstallReportLogEvent_InstallationStage_names + 8, 7}, 1 },
+  { {ExtensionInstallReportLogEvent_InstallationStage_names + 15, 11}, 3 },
+  { {ExtensionInstallReportLogEvent_InstallationStage_names + 26, 26}, 0 },
+  { {ExtensionInstallReportLogEvent_InstallationStage_names + 52, 10}, 4 },
+  { {ExtensionInstallReportLogEvent_InstallationStage_names + 62, 7}, 2 },
+};
+
+static const int ExtensionInstallReportLogEvent_InstallationStage_entries_by_number[] = {
+  3, // 0 -> INSTALLATION_STAGE_UNKNOWN
+  1, // 1 -> CREATED
+  5, // 2 -> PENDING
+  2, // 3 -> DOWNLOADING
+  4, // 4 -> INSTALLING
+  0, // 5 -> COMPLETE
+};
+
+const std::string& ExtensionInstallReportLogEvent_InstallationStage_Name(
+    ExtensionInstallReportLogEvent_InstallationStage value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_InstallationStage_entries,
+          ExtensionInstallReportLogEvent_InstallationStage_entries_by_number,
+          6, ExtensionInstallReportLogEvent_InstallationStage_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_InstallationStage_entries,
+      ExtensionInstallReportLogEvent_InstallationStage_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_InstallationStage_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_InstallationStage_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_InstallationStage* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_InstallationStage_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_InstallationStage>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::INSTALLATION_STAGE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::CREATED;
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::PENDING;
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::DOWNLOADING;
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::INSTALLING;
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::COMPLETE;
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::InstallationStage_MIN;
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::InstallationStage_MAX;
+constexpr int ExtensionInstallReportLogEvent::InstallationStage_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_UserType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_UserType_strings[10] = {};
+
+static const char ExtensionInstallReportLogEvent_UserType_names[] =
+  "USER_TYPE_ACTIVE_DIRECTORY"
+  "USER_TYPE_ARC_KIOSK_APP"
+  "USER_TYPE_CHILD"
+  "USER_TYPE_GUEST"
+  "USER_TYPE_KIOSK_APP"
+  "USER_TYPE_PUBLIC_ACCOUNT"
+  "USER_TYPE_REGULAR"
+  "USER_TYPE_SUPERVISED_DEPRECATED"
+  "USER_TYPE_UNKNOWN"
+  "USER_TYPE_WEB_KIOSK_APP";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_UserType_entries[] = {
+  { {ExtensionInstallReportLogEvent_UserType_names + 0, 26}, 8 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 26, 23}, 7 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 49, 15}, 6 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 64, 15}, 2 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 79, 19}, 5 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 98, 24}, 3 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 122, 17}, 1 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 139, 31}, 4 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 170, 17}, 0 },
+  { {ExtensionInstallReportLogEvent_UserType_names + 187, 23}, 9 },
+};
+
+static const int ExtensionInstallReportLogEvent_UserType_entries_by_number[] = {
+  8, // 0 -> USER_TYPE_UNKNOWN
+  6, // 1 -> USER_TYPE_REGULAR
+  3, // 2 -> USER_TYPE_GUEST
+  5, // 3 -> USER_TYPE_PUBLIC_ACCOUNT
+  7, // 4 -> USER_TYPE_SUPERVISED_DEPRECATED
+  4, // 5 -> USER_TYPE_KIOSK_APP
+  2, // 6 -> USER_TYPE_CHILD
+  1, // 7 -> USER_TYPE_ARC_KIOSK_APP
+  0, // 8 -> USER_TYPE_ACTIVE_DIRECTORY
+  9, // 9 -> USER_TYPE_WEB_KIOSK_APP
+};
+
+const std::string& ExtensionInstallReportLogEvent_UserType_Name(
+    ExtensionInstallReportLogEvent_UserType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_UserType_entries,
+          ExtensionInstallReportLogEvent_UserType_entries_by_number,
+          10, ExtensionInstallReportLogEvent_UserType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_UserType_entries,
+      ExtensionInstallReportLogEvent_UserType_entries_by_number,
+      10, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_UserType_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_UserType_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_UserType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_UserType_entries, 10, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_UserType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_REGULAR;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_GUEST;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_PUBLIC_ACCOUNT;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_SUPERVISED_DEPRECATED;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_KIOSK_APP;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_CHILD;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_ARC_KIOSK_APP;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_ACTIVE_DIRECTORY;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::USER_TYPE_WEB_KIOSK_APP;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::UserType_MIN;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::UserType_MAX;
+constexpr int ExtensionInstallReportLogEvent::UserType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_DownloadingStage_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_DownloadingStage_strings[11] = {};
+
+static const char ExtensionInstallReportLogEvent_DownloadingStage_names[] =
+  "DOWNLOADING_CRX"
+  "DOWNLOADING_CRX_RETRY"
+  "DOWNLOADING_MANIFEST"
+  "DOWNLOADING_MANIFEST_RETRY"
+  "DOWNLOADING_STAGE_UNKNOWN"
+  "DOWNLOAD_PENDING"
+  "FINISHED"
+  "MANIFEST_LOADED"
+  "PARSING_MANIFEST"
+  "QUEUED_FOR_CRX"
+  "QUEUED_FOR_MANIFEST";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_DownloadingStage_entries[] = {
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 0, 15}, 8 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 15, 21}, 9 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 36, 20}, 3 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 56, 26}, 4 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 82, 25}, 0 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 107, 16}, 1 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 123, 8}, 10 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 131, 15}, 6 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 146, 16}, 5 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 162, 14}, 7 },
+  { {ExtensionInstallReportLogEvent_DownloadingStage_names + 176, 19}, 2 },
+};
+
+static const int ExtensionInstallReportLogEvent_DownloadingStage_entries_by_number[] = {
+  4, // 0 -> DOWNLOADING_STAGE_UNKNOWN
+  5, // 1 -> DOWNLOAD_PENDING
+  10, // 2 -> QUEUED_FOR_MANIFEST
+  2, // 3 -> DOWNLOADING_MANIFEST
+  3, // 4 -> DOWNLOADING_MANIFEST_RETRY
+  8, // 5 -> PARSING_MANIFEST
+  7, // 6 -> MANIFEST_LOADED
+  9, // 7 -> QUEUED_FOR_CRX
+  0, // 8 -> DOWNLOADING_CRX
+  1, // 9 -> DOWNLOADING_CRX_RETRY
+  6, // 10 -> FINISHED
+};
+
+const std::string& ExtensionInstallReportLogEvent_DownloadingStage_Name(
+    ExtensionInstallReportLogEvent_DownloadingStage value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_DownloadingStage_entries,
+          ExtensionInstallReportLogEvent_DownloadingStage_entries_by_number,
+          11, ExtensionInstallReportLogEvent_DownloadingStage_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_DownloadingStage_entries,
+      ExtensionInstallReportLogEvent_DownloadingStage_entries_by_number,
+      11, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_DownloadingStage_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_DownloadingStage_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_DownloadingStage* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_DownloadingStage_entries, 11, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_DownloadingStage>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::DOWNLOADING_STAGE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::DOWNLOAD_PENDING;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::QUEUED_FOR_MANIFEST;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::DOWNLOADING_MANIFEST;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::DOWNLOADING_MANIFEST_RETRY;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::PARSING_MANIFEST;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::MANIFEST_LOADED;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::QUEUED_FOR_CRX;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::DOWNLOADING_CRX;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::DOWNLOADING_CRX_RETRY;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::FINISHED;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::DownloadingStage_MIN;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::DownloadingStage_MAX;
+constexpr int ExtensionInstallReportLogEvent::DownloadingStage_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_InstallCreationStage_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_InstallCreationStage_strings[8] = {};
+
+static const char ExtensionInstallReportLogEvent_InstallCreationStage_names[] =
+  "CREATION_INITIATED"
+  "INSTALL_CREATION_STAGE_UNKNOWN"
+  "NOTIFIED_FROM_MANAGEMENT"
+  "NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_FORCED"
+  "NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_NOT_FORCED"
+  "NOTIFIED_FROM_MANAGEMENT_NOT_FORCED"
+  "SEEN_BY_EXTERNAL_PROVIDER"
+  "SEEN_BY_POLICY_LOADER";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_InstallCreationStage_entries[] = {
+  { {ExtensionInstallReportLogEvent_InstallCreationStage_names + 0, 18}, 1 },
+  { {ExtensionInstallReportLogEvent_InstallCreationStage_names + 18, 30}, 0 },
+  { {ExtensionInstallReportLogEvent_InstallCreationStage_names + 48, 24}, 4 },
+  { {ExtensionInstallReportLogEvent_InstallCreationStage_names + 72, 48}, 2 },
+  { {ExtensionInstallReportLogEvent_InstallCreationStage_names + 120, 52}, 3 },
+  { {ExtensionInstallReportLogEvent_InstallCreationStage_names + 172, 35}, 5 },
+  { {ExtensionInstallReportLogEvent_InstallCreationStage_names + 207, 25}, 7 },
+  { {ExtensionInstallReportLogEvent_InstallCreationStage_names + 232, 21}, 6 },
+};
+
+static const int ExtensionInstallReportLogEvent_InstallCreationStage_entries_by_number[] = {
+  1, // 0 -> INSTALL_CREATION_STAGE_UNKNOWN
+  0, // 1 -> CREATION_INITIATED
+  3, // 2 -> NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_FORCED
+  4, // 3 -> NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_NOT_FORCED
+  2, // 4 -> NOTIFIED_FROM_MANAGEMENT
+  5, // 5 -> NOTIFIED_FROM_MANAGEMENT_NOT_FORCED
+  7, // 6 -> SEEN_BY_POLICY_LOADER
+  6, // 7 -> SEEN_BY_EXTERNAL_PROVIDER
+};
+
+const std::string& ExtensionInstallReportLogEvent_InstallCreationStage_Name(
+    ExtensionInstallReportLogEvent_InstallCreationStage value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_InstallCreationStage_entries,
+          ExtensionInstallReportLogEvent_InstallCreationStage_entries_by_number,
+          8, ExtensionInstallReportLogEvent_InstallCreationStage_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_InstallCreationStage_entries,
+      ExtensionInstallReportLogEvent_InstallCreationStage_entries_by_number,
+      8, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_InstallCreationStage_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_InstallCreationStage_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_InstallCreationStage* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_InstallCreationStage_entries, 8, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_InstallCreationStage>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::INSTALL_CREATION_STAGE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::CREATION_INITIATED;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_FORCED;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_NOT_FORCED;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::NOTIFIED_FROM_MANAGEMENT;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::NOTIFIED_FROM_MANAGEMENT_NOT_FORCED;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::SEEN_BY_POLICY_LOADER;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::SEEN_BY_EXTERNAL_PROVIDER;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::InstallCreationStage_MIN;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::InstallCreationStage_MAX;
+constexpr int ExtensionInstallReportLogEvent::InstallCreationStage_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_DownloadCacheStatus_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_DownloadCacheStatus_strings[6] = {};
+
+static const char ExtensionInstallReportLogEvent_DownloadCacheStatus_names[] =
+  "CACHE_DISABLED"
+  "CACHE_HIT"
+  "CACHE_HIT_ON_MANIFEST_FETCH_FAILURE"
+  "CACHE_MISS"
+  "CACHE_OUTDATED"
+  "CACHE_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_DownloadCacheStatus_entries[] = {
+  { {ExtensionInstallReportLogEvent_DownloadCacheStatus_names + 0, 14}, 1 },
+  { {ExtensionInstallReportLogEvent_DownloadCacheStatus_names + 14, 9}, 4 },
+  { {ExtensionInstallReportLogEvent_DownloadCacheStatus_names + 23, 35}, 5 },
+  { {ExtensionInstallReportLogEvent_DownloadCacheStatus_names + 58, 10}, 2 },
+  { {ExtensionInstallReportLogEvent_DownloadCacheStatus_names + 68, 14}, 3 },
+  { {ExtensionInstallReportLogEvent_DownloadCacheStatus_names + 82, 13}, 0 },
+};
+
+static const int ExtensionInstallReportLogEvent_DownloadCacheStatus_entries_by_number[] = {
+  5, // 0 -> CACHE_UNKNOWN
+  0, // 1 -> CACHE_DISABLED
+  3, // 2 -> CACHE_MISS
+  4, // 3 -> CACHE_OUTDATED
+  1, // 4 -> CACHE_HIT
+  2, // 5 -> CACHE_HIT_ON_MANIFEST_FETCH_FAILURE
+};
+
+const std::string& ExtensionInstallReportLogEvent_DownloadCacheStatus_Name(
+    ExtensionInstallReportLogEvent_DownloadCacheStatus value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_DownloadCacheStatus_entries,
+          ExtensionInstallReportLogEvent_DownloadCacheStatus_entries_by_number,
+          6, ExtensionInstallReportLogEvent_DownloadCacheStatus_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_DownloadCacheStatus_entries,
+      ExtensionInstallReportLogEvent_DownloadCacheStatus_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_DownloadCacheStatus_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_DownloadCacheStatus_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_DownloadCacheStatus* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_DownloadCacheStatus_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_DownloadCacheStatus>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::CACHE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::CACHE_DISABLED;
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::CACHE_MISS;
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::CACHE_OUTDATED;
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::CACHE_HIT;
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::CACHE_HIT_ON_MANIFEST_FETCH_FAILURE;
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::DownloadCacheStatus_MIN;
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::DownloadCacheStatus_MAX;
+constexpr int ExtensionInstallReportLogEvent::DownloadCacheStatus_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+    case 14:
+    case 15:
+    case 16:
+    case 17:
+    case 18:
+    case 19:
+    case 20:
+    case 21:
+    case 22:
+    case 23:
+    case 24:
+    case 25:
+    case 26:
+    case 27:
+    case 28:
+    case 29:
+    case 30:
+    case 31:
+    case 32:
+    case 33:
+    case 34:
+    case 35:
+    case 36:
+    case 37:
+    case 38:
+    case 39:
+    case 40:
+    case 41:
+    case 42:
+    case 43:
+    case 44:
+    case 45:
+    case 46:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_strings[47] = {};
+
+static const char ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names[] =
+  "COULD_NOT_CREATE_METADATA_DIRECTORY"
+  "COULD_NOT_CREATE_TEMP_DIRECTORY"
+  "COULD_NOT_GET_SANDBOX_FRIENDLY_PATH"
+  "COULD_NOT_GET_TEMP_DIRECTORY"
+  "COULD_NOT_LOCALIZE_EXTENSION"
+  "COULD_NOT_READ_CATALOG_DATA_FROM_DISK_UNUSED"
+  "COULD_NOT_READ_IMAGE_DATA_FROM_DISK_UNUSED"
+  "COULD_NOT_WRITE_VERIFIED_CONTENTS_INTO_FILE"
+  "CRX_EXCESSIVELY_LARGE_KEY_OR_SIGNATURE"
+  "CRX_EXPECTED_HASH_INVALID"
+  "CRX_FILE_IS_DELTA_UPDATE"
+  "CRX_FILE_NOT_READABLE"
+  "CRX_HASH_VERIFICATION_FAILED"
+  "CRX_HEADER_INVALID"
+  "CRX_HEADER_VERIFIED_CONTENTS_UNCOMPRESSING_FAILURE"
+  "CRX_MAGIC_NUMBER_INVALID"
+  "CRX_PUBLIC_KEY_INVALID"
+  "CRX_REQUIRED_PROOF_MISSING"
+  "CRX_SIGNATURE_INVALID"
+  "CRX_SIGNATURE_VERIFICATION_FAILED"
+  "CRX_SIGNATURE_VERIFICATION_INITIALIZATION_FAILED"
+  "CRX_VERSION_NUMBER_INVALID"
+  "CRX_ZERO_KEY_LENGTH"
+  "CRX_ZERO_SIGNATURE_LENGTH"
+  "DECODED_IMAGES_DO_NOT_MATCH_THE_MANIFEST_UNUSED"
+  "DEPRECATED_ABORTED_DUE_TO_SHUTDOWN"
+  "DEPRECATED_ERROR_PARSING_DNR_RULESET"
+  "DIRECTORY_MOVE_FAILED"
+  "ERROR_INDEXING_DNR_RULESET"
+  "ERROR_REMOVING_OLD_IMAGE_FILE"
+  "ERROR_RE_ENCODING_THEME_IMAGE"
+  "ERROR_SAVING_CATALOG"
+  "ERROR_SAVING_MANIFEST_JSON"
+  "ERROR_SAVING_THEME_IMAGE"
+  "ERROR_SERIALIZING_CATALOG"
+  "ERROR_SERIALIZING_MANIFEST_JSON"
+  "FAILED_TO_COPY_EXTENSION_FILE_TO_TEMP_DIRECTORY"
+  "INVALID_CATALOG_DATA"
+  "INVALID_MANIFEST"
+  "INVALID_PATH_FOR_BITMAP_IMAGE"
+  "INVALID_PATH_FOR_BROWSER_IMAGE"
+  "INVALID_PATH_FOR_CATALOG_UNUSED"
+  "MALFORMED_VERIFIED_CONTENTS"
+  "SANDBOXED_UNPACKER_FAILURE_REASON_UNKNOWN"
+  "UNPACKER_CLIENT_FAILED"
+  "UNZIP_FAILED"
+  "UTILITY_PROCESS_CRASHED_WHILE_TRYING_TO_INSTALL";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_entries[] = {
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 0, 35}, 45 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 35, 31}, 2 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 66, 35}, 4 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 101, 28}, 1 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 129, 28}, 5 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 157, 44}, 30 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 201, 42}, 22 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 243, 43}, 46 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 286, 38}, 13 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 324, 25}, 39 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 349, 24}, 38 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 373, 21}, 9 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 394, 28}, 35 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 422, 18}, 10 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 440, 50}, 43 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 490, 24}, 11 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 514, 22}, 16 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 536, 26}, 42 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 562, 21}, 17 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 583, 33}, 19 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 616, 48}, 18 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 664, 26}, 12 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 690, 19}, 14 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 709, 25}, 15 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 734, 47}, 23 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 781, 34}, 29 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 815, 36}, 40 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 851, 21}, 37 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 872, 26}, 41 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 898, 29}, 25 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 927, 29}, 27 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 956, 20}, 34 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 976, 26}, 21 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1002, 24}, 28 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1026, 25}, 33 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1051, 31}, 20 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1082, 47}, 3 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1129, 20}, 31 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1149, 16}, 6 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1165, 29}, 26 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1194, 30}, 24 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1224, 31}, 32 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1255, 27}, 44 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1282, 41}, 0 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1323, 22}, 7 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1345, 12}, 36 },
+  { {ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_names + 1357, 47}, 8 },
+};
+
+static const int ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_entries_by_number[] = {
+  43, // 0 -> SANDBOXED_UNPACKER_FAILURE_REASON_UNKNOWN
+  3, // 1 -> COULD_NOT_GET_TEMP_DIRECTORY
+  1, // 2 -> COULD_NOT_CREATE_TEMP_DIRECTORY
+  36, // 3 -> FAILED_TO_COPY_EXTENSION_FILE_TO_TEMP_DIRECTORY
+  2, // 4 -> COULD_NOT_GET_SANDBOX_FRIENDLY_PATH
+  4, // 5 -> COULD_NOT_LOCALIZE_EXTENSION
+  38, // 6 -> INVALID_MANIFEST
+  44, // 7 -> UNPACKER_CLIENT_FAILED
+  46, // 8 -> UTILITY_PROCESS_CRASHED_WHILE_TRYING_TO_INSTALL
+  11, // 9 -> CRX_FILE_NOT_READABLE
+  13, // 10 -> CRX_HEADER_INVALID
+  15, // 11 -> CRX_MAGIC_NUMBER_INVALID
+  21, // 12 -> CRX_VERSION_NUMBER_INVALID
+  8, // 13 -> CRX_EXCESSIVELY_LARGE_KEY_OR_SIGNATURE
+  22, // 14 -> CRX_ZERO_KEY_LENGTH
+  23, // 15 -> CRX_ZERO_SIGNATURE_LENGTH
+  16, // 16 -> CRX_PUBLIC_KEY_INVALID
+  18, // 17 -> CRX_SIGNATURE_INVALID
+  20, // 18 -> CRX_SIGNATURE_VERIFICATION_INITIALIZATION_FAILED
+  19, // 19 -> CRX_SIGNATURE_VERIFICATION_FAILED
+  35, // 20 -> ERROR_SERIALIZING_MANIFEST_JSON
+  32, // 21 -> ERROR_SAVING_MANIFEST_JSON
+  6, // 22 -> COULD_NOT_READ_IMAGE_DATA_FROM_DISK_UNUSED
+  24, // 23 -> DECODED_IMAGES_DO_NOT_MATCH_THE_MANIFEST_UNUSED
+  40, // 24 -> INVALID_PATH_FOR_BROWSER_IMAGE
+  29, // 25 -> ERROR_REMOVING_OLD_IMAGE_FILE
+  39, // 26 -> INVALID_PATH_FOR_BITMAP_IMAGE
+  30, // 27 -> ERROR_RE_ENCODING_THEME_IMAGE
+  33, // 28 -> ERROR_SAVING_THEME_IMAGE
+  25, // 29 -> DEPRECATED_ABORTED_DUE_TO_SHUTDOWN
+  5, // 30 -> COULD_NOT_READ_CATALOG_DATA_FROM_DISK_UNUSED
+  37, // 31 -> INVALID_CATALOG_DATA
+  41, // 32 -> INVALID_PATH_FOR_CATALOG_UNUSED
+  34, // 33 -> ERROR_SERIALIZING_CATALOG
+  31, // 34 -> ERROR_SAVING_CATALOG
+  12, // 35 -> CRX_HASH_VERIFICATION_FAILED
+  45, // 36 -> UNZIP_FAILED
+  27, // 37 -> DIRECTORY_MOVE_FAILED
+  10, // 38 -> CRX_FILE_IS_DELTA_UPDATE
+  9, // 39 -> CRX_EXPECTED_HASH_INVALID
+  26, // 40 -> DEPRECATED_ERROR_PARSING_DNR_RULESET
+  28, // 41 -> ERROR_INDEXING_DNR_RULESET
+  17, // 42 -> CRX_REQUIRED_PROOF_MISSING
+  14, // 43 -> CRX_HEADER_VERIFIED_CONTENTS_UNCOMPRESSING_FAILURE
+  42, // 44 -> MALFORMED_VERIFIED_CONTENTS
+  0, // 45 -> COULD_NOT_CREATE_METADATA_DIRECTORY
+  7, // 46 -> COULD_NOT_WRITE_VERIFIED_CONTENTS_INTO_FILE
+};
+
+const std::string& ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Name(
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_entries,
+          ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_entries_by_number,
+          47, ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_entries,
+      ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_entries_by_number,
+      47, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_entries, 47, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::SANDBOXED_UNPACKER_FAILURE_REASON_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::COULD_NOT_GET_TEMP_DIRECTORY;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::COULD_NOT_CREATE_TEMP_DIRECTORY;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::FAILED_TO_COPY_EXTENSION_FILE_TO_TEMP_DIRECTORY;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::COULD_NOT_GET_SANDBOX_FRIENDLY_PATH;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::COULD_NOT_LOCALIZE_EXTENSION;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::INVALID_MANIFEST;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::UNPACKER_CLIENT_FAILED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::UTILITY_PROCESS_CRASHED_WHILE_TRYING_TO_INSTALL;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_FILE_NOT_READABLE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_HEADER_INVALID;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_MAGIC_NUMBER_INVALID;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_VERSION_NUMBER_INVALID;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_EXCESSIVELY_LARGE_KEY_OR_SIGNATURE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_ZERO_KEY_LENGTH;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_ZERO_SIGNATURE_LENGTH;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_PUBLIC_KEY_INVALID;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_SIGNATURE_INVALID;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_SIGNATURE_VERIFICATION_INITIALIZATION_FAILED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_SIGNATURE_VERIFICATION_FAILED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::ERROR_SERIALIZING_MANIFEST_JSON;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::ERROR_SAVING_MANIFEST_JSON;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::COULD_NOT_READ_IMAGE_DATA_FROM_DISK_UNUSED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::DECODED_IMAGES_DO_NOT_MATCH_THE_MANIFEST_UNUSED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::INVALID_PATH_FOR_BROWSER_IMAGE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::ERROR_REMOVING_OLD_IMAGE_FILE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::INVALID_PATH_FOR_BITMAP_IMAGE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::ERROR_RE_ENCODING_THEME_IMAGE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::ERROR_SAVING_THEME_IMAGE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::DEPRECATED_ABORTED_DUE_TO_SHUTDOWN;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::COULD_NOT_READ_CATALOG_DATA_FROM_DISK_UNUSED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::INVALID_CATALOG_DATA;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::INVALID_PATH_FOR_CATALOG_UNUSED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::ERROR_SERIALIZING_CATALOG;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::ERROR_SAVING_CATALOG;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_HASH_VERIFICATION_FAILED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::UNZIP_FAILED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::DIRECTORY_MOVE_FAILED;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_FILE_IS_DELTA_UPDATE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_EXPECTED_HASH_INVALID;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::DEPRECATED_ERROR_PARSING_DNR_RULESET;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::ERROR_INDEXING_DNR_RULESET;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_REQUIRED_PROOF_MISSING;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::CRX_HEADER_VERIFIED_CONTENTS_UNCOMPRESSING_FAILURE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::MALFORMED_VERIFIED_CONTENTS;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::COULD_NOT_CREATE_METADATA_DIRECTORY;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::COULD_NOT_WRITE_VERIFIED_CONTENTS_INTO_FILE;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::SandboxedUnpackerFailureReason_MIN;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::SandboxedUnpackerFailureReason_MAX;
+constexpr int ExtensionInstallReportLogEvent::SandboxedUnpackerFailureReason_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_ManifestInvalidError_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+    case 14:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_ManifestInvalidError_strings[15] = {};
+
+static const char ExtensionInstallReportLogEvent_ManifestInvalidError_names[] =
+  "BAD_APP_STATUS"
+  "BAD_UPDATE_SPECIFICATION"
+  "EMPTY_CODEBASE_URL"
+  "INVALID_CODEBASE_URL"
+  "INVALID_PRODVERSION_MIN"
+  "INVALID_PROTOCOL_ON_GUPDATE_TAG"
+  "INVALID_VERSION"
+  "INVALID_XLMNS_ON_GUPDATE_TAG"
+  "MANIFEST_INVALID_ERROR_UNKNOWN"
+  "MISSING_APP_ID"
+  "MISSING_GUPDATE_TAG"
+  "MISSING_UPDATE_CHECK_TAGS"
+  "MISSING_VERSION_FOR_UPDATE_CHECK"
+  "MULTIPLE_UPDATE_CHECK_TAGS"
+  "XML_PARSING_FAILED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_ManifestInvalidError_entries[] = {
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 0, 14}, 14 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 14, 24}, 13 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 38, 18}, 9 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 56, 20}, 10 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 76, 23}, 8 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 99, 31}, 4 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 130, 15}, 12 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 145, 28}, 2 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 173, 30}, 0 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 203, 14}, 5 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 217, 19}, 3 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 236, 25}, 6 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 261, 32}, 11 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 293, 26}, 7 },
+  { {ExtensionInstallReportLogEvent_ManifestInvalidError_names + 319, 18}, 1 },
+};
+
+static const int ExtensionInstallReportLogEvent_ManifestInvalidError_entries_by_number[] = {
+  8, // 0 -> MANIFEST_INVALID_ERROR_UNKNOWN
+  14, // 1 -> XML_PARSING_FAILED
+  7, // 2 -> INVALID_XLMNS_ON_GUPDATE_TAG
+  10, // 3 -> MISSING_GUPDATE_TAG
+  5, // 4 -> INVALID_PROTOCOL_ON_GUPDATE_TAG
+  9, // 5 -> MISSING_APP_ID
+  11, // 6 -> MISSING_UPDATE_CHECK_TAGS
+  13, // 7 -> MULTIPLE_UPDATE_CHECK_TAGS
+  4, // 8 -> INVALID_PRODVERSION_MIN
+  2, // 9 -> EMPTY_CODEBASE_URL
+  3, // 10 -> INVALID_CODEBASE_URL
+  12, // 11 -> MISSING_VERSION_FOR_UPDATE_CHECK
+  6, // 12 -> INVALID_VERSION
+  1, // 13 -> BAD_UPDATE_SPECIFICATION
+  0, // 14 -> BAD_APP_STATUS
+};
+
+const std::string& ExtensionInstallReportLogEvent_ManifestInvalidError_Name(
+    ExtensionInstallReportLogEvent_ManifestInvalidError value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_ManifestInvalidError_entries,
+          ExtensionInstallReportLogEvent_ManifestInvalidError_entries_by_number,
+          15, ExtensionInstallReportLogEvent_ManifestInvalidError_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_ManifestInvalidError_entries,
+      ExtensionInstallReportLogEvent_ManifestInvalidError_entries_by_number,
+      15, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_ManifestInvalidError_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_ManifestInvalidError_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_ManifestInvalidError* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_ManifestInvalidError_entries, 15, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_ManifestInvalidError>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::MANIFEST_INVALID_ERROR_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::XML_PARSING_FAILED;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::INVALID_XLMNS_ON_GUPDATE_TAG;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::MISSING_GUPDATE_TAG;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::INVALID_PROTOCOL_ON_GUPDATE_TAG;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::MISSING_APP_ID;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::MISSING_UPDATE_CHECK_TAGS;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::MULTIPLE_UPDATE_CHECK_TAGS;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::INVALID_PRODVERSION_MIN;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::EMPTY_CODEBASE_URL;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::INVALID_CODEBASE_URL;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::MISSING_VERSION_FOR_UPDATE_CHECK;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::INVALID_VERSION;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::BAD_UPDATE_SPECIFICATION;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::BAD_APP_STATUS;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::ManifestInvalidError_MIN;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::ManifestInvalidError_MAX;
+constexpr int ExtensionInstallReportLogEvent::ManifestInvalidError_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ExtensionInstallReportLogEvent_CrxInstallErrorDetail_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+    case 14:
+    case 15:
+    case 16:
+    case 17:
+    case 18:
+    case 19:
+    case 20:
+    case 21:
+    case 22:
+    case 23:
+    case 24:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ExtensionInstallReportLogEvent_CrxInstallErrorDetail_strings[25] = {};
+
+static const char ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names[] =
+  "CANT_DOWNGRADE_VERSION"
+  "CANT_LOAD_EXTENSION"
+  "CONVERT_USER_SCRIPT_TO_EXTENSION_FAILED"
+  "CRX_ERROR_MANIFEST_INVALID"
+  "CRX_INSTALL_ERROR_DETAIL_UNKNOWN"
+  "DEPENDENCY_NOT_ALLOWLISTED"
+  "DEPENDENCY_NOT_SHARED_MODULE"
+  "DEPENDENCY_OLD_VERSION"
+  "DISALLOWED_BY_POLICY"
+  "EXTENSION_IS_BLOCKLISTED"
+  "INCORRECT_APP_CONTENT_TYPE"
+  "INCORRECT_INSTALL_HOST"
+  "INSTALL_NOT_ENABLED"
+  "KIOSK_MODE_ONLY"
+  "MISMATCHED_VERSION"
+  "MOVE_DIRECTORY_TO_PROFILE_FAILED"
+  "NOT_INSTALLED_FROM_GALLERY"
+  "OFFSTORE_INSTALL_DISALLOWED"
+  "OVERLAPPING_WEB_EXTENT"
+  "UNEXPECTED_ID"
+  "UNEXPECTED_VERSION"
+  "UNSUPPORTED_REQUIREMENTS"
+  "UPDATE_NON_EXISTING_EXTENSION"
+  "USER_ABORTED"
+  "USER_CANCELED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ExtensionInstallReportLogEvent_CrxInstallErrorDetail_entries[] = {
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 0, 22}, 19 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 22, 19}, 21 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 41, 39}, 1 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 80, 26}, 5 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 106, 32}, 0 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 138, 26}, 13 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 164, 28}, 11 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 192, 22}, 12 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 214, 20}, 16 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 234, 24}, 15 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 258, 26}, 8 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 284, 22}, 10 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 306, 19}, 6 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 325, 15}, 17 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 340, 18}, 4 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 358, 32}, 20 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 390, 26}, 9 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 416, 27}, 7 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 443, 22}, 18 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 465, 13}, 2 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 478, 18}, 3 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 496, 24}, 14 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 520, 29}, 24 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 549, 12}, 23 },
+  { {ExtensionInstallReportLogEvent_CrxInstallErrorDetail_names + 561, 13}, 22 },
+};
+
+static const int ExtensionInstallReportLogEvent_CrxInstallErrorDetail_entries_by_number[] = {
+  4, // 0 -> CRX_INSTALL_ERROR_DETAIL_UNKNOWN
+  2, // 1 -> CONVERT_USER_SCRIPT_TO_EXTENSION_FAILED
+  19, // 2 -> UNEXPECTED_ID
+  20, // 3 -> UNEXPECTED_VERSION
+  14, // 4 -> MISMATCHED_VERSION
+  3, // 5 -> CRX_ERROR_MANIFEST_INVALID
+  12, // 6 -> INSTALL_NOT_ENABLED
+  17, // 7 -> OFFSTORE_INSTALL_DISALLOWED
+  10, // 8 -> INCORRECT_APP_CONTENT_TYPE
+  16, // 9 -> NOT_INSTALLED_FROM_GALLERY
+  11, // 10 -> INCORRECT_INSTALL_HOST
+  6, // 11 -> DEPENDENCY_NOT_SHARED_MODULE
+  7, // 12 -> DEPENDENCY_OLD_VERSION
+  5, // 13 -> DEPENDENCY_NOT_ALLOWLISTED
+  21, // 14 -> UNSUPPORTED_REQUIREMENTS
+  9, // 15 -> EXTENSION_IS_BLOCKLISTED
+  8, // 16 -> DISALLOWED_BY_POLICY
+  13, // 17 -> KIOSK_MODE_ONLY
+  18, // 18 -> OVERLAPPING_WEB_EXTENT
+  0, // 19 -> CANT_DOWNGRADE_VERSION
+  15, // 20 -> MOVE_DIRECTORY_TO_PROFILE_FAILED
+  1, // 21 -> CANT_LOAD_EXTENSION
+  24, // 22 -> USER_CANCELED
+  23, // 23 -> USER_ABORTED
+  22, // 24 -> UPDATE_NON_EXISTING_EXTENSION
+};
+
+const std::string& ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Name(
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ExtensionInstallReportLogEvent_CrxInstallErrorDetail_entries,
+          ExtensionInstallReportLogEvent_CrxInstallErrorDetail_entries_by_number,
+          25, ExtensionInstallReportLogEvent_CrxInstallErrorDetail_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ExtensionInstallReportLogEvent_CrxInstallErrorDetail_entries,
+      ExtensionInstallReportLogEvent_CrxInstallErrorDetail_entries_by_number,
+      25, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ExtensionInstallReportLogEvent_CrxInstallErrorDetail_strings[idx].get();
+}
+bool ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_CrxInstallErrorDetail* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ExtensionInstallReportLogEvent_CrxInstallErrorDetail_entries, 25, name, &int_value);
+  if (success) {
+    *value = static_cast<ExtensionInstallReportLogEvent_CrxInstallErrorDetail>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::CRX_INSTALL_ERROR_DETAIL_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::CONVERT_USER_SCRIPT_TO_EXTENSION_FAILED;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::UNEXPECTED_ID;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::UNEXPECTED_VERSION;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::MISMATCHED_VERSION;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::CRX_ERROR_MANIFEST_INVALID;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::INSTALL_NOT_ENABLED;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::OFFSTORE_INSTALL_DISALLOWED;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::INCORRECT_APP_CONTENT_TYPE;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::NOT_INSTALLED_FROM_GALLERY;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::INCORRECT_INSTALL_HOST;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::DEPENDENCY_NOT_SHARED_MODULE;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::DEPENDENCY_OLD_VERSION;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::DEPENDENCY_NOT_ALLOWLISTED;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::UNSUPPORTED_REQUIREMENTS;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::EXTENSION_IS_BLOCKLISTED;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::DISALLOWED_BY_POLICY;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::KIOSK_MODE_ONLY;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::OVERLAPPING_WEB_EXTENT;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::CANT_DOWNGRADE_VERSION;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::MOVE_DIRECTORY_TO_PROFILE_FAILED;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::CANT_LOAD_EXTENSION;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::USER_CANCELED;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::USER_ABORTED;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::UPDATE_NON_EXISTING_EXTENSION;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::CrxInstallErrorDetail_MIN;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::CrxInstallErrorDetail_MAX;
+constexpr int ExtensionInstallReportLogEvent::CrxInstallErrorDetail_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AppInstallReportLogEvent_EventType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+    case 14:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AppInstallReportLogEvent_EventType_strings[15] = {};
+
+static const char AppInstallReportLogEvent_EventType_names[] =
+  "CANCELED"
+  "CLOUDDPC_MAIN_LOOP_FAILED"
+  "CLOUDDPC_REQUEST"
+  "CLOUDDPS_REQUEST"
+  "CLOUDDPS_RESPONSE"
+  "CONNECTIVITY_CHANGE"
+  "DIRECT_INSTALL"
+  "INSTALLATION_FAILED"
+  "INSTALLATION_FINISHED"
+  "INSTALLATION_STARTED"
+  "LOG_EVENT_TYPE_UNKNOWN"
+  "PHONESKY_LOG"
+  "SERVER_REQUEST"
+  "SESSION_STATE_CHANGE"
+  "SUCCESS";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AppInstallReportLogEvent_EventType_entries[] = {
+  { {AppInstallReportLogEvent_EventType_names + 0, 8}, 7 },
+  { {AppInstallReportLogEvent_EventType_names + 8, 25}, 14 },
+  { {AppInstallReportLogEvent_EventType_names + 33, 16}, 2 },
+  { {AppInstallReportLogEvent_EventType_names + 49, 16}, 3 },
+  { {AppInstallReportLogEvent_EventType_names + 65, 17}, 4 },
+  { {AppInstallReportLogEvent_EventType_names + 82, 19}, 8 },
+  { {AppInstallReportLogEvent_EventType_names + 101, 14}, 13 },
+  { {AppInstallReportLogEvent_EventType_names + 115, 19}, 12 },
+  { {AppInstallReportLogEvent_EventType_names + 134, 21}, 11 },
+  { {AppInstallReportLogEvent_EventType_names + 155, 20}, 10 },
+  { {AppInstallReportLogEvent_EventType_names + 175, 22}, 0 },
+  { {AppInstallReportLogEvent_EventType_names + 197, 12}, 5 },
+  { {AppInstallReportLogEvent_EventType_names + 209, 14}, 1 },
+  { {AppInstallReportLogEvent_EventType_names + 223, 20}, 9 },
+  { {AppInstallReportLogEvent_EventType_names + 243, 7}, 6 },
+};
+
+static const int AppInstallReportLogEvent_EventType_entries_by_number[] = {
+  10, // 0 -> LOG_EVENT_TYPE_UNKNOWN
+  12, // 1 -> SERVER_REQUEST
+  2, // 2 -> CLOUDDPC_REQUEST
+  3, // 3 -> CLOUDDPS_REQUEST
+  4, // 4 -> CLOUDDPS_RESPONSE
+  11, // 5 -> PHONESKY_LOG
+  14, // 6 -> SUCCESS
+  0, // 7 -> CANCELED
+  5, // 8 -> CONNECTIVITY_CHANGE
+  13, // 9 -> SESSION_STATE_CHANGE
+  9, // 10 -> INSTALLATION_STARTED
+  8, // 11 -> INSTALLATION_FINISHED
+  7, // 12 -> INSTALLATION_FAILED
+  6, // 13 -> DIRECT_INSTALL
+  1, // 14 -> CLOUDDPC_MAIN_LOOP_FAILED
+};
+
+const std::string& AppInstallReportLogEvent_EventType_Name(
+    AppInstallReportLogEvent_EventType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AppInstallReportLogEvent_EventType_entries,
+          AppInstallReportLogEvent_EventType_entries_by_number,
+          15, AppInstallReportLogEvent_EventType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AppInstallReportLogEvent_EventType_entries,
+      AppInstallReportLogEvent_EventType_entries_by_number,
+      15, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AppInstallReportLogEvent_EventType_strings[idx].get();
+}
+bool AppInstallReportLogEvent_EventType_Parse(
+    const std::string& name, AppInstallReportLogEvent_EventType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AppInstallReportLogEvent_EventType_entries, 15, name, &int_value);
+  if (success) {
+    *value = static_cast<AppInstallReportLogEvent_EventType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::LOG_EVENT_TYPE_UNKNOWN;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::SERVER_REQUEST;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::CLOUDDPC_REQUEST;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::CLOUDDPS_REQUEST;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::CLOUDDPS_RESPONSE;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::PHONESKY_LOG;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::SUCCESS;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::CANCELED;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::CONNECTIVITY_CHANGE;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::SESSION_STATE_CHANGE;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::INSTALLATION_STARTED;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::INSTALLATION_FINISHED;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::INSTALLATION_FAILED;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::DIRECT_INSTALL;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::CLOUDDPC_MAIN_LOOP_FAILED;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::EventType_MIN;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent::EventType_MAX;
+constexpr int AppInstallReportLogEvent::EventType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AppInstallReportLogEvent_SessionStateChangeType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AppInstallReportLogEvent_SessionStateChangeType_strings[5] = {};
+
+static const char AppInstallReportLogEvent_SessionStateChangeType_names[] =
+  "LOGIN"
+  "LOGOUT"
+  "RESUME"
+  "SESSION_STATE_CHANGE_TYPE_UNKNOWN"
+  "SUSPEND";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AppInstallReportLogEvent_SessionStateChangeType_entries[] = {
+  { {AppInstallReportLogEvent_SessionStateChangeType_names + 0, 5}, 1 },
+  { {AppInstallReportLogEvent_SessionStateChangeType_names + 5, 6}, 2 },
+  { {AppInstallReportLogEvent_SessionStateChangeType_names + 11, 6}, 4 },
+  { {AppInstallReportLogEvent_SessionStateChangeType_names + 17, 33}, 0 },
+  { {AppInstallReportLogEvent_SessionStateChangeType_names + 50, 7}, 3 },
+};
+
+static const int AppInstallReportLogEvent_SessionStateChangeType_entries_by_number[] = {
+  3, // 0 -> SESSION_STATE_CHANGE_TYPE_UNKNOWN
+  0, // 1 -> LOGIN
+  1, // 2 -> LOGOUT
+  4, // 3 -> SUSPEND
+  2, // 4 -> RESUME
+};
+
+const std::string& AppInstallReportLogEvent_SessionStateChangeType_Name(
+    AppInstallReportLogEvent_SessionStateChangeType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AppInstallReportLogEvent_SessionStateChangeType_entries,
+          AppInstallReportLogEvent_SessionStateChangeType_entries_by_number,
+          5, AppInstallReportLogEvent_SessionStateChangeType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AppInstallReportLogEvent_SessionStateChangeType_entries,
+      AppInstallReportLogEvent_SessionStateChangeType_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AppInstallReportLogEvent_SessionStateChangeType_strings[idx].get();
+}
+bool AppInstallReportLogEvent_SessionStateChangeType_Parse(
+    const std::string& name, AppInstallReportLogEvent_SessionStateChangeType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AppInstallReportLogEvent_SessionStateChangeType_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<AppInstallReportLogEvent_SessionStateChangeType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::SESSION_STATE_CHANGE_TYPE_UNKNOWN;
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::LOGIN;
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::LOGOUT;
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::SUSPEND;
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::RESUME;
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::SessionStateChangeType_MIN;
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::SessionStateChangeType_MAX;
+constexpr int AppInstallReportLogEvent::SessionStateChangeType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool RefreshAccountRequest_AccountType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> RefreshAccountRequest_AccountType_strings[2] = {};
+
+static const char RefreshAccountRequest_AccountType_names[] =
+  "ACCOUNT_TYPE_UNSPECIFIED"
+  "CHROME_OS_DEMO_MODE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry RefreshAccountRequest_AccountType_entries[] = {
+  { {RefreshAccountRequest_AccountType_names + 0, 24}, 0 },
+  { {RefreshAccountRequest_AccountType_names + 24, 19}, 1 },
+};
+
+static const int RefreshAccountRequest_AccountType_entries_by_number[] = {
+  0, // 0 -> ACCOUNT_TYPE_UNSPECIFIED
+  1, // 1 -> CHROME_OS_DEMO_MODE
+};
+
+const std::string& RefreshAccountRequest_AccountType_Name(
+    RefreshAccountRequest_AccountType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          RefreshAccountRequest_AccountType_entries,
+          RefreshAccountRequest_AccountType_entries_by_number,
+          2, RefreshAccountRequest_AccountType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      RefreshAccountRequest_AccountType_entries,
+      RefreshAccountRequest_AccountType_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     RefreshAccountRequest_AccountType_strings[idx].get();
+}
+bool RefreshAccountRequest_AccountType_Parse(
+    const std::string& name, RefreshAccountRequest_AccountType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      RefreshAccountRequest_AccountType_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<RefreshAccountRequest_AccountType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr RefreshAccountRequest_AccountType RefreshAccountRequest::ACCOUNT_TYPE_UNSPECIFIED;
+constexpr RefreshAccountRequest_AccountType RefreshAccountRequest::CHROME_OS_DEMO_MODE;
+constexpr RefreshAccountRequest_AccountType RefreshAccountRequest::AccountType_MIN;
+constexpr RefreshAccountRequest_AccountType RefreshAccountRequest::AccountType_MAX;
+constexpr int RefreshAccountRequest::AccountType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PrintJobEvent_PrintSettings_ColorMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PrintJobEvent_PrintSettings_ColorMode_strings[3] = {};
+
+static const char PrintJobEvent_PrintSettings_ColorMode_names[] =
+  "BLACK_AND_WHITE"
+  "COLOR"
+  "UNKNOWN_COLOR_MODE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PrintJobEvent_PrintSettings_ColorMode_entries[] = {
+  { {PrintJobEvent_PrintSettings_ColorMode_names + 0, 15}, 1 },
+  { {PrintJobEvent_PrintSettings_ColorMode_names + 15, 5}, 2 },
+  { {PrintJobEvent_PrintSettings_ColorMode_names + 20, 18}, 0 },
+};
+
+static const int PrintJobEvent_PrintSettings_ColorMode_entries_by_number[] = {
+  2, // 0 -> UNKNOWN_COLOR_MODE
+  0, // 1 -> BLACK_AND_WHITE
+  1, // 2 -> COLOR
+};
+
+const std::string& PrintJobEvent_PrintSettings_ColorMode_Name(
+    PrintJobEvent_PrintSettings_ColorMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PrintJobEvent_PrintSettings_ColorMode_entries,
+          PrintJobEvent_PrintSettings_ColorMode_entries_by_number,
+          3, PrintJobEvent_PrintSettings_ColorMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PrintJobEvent_PrintSettings_ColorMode_entries,
+      PrintJobEvent_PrintSettings_ColorMode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PrintJobEvent_PrintSettings_ColorMode_strings[idx].get();
+}
+bool PrintJobEvent_PrintSettings_ColorMode_Parse(
+    const std::string& name, PrintJobEvent_PrintSettings_ColorMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PrintJobEvent_PrintSettings_ColorMode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<PrintJobEvent_PrintSettings_ColorMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings::UNKNOWN_COLOR_MODE;
+constexpr PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings::BLACK_AND_WHITE;
+constexpr PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings::COLOR;
+constexpr PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings::ColorMode_MIN;
+constexpr PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings::ColorMode_MAX;
+constexpr int PrintJobEvent_PrintSettings::ColorMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PrintJobEvent_PrintSettings_DuplexMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PrintJobEvent_PrintSettings_DuplexMode_strings[4] = {};
+
+static const char PrintJobEvent_PrintSettings_DuplexMode_names[] =
+  "ONE_SIDED"
+  "TWO_SIDED_LONG_EDGE"
+  "TWO_SIDED_SHORT_EDGE"
+  "UNKNOWN_DUPLEX_MODE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PrintJobEvent_PrintSettings_DuplexMode_entries[] = {
+  { {PrintJobEvent_PrintSettings_DuplexMode_names + 0, 9}, 1 },
+  { {PrintJobEvent_PrintSettings_DuplexMode_names + 9, 19}, 2 },
+  { {PrintJobEvent_PrintSettings_DuplexMode_names + 28, 20}, 3 },
+  { {PrintJobEvent_PrintSettings_DuplexMode_names + 48, 19}, 0 },
+};
+
+static const int PrintJobEvent_PrintSettings_DuplexMode_entries_by_number[] = {
+  3, // 0 -> UNKNOWN_DUPLEX_MODE
+  0, // 1 -> ONE_SIDED
+  1, // 2 -> TWO_SIDED_LONG_EDGE
+  2, // 3 -> TWO_SIDED_SHORT_EDGE
+};
+
+const std::string& PrintJobEvent_PrintSettings_DuplexMode_Name(
+    PrintJobEvent_PrintSettings_DuplexMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PrintJobEvent_PrintSettings_DuplexMode_entries,
+          PrintJobEvent_PrintSettings_DuplexMode_entries_by_number,
+          4, PrintJobEvent_PrintSettings_DuplexMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PrintJobEvent_PrintSettings_DuplexMode_entries,
+      PrintJobEvent_PrintSettings_DuplexMode_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PrintJobEvent_PrintSettings_DuplexMode_strings[idx].get();
+}
+bool PrintJobEvent_PrintSettings_DuplexMode_Parse(
+    const std::string& name, PrintJobEvent_PrintSettings_DuplexMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PrintJobEvent_PrintSettings_DuplexMode_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<PrintJobEvent_PrintSettings_DuplexMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings::UNKNOWN_DUPLEX_MODE;
+constexpr PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings::ONE_SIDED;
+constexpr PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings::TWO_SIDED_LONG_EDGE;
+constexpr PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings::TWO_SIDED_SHORT_EDGE;
+constexpr PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings::DuplexMode_MIN;
+constexpr PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings::DuplexMode_MAX;
+constexpr int PrintJobEvent_PrintSettings::DuplexMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool PrintJobEvent_UserType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PrintJobEvent_UserType_strings[4] = {};
+
+static const char PrintJobEvent_UserType_names[] =
+  "GUEST"
+  "KIOSK"
+  "REGULAR"
+  "UNKNOWN_USER_TYPE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PrintJobEvent_UserType_entries[] = {
+  { {PrintJobEvent_UserType_names + 0, 5}, 2 },
+  { {PrintJobEvent_UserType_names + 5, 5}, 3 },
+  { {PrintJobEvent_UserType_names + 10, 7}, 1 },
+  { {PrintJobEvent_UserType_names + 17, 17}, 0 },
+};
+
+static const int PrintJobEvent_UserType_entries_by_number[] = {
+  3, // 0 -> UNKNOWN_USER_TYPE
+  2, // 1 -> REGULAR
+  0, // 2 -> GUEST
+  1, // 3 -> KIOSK
+};
+
+const std::string& PrintJobEvent_UserType_Name(
+    PrintJobEvent_UserType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PrintJobEvent_UserType_entries,
+          PrintJobEvent_UserType_entries_by_number,
+          4, PrintJobEvent_UserType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PrintJobEvent_UserType_entries,
+      PrintJobEvent_UserType_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PrintJobEvent_UserType_strings[idx].get();
+}
+bool PrintJobEvent_UserType_Parse(
+    const std::string& name, PrintJobEvent_UserType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PrintJobEvent_UserType_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<PrintJobEvent_UserType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PrintJobEvent_UserType PrintJobEvent::UNKNOWN_USER_TYPE;
+constexpr PrintJobEvent_UserType PrintJobEvent::REGULAR;
+constexpr PrintJobEvent_UserType PrintJobEvent::GUEST;
+constexpr PrintJobEvent_UserType PrintJobEvent::KIOSK;
+constexpr PrintJobEvent_UserType PrintJobEvent::UserType_MIN;
+constexpr PrintJobEvent_UserType PrintJobEvent::UserType_MAX;
+constexpr int PrintJobEvent::UserType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool App_AppType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> App_AppType_strings[8] = {};
+
+static const char App_AppType_names[] =
+  "ARC"
+  "BOREALIS"
+  "BUILT_IN"
+  "CROSTINI"
+  "EXTENSION"
+  "PLUGIN_VM"
+  "UNKNOWN"
+  "WEB";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry App_AppType_entries[] = {
+  { {App_AppType_names + 0, 3}, 1 },
+  { {App_AppType_names + 3, 8}, 7 },
+  { {App_AppType_names + 11, 8}, 2 },
+  { {App_AppType_names + 19, 8}, 3 },
+  { {App_AppType_names + 27, 9}, 4 },
+  { {App_AppType_names + 36, 9}, 6 },
+  { {App_AppType_names + 45, 7}, 0 },
+  { {App_AppType_names + 52, 3}, 5 },
+};
+
+static const int App_AppType_entries_by_number[] = {
+  6, // 0 -> UNKNOWN
+  0, // 1 -> ARC
+  2, // 2 -> BUILT_IN
+  3, // 3 -> CROSTINI
+  4, // 4 -> EXTENSION
+  7, // 5 -> WEB
+  5, // 6 -> PLUGIN_VM
+  1, // 7 -> BOREALIS
+};
+
+const std::string& App_AppType_Name(
+    App_AppType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          App_AppType_entries,
+          App_AppType_entries_by_number,
+          8, App_AppType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      App_AppType_entries,
+      App_AppType_entries_by_number,
+      8, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     App_AppType_strings[idx].get();
+}
+bool App_AppType_Parse(
+    const std::string& name, App_AppType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      App_AppType_entries, 8, name, &int_value);
+  if (success) {
+    *value = static_cast<App_AppType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr App_AppType App::UNKNOWN;
+constexpr App_AppType App::ARC;
+constexpr App_AppType App::BUILT_IN;
+constexpr App_AppType App::CROSTINI;
+constexpr App_AppType App::EXTENSION;
+constexpr App_AppType App::WEB;
+constexpr App_AppType App::PLUGIN_VM;
+constexpr App_AppType App::BOREALIS;
+constexpr App_AppType App::AppType_MIN;
+constexpr App_AppType App::AppType_MAX;
+constexpr int App::AppType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool AppActivity_AppState_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> AppActivity_AppState_strings[6] = {};
+
+static const char AppActivity_AppState_names[] =
+  "ALWAYS_AVAILABLE"
+  "BLOCKED"
+  "DEFAULT"
+  "LIMIT_REACHED"
+  "UNINSTALLED"
+  "UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry AppActivity_AppState_entries[] = {
+  { {AppActivity_AppState_names + 0, 16}, 2 },
+  { {AppActivity_AppState_names + 16, 7}, 3 },
+  { {AppActivity_AppState_names + 23, 7}, 1 },
+  { {AppActivity_AppState_names + 30, 13}, 4 },
+  { {AppActivity_AppState_names + 43, 11}, 5 },
+  { {AppActivity_AppState_names + 54, 7}, 0 },
+};
+
+static const int AppActivity_AppState_entries_by_number[] = {
+  5, // 0 -> UNKNOWN
+  2, // 1 -> DEFAULT
+  0, // 2 -> ALWAYS_AVAILABLE
+  1, // 3 -> BLOCKED
+  3, // 4 -> LIMIT_REACHED
+  4, // 5 -> UNINSTALLED
+};
+
+const std::string& AppActivity_AppState_Name(
+    AppActivity_AppState value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          AppActivity_AppState_entries,
+          AppActivity_AppState_entries_by_number,
+          6, AppActivity_AppState_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      AppActivity_AppState_entries,
+      AppActivity_AppState_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     AppActivity_AppState_strings[idx].get();
+}
+bool AppActivity_AppState_Parse(
+    const std::string& name, AppActivity_AppState* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      AppActivity_AppState_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<AppActivity_AppState>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr AppActivity_AppState AppActivity::UNKNOWN;
+constexpr AppActivity_AppState AppActivity::DEFAULT;
+constexpr AppActivity_AppState AppActivity::ALWAYS_AVAILABLE;
+constexpr AppActivity_AppState AppActivity::BLOCKED;
+constexpr AppActivity_AppState AppActivity::LIMIT_REACHED;
+constexpr AppActivity_AppState AppActivity::UNINSTALLED;
+constexpr AppActivity_AppState AppActivity::AppState_MIN;
+constexpr AppActivity_AppState AppActivity::AppState_MAX;
+constexpr int AppActivity::AppState_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool ClientCertificateProvisioningResponse_Error_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ClientCertificateProvisioningResponse_Error_strings[10] = {};
+
+static const char ClientCertificateProvisioningResponse_Error_names[] =
+  "BAD_CA_CERTIFICATE_SPECIFIED"
+  "BAD_CLIENT_CERTIFICATE_RECEIVED"
+  "BAD_PUBLIC_KEY"
+  "CA_ERROR"
+  "CSR_ALREADY_SENT"
+  "IDENTITY_VERIFICATION_ERROR"
+  "INCONSISTENT_DATA"
+  "INVALID_CSR_SIGNATURE"
+  "TIMED_OUT"
+  "UNDEFINED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ClientCertificateProvisioningResponse_Error_entries[] = {
+  { {ClientCertificateProvisioningResponse_Error_names + 0, 28}, 6 },
+  { {ClientCertificateProvisioningResponse_Error_names + 28, 31}, 7 },
+  { {ClientCertificateProvisioningResponse_Error_names + 59, 14}, 5 },
+  { {ClientCertificateProvisioningResponse_Error_names + 73, 8}, 3 },
+  { {ClientCertificateProvisioningResponse_Error_names + 81, 16}, 9 },
+  { {ClientCertificateProvisioningResponse_Error_names + 97, 27}, 2 },
+  { {ClientCertificateProvisioningResponse_Error_names + 124, 17}, 4 },
+  { {ClientCertificateProvisioningResponse_Error_names + 141, 21}, 8 },
+  { {ClientCertificateProvisioningResponse_Error_names + 162, 9}, 1 },
+  { {ClientCertificateProvisioningResponse_Error_names + 171, 9}, 0 },
+};
+
+static const int ClientCertificateProvisioningResponse_Error_entries_by_number[] = {
+  9, // 0 -> UNDEFINED
+  8, // 1 -> TIMED_OUT
+  5, // 2 -> IDENTITY_VERIFICATION_ERROR
+  3, // 3 -> CA_ERROR
+  6, // 4 -> INCONSISTENT_DATA
+  2, // 5 -> BAD_PUBLIC_KEY
+  0, // 6 -> BAD_CA_CERTIFICATE_SPECIFIED
+  1, // 7 -> BAD_CLIENT_CERTIFICATE_RECEIVED
+  7, // 8 -> INVALID_CSR_SIGNATURE
+  4, // 9 -> CSR_ALREADY_SENT
+};
+
+const std::string& ClientCertificateProvisioningResponse_Error_Name(
+    ClientCertificateProvisioningResponse_Error value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ClientCertificateProvisioningResponse_Error_entries,
+          ClientCertificateProvisioningResponse_Error_entries_by_number,
+          10, ClientCertificateProvisioningResponse_Error_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ClientCertificateProvisioningResponse_Error_entries,
+      ClientCertificateProvisioningResponse_Error_entries_by_number,
+      10, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ClientCertificateProvisioningResponse_Error_strings[idx].get();
+}
+bool ClientCertificateProvisioningResponse_Error_Parse(
+    const std::string& name, ClientCertificateProvisioningResponse_Error* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ClientCertificateProvisioningResponse_Error_entries, 10, name, &int_value);
+  if (success) {
+    *value = static_cast<ClientCertificateProvisioningResponse_Error>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::UNDEFINED;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::TIMED_OUT;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::IDENTITY_VERIFICATION_ERROR;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::CA_ERROR;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::INCONSISTENT_DATA;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::BAD_PUBLIC_KEY;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::BAD_CA_CERTIFICATE_SPECIFIED;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::BAD_CLIENT_CERTIFICATE_RECEIVED;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::INVALID_CSR_SIGNATURE;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::CSR_ALREADY_SENT;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::Error_MIN;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::Error_MAX;
+constexpr int ClientCertificateProvisioningResponse::Error_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool BrowserPublicKeyUploadRequest_KeyTrustLevel_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> BrowserPublicKeyUploadRequest_KeyTrustLevel_strings[3] = {};
+
+static const char BrowserPublicKeyUploadRequest_KeyTrustLevel_names[] =
+  "CHROME_BROWSER_OS_KEY"
+  "CHROME_BROWSER_TPM_KEY"
+  "KEY_TRUST_LEVEL_UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry BrowserPublicKeyUploadRequest_KeyTrustLevel_entries[] = {
+  { {BrowserPublicKeyUploadRequest_KeyTrustLevel_names + 0, 21}, 2 },
+  { {BrowserPublicKeyUploadRequest_KeyTrustLevel_names + 21, 22}, 1 },
+  { {BrowserPublicKeyUploadRequest_KeyTrustLevel_names + 43, 27}, 0 },
+};
+
+static const int BrowserPublicKeyUploadRequest_KeyTrustLevel_entries_by_number[] = {
+  2, // 0 -> KEY_TRUST_LEVEL_UNSPECIFIED
+  1, // 1 -> CHROME_BROWSER_TPM_KEY
+  0, // 2 -> CHROME_BROWSER_OS_KEY
+};
+
+const std::string& BrowserPublicKeyUploadRequest_KeyTrustLevel_Name(
+    BrowserPublicKeyUploadRequest_KeyTrustLevel value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          BrowserPublicKeyUploadRequest_KeyTrustLevel_entries,
+          BrowserPublicKeyUploadRequest_KeyTrustLevel_entries_by_number,
+          3, BrowserPublicKeyUploadRequest_KeyTrustLevel_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      BrowserPublicKeyUploadRequest_KeyTrustLevel_entries,
+      BrowserPublicKeyUploadRequest_KeyTrustLevel_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     BrowserPublicKeyUploadRequest_KeyTrustLevel_strings[idx].get();
+}
+bool BrowserPublicKeyUploadRequest_KeyTrustLevel_Parse(
+    const std::string& name, BrowserPublicKeyUploadRequest_KeyTrustLevel* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      BrowserPublicKeyUploadRequest_KeyTrustLevel_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<BrowserPublicKeyUploadRequest_KeyTrustLevel>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest::KEY_TRUST_LEVEL_UNSPECIFIED;
+constexpr BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest::CHROME_BROWSER_TPM_KEY;
+constexpr BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest::CHROME_BROWSER_OS_KEY;
+constexpr BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest::KeyTrustLevel_MIN;
+constexpr BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest::KeyTrustLevel_MAX;
+constexpr int BrowserPublicKeyUploadRequest::KeyTrustLevel_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool BrowserPublicKeyUploadRequest_KeyType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> BrowserPublicKeyUploadRequest_KeyType_strings[3] = {};
+
+static const char BrowserPublicKeyUploadRequest_KeyType_names[] =
+  "EC_KEY"
+  "KEY_TYPE_UNSPECIFIED"
+  "RSA_KEY";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry BrowserPublicKeyUploadRequest_KeyType_entries[] = {
+  { {BrowserPublicKeyUploadRequest_KeyType_names + 0, 6}, 2 },
+  { {BrowserPublicKeyUploadRequest_KeyType_names + 6, 20}, 0 },
+  { {BrowserPublicKeyUploadRequest_KeyType_names + 26, 7}, 1 },
+};
+
+static const int BrowserPublicKeyUploadRequest_KeyType_entries_by_number[] = {
+  1, // 0 -> KEY_TYPE_UNSPECIFIED
+  2, // 1 -> RSA_KEY
+  0, // 2 -> EC_KEY
+};
+
+const std::string& BrowserPublicKeyUploadRequest_KeyType_Name(
+    BrowserPublicKeyUploadRequest_KeyType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          BrowserPublicKeyUploadRequest_KeyType_entries,
+          BrowserPublicKeyUploadRequest_KeyType_entries_by_number,
+          3, BrowserPublicKeyUploadRequest_KeyType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      BrowserPublicKeyUploadRequest_KeyType_entries,
+      BrowserPublicKeyUploadRequest_KeyType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     BrowserPublicKeyUploadRequest_KeyType_strings[idx].get();
+}
+bool BrowserPublicKeyUploadRequest_KeyType_Parse(
+    const std::string& name, BrowserPublicKeyUploadRequest_KeyType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      BrowserPublicKeyUploadRequest_KeyType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<BrowserPublicKeyUploadRequest_KeyType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest::KEY_TYPE_UNSPECIFIED;
+constexpr BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest::RSA_KEY;
+constexpr BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest::EC_KEY;
+constexpr BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest::KeyType_MIN;
+constexpr BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest::KeyType_MAX;
+constexpr int BrowserPublicKeyUploadRequest::KeyType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool BrowserPublicKeyUploadResponse_ResponseCode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> BrowserPublicKeyUploadResponse_ResponseCode_strings[3] = {};
+
+static const char BrowserPublicKeyUploadResponse_ResponseCode_names[] =
+  "INVALID_SIGNATURE"
+  "SUCCESS"
+  "UNDEFINED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry BrowserPublicKeyUploadResponse_ResponseCode_entries[] = {
+  { {BrowserPublicKeyUploadResponse_ResponseCode_names + 0, 17}, 2 },
+  { {BrowserPublicKeyUploadResponse_ResponseCode_names + 17, 7}, 1 },
+  { {BrowserPublicKeyUploadResponse_ResponseCode_names + 24, 9}, 0 },
+};
+
+static const int BrowserPublicKeyUploadResponse_ResponseCode_entries_by_number[] = {
+  2, // 0 -> UNDEFINED
+  1, // 1 -> SUCCESS
+  0, // 2 -> INVALID_SIGNATURE
+};
+
+const std::string& BrowserPublicKeyUploadResponse_ResponseCode_Name(
+    BrowserPublicKeyUploadResponse_ResponseCode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          BrowserPublicKeyUploadResponse_ResponseCode_entries,
+          BrowserPublicKeyUploadResponse_ResponseCode_entries_by_number,
+          3, BrowserPublicKeyUploadResponse_ResponseCode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      BrowserPublicKeyUploadResponse_ResponseCode_entries,
+      BrowserPublicKeyUploadResponse_ResponseCode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     BrowserPublicKeyUploadResponse_ResponseCode_strings[idx].get();
+}
+bool BrowserPublicKeyUploadResponse_ResponseCode_Parse(
+    const std::string& name, BrowserPublicKeyUploadResponse_ResponseCode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      BrowserPublicKeyUploadResponse_ResponseCode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<BrowserPublicKeyUploadResponse_ResponseCode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse::UNDEFINED;
+constexpr BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse::SUCCESS;
+constexpr BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse::INVALID_SIGNATURE;
+constexpr BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse::ResponseCode_MIN;
+constexpr BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse::ResponseCode_MAX;
+constexpr int BrowserPublicKeyUploadResponse::ResponseCode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool Channel_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> Channel_strings[5] = {};
+
+static const char Channel_names[] =
+  "CHANNEL_BETA"
+  "CHANNEL_CANARY"
+  "CHANNEL_DEV"
+  "CHANNEL_STABLE"
+  "CHANNEL_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry Channel_entries[] = {
+  { {Channel_names + 0, 12}, 3 },
+  { {Channel_names + 12, 14}, 1 },
+  { {Channel_names + 26, 11}, 2 },
+  { {Channel_names + 37, 14}, 4 },
+  { {Channel_names + 51, 15}, 0 },
+};
+
+static const int Channel_entries_by_number[] = {
+  4, // 0 -> CHANNEL_UNKNOWN
+  1, // 1 -> CHANNEL_CANARY
+  2, // 2 -> CHANNEL_DEV
+  0, // 3 -> CHANNEL_BETA
+  3, // 4 -> CHANNEL_STABLE
+};
+
+const std::string& Channel_Name(
+    Channel value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          Channel_entries,
+          Channel_entries_by_number,
+          5, Channel_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      Channel_entries,
+      Channel_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     Channel_strings[idx].get();
+}
+bool Channel_Parse(
+    const std::string& name, Channel* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      Channel_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<Channel>(int_value);
+  }
+  return success;
+}
+bool BusDeviceClass_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> BusDeviceClass_strings[6] = {};
+
+static const char BusDeviceClass_names[] =
+  "BLUETOOTH_ADAPTER"
+  "DEVICE_CLASS_UNSPECIFIED"
+  "DISPLAY_CONTROLLER"
+  "ETHERNET_CONTROLLER"
+  "THUNDERBOLT_CONTROLLER"
+  "WIRELESS_CONTROLLER";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry BusDeviceClass_entries[] = {
+  { {BusDeviceClass_names + 0, 17}, 4 },
+  { {BusDeviceClass_names + 17, 24}, 0 },
+  { {BusDeviceClass_names + 41, 18}, 1 },
+  { {BusDeviceClass_names + 59, 19}, 2 },
+  { {BusDeviceClass_names + 78, 22}, 5 },
+  { {BusDeviceClass_names + 100, 19}, 3 },
+};
+
+static const int BusDeviceClass_entries_by_number[] = {
+  1, // 0 -> DEVICE_CLASS_UNSPECIFIED
+  2, // 1 -> DISPLAY_CONTROLLER
+  3, // 2 -> ETHERNET_CONTROLLER
+  5, // 3 -> WIRELESS_CONTROLLER
+  0, // 4 -> BLUETOOTH_ADAPTER
+  4, // 5 -> THUNDERBOLT_CONTROLLER
+};
+
+const std::string& BusDeviceClass_Name(
+    BusDeviceClass value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          BusDeviceClass_entries,
+          BusDeviceClass_entries_by_number,
+          6, BusDeviceClass_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      BusDeviceClass_entries,
+      BusDeviceClass_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     BusDeviceClass_strings[idx].get();
+}
+bool BusDeviceClass_Parse(
+    const std::string& name, BusDeviceClass* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      BusDeviceClass_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<BusDeviceClass>(int_value);
+  }
+  return success;
+}
+bool BusType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> BusType_strings[4] = {};
+
+static const char BusType_names[] =
+  "BUS_TYPE_UNSPECIFIED"
+  "PCI_BUS"
+  "THUNDERBOLT_BUS"
+  "USB_BUS";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry BusType_entries[] = {
+  { {BusType_names + 0, 20}, 0 },
+  { {BusType_names + 20, 7}, 1 },
+  { {BusType_names + 27, 15}, 3 },
+  { {BusType_names + 42, 7}, 2 },
+};
+
+static const int BusType_entries_by_number[] = {
+  0, // 0 -> BUS_TYPE_UNSPECIFIED
+  1, // 1 -> PCI_BUS
+  3, // 2 -> USB_BUS
+  2, // 3 -> THUNDERBOLT_BUS
+};
+
+const std::string& BusType_Name(
+    BusType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          BusType_entries,
+          BusType_entries_by_number,
+          4, BusType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      BusType_entries,
+      BusType_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     BusType_strings[idx].get();
+}
+bool BusType_Parse(
+    const std::string& name, BusType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      BusType_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<BusType>(int_value);
+  }
+  return success;
+}
+bool PartialReportType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PartialReportType_strings[2] = {};
+
+static const char PartialReportType_names[] =
+  "EXTENSION_REQUEST"
+  "UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PartialReportType_entries[] = {
+  { {PartialReportType_names + 0, 17}, 1 },
+  { {PartialReportType_names + 17, 11}, 0 },
+};
+
+static const int PartialReportType_entries_by_number[] = {
+  1, // 0 -> UNSPECIFIED
+  0, // 1 -> EXTENSION_REQUEST
+};
+
+const std::string& PartialReportType_Name(
+    PartialReportType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PartialReportType_entries,
+          PartialReportType_entries_by_number,
+          2, PartialReportType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PartialReportType_entries,
+      PartialReportType_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PartialReportType_strings[idx].get();
+}
+bool PartialReportType_Parse(
+    const std::string& name, PartialReportType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PartialReportType_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<PartialReportType>(int_value);
+  }
+  return success;
+}
+bool CrostiniAppType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> CrostiniAppType_strings[3] = {};
+
+static const char CrostiniAppType_names[] =
+  "CROSTINI_APP_TYPE_INTERACTIVE"
+  "CROSTINI_APP_TYPE_OTHER"
+  "CROSTINI_APP_TYPE_TERMINAL";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry CrostiniAppType_entries[] = {
+  { {CrostiniAppType_names + 0, 29}, 1 },
+  { {CrostiniAppType_names + 29, 23}, 2 },
+  { {CrostiniAppType_names + 52, 26}, 0 },
+};
+
+static const int CrostiniAppType_entries_by_number[] = {
+  2, // 0 -> CROSTINI_APP_TYPE_TERMINAL
+  0, // 1 -> CROSTINI_APP_TYPE_INTERACTIVE
+  1, // 2 -> CROSTINI_APP_TYPE_OTHER
+};
+
+const std::string& CrostiniAppType_Name(
+    CrostiniAppType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          CrostiniAppType_entries,
+          CrostiniAppType_entries_by_number,
+          3, CrostiniAppType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      CrostiniAppType_entries,
+      CrostiniAppType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     CrostiniAppType_strings[idx].get();
+}
+bool CrostiniAppType_Parse(
+    const std::string& name, CrostiniAppType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      CrostiniAppType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<CrostiniAppType>(int_value);
+  }
+  return success;
+}
+bool HashingAlgorithm_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> HashingAlgorithm_strings[4] = {};
+
+static const char HashingAlgorithm_names[] =
+  "HASHING_ALGORITHM_UNSPECIFIED"
+  "NO_HASH"
+  "SHA1"
+  "SHA256";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry HashingAlgorithm_entries[] = {
+  { {HashingAlgorithm_names + 0, 29}, 0 },
+  { {HashingAlgorithm_names + 29, 7}, 3 },
+  { {HashingAlgorithm_names + 36, 4}, 1 },
+  { {HashingAlgorithm_names + 40, 6}, 2 },
+};
+
+static const int HashingAlgorithm_entries_by_number[] = {
+  0, // 0 -> HASHING_ALGORITHM_UNSPECIFIED
+  2, // 1 -> SHA1
+  3, // 2 -> SHA256
+  1, // 3 -> NO_HASH
+};
+
+const std::string& HashingAlgorithm_Name(
+    HashingAlgorithm value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          HashingAlgorithm_entries,
+          HashingAlgorithm_entries_by_number,
+          4, HashingAlgorithm_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      HashingAlgorithm_entries,
+      HashingAlgorithm_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     HashingAlgorithm_strings[idx].get();
+}
+bool HashingAlgorithm_Parse(
+    const std::string& name, HashingAlgorithm* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      HashingAlgorithm_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<HashingAlgorithm>(int_value);
+  }
+  return success;
+}
+bool SigningAlgorithm_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SigningAlgorithm_strings[2] = {};
+
+static const char SigningAlgorithm_names[] =
+  "RSA_PKCS1_V1_5"
+  "SIGNING_ALGORITHM_UNSPECIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SigningAlgorithm_entries[] = {
+  { {SigningAlgorithm_names + 0, 14}, 1 },
+  { {SigningAlgorithm_names + 14, 29}, 0 },
+};
+
+static const int SigningAlgorithm_entries_by_number[] = {
+  1, // 0 -> SIGNING_ALGORITHM_UNSPECIFIED
+  0, // 1 -> RSA_PKCS1_V1_5
+};
+
+const std::string& SigningAlgorithm_Name(
+    SigningAlgorithm value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SigningAlgorithm_entries,
+          SigningAlgorithm_entries_by_number,
+          2, SigningAlgorithm_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SigningAlgorithm_entries,
+      SigningAlgorithm_entries_by_number,
+      2, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SigningAlgorithm_strings[idx].get();
+}
+bool SigningAlgorithm_Parse(
+    const std::string& name, SigningAlgorithm* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SigningAlgorithm_entries, 2, name, &int_value);
+  if (success) {
+    *value = static_cast<SigningAlgorithm>(int_value);
+  }
+  return success;
+}
+bool DeviceManagementErrorDetail_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> DeviceManagementErrorDetail_strings[3] = {};
+
+static const char DeviceManagementErrorDetail_names[] =
+  "CBCM_DELETION_POLICY_PREFERENCE_DELETE_TOKEN"
+  "CBCM_DELETION_POLICY_PREFERENCE_INVALIDATE_TOKEN"
+  "NO_ERROR_DETAIL";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry DeviceManagementErrorDetail_entries[] = {
+  { {DeviceManagementErrorDetail_names + 0, 44}, 1 },
+  { {DeviceManagementErrorDetail_names + 44, 48}, 2 },
+  { {DeviceManagementErrorDetail_names + 92, 15}, 0 },
+};
+
+static const int DeviceManagementErrorDetail_entries_by_number[] = {
+  2, // 0 -> NO_ERROR_DETAIL
+  0, // 1 -> CBCM_DELETION_POLICY_PREFERENCE_DELETE_TOKEN
+  1, // 2 -> CBCM_DELETION_POLICY_PREFERENCE_INVALIDATE_TOKEN
+};
+
+const std::string& DeviceManagementErrorDetail_Name(
+    DeviceManagementErrorDetail value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          DeviceManagementErrorDetail_entries,
+          DeviceManagementErrorDetail_entries_by_number,
+          3, DeviceManagementErrorDetail_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      DeviceManagementErrorDetail_entries,
+      DeviceManagementErrorDetail_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     DeviceManagementErrorDetail_strings[idx].get();
+}
+bool DeviceManagementErrorDetail_Parse(
+    const std::string& name, DeviceManagementErrorDetail* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      DeviceManagementErrorDetail_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<DeviceManagementErrorDetail>(int_value);
+  }
+  return success;
+}
+
+// ===================================================================
+
+void LicenseType::InitAsDefaultInstance() {
+}
+class LicenseType::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LicenseType>()._has_bits_);
+  static void set_has_license_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+LicenseType::LicenseType()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LicenseType)
+}
+LicenseType::LicenseType(const LicenseType& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  license_type_ = from.license_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LicenseType)
+}
+
+void LicenseType::SharedCtor() {
+  license_type_ = 0;
+}
+
+LicenseType::~LicenseType() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LicenseType)
+  SharedDtor();
+}
+
+void LicenseType::SharedDtor() {
+}
+
+void LicenseType::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LicenseType& LicenseType::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LicenseType_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LicenseType::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LicenseType)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  license_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LicenseType::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.LicenseType.LicenseTypeEnum license_type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::LicenseType_LicenseTypeEnum_IsValid(val))) {
+            _internal_set_license_type(static_cast<::enterprise_management::LicenseType_LicenseTypeEnum>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LicenseType::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LicenseType)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.LicenseType.LicenseTypeEnum license_type = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_license_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LicenseType)
+  return target;
+}
+
+size_t LicenseType::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LicenseType)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.LicenseType.LicenseTypeEnum license_type = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_license_type());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LicenseType::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LicenseType*>(
+      &from));
+}
+
+void LicenseType::MergeFrom(const LicenseType& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LicenseType)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_license_type()) {
+    _internal_set_license_type(from._internal_license_type());
+  }
+}
+
+void LicenseType::CopyFrom(const LicenseType& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LicenseType)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LicenseType::IsInitialized() const {
+  return true;
+}
+
+void LicenseType::InternalSwap(LicenseType* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(license_type_, other->license_type_);
+}
+
+std::string LicenseType::GetTypeName() const {
+  return "enterprise_management.LicenseType";
+}
+
+
+// ===================================================================
+
+void SignedData::InitAsDefaultInstance() {
+}
+class SignedData::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SignedData>()._has_bits_);
+  static void set_has_data(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_signature(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_extra_data_bytes(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+SignedData::SignedData()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SignedData)
+}
+SignedData::SignedData(const SignedData& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_data()) {
+    data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.data_);
+  }
+  signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_signature()) {
+    signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.signature_);
+  }
+  extra_data_bytes_ = from.extra_data_bytes_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SignedData)
+}
+
+void SignedData::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SignedData_device_5fmanagement_5fbackend_2eproto.base);
+  data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  extra_data_bytes_ = 0;
+}
+
+SignedData::~SignedData() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SignedData)
+  SharedDtor();
+}
+
+void SignedData::SharedDtor() {
+  data_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  signature_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SignedData::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SignedData& SignedData::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SignedData_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SignedData::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SignedData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      data_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      signature_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  extra_data_bytes_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SignedData::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes data = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_data();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes signature = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_signature();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 extra_data_bytes = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_extra_data_bytes(&has_bits);
+          extra_data_bytes_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SignedData::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SignedData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes data = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_data(), target);
+  }
+
+  // optional bytes signature = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_signature(), target);
+  }
+
+  // optional int32 extra_data_bytes = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_extra_data_bytes(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SignedData)
+  return target;
+}
+
+size_t SignedData::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SignedData)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional bytes data = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_data());
+    }
+
+    // optional bytes signature = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_signature());
+    }
+
+    // optional int32 extra_data_bytes = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_extra_data_bytes());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SignedData::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SignedData*>(
+      &from));
+}
+
+void SignedData::MergeFrom(const SignedData& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SignedData)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.data_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.signature_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      extra_data_bytes_ = from.extra_data_bytes_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SignedData::CopyFrom(const SignedData& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SignedData)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SignedData::IsInitialized() const {
+  return true;
+}
+
+void SignedData::InternalSwap(SignedData* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  data_.Swap(&other->data_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  signature_.Swap(&other->signature_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(extra_data_bytes_, other->extra_data_bytes_);
+}
+
+std::string SignedData::GetTypeName() const {
+  return "enterprise_management.SignedData";
+}
+
+
+// ===================================================================
+
+void CheckUserAccountRequest::InitAsDefaultInstance() {
+}
+class CheckUserAccountRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CheckUserAccountRequest>()._has_bits_);
+  static void set_has_user_email(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+CheckUserAccountRequest::CheckUserAccountRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CheckUserAccountRequest)
+}
+CheckUserAccountRequest::CheckUserAccountRequest(const CheckUserAccountRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  user_email_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_user_email()) {
+    user_email_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_email_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CheckUserAccountRequest)
+}
+
+void CheckUserAccountRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CheckUserAccountRequest_device_5fmanagement_5fbackend_2eproto.base);
+  user_email_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+CheckUserAccountRequest::~CheckUserAccountRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CheckUserAccountRequest)
+  SharedDtor();
+}
+
+void CheckUserAccountRequest::SharedDtor() {
+  user_email_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CheckUserAccountRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CheckUserAccountRequest& CheckUserAccountRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CheckUserAccountRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CheckUserAccountRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CheckUserAccountRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    user_email_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CheckUserAccountRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string user_email = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_user_email();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CheckUserAccountRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CheckUserAccountRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string user_email = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_user_email(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CheckUserAccountRequest)
+  return target;
+}
+
+size_t CheckUserAccountRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CheckUserAccountRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string user_email = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_user_email());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CheckUserAccountRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CheckUserAccountRequest*>(
+      &from));
+}
+
+void CheckUserAccountRequest::MergeFrom(const CheckUserAccountRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CheckUserAccountRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_user_email()) {
+    _has_bits_[0] |= 0x00000001u;
+    user_email_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_email_);
+  }
+}
+
+void CheckUserAccountRequest::CopyFrom(const CheckUserAccountRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CheckUserAccountRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CheckUserAccountRequest::IsInitialized() const {
+  return true;
+}
+
+void CheckUserAccountRequest::InternalSwap(CheckUserAccountRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  user_email_.Swap(&other->user_email_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string CheckUserAccountRequest::GetTypeName() const {
+  return "enterprise_management.CheckUserAccountRequest";
+}
+
+
+// ===================================================================
+
+void DeviceRegisterRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_DeviceRegisterRequest_default_instance_._instance.get_mutable()->license_type_ = const_cast< ::enterprise_management::LicenseType*>(
+      ::enterprise_management::LicenseType::internal_default_instance());
+  ::enterprise_management::_DeviceRegisterRequest_default_instance_._instance.get_mutable()->device_register_identification_ = const_cast< ::enterprise_management::DeviceRegisterIdentification*>(
+      ::enterprise_management::DeviceRegisterIdentification::internal_default_instance());
+}
+class DeviceRegisterRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceRegisterRequest>()._has_bits_);
+  static void set_has_reregister(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static void set_has_machine_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_machine_model(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_requisition(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_server_backed_state_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_flavor(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static const ::enterprise_management::LicenseType& license_type(const DeviceRegisterRequest* msg);
+  static void set_has_license_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_lifetime(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static void set_has_brand_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_reregistration_dm_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_ethernet_mac_address(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_dock_mac_address(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_manufacture_date(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_expected_enrollment_domain(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static const ::enterprise_management::DeviceRegisterIdentification& device_register_identification(const DeviceRegisterRequest* msg);
+  static void set_has_device_register_identification(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_psm_execution_result(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static void set_has_psm_determination_timestamp_ms(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+};
+
+const ::enterprise_management::LicenseType&
+DeviceRegisterRequest::_Internal::license_type(const DeviceRegisterRequest* msg) {
+  return *msg->license_type_;
+}
+const ::enterprise_management::DeviceRegisterIdentification&
+DeviceRegisterRequest::_Internal::device_register_identification(const DeviceRegisterRequest* msg) {
+  return *msg->device_register_identification_;
+}
+DeviceRegisterRequest::DeviceRegisterRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceRegisterRequest)
+}
+DeviceRegisterRequest::DeviceRegisterRequest(const DeviceRegisterRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  machine_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_machine_id()) {
+    machine_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_id_);
+  }
+  machine_model_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_machine_model()) {
+    machine_model_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_model_);
+  }
+  requisition_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_requisition()) {
+    requisition_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.requisition_);
+  }
+  server_backed_state_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_server_backed_state_key()) {
+    server_backed_state_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.server_backed_state_key_);
+  }
+  brand_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_brand_code()) {
+    brand_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_code_);
+  }
+  reregistration_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_reregistration_dm_token()) {
+    reregistration_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.reregistration_dm_token_);
+  }
+  ethernet_mac_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_ethernet_mac_address()) {
+    ethernet_mac_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.ethernet_mac_address_);
+  }
+  dock_mac_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_dock_mac_address()) {
+    dock_mac_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.dock_mac_address_);
+  }
+  manufacture_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_manufacture_date()) {
+    manufacture_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacture_date_);
+  }
+  expected_enrollment_domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_expected_enrollment_domain()) {
+    expected_enrollment_domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.expected_enrollment_domain_);
+  }
+  if (from._internal_has_license_type()) {
+    license_type_ = new ::enterprise_management::LicenseType(*from.license_type_);
+  } else {
+    license_type_ = nullptr;
+  }
+  if (from._internal_has_device_register_identification()) {
+    device_register_identification_ = new ::enterprise_management::DeviceRegisterIdentification(*from.device_register_identification_);
+  } else {
+    device_register_identification_ = nullptr;
+  }
+  ::memcpy(&reregister_, &from.reregister_,
+    static_cast<size_t>(reinterpret_cast<char*>(&lifetime_) -
+    reinterpret_cast<char*>(&reregister_)) + sizeof(lifetime_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceRegisterRequest)
+}
+
+void DeviceRegisterRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto.base);
+  machine_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  machine_model_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  requisition_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  server_backed_state_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  reregistration_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ethernet_mac_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  dock_mac_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacture_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  expected_enrollment_domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&license_type_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&psm_determination_timestamp_ms_) -
+      reinterpret_cast<char*>(&license_type_)) + sizeof(psm_determination_timestamp_ms_));
+  lifetime_ = 1;
+}
+
+DeviceRegisterRequest::~DeviceRegisterRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceRegisterRequest)
+  SharedDtor();
+}
+
+void DeviceRegisterRequest::SharedDtor() {
+  machine_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  machine_model_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  requisition_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  server_backed_state_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_code_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  reregistration_dm_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ethernet_mac_address_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  dock_mac_address_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacture_date_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  expected_enrollment_domain_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete license_type_;
+  if (this != internal_default_instance()) delete device_register_identification_;
+}
+
+void DeviceRegisterRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceRegisterRequest& DeviceRegisterRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceRegisterRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceRegisterRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      machine_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      machine_model_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      requisition_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      server_backed_state_key_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      brand_code_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      reregistration_dm_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      ethernet_mac_address_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      dock_mac_address_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    if (cached_has_bits & 0x00000100u) {
+      manufacture_date_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      expected_enrollment_domain_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(license_type_ != nullptr);
+      license_type_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(device_register_identification_ != nullptr);
+      device_register_identification_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000f000u) {
+    ::memset(&reregister_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&psm_execution_result_) -
+        reinterpret_cast<char*>(&reregister_)) + sizeof(psm_execution_result_));
+  }
+  if (cached_has_bits & 0x00030000u) {
+    psm_determination_timestamp_ms_ = PROTOBUF_LONGLONG(0);
+    lifetime_ = 1;
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceRegisterRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool reregister = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_reregister(&has_bits);
+          reregister_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterRequest.Type type = 2 [default = TT];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceRegisterRequest_Type_IsValid(val))) {
+            _internal_set_type(static_cast<::enterprise_management::DeviceRegisterRequest_Type>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string machine_id = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_machine_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string machine_model = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_machine_model();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string requisition = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_requisition();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes server_backed_state_key = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          auto str = _internal_mutable_server_backed_state_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterRequest.Flavor flavor = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceRegisterRequest_Flavor_IsValid(val))) {
+            _internal_set_flavor(static_cast<::enterprise_management::DeviceRegisterRequest_Flavor>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(8, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.LicenseType license_type = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_license_type(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterRequest.Lifetime lifetime = 11 [default = LIFETIME_INDEFINITE];
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceRegisterRequest_Lifetime_IsValid(val))) {
+            _internal_set_lifetime(static_cast<::enterprise_management::DeviceRegisterRequest_Lifetime>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(11, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string brand_code = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          auto str = _internal_mutable_brand_code();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string reregistration_dm_token = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          auto str = _internal_mutable_reregistration_dm_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string ethernet_mac_address = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          auto str = _internal_mutable_ethernet_mac_address();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string dock_mac_address = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          auto str = _internal_mutable_dock_mac_address();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string manufacture_date = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          auto str = _internal_mutable_manufacture_date();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string expected_enrollment_domain = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          auto str = _internal_mutable_expected_enrollment_domain();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterIdentification device_register_identification = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_register_identification(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterRequest.PsmExecutionResult psm_execution_result = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 152)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceRegisterRequest_PsmExecutionResult_IsValid(val))) {
+            _internal_set_psm_execution_result(static_cast<::enterprise_management::DeviceRegisterRequest_PsmExecutionResult>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(19, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int64 psm_determination_timestamp_ms = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 160)) {
+          _Internal::set_has_psm_determination_timestamp_ms(&has_bits);
+          psm_determination_timestamp_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceRegisterRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceRegisterRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool reregister = 1;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_reregister(), target);
+  }
+
+  // optional .enterprise_management.DeviceRegisterRequest.Type type = 2 [default = TT];
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_type(), target);
+  }
+
+  // optional string machine_id = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_machine_id(), target);
+  }
+
+  // optional string machine_model = 4;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_machine_model(), target);
+  }
+
+  // optional string requisition = 6;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_requisition(), target);
+  }
+
+  // optional bytes server_backed_state_key = 7;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteBytesMaybeAliased(
+        7, this->_internal_server_backed_state_key(), target);
+  }
+
+  // optional .enterprise_management.DeviceRegisterRequest.Flavor flavor = 8;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      8, this->_internal_flavor(), target);
+  }
+
+  // optional .enterprise_management.LicenseType license_type = 9;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        9, _Internal::license_type(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceRegisterRequest.Lifetime lifetime = 11 [default = LIFETIME_INDEFINITE];
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      11, this->_internal_lifetime(), target);
+  }
+
+  // optional string brand_code = 12;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        12, this->_internal_brand_code(), target);
+  }
+
+  // optional string reregistration_dm_token = 13;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteStringMaybeAliased(
+        13, this->_internal_reregistration_dm_token(), target);
+  }
+
+  // optional string ethernet_mac_address = 14;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->WriteStringMaybeAliased(
+        14, this->_internal_ethernet_mac_address(), target);
+  }
+
+  // optional string dock_mac_address = 15;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->WriteStringMaybeAliased(
+        15, this->_internal_dock_mac_address(), target);
+  }
+
+  // optional string manufacture_date = 16;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->WriteStringMaybeAliased(
+        16, this->_internal_manufacture_date(), target);
+  }
+
+  // optional string expected_enrollment_domain = 17;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->WriteStringMaybeAliased(
+        17, this->_internal_expected_enrollment_domain(), target);
+  }
+
+  // optional .enterprise_management.DeviceRegisterIdentification device_register_identification = 18;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        18, _Internal::device_register_identification(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceRegisterRequest.PsmExecutionResult psm_execution_result = 19;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      19, this->_internal_psm_execution_result(), target);
+  }
+
+  // optional int64 psm_determination_timestamp_ms = 20;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(20, this->_internal_psm_determination_timestamp_ms(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceRegisterRequest)
+  return target;
+}
+
+size_t DeviceRegisterRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceRegisterRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string machine_id = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_machine_id());
+    }
+
+    // optional string machine_model = 4;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_machine_model());
+    }
+
+    // optional string requisition = 6;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_requisition());
+    }
+
+    // optional bytes server_backed_state_key = 7;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_server_backed_state_key());
+    }
+
+    // optional string brand_code = 12;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_brand_code());
+    }
+
+    // optional string reregistration_dm_token = 13;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_reregistration_dm_token());
+    }
+
+    // optional string ethernet_mac_address = 14;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_ethernet_mac_address());
+    }
+
+    // optional string dock_mac_address = 15;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_dock_mac_address());
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional string manufacture_date = 16;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_manufacture_date());
+    }
+
+    // optional string expected_enrollment_domain = 17;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_expected_enrollment_domain());
+    }
+
+    // optional .enterprise_management.LicenseType license_type = 9;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *license_type_);
+    }
+
+    // optional .enterprise_management.DeviceRegisterIdentification device_register_identification = 18;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_register_identification_);
+    }
+
+    // optional bool reregister = 1;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .enterprise_management.DeviceRegisterRequest.Type type = 2 [default = TT];
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_type());
+    }
+
+    // optional .enterprise_management.DeviceRegisterRequest.Flavor flavor = 8;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_flavor());
+    }
+
+    // optional .enterprise_management.DeviceRegisterRequest.PsmExecutionResult psm_execution_result = 19;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_psm_execution_result());
+    }
+
+  }
+  if (cached_has_bits & 0x00030000u) {
+    // optional int64 psm_determination_timestamp_ms = 20;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_psm_determination_timestamp_ms());
+    }
+
+    // optional .enterprise_management.DeviceRegisterRequest.Lifetime lifetime = 11 [default = LIFETIME_INDEFINITE];
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_lifetime());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceRegisterRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceRegisterRequest*>(
+      &from));
+}
+
+void DeviceRegisterRequest::MergeFrom(const DeviceRegisterRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceRegisterRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      machine_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      machine_model_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_model_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      requisition_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.requisition_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      server_backed_state_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.server_backed_state_key_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      brand_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_code_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      reregistration_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.reregistration_dm_token_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _has_bits_[0] |= 0x00000040u;
+      ethernet_mac_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.ethernet_mac_address_);
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _has_bits_[0] |= 0x00000080u;
+      dock_mac_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.dock_mac_address_);
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _has_bits_[0] |= 0x00000100u;
+      manufacture_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacture_date_);
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _has_bits_[0] |= 0x00000200u;
+      expected_enrollment_domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.expected_enrollment_domain_);
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_license_type()->::enterprise_management::LicenseType::MergeFrom(from._internal_license_type());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_device_register_identification()->::enterprise_management::DeviceRegisterIdentification::MergeFrom(from._internal_device_register_identification());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      reregister_ = from.reregister_;
+    }
+    if (cached_has_bits & 0x00002000u) {
+      type_ = from.type_;
+    }
+    if (cached_has_bits & 0x00004000u) {
+      flavor_ = from.flavor_;
+    }
+    if (cached_has_bits & 0x00008000u) {
+      psm_execution_result_ = from.psm_execution_result_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00030000u) {
+    if (cached_has_bits & 0x00010000u) {
+      psm_determination_timestamp_ms_ = from.psm_determination_timestamp_ms_;
+    }
+    if (cached_has_bits & 0x00020000u) {
+      lifetime_ = from.lifetime_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceRegisterRequest::CopyFrom(const DeviceRegisterRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceRegisterRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceRegisterRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceRegisterRequest::InternalSwap(DeviceRegisterRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  machine_id_.Swap(&other->machine_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  machine_model_.Swap(&other->machine_model_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  requisition_.Swap(&other->requisition_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  server_backed_state_key_.Swap(&other->server_backed_state_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  brand_code_.Swap(&other->brand_code_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  reregistration_dm_token_.Swap(&other->reregistration_dm_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  ethernet_mac_address_.Swap(&other->ethernet_mac_address_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  dock_mac_address_.Swap(&other->dock_mac_address_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  manufacture_date_.Swap(&other->manufacture_date_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  expected_enrollment_domain_.Swap(&other->expected_enrollment_domain_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(license_type_, other->license_type_);
+  swap(device_register_identification_, other->device_register_identification_);
+  swap(reregister_, other->reregister_);
+  swap(type_, other->type_);
+  swap(flavor_, other->flavor_);
+  swap(psm_execution_result_, other->psm_execution_result_);
+  swap(psm_determination_timestamp_ms_, other->psm_determination_timestamp_ms_);
+  swap(lifetime_, other->lifetime_);
+}
+
+std::string DeviceRegisterRequest::GetTypeName() const {
+  return "enterprise_management.DeviceRegisterRequest";
+}
+
+
+// ===================================================================
+
+void DeviceRegisterIdentification::InitAsDefaultInstance() {
+}
+class DeviceRegisterIdentification::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceRegisterIdentification>()._has_bits_);
+  static void set_has_attested_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceRegisterIdentification::DeviceRegisterIdentification()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceRegisterIdentification)
+}
+DeviceRegisterIdentification::DeviceRegisterIdentification(const DeviceRegisterIdentification& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  attested_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_attested_device_id()) {
+    attested_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.attested_device_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceRegisterIdentification)
+}
+
+void DeviceRegisterIdentification::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceRegisterIdentification_device_5fmanagement_5fbackend_2eproto.base);
+  attested_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceRegisterIdentification::~DeviceRegisterIdentification() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceRegisterIdentification)
+  SharedDtor();
+}
+
+void DeviceRegisterIdentification::SharedDtor() {
+  attested_device_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceRegisterIdentification::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceRegisterIdentification& DeviceRegisterIdentification::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceRegisterIdentification_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceRegisterIdentification::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceRegisterIdentification)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    attested_device_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceRegisterIdentification::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string attested_device_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_attested_device_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceRegisterIdentification::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceRegisterIdentification)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string attested_device_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_attested_device_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceRegisterIdentification)
+  return target;
+}
+
+size_t DeviceRegisterIdentification::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceRegisterIdentification)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string attested_device_id = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_attested_device_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceRegisterIdentification::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceRegisterIdentification*>(
+      &from));
+}
+
+void DeviceRegisterIdentification::MergeFrom(const DeviceRegisterIdentification& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceRegisterIdentification)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_attested_device_id()) {
+    _has_bits_[0] |= 0x00000001u;
+    attested_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.attested_device_id_);
+  }
+}
+
+void DeviceRegisterIdentification::CopyFrom(const DeviceRegisterIdentification& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceRegisterIdentification)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceRegisterIdentification::IsInitialized() const {
+  return true;
+}
+
+void DeviceRegisterIdentification::InternalSwap(DeviceRegisterIdentification* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  attested_device_id_.Swap(&other->attested_device_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceRegisterIdentification::GetTypeName() const {
+  return "enterprise_management.DeviceRegisterIdentification";
+}
+
+
+// ===================================================================
+
+void CheckUserAccountResponse::InitAsDefaultInstance() {
+}
+class CheckUserAccountResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CheckUserAccountResponse>()._has_bits_);
+  static void set_has_domain_verified(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_user_account_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+CheckUserAccountResponse::CheckUserAccountResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CheckUserAccountResponse)
+}
+CheckUserAccountResponse::CheckUserAccountResponse(const CheckUserAccountResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&domain_verified_, &from.domain_verified_,
+    static_cast<size_t>(reinterpret_cast<char*>(&user_account_type_) -
+    reinterpret_cast<char*>(&domain_verified_)) + sizeof(user_account_type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CheckUserAccountResponse)
+}
+
+void CheckUserAccountResponse::SharedCtor() {
+  ::memset(&domain_verified_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&user_account_type_) -
+      reinterpret_cast<char*>(&domain_verified_)) + sizeof(user_account_type_));
+}
+
+CheckUserAccountResponse::~CheckUserAccountResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CheckUserAccountResponse)
+  SharedDtor();
+}
+
+void CheckUserAccountResponse::SharedDtor() {
+}
+
+void CheckUserAccountResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CheckUserAccountResponse& CheckUserAccountResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CheckUserAccountResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CheckUserAccountResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CheckUserAccountResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&domain_verified_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&user_account_type_) -
+        reinterpret_cast<char*>(&domain_verified_)) + sizeof(user_account_type_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CheckUserAccountResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool domain_verified = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_domain_verified(&has_bits);
+          domain_verified_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckUserAccountResponse.UserAccountType user_account_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::CheckUserAccountResponse_UserAccountType_IsValid(val))) {
+            _internal_set_user_account_type(static_cast<::enterprise_management::CheckUserAccountResponse_UserAccountType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CheckUserAccountResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CheckUserAccountResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool domain_verified = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_domain_verified(), target);
+  }
+
+  // optional .enterprise_management.CheckUserAccountResponse.UserAccountType user_account_type = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_user_account_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CheckUserAccountResponse)
+  return target;
+}
+
+size_t CheckUserAccountResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CheckUserAccountResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional bool domain_verified = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .enterprise_management.CheckUserAccountResponse.UserAccountType user_account_type = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_user_account_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CheckUserAccountResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CheckUserAccountResponse*>(
+      &from));
+}
+
+void CheckUserAccountResponse::MergeFrom(const CheckUserAccountResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CheckUserAccountResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      domain_verified_ = from.domain_verified_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      user_account_type_ = from.user_account_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CheckUserAccountResponse::CopyFrom(const CheckUserAccountResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CheckUserAccountResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CheckUserAccountResponse::IsInitialized() const {
+  return true;
+}
+
+void CheckUserAccountResponse::InternalSwap(CheckUserAccountResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(domain_verified_, other->domain_verified_);
+  swap(user_account_type_, other->user_account_type_);
+}
+
+std::string CheckUserAccountResponse::GetTypeName() const {
+  return "enterprise_management.CheckUserAccountResponse";
+}
+
+
+// ===================================================================
+
+void DeviceRegisterResponse::InitAsDefaultInstance() {
+}
+class DeviceRegisterResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceRegisterResponse>()._has_bits_);
+  static void set_has_device_management_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_machine_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_enrollment_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_configuration_seed(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_directory_api_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+DeviceRegisterResponse::DeviceRegisterResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceRegisterResponse)
+}
+DeviceRegisterResponse::DeviceRegisterResponse(const DeviceRegisterResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      user_affiliation_ids_(from.user_affiliation_ids_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_management_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_management_token()) {
+    device_management_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_management_token_);
+  }
+  machine_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_machine_name()) {
+    machine_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_name_);
+  }
+  configuration_seed_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_configuration_seed()) {
+    configuration_seed_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.configuration_seed_);
+  }
+  directory_api_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_directory_api_id()) {
+    directory_api_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.directory_api_id_);
+  }
+  enrollment_type_ = from.enrollment_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceRegisterResponse)
+}
+
+void DeviceRegisterResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceRegisterResponse_device_5fmanagement_5fbackend_2eproto.base);
+  device_management_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  machine_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  configuration_seed_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  directory_api_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  enrollment_type_ = 0;
+}
+
+DeviceRegisterResponse::~DeviceRegisterResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceRegisterResponse)
+  SharedDtor();
+}
+
+void DeviceRegisterResponse::SharedDtor() {
+  device_management_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  machine_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  configuration_seed_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  directory_api_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceRegisterResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceRegisterResponse& DeviceRegisterResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceRegisterResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceRegisterResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceRegisterResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  user_affiliation_ids_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      device_management_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      machine_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      configuration_seed_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      directory_api_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  enrollment_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceRegisterResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // required string device_management_token = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_management_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string machine_name = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_machine_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterResponse.DeviceMode enrollment_type = 3 [default = ENTERPRISE];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceRegisterResponse_DeviceMode_IsValid(val))) {
+            _internal_set_enrollment_type(static_cast<::enterprise_management::DeviceRegisterResponse_DeviceMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string configuration_seed = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_configuration_seed();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated string user_affiliation_ids = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_user_affiliation_ids();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional string directory_api_id = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_directory_api_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceRegisterResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceRegisterResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // required string device_management_token = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_management_token(), target);
+  }
+
+  // optional string machine_name = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_machine_name(), target);
+  }
+
+  // optional .enterprise_management.DeviceRegisterResponse.DeviceMode enrollment_type = 3 [default = ENTERPRISE];
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_enrollment_type(), target);
+  }
+
+  // optional string configuration_seed = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_configuration_seed(), target);
+  }
+
+  // repeated string user_affiliation_ids = 5;
+  for (int i = 0, n = this->_internal_user_affiliation_ids_size(); i < n; i++) {
+    const auto& s = this->_internal_user_affiliation_ids(i);
+    target = stream->WriteString(5, s, target);
+  }
+
+  // optional string directory_api_id = 6;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_directory_api_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceRegisterResponse)
+  return target;
+}
+
+size_t DeviceRegisterResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceRegisterResponse)
+  size_t total_size = 0;
+
+  // required string device_management_token = 1;
+  if (_internal_has_device_management_token()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_management_token());
+  }
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string user_affiliation_ids = 5;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(user_affiliation_ids_.size());
+  for (int i = 0, n = user_affiliation_ids_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      user_affiliation_ids_.Get(i));
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001eu) {
+    // optional string machine_name = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_machine_name());
+    }
+
+    // optional string configuration_seed = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_configuration_seed());
+    }
+
+    // optional string directory_api_id = 6;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_directory_api_id());
+    }
+
+    // optional .enterprise_management.DeviceRegisterResponse.DeviceMode enrollment_type = 3 [default = ENTERPRISE];
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_enrollment_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceRegisterResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceRegisterResponse*>(
+      &from));
+}
+
+void DeviceRegisterResponse::MergeFrom(const DeviceRegisterResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceRegisterResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  user_affiliation_ids_.MergeFrom(from.user_affiliation_ids_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      device_management_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_management_token_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      machine_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      configuration_seed_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.configuration_seed_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      directory_api_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.directory_api_id_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      enrollment_type_ = from.enrollment_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceRegisterResponse::CopyFrom(const DeviceRegisterResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceRegisterResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceRegisterResponse::IsInitialized() const {
+  if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false;
+  return true;
+}
+
+void DeviceRegisterResponse::InternalSwap(DeviceRegisterResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  user_affiliation_ids_.InternalSwap(&other->user_affiliation_ids_);
+  device_management_token_.Swap(&other->device_management_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  machine_name_.Swap(&other->machine_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  configuration_seed_.Swap(&other->configuration_seed_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  directory_api_id_.Swap(&other->directory_api_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(enrollment_type_, other->enrollment_type_);
+}
+
+std::string DeviceRegisterResponse::GetTypeName() const {
+  return "enterprise_management.DeviceRegisterResponse";
+}
+
+
+// ===================================================================
+
+void DeviceUnregisterRequest::InitAsDefaultInstance() {
+}
+class DeviceUnregisterRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceUnregisterRequest>()._has_bits_);
+};
+
+DeviceUnregisterRequest::DeviceUnregisterRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceUnregisterRequest)
+}
+DeviceUnregisterRequest::DeviceUnregisterRequest(const DeviceUnregisterRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceUnregisterRequest)
+}
+
+void DeviceUnregisterRequest::SharedCtor() {
+}
+
+DeviceUnregisterRequest::~DeviceUnregisterRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceUnregisterRequest)
+  SharedDtor();
+}
+
+void DeviceUnregisterRequest::SharedDtor() {
+}
+
+void DeviceUnregisterRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceUnregisterRequest& DeviceUnregisterRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceUnregisterRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceUnregisterRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceUnregisterRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceUnregisterRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceUnregisterRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceUnregisterRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceUnregisterRequest)
+  return target;
+}
+
+size_t DeviceUnregisterRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceUnregisterRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceUnregisterRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceUnregisterRequest*>(
+      &from));
+}
+
+void DeviceUnregisterRequest::MergeFrom(const DeviceUnregisterRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceUnregisterRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void DeviceUnregisterRequest::CopyFrom(const DeviceUnregisterRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceUnregisterRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceUnregisterRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceUnregisterRequest::InternalSwap(DeviceUnregisterRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string DeviceUnregisterRequest::GetTypeName() const {
+  return "enterprise_management.DeviceUnregisterRequest";
+}
+
+
+// ===================================================================
+
+void DeviceUnregisterResponse::InitAsDefaultInstance() {
+}
+class DeviceUnregisterResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceUnregisterResponse>()._has_bits_);
+};
+
+DeviceUnregisterResponse::DeviceUnregisterResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceUnregisterResponse)
+}
+DeviceUnregisterResponse::DeviceUnregisterResponse(const DeviceUnregisterResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceUnregisterResponse)
+}
+
+void DeviceUnregisterResponse::SharedCtor() {
+}
+
+DeviceUnregisterResponse::~DeviceUnregisterResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceUnregisterResponse)
+  SharedDtor();
+}
+
+void DeviceUnregisterResponse::SharedDtor() {
+}
+
+void DeviceUnregisterResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceUnregisterResponse& DeviceUnregisterResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceUnregisterResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceUnregisterResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceUnregisterResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceUnregisterResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceUnregisterResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceUnregisterResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceUnregisterResponse)
+  return target;
+}
+
+size_t DeviceUnregisterResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceUnregisterResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceUnregisterResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceUnregisterResponse*>(
+      &from));
+}
+
+void DeviceUnregisterResponse::MergeFrom(const DeviceUnregisterResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceUnregisterResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void DeviceUnregisterResponse::CopyFrom(const DeviceUnregisterResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceUnregisterResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceUnregisterResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceUnregisterResponse::InternalSwap(DeviceUnregisterResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string DeviceUnregisterResponse::GetTypeName() const {
+  return "enterprise_management.DeviceUnregisterResponse";
+}
+
+
+// ===================================================================
+
+void DeviceCertUploadRequest::InitAsDefaultInstance() {
+}
+class DeviceCertUploadRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceCertUploadRequest>()._has_bits_);
+  static void set_has_device_certificate(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_certificate_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_enrollment_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+DeviceCertUploadRequest::DeviceCertUploadRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceCertUploadRequest)
+}
+DeviceCertUploadRequest::DeviceCertUploadRequest(const DeviceCertUploadRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_certificate_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_certificate()) {
+    device_certificate_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_certificate_);
+  }
+  enrollment_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_enrollment_id()) {
+    enrollment_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.enrollment_id_);
+  }
+  certificate_type_ = from.certificate_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceCertUploadRequest)
+}
+
+void DeviceCertUploadRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceCertUploadRequest_device_5fmanagement_5fbackend_2eproto.base);
+  device_certificate_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  enrollment_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  certificate_type_ = 0;
+}
+
+DeviceCertUploadRequest::~DeviceCertUploadRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceCertUploadRequest)
+  SharedDtor();
+}
+
+void DeviceCertUploadRequest::SharedDtor() {
+  device_certificate_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  enrollment_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceCertUploadRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceCertUploadRequest& DeviceCertUploadRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceCertUploadRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceCertUploadRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceCertUploadRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      device_certificate_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      enrollment_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  certificate_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceCertUploadRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes device_certificate = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_certificate();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceCertUploadRequest.CertificateType certificate_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceCertUploadRequest_CertificateType_IsValid(val))) {
+            _internal_set_certificate_type(static_cast<::enterprise_management::DeviceCertUploadRequest_CertificateType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bytes enrollment_id = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_enrollment_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceCertUploadRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceCertUploadRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes device_certificate = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_device_certificate(), target);
+  }
+
+  // optional .enterprise_management.DeviceCertUploadRequest.CertificateType certificate_type = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_certificate_type(), target);
+  }
+
+  // optional bytes enrollment_id = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        3, this->_internal_enrollment_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceCertUploadRequest)
+  return target;
+}
+
+size_t DeviceCertUploadRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceCertUploadRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional bytes device_certificate = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_device_certificate());
+    }
+
+    // optional bytes enrollment_id = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_enrollment_id());
+    }
+
+    // optional .enterprise_management.DeviceCertUploadRequest.CertificateType certificate_type = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_certificate_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceCertUploadRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceCertUploadRequest*>(
+      &from));
+}
+
+void DeviceCertUploadRequest::MergeFrom(const DeviceCertUploadRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceCertUploadRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      device_certificate_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_certificate_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      enrollment_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.enrollment_id_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      certificate_type_ = from.certificate_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceCertUploadRequest::CopyFrom(const DeviceCertUploadRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceCertUploadRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceCertUploadRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceCertUploadRequest::InternalSwap(DeviceCertUploadRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_certificate_.Swap(&other->device_certificate_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  enrollment_id_.Swap(&other->enrollment_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(certificate_type_, other->certificate_type_);
+}
+
+std::string DeviceCertUploadRequest::GetTypeName() const {
+  return "enterprise_management.DeviceCertUploadRequest";
+}
+
+
+// ===================================================================
+
+void DeviceCertUploadResponse::InitAsDefaultInstance() {
+}
+class DeviceCertUploadResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceCertUploadResponse>()._has_bits_);
+};
+
+DeviceCertUploadResponse::DeviceCertUploadResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceCertUploadResponse)
+}
+DeviceCertUploadResponse::DeviceCertUploadResponse(const DeviceCertUploadResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceCertUploadResponse)
+}
+
+void DeviceCertUploadResponse::SharedCtor() {
+}
+
+DeviceCertUploadResponse::~DeviceCertUploadResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceCertUploadResponse)
+  SharedDtor();
+}
+
+void DeviceCertUploadResponse::SharedDtor() {
+}
+
+void DeviceCertUploadResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceCertUploadResponse& DeviceCertUploadResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceCertUploadResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceCertUploadResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceCertUploadResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceCertUploadResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceCertUploadResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceCertUploadResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceCertUploadResponse)
+  return target;
+}
+
+size_t DeviceCertUploadResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceCertUploadResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceCertUploadResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceCertUploadResponse*>(
+      &from));
+}
+
+void DeviceCertUploadResponse::MergeFrom(const DeviceCertUploadResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceCertUploadResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void DeviceCertUploadResponse::CopyFrom(const DeviceCertUploadResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceCertUploadResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceCertUploadResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceCertUploadResponse::InternalSwap(DeviceCertUploadResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string DeviceCertUploadResponse::GetTypeName() const {
+  return "enterprise_management.DeviceCertUploadResponse";
+}
+
+
+// ===================================================================
+
+void DeviceServiceApiAccessRequest::InitAsDefaultInstance() {
+}
+class DeviceServiceApiAccessRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceServiceApiAccessRequest>()._has_bits_);
+  static void set_has_oauth2_client_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_device_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+DeviceServiceApiAccessRequest::DeviceServiceApiAccessRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceServiceApiAccessRequest)
+}
+DeviceServiceApiAccessRequest::DeviceServiceApiAccessRequest(const DeviceServiceApiAccessRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      auth_scopes_(from.auth_scopes_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  oauth2_client_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_oauth2_client_id()) {
+    oauth2_client_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.oauth2_client_id_);
+  }
+  device_type_ = from.device_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceServiceApiAccessRequest)
+}
+
+void DeviceServiceApiAccessRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceServiceApiAccessRequest_device_5fmanagement_5fbackend_2eproto.base);
+  oauth2_client_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_type_ = 0;
+}
+
+DeviceServiceApiAccessRequest::~DeviceServiceApiAccessRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceServiceApiAccessRequest)
+  SharedDtor();
+}
+
+void DeviceServiceApiAccessRequest::SharedDtor() {
+  oauth2_client_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceServiceApiAccessRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceServiceApiAccessRequest& DeviceServiceApiAccessRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceServiceApiAccessRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceServiceApiAccessRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceServiceApiAccessRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  auth_scopes_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    oauth2_client_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  device_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceServiceApiAccessRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string auth_scopes = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_auth_scopes();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional string oauth2_client_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_oauth2_client_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceServiceApiAccessRequest.DeviceType device_type = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceServiceApiAccessRequest_DeviceType_IsValid(val))) {
+            _internal_set_device_type(static_cast<::enterprise_management::DeviceServiceApiAccessRequest_DeviceType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceServiceApiAccessRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceServiceApiAccessRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string auth_scopes = 1;
+  for (int i = 0, n = this->_internal_auth_scopes_size(); i < n; i++) {
+    const auto& s = this->_internal_auth_scopes(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional string oauth2_client_id = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_oauth2_client_id(), target);
+  }
+
+  // optional .enterprise_management.DeviceServiceApiAccessRequest.DeviceType device_type = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_device_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceServiceApiAccessRequest)
+  return target;
+}
+
+size_t DeviceServiceApiAccessRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceServiceApiAccessRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string auth_scopes = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(auth_scopes_.size());
+  for (int i = 0, n = auth_scopes_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      auth_scopes_.Get(i));
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string oauth2_client_id = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_oauth2_client_id());
+    }
+
+    // optional .enterprise_management.DeviceServiceApiAccessRequest.DeviceType device_type = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_device_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceServiceApiAccessRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceServiceApiAccessRequest*>(
+      &from));
+}
+
+void DeviceServiceApiAccessRequest::MergeFrom(const DeviceServiceApiAccessRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceServiceApiAccessRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  auth_scopes_.MergeFrom(from.auth_scopes_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      oauth2_client_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.oauth2_client_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      device_type_ = from.device_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceServiceApiAccessRequest::CopyFrom(const DeviceServiceApiAccessRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceServiceApiAccessRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceServiceApiAccessRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceServiceApiAccessRequest::InternalSwap(DeviceServiceApiAccessRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  auth_scopes_.InternalSwap(&other->auth_scopes_);
+  oauth2_client_id_.Swap(&other->oauth2_client_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(device_type_, other->device_type_);
+}
+
+std::string DeviceServiceApiAccessRequest::GetTypeName() const {
+  return "enterprise_management.DeviceServiceApiAccessRequest";
+}
+
+
+// ===================================================================
+
+void DeviceServiceApiAccessResponse::InitAsDefaultInstance() {
+}
+class DeviceServiceApiAccessResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceServiceApiAccessResponse>()._has_bits_);
+  static void set_has_auth_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceServiceApiAccessResponse::DeviceServiceApiAccessResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceServiceApiAccessResponse)
+}
+DeviceServiceApiAccessResponse::DeviceServiceApiAccessResponse(const DeviceServiceApiAccessResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  auth_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_auth_code()) {
+    auth_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_code_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceServiceApiAccessResponse)
+}
+
+void DeviceServiceApiAccessResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceServiceApiAccessResponse_device_5fmanagement_5fbackend_2eproto.base);
+  auth_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceServiceApiAccessResponse::~DeviceServiceApiAccessResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceServiceApiAccessResponse)
+  SharedDtor();
+}
+
+void DeviceServiceApiAccessResponse::SharedDtor() {
+  auth_code_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceServiceApiAccessResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceServiceApiAccessResponse& DeviceServiceApiAccessResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceServiceApiAccessResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceServiceApiAccessResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceServiceApiAccessResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    auth_code_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceServiceApiAccessResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string auth_code = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_auth_code();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceServiceApiAccessResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceServiceApiAccessResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string auth_code = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_auth_code(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceServiceApiAccessResponse)
+  return target;
+}
+
+size_t DeviceServiceApiAccessResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceServiceApiAccessResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string auth_code = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_auth_code());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceServiceApiAccessResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceServiceApiAccessResponse*>(
+      &from));
+}
+
+void DeviceServiceApiAccessResponse::MergeFrom(const DeviceServiceApiAccessResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceServiceApiAccessResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_auth_code()) {
+    _has_bits_[0] |= 0x00000001u;
+    auth_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_code_);
+  }
+}
+
+void DeviceServiceApiAccessResponse::CopyFrom(const DeviceServiceApiAccessResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceServiceApiAccessResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceServiceApiAccessResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceServiceApiAccessResponse::InternalSwap(DeviceServiceApiAccessResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  auth_code_.Swap(&other->auth_code_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceServiceApiAccessResponse::GetTypeName() const {
+  return "enterprise_management.DeviceServiceApiAccessResponse";
+}
+
+
+// ===================================================================
+
+void BrowserDeviceIdentifier::InitAsDefaultInstance() {
+}
+class BrowserDeviceIdentifier::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BrowserDeviceIdentifier>()._has_bits_);
+  static void set_has_computer_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_serial_number(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+BrowserDeviceIdentifier::BrowserDeviceIdentifier()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BrowserDeviceIdentifier)
+}
+BrowserDeviceIdentifier::BrowserDeviceIdentifier(const BrowserDeviceIdentifier& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  computer_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_computer_name()) {
+    computer_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.computer_name_);
+  }
+  serial_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_serial_number()) {
+    serial_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_number_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BrowserDeviceIdentifier)
+}
+
+void BrowserDeviceIdentifier::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto.base);
+  computer_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  serial_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+BrowserDeviceIdentifier::~BrowserDeviceIdentifier() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BrowserDeviceIdentifier)
+  SharedDtor();
+}
+
+void BrowserDeviceIdentifier::SharedDtor() {
+  computer_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  serial_number_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void BrowserDeviceIdentifier::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BrowserDeviceIdentifier& BrowserDeviceIdentifier::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BrowserDeviceIdentifier_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BrowserDeviceIdentifier::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BrowserDeviceIdentifier)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      computer_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      serial_number_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BrowserDeviceIdentifier::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string computer_name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_computer_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string serial_number = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_serial_number();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BrowserDeviceIdentifier::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BrowserDeviceIdentifier)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string computer_name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_computer_name(), target);
+  }
+
+  // optional string serial_number = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_serial_number(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BrowserDeviceIdentifier)
+  return target;
+}
+
+size_t BrowserDeviceIdentifier::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BrowserDeviceIdentifier)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string computer_name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_computer_name());
+    }
+
+    // optional string serial_number = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_serial_number());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BrowserDeviceIdentifier::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BrowserDeviceIdentifier*>(
+      &from));
+}
+
+void BrowserDeviceIdentifier::MergeFrom(const BrowserDeviceIdentifier& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BrowserDeviceIdentifier)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      computer_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.computer_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      serial_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_number_);
+    }
+  }
+}
+
+void BrowserDeviceIdentifier::CopyFrom(const BrowserDeviceIdentifier& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BrowserDeviceIdentifier)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BrowserDeviceIdentifier::IsInitialized() const {
+  return true;
+}
+
+void BrowserDeviceIdentifier::InternalSwap(BrowserDeviceIdentifier* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  computer_name_.Swap(&other->computer_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  serial_number_.Swap(&other->serial_number_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string BrowserDeviceIdentifier::GetTypeName() const {
+  return "enterprise_management.BrowserDeviceIdentifier";
+}
+
+
+// ===================================================================
+
+void PolicyFetchRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_PolicyFetchRequest_default_instance_._instance.get_mutable()->browser_device_identifier_ = const_cast< ::enterprise_management::BrowserDeviceIdentifier*>(
+      ::enterprise_management::BrowserDeviceIdentifier::internal_default_instance());
+}
+class PolicyFetchRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PolicyFetchRequest>()._has_bits_);
+  static void set_has_policy_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_signature_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_public_key_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_settings_entity_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_invalidation_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_invalidation_payload(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_verification_key_hash(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_policy_invalidation_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_invalidation_topics_only(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_device_dm_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::enterprise_management::BrowserDeviceIdentifier& browser_device_identifier(const PolicyFetchRequest* msg);
+  static void set_has_browser_device_identifier(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+};
+
+const ::enterprise_management::BrowserDeviceIdentifier&
+PolicyFetchRequest::_Internal::browser_device_identifier(const PolicyFetchRequest* msg) {
+  return *msg->browser_device_identifier_;
+}
+PolicyFetchRequest::PolicyFetchRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PolicyFetchRequest)
+}
+PolicyFetchRequest::PolicyFetchRequest(const PolicyFetchRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  policy_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_type()) {
+    policy_type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_type_);
+  }
+  settings_entity_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_settings_entity_id()) {
+    settings_entity_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.settings_entity_id_);
+  }
+  invalidation_payload_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_invalidation_payload()) {
+    invalidation_payload_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.invalidation_payload_);
+  }
+  verification_key_hash_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_verification_key_hash()) {
+    verification_key_hash_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.verification_key_hash_);
+  }
+  policy_invalidation_info_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_invalidation_info()) {
+    policy_invalidation_info_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_invalidation_info_);
+  }
+  device_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_dm_token()) {
+    device_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_dm_token_);
+  }
+  if (from._internal_has_browser_device_identifier()) {
+    browser_device_identifier_ = new ::enterprise_management::BrowserDeviceIdentifier(*from.browser_device_identifier_);
+  } else {
+    browser_device_identifier_ = nullptr;
+  }
+  ::memcpy(&timestamp_, &from.timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&invalidation_topics_only_) -
+    reinterpret_cast<char*>(&timestamp_)) + sizeof(invalidation_topics_only_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PolicyFetchRequest)
+}
+
+void PolicyFetchRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PolicyFetchRequest_device_5fmanagement_5fbackend_2eproto.base);
+  policy_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  settings_entity_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  invalidation_payload_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  verification_key_hash_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_invalidation_info_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&browser_device_identifier_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&invalidation_topics_only_) -
+      reinterpret_cast<char*>(&browser_device_identifier_)) + sizeof(invalidation_topics_only_));
+}
+
+PolicyFetchRequest::~PolicyFetchRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PolicyFetchRequest)
+  SharedDtor();
+}
+
+void PolicyFetchRequest::SharedDtor() {
+  policy_type_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  settings_entity_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  invalidation_payload_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  verification_key_hash_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_invalidation_info_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_dm_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete browser_device_identifier_;
+}
+
+void PolicyFetchRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PolicyFetchRequest& PolicyFetchRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PolicyFetchRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PolicyFetchRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PolicyFetchRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    if (cached_has_bits & 0x00000001u) {
+      policy_type_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      settings_entity_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      invalidation_payload_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      verification_key_hash_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      policy_invalidation_info_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      device_dm_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(browser_device_identifier_ != nullptr);
+      browser_device_identifier_->Clear();
+    }
+  }
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  if (cached_has_bits & 0x00000f00u) {
+    ::memset(&signature_type_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&invalidation_topics_only_) -
+        reinterpret_cast<char*>(&signature_type_)) + sizeof(invalidation_topics_only_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PolicyFetchRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string policy_type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_policy_type();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 3 [default = NONE];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyFetchRequest_SignatureType_IsValid(val))) {
+            _internal_set_signature_type(static_cast<::enterprise_management::PolicyFetchRequest_SignatureType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 public_key_version = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_public_key_version(&has_bits);
+          public_key_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string settings_entity_id = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_settings_entity_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 invalidation_version = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_invalidation_version(&has_bits);
+          invalidation_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes invalidation_payload = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_invalidation_payload();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string verification_key_hash = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          auto str = _internal_mutable_verification_key_hash();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string policy_invalidation_info = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          auto str = _internal_mutable_policy_invalidation_info();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool invalidation_topics_only = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          _Internal::set_has_invalidation_topics_only(&has_bits);
+          invalidation_topics_only_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_dm_token = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          auto str = _internal_mutable_device_dm_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_device_identifier(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PolicyFetchRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PolicyFetchRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string policy_type = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_policy_type(), target);
+  }
+
+  // optional int64 timestamp = 2;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_timestamp(), target);
+  }
+
+  // optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 3 [default = NONE];
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_signature_type(), target);
+  }
+
+  // optional int32 public_key_version = 4;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_public_key_version(), target);
+  }
+
+  // optional string settings_entity_id = 6;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_settings_entity_id(), target);
+  }
+
+  // optional int64 invalidation_version = 7;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(7, this->_internal_invalidation_version(), target);
+  }
+
+  // optional bytes invalidation_payload = 8;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteBytesMaybeAliased(
+        8, this->_internal_invalidation_payload(), target);
+  }
+
+  // optional string verification_key_hash = 9;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        9, this->_internal_verification_key_hash(), target);
+  }
+
+  // optional string policy_invalidation_info = 10;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        10, this->_internal_policy_invalidation_info(), target);
+  }
+
+  // optional bool invalidation_topics_only = 11;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(11, this->_internal_invalidation_topics_only(), target);
+  }
+
+  // optional string device_dm_token = 12;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteStringMaybeAliased(
+        12, this->_internal_device_dm_token(), target);
+  }
+
+  // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 13;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        13, _Internal::browser_device_identifier(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PolicyFetchRequest)
+  return target;
+}
+
+size_t PolicyFetchRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PolicyFetchRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string policy_type = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_type());
+    }
+
+    // optional string settings_entity_id = 6;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_settings_entity_id());
+    }
+
+    // optional bytes invalidation_payload = 8;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_invalidation_payload());
+    }
+
+    // optional string verification_key_hash = 9;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_verification_key_hash());
+    }
+
+    // optional string policy_invalidation_info = 10;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_invalidation_info());
+    }
+
+    // optional string device_dm_token = 12;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_dm_token());
+    }
+
+    // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 13;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *browser_device_identifier_);
+    }
+
+    // optional int64 timestamp = 2;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    // optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 3 [default = NONE];
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_signature_type());
+    }
+
+    // optional int32 public_key_version = 4;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_public_key_version());
+    }
+
+    // optional int64 invalidation_version = 7;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_invalidation_version());
+    }
+
+    // optional bool invalidation_topics_only = 11;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PolicyFetchRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PolicyFetchRequest*>(
+      &from));
+}
+
+void PolicyFetchRequest::MergeFrom(const PolicyFetchRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PolicyFetchRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      policy_type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_type_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      settings_entity_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.settings_entity_id_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      invalidation_payload_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.invalidation_payload_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      verification_key_hash_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.verification_key_hash_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      policy_invalidation_info_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_invalidation_info_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      device_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_dm_token_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_browser_device_identifier()->::enterprise_management::BrowserDeviceIdentifier::MergeFrom(from._internal_browser_device_identifier());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      timestamp_ = from.timestamp_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    if (cached_has_bits & 0x00000100u) {
+      signature_type_ = from.signature_type_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      public_key_version_ = from.public_key_version_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      invalidation_version_ = from.invalidation_version_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      invalidation_topics_only_ = from.invalidation_topics_only_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PolicyFetchRequest::CopyFrom(const PolicyFetchRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PolicyFetchRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PolicyFetchRequest::IsInitialized() const {
+  return true;
+}
+
+void PolicyFetchRequest::InternalSwap(PolicyFetchRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  policy_type_.Swap(&other->policy_type_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  settings_entity_id_.Swap(&other->settings_entity_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  invalidation_payload_.Swap(&other->invalidation_payload_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  verification_key_hash_.Swap(&other->verification_key_hash_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_invalidation_info_.Swap(&other->policy_invalidation_info_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_dm_token_.Swap(&other->device_dm_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(browser_device_identifier_, other->browser_device_identifier_);
+  swap(timestamp_, other->timestamp_);
+  swap(signature_type_, other->signature_type_);
+  swap(public_key_version_, other->public_key_version_);
+  swap(invalidation_version_, other->invalidation_version_);
+  swap(invalidation_topics_only_, other->invalidation_topics_only_);
+}
+
+std::string PolicyFetchRequest::GetTypeName() const {
+  return "enterprise_management.PolicyFetchRequest";
+}
+
+
+// ===================================================================
+
+void DisabledState::InitAsDefaultInstance() {
+}
+class DisabledState::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DisabledState>()._has_bits_);
+  static void set_has_message(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DisabledState::DisabledState()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DisabledState)
+}
+DisabledState::DisabledState(const DisabledState& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_message()) {
+    message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.message_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DisabledState)
+}
+
+void DisabledState::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DisabledState_device_5fmanagement_5fbackend_2eproto.base);
+  message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DisabledState::~DisabledState() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DisabledState)
+  SharedDtor();
+}
+
+void DisabledState::SharedDtor() {
+  message_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DisabledState::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DisabledState& DisabledState::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DisabledState_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DisabledState::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DisabledState)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    message_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DisabledState::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string message = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_message();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DisabledState::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DisabledState)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string message = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_message(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DisabledState)
+  return target;
+}
+
+size_t DisabledState::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DisabledState)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string message = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_message());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DisabledState::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DisabledState*>(
+      &from));
+}
+
+void DisabledState::MergeFrom(const DisabledState& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DisabledState)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_message()) {
+    _has_bits_[0] |= 0x00000001u;
+    message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.message_);
+  }
+}
+
+void DisabledState::CopyFrom(const DisabledState& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DisabledState)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DisabledState::IsInitialized() const {
+  return true;
+}
+
+void DisabledState::InternalSwap(DisabledState* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  message_.Swap(&other->message_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DisabledState::GetTypeName() const {
+  return "enterprise_management.DisabledState";
+}
+
+
+// ===================================================================
+
+void DeviceState::InitAsDefaultInstance() {
+  ::enterprise_management::_DeviceState_default_instance_._instance.get_mutable()->disabled_state_ = const_cast< ::enterprise_management::DisabledState*>(
+      ::enterprise_management::DisabledState::internal_default_instance());
+}
+class DeviceState::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceState>()._has_bits_);
+  static void set_has_device_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::enterprise_management::DisabledState& disabled_state(const DeviceState* msg);
+  static void set_has_disabled_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::DisabledState&
+DeviceState::_Internal::disabled_state(const DeviceState* msg) {
+  return *msg->disabled_state_;
+}
+DeviceState::DeviceState()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceState)
+}
+DeviceState::DeviceState(const DeviceState& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_disabled_state()) {
+    disabled_state_ = new ::enterprise_management::DisabledState(*from.disabled_state_);
+  } else {
+    disabled_state_ = nullptr;
+  }
+  device_mode_ = from.device_mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceState)
+}
+
+void DeviceState::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceState_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&disabled_state_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&device_mode_) -
+      reinterpret_cast<char*>(&disabled_state_)) + sizeof(device_mode_));
+}
+
+DeviceState::~DeviceState() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceState)
+  SharedDtor();
+}
+
+void DeviceState::SharedDtor() {
+  if (this != internal_default_instance()) delete disabled_state_;
+}
+
+void DeviceState::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceState& DeviceState::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceState_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceState::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceState)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(disabled_state_ != nullptr);
+    disabled_state_->Clear();
+  }
+  device_mode_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceState::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceState.DeviceMode device_mode = 1 [default = DEVICE_MODE_NORMAL];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceState_DeviceMode_IsValid(val))) {
+            _internal_set_device_mode(static_cast<::enterprise_management::DeviceState_DeviceMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DisabledState disabled_state = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_disabled_state(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceState::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceState)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceState.DeviceMode device_mode = 1 [default = DEVICE_MODE_NORMAL];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_device_mode(), target);
+  }
+
+  // optional .enterprise_management.DisabledState disabled_state = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::disabled_state(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceState)
+  return target;
+}
+
+size_t DeviceState::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceState)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.DisabledState disabled_state = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *disabled_state_);
+    }
+
+    // optional .enterprise_management.DeviceState.DeviceMode device_mode = 1 [default = DEVICE_MODE_NORMAL];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_device_mode());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceState::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceState*>(
+      &from));
+}
+
+void DeviceState::MergeFrom(const DeviceState& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceState)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_disabled_state()->::enterprise_management::DisabledState::MergeFrom(from._internal_disabled_state());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      device_mode_ = from.device_mode_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceState::CopyFrom(const DeviceState& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceState)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceState::IsInitialized() const {
+  return true;
+}
+
+void DeviceState::InternalSwap(DeviceState* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(disabled_state_, other->disabled_state_);
+  swap(device_mode_, other->device_mode_);
+}
+
+std::string DeviceState::GetTypeName() const {
+  return "enterprise_management.DeviceState";
+}
+
+
+// ===================================================================
+
+void CustomerLogo::InitAsDefaultInstance() {
+}
+class CustomerLogo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CustomerLogo>()._has_bits_);
+  static void set_has_logo_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+CustomerLogo::CustomerLogo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CustomerLogo)
+}
+CustomerLogo::CustomerLogo(const CustomerLogo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  logo_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_logo_url()) {
+    logo_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.logo_url_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CustomerLogo)
+}
+
+void CustomerLogo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CustomerLogo_device_5fmanagement_5fbackend_2eproto.base);
+  logo_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+CustomerLogo::~CustomerLogo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CustomerLogo)
+  SharedDtor();
+}
+
+void CustomerLogo::SharedDtor() {
+  logo_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CustomerLogo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CustomerLogo& CustomerLogo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CustomerLogo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CustomerLogo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CustomerLogo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    logo_url_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CustomerLogo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string logo_url = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_logo_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CustomerLogo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CustomerLogo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string logo_url = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_logo_url(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CustomerLogo)
+  return target;
+}
+
+size_t CustomerLogo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CustomerLogo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string logo_url = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_logo_url());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CustomerLogo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CustomerLogo*>(
+      &from));
+}
+
+void CustomerLogo::MergeFrom(const CustomerLogo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CustomerLogo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_logo_url()) {
+    _has_bits_[0] |= 0x00000001u;
+    logo_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.logo_url_);
+  }
+}
+
+void CustomerLogo::CopyFrom(const CustomerLogo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CustomerLogo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CustomerLogo::IsInitialized() const {
+  return true;
+}
+
+void CustomerLogo::InternalSwap(CustomerLogo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  logo_url_.Swap(&other->logo_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string CustomerLogo::GetTypeName() const {
+  return "enterprise_management.CustomerLogo";
+}
+
+
+// ===================================================================
+
+void PolicyData::InitAsDefaultInstance() {
+  ::enterprise_management::_PolicyData_default_instance_._instance.get_mutable()->device_state_ = const_cast< ::enterprise_management::DeviceState*>(
+      ::enterprise_management::DeviceState::internal_default_instance());
+  ::enterprise_management::_PolicyData_default_instance_._instance.get_mutable()->customer_logo_ = const_cast< ::enterprise_management::CustomerLogo*>(
+      ::enterprise_management::CustomerLogo::internal_default_instance());
+  ::enterprise_management::_PolicyData_default_instance_._instance.get_mutable()->client_action_required_ = const_cast< ::enterprise_management::ClientActionRequired*>(
+      ::enterprise_management::ClientActionRequired::internal_default_instance());
+}
+class PolicyData::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PolicyData>()._has_bits_);
+  static void set_has_policy_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 16777216u;
+  }
+  static void set_has_request_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_policy_value(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_machine_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_public_key_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 33554432u;
+  }
+  static void set_has_username(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 67108864u;
+  }
+  static void set_has_settings_entity_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_service_account_identity(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_policy_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_management_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 134217728u;
+  }
+  static const ::enterprise_management::DeviceState& device_state(const PolicyData* msg);
+  static void set_has_device_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 2097152u;
+  }
+  static void set_has_annotated_location(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_annotated_asset_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_directory_api_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_display_domain(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_policy_invalidation_topic(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static void set_has_command_invalidation_topic(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static void set_has_enrollment_id_needed(HasBits* has_bits) {
+    (*has_bits)[0] |= 268435456u;
+  }
+  static void set_has_gaia_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static void set_has_market_segment(HasBits* has_bits) {
+    (*has_bits)[0] |= 536870912u;
+  }
+  static const ::enterprise_management::CustomerLogo& customer_logo(const PolicyData* msg);
+  static void set_has_customer_logo(HasBits* has_bits) {
+    (*has_bits)[0] |= 4194304u;
+  }
+  static void set_has_change_password_uri(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static const ::enterprise_management::ClientActionRequired& client_action_required(const PolicyData* msg);
+  static void set_has_client_action_required(HasBits* has_bits) {
+    (*has_bits)[0] |= 8388608u;
+  }
+  static void set_has_obfuscated_customer_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static void set_has_metrics_log_segment(HasBits* has_bits) {
+    (*has_bits)[0] |= 1073741824u;
+  }
+  static void set_has_managed_by(HasBits* has_bits) {
+    (*has_bits)[0] |= 262144u;
+  }
+  static void set_has_sso_profile(HasBits* has_bits) {
+    (*has_bits)[0] |= 524288u;
+  }
+  static void set_has_license_sku(HasBits* has_bits) {
+    (*has_bits)[0] |= 1048576u;
+  }
+};
+
+const ::enterprise_management::DeviceState&
+PolicyData::_Internal::device_state(const PolicyData* msg) {
+  return *msg->device_state_;
+}
+const ::enterprise_management::CustomerLogo&
+PolicyData::_Internal::customer_logo(const PolicyData* msg) {
+  return *msg->customer_logo_;
+}
+const ::enterprise_management::ClientActionRequired&
+PolicyData::_Internal::client_action_required(const PolicyData* msg) {
+  return *msg->client_action_required_;
+}
+PolicyData::PolicyData()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PolicyData)
+}
+PolicyData::PolicyData(const PolicyData& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      device_affiliation_ids_(from.device_affiliation_ids_),
+      user_affiliation_ids_(from.user_affiliation_ids_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  policy_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_type()) {
+    policy_type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_type_);
+  }
+  request_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_request_token()) {
+    request_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.request_token_);
+  }
+  policy_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_value()) {
+    policy_value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_value_);
+  }
+  machine_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_machine_name()) {
+    machine_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_name_);
+  }
+  username_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_username()) {
+    username_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.username_);
+  }
+  device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_id()) {
+    device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_id_);
+  }
+  settings_entity_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_settings_entity_id()) {
+    settings_entity_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.settings_entity_id_);
+  }
+  service_account_identity_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_service_account_identity()) {
+    service_account_identity_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.service_account_identity_);
+  }
+  policy_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_token()) {
+    policy_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_token_);
+  }
+  annotated_location_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_annotated_location()) {
+    annotated_location_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.annotated_location_);
+  }
+  annotated_asset_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_annotated_asset_id()) {
+    annotated_asset_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.annotated_asset_id_);
+  }
+  directory_api_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_directory_api_id()) {
+    directory_api_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.directory_api_id_);
+  }
+  display_domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_display_domain()) {
+    display_domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.display_domain_);
+  }
+  policy_invalidation_topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_invalidation_topic()) {
+    policy_invalidation_topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_invalidation_topic_);
+  }
+  command_invalidation_topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_command_invalidation_topic()) {
+    command_invalidation_topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.command_invalidation_topic_);
+  }
+  gaia_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_gaia_id()) {
+    gaia_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gaia_id_);
+  }
+  change_password_uri_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_change_password_uri()) {
+    change_password_uri_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.change_password_uri_);
+  }
+  obfuscated_customer_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obfuscated_customer_id()) {
+    obfuscated_customer_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obfuscated_customer_id_);
+  }
+  managed_by_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_managed_by()) {
+    managed_by_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.managed_by_);
+  }
+  sso_profile_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_sso_profile()) {
+    sso_profile_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sso_profile_);
+  }
+  license_sku_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_license_sku()) {
+    license_sku_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.license_sku_);
+  }
+  if (from._internal_has_device_state()) {
+    device_state_ = new ::enterprise_management::DeviceState(*from.device_state_);
+  } else {
+    device_state_ = nullptr;
+  }
+  if (from._internal_has_customer_logo()) {
+    customer_logo_ = new ::enterprise_management::CustomerLogo(*from.customer_logo_);
+  } else {
+    customer_logo_ = nullptr;
+  }
+  if (from._internal_has_client_action_required()) {
+    client_action_required_ = new ::enterprise_management::ClientActionRequired(*from.client_action_required_);
+  } else {
+    client_action_required_ = nullptr;
+  }
+  ::memcpy(&timestamp_, &from.timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&metrics_log_segment_) -
+    reinterpret_cast<char*>(&timestamp_)) + sizeof(metrics_log_segment_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PolicyData)
+}
+
+void PolicyData::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PolicyData_device_5fmanagement_5fbackend_2eproto.base);
+  policy_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  request_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  machine_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  username_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  settings_entity_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  service_account_identity_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  annotated_location_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  annotated_asset_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  directory_api_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  display_domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_invalidation_topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  command_invalidation_topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  gaia_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  change_password_uri_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obfuscated_customer_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  managed_by_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  sso_profile_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  license_sku_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&device_state_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&metrics_log_segment_) -
+      reinterpret_cast<char*>(&device_state_)) + sizeof(metrics_log_segment_));
+}
+
+PolicyData::~PolicyData() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PolicyData)
+  SharedDtor();
+}
+
+void PolicyData::SharedDtor() {
+  policy_type_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  request_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_value_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  machine_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  username_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  settings_entity_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  service_account_identity_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  annotated_location_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  annotated_asset_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  directory_api_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  display_domain_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_invalidation_topic_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  command_invalidation_topic_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  gaia_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  change_password_uri_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obfuscated_customer_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  managed_by_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  sso_profile_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  license_sku_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete device_state_;
+  if (this != internal_default_instance()) delete customer_logo_;
+  if (this != internal_default_instance()) delete client_action_required_;
+}
+
+void PolicyData::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PolicyData& PolicyData::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PolicyData_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PolicyData::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PolicyData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  device_affiliation_ids_.Clear();
+  user_affiliation_ids_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      policy_type_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      request_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      policy_value_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      machine_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      username_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      device_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      settings_entity_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      service_account_identity_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      policy_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      annotated_location_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      annotated_asset_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      directory_api_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      display_domain_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      policy_invalidation_topic_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      command_invalidation_topic_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00008000u) {
+      gaia_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      change_password_uri_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00020000u) {
+      obfuscated_customer_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00040000u) {
+      managed_by_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00080000u) {
+      sso_profile_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00100000u) {
+      license_sku_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00200000u) {
+      GOOGLE_DCHECK(device_state_ != nullptr);
+      device_state_->Clear();
+    }
+    if (cached_has_bits & 0x00400000u) {
+      GOOGLE_DCHECK(customer_logo_ != nullptr);
+      customer_logo_->Clear();
+    }
+    if (cached_has_bits & 0x00800000u) {
+      GOOGLE_DCHECK(client_action_required_ != nullptr);
+      client_action_required_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x7f000000u) {
+    ::memset(&timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&metrics_log_segment_) -
+        reinterpret_cast<char*>(&timestamp_)) + sizeof(metrics_log_segment_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PolicyData::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string policy_type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_policy_type();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string request_token = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_request_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes policy_value = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_policy_value();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string machine_name = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_machine_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 public_key_version = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_public_key_version(&has_bits);
+          public_key_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string username = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          auto str = _internal_mutable_username();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_id = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_device_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyData.AssociationState state = 9 [default = ACTIVE];
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyData_AssociationState_IsValid(val))) {
+            _internal_set_state(static_cast<::enterprise_management::PolicyData_AssociationState>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(9, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string settings_entity_id = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          auto str = _internal_mutable_settings_entity_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string service_account_identity = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          auto str = _internal_mutable_service_account_identity();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string policy_token = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          auto str = _internal_mutable_policy_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyData.ManagementMode management_mode = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 128)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyData_ManagementMode_IsValid(val))) {
+            _internal_set_management_mode(static_cast<::enterprise_management::PolicyData_ManagementMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(16, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceState device_state = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_state(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string annotated_location = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 162)) {
+          auto str = _internal_mutable_annotated_location();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string annotated_asset_id = 21;
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          auto str = _internal_mutable_annotated_asset_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string directory_api_id = 22;
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 178)) {
+          auto str = _internal_mutable_directory_api_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated string device_affiliation_ids = 23;
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            auto str = _internal_add_device_affiliation_ids();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<186>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated string user_affiliation_ids = 24;
+      case 24:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 194)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            auto str = _internal_add_user_affiliation_ids();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<194>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional string display_domain = 25;
+      case 25:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          auto str = _internal_mutable_display_domain();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string policy_invalidation_topic = 26;
+      case 26:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 210)) {
+          auto str = _internal_mutable_policy_invalidation_topic();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string command_invalidation_topic = 27;
+      case 27:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          auto str = _internal_mutable_command_invalidation_topic();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool enrollment_id_needed = 28;
+      case 28:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 224)) {
+          _Internal::set_has_enrollment_id_needed(&has_bits);
+          enrollment_id_needed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string gaia_id = 29;
+      case 29:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 234)) {
+          auto str = _internal_mutable_gaia_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyData.MarketSegment market_segment = 30;
+      case 30:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 240)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyData_MarketSegment_IsValid(val))) {
+            _internal_set_market_segment(static_cast<::enterprise_management::PolicyData_MarketSegment>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(30, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CustomerLogo customer_logo = 31;
+      case 31:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr = ctx->ParseMessage(_internal_mutable_customer_logo(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string change_password_uri = 32;
+      case 32:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 2)) {
+          auto str = _internal_mutable_change_password_uri();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ClientActionRequired client_action_required = 33;
+      case 33:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_client_action_required(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string obfuscated_customer_id = 34;
+      case 34:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_obfuscated_customer_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyData.MetricsLogSegment metrics_log_segment = 35;
+      case 35:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyData_MetricsLogSegment_IsValid(val))) {
+            _internal_set_metrics_log_segment(static_cast<::enterprise_management::PolicyData_MetricsLogSegment>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(35, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string managed_by = 36;
+      case 36:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_managed_by();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string sso_profile = 37;
+      case 37:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_sso_profile();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string license_sku = 38;
+      case 38:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_license_sku();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PolicyData::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PolicyData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string policy_type = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_policy_type(), target);
+  }
+
+  // optional int64 timestamp = 2;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_timestamp(), target);
+  }
+
+  // optional string request_token = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_request_token(), target);
+  }
+
+  // optional bytes policy_value = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteBytesMaybeAliased(
+        4, this->_internal_policy_value(), target);
+  }
+
+  // optional string machine_name = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_machine_name(), target);
+  }
+
+  // optional int32 public_key_version = 6;
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_public_key_version(), target);
+  }
+
+  // optional string username = 7;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        7, this->_internal_username(), target);
+  }
+
+  // optional string device_id = 8;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteStringMaybeAliased(
+        8, this->_internal_device_id(), target);
+  }
+
+  // optional .enterprise_management.PolicyData.AssociationState state = 9 [default = ACTIVE];
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      9, this->_internal_state(), target);
+  }
+
+  // optional string settings_entity_id = 11;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->WriteStringMaybeAliased(
+        11, this->_internal_settings_entity_id(), target);
+  }
+
+  // optional string service_account_identity = 12;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->WriteStringMaybeAliased(
+        12, this->_internal_service_account_identity(), target);
+  }
+
+  // optional string policy_token = 15;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->WriteStringMaybeAliased(
+        15, this->_internal_policy_token(), target);
+  }
+
+  // optional .enterprise_management.PolicyData.ManagementMode management_mode = 16;
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      16, this->_internal_management_mode(), target);
+  }
+
+  // optional .enterprise_management.DeviceState device_state = 17;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        17, _Internal::device_state(this), target, stream);
+  }
+
+  // optional string annotated_location = 20;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->WriteStringMaybeAliased(
+        20, this->_internal_annotated_location(), target);
+  }
+
+  // optional string annotated_asset_id = 21;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->WriteStringMaybeAliased(
+        21, this->_internal_annotated_asset_id(), target);
+  }
+
+  // optional string directory_api_id = 22;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->WriteStringMaybeAliased(
+        22, this->_internal_directory_api_id(), target);
+  }
+
+  // repeated string device_affiliation_ids = 23;
+  for (int i = 0, n = this->_internal_device_affiliation_ids_size(); i < n; i++) {
+    const auto& s = this->_internal_device_affiliation_ids(i);
+    target = stream->WriteString(23, s, target);
+  }
+
+  // repeated string user_affiliation_ids = 24;
+  for (int i = 0, n = this->_internal_user_affiliation_ids_size(); i < n; i++) {
+    const auto& s = this->_internal_user_affiliation_ids(i);
+    target = stream->WriteString(24, s, target);
+  }
+
+  // optional string display_domain = 25;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->WriteStringMaybeAliased(
+        25, this->_internal_display_domain(), target);
+  }
+
+  // optional string policy_invalidation_topic = 26;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->WriteStringMaybeAliased(
+        26, this->_internal_policy_invalidation_topic(), target);
+  }
+
+  // optional string command_invalidation_topic = 27;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->WriteStringMaybeAliased(
+        27, this->_internal_command_invalidation_topic(), target);
+  }
+
+  // optional bool enrollment_id_needed = 28;
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(28, this->_internal_enrollment_id_needed(), target);
+  }
+
+  // optional string gaia_id = 29;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->WriteStringMaybeAliased(
+        29, this->_internal_gaia_id(), target);
+  }
+
+  // optional .enterprise_management.PolicyData.MarketSegment market_segment = 30;
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      30, this->_internal_market_segment(), target);
+  }
+
+  // optional .enterprise_management.CustomerLogo customer_logo = 31;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        31, _Internal::customer_logo(this), target, stream);
+  }
+
+  // optional string change_password_uri = 32;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->WriteStringMaybeAliased(
+        32, this->_internal_change_password_uri(), target);
+  }
+
+  // optional .enterprise_management.ClientActionRequired client_action_required = 33;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        33, _Internal::client_action_required(this), target, stream);
+  }
+
+  // optional string obfuscated_customer_id = 34;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->WriteStringMaybeAliased(
+        34, this->_internal_obfuscated_customer_id(), target);
+  }
+
+  // optional .enterprise_management.PolicyData.MetricsLogSegment metrics_log_segment = 35;
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      35, this->_internal_metrics_log_segment(), target);
+  }
+
+  // optional string managed_by = 36;
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->WriteStringMaybeAliased(
+        36, this->_internal_managed_by(), target);
+  }
+
+  // optional string sso_profile = 37;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->WriteStringMaybeAliased(
+        37, this->_internal_sso_profile(), target);
+  }
+
+  // optional string license_sku = 38;
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->WriteStringMaybeAliased(
+        38, this->_internal_license_sku(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PolicyData)
+  return target;
+}
+
+size_t PolicyData::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PolicyData)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string device_affiliation_ids = 23;
+  total_size += 2 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(device_affiliation_ids_.size());
+  for (int i = 0, n = device_affiliation_ids_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      device_affiliation_ids_.Get(i));
+  }
+
+  // repeated string user_affiliation_ids = 24;
+  total_size += 2 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(user_affiliation_ids_.size());
+  for (int i = 0, n = user_affiliation_ids_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      user_affiliation_ids_.Get(i));
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string policy_type = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_type());
+    }
+
+    // optional string request_token = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_request_token());
+    }
+
+    // optional bytes policy_value = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_policy_value());
+    }
+
+    // optional string machine_name = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_machine_name());
+    }
+
+    // optional string username = 7;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_username());
+    }
+
+    // optional string device_id = 8;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_id());
+    }
+
+    // optional string settings_entity_id = 11;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_settings_entity_id());
+    }
+
+    // optional string service_account_identity = 12;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_service_account_identity());
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional string policy_token = 15;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_token());
+    }
+
+    // optional string annotated_location = 20;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_annotated_location());
+    }
+
+    // optional string annotated_asset_id = 21;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_annotated_asset_id());
+    }
+
+    // optional string directory_api_id = 22;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_directory_api_id());
+    }
+
+    // optional string display_domain = 25;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_display_domain());
+    }
+
+    // optional string policy_invalidation_topic = 26;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_invalidation_topic());
+    }
+
+    // optional string command_invalidation_topic = 27;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_command_invalidation_topic());
+    }
+
+    // optional string gaia_id = 29;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_gaia_id());
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional string change_password_uri = 32;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_change_password_uri());
+    }
+
+    // optional string obfuscated_customer_id = 34;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obfuscated_customer_id());
+    }
+
+    // optional string managed_by = 36;
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_managed_by());
+    }
+
+    // optional string sso_profile = 37;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_sso_profile());
+    }
+
+    // optional string license_sku = 38;
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_license_sku());
+    }
+
+    // optional .enterprise_management.DeviceState device_state = 17;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_state_);
+    }
+
+    // optional .enterprise_management.CustomerLogo customer_logo = 31;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *customer_logo_);
+    }
+
+    // optional .enterprise_management.ClientActionRequired client_action_required = 33;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *client_action_required_);
+    }
+
+  }
+  if (cached_has_bits & 0x7f000000u) {
+    // optional int64 timestamp = 2;
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+    // optional int32 public_key_version = 6;
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_public_key_version());
+    }
+
+    // optional .enterprise_management.PolicyData.AssociationState state = 9 [default = ACTIVE];
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_state());
+    }
+
+    // optional .enterprise_management.PolicyData.ManagementMode management_mode = 16;
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_management_mode());
+    }
+
+    // optional bool enrollment_id_needed = 28;
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 2 + 1;
+    }
+
+    // optional .enterprise_management.PolicyData.MarketSegment market_segment = 30;
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_market_segment());
+    }
+
+    // optional .enterprise_management.PolicyData.MetricsLogSegment metrics_log_segment = 35;
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_metrics_log_segment());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PolicyData::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PolicyData*>(
+      &from));
+}
+
+void PolicyData::MergeFrom(const PolicyData& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PolicyData)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  device_affiliation_ids_.MergeFrom(from.device_affiliation_ids_);
+  user_affiliation_ids_.MergeFrom(from.user_affiliation_ids_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      policy_type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_type_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      request_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.request_token_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      policy_value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_value_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      machine_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_name_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      username_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.username_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_id_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _has_bits_[0] |= 0x00000040u;
+      settings_entity_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.settings_entity_id_);
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _has_bits_[0] |= 0x00000080u;
+      service_account_identity_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.service_account_identity_);
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _has_bits_[0] |= 0x00000100u;
+      policy_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_token_);
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _has_bits_[0] |= 0x00000200u;
+      annotated_location_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.annotated_location_);
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _has_bits_[0] |= 0x00000400u;
+      annotated_asset_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.annotated_asset_id_);
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _has_bits_[0] |= 0x00000800u;
+      directory_api_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.directory_api_id_);
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _has_bits_[0] |= 0x00001000u;
+      display_domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.display_domain_);
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _has_bits_[0] |= 0x00002000u;
+      policy_invalidation_topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_invalidation_topic_);
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _has_bits_[0] |= 0x00004000u;
+      command_invalidation_topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.command_invalidation_topic_);
+    }
+    if (cached_has_bits & 0x00008000u) {
+      _has_bits_[0] |= 0x00008000u;
+      gaia_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gaia_id_);
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      _has_bits_[0] |= 0x00010000u;
+      change_password_uri_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.change_password_uri_);
+    }
+    if (cached_has_bits & 0x00020000u) {
+      _has_bits_[0] |= 0x00020000u;
+      obfuscated_customer_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obfuscated_customer_id_);
+    }
+    if (cached_has_bits & 0x00040000u) {
+      _has_bits_[0] |= 0x00040000u;
+      managed_by_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.managed_by_);
+    }
+    if (cached_has_bits & 0x00080000u) {
+      _has_bits_[0] |= 0x00080000u;
+      sso_profile_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sso_profile_);
+    }
+    if (cached_has_bits & 0x00100000u) {
+      _has_bits_[0] |= 0x00100000u;
+      license_sku_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.license_sku_);
+    }
+    if (cached_has_bits & 0x00200000u) {
+      _internal_mutable_device_state()->::enterprise_management::DeviceState::MergeFrom(from._internal_device_state());
+    }
+    if (cached_has_bits & 0x00400000u) {
+      _internal_mutable_customer_logo()->::enterprise_management::CustomerLogo::MergeFrom(from._internal_customer_logo());
+    }
+    if (cached_has_bits & 0x00800000u) {
+      _internal_mutable_client_action_required()->::enterprise_management::ClientActionRequired::MergeFrom(from._internal_client_action_required());
+    }
+  }
+  if (cached_has_bits & 0x7f000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      timestamp_ = from.timestamp_;
+    }
+    if (cached_has_bits & 0x02000000u) {
+      public_key_version_ = from.public_key_version_;
+    }
+    if (cached_has_bits & 0x04000000u) {
+      state_ = from.state_;
+    }
+    if (cached_has_bits & 0x08000000u) {
+      management_mode_ = from.management_mode_;
+    }
+    if (cached_has_bits & 0x10000000u) {
+      enrollment_id_needed_ = from.enrollment_id_needed_;
+    }
+    if (cached_has_bits & 0x20000000u) {
+      market_segment_ = from.market_segment_;
+    }
+    if (cached_has_bits & 0x40000000u) {
+      metrics_log_segment_ = from.metrics_log_segment_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PolicyData::CopyFrom(const PolicyData& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PolicyData)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PolicyData::IsInitialized() const {
+  return true;
+}
+
+void PolicyData::InternalSwap(PolicyData* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_affiliation_ids_.InternalSwap(&other->device_affiliation_ids_);
+  user_affiliation_ids_.InternalSwap(&other->user_affiliation_ids_);
+  policy_type_.Swap(&other->policy_type_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  request_token_.Swap(&other->request_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_value_.Swap(&other->policy_value_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  machine_name_.Swap(&other->machine_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  username_.Swap(&other->username_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_id_.Swap(&other->device_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  settings_entity_id_.Swap(&other->settings_entity_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  service_account_identity_.Swap(&other->service_account_identity_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_token_.Swap(&other->policy_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  annotated_location_.Swap(&other->annotated_location_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  annotated_asset_id_.Swap(&other->annotated_asset_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  directory_api_id_.Swap(&other->directory_api_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  display_domain_.Swap(&other->display_domain_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_invalidation_topic_.Swap(&other->policy_invalidation_topic_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  command_invalidation_topic_.Swap(&other->command_invalidation_topic_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  gaia_id_.Swap(&other->gaia_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  change_password_uri_.Swap(&other->change_password_uri_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  obfuscated_customer_id_.Swap(&other->obfuscated_customer_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  managed_by_.Swap(&other->managed_by_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  sso_profile_.Swap(&other->sso_profile_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  license_sku_.Swap(&other->license_sku_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(device_state_, other->device_state_);
+  swap(customer_logo_, other->customer_logo_);
+  swap(client_action_required_, other->client_action_required_);
+  swap(timestamp_, other->timestamp_);
+  swap(public_key_version_, other->public_key_version_);
+  swap(state_, other->state_);
+  swap(management_mode_, other->management_mode_);
+  swap(enrollment_id_needed_, other->enrollment_id_needed_);
+  swap(market_segment_, other->market_segment_);
+  swap(metrics_log_segment_, other->metrics_log_segment_);
+}
+
+std::string PolicyData::GetTypeName() const {
+  return "enterprise_management.PolicyData";
+}
+
+
+// ===================================================================
+
+void ClientActionRequired::InitAsDefaultInstance() {
+}
+class ClientActionRequired::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ClientActionRequired>()._has_bits_);
+  static void set_has_enrollment_certificate_needed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ClientActionRequired::ClientActionRequired()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ClientActionRequired)
+}
+ClientActionRequired::ClientActionRequired(const ClientActionRequired& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enrollment_certificate_needed_ = from.enrollment_certificate_needed_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ClientActionRequired)
+}
+
+void ClientActionRequired::SharedCtor() {
+  enrollment_certificate_needed_ = false;
+}
+
+ClientActionRequired::~ClientActionRequired() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ClientActionRequired)
+  SharedDtor();
+}
+
+void ClientActionRequired::SharedDtor() {
+}
+
+void ClientActionRequired::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ClientActionRequired& ClientActionRequired::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ClientActionRequired_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ClientActionRequired::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ClientActionRequired)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  enrollment_certificate_needed_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ClientActionRequired::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enrollment_certificate_needed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enrollment_certificate_needed(&has_bits);
+          enrollment_certificate_needed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ClientActionRequired::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ClientActionRequired)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enrollment_certificate_needed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enrollment_certificate_needed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ClientActionRequired)
+  return target;
+}
+
+size_t ClientActionRequired::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ClientActionRequired)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool enrollment_certificate_needed = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ClientActionRequired::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ClientActionRequired*>(
+      &from));
+}
+
+void ClientActionRequired::MergeFrom(const ClientActionRequired& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ClientActionRequired)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_enrollment_certificate_needed()) {
+    _internal_set_enrollment_certificate_needed(from._internal_enrollment_certificate_needed());
+  }
+}
+
+void ClientActionRequired::CopyFrom(const ClientActionRequired& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ClientActionRequired)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ClientActionRequired::IsInitialized() const {
+  return true;
+}
+
+void ClientActionRequired::InternalSwap(ClientActionRequired* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(enrollment_certificate_needed_, other->enrollment_certificate_needed_);
+}
+
+std::string ClientActionRequired::GetTypeName() const {
+  return "enterprise_management.ClientActionRequired";
+}
+
+
+// ===================================================================
+
+void PolicyFetchResponse::InitAsDefaultInstance() {
+}
+class PolicyFetchResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PolicyFetchResponse>()._has_bits_);
+  static void set_has_error_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_error_message(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_policy_data(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_policy_data_signature(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_new_public_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_new_public_key_signature(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_new_public_key_verification_signature_deprecated(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_new_public_key_verification_data(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_new_public_key_verification_data_signature(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_policy_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_policy_data_signature_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+};
+
+PolicyFetchResponse::PolicyFetchResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PolicyFetchResponse)
+}
+PolicyFetchResponse::PolicyFetchResponse(const PolicyFetchResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_error_message()) {
+    error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+  }
+  policy_data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_data()) {
+    policy_data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_data_);
+  }
+  policy_data_signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_data_signature()) {
+    policy_data_signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_data_signature_);
+  }
+  new_public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_public_key()) {
+    new_public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_);
+  }
+  new_public_key_signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_public_key_signature()) {
+    new_public_key_signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_signature_);
+  }
+  new_public_key_verification_signature_deprecated_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_public_key_verification_signature_deprecated()) {
+    new_public_key_verification_signature_deprecated_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_verification_signature_deprecated_);
+  }
+  new_public_key_verification_data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_public_key_verification_data()) {
+    new_public_key_verification_data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_verification_data_);
+  }
+  new_public_key_verification_data_signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_public_key_verification_data_signature()) {
+    new_public_key_verification_data_signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_verification_data_signature_);
+  }
+  policy_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_type()) {
+    policy_type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_type_);
+  }
+  ::memcpy(&error_code_, &from.error_code_,
+    static_cast<size_t>(reinterpret_cast<char*>(&policy_data_signature_type_) -
+    reinterpret_cast<char*>(&error_code_)) + sizeof(policy_data_signature_type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PolicyFetchResponse)
+}
+
+void PolicyFetchResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PolicyFetchResponse_device_5fmanagement_5fbackend_2eproto.base);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_data_signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_verification_signature_deprecated_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_verification_data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_verification_data_signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&error_code_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&policy_data_signature_type_) -
+      reinterpret_cast<char*>(&error_code_)) + sizeof(policy_data_signature_type_));
+}
+
+PolicyFetchResponse::~PolicyFetchResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PolicyFetchResponse)
+  SharedDtor();
+}
+
+void PolicyFetchResponse::SharedDtor() {
+  error_message_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_data_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_data_signature_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_signature_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_verification_signature_deprecated_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_verification_data_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_verification_data_signature_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_type_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PolicyFetchResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PolicyFetchResponse& PolicyFetchResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PolicyFetchResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PolicyFetchResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PolicyFetchResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      error_message_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      policy_data_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      policy_data_signature_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      new_public_key_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      new_public_key_signature_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      new_public_key_verification_signature_deprecated_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      new_public_key_verification_data_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      new_public_key_verification_data_signature_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000100u) {
+    policy_type_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000600u) {
+    ::memset(&error_code_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&policy_data_signature_type_) -
+        reinterpret_cast<char*>(&error_code_)) + sizeof(policy_data_signature_type_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PolicyFetchResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 error_code = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_error_code(&has_bits);
+          error_code_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string error_message = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_error_message();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes policy_data = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_policy_data();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes policy_data_signature = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_policy_data_signature();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes new_public_key = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_new_public_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes new_public_key_signature = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_new_public_key_signature();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes new_public_key_verification_signature_deprecated = 7 [deprecated = true];
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          auto str = _internal_mutable_new_public_key_verification_signature_deprecated();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes new_public_key_verification_data = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_new_public_key_verification_data();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes new_public_key_verification_data_signature = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          auto str = _internal_mutable_new_public_key_verification_data_signature();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string policy_type = 10 [deprecated = true];
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          auto str = _internal_mutable_policy_type();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyFetchRequest.SignatureType policy_data_signature_type = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyFetchRequest_SignatureType_IsValid(val))) {
+            _internal_set_policy_data_signature_type(static_cast<::enterprise_management::PolicyFetchRequest_SignatureType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(11, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PolicyFetchResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PolicyFetchResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 error_code = 1;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_error_code(), target);
+  }
+
+  // optional string error_message = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_error_message(), target);
+  }
+
+  // optional bytes policy_data = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        3, this->_internal_policy_data(), target);
+  }
+
+  // optional bytes policy_data_signature = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteBytesMaybeAliased(
+        4, this->_internal_policy_data_signature(), target);
+  }
+
+  // optional bytes new_public_key = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteBytesMaybeAliased(
+        5, this->_internal_new_public_key(), target);
+  }
+
+  // optional bytes new_public_key_signature = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteBytesMaybeAliased(
+        6, this->_internal_new_public_key_signature(), target);
+  }
+
+  // optional bytes new_public_key_verification_signature_deprecated = 7 [deprecated = true];
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteBytesMaybeAliased(
+        7, this->_internal_new_public_key_verification_signature_deprecated(), target);
+  }
+
+  // optional bytes new_public_key_verification_data = 8;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->WriteBytesMaybeAliased(
+        8, this->_internal_new_public_key_verification_data(), target);
+  }
+
+  // optional bytes new_public_key_verification_data_signature = 9;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->WriteBytesMaybeAliased(
+        9, this->_internal_new_public_key_verification_data_signature(), target);
+  }
+
+  // optional string policy_type = 10 [deprecated = true];
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->WriteStringMaybeAliased(
+        10, this->_internal_policy_type(), target);
+  }
+
+  // optional .enterprise_management.PolicyFetchRequest.SignatureType policy_data_signature_type = 11;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      11, this->_internal_policy_data_signature_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PolicyFetchResponse)
+  return target;
+}
+
+size_t PolicyFetchResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PolicyFetchResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string error_message = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_error_message());
+    }
+
+    // optional bytes policy_data = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_policy_data());
+    }
+
+    // optional bytes policy_data_signature = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_policy_data_signature());
+    }
+
+    // optional bytes new_public_key = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_new_public_key());
+    }
+
+    // optional bytes new_public_key_signature = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_new_public_key_signature());
+    }
+
+    // optional bytes new_public_key_verification_signature_deprecated = 7 [deprecated = true];
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_new_public_key_verification_signature_deprecated());
+    }
+
+    // optional bytes new_public_key_verification_data = 8;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_new_public_key_verification_data());
+    }
+
+    // optional bytes new_public_key_verification_data_signature = 9;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_new_public_key_verification_data_signature());
+    }
+
+  }
+  if (cached_has_bits & 0x00000700u) {
+    // optional string policy_type = 10 [deprecated = true];
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_type());
+    }
+
+    // optional int32 error_code = 1;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_error_code());
+    }
+
+    // optional .enterprise_management.PolicyFetchRequest.SignatureType policy_data_signature_type = 11;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_policy_data_signature_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PolicyFetchResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PolicyFetchResponse*>(
+      &from));
+}
+
+void PolicyFetchResponse::MergeFrom(const PolicyFetchResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PolicyFetchResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      policy_data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_data_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      policy_data_signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_data_signature_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      new_public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      new_public_key_signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_signature_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      new_public_key_verification_signature_deprecated_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_verification_signature_deprecated_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _has_bits_[0] |= 0x00000040u;
+      new_public_key_verification_data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_verification_data_);
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _has_bits_[0] |= 0x00000080u;
+      new_public_key_verification_data_signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_verification_data_signature_);
+    }
+  }
+  if (cached_has_bits & 0x00000700u) {
+    if (cached_has_bits & 0x00000100u) {
+      _has_bits_[0] |= 0x00000100u;
+      policy_type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_type_);
+    }
+    if (cached_has_bits & 0x00000200u) {
+      error_code_ = from.error_code_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      policy_data_signature_type_ = from.policy_data_signature_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PolicyFetchResponse::CopyFrom(const PolicyFetchResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PolicyFetchResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PolicyFetchResponse::IsInitialized() const {
+  return true;
+}
+
+void PolicyFetchResponse::InternalSwap(PolicyFetchResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  error_message_.Swap(&other->error_message_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_data_.Swap(&other->policy_data_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_data_signature_.Swap(&other->policy_data_signature_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  new_public_key_.Swap(&other->new_public_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  new_public_key_signature_.Swap(&other->new_public_key_signature_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  new_public_key_verification_signature_deprecated_.Swap(&other->new_public_key_verification_signature_deprecated_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  new_public_key_verification_data_.Swap(&other->new_public_key_verification_data_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  new_public_key_verification_data_signature_.Swap(&other->new_public_key_verification_data_signature_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_type_.Swap(&other->policy_type_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(error_code_, other->error_code_);
+  swap(policy_data_signature_type_, other->policy_data_signature_type_);
+}
+
+std::string PolicyFetchResponse::GetTypeName() const {
+  return "enterprise_management.PolicyFetchResponse";
+}
+
+
+// ===================================================================
+
+void DEPRECATEDPolicyPublicKeyAndDomain::InitAsDefaultInstance() {
+}
+class DEPRECATEDPolicyPublicKeyAndDomain::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DEPRECATEDPolicyPublicKeyAndDomain>()._has_bits_);
+  static void set_has_new_public_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_domain(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+DEPRECATEDPolicyPublicKeyAndDomain::DEPRECATEDPolicyPublicKeyAndDomain()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+}
+DEPRECATEDPolicyPublicKeyAndDomain::DEPRECATEDPolicyPublicKeyAndDomain(const DEPRECATEDPolicyPublicKeyAndDomain& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  new_public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_public_key()) {
+    new_public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_);
+  }
+  domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_domain()) {
+    domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.domain_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+}
+
+void DEPRECATEDPolicyPublicKeyAndDomain::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DEPRECATEDPolicyPublicKeyAndDomain_device_5fmanagement_5fbackend_2eproto.base);
+  new_public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DEPRECATEDPolicyPublicKeyAndDomain::~DEPRECATEDPolicyPublicKeyAndDomain() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+  SharedDtor();
+}
+
+void DEPRECATEDPolicyPublicKeyAndDomain::SharedDtor() {
+  new_public_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  domain_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DEPRECATEDPolicyPublicKeyAndDomain::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DEPRECATEDPolicyPublicKeyAndDomain& DEPRECATEDPolicyPublicKeyAndDomain::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DEPRECATEDPolicyPublicKeyAndDomain_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DEPRECATEDPolicyPublicKeyAndDomain::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      new_public_key_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      domain_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DEPRECATEDPolicyPublicKeyAndDomain::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes new_public_key = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_new_public_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string domain = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_domain();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DEPRECATEDPolicyPublicKeyAndDomain::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes new_public_key = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_new_public_key(), target);
+  }
+
+  // optional string domain = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_domain(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+  return target;
+}
+
+size_t DEPRECATEDPolicyPublicKeyAndDomain::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional bytes new_public_key = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_new_public_key());
+    }
+
+    // optional string domain = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_domain());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DEPRECATEDPolicyPublicKeyAndDomain::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DEPRECATEDPolicyPublicKeyAndDomain*>(
+      &from));
+}
+
+void DEPRECATEDPolicyPublicKeyAndDomain::MergeFrom(const DEPRECATEDPolicyPublicKeyAndDomain& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      new_public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.domain_);
+    }
+  }
+}
+
+void DEPRECATEDPolicyPublicKeyAndDomain::CopyFrom(const DEPRECATEDPolicyPublicKeyAndDomain& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DEPRECATEDPolicyPublicKeyAndDomain::IsInitialized() const {
+  return true;
+}
+
+void DEPRECATEDPolicyPublicKeyAndDomain::InternalSwap(DEPRECATEDPolicyPublicKeyAndDomain* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  new_public_key_.Swap(&other->new_public_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  domain_.Swap(&other->domain_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DEPRECATEDPolicyPublicKeyAndDomain::GetTypeName() const {
+  return "enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain";
+}
+
+
+// ===================================================================
+
+void PublicKeyVerificationData::InitAsDefaultInstance() {
+}
+class PublicKeyVerificationData::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PublicKeyVerificationData>()._has_bits_);
+  static void set_has_new_public_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_domain(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_new_public_key_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+PublicKeyVerificationData::PublicKeyVerificationData()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PublicKeyVerificationData)
+}
+PublicKeyVerificationData::PublicKeyVerificationData(const PublicKeyVerificationData& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  new_public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_public_key()) {
+    new_public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_);
+  }
+  domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_domain()) {
+    domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.domain_);
+  }
+  new_public_key_version_ = from.new_public_key_version_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PublicKeyVerificationData)
+}
+
+void PublicKeyVerificationData::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PublicKeyVerificationData_device_5fmanagement_5fbackend_2eproto.base);
+  new_public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_public_key_version_ = 0;
+}
+
+PublicKeyVerificationData::~PublicKeyVerificationData() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PublicKeyVerificationData)
+  SharedDtor();
+}
+
+void PublicKeyVerificationData::SharedDtor() {
+  new_public_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  domain_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PublicKeyVerificationData::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PublicKeyVerificationData& PublicKeyVerificationData::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PublicKeyVerificationData_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PublicKeyVerificationData::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PublicKeyVerificationData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      new_public_key_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      domain_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  new_public_key_version_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PublicKeyVerificationData::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes new_public_key = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_new_public_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string domain = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_domain();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 new_public_key_version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_new_public_key_version(&has_bits);
+          new_public_key_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PublicKeyVerificationData::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PublicKeyVerificationData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes new_public_key = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_new_public_key(), target);
+  }
+
+  // optional string domain = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_domain(), target);
+  }
+
+  // optional int32 new_public_key_version = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_new_public_key_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PublicKeyVerificationData)
+  return target;
+}
+
+size_t PublicKeyVerificationData::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PublicKeyVerificationData)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional bytes new_public_key = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_new_public_key());
+    }
+
+    // optional string domain = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_domain());
+    }
+
+    // optional int32 new_public_key_version = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_new_public_key_version());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PublicKeyVerificationData::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PublicKeyVerificationData*>(
+      &from));
+}
+
+void PublicKeyVerificationData::MergeFrom(const PublicKeyVerificationData& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PublicKeyVerificationData)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      new_public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_public_key_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.domain_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      new_public_key_version_ = from.new_public_key_version_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PublicKeyVerificationData::CopyFrom(const PublicKeyVerificationData& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PublicKeyVerificationData)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PublicKeyVerificationData::IsInitialized() const {
+  return true;
+}
+
+void PublicKeyVerificationData::InternalSwap(PublicKeyVerificationData* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  new_public_key_.Swap(&other->new_public_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  domain_.Swap(&other->domain_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(new_public_key_version_, other->new_public_key_version_);
+}
+
+std::string PublicKeyVerificationData::GetTypeName() const {
+  return "enterprise_management.PublicKeyVerificationData";
+}
+
+
+// ===================================================================
+
+void DevicePolicyRequest::InitAsDefaultInstance() {
+}
+class DevicePolicyRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePolicyRequest>()._has_bits_);
+};
+
+DevicePolicyRequest::DevicePolicyRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePolicyRequest)
+}
+DevicePolicyRequest::DevicePolicyRequest(const DevicePolicyRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      requests_(from.requests_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePolicyRequest)
+}
+
+void DevicePolicyRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DevicePolicyRequest_device_5fmanagement_5fbackend_2eproto.base);
+}
+
+DevicePolicyRequest::~DevicePolicyRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePolicyRequest)
+  SharedDtor();
+}
+
+void DevicePolicyRequest::SharedDtor() {
+}
+
+void DevicePolicyRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePolicyRequest& DevicePolicyRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePolicyRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePolicyRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePolicyRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  requests_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePolicyRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.PolicyFetchRequest requests = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_requests(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePolicyRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePolicyRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.PolicyFetchRequest requests = 3;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_requests_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(3, this->_internal_requests(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePolicyRequest)
+  return target;
+}
+
+size_t DevicePolicyRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePolicyRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.PolicyFetchRequest requests = 3;
+  total_size += 1UL * this->_internal_requests_size();
+  for (const auto& msg : this->requests_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePolicyRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePolicyRequest*>(
+      &from));
+}
+
+void DevicePolicyRequest::MergeFrom(const DevicePolicyRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePolicyRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  requests_.MergeFrom(from.requests_);
+}
+
+void DevicePolicyRequest::CopyFrom(const DevicePolicyRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePolicyRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePolicyRequest::IsInitialized() const {
+  return true;
+}
+
+void DevicePolicyRequest::InternalSwap(DevicePolicyRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  requests_.InternalSwap(&other->requests_);
+}
+
+std::string DevicePolicyRequest::GetTypeName() const {
+  return "enterprise_management.DevicePolicyRequest";
+}
+
+
+// ===================================================================
+
+void DevicePolicyResponse::InitAsDefaultInstance() {
+}
+class DevicePolicyResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePolicyResponse>()._has_bits_);
+};
+
+DevicePolicyResponse::DevicePolicyResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePolicyResponse)
+}
+DevicePolicyResponse::DevicePolicyResponse(const DevicePolicyResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      responses_(from.responses_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePolicyResponse)
+}
+
+void DevicePolicyResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DevicePolicyResponse_device_5fmanagement_5fbackend_2eproto.base);
+}
+
+DevicePolicyResponse::~DevicePolicyResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePolicyResponse)
+  SharedDtor();
+}
+
+void DevicePolicyResponse::SharedDtor() {
+}
+
+void DevicePolicyResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePolicyResponse& DevicePolicyResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePolicyResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePolicyResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePolicyResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  responses_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePolicyResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.PolicyFetchResponse responses = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_responses(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePolicyResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePolicyResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.PolicyFetchResponse responses = 3;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_responses_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(3, this->_internal_responses(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePolicyResponse)
+  return target;
+}
+
+size_t DevicePolicyResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePolicyResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.PolicyFetchResponse responses = 3;
+  total_size += 1UL * this->_internal_responses_size();
+  for (const auto& msg : this->responses_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePolicyResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePolicyResponse*>(
+      &from));
+}
+
+void DevicePolicyResponse::MergeFrom(const DevicePolicyResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePolicyResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  responses_.MergeFrom(from.responses_);
+}
+
+void DevicePolicyResponse::CopyFrom(const DevicePolicyResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePolicyResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePolicyResponse::IsInitialized() const {
+  return true;
+}
+
+void DevicePolicyResponse::InternalSwap(DevicePolicyResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  responses_.InternalSwap(&other->responses_);
+}
+
+std::string DevicePolicyResponse::GetTypeName() const {
+  return "enterprise_management.DevicePolicyResponse";
+}
+
+
+// ===================================================================
+
+void TimePeriod::InitAsDefaultInstance() {
+}
+class TimePeriod::_Internal {
+ public:
+  using HasBits = decltype(std::declval<TimePeriod>()._has_bits_);
+  static void set_has_start_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_end_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+TimePeriod::TimePeriod()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.TimePeriod)
+}
+TimePeriod::TimePeriod(const TimePeriod& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&start_timestamp_, &from.start_timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&end_timestamp_) -
+    reinterpret_cast<char*>(&start_timestamp_)) + sizeof(end_timestamp_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.TimePeriod)
+}
+
+void TimePeriod::SharedCtor() {
+  ::memset(&start_timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&end_timestamp_) -
+      reinterpret_cast<char*>(&start_timestamp_)) + sizeof(end_timestamp_));
+}
+
+TimePeriod::~TimePeriod() {
+  // @@protoc_insertion_point(destructor:enterprise_management.TimePeriod)
+  SharedDtor();
+}
+
+void TimePeriod::SharedDtor() {
+}
+
+void TimePeriod::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const TimePeriod& TimePeriod::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_TimePeriod_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void TimePeriod::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.TimePeriod)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&start_timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&end_timestamp_) -
+        reinterpret_cast<char*>(&start_timestamp_)) + sizeof(end_timestamp_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* TimePeriod::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 start_timestamp = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_start_timestamp(&has_bits);
+          start_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 end_timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_end_timestamp(&has_bits);
+          end_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* TimePeriod::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.TimePeriod)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 start_timestamp = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_start_timestamp(), target);
+  }
+
+  // optional int64 end_timestamp = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_end_timestamp(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.TimePeriod)
+  return target;
+}
+
+size_t TimePeriod::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.TimePeriod)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int64 start_timestamp = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_start_timestamp());
+    }
+
+    // optional int64 end_timestamp = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_end_timestamp());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void TimePeriod::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const TimePeriod*>(
+      &from));
+}
+
+void TimePeriod::MergeFrom(const TimePeriod& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.TimePeriod)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      start_timestamp_ = from.start_timestamp_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      end_timestamp_ = from.end_timestamp_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void TimePeriod::CopyFrom(const TimePeriod& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.TimePeriod)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool TimePeriod::IsInitialized() const {
+  return true;
+}
+
+void TimePeriod::InternalSwap(TimePeriod* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(start_timestamp_, other->start_timestamp_);
+  swap(end_timestamp_, other->end_timestamp_);
+}
+
+std::string TimePeriod::GetTypeName() const {
+  return "enterprise_management.TimePeriod";
+}
+
+
+// ===================================================================
+
+void ActiveTimePeriod::InitAsDefaultInstance() {
+  ::enterprise_management::_ActiveTimePeriod_default_instance_._instance.get_mutable()->time_period_ = const_cast< ::enterprise_management::TimePeriod*>(
+      ::enterprise_management::TimePeriod::internal_default_instance());
+}
+class ActiveTimePeriod::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ActiveTimePeriod>()._has_bits_);
+  static const ::enterprise_management::TimePeriod& time_period(const ActiveTimePeriod* msg);
+  static void set_has_time_period(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_active_duration(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_user_email(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_session_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+const ::enterprise_management::TimePeriod&
+ActiveTimePeriod::_Internal::time_period(const ActiveTimePeriod* msg) {
+  return *msg->time_period_;
+}
+ActiveTimePeriod::ActiveTimePeriod()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ActiveTimePeriod)
+}
+ActiveTimePeriod::ActiveTimePeriod(const ActiveTimePeriod& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  user_email_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_user_email()) {
+    user_email_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_email_);
+  }
+  if (from._internal_has_time_period()) {
+    time_period_ = new ::enterprise_management::TimePeriod(*from.time_period_);
+  } else {
+    time_period_ = nullptr;
+  }
+  ::memcpy(&active_duration_, &from.active_duration_,
+    static_cast<size_t>(reinterpret_cast<char*>(&session_type_) -
+    reinterpret_cast<char*>(&active_duration_)) + sizeof(session_type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ActiveTimePeriod)
+}
+
+void ActiveTimePeriod::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ActiveTimePeriod_device_5fmanagement_5fbackend_2eproto.base);
+  user_email_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&time_period_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&session_type_) -
+      reinterpret_cast<char*>(&time_period_)) + sizeof(session_type_));
+}
+
+ActiveTimePeriod::~ActiveTimePeriod() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ActiveTimePeriod)
+  SharedDtor();
+}
+
+void ActiveTimePeriod::SharedDtor() {
+  user_email_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete time_period_;
+}
+
+void ActiveTimePeriod::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ActiveTimePeriod& ActiveTimePeriod::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ActiveTimePeriod_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ActiveTimePeriod::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ActiveTimePeriod)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      user_email_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(time_period_ != nullptr);
+      time_period_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000000cu) {
+    ::memset(&active_duration_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&session_type_) -
+        reinterpret_cast<char*>(&active_duration_)) + sizeof(session_type_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ActiveTimePeriod::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.TimePeriod time_period = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_time_period(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 active_duration = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_active_duration(&has_bits);
+          active_duration_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string user_email = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_user_email();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ActiveTimePeriod.SessionType session_type = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ActiveTimePeriod_SessionType_IsValid(val))) {
+            _internal_set_session_type(static_cast<::enterprise_management::ActiveTimePeriod_SessionType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ActiveTimePeriod::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ActiveTimePeriod)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.TimePeriod time_period = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::time_period(this), target, stream);
+  }
+
+  // optional int32 active_duration = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_active_duration(), target);
+  }
+
+  // optional string user_email = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_user_email(), target);
+  }
+
+  // optional .enterprise_management.ActiveTimePeriod.SessionType session_type = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_session_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ActiveTimePeriod)
+  return target;
+}
+
+size_t ActiveTimePeriod::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ActiveTimePeriod)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string user_email = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_user_email());
+    }
+
+    // optional .enterprise_management.TimePeriod time_period = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *time_period_);
+    }
+
+    // optional int32 active_duration = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_active_duration());
+    }
+
+    // optional .enterprise_management.ActiveTimePeriod.SessionType session_type = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_session_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ActiveTimePeriod::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ActiveTimePeriod*>(
+      &from));
+}
+
+void ActiveTimePeriod::MergeFrom(const ActiveTimePeriod& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ActiveTimePeriod)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      user_email_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_email_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_time_period()->::enterprise_management::TimePeriod::MergeFrom(from._internal_time_period());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      active_duration_ = from.active_duration_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      session_type_ = from.session_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ActiveTimePeriod::CopyFrom(const ActiveTimePeriod& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ActiveTimePeriod)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ActiveTimePeriod::IsInitialized() const {
+  return true;
+}
+
+void ActiveTimePeriod::InternalSwap(ActiveTimePeriod* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  user_email_.Swap(&other->user_email_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(time_period_, other->time_period_);
+  swap(active_duration_, other->active_duration_);
+  swap(session_type_, other->session_type_);
+}
+
+std::string ActiveTimePeriod::GetTypeName() const {
+  return "enterprise_management.ActiveTimePeriod";
+}
+
+
+// ===================================================================
+
+void NetworkInterface::InitAsDefaultInstance() {
+}
+class NetworkInterface::_Internal {
+ public:
+  using HasBits = decltype(std::declval<NetworkInterface>()._has_bits_);
+  static void set_has_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_mac_address(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_meid(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_imei(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_device_path(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_iccid(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_mdn(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+};
+
+NetworkInterface::NetworkInterface()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.NetworkInterface)
+}
+NetworkInterface::NetworkInterface(const NetworkInterface& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      eids_(from.eids_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  mac_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_mac_address()) {
+    mac_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.mac_address_);
+  }
+  meid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_meid()) {
+    meid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.meid_);
+  }
+  imei_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_imei()) {
+    imei_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.imei_);
+  }
+  device_path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_path()) {
+    device_path_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_path_);
+  }
+  iccid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_iccid()) {
+    iccid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.iccid_);
+  }
+  mdn_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_mdn()) {
+    mdn_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.mdn_);
+  }
+  type_ = from.type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.NetworkInterface)
+}
+
+void NetworkInterface::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_NetworkInterface_device_5fmanagement_5fbackend_2eproto.base);
+  mac_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  meid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  imei_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  iccid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  mdn_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  type_ = 0;
+}
+
+NetworkInterface::~NetworkInterface() {
+  // @@protoc_insertion_point(destructor:enterprise_management.NetworkInterface)
+  SharedDtor();
+}
+
+void NetworkInterface::SharedDtor() {
+  mac_address_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  meid_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  imei_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_path_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  iccid_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  mdn_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void NetworkInterface::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const NetworkInterface& NetworkInterface::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_NetworkInterface_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void NetworkInterface::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.NetworkInterface)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  eids_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      mac_address_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      meid_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      imei_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      device_path_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      iccid_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      mdn_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* NetworkInterface::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.NetworkInterface.NetworkDeviceType type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::NetworkInterface_NetworkDeviceType_IsValid(val))) {
+            _internal_set_type(static_cast<::enterprise_management::NetworkInterface_NetworkDeviceType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string mac_address = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_mac_address();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string meid = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_meid();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string imei = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_imei();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_path = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_device_path();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string iccid = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_iccid();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string mdn = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          auto str = _internal_mutable_mdn();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated string eids = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_eids();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* NetworkInterface::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.NetworkInterface)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.NetworkInterface.NetworkDeviceType type = 1;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_type(), target);
+  }
+
+  // optional string mac_address = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_mac_address(), target);
+  }
+
+  // optional string meid = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_meid(), target);
+  }
+
+  // optional string imei = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_imei(), target);
+  }
+
+  // optional string device_path = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_device_path(), target);
+  }
+
+  // optional string iccid = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_iccid(), target);
+  }
+
+  // optional string mdn = 7;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteStringMaybeAliased(
+        7, this->_internal_mdn(), target);
+  }
+
+  // repeated string eids = 8;
+  for (int i = 0, n = this->_internal_eids_size(); i < n; i++) {
+    const auto& s = this->_internal_eids(i);
+    target = stream->WriteString(8, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.NetworkInterface)
+  return target;
+}
+
+size_t NetworkInterface::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.NetworkInterface)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string eids = 8;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(eids_.size());
+  for (int i = 0, n = eids_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      eids_.Get(i));
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    // optional string mac_address = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_mac_address());
+    }
+
+    // optional string meid = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_meid());
+    }
+
+    // optional string imei = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_imei());
+    }
+
+    // optional string device_path = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_path());
+    }
+
+    // optional string iccid = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_iccid());
+    }
+
+    // optional string mdn = 7;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_mdn());
+    }
+
+    // optional .enterprise_management.NetworkInterface.NetworkDeviceType type = 1;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void NetworkInterface::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const NetworkInterface*>(
+      &from));
+}
+
+void NetworkInterface::MergeFrom(const NetworkInterface& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.NetworkInterface)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  eids_.MergeFrom(from.eids_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      mac_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.mac_address_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      meid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.meid_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      imei_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.imei_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      device_path_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_path_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      iccid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.iccid_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      mdn_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.mdn_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      type_ = from.type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void NetworkInterface::CopyFrom(const NetworkInterface& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.NetworkInterface)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool NetworkInterface::IsInitialized() const {
+  return true;
+}
+
+void NetworkInterface::InternalSwap(NetworkInterface* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  eids_.InternalSwap(&other->eids_);
+  mac_address_.Swap(&other->mac_address_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  meid_.Swap(&other->meid_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  imei_.Swap(&other->imei_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_path_.Swap(&other->device_path_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  iccid_.Swap(&other->iccid_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  mdn_.Swap(&other->mdn_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(type_, other->type_);
+}
+
+std::string NetworkInterface::GetTypeName() const {
+  return "enterprise_management.NetworkInterface";
+}
+
+
+// ===================================================================
+
+void NetworkState::InitAsDefaultInstance() {
+}
+class NetworkState::_Internal {
+ public:
+  using HasBits = decltype(std::declval<NetworkState>()._has_bits_);
+  static void set_has_device_path(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_connection_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_signal_strength(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_ip_address(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_gateway(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+NetworkState::NetworkState()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.NetworkState)
+}
+NetworkState::NetworkState(const NetworkState& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_path()) {
+    device_path_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_path_);
+  }
+  ip_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_ip_address()) {
+    ip_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.ip_address_);
+  }
+  gateway_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_gateway()) {
+    gateway_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gateway_);
+  }
+  ::memcpy(&connection_state_, &from.connection_state_,
+    static_cast<size_t>(reinterpret_cast<char*>(&signal_strength_) -
+    reinterpret_cast<char*>(&connection_state_)) + sizeof(signal_strength_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.NetworkState)
+}
+
+void NetworkState::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_NetworkState_device_5fmanagement_5fbackend_2eproto.base);
+  device_path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ip_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  gateway_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&connection_state_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&signal_strength_) -
+      reinterpret_cast<char*>(&connection_state_)) + sizeof(signal_strength_));
+}
+
+NetworkState::~NetworkState() {
+  // @@protoc_insertion_point(destructor:enterprise_management.NetworkState)
+  SharedDtor();
+}
+
+void NetworkState::SharedDtor() {
+  device_path_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ip_address_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  gateway_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void NetworkState::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const NetworkState& NetworkState::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_NetworkState_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void NetworkState::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.NetworkState)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      device_path_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      ip_address_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      gateway_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000018u) {
+    ::memset(&connection_state_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&signal_strength_) -
+        reinterpret_cast<char*>(&connection_state_)) + sizeof(signal_strength_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* NetworkState::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_path = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_path();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.NetworkState.ConnectionState connection_state = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::NetworkState_ConnectionState_IsValid(val))) {
+            _internal_set_connection_state(static_cast<::enterprise_management::NetworkState_ConnectionState>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 signal_strength = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_signal_strength(&has_bits);
+          signal_strength_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string ip_address = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_ip_address();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string gateway = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_gateway();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* NetworkState::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.NetworkState)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_path = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_path(), target);
+  }
+
+  // optional .enterprise_management.NetworkState.ConnectionState connection_state = 2;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_connection_state(), target);
+  }
+
+  // optional int32 signal_strength = 3;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_signal_strength(), target);
+  }
+
+  // optional string ip_address = 4;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_ip_address(), target);
+  }
+
+  // optional string gateway = 5;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_gateway(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.NetworkState)
+  return target;
+}
+
+size_t NetworkState::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.NetworkState)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string device_path = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_path());
+    }
+
+    // optional string ip_address = 4;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_ip_address());
+    }
+
+    // optional string gateway = 5;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_gateway());
+    }
+
+    // optional .enterprise_management.NetworkState.ConnectionState connection_state = 2;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_connection_state());
+    }
+
+    // optional int32 signal_strength = 3;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_signal_strength());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void NetworkState::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const NetworkState*>(
+      &from));
+}
+
+void NetworkState::MergeFrom(const NetworkState& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.NetworkState)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      device_path_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_path_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      ip_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.ip_address_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      gateway_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gateway_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      connection_state_ = from.connection_state_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      signal_strength_ = from.signal_strength_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void NetworkState::CopyFrom(const NetworkState& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.NetworkState)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool NetworkState::IsInitialized() const {
+  return true;
+}
+
+void NetworkState::InternalSwap(NetworkState* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_path_.Swap(&other->device_path_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  ip_address_.Swap(&other->ip_address_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  gateway_.Swap(&other->gateway_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(connection_state_, other->connection_state_);
+  swap(signal_strength_, other->signal_strength_);
+}
+
+std::string NetworkState::GetTypeName() const {
+  return "enterprise_management.NetworkState";
+}
+
+
+// ===================================================================
+
+void DeviceUser::InitAsDefaultInstance() {
+}
+class DeviceUser::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceUser>()._has_bits_);
+  static void set_has_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_email(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceUser::DeviceUser()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceUser)
+}
+DeviceUser::DeviceUser(const DeviceUser& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  email_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_email()) {
+    email_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.email_);
+  }
+  type_ = from.type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceUser)
+}
+
+void DeviceUser::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceUser_device_5fmanagement_5fbackend_2eproto.base);
+  email_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  type_ = 0;
+}
+
+DeviceUser::~DeviceUser() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceUser)
+  SharedDtor();
+}
+
+void DeviceUser::SharedDtor() {
+  email_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceUser::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceUser& DeviceUser::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceUser_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceUser::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceUser)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    email_.ClearNonDefaultToEmptyNoArena();
+  }
+  type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceUser::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // required .enterprise_management.DeviceUser.UserType type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceUser_UserType_IsValid(val))) {
+            _internal_set_type(static_cast<::enterprise_management::DeviceUser_UserType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string email = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_email();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceUser::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceUser)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // required .enterprise_management.DeviceUser.UserType type = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_type(), target);
+  }
+
+  // optional string email = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_email(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceUser)
+  return target;
+}
+
+size_t DeviceUser::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceUser)
+  size_t total_size = 0;
+
+  // required .enterprise_management.DeviceUser.UserType type = 1;
+  if (_internal_has_type()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_type());
+  }
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string email = 2;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_email());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceUser::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceUser*>(
+      &from));
+}
+
+void DeviceUser::MergeFrom(const DeviceUser& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceUser)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      email_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.email_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      type_ = from.type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceUser::CopyFrom(const DeviceUser& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceUser)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceUser::IsInitialized() const {
+  if ((_has_bits_[0] & 0x00000002) != 0x00000002) return false;
+  return true;
+}
+
+void DeviceUser::InternalSwap(DeviceUser* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  email_.Swap(&other->email_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(type_, other->type_);
+}
+
+std::string DeviceUser::GetTypeName() const {
+  return "enterprise_management.DeviceUser";
+}
+
+
+// ===================================================================
+
+void VolumeInfo::InitAsDefaultInstance() {
+}
+class VolumeInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<VolumeInfo>()._has_bits_);
+  static void set_has_volume_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_storage_total(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_storage_free(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+VolumeInfo::VolumeInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.VolumeInfo)
+}
+VolumeInfo::VolumeInfo(const VolumeInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  volume_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_volume_id()) {
+    volume_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.volume_id_);
+  }
+  ::memcpy(&storage_total_, &from.storage_total_,
+    static_cast<size_t>(reinterpret_cast<char*>(&storage_free_) -
+    reinterpret_cast<char*>(&storage_total_)) + sizeof(storage_free_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.VolumeInfo)
+}
+
+void VolumeInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_VolumeInfo_device_5fmanagement_5fbackend_2eproto.base);
+  volume_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&storage_total_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&storage_free_) -
+      reinterpret_cast<char*>(&storage_total_)) + sizeof(storage_free_));
+}
+
+VolumeInfo::~VolumeInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.VolumeInfo)
+  SharedDtor();
+}
+
+void VolumeInfo::SharedDtor() {
+  volume_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void VolumeInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const VolumeInfo& VolumeInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_VolumeInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void VolumeInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.VolumeInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    volume_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&storage_total_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&storage_free_) -
+        reinterpret_cast<char*>(&storage_total_)) + sizeof(storage_free_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* VolumeInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string volume_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_volume_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 storage_total = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_storage_total(&has_bits);
+          storage_total_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 storage_free = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_storage_free(&has_bits);
+          storage_free_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* VolumeInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.VolumeInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string volume_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_volume_id(), target);
+  }
+
+  // optional int64 storage_total = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_storage_total(), target);
+  }
+
+  // optional int64 storage_free = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_storage_free(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.VolumeInfo)
+  return target;
+}
+
+size_t VolumeInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.VolumeInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string volume_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_volume_id());
+    }
+
+    // optional int64 storage_total = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_storage_total());
+    }
+
+    // optional int64 storage_free = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_storage_free());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void VolumeInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const VolumeInfo*>(
+      &from));
+}
+
+void VolumeInfo::MergeFrom(const VolumeInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.VolumeInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      volume_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.volume_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      storage_total_ = from.storage_total_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      storage_free_ = from.storage_free_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void VolumeInfo::CopyFrom(const VolumeInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.VolumeInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool VolumeInfo::IsInitialized() const {
+  return true;
+}
+
+void VolumeInfo::InternalSwap(VolumeInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  volume_id_.Swap(&other->volume_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(storage_total_, other->storage_total_);
+  swap(storage_free_, other->storage_free_);
+}
+
+std::string VolumeInfo::GetTypeName() const {
+  return "enterprise_management.VolumeInfo";
+}
+
+
+// ===================================================================
+
+void CpuUtilizationInfo::InitAsDefaultInstance() {
+}
+class CpuUtilizationInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CpuUtilizationInfo>()._has_bits_);
+  static void set_has_cpu_utilization_pct(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+CpuUtilizationInfo::CpuUtilizationInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CpuUtilizationInfo)
+}
+CpuUtilizationInfo::CpuUtilizationInfo(const CpuUtilizationInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&timestamp_, &from.timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&cpu_utilization_pct_) -
+    reinterpret_cast<char*>(&timestamp_)) + sizeof(cpu_utilization_pct_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CpuUtilizationInfo)
+}
+
+void CpuUtilizationInfo::SharedCtor() {
+  ::memset(&timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&cpu_utilization_pct_) -
+      reinterpret_cast<char*>(&timestamp_)) + sizeof(cpu_utilization_pct_));
+}
+
+CpuUtilizationInfo::~CpuUtilizationInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CpuUtilizationInfo)
+  SharedDtor();
+}
+
+void CpuUtilizationInfo::SharedDtor() {
+}
+
+void CpuUtilizationInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CpuUtilizationInfo& CpuUtilizationInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CpuUtilizationInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CpuUtilizationInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CpuUtilizationInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&cpu_utilization_pct_) -
+        reinterpret_cast<char*>(&timestamp_)) + sizeof(cpu_utilization_pct_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CpuUtilizationInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 cpu_utilization_pct = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_cpu_utilization_pct(&has_bits);
+          cpu_utilization_pct_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CpuUtilizationInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CpuUtilizationInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 cpu_utilization_pct = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_cpu_utilization_pct(), target);
+  }
+
+  // optional int64 timestamp = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_timestamp(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CpuUtilizationInfo)
+  return target;
+}
+
+size_t CpuUtilizationInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CpuUtilizationInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int64 timestamp = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+    // optional int32 cpu_utilization_pct = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_cpu_utilization_pct());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CpuUtilizationInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CpuUtilizationInfo*>(
+      &from));
+}
+
+void CpuUtilizationInfo::MergeFrom(const CpuUtilizationInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CpuUtilizationInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      timestamp_ = from.timestamp_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      cpu_utilization_pct_ = from.cpu_utilization_pct_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CpuUtilizationInfo::CopyFrom(const CpuUtilizationInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CpuUtilizationInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CpuUtilizationInfo::IsInitialized() const {
+  return true;
+}
+
+void CpuUtilizationInfo::InternalSwap(CpuUtilizationInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(timestamp_, other->timestamp_);
+  swap(cpu_utilization_pct_, other->cpu_utilization_pct_);
+}
+
+std::string CpuUtilizationInfo::GetTypeName() const {
+  return "enterprise_management.CpuUtilizationInfo";
+}
+
+
+// ===================================================================
+
+void SystemFreeRamInfo::InitAsDefaultInstance() {
+}
+class SystemFreeRamInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemFreeRamInfo>()._has_bits_);
+  static void set_has_size_in_bytes(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+SystemFreeRamInfo::SystemFreeRamInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SystemFreeRamInfo)
+}
+SystemFreeRamInfo::SystemFreeRamInfo(const SystemFreeRamInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&size_in_bytes_, &from.size_in_bytes_,
+    static_cast<size_t>(reinterpret_cast<char*>(&timestamp_) -
+    reinterpret_cast<char*>(&size_in_bytes_)) + sizeof(timestamp_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SystemFreeRamInfo)
+}
+
+void SystemFreeRamInfo::SharedCtor() {
+  ::memset(&size_in_bytes_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&timestamp_) -
+      reinterpret_cast<char*>(&size_in_bytes_)) + sizeof(timestamp_));
+}
+
+SystemFreeRamInfo::~SystemFreeRamInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SystemFreeRamInfo)
+  SharedDtor();
+}
+
+void SystemFreeRamInfo::SharedDtor() {
+}
+
+void SystemFreeRamInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemFreeRamInfo& SystemFreeRamInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemFreeRamInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemFreeRamInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SystemFreeRamInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&size_in_bytes_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&timestamp_) -
+        reinterpret_cast<char*>(&size_in_bytes_)) + sizeof(timestamp_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemFreeRamInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 size_in_bytes = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_size_in_bytes(&has_bits);
+          size_in_bytes_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemFreeRamInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SystemFreeRamInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 size_in_bytes = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_size_in_bytes(), target);
+  }
+
+  // optional int64 timestamp = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_timestamp(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SystemFreeRamInfo)
+  return target;
+}
+
+size_t SystemFreeRamInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SystemFreeRamInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int64 size_in_bytes = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_size_in_bytes());
+    }
+
+    // optional int64 timestamp = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemFreeRamInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemFreeRamInfo*>(
+      &from));
+}
+
+void SystemFreeRamInfo::MergeFrom(const SystemFreeRamInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SystemFreeRamInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      size_in_bytes_ = from.size_in_bytes_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      timestamp_ = from.timestamp_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemFreeRamInfo::CopyFrom(const SystemFreeRamInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SystemFreeRamInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemFreeRamInfo::IsInitialized() const {
+  return true;
+}
+
+void SystemFreeRamInfo::InternalSwap(SystemFreeRamInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(size_in_bytes_, other->size_in_bytes_);
+  swap(timestamp_, other->timestamp_);
+}
+
+std::string SystemFreeRamInfo::GetTypeName() const {
+  return "enterprise_management.SystemFreeRamInfo";
+}
+
+
+// ===================================================================
+
+void CPUTempInfo::InitAsDefaultInstance() {
+}
+class CPUTempInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CPUTempInfo>()._has_bits_);
+  static void set_has_cpu_label(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_cpu_temp(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+CPUTempInfo::CPUTempInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CPUTempInfo)
+}
+CPUTempInfo::CPUTempInfo(const CPUTempInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  cpu_label_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_cpu_label()) {
+    cpu_label_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cpu_label_);
+  }
+  ::memcpy(&timestamp_, &from.timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&cpu_temp_) -
+    reinterpret_cast<char*>(&timestamp_)) + sizeof(cpu_temp_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CPUTempInfo)
+}
+
+void CPUTempInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CPUTempInfo_device_5fmanagement_5fbackend_2eproto.base);
+  cpu_label_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&cpu_temp_) -
+      reinterpret_cast<char*>(&timestamp_)) + sizeof(cpu_temp_));
+}
+
+CPUTempInfo::~CPUTempInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CPUTempInfo)
+  SharedDtor();
+}
+
+void CPUTempInfo::SharedDtor() {
+  cpu_label_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CPUTempInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CPUTempInfo& CPUTempInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CPUTempInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CPUTempInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CPUTempInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    cpu_label_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&cpu_temp_) -
+        reinterpret_cast<char*>(&timestamp_)) + sizeof(cpu_temp_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CPUTempInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string cpu_label = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_cpu_label();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 cpu_temp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_cpu_temp(&has_bits);
+          cpu_temp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 timestamp = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CPUTempInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CPUTempInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string cpu_label = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_cpu_label(), target);
+  }
+
+  // optional int32 cpu_temp = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_cpu_temp(), target);
+  }
+
+  // optional int64 timestamp = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_timestamp(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CPUTempInfo)
+  return target;
+}
+
+size_t CPUTempInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CPUTempInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string cpu_label = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_cpu_label());
+    }
+
+    // optional int64 timestamp = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+    // optional int32 cpu_temp = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_cpu_temp());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CPUTempInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CPUTempInfo*>(
+      &from));
+}
+
+void CPUTempInfo::MergeFrom(const CPUTempInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CPUTempInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      cpu_label_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cpu_label_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      timestamp_ = from.timestamp_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      cpu_temp_ = from.cpu_temp_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CPUTempInfo::CopyFrom(const CPUTempInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CPUTempInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CPUTempInfo::IsInitialized() const {
+  return true;
+}
+
+void CPUTempInfo::InternalSwap(CPUTempInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  cpu_label_.Swap(&other->cpu_label_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(timestamp_, other->timestamp_);
+  swap(cpu_temp_, other->cpu_temp_);
+}
+
+std::string CPUTempInfo::GetTypeName() const {
+  return "enterprise_management.CPUTempInfo";
+}
+
+
+// ===================================================================
+
+void StatefulPartitionInfo::InitAsDefaultInstance() {
+}
+class StatefulPartitionInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StatefulPartitionInfo>()._has_bits_);
+  static void set_has_available_space(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_total_space(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_filesystem(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_mount_source(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+StatefulPartitionInfo::StatefulPartitionInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.StatefulPartitionInfo)
+}
+StatefulPartitionInfo::StatefulPartitionInfo(const StatefulPartitionInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  filesystem_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_filesystem()) {
+    filesystem_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.filesystem_);
+  }
+  mount_source_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_mount_source()) {
+    mount_source_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.mount_source_);
+  }
+  ::memcpy(&available_space_, &from.available_space_,
+    static_cast<size_t>(reinterpret_cast<char*>(&total_space_) -
+    reinterpret_cast<char*>(&available_space_)) + sizeof(total_space_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.StatefulPartitionInfo)
+}
+
+void StatefulPartitionInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StatefulPartitionInfo_device_5fmanagement_5fbackend_2eproto.base);
+  filesystem_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  mount_source_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&available_space_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&total_space_) -
+      reinterpret_cast<char*>(&available_space_)) + sizeof(total_space_));
+}
+
+StatefulPartitionInfo::~StatefulPartitionInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.StatefulPartitionInfo)
+  SharedDtor();
+}
+
+void StatefulPartitionInfo::SharedDtor() {
+  filesystem_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  mount_source_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void StatefulPartitionInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StatefulPartitionInfo& StatefulPartitionInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StatefulPartitionInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StatefulPartitionInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.StatefulPartitionInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      filesystem_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      mount_source_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000000cu) {
+    ::memset(&available_space_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&total_space_) -
+        reinterpret_cast<char*>(&available_space_)) + sizeof(total_space_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StatefulPartitionInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint64 available_space = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_available_space(&has_bits);
+          available_space_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 total_space = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_total_space(&has_bits);
+          total_space_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string filesystem = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_filesystem();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string mount_source = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_mount_source();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StatefulPartitionInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.StatefulPartitionInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint64 available_space = 1;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(1, this->_internal_available_space(), target);
+  }
+
+  // optional uint64 total_space = 2;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(2, this->_internal_total_space(), target);
+  }
+
+  // optional string filesystem = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_filesystem(), target);
+  }
+
+  // optional string mount_source = 4;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_mount_source(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.StatefulPartitionInfo)
+  return target;
+}
+
+size_t StatefulPartitionInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.StatefulPartitionInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string filesystem = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_filesystem());
+    }
+
+    // optional string mount_source = 4;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_mount_source());
+    }
+
+    // optional uint64 available_space = 1;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_available_space());
+    }
+
+    // optional uint64 total_space = 2;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_total_space());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StatefulPartitionInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StatefulPartitionInfo*>(
+      &from));
+}
+
+void StatefulPartitionInfo::MergeFrom(const StatefulPartitionInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.StatefulPartitionInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      filesystem_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.filesystem_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      mount_source_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.mount_source_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      available_space_ = from.available_space_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      total_space_ = from.total_space_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void StatefulPartitionInfo::CopyFrom(const StatefulPartitionInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.StatefulPartitionInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StatefulPartitionInfo::IsInitialized() const {
+  return true;
+}
+
+void StatefulPartitionInfo::InternalSwap(StatefulPartitionInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  filesystem_.Swap(&other->filesystem_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  mount_source_.Swap(&other->mount_source_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(available_space_, other->available_space_);
+  swap(total_space_, other->total_space_);
+}
+
+std::string StatefulPartitionInfo::GetTypeName() const {
+  return "enterprise_management.StatefulPartitionInfo";
+}
+
+
+// ===================================================================
+
+void BatterySample::InitAsDefaultInstance() {
+}
+class BatterySample::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BatterySample>()._has_bits_);
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_voltage(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_remaining_capacity(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_temperature(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_discharge_rate(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_charge_rate(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_current(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+BatterySample::BatterySample()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BatterySample)
+}
+BatterySample::BatterySample(const BatterySample& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  status_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_status()) {
+    status_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.status_);
+  }
+  ::memcpy(&timestamp_, &from.timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&charge_rate_) -
+    reinterpret_cast<char*>(&timestamp_)) + sizeof(charge_rate_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BatterySample)
+}
+
+void BatterySample::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BatterySample_device_5fmanagement_5fbackend_2eproto.base);
+  status_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&charge_rate_) -
+      reinterpret_cast<char*>(&timestamp_)) + sizeof(charge_rate_));
+}
+
+BatterySample::~BatterySample() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BatterySample)
+  SharedDtor();
+}
+
+void BatterySample::SharedDtor() {
+  status_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void BatterySample::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BatterySample& BatterySample::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BatterySample_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BatterySample::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BatterySample)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    status_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x000000feu) {
+    ::memset(&timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&charge_rate_) -
+        reinterpret_cast<char*>(&timestamp_)) + sizeof(charge_rate_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BatterySample::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 timestamp = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 voltage = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_voltage(&has_bits);
+          voltage_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 remaining_capacity = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_remaining_capacity(&has_bits);
+          remaining_capacity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 temperature = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_temperature(&has_bits);
+          temperature_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 discharge_rate = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_discharge_rate(&has_bits);
+          discharge_rate_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 charge_rate = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_charge_rate(&has_bits);
+          charge_rate_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 current = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_current(&has_bits);
+          current_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string status = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_status();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BatterySample::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BatterySample)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 timestamp = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_timestamp(), target);
+  }
+
+  // optional int64 voltage = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_voltage(), target);
+  }
+
+  // optional int64 remaining_capacity = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_remaining_capacity(), target);
+  }
+
+  // optional int32 temperature = 4;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_temperature(), target);
+  }
+
+  // optional int32 discharge_rate = 5;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_discharge_rate(), target);
+  }
+
+  // optional int32 charge_rate = 6;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_charge_rate(), target);
+  }
+
+  // optional int64 current = 7;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(7, this->_internal_current(), target);
+  }
+
+  // optional string status = 8;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        8, this->_internal_status(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BatterySample)
+  return target;
+}
+
+size_t BatterySample::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BatterySample)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string status = 8;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_status());
+    }
+
+    // optional int64 timestamp = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+    // optional int64 voltage = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_voltage());
+    }
+
+    // optional int64 remaining_capacity = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_remaining_capacity());
+    }
+
+    // optional int32 temperature = 4;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_temperature());
+    }
+
+    // optional int32 discharge_rate = 5;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_discharge_rate());
+    }
+
+    // optional int64 current = 7;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_current());
+    }
+
+    // optional int32 charge_rate = 6;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_charge_rate());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BatterySample::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BatterySample*>(
+      &from));
+}
+
+void BatterySample::MergeFrom(const BatterySample& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BatterySample)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      status_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.status_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      timestamp_ = from.timestamp_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      voltage_ = from.voltage_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      remaining_capacity_ = from.remaining_capacity_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      temperature_ = from.temperature_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      discharge_rate_ = from.discharge_rate_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      current_ = from.current_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      charge_rate_ = from.charge_rate_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void BatterySample::CopyFrom(const BatterySample& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BatterySample)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BatterySample::IsInitialized() const {
+  return true;
+}
+
+void BatterySample::InternalSwap(BatterySample* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  status_.Swap(&other->status_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(timestamp_, other->timestamp_);
+  swap(voltage_, other->voltage_);
+  swap(remaining_capacity_, other->remaining_capacity_);
+  swap(temperature_, other->temperature_);
+  swap(discharge_rate_, other->discharge_rate_);
+  swap(current_, other->current_);
+  swap(charge_rate_, other->charge_rate_);
+}
+
+std::string BatterySample::GetTypeName() const {
+  return "enterprise_management.BatterySample";
+}
+
+
+// ===================================================================
+
+void BatteryInfo::InitAsDefaultInstance() {
+}
+class BatteryInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BatteryInfo>()._has_bits_);
+  static void set_has_serial(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_manufacturer(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_battery_health(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_design_capacity(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_full_charge_capacity(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_cycle_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_design_min_voltage(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_manufacture_date(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_technology(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+BatteryInfo::BatteryInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BatteryInfo)
+}
+BatteryInfo::BatteryInfo(const BatteryInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      samples_(from.samples_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  serial_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_serial()) {
+    serial_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_);
+  }
+  manufacturer_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_manufacturer()) {
+    manufacturer_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacturer_);
+  }
+  battery_health_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_battery_health()) {
+    battery_health_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.battery_health_);
+  }
+  manufacture_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_manufacture_date()) {
+    manufacture_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacture_date_);
+  }
+  technology_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_technology()) {
+    technology_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.technology_);
+  }
+  ::memcpy(&design_capacity_, &from.design_capacity_,
+    static_cast<size_t>(reinterpret_cast<char*>(&design_min_voltage_) -
+    reinterpret_cast<char*>(&design_capacity_)) + sizeof(design_min_voltage_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BatteryInfo)
+}
+
+void BatteryInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BatteryInfo_device_5fmanagement_5fbackend_2eproto.base);
+  serial_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacturer_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  battery_health_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacture_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  technology_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&design_capacity_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&design_min_voltage_) -
+      reinterpret_cast<char*>(&design_capacity_)) + sizeof(design_min_voltage_));
+}
+
+BatteryInfo::~BatteryInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BatteryInfo)
+  SharedDtor();
+}
+
+void BatteryInfo::SharedDtor() {
+  serial_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacturer_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  battery_health_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacture_date_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  technology_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void BatteryInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BatteryInfo& BatteryInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BatteryInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BatteryInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BatteryInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  samples_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      serial_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      manufacturer_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      battery_health_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      manufacture_date_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      technology_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x000000e0u) {
+    ::memset(&design_capacity_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&cycle_count_) -
+        reinterpret_cast<char*>(&design_capacity_)) + sizeof(cycle_count_));
+  }
+  design_min_voltage_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BatteryInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string serial = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_serial();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string manufacturer = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_manufacturer();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string battery_health = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_battery_health();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 design_capacity = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_design_capacity(&has_bits);
+          design_capacity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 full_charge_capacity = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_full_charge_capacity(&has_bits);
+          full_charge_capacity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 cycle_count = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_cycle_count(&has_bits);
+          cycle_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.BatterySample samples = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_samples(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional int32 design_min_voltage = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_design_min_voltage(&has_bits);
+          design_min_voltage_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string manufacture_date = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          auto str = _internal_mutable_manufacture_date();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string technology = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          auto str = _internal_mutable_technology();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BatteryInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BatteryInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string serial = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_serial(), target);
+  }
+
+  // optional string manufacturer = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_manufacturer(), target);
+  }
+
+  // optional string battery_health = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_battery_health(), target);
+  }
+
+  // optional int64 design_capacity = 4;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_design_capacity(), target);
+  }
+
+  // optional int64 full_charge_capacity = 5;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(5, this->_internal_full_charge_capacity(), target);
+  }
+
+  // optional int32 cycle_count = 6;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_cycle_count(), target);
+  }
+
+  // repeated .enterprise_management.BatterySample samples = 7;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_samples_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(7, this->_internal_samples(i), target, stream);
+  }
+
+  // optional int32 design_min_voltage = 9;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(9, this->_internal_design_min_voltage(), target);
+  }
+
+  // optional string manufacture_date = 10;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        10, this->_internal_manufacture_date(), target);
+  }
+
+  // optional string technology = 11;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        11, this->_internal_technology(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BatteryInfo)
+  return target;
+}
+
+size_t BatteryInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BatteryInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.BatterySample samples = 7;
+  total_size += 1UL * this->_internal_samples_size();
+  for (const auto& msg : this->samples_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string serial = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_serial());
+    }
+
+    // optional string manufacturer = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_manufacturer());
+    }
+
+    // optional string battery_health = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_battery_health());
+    }
+
+    // optional string manufacture_date = 10;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_manufacture_date());
+    }
+
+    // optional string technology = 11;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_technology());
+    }
+
+    // optional int64 design_capacity = 4;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_design_capacity());
+    }
+
+    // optional int64 full_charge_capacity = 5;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_full_charge_capacity());
+    }
+
+    // optional int32 cycle_count = 6;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_cycle_count());
+    }
+
+  }
+  // optional int32 design_min_voltage = 9;
+  if (cached_has_bits & 0x00000100u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_design_min_voltage());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BatteryInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BatteryInfo*>(
+      &from));
+}
+
+void BatteryInfo::MergeFrom(const BatteryInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BatteryInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  samples_.MergeFrom(from.samples_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      serial_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      manufacturer_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacturer_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      battery_health_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.battery_health_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      manufacture_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacture_date_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      technology_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.technology_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      design_capacity_ = from.design_capacity_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      full_charge_capacity_ = from.full_charge_capacity_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      cycle_count_ = from.cycle_count_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00000100u) {
+    _internal_set_design_min_voltage(from._internal_design_min_voltage());
+  }
+}
+
+void BatteryInfo::CopyFrom(const BatteryInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BatteryInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BatteryInfo::IsInitialized() const {
+  return true;
+}
+
+void BatteryInfo::InternalSwap(BatteryInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  samples_.InternalSwap(&other->samples_);
+  serial_.Swap(&other->serial_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  manufacturer_.Swap(&other->manufacturer_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  battery_health_.Swap(&other->battery_health_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  manufacture_date_.Swap(&other->manufacture_date_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  technology_.Swap(&other->technology_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(design_capacity_, other->design_capacity_);
+  swap(full_charge_capacity_, other->full_charge_capacity_);
+  swap(cycle_count_, other->cycle_count_);
+  swap(design_min_voltage_, other->design_min_voltage_);
+}
+
+std::string BatteryInfo::GetTypeName() const {
+  return "enterprise_management.BatteryInfo";
+}
+
+
+// ===================================================================
+
+void PowerStatus::InitAsDefaultInstance() {
+}
+class PowerStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PowerStatus>()._has_bits_);
+  static void set_has_power_source(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+PowerStatus::PowerStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PowerStatus)
+}
+PowerStatus::PowerStatus(const PowerStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      batteries_(from.batteries_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  power_source_ = from.power_source_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PowerStatus)
+}
+
+void PowerStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PowerStatus_device_5fmanagement_5fbackend_2eproto.base);
+  power_source_ = 0;
+}
+
+PowerStatus::~PowerStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PowerStatus)
+  SharedDtor();
+}
+
+void PowerStatus::SharedDtor() {
+}
+
+void PowerStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PowerStatus& PowerStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PowerStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PowerStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PowerStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  batteries_.Clear();
+  power_source_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PowerStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PowerStatus.PowerSource power_source = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PowerStatus_PowerSource_IsValid(val))) {
+            _internal_set_power_source(static_cast<::enterprise_management::PowerStatus_PowerSource>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.BatteryInfo batteries = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_batteries(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PowerStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PowerStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PowerStatus.PowerSource power_source = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_power_source(), target);
+  }
+
+  // repeated .enterprise_management.BatteryInfo batteries = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_batteries_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_batteries(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PowerStatus)
+  return target;
+}
+
+size_t PowerStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PowerStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.BatteryInfo batteries = 2;
+  total_size += 1UL * this->_internal_batteries_size();
+  for (const auto& msg : this->batteries_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // optional .enterprise_management.PowerStatus.PowerSource power_source = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_power_source());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PowerStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PowerStatus*>(
+      &from));
+}
+
+void PowerStatus::MergeFrom(const PowerStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PowerStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  batteries_.MergeFrom(from.batteries_);
+  if (from._internal_has_power_source()) {
+    _internal_set_power_source(from._internal_power_source());
+  }
+}
+
+void PowerStatus::CopyFrom(const PowerStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PowerStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PowerStatus::IsInitialized() const {
+  return true;
+}
+
+void PowerStatus::InternalSwap(PowerStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  batteries_.InternalSwap(&other->batteries_);
+  swap(power_source_, other->power_source_);
+}
+
+std::string PowerStatus::GetTypeName() const {
+  return "enterprise_management.PowerStatus";
+}
+
+
+// ===================================================================
+
+void DiskLifetimeEstimation::InitAsDefaultInstance() {
+}
+class DiskLifetimeEstimation::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DiskLifetimeEstimation>()._has_bits_);
+  static void set_has_slc(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_mlc(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+DiskLifetimeEstimation::DiskLifetimeEstimation()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DiskLifetimeEstimation)
+}
+DiskLifetimeEstimation::DiskLifetimeEstimation(const DiskLifetimeEstimation& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&slc_, &from.slc_,
+    static_cast<size_t>(reinterpret_cast<char*>(&mlc_) -
+    reinterpret_cast<char*>(&slc_)) + sizeof(mlc_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DiskLifetimeEstimation)
+}
+
+void DiskLifetimeEstimation::SharedCtor() {
+  ::memset(&slc_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&mlc_) -
+      reinterpret_cast<char*>(&slc_)) + sizeof(mlc_));
+}
+
+DiskLifetimeEstimation::~DiskLifetimeEstimation() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DiskLifetimeEstimation)
+  SharedDtor();
+}
+
+void DiskLifetimeEstimation::SharedDtor() {
+}
+
+void DiskLifetimeEstimation::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DiskLifetimeEstimation& DiskLifetimeEstimation::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DiskLifetimeEstimation_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DiskLifetimeEstimation::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DiskLifetimeEstimation)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&slc_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&mlc_) -
+        reinterpret_cast<char*>(&slc_)) + sizeof(mlc_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DiskLifetimeEstimation::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 slc = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_slc(&has_bits);
+          slc_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 mlc = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_mlc(&has_bits);
+          mlc_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DiskLifetimeEstimation::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DiskLifetimeEstimation)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 slc = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_slc(), target);
+  }
+
+  // optional int32 mlc = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_mlc(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DiskLifetimeEstimation)
+  return target;
+}
+
+size_t DiskLifetimeEstimation::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DiskLifetimeEstimation)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int32 slc = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_slc());
+    }
+
+    // optional int32 mlc = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_mlc());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DiskLifetimeEstimation::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DiskLifetimeEstimation*>(
+      &from));
+}
+
+void DiskLifetimeEstimation::MergeFrom(const DiskLifetimeEstimation& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DiskLifetimeEstimation)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      slc_ = from.slc_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      mlc_ = from.mlc_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DiskLifetimeEstimation::CopyFrom(const DiskLifetimeEstimation& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DiskLifetimeEstimation)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DiskLifetimeEstimation::IsInitialized() const {
+  return true;
+}
+
+void DiskLifetimeEstimation::InternalSwap(DiskLifetimeEstimation* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(slc_, other->slc_);
+  swap(mlc_, other->mlc_);
+}
+
+std::string DiskLifetimeEstimation::GetTypeName() const {
+  return "enterprise_management.DiskLifetimeEstimation";
+}
+
+
+// ===================================================================
+
+void DiskInfo::InitAsDefaultInstance() {
+}
+class DiskInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DiskInfo>()._has_bits_);
+  static void set_has_serial(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_manufacturer(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_model(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_size(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_health(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_bytes_read_since_last_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_bytes_written_since_last_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_read_time_seconds_since_last_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_write_time_seconds_since_last_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_io_time_seconds_since_last_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_discard_time_seconds_since_last_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_purpose(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+};
+
+DiskInfo::DiskInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DiskInfo)
+}
+DiskInfo::DiskInfo(const DiskInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      volumes_(from.volumes_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  serial_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_serial()) {
+    serial_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_);
+  }
+  manufacturer_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_manufacturer()) {
+    manufacturer_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacturer_);
+  }
+  model_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_model()) {
+    model_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_);
+  }
+  type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_type()) {
+    type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.type_);
+  }
+  health_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_health()) {
+    health_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.health_);
+  }
+  ::memcpy(&size_, &from.size_,
+    static_cast<size_t>(reinterpret_cast<char*>(&purpose_) -
+    reinterpret_cast<char*>(&size_)) + sizeof(purpose_));
+  clear_has_vendor_id();
+  switch (from.vendor_id_case()) {
+    case kNvmeSubsystemVendor: {
+      _internal_set_nvme_subsystem_vendor(from._internal_nvme_subsystem_vendor());
+      break;
+    }
+    case kEmmcOemid: {
+      _internal_set_emmc_oemid(from._internal_emmc_oemid());
+      break;
+    }
+    case kOtherVendor: {
+      _internal_set_other_vendor(from._internal_other_vendor());
+      break;
+    }
+    case VENDOR_ID_NOT_SET: {
+      break;
+    }
+  }
+  clear_has_product_id();
+  switch (from.product_id_case()) {
+    case kNvmeSubsystemDevice: {
+      _internal_set_nvme_subsystem_device(from._internal_nvme_subsystem_device());
+      break;
+    }
+    case kEmmcPnm: {
+      _internal_set_emmc_pnm(from._internal_emmc_pnm());
+      break;
+    }
+    case kOtherProduct: {
+      _internal_set_other_product(from._internal_other_product());
+      break;
+    }
+    case PRODUCT_ID_NOT_SET: {
+      break;
+    }
+  }
+  clear_has_hardware_revision();
+  switch (from.hardware_revision_case()) {
+    case kNvmeHardwareRev: {
+      _internal_set_nvme_hardware_rev(from._internal_nvme_hardware_rev());
+      break;
+    }
+    case kEmmcHardwareRev: {
+      _internal_set_emmc_hardware_rev(from._internal_emmc_hardware_rev());
+      break;
+    }
+    case kOtherHardwareRev: {
+      _internal_set_other_hardware_rev(from._internal_other_hardware_rev());
+      break;
+    }
+    case HARDWARE_REVISION_NOT_SET: {
+      break;
+    }
+  }
+  clear_has_firmware_revision();
+  switch (from.firmware_revision_case()) {
+    case kNvmeFirmwareRev: {
+      _internal_set_nvme_firmware_rev(from._internal_nvme_firmware_rev());
+      break;
+    }
+    case kEmmcFirmwareRev: {
+      _internal_set_emmc_firmware_rev(from._internal_emmc_firmware_rev());
+      break;
+    }
+    case kOtherFirmwareRev: {
+      _internal_set_other_firmware_rev(from._internal_other_firmware_rev());
+      break;
+    }
+    case FIRMWARE_REVISION_NOT_SET: {
+      break;
+    }
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DiskInfo)
+}
+
+void DiskInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DiskInfo_device_5fmanagement_5fbackend_2eproto.base);
+  serial_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacturer_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  health_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&size_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&purpose_) -
+      reinterpret_cast<char*>(&size_)) + sizeof(purpose_));
+  clear_has_vendor_id();
+  clear_has_product_id();
+  clear_has_hardware_revision();
+  clear_has_firmware_revision();
+}
+
+DiskInfo::~DiskInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DiskInfo)
+  SharedDtor();
+}
+
+void DiskInfo::SharedDtor() {
+  serial_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacturer_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  type_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  health_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (has_vendor_id()) {
+    clear_vendor_id();
+  }
+  if (has_product_id()) {
+    clear_product_id();
+  }
+  if (has_hardware_revision()) {
+    clear_hardware_revision();
+  }
+  if (has_firmware_revision()) {
+    clear_firmware_revision();
+  }
+}
+
+void DiskInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DiskInfo& DiskInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DiskInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DiskInfo::clear_vendor_id() {
+// @@protoc_insertion_point(one_of_clear_start:enterprise_management.DiskInfo)
+  switch (vendor_id_case()) {
+    case kNvmeSubsystemVendor: {
+      // No need to clear
+      break;
+    }
+    case kEmmcOemid: {
+      // No need to clear
+      break;
+    }
+    case kOtherVendor: {
+      // No need to clear
+      break;
+    }
+    case VENDOR_ID_NOT_SET: {
+      break;
+    }
+  }
+  _oneof_case_[0] = VENDOR_ID_NOT_SET;
+}
+
+void DiskInfo::clear_product_id() {
+// @@protoc_insertion_point(one_of_clear_start:enterprise_management.DiskInfo)
+  switch (product_id_case()) {
+    case kNvmeSubsystemDevice: {
+      // No need to clear
+      break;
+    }
+    case kEmmcPnm: {
+      // No need to clear
+      break;
+    }
+    case kOtherProduct: {
+      // No need to clear
+      break;
+    }
+    case PRODUCT_ID_NOT_SET: {
+      break;
+    }
+  }
+  _oneof_case_[1] = PRODUCT_ID_NOT_SET;
+}
+
+void DiskInfo::clear_hardware_revision() {
+// @@protoc_insertion_point(one_of_clear_start:enterprise_management.DiskInfo)
+  switch (hardware_revision_case()) {
+    case kNvmeHardwareRev: {
+      // No need to clear
+      break;
+    }
+    case kEmmcHardwareRev: {
+      // No need to clear
+      break;
+    }
+    case kOtherHardwareRev: {
+      // No need to clear
+      break;
+    }
+    case HARDWARE_REVISION_NOT_SET: {
+      break;
+    }
+  }
+  _oneof_case_[2] = HARDWARE_REVISION_NOT_SET;
+}
+
+void DiskInfo::clear_firmware_revision() {
+// @@protoc_insertion_point(one_of_clear_start:enterprise_management.DiskInfo)
+  switch (firmware_revision_case()) {
+    case kNvmeFirmwareRev: {
+      // No need to clear
+      break;
+    }
+    case kEmmcFirmwareRev: {
+      // No need to clear
+      break;
+    }
+    case kOtherFirmwareRev: {
+      // No need to clear
+      break;
+    }
+    case FIRMWARE_REVISION_NOT_SET: {
+      break;
+    }
+  }
+  _oneof_case_[3] = FIRMWARE_REVISION_NOT_SET;
+}
+
+
+void DiskInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DiskInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  volumes_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      serial_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      manufacturer_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      model_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      type_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      health_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x000000e0u) {
+    ::memset(&size_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&bytes_written_since_last_boot_) -
+        reinterpret_cast<char*>(&size_)) + sizeof(bytes_written_since_last_boot_));
+  }
+  if (cached_has_bits & 0x00001f00u) {
+    ::memset(&read_time_seconds_since_last_boot_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&purpose_) -
+        reinterpret_cast<char*>(&read_time_seconds_since_last_boot_)) + sizeof(purpose_));
+  }
+  clear_vendor_id();
+  clear_product_id();
+  clear_hardware_revision();
+  clear_firmware_revision();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DiskInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string serial = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_serial();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string manufacturer = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_manufacturer();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string model = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_model();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 size = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_size(&has_bits);
+          size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string type = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_type();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string health = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_health();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated string volumes = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_volumes();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 bytes_read_since_last_boot = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_bytes_read_since_last_boot(&has_bits);
+          bytes_read_since_last_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 bytes_written_since_last_boot = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_bytes_written_since_last_boot(&has_bits);
+          bytes_written_since_last_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 read_time_seconds_since_last_boot = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          _Internal::set_has_read_time_seconds_since_last_boot(&has_bits);
+          read_time_seconds_since_last_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 write_time_seconds_since_last_boot = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          _Internal::set_has_write_time_seconds_since_last_boot(&has_bits);
+          write_time_seconds_since_last_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 io_time_seconds_since_last_boot = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 96)) {
+          _Internal::set_has_io_time_seconds_since_last_boot(&has_bits);
+          io_time_seconds_since_last_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 discard_time_seconds_since_last_boot = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 104)) {
+          _Internal::set_has_discard_time_seconds_since_last_boot(&has_bits);
+          discard_time_seconds_since_last_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 nvme_subsystem_vendor = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 112)) {
+          _internal_set_nvme_subsystem_vendor(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 emmc_oemid = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 120)) {
+          _internal_set_emmc_oemid(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 other_vendor = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 128)) {
+          _internal_set_other_vendor(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 nvme_subsystem_device = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 136)) {
+          _internal_set_nvme_subsystem_device(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 emmc_pnm = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 144)) {
+          _internal_set_emmc_pnm(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 other_product = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 152)) {
+          _internal_set_other_product(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 nvme_hardware_rev = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 160)) {
+          _internal_set_nvme_hardware_rev(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 emmc_hardware_rev = 21;
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 168)) {
+          _internal_set_emmc_hardware_rev(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 other_hardware_rev = 22;
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 176)) {
+          _internal_set_other_hardware_rev(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 nvme_firmware_rev = 23;
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 184)) {
+          _internal_set_nvme_firmware_rev(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 emmc_firmware_rev = 24;
+      case 24:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 192)) {
+          _internal_set_emmc_firmware_rev(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 other_firmware_rev = 25;
+      case 25:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 200)) {
+          _internal_set_other_firmware_rev(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DiskInfo.DevicePurpose purpose = 26;
+      case 26:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 208)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DiskInfo_DevicePurpose_IsValid(val))) {
+            _internal_set_purpose(static_cast<::enterprise_management::DiskInfo_DevicePurpose>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(26, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DiskInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DiskInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string serial = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_serial(), target);
+  }
+
+  // optional string manufacturer = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_manufacturer(), target);
+  }
+
+  // optional string model = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_model(), target);
+  }
+
+  // optional int64 size = 4;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_size(), target);
+  }
+
+  // optional string type = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_type(), target);
+  }
+
+  // optional string health = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_health(), target);
+  }
+
+  // repeated string volumes = 7;
+  for (int i = 0, n = this->_internal_volumes_size(); i < n; i++) {
+    const auto& s = this->_internal_volumes(i);
+    target = stream->WriteString(7, s, target);
+  }
+
+  // optional uint64 bytes_read_since_last_boot = 8;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(8, this->_internal_bytes_read_since_last_boot(), target);
+  }
+
+  // optional uint64 bytes_written_since_last_boot = 9;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(9, this->_internal_bytes_written_since_last_boot(), target);
+  }
+
+  // optional uint64 read_time_seconds_since_last_boot = 10;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(10, this->_internal_read_time_seconds_since_last_boot(), target);
+  }
+
+  // optional uint64 write_time_seconds_since_last_boot = 11;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(11, this->_internal_write_time_seconds_since_last_boot(), target);
+  }
+
+  // optional uint64 io_time_seconds_since_last_boot = 12;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(12, this->_internal_io_time_seconds_since_last_boot(), target);
+  }
+
+  // optional uint64 discard_time_seconds_since_last_boot = 13;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(13, this->_internal_discard_time_seconds_since_last_boot(), target);
+  }
+
+  switch (vendor_id_case()) {
+    case kNvmeSubsystemVendor: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(14, this->_internal_nvme_subsystem_vendor(), target);
+      break;
+    }
+    case kEmmcOemid: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(15, this->_internal_emmc_oemid(), target);
+      break;
+    }
+    case kOtherVendor: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(16, this->_internal_other_vendor(), target);
+      break;
+    }
+    default: ;
+  }
+  switch (product_id_case()) {
+    case kNvmeSubsystemDevice: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(17, this->_internal_nvme_subsystem_device(), target);
+      break;
+    }
+    case kEmmcPnm: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(18, this->_internal_emmc_pnm(), target);
+      break;
+    }
+    case kOtherProduct: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(19, this->_internal_other_product(), target);
+      break;
+    }
+    default: ;
+  }
+  switch (hardware_revision_case()) {
+    case kNvmeHardwareRev: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(20, this->_internal_nvme_hardware_rev(), target);
+      break;
+    }
+    case kEmmcHardwareRev: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(21, this->_internal_emmc_hardware_rev(), target);
+      break;
+    }
+    case kOtherHardwareRev: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(22, this->_internal_other_hardware_rev(), target);
+      break;
+    }
+    default: ;
+  }
+  switch (firmware_revision_case()) {
+    case kNvmeFirmwareRev: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(23, this->_internal_nvme_firmware_rev(), target);
+      break;
+    }
+    case kEmmcFirmwareRev: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(24, this->_internal_emmc_firmware_rev(), target);
+      break;
+    }
+    case kOtherFirmwareRev: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(25, this->_internal_other_firmware_rev(), target);
+      break;
+    }
+    default: ;
+  }
+  // optional .enterprise_management.DiskInfo.DevicePurpose purpose = 26;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      26, this->_internal_purpose(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DiskInfo)
+  return target;
+}
+
+size_t DiskInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DiskInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string volumes = 7;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(volumes_.size());
+  for (int i = 0, n = volumes_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      volumes_.Get(i));
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string serial = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_serial());
+    }
+
+    // optional string manufacturer = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_manufacturer());
+    }
+
+    // optional string model = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_model());
+    }
+
+    // optional string type = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_type());
+    }
+
+    // optional string health = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_health());
+    }
+
+    // optional int64 size = 4;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_size());
+    }
+
+    // optional uint64 bytes_read_since_last_boot = 8;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_bytes_read_since_last_boot());
+    }
+
+    // optional uint64 bytes_written_since_last_boot = 9;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_bytes_written_since_last_boot());
+    }
+
+  }
+  if (cached_has_bits & 0x00001f00u) {
+    // optional uint64 read_time_seconds_since_last_boot = 10;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_read_time_seconds_since_last_boot());
+    }
+
+    // optional uint64 write_time_seconds_since_last_boot = 11;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_write_time_seconds_since_last_boot());
+    }
+
+    // optional uint64 io_time_seconds_since_last_boot = 12;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_io_time_seconds_since_last_boot());
+    }
+
+    // optional uint64 discard_time_seconds_since_last_boot = 13;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_discard_time_seconds_since_last_boot());
+    }
+
+    // optional .enterprise_management.DiskInfo.DevicePurpose purpose = 26;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_purpose());
+    }
+
+  }
+  switch (vendor_id_case()) {
+    // optional uint32 nvme_subsystem_vendor = 14;
+    case kNvmeSubsystemVendor: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_nvme_subsystem_vendor());
+      break;
+    }
+    // optional uint32 emmc_oemid = 15;
+    case kEmmcOemid: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_emmc_oemid());
+      break;
+    }
+    // optional uint32 other_vendor = 16;
+    case kOtherVendor: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_other_vendor());
+      break;
+    }
+    case VENDOR_ID_NOT_SET: {
+      break;
+    }
+  }
+  switch (product_id_case()) {
+    // optional uint32 nvme_subsystem_device = 17;
+    case kNvmeSubsystemDevice: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_nvme_subsystem_device());
+      break;
+    }
+    // optional uint32 emmc_pnm = 18;
+    case kEmmcPnm: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_emmc_pnm());
+      break;
+    }
+    // optional uint32 other_product = 19;
+    case kOtherProduct: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_other_product());
+      break;
+    }
+    case PRODUCT_ID_NOT_SET: {
+      break;
+    }
+  }
+  switch (hardware_revision_case()) {
+    // optional uint32 nvme_hardware_rev = 20;
+    case kNvmeHardwareRev: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_nvme_hardware_rev());
+      break;
+    }
+    // optional uint32 emmc_hardware_rev = 21;
+    case kEmmcHardwareRev: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_emmc_hardware_rev());
+      break;
+    }
+    // optional uint32 other_hardware_rev = 22;
+    case kOtherHardwareRev: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_other_hardware_rev());
+      break;
+    }
+    case HARDWARE_REVISION_NOT_SET: {
+      break;
+    }
+  }
+  switch (firmware_revision_case()) {
+    // optional uint64 nvme_firmware_rev = 23;
+    case kNvmeFirmwareRev: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_nvme_firmware_rev());
+      break;
+    }
+    // optional uint64 emmc_firmware_rev = 24;
+    case kEmmcFirmwareRev: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_emmc_firmware_rev());
+      break;
+    }
+    // optional uint32 other_firmware_rev = 25;
+    case kOtherFirmwareRev: {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_other_firmware_rev());
+      break;
+    }
+    case FIRMWARE_REVISION_NOT_SET: {
+      break;
+    }
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DiskInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DiskInfo*>(
+      &from));
+}
+
+void DiskInfo::MergeFrom(const DiskInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DiskInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  volumes_.MergeFrom(from.volumes_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      serial_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      manufacturer_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacturer_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      model_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.type_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      health_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.health_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      size_ = from.size_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      bytes_read_since_last_boot_ = from.bytes_read_since_last_boot_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      bytes_written_since_last_boot_ = from.bytes_written_since_last_boot_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00001f00u) {
+    if (cached_has_bits & 0x00000100u) {
+      read_time_seconds_since_last_boot_ = from.read_time_seconds_since_last_boot_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      write_time_seconds_since_last_boot_ = from.write_time_seconds_since_last_boot_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      io_time_seconds_since_last_boot_ = from.io_time_seconds_since_last_boot_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      discard_time_seconds_since_last_boot_ = from.discard_time_seconds_since_last_boot_;
+    }
+    if (cached_has_bits & 0x00001000u) {
+      purpose_ = from.purpose_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  switch (from.vendor_id_case()) {
+    case kNvmeSubsystemVendor: {
+      _internal_set_nvme_subsystem_vendor(from._internal_nvme_subsystem_vendor());
+      break;
+    }
+    case kEmmcOemid: {
+      _internal_set_emmc_oemid(from._internal_emmc_oemid());
+      break;
+    }
+    case kOtherVendor: {
+      _internal_set_other_vendor(from._internal_other_vendor());
+      break;
+    }
+    case VENDOR_ID_NOT_SET: {
+      break;
+    }
+  }
+  switch (from.product_id_case()) {
+    case kNvmeSubsystemDevice: {
+      _internal_set_nvme_subsystem_device(from._internal_nvme_subsystem_device());
+      break;
+    }
+    case kEmmcPnm: {
+      _internal_set_emmc_pnm(from._internal_emmc_pnm());
+      break;
+    }
+    case kOtherProduct: {
+      _internal_set_other_product(from._internal_other_product());
+      break;
+    }
+    case PRODUCT_ID_NOT_SET: {
+      break;
+    }
+  }
+  switch (from.hardware_revision_case()) {
+    case kNvmeHardwareRev: {
+      _internal_set_nvme_hardware_rev(from._internal_nvme_hardware_rev());
+      break;
+    }
+    case kEmmcHardwareRev: {
+      _internal_set_emmc_hardware_rev(from._internal_emmc_hardware_rev());
+      break;
+    }
+    case kOtherHardwareRev: {
+      _internal_set_other_hardware_rev(from._internal_other_hardware_rev());
+      break;
+    }
+    case HARDWARE_REVISION_NOT_SET: {
+      break;
+    }
+  }
+  switch (from.firmware_revision_case()) {
+    case kNvmeFirmwareRev: {
+      _internal_set_nvme_firmware_rev(from._internal_nvme_firmware_rev());
+      break;
+    }
+    case kEmmcFirmwareRev: {
+      _internal_set_emmc_firmware_rev(from._internal_emmc_firmware_rev());
+      break;
+    }
+    case kOtherFirmwareRev: {
+      _internal_set_other_firmware_rev(from._internal_other_firmware_rev());
+      break;
+    }
+    case FIRMWARE_REVISION_NOT_SET: {
+      break;
+    }
+  }
+}
+
+void DiskInfo::CopyFrom(const DiskInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DiskInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DiskInfo::IsInitialized() const {
+  return true;
+}
+
+void DiskInfo::InternalSwap(DiskInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  volumes_.InternalSwap(&other->volumes_);
+  serial_.Swap(&other->serial_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  manufacturer_.Swap(&other->manufacturer_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  model_.Swap(&other->model_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  type_.Swap(&other->type_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  health_.Swap(&other->health_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(size_, other->size_);
+  swap(bytes_read_since_last_boot_, other->bytes_read_since_last_boot_);
+  swap(bytes_written_since_last_boot_, other->bytes_written_since_last_boot_);
+  swap(read_time_seconds_since_last_boot_, other->read_time_seconds_since_last_boot_);
+  swap(write_time_seconds_since_last_boot_, other->write_time_seconds_since_last_boot_);
+  swap(io_time_seconds_since_last_boot_, other->io_time_seconds_since_last_boot_);
+  swap(discard_time_seconds_since_last_boot_, other->discard_time_seconds_since_last_boot_);
+  swap(purpose_, other->purpose_);
+  swap(vendor_id_, other->vendor_id_);
+  swap(product_id_, other->product_id_);
+  swap(hardware_revision_, other->hardware_revision_);
+  swap(firmware_revision_, other->firmware_revision_);
+  swap(_oneof_case_[0], other->_oneof_case_[0]);
+  swap(_oneof_case_[1], other->_oneof_case_[1]);
+  swap(_oneof_case_[2], other->_oneof_case_[2]);
+  swap(_oneof_case_[3], other->_oneof_case_[3]);
+}
+
+std::string DiskInfo::GetTypeName() const {
+  return "enterprise_management.DiskInfo";
+}
+
+
+// ===================================================================
+
+void StorageStatus::InitAsDefaultInstance() {
+  ::enterprise_management::_StorageStatus_default_instance_._instance.get_mutable()->lifetime_estimation_ = const_cast< ::enterprise_management::DiskLifetimeEstimation*>(
+      ::enterprise_management::DiskLifetimeEstimation::internal_default_instance());
+}
+class StorageStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StorageStatus>()._has_bits_);
+  static const ::enterprise_management::DiskLifetimeEstimation& lifetime_estimation(const StorageStatus* msg);
+  static void set_has_lifetime_estimation(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::DiskLifetimeEstimation&
+StorageStatus::_Internal::lifetime_estimation(const StorageStatus* msg) {
+  return *msg->lifetime_estimation_;
+}
+StorageStatus::StorageStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.StorageStatus)
+}
+StorageStatus::StorageStatus(const StorageStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      disks_(from.disks_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_lifetime_estimation()) {
+    lifetime_estimation_ = new ::enterprise_management::DiskLifetimeEstimation(*from.lifetime_estimation_);
+  } else {
+    lifetime_estimation_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.StorageStatus)
+}
+
+void StorageStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StorageStatus_device_5fmanagement_5fbackend_2eproto.base);
+  lifetime_estimation_ = nullptr;
+}
+
+StorageStatus::~StorageStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.StorageStatus)
+  SharedDtor();
+}
+
+void StorageStatus::SharedDtor() {
+  if (this != internal_default_instance()) delete lifetime_estimation_;
+}
+
+void StorageStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StorageStatus& StorageStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StorageStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StorageStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.StorageStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  disks_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(lifetime_estimation_ != nullptr);
+    lifetime_estimation_->Clear();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StorageStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.DiskInfo disks = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_disks(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DiskLifetimeEstimation lifetime_estimation = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_lifetime_estimation(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StorageStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.StorageStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.DiskInfo disks = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_disks_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_disks(i), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DiskLifetimeEstimation lifetime_estimation = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::lifetime_estimation(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.StorageStatus)
+  return target;
+}
+
+size_t StorageStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.StorageStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.DiskInfo disks = 1;
+  total_size += 1UL * this->_internal_disks_size();
+  for (const auto& msg : this->disks_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // optional .enterprise_management.DiskLifetimeEstimation lifetime_estimation = 2;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *lifetime_estimation_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StorageStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StorageStatus*>(
+      &from));
+}
+
+void StorageStatus::MergeFrom(const StorageStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.StorageStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  disks_.MergeFrom(from.disks_);
+  if (from._internal_has_lifetime_estimation()) {
+    _internal_mutable_lifetime_estimation()->::enterprise_management::DiskLifetimeEstimation::MergeFrom(from._internal_lifetime_estimation());
+  }
+}
+
+void StorageStatus::CopyFrom(const StorageStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.StorageStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StorageStatus::IsInitialized() const {
+  return true;
+}
+
+void StorageStatus::InternalSwap(StorageStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  disks_.InternalSwap(&other->disks_);
+  swap(lifetime_estimation_, other->lifetime_estimation_);
+}
+
+std::string StorageStatus::GetTypeName() const {
+  return "enterprise_management.StorageStatus";
+}
+
+
+// ===================================================================
+
+void ThermalSample::InitAsDefaultInstance() {
+}
+class ThermalSample::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ThermalSample>()._has_bits_);
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_temperature(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+ThermalSample::ThermalSample()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ThermalSample)
+}
+ThermalSample::ThermalSample(const ThermalSample& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&timestamp_, &from.timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&temperature_) -
+    reinterpret_cast<char*>(&timestamp_)) + sizeof(temperature_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ThermalSample)
+}
+
+void ThermalSample::SharedCtor() {
+  ::memset(&timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&temperature_) -
+      reinterpret_cast<char*>(&timestamp_)) + sizeof(temperature_));
+}
+
+ThermalSample::~ThermalSample() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ThermalSample)
+  SharedDtor();
+}
+
+void ThermalSample::SharedDtor() {
+}
+
+void ThermalSample::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ThermalSample& ThermalSample::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ThermalSample_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ThermalSample::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ThermalSample)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&temperature_) -
+        reinterpret_cast<char*>(&timestamp_)) + sizeof(temperature_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ThermalSample::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 timestamp = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 temperature = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_temperature(&has_bits);
+          temperature_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ThermalSample::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ThermalSample)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 timestamp = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_timestamp(), target);
+  }
+
+  // optional int32 temperature = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_temperature(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ThermalSample)
+  return target;
+}
+
+size_t ThermalSample::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ThermalSample)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional int64 timestamp = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+    // optional int32 temperature = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_temperature());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ThermalSample::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ThermalSample*>(
+      &from));
+}
+
+void ThermalSample::MergeFrom(const ThermalSample& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ThermalSample)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      timestamp_ = from.timestamp_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      temperature_ = from.temperature_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ThermalSample::CopyFrom(const ThermalSample& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ThermalSample)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ThermalSample::IsInitialized() const {
+  return true;
+}
+
+void ThermalSample::InternalSwap(ThermalSample* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(timestamp_, other->timestamp_);
+  swap(temperature_, other->temperature_);
+}
+
+std::string ThermalSample::GetTypeName() const {
+  return "enterprise_management.ThermalSample";
+}
+
+
+// ===================================================================
+
+void ThermalInfo::InitAsDefaultInstance() {
+}
+class ThermalInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ThermalInfo>()._has_bits_);
+  static void set_has_label(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ThermalInfo::ThermalInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ThermalInfo)
+}
+ThermalInfo::ThermalInfo(const ThermalInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      samples_(from.samples_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  label_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_label()) {
+    label_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.label_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ThermalInfo)
+}
+
+void ThermalInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ThermalInfo_device_5fmanagement_5fbackend_2eproto.base);
+  label_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+ThermalInfo::~ThermalInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ThermalInfo)
+  SharedDtor();
+}
+
+void ThermalInfo::SharedDtor() {
+  label_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ThermalInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ThermalInfo& ThermalInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ThermalInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ThermalInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ThermalInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  samples_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    label_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ThermalInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string label = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_label();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ThermalSample samples = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_samples(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ThermalInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ThermalInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string label = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_label(), target);
+  }
+
+  // repeated .enterprise_management.ThermalSample samples = 3;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_samples_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(3, this->_internal_samples(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ThermalInfo)
+  return target;
+}
+
+size_t ThermalInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ThermalInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ThermalSample samples = 3;
+  total_size += 1UL * this->_internal_samples_size();
+  for (const auto& msg : this->samples_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // optional string label = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_label());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ThermalInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ThermalInfo*>(
+      &from));
+}
+
+void ThermalInfo::MergeFrom(const ThermalInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ThermalInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  samples_.MergeFrom(from.samples_);
+  if (from._internal_has_label()) {
+    _has_bits_[0] |= 0x00000001u;
+    label_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.label_);
+  }
+}
+
+void ThermalInfo::CopyFrom(const ThermalInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ThermalInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ThermalInfo::IsInitialized() const {
+  return true;
+}
+
+void ThermalInfo::InternalSwap(ThermalInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  samples_.InternalSwap(&other->samples_);
+  label_.Swap(&other->label_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string ThermalInfo::GetTypeName() const {
+  return "enterprise_management.ThermalInfo";
+}
+
+
+// ===================================================================
+
+void BoardStatus::InitAsDefaultInstance() {
+}
+class BoardStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BoardStatus>()._has_bits_);
+};
+
+BoardStatus::BoardStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BoardStatus)
+}
+BoardStatus::BoardStatus(const BoardStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      thermal_infos_(from.thermal_infos_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BoardStatus)
+}
+
+void BoardStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BoardStatus_device_5fmanagement_5fbackend_2eproto.base);
+}
+
+BoardStatus::~BoardStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BoardStatus)
+  SharedDtor();
+}
+
+void BoardStatus::SharedDtor() {
+}
+
+void BoardStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BoardStatus& BoardStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BoardStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BoardStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BoardStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  thermal_infos_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BoardStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.ThermalInfo thermal_infos = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_thermal_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BoardStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BoardStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ThermalInfo thermal_infos = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_thermal_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_thermal_infos(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BoardStatus)
+  return target;
+}
+
+size_t BoardStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BoardStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ThermalInfo thermal_infos = 1;
+  total_size += 1UL * this->_internal_thermal_infos_size();
+  for (const auto& msg : this->thermal_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BoardStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BoardStatus*>(
+      &from));
+}
+
+void BoardStatus::MergeFrom(const BoardStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BoardStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  thermal_infos_.MergeFrom(from.thermal_infos_);
+}
+
+void BoardStatus::CopyFrom(const BoardStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BoardStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BoardStatus::IsInitialized() const {
+  return true;
+}
+
+void BoardStatus::InternalSwap(BoardStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  thermal_infos_.InternalSwap(&other->thermal_infos_);
+}
+
+std::string BoardStatus::GetTypeName() const {
+  return "enterprise_management.BoardStatus";
+}
+
+
+// ===================================================================
+
+void SystemStatus::InitAsDefaultInstance() {
+}
+class SystemStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemStatus>()._has_bits_);
+  static void set_has_vpd_sku_number(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_first_power_date(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_manufacture_date(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_marketing_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_bios_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_board_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_board_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_chassis_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_product_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_vpd_serial_number(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+};
+
+SystemStatus::SystemStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SystemStatus)
+}
+SystemStatus::SystemStatus(const SystemStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  vpd_sku_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_vpd_sku_number()) {
+    vpd_sku_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vpd_sku_number_);
+  }
+  first_power_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_first_power_date()) {
+    first_power_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.first_power_date_);
+  }
+  manufacture_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_manufacture_date()) {
+    manufacture_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacture_date_);
+  }
+  marketing_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_marketing_name()) {
+    marketing_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.marketing_name_);
+  }
+  bios_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_bios_version()) {
+    bios_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.bios_version_);
+  }
+  board_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_board_name()) {
+    board_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.board_name_);
+  }
+  board_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_board_version()) {
+    board_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.board_version_);
+  }
+  product_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_product_name()) {
+    product_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.product_name_);
+  }
+  vpd_serial_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_vpd_serial_number()) {
+    vpd_serial_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vpd_serial_number_);
+  }
+  chassis_type_ = from.chassis_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SystemStatus)
+}
+
+void SystemStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemStatus_device_5fmanagement_5fbackend_2eproto.base);
+  vpd_sku_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  first_power_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacture_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  marketing_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  bios_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  board_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  board_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  product_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  vpd_serial_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  chassis_type_ = PROTOBUF_ULONGLONG(0);
+}
+
+SystemStatus::~SystemStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SystemStatus)
+  SharedDtor();
+}
+
+void SystemStatus::SharedDtor() {
+  vpd_sku_number_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  first_power_date_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  manufacture_date_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  marketing_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  bios_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  board_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  board_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  product_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  vpd_serial_number_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemStatus& SystemStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SystemStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      vpd_sku_number_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      first_power_date_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      manufacture_date_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      marketing_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      bios_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      board_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      board_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      product_name_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000100u) {
+    vpd_serial_number_.ClearNonDefaultToEmptyNoArena();
+  }
+  chassis_type_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string vpd_sku_number = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_vpd_sku_number();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string first_power_date = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_first_power_date();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string manufacture_date = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_manufacture_date();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string marketing_name = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_marketing_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string bios_version = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_bios_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string board_name = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_board_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string board_version = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          auto str = _internal_mutable_board_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 chassis_type = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_chassis_type(&has_bits);
+          chassis_type_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string product_name = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          auto str = _internal_mutable_product_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string vpd_serial_number = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          auto str = _internal_mutable_vpd_serial_number();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SystemStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string vpd_sku_number = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_vpd_sku_number(), target);
+  }
+
+  // optional string first_power_date = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_first_power_date(), target);
+  }
+
+  // optional string manufacture_date = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_manufacture_date(), target);
+  }
+
+  // optional string marketing_name = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_marketing_name(), target);
+  }
+
+  // optional string bios_version = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_bios_version(), target);
+  }
+
+  // optional string board_name = 6;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_board_name(), target);
+  }
+
+  // optional string board_version = 7;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->WriteStringMaybeAliased(
+        7, this->_internal_board_version(), target);
+  }
+
+  // optional uint64 chassis_type = 8;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(8, this->_internal_chassis_type(), target);
+  }
+
+  // optional string product_name = 9;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->WriteStringMaybeAliased(
+        9, this->_internal_product_name(), target);
+  }
+
+  // optional string vpd_serial_number = 10;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->WriteStringMaybeAliased(
+        10, this->_internal_vpd_serial_number(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SystemStatus)
+  return target;
+}
+
+size_t SystemStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SystemStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string vpd_sku_number = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_vpd_sku_number());
+    }
+
+    // optional string first_power_date = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_first_power_date());
+    }
+
+    // optional string manufacture_date = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_manufacture_date());
+    }
+
+    // optional string marketing_name = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_marketing_name());
+    }
+
+    // optional string bios_version = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_bios_version());
+    }
+
+    // optional string board_name = 6;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_board_name());
+    }
+
+    // optional string board_version = 7;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_board_version());
+    }
+
+    // optional string product_name = 9;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_product_name());
+    }
+
+  }
+  if (cached_has_bits & 0x00000300u) {
+    // optional string vpd_serial_number = 10;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_vpd_serial_number());
+    }
+
+    // optional uint64 chassis_type = 8;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_chassis_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemStatus*>(
+      &from));
+}
+
+void SystemStatus::MergeFrom(const SystemStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SystemStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      vpd_sku_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vpd_sku_number_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      first_power_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.first_power_date_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      manufacture_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacture_date_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      marketing_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.marketing_name_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      bios_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.bios_version_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      board_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.board_name_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _has_bits_[0] |= 0x00000040u;
+      board_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.board_version_);
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _has_bits_[0] |= 0x00000080u;
+      product_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.product_name_);
+    }
+  }
+  if (cached_has_bits & 0x00000300u) {
+    if (cached_has_bits & 0x00000100u) {
+      _has_bits_[0] |= 0x00000100u;
+      vpd_serial_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vpd_serial_number_);
+    }
+    if (cached_has_bits & 0x00000200u) {
+      chassis_type_ = from.chassis_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemStatus::CopyFrom(const SystemStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SystemStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemStatus::IsInitialized() const {
+  return true;
+}
+
+void SystemStatus::InternalSwap(SystemStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  vpd_sku_number_.Swap(&other->vpd_sku_number_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  first_power_date_.Swap(&other->first_power_date_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  manufacture_date_.Swap(&other->manufacture_date_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  marketing_name_.Swap(&other->marketing_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  bios_version_.Swap(&other->bios_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  board_name_.Swap(&other->board_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  board_version_.Swap(&other->board_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  product_name_.Swap(&other->product_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  vpd_serial_number_.Swap(&other->vpd_serial_number_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(chassis_type_, other->chassis_type_);
+}
+
+std::string SystemStatus::GetTypeName() const {
+  return "enterprise_management.SystemStatus";
+}
+
+
+// ===================================================================
+
+void CpuCStateInfo::InitAsDefaultInstance() {
+}
+class CpuCStateInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CpuCStateInfo>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_time_in_state_since_last_boot_us(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+CpuCStateInfo::CpuCStateInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CpuCStateInfo)
+}
+CpuCStateInfo::CpuCStateInfo(const CpuCStateInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  time_in_state_since_last_boot_us_ = from.time_in_state_since_last_boot_us_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CpuCStateInfo)
+}
+
+void CpuCStateInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CpuCStateInfo_device_5fmanagement_5fbackend_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  time_in_state_since_last_boot_us_ = PROTOBUF_ULONGLONG(0);
+}
+
+CpuCStateInfo::~CpuCStateInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CpuCStateInfo)
+  SharedDtor();
+}
+
+void CpuCStateInfo::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CpuCStateInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CpuCStateInfo& CpuCStateInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CpuCStateInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CpuCStateInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CpuCStateInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    name_.ClearNonDefaultToEmptyNoArena();
+  }
+  time_in_state_since_last_boot_us_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CpuCStateInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 time_in_state_since_last_boot_us = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_time_in_state_since_last_boot_us(&has_bits);
+          time_in_state_since_last_boot_us_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CpuCStateInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CpuCStateInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional uint64 time_in_state_since_last_boot_us = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(2, this->_internal_time_in_state_since_last_boot_us(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CpuCStateInfo)
+  return target;
+}
+
+size_t CpuCStateInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CpuCStateInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional uint64 time_in_state_since_last_boot_us = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_time_in_state_since_last_boot_us());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CpuCStateInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CpuCStateInfo*>(
+      &from));
+}
+
+void CpuCStateInfo::MergeFrom(const CpuCStateInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CpuCStateInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      time_in_state_since_last_boot_us_ = from.time_in_state_since_last_boot_us_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CpuCStateInfo::CopyFrom(const CpuCStateInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CpuCStateInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CpuCStateInfo::IsInitialized() const {
+  return true;
+}
+
+void CpuCStateInfo::InternalSwap(CpuCStateInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(time_in_state_since_last_boot_us_, other->time_in_state_since_last_boot_us_);
+}
+
+std::string CpuCStateInfo::GetTypeName() const {
+  return "enterprise_management.CpuCStateInfo";
+}
+
+
+// ===================================================================
+
+void LogicalCpuInfo::InitAsDefaultInstance() {
+}
+class LogicalCpuInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LogicalCpuInfo>()._has_bits_);
+  static void set_has_scaling_max_frequency_khz(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_scaling_current_frequency_khz(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_idle_time_seconds(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+LogicalCpuInfo::LogicalCpuInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LogicalCpuInfo)
+}
+LogicalCpuInfo::LogicalCpuInfo(const LogicalCpuInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      c_states_(from.c_states_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&scaling_max_frequency_khz_, &from.scaling_max_frequency_khz_,
+    static_cast<size_t>(reinterpret_cast<char*>(&idle_time_seconds_) -
+    reinterpret_cast<char*>(&scaling_max_frequency_khz_)) + sizeof(idle_time_seconds_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LogicalCpuInfo)
+}
+
+void LogicalCpuInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_LogicalCpuInfo_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&scaling_max_frequency_khz_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&idle_time_seconds_) -
+      reinterpret_cast<char*>(&scaling_max_frequency_khz_)) + sizeof(idle_time_seconds_));
+}
+
+LogicalCpuInfo::~LogicalCpuInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LogicalCpuInfo)
+  SharedDtor();
+}
+
+void LogicalCpuInfo::SharedDtor() {
+}
+
+void LogicalCpuInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LogicalCpuInfo& LogicalCpuInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LogicalCpuInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LogicalCpuInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LogicalCpuInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  c_states_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    ::memset(&scaling_max_frequency_khz_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&idle_time_seconds_) -
+        reinterpret_cast<char*>(&scaling_max_frequency_khz_)) + sizeof(idle_time_seconds_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LogicalCpuInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 scaling_max_frequency_khz = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_scaling_max_frequency_khz(&has_bits);
+          scaling_max_frequency_khz_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 scaling_current_frequency_khz = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_scaling_current_frequency_khz(&has_bits);
+          scaling_current_frequency_khz_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 idle_time_seconds = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_idle_time_seconds(&has_bits);
+          idle_time_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.CpuCStateInfo c_states = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_c_states(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LogicalCpuInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LogicalCpuInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 scaling_max_frequency_khz = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_scaling_max_frequency_khz(), target);
+  }
+
+  // optional uint32 scaling_current_frequency_khz = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(2, this->_internal_scaling_current_frequency_khz(), target);
+  }
+
+  // optional uint64 idle_time_seconds = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(3, this->_internal_idle_time_seconds(), target);
+  }
+
+  // repeated .enterprise_management.CpuCStateInfo c_states = 4;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_c_states_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(4, this->_internal_c_states(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LogicalCpuInfo)
+  return target;
+}
+
+size_t LogicalCpuInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LogicalCpuInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.CpuCStateInfo c_states = 4;
+  total_size += 1UL * this->_internal_c_states_size();
+  for (const auto& msg : this->c_states_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional uint32 scaling_max_frequency_khz = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_scaling_max_frequency_khz());
+    }
+
+    // optional uint32 scaling_current_frequency_khz = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_scaling_current_frequency_khz());
+    }
+
+    // optional uint64 idle_time_seconds = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_idle_time_seconds());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LogicalCpuInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LogicalCpuInfo*>(
+      &from));
+}
+
+void LogicalCpuInfo::MergeFrom(const LogicalCpuInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LogicalCpuInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  c_states_.MergeFrom(from.c_states_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      scaling_max_frequency_khz_ = from.scaling_max_frequency_khz_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      scaling_current_frequency_khz_ = from.scaling_current_frequency_khz_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      idle_time_seconds_ = from.idle_time_seconds_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void LogicalCpuInfo::CopyFrom(const LogicalCpuInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LogicalCpuInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LogicalCpuInfo::IsInitialized() const {
+  return true;
+}
+
+void LogicalCpuInfo::InternalSwap(LogicalCpuInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  c_states_.InternalSwap(&other->c_states_);
+  swap(scaling_max_frequency_khz_, other->scaling_max_frequency_khz_);
+  swap(scaling_current_frequency_khz_, other->scaling_current_frequency_khz_);
+  swap(idle_time_seconds_, other->idle_time_seconds_);
+}
+
+std::string LogicalCpuInfo::GetTypeName() const {
+  return "enterprise_management.LogicalCpuInfo";
+}
+
+
+// ===================================================================
+
+void CpuInfo::InitAsDefaultInstance() {
+}
+class CpuInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CpuInfo>()._has_bits_);
+  static void set_has_model_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_architecture(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_max_clock_speed_khz(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+CpuInfo::CpuInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CpuInfo)
+}
+CpuInfo::CpuInfo(const CpuInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      logical_cpus_(from.logical_cpus_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  model_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_model_name()) {
+    model_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_name_);
+  }
+  ::memcpy(&architecture_, &from.architecture_,
+    static_cast<size_t>(reinterpret_cast<char*>(&max_clock_speed_khz_) -
+    reinterpret_cast<char*>(&architecture_)) + sizeof(max_clock_speed_khz_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CpuInfo)
+}
+
+void CpuInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CpuInfo_device_5fmanagement_5fbackend_2eproto.base);
+  model_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&architecture_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&max_clock_speed_khz_) -
+      reinterpret_cast<char*>(&architecture_)) + sizeof(max_clock_speed_khz_));
+}
+
+CpuInfo::~CpuInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CpuInfo)
+  SharedDtor();
+}
+
+void CpuInfo::SharedDtor() {
+  model_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CpuInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CpuInfo& CpuInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CpuInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CpuInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CpuInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  logical_cpus_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    model_name_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&architecture_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&max_clock_speed_khz_) -
+        reinterpret_cast<char*>(&architecture_)) + sizeof(max_clock_speed_khz_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CpuInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string model_name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_model_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CpuInfo.Architecture architecture = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::CpuInfo_Architecture_IsValid(val))) {
+            _internal_set_architecture(static_cast<::enterprise_management::CpuInfo_Architecture>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 max_clock_speed_khz = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_max_clock_speed_khz(&has_bits);
+          max_clock_speed_khz_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.LogicalCpuInfo logical_cpus = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_logical_cpus(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CpuInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CpuInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string model_name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_model_name(), target);
+  }
+
+  // optional .enterprise_management.CpuInfo.Architecture architecture = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_architecture(), target);
+  }
+
+  // optional uint32 max_clock_speed_khz = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(3, this->_internal_max_clock_speed_khz(), target);
+  }
+
+  // repeated .enterprise_management.LogicalCpuInfo logical_cpus = 4;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_logical_cpus_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(4, this->_internal_logical_cpus(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CpuInfo)
+  return target;
+}
+
+size_t CpuInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CpuInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.LogicalCpuInfo logical_cpus = 4;
+  total_size += 1UL * this->_internal_logical_cpus_size();
+  for (const auto& msg : this->logical_cpus_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string model_name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_model_name());
+    }
+
+    // optional .enterprise_management.CpuInfo.Architecture architecture = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_architecture());
+    }
+
+    // optional uint32 max_clock_speed_khz = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_max_clock_speed_khz());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CpuInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CpuInfo*>(
+      &from));
+}
+
+void CpuInfo::MergeFrom(const CpuInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CpuInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  logical_cpus_.MergeFrom(from.logical_cpus_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      model_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      architecture_ = from.architecture_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      max_clock_speed_khz_ = from.max_clock_speed_khz_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CpuInfo::CopyFrom(const CpuInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CpuInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CpuInfo::IsInitialized() const {
+  return true;
+}
+
+void CpuInfo::InternalSwap(CpuInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  logical_cpus_.InternalSwap(&other->logical_cpus_);
+  model_name_.Swap(&other->model_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(architecture_, other->architecture_);
+  swap(max_clock_speed_khz_, other->max_clock_speed_khz_);
+}
+
+std::string CpuInfo::GetTypeName() const {
+  return "enterprise_management.CpuInfo";
+}
+
+
+// ===================================================================
+
+void GlobalCpuInfo::InitAsDefaultInstance() {
+}
+class GlobalCpuInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<GlobalCpuInfo>()._has_bits_);
+  static void set_has_num_total_threads(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+GlobalCpuInfo::GlobalCpuInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.GlobalCpuInfo)
+}
+GlobalCpuInfo::GlobalCpuInfo(const GlobalCpuInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  num_total_threads_ = from.num_total_threads_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.GlobalCpuInfo)
+}
+
+void GlobalCpuInfo::SharedCtor() {
+  num_total_threads_ = 0u;
+}
+
+GlobalCpuInfo::~GlobalCpuInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.GlobalCpuInfo)
+  SharedDtor();
+}
+
+void GlobalCpuInfo::SharedDtor() {
+}
+
+void GlobalCpuInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const GlobalCpuInfo& GlobalCpuInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_GlobalCpuInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void GlobalCpuInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.GlobalCpuInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  num_total_threads_ = 0u;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* GlobalCpuInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 num_total_threads = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_num_total_threads(&has_bits);
+          num_total_threads_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* GlobalCpuInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.GlobalCpuInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 num_total_threads = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_num_total_threads(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.GlobalCpuInfo)
+  return target;
+}
+
+size_t GlobalCpuInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.GlobalCpuInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional uint32 num_total_threads = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+        this->_internal_num_total_threads());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void GlobalCpuInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const GlobalCpuInfo*>(
+      &from));
+}
+
+void GlobalCpuInfo::MergeFrom(const GlobalCpuInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.GlobalCpuInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_num_total_threads()) {
+    _internal_set_num_total_threads(from._internal_num_total_threads());
+  }
+}
+
+void GlobalCpuInfo::CopyFrom(const GlobalCpuInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.GlobalCpuInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool GlobalCpuInfo::IsInitialized() const {
+  return true;
+}
+
+void GlobalCpuInfo::InternalSwap(GlobalCpuInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(num_total_threads_, other->num_total_threads_);
+}
+
+std::string GlobalCpuInfo::GetTypeName() const {
+  return "enterprise_management.GlobalCpuInfo";
+}
+
+
+// ===================================================================
+
+void DisplayInfo::InitAsDefaultInstance() {
+}
+class DisplayInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DisplayInfo>()._has_bits_);
+  static void set_has_resolution_width(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_resolution_height(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_refresh_rate(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_is_internal(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+DisplayInfo::DisplayInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DisplayInfo)
+}
+DisplayInfo::DisplayInfo(const DisplayInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&resolution_width_, &from.resolution_width_,
+    static_cast<size_t>(reinterpret_cast<char*>(&is_internal_) -
+    reinterpret_cast<char*>(&resolution_width_)) + sizeof(is_internal_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DisplayInfo)
+}
+
+void DisplayInfo::SharedCtor() {
+  ::memset(&resolution_width_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_internal_) -
+      reinterpret_cast<char*>(&resolution_width_)) + sizeof(is_internal_));
+}
+
+DisplayInfo::~DisplayInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DisplayInfo)
+  SharedDtor();
+}
+
+void DisplayInfo::SharedDtor() {
+}
+
+void DisplayInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DisplayInfo& DisplayInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DisplayInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DisplayInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DisplayInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    ::memset(&resolution_width_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&is_internal_) -
+        reinterpret_cast<char*>(&resolution_width_)) + sizeof(is_internal_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DisplayInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 resolution_width = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_resolution_width(&has_bits);
+          resolution_width_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 resolution_height = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_resolution_height(&has_bits);
+          resolution_height_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 refresh_rate = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_refresh_rate(&has_bits);
+          refresh_rate_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_internal = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_is_internal(&has_bits);
+          is_internal_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DisplayInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DisplayInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 resolution_width = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_resolution_width(), target);
+  }
+
+  // optional uint32 resolution_height = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(2, this->_internal_resolution_height(), target);
+  }
+
+  // optional uint32 refresh_rate = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(3, this->_internal_refresh_rate(), target);
+  }
+
+  // optional bool is_internal = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_is_internal(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DisplayInfo)
+  return target;
+}
+
+size_t DisplayInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DisplayInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional uint32 resolution_width = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_resolution_width());
+    }
+
+    // optional uint32 resolution_height = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_resolution_height());
+    }
+
+    // optional uint32 refresh_rate = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_refresh_rate());
+    }
+
+    // optional bool is_internal = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DisplayInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DisplayInfo*>(
+      &from));
+}
+
+void DisplayInfo::MergeFrom(const DisplayInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DisplayInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      resolution_width_ = from.resolution_width_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      resolution_height_ = from.resolution_height_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      refresh_rate_ = from.refresh_rate_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      is_internal_ = from.is_internal_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DisplayInfo::CopyFrom(const DisplayInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DisplayInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DisplayInfo::IsInitialized() const {
+  return true;
+}
+
+void DisplayInfo::InternalSwap(DisplayInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(resolution_width_, other->resolution_width_);
+  swap(resolution_height_, other->resolution_height_);
+  swap(refresh_rate_, other->refresh_rate_);
+  swap(is_internal_, other->is_internal_);
+}
+
+std::string DisplayInfo::GetTypeName() const {
+  return "enterprise_management.DisplayInfo";
+}
+
+
+// ===================================================================
+
+void GraphicsAdapterInfo::InitAsDefaultInstance() {
+}
+class GraphicsAdapterInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<GraphicsAdapterInfo>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_driver_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_system_ram_usage(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+GraphicsAdapterInfo::GraphicsAdapterInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.GraphicsAdapterInfo)
+}
+GraphicsAdapterInfo::GraphicsAdapterInfo(const GraphicsAdapterInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  driver_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_driver_version()) {
+    driver_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.driver_version_);
+  }
+  ::memcpy(&device_id_, &from.device_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&system_ram_usage_) -
+    reinterpret_cast<char*>(&device_id_)) + sizeof(system_ram_usage_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.GraphicsAdapterInfo)
+}
+
+void GraphicsAdapterInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_GraphicsAdapterInfo_device_5fmanagement_5fbackend_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  driver_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&device_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&system_ram_usage_) -
+      reinterpret_cast<char*>(&device_id_)) + sizeof(system_ram_usage_));
+}
+
+GraphicsAdapterInfo::~GraphicsAdapterInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.GraphicsAdapterInfo)
+  SharedDtor();
+}
+
+void GraphicsAdapterInfo::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  driver_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void GraphicsAdapterInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const GraphicsAdapterInfo& GraphicsAdapterInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_GraphicsAdapterInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void GraphicsAdapterInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.GraphicsAdapterInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      driver_version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000000cu) {
+    ::memset(&device_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&system_ram_usage_) -
+        reinterpret_cast<char*>(&device_id_)) + sizeof(system_ram_usage_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* GraphicsAdapterInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string driver_version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_driver_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 device_id = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_device_id(&has_bits);
+          device_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 system_ram_usage = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_system_ram_usage(&has_bits);
+          system_ram_usage_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* GraphicsAdapterInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.GraphicsAdapterInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional string driver_version = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_driver_version(), target);
+  }
+
+  // optional uint64 device_id = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(3, this->_internal_device_id(), target);
+  }
+
+  // optional uint64 system_ram_usage = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(4, this->_internal_system_ram_usage(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.GraphicsAdapterInfo)
+  return target;
+}
+
+size_t GraphicsAdapterInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.GraphicsAdapterInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string driver_version = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_driver_version());
+    }
+
+    // optional uint64 device_id = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_device_id());
+    }
+
+    // optional uint64 system_ram_usage = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_system_ram_usage());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void GraphicsAdapterInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const GraphicsAdapterInfo*>(
+      &from));
+}
+
+void GraphicsAdapterInfo::MergeFrom(const GraphicsAdapterInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.GraphicsAdapterInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      driver_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.driver_version_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      device_id_ = from.device_id_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      system_ram_usage_ = from.system_ram_usage_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void GraphicsAdapterInfo::CopyFrom(const GraphicsAdapterInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.GraphicsAdapterInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool GraphicsAdapterInfo::IsInitialized() const {
+  return true;
+}
+
+void GraphicsAdapterInfo::InternalSwap(GraphicsAdapterInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  driver_version_.Swap(&other->driver_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(device_id_, other->device_id_);
+  swap(system_ram_usage_, other->system_ram_usage_);
+}
+
+std::string GraphicsAdapterInfo::GetTypeName() const {
+  return "enterprise_management.GraphicsAdapterInfo";
+}
+
+
+// ===================================================================
+
+void GraphicsStatus::InitAsDefaultInstance() {
+  ::enterprise_management::_GraphicsStatus_default_instance_._instance.get_mutable()->adapter_ = const_cast< ::enterprise_management::GraphicsAdapterInfo*>(
+      ::enterprise_management::GraphicsAdapterInfo::internal_default_instance());
+}
+class GraphicsStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<GraphicsStatus>()._has_bits_);
+  static const ::enterprise_management::GraphicsAdapterInfo& adapter(const GraphicsStatus* msg);
+  static void set_has_adapter(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::GraphicsAdapterInfo&
+GraphicsStatus::_Internal::adapter(const GraphicsStatus* msg) {
+  return *msg->adapter_;
+}
+GraphicsStatus::GraphicsStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.GraphicsStatus)
+}
+GraphicsStatus::GraphicsStatus(const GraphicsStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      displays_(from.displays_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_adapter()) {
+    adapter_ = new ::enterprise_management::GraphicsAdapterInfo(*from.adapter_);
+  } else {
+    adapter_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.GraphicsStatus)
+}
+
+void GraphicsStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_GraphicsStatus_device_5fmanagement_5fbackend_2eproto.base);
+  adapter_ = nullptr;
+}
+
+GraphicsStatus::~GraphicsStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.GraphicsStatus)
+  SharedDtor();
+}
+
+void GraphicsStatus::SharedDtor() {
+  if (this != internal_default_instance()) delete adapter_;
+}
+
+void GraphicsStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const GraphicsStatus& GraphicsStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_GraphicsStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void GraphicsStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.GraphicsStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  displays_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(adapter_ != nullptr);
+    adapter_->Clear();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* GraphicsStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.GraphicsAdapterInfo adapter = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_adapter(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.DisplayInfo displays = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_displays(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* GraphicsStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.GraphicsStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.GraphicsAdapterInfo adapter = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::adapter(this), target, stream);
+  }
+
+  // repeated .enterprise_management.DisplayInfo displays = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_displays_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_displays(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.GraphicsStatus)
+  return target;
+}
+
+size_t GraphicsStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.GraphicsStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.DisplayInfo displays = 2;
+  total_size += 1UL * this->_internal_displays_size();
+  for (const auto& msg : this->displays_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // optional .enterprise_management.GraphicsAdapterInfo adapter = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *adapter_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void GraphicsStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const GraphicsStatus*>(
+      &from));
+}
+
+void GraphicsStatus::MergeFrom(const GraphicsStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.GraphicsStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  displays_.MergeFrom(from.displays_);
+  if (from._internal_has_adapter()) {
+    _internal_mutable_adapter()->::enterprise_management::GraphicsAdapterInfo::MergeFrom(from._internal_adapter());
+  }
+}
+
+void GraphicsStatus::CopyFrom(const GraphicsStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.GraphicsStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool GraphicsStatus::IsInitialized() const {
+  return true;
+}
+
+void GraphicsStatus::InternalSwap(GraphicsStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  displays_.InternalSwap(&other->displays_);
+  swap(adapter_, other->adapter_);
+}
+
+std::string GraphicsStatus::GetTypeName() const {
+  return "enterprise_management.GraphicsStatus";
+}
+
+
+// ===================================================================
+
+void CrashReportInfo::InitAsDefaultInstance() {
+}
+class CrashReportInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CrashReportInfo>()._has_bits_);
+  static void set_has_remote_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_capture_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_cause(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_upload_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+CrashReportInfo::CrashReportInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CrashReportInfo)
+}
+CrashReportInfo::CrashReportInfo(const CrashReportInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  remote_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_remote_id()) {
+    remote_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.remote_id_);
+  }
+  cause_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_cause()) {
+    cause_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cause_);
+  }
+  ::memcpy(&capture_timestamp_, &from.capture_timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&upload_status_) -
+    reinterpret_cast<char*>(&capture_timestamp_)) + sizeof(upload_status_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CrashReportInfo)
+}
+
+void CrashReportInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CrashReportInfo_device_5fmanagement_5fbackend_2eproto.base);
+  remote_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  cause_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&capture_timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&upload_status_) -
+      reinterpret_cast<char*>(&capture_timestamp_)) + sizeof(upload_status_));
+}
+
+CrashReportInfo::~CrashReportInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CrashReportInfo)
+  SharedDtor();
+}
+
+void CrashReportInfo::SharedDtor() {
+  remote_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  cause_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CrashReportInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CrashReportInfo& CrashReportInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CrashReportInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CrashReportInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CrashReportInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      remote_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      cause_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000000cu) {
+    ::memset(&capture_timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&upload_status_) -
+        reinterpret_cast<char*>(&capture_timestamp_)) + sizeof(upload_status_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CrashReportInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string remote_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_remote_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 capture_timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_capture_timestamp(&has_bits);
+          capture_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string cause = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_cause();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CrashReportInfo.CrashReportUploadStatus upload_status = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::CrashReportInfo_CrashReportUploadStatus_IsValid(val))) {
+            _internal_set_upload_status(static_cast<::enterprise_management::CrashReportInfo_CrashReportUploadStatus>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CrashReportInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CrashReportInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string remote_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_remote_id(), target);
+  }
+
+  // optional int64 capture_timestamp = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_capture_timestamp(), target);
+  }
+
+  // optional string cause = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_cause(), target);
+  }
+
+  // optional .enterprise_management.CrashReportInfo.CrashReportUploadStatus upload_status = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_upload_status(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CrashReportInfo)
+  return target;
+}
+
+size_t CrashReportInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CrashReportInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string remote_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_remote_id());
+    }
+
+    // optional string cause = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_cause());
+    }
+
+    // optional int64 capture_timestamp = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_capture_timestamp());
+    }
+
+    // optional .enterprise_management.CrashReportInfo.CrashReportUploadStatus upload_status = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_upload_status());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CrashReportInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CrashReportInfo*>(
+      &from));
+}
+
+void CrashReportInfo::MergeFrom(const CrashReportInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CrashReportInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      remote_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.remote_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      cause_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cause_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      capture_timestamp_ = from.capture_timestamp_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      upload_status_ = from.upload_status_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CrashReportInfo::CopyFrom(const CrashReportInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CrashReportInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CrashReportInfo::IsInitialized() const {
+  return true;
+}
+
+void CrashReportInfo::InternalSwap(CrashReportInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  remote_id_.Swap(&other->remote_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  cause_.Swap(&other->cause_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(capture_timestamp_, other->capture_timestamp_);
+  swap(upload_status_, other->upload_status_);
+}
+
+std::string CrashReportInfo::GetTypeName() const {
+  return "enterprise_management.CrashReportInfo";
+}
+
+
+// ===================================================================
+
+void TimezoneInfo::InitAsDefaultInstance() {
+}
+class TimezoneInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<TimezoneInfo>()._has_bits_);
+  static void set_has_posix(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_region(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+TimezoneInfo::TimezoneInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.TimezoneInfo)
+}
+TimezoneInfo::TimezoneInfo(const TimezoneInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  posix_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_posix()) {
+    posix_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.posix_);
+  }
+  region_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_region()) {
+    region_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.region_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.TimezoneInfo)
+}
+
+void TimezoneInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_TimezoneInfo_device_5fmanagement_5fbackend_2eproto.base);
+  posix_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  region_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+TimezoneInfo::~TimezoneInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.TimezoneInfo)
+  SharedDtor();
+}
+
+void TimezoneInfo::SharedDtor() {
+  posix_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  region_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void TimezoneInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const TimezoneInfo& TimezoneInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_TimezoneInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void TimezoneInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.TimezoneInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      posix_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      region_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* TimezoneInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string posix = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_posix();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string region = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_region();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* TimezoneInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.TimezoneInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string posix = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_posix(), target);
+  }
+
+  // optional string region = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_region(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.TimezoneInfo)
+  return target;
+}
+
+size_t TimezoneInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.TimezoneInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string posix = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_posix());
+    }
+
+    // optional string region = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_region());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void TimezoneInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const TimezoneInfo*>(
+      &from));
+}
+
+void TimezoneInfo::MergeFrom(const TimezoneInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.TimezoneInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      posix_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.posix_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      region_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.region_);
+    }
+  }
+}
+
+void TimezoneInfo::CopyFrom(const TimezoneInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.TimezoneInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool TimezoneInfo::IsInitialized() const {
+  return true;
+}
+
+void TimezoneInfo::InternalSwap(TimezoneInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  posix_.Swap(&other->posix_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  region_.Swap(&other->region_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string TimezoneInfo::GetTypeName() const {
+  return "enterprise_management.TimezoneInfo";
+}
+
+
+// ===================================================================
+
+void MemoryInfo::InitAsDefaultInstance() {
+}
+class MemoryInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<MemoryInfo>()._has_bits_);
+  static void set_has_total_memory_kib(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_free_memory_kib(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_available_memory_kib(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_page_faults_since_last_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+MemoryInfo::MemoryInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.MemoryInfo)
+}
+MemoryInfo::MemoryInfo(const MemoryInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&total_memory_kib_, &from.total_memory_kib_,
+    static_cast<size_t>(reinterpret_cast<char*>(&available_memory_kib_) -
+    reinterpret_cast<char*>(&total_memory_kib_)) + sizeof(available_memory_kib_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.MemoryInfo)
+}
+
+void MemoryInfo::SharedCtor() {
+  ::memset(&total_memory_kib_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&available_memory_kib_) -
+      reinterpret_cast<char*>(&total_memory_kib_)) + sizeof(available_memory_kib_));
+}
+
+MemoryInfo::~MemoryInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.MemoryInfo)
+  SharedDtor();
+}
+
+void MemoryInfo::SharedDtor() {
+}
+
+void MemoryInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const MemoryInfo& MemoryInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_MemoryInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void MemoryInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.MemoryInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    ::memset(&total_memory_kib_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&available_memory_kib_) -
+        reinterpret_cast<char*>(&total_memory_kib_)) + sizeof(available_memory_kib_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* MemoryInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 total_memory_kib = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_total_memory_kib(&has_bits);
+          total_memory_kib_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 free_memory_kib = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_free_memory_kib(&has_bits);
+          free_memory_kib_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 available_memory_kib = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_available_memory_kib(&has_bits);
+          available_memory_kib_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 page_faults_since_last_boot = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_page_faults_since_last_boot(&has_bits);
+          page_faults_since_last_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* MemoryInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.MemoryInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 total_memory_kib = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_total_memory_kib(), target);
+  }
+
+  // optional uint32 free_memory_kib = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(2, this->_internal_free_memory_kib(), target);
+  }
+
+  // optional uint32 available_memory_kib = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(3, this->_internal_available_memory_kib(), target);
+  }
+
+  // optional uint64 page_faults_since_last_boot = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(4, this->_internal_page_faults_since_last_boot(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.MemoryInfo)
+  return target;
+}
+
+size_t MemoryInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.MemoryInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional uint32 total_memory_kib = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_total_memory_kib());
+    }
+
+    // optional uint32 free_memory_kib = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_free_memory_kib());
+    }
+
+    // optional uint64 page_faults_since_last_boot = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_page_faults_since_last_boot());
+    }
+
+    // optional uint32 available_memory_kib = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_available_memory_kib());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void MemoryInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const MemoryInfo*>(
+      &from));
+}
+
+void MemoryInfo::MergeFrom(const MemoryInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.MemoryInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      total_memory_kib_ = from.total_memory_kib_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      free_memory_kib_ = from.free_memory_kib_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      page_faults_since_last_boot_ = from.page_faults_since_last_boot_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      available_memory_kib_ = from.available_memory_kib_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void MemoryInfo::CopyFrom(const MemoryInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.MemoryInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool MemoryInfo::IsInitialized() const {
+  return true;
+}
+
+void MemoryInfo::InternalSwap(MemoryInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(total_memory_kib_, other->total_memory_kib_);
+  swap(free_memory_kib_, other->free_memory_kib_);
+  swap(page_faults_since_last_boot_, other->page_faults_since_last_boot_);
+  swap(available_memory_kib_, other->available_memory_kib_);
+}
+
+std::string MemoryInfo::GetTypeName() const {
+  return "enterprise_management.MemoryInfo";
+}
+
+
+// ===================================================================
+
+void BacklightInfo::InitAsDefaultInstance() {
+}
+class BacklightInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BacklightInfo>()._has_bits_);
+  static void set_has_path(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_max_brightness(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_brightness(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+BacklightInfo::BacklightInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BacklightInfo)
+}
+BacklightInfo::BacklightInfo(const BacklightInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_path()) {
+    path_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.path_);
+  }
+  ::memcpy(&max_brightness_, &from.max_brightness_,
+    static_cast<size_t>(reinterpret_cast<char*>(&brightness_) -
+    reinterpret_cast<char*>(&max_brightness_)) + sizeof(brightness_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BacklightInfo)
+}
+
+void BacklightInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BacklightInfo_device_5fmanagement_5fbackend_2eproto.base);
+  path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&max_brightness_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&brightness_) -
+      reinterpret_cast<char*>(&max_brightness_)) + sizeof(brightness_));
+}
+
+BacklightInfo::~BacklightInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BacklightInfo)
+  SharedDtor();
+}
+
+void BacklightInfo::SharedDtor() {
+  path_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void BacklightInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BacklightInfo& BacklightInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BacklightInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BacklightInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BacklightInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    path_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&max_brightness_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&brightness_) -
+        reinterpret_cast<char*>(&max_brightness_)) + sizeof(brightness_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BacklightInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string path = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_path();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 max_brightness = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_max_brightness(&has_bits);
+          max_brightness_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 brightness = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_brightness(&has_bits);
+          brightness_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BacklightInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BacklightInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string path = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_path(), target);
+  }
+
+  // optional uint32 max_brightness = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(2, this->_internal_max_brightness(), target);
+  }
+
+  // optional uint32 brightness = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(3, this->_internal_brightness(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BacklightInfo)
+  return target;
+}
+
+size_t BacklightInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BacklightInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string path = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_path());
+    }
+
+    // optional uint32 max_brightness = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_max_brightness());
+    }
+
+    // optional uint32 brightness = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_brightness());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BacklightInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BacklightInfo*>(
+      &from));
+}
+
+void BacklightInfo::MergeFrom(const BacklightInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BacklightInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      path_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.path_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      max_brightness_ = from.max_brightness_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      brightness_ = from.brightness_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void BacklightInfo::CopyFrom(const BacklightInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BacklightInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BacklightInfo::IsInitialized() const {
+  return true;
+}
+
+void BacklightInfo::InternalSwap(BacklightInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  path_.Swap(&other->path_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(max_brightness_, other->max_brightness_);
+  swap(brightness_, other->brightness_);
+}
+
+std::string BacklightInfo::GetTypeName() const {
+  return "enterprise_management.BacklightInfo";
+}
+
+
+// ===================================================================
+
+void FanInfo::InitAsDefaultInstance() {
+}
+class FanInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<FanInfo>()._has_bits_);
+  static void set_has_speed_rpm(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+FanInfo::FanInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.FanInfo)
+}
+FanInfo::FanInfo(const FanInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  speed_rpm_ = from.speed_rpm_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.FanInfo)
+}
+
+void FanInfo::SharedCtor() {
+  speed_rpm_ = 0u;
+}
+
+FanInfo::~FanInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.FanInfo)
+  SharedDtor();
+}
+
+void FanInfo::SharedDtor() {
+}
+
+void FanInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const FanInfo& FanInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_FanInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void FanInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.FanInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  speed_rpm_ = 0u;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* FanInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 speed_rpm = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_speed_rpm(&has_bits);
+          speed_rpm_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* FanInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.FanInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 speed_rpm = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_speed_rpm(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.FanInfo)
+  return target;
+}
+
+size_t FanInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.FanInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional uint32 speed_rpm = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+        this->_internal_speed_rpm());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void FanInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const FanInfo*>(
+      &from));
+}
+
+void FanInfo::MergeFrom(const FanInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.FanInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_speed_rpm()) {
+    _internal_set_speed_rpm(from._internal_speed_rpm());
+  }
+}
+
+void FanInfo::CopyFrom(const FanInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.FanInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool FanInfo::IsInitialized() const {
+  return true;
+}
+
+void FanInfo::InternalSwap(FanInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(speed_rpm_, other->speed_rpm_);
+}
+
+std::string FanInfo::GetTypeName() const {
+  return "enterprise_management.FanInfo";
+}
+
+
+// ===================================================================
+
+void BluetoothAdapterInfo::InitAsDefaultInstance() {
+}
+class BluetoothAdapterInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BluetoothAdapterInfo>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_address(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_powered(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_num_connected_devices(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+BluetoothAdapterInfo::BluetoothAdapterInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BluetoothAdapterInfo)
+}
+BluetoothAdapterInfo::BluetoothAdapterInfo(const BluetoothAdapterInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_address()) {
+    address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.address_);
+  }
+  ::memcpy(&powered_, &from.powered_,
+    static_cast<size_t>(reinterpret_cast<char*>(&num_connected_devices_) -
+    reinterpret_cast<char*>(&powered_)) + sizeof(num_connected_devices_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BluetoothAdapterInfo)
+}
+
+void BluetoothAdapterInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BluetoothAdapterInfo_device_5fmanagement_5fbackend_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&powered_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&num_connected_devices_) -
+      reinterpret_cast<char*>(&powered_)) + sizeof(num_connected_devices_));
+}
+
+BluetoothAdapterInfo::~BluetoothAdapterInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BluetoothAdapterInfo)
+  SharedDtor();
+}
+
+void BluetoothAdapterInfo::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  address_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void BluetoothAdapterInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BluetoothAdapterInfo& BluetoothAdapterInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BluetoothAdapterInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BluetoothAdapterInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BluetoothAdapterInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      address_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000000cu) {
+    ::memset(&powered_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&num_connected_devices_) -
+        reinterpret_cast<char*>(&powered_)) + sizeof(num_connected_devices_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BluetoothAdapterInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string address = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_address();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool powered = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_powered(&has_bits);
+          powered_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 num_connected_devices = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_num_connected_devices(&has_bits);
+          num_connected_devices_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BluetoothAdapterInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BluetoothAdapterInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional string address = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_address(), target);
+  }
+
+  // optional bool powered = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_powered(), target);
+  }
+
+  // optional uint32 num_connected_devices = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(4, this->_internal_num_connected_devices(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BluetoothAdapterInfo)
+  return target;
+}
+
+size_t BluetoothAdapterInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BluetoothAdapterInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string address = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_address());
+    }
+
+    // optional bool powered = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+    // optional uint32 num_connected_devices = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_num_connected_devices());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BluetoothAdapterInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BluetoothAdapterInfo*>(
+      &from));
+}
+
+void BluetoothAdapterInfo::MergeFrom(const BluetoothAdapterInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BluetoothAdapterInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.address_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      powered_ = from.powered_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      num_connected_devices_ = from.num_connected_devices_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void BluetoothAdapterInfo::CopyFrom(const BluetoothAdapterInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BluetoothAdapterInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BluetoothAdapterInfo::IsInitialized() const {
+  return true;
+}
+
+void BluetoothAdapterInfo::InternalSwap(BluetoothAdapterInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  address_.Swap(&other->address_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(powered_, other->powered_);
+  swap(num_connected_devices_, other->num_connected_devices_);
+}
+
+std::string BluetoothAdapterInfo::GetTypeName() const {
+  return "enterprise_management.BluetoothAdapterInfo";
+}
+
+
+// ===================================================================
+
+void SmbiosInfo::InitAsDefaultInstance() {
+}
+class SmbiosInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SmbiosInfo>()._has_bits_);
+  static void set_has_sys_vendor(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_product_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_product_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_bios_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+SmbiosInfo::SmbiosInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SmbiosInfo)
+}
+SmbiosInfo::SmbiosInfo(const SmbiosInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  sys_vendor_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_sys_vendor()) {
+    sys_vendor_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sys_vendor_);
+  }
+  product_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_product_name()) {
+    product_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.product_name_);
+  }
+  product_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_product_version()) {
+    product_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.product_version_);
+  }
+  bios_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_bios_version()) {
+    bios_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.bios_version_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SmbiosInfo)
+}
+
+void SmbiosInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SmbiosInfo_device_5fmanagement_5fbackend_2eproto.base);
+  sys_vendor_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  product_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  product_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  bios_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+SmbiosInfo::~SmbiosInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SmbiosInfo)
+  SharedDtor();
+}
+
+void SmbiosInfo::SharedDtor() {
+  sys_vendor_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  product_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  product_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  bios_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SmbiosInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SmbiosInfo& SmbiosInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SmbiosInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SmbiosInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SmbiosInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      sys_vendor_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      product_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      product_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      bios_version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SmbiosInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string sys_vendor = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_sys_vendor();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string product_name = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_product_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string product_version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_product_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string bios_version = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_bios_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SmbiosInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SmbiosInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string sys_vendor = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_sys_vendor(), target);
+  }
+
+  // optional string product_name = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_product_name(), target);
+  }
+
+  // optional string product_version = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_product_version(), target);
+  }
+
+  // optional string bios_version = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_bios_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SmbiosInfo)
+  return target;
+}
+
+size_t SmbiosInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SmbiosInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string sys_vendor = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_sys_vendor());
+    }
+
+    // optional string product_name = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_product_name());
+    }
+
+    // optional string product_version = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_product_version());
+    }
+
+    // optional string bios_version = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_bios_version());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SmbiosInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SmbiosInfo*>(
+      &from));
+}
+
+void SmbiosInfo::MergeFrom(const SmbiosInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SmbiosInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      sys_vendor_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sys_vendor_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      product_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.product_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      product_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.product_version_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      bios_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.bios_version_);
+    }
+  }
+}
+
+void SmbiosInfo::CopyFrom(const SmbiosInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SmbiosInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SmbiosInfo::IsInitialized() const {
+  return true;
+}
+
+void SmbiosInfo::InternalSwap(SmbiosInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  sys_vendor_.Swap(&other->sys_vendor_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  product_name_.Swap(&other->product_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  product_version_.Swap(&other->product_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  bios_version_.Swap(&other->bios_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string SmbiosInfo::GetTypeName() const {
+  return "enterprise_management.SmbiosInfo";
+}
+
+
+// ===================================================================
+
+void KernelParameters::InitAsDefaultInstance() {
+}
+class KernelParameters::_Internal {
+ public:
+  using HasBits = decltype(std::declval<KernelParameters>()._has_bits_);
+  static void set_has_cros_efi(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+KernelParameters::KernelParameters()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.KernelParameters)
+}
+KernelParameters::KernelParameters(const KernelParameters& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  cros_efi_ = from.cros_efi_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.KernelParameters)
+}
+
+void KernelParameters::SharedCtor() {
+  cros_efi_ = false;
+}
+
+KernelParameters::~KernelParameters() {
+  // @@protoc_insertion_point(destructor:enterprise_management.KernelParameters)
+  SharedDtor();
+}
+
+void KernelParameters::SharedDtor() {
+}
+
+void KernelParameters::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const KernelParameters& KernelParameters::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_KernelParameters_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void KernelParameters::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.KernelParameters)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cros_efi_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* KernelParameters::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool cros_efi = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_cros_efi(&has_bits);
+          cros_efi_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* KernelParameters::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.KernelParameters)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool cros_efi = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_cros_efi(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.KernelParameters)
+  return target;
+}
+
+size_t KernelParameters::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.KernelParameters)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool cros_efi = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void KernelParameters::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const KernelParameters*>(
+      &from));
+}
+
+void KernelParameters::MergeFrom(const KernelParameters& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.KernelParameters)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_cros_efi()) {
+    _internal_set_cros_efi(from._internal_cros_efi());
+  }
+}
+
+void KernelParameters::CopyFrom(const KernelParameters& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.KernelParameters)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool KernelParameters::IsInitialized() const {
+  return true;
+}
+
+void KernelParameters::InternalSwap(KernelParameters* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(cros_efi_, other->cros_efi_);
+}
+
+std::string KernelParameters::GetTypeName() const {
+  return "enterprise_management.KernelParameters";
+}
+
+
+// ===================================================================
+
+void EFIVars::InitAsDefaultInstance() {
+}
+class EFIVars::_Internal {
+ public:
+  using HasBits = decltype(std::declval<EFIVars>()._has_bits_);
+  static void set_has_secure_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+EFIVars::EFIVars()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.EFIVars)
+}
+EFIVars::EFIVars(const EFIVars& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  secure_boot_ = from.secure_boot_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.EFIVars)
+}
+
+void EFIVars::SharedCtor() {
+  secure_boot_ = false;
+}
+
+EFIVars::~EFIVars() {
+  // @@protoc_insertion_point(destructor:enterprise_management.EFIVars)
+  SharedDtor();
+}
+
+void EFIVars::SharedDtor() {
+}
+
+void EFIVars::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const EFIVars& EFIVars::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_EFIVars_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void EFIVars::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.EFIVars)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  secure_boot_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* EFIVars::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool secure_boot = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_secure_boot(&has_bits);
+          secure_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* EFIVars::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.EFIVars)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool secure_boot = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_secure_boot(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.EFIVars)
+  return target;
+}
+
+size_t EFIVars::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.EFIVars)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool secure_boot = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void EFIVars::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const EFIVars*>(
+      &from));
+}
+
+void EFIVars::MergeFrom(const EFIVars& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.EFIVars)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_secure_boot()) {
+    _internal_set_secure_boot(from._internal_secure_boot());
+  }
+}
+
+void EFIVars::CopyFrom(const EFIVars& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.EFIVars)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool EFIVars::IsInitialized() const {
+  return true;
+}
+
+void EFIVars::InternalSwap(EFIVars* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(secure_boot_, other->secure_boot_);
+}
+
+std::string EFIVars::GetTypeName() const {
+  return "enterprise_management.EFIVars";
+}
+
+
+// ===================================================================
+
+void BootInfo::InitAsDefaultInstance() {
+}
+class BootInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BootInfo>()._has_bits_);
+  static void set_has_boot_method(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_secure_boot(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+BootInfo::BootInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BootInfo)
+}
+BootInfo::BootInfo(const BootInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&boot_method_, &from.boot_method_,
+    static_cast<size_t>(reinterpret_cast<char*>(&secure_boot_) -
+    reinterpret_cast<char*>(&boot_method_)) + sizeof(secure_boot_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BootInfo)
+}
+
+void BootInfo::SharedCtor() {
+  ::memset(&boot_method_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&secure_boot_) -
+      reinterpret_cast<char*>(&boot_method_)) + sizeof(secure_boot_));
+}
+
+BootInfo::~BootInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BootInfo)
+  SharedDtor();
+}
+
+void BootInfo::SharedDtor() {
+}
+
+void BootInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BootInfo& BootInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BootInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BootInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BootInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&boot_method_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&secure_boot_) -
+        reinterpret_cast<char*>(&boot_method_)) + sizeof(secure_boot_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BootInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.BootInfo.BootMethod boot_method = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::BootInfo_BootMethod_IsValid(val))) {
+            _internal_set_boot_method(static_cast<::enterprise_management::BootInfo_BootMethod>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bool secure_boot = 2 [deprecated = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_secure_boot(&has_bits);
+          secure_boot_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BootInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BootInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.BootInfo.BootMethod boot_method = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_boot_method(), target);
+  }
+
+  // optional bool secure_boot = 2 [deprecated = true];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_secure_boot(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BootInfo)
+  return target;
+}
+
+size_t BootInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BootInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.BootInfo.BootMethod boot_method = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_boot_method());
+    }
+
+    // optional bool secure_boot = 2 [deprecated = true];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BootInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BootInfo*>(
+      &from));
+}
+
+void BootInfo::MergeFrom(const BootInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BootInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      boot_method_ = from.boot_method_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      secure_boot_ = from.secure_boot_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void BootInfo::CopyFrom(const BootInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BootInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BootInfo::IsInitialized() const {
+  return true;
+}
+
+void BootInfo::InternalSwap(BootInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(boot_method_, other->boot_method_);
+  swap(secure_boot_, other->secure_boot_);
+}
+
+std::string BootInfo::GetTypeName() const {
+  return "enterprise_management.BootInfo";
+}
+
+
+// ===================================================================
+
+void NetworkAdapterInfo::InitAsDefaultInstance() {
+}
+class NetworkAdapterInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<NetworkAdapterInfo>()._has_bits_);
+  static void set_has_device_class(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_bus_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_vendor_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_vendor_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_device_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+NetworkAdapterInfo::NetworkAdapterInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.NetworkAdapterInfo)
+}
+NetworkAdapterInfo::NetworkAdapterInfo(const NetworkAdapterInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      driver_(from.driver_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  vendor_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_vendor_name()) {
+    vendor_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vendor_name_);
+  }
+  device_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_name()) {
+    device_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_name_);
+  }
+  ::memcpy(&device_class_, &from.device_class_,
+    static_cast<size_t>(reinterpret_cast<char*>(&device_id_) -
+    reinterpret_cast<char*>(&device_class_)) + sizeof(device_id_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.NetworkAdapterInfo)
+}
+
+void NetworkAdapterInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_NetworkAdapterInfo_device_5fmanagement_5fbackend_2eproto.base);
+  vendor_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&device_class_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&device_id_) -
+      reinterpret_cast<char*>(&device_class_)) + sizeof(device_id_));
+}
+
+NetworkAdapterInfo::~NetworkAdapterInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.NetworkAdapterInfo)
+  SharedDtor();
+}
+
+void NetworkAdapterInfo::SharedDtor() {
+  vendor_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void NetworkAdapterInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const NetworkAdapterInfo& NetworkAdapterInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_NetworkAdapterInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void NetworkAdapterInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.NetworkAdapterInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  driver_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      vendor_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      device_name_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000003cu) {
+    ::memset(&device_class_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&device_id_) -
+        reinterpret_cast<char*>(&device_class_)) + sizeof(device_id_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* NetworkAdapterInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.BusDeviceClass device_class = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::BusDeviceClass_IsValid(val))) {
+            _internal_set_device_class(static_cast<::enterprise_management::BusDeviceClass>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BusType bus_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::BusType_IsValid(val))) {
+            _internal_set_bus_type(static_cast<::enterprise_management::BusType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 vendor_id = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_vendor_id(&has_bits);
+          vendor_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string vendor_name = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_vendor_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 device_id = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_device_id(&has_bits);
+          device_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_name = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_device_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated string driver = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_driver();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* NetworkAdapterInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.NetworkAdapterInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.BusDeviceClass device_class = 1;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_device_class(), target);
+  }
+
+  // optional .enterprise_management.BusType bus_type = 2;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_bus_type(), target);
+  }
+
+  // optional int32 vendor_id = 3;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_vendor_id(), target);
+  }
+
+  // optional string vendor_name = 4;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_vendor_name(), target);
+  }
+
+  // optional int32 device_id = 5;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_device_id(), target);
+  }
+
+  // optional string device_name = 6;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_device_name(), target);
+  }
+
+  // repeated string driver = 7;
+  for (int i = 0, n = this->_internal_driver_size(); i < n; i++) {
+    const auto& s = this->_internal_driver(i);
+    target = stream->WriteString(7, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.NetworkAdapterInfo)
+  return target;
+}
+
+size_t NetworkAdapterInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.NetworkAdapterInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string driver = 7;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(driver_.size());
+  for (int i = 0, n = driver_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      driver_.Get(i));
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string vendor_name = 4;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_vendor_name());
+    }
+
+    // optional string device_name = 6;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_name());
+    }
+
+    // optional .enterprise_management.BusDeviceClass device_class = 1;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_device_class());
+    }
+
+    // optional .enterprise_management.BusType bus_type = 2;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_bus_type());
+    }
+
+    // optional int32 vendor_id = 3;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_vendor_id());
+    }
+
+    // optional int32 device_id = 5;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_device_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void NetworkAdapterInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const NetworkAdapterInfo*>(
+      &from));
+}
+
+void NetworkAdapterInfo::MergeFrom(const NetworkAdapterInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.NetworkAdapterInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  driver_.MergeFrom(from.driver_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      vendor_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vendor_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      device_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      device_class_ = from.device_class_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      bus_type_ = from.bus_type_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      vendor_id_ = from.vendor_id_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      device_id_ = from.device_id_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void NetworkAdapterInfo::CopyFrom(const NetworkAdapterInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.NetworkAdapterInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool NetworkAdapterInfo::IsInitialized() const {
+  return true;
+}
+
+void NetworkAdapterInfo::InternalSwap(NetworkAdapterInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  driver_.InternalSwap(&other->driver_);
+  vendor_name_.Swap(&other->vendor_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_name_.Swap(&other->device_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(device_class_, other->device_class_);
+  swap(bus_type_, other->bus_type_);
+  swap(vendor_id_, other->vendor_id_);
+  swap(device_id_, other->device_id_);
+}
+
+std::string NetworkAdapterInfo::GetTypeName() const {
+  return "enterprise_management.NetworkAdapterInfo";
+}
+
+
+// ===================================================================
+
+void LaCrOsBrowserReport::InitAsDefaultInstance() {
+  ::enterprise_management::_LaCrOsBrowserReport_default_instance_._instance.get_mutable()->device_user_ = const_cast< ::enterprise_management::DeviceUser*>(
+      ::enterprise_management::DeviceUser::internal_default_instance());
+  ::enterprise_management::_LaCrOsBrowserReport_default_instance_._instance.get_mutable()->browser_report_ = const_cast< ::enterprise_management::BrowserReport*>(
+      ::enterprise_management::BrowserReport::internal_default_instance());
+}
+class LaCrOsBrowserReport::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LaCrOsBrowserReport>()._has_bits_);
+  static const ::enterprise_management::DeviceUser& device_user(const LaCrOsBrowserReport* msg);
+  static void set_has_device_user(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::BrowserReport& browser_report(const LaCrOsBrowserReport* msg);
+  static void set_has_browser_report(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::DeviceUser&
+LaCrOsBrowserReport::_Internal::device_user(const LaCrOsBrowserReport* msg) {
+  return *msg->device_user_;
+}
+const ::enterprise_management::BrowserReport&
+LaCrOsBrowserReport::_Internal::browser_report(const LaCrOsBrowserReport* msg) {
+  return *msg->browser_report_;
+}
+LaCrOsBrowserReport::LaCrOsBrowserReport()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LaCrOsBrowserReport)
+}
+LaCrOsBrowserReport::LaCrOsBrowserReport(const LaCrOsBrowserReport& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_device_user()) {
+    device_user_ = new ::enterprise_management::DeviceUser(*from.device_user_);
+  } else {
+    device_user_ = nullptr;
+  }
+  if (from._internal_has_browser_report()) {
+    browser_report_ = new ::enterprise_management::BrowserReport(*from.browser_report_);
+  } else {
+    browser_report_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LaCrOsBrowserReport)
+}
+
+void LaCrOsBrowserReport::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_LaCrOsBrowserReport_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&device_user_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&browser_report_) -
+      reinterpret_cast<char*>(&device_user_)) + sizeof(browser_report_));
+}
+
+LaCrOsBrowserReport::~LaCrOsBrowserReport() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LaCrOsBrowserReport)
+  SharedDtor();
+}
+
+void LaCrOsBrowserReport::SharedDtor() {
+  if (this != internal_default_instance()) delete device_user_;
+  if (this != internal_default_instance()) delete browser_report_;
+}
+
+void LaCrOsBrowserReport::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LaCrOsBrowserReport& LaCrOsBrowserReport::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LaCrOsBrowserReport_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LaCrOsBrowserReport::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LaCrOsBrowserReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(device_user_ != nullptr);
+      device_user_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(browser_report_ != nullptr);
+      browser_report_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LaCrOsBrowserReport::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceUser device_user = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_user(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserReport browser_report = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_report(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LaCrOsBrowserReport::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LaCrOsBrowserReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceUser device_user = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::device_user(this), target, stream);
+  }
+
+  // optional .enterprise_management.BrowserReport browser_report = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::browser_report(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LaCrOsBrowserReport)
+  return target;
+}
+
+size_t LaCrOsBrowserReport::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LaCrOsBrowserReport)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.DeviceUser device_user = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_user_);
+    }
+
+    // optional .enterprise_management.BrowserReport browser_report = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *browser_report_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LaCrOsBrowserReport::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LaCrOsBrowserReport*>(
+      &from));
+}
+
+void LaCrOsBrowserReport::MergeFrom(const LaCrOsBrowserReport& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LaCrOsBrowserReport)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_device_user()->::enterprise_management::DeviceUser::MergeFrom(from._internal_device_user());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_browser_report()->::enterprise_management::BrowserReport::MergeFrom(from._internal_browser_report());
+    }
+  }
+}
+
+void LaCrOsBrowserReport::CopyFrom(const LaCrOsBrowserReport& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LaCrOsBrowserReport)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LaCrOsBrowserReport::IsInitialized() const {
+  if (_internal_has_device_user()) {
+    if (!device_user_->IsInitialized()) return false;
+  }
+  return true;
+}
+
+void LaCrOsBrowserReport::InternalSwap(LaCrOsBrowserReport* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(device_user_, other->device_user_);
+  swap(browser_report_, other->browser_report_);
+}
+
+std::string LaCrOsBrowserReport::GetTypeName() const {
+  return "enterprise_management.LaCrOsBrowserReport";
+}
+
+
+// ===================================================================
+
+void DeviceStatusReportRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->os_update_status_ = const_cast< ::enterprise_management::OsUpdateStatus*>(
+      ::enterprise_management::OsUpdateStatus::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->running_kiosk_app_ = const_cast< ::enterprise_management::AppStatus*>(
+      ::enterprise_management::AppStatus::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->tpm_version_info_ = const_cast< ::enterprise_management::TpmVersionInfo*>(
+      ::enterprise_management::TpmVersionInfo::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->tpm_status_info_ = const_cast< ::enterprise_management::TpmStatusInfo*>(
+      ::enterprise_management::TpmStatusInfo::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->power_status_ = const_cast< ::enterprise_management::PowerStatus*>(
+      ::enterprise_management::PowerStatus::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->storage_status_ = const_cast< ::enterprise_management::StorageStatus*>(
+      ::enterprise_management::StorageStatus::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->board_status_ = const_cast< ::enterprise_management::BoardStatus*>(
+      ::enterprise_management::BoardStatus::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->system_status_ = const_cast< ::enterprise_management::SystemStatus*>(
+      ::enterprise_management::SystemStatus::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->stateful_partition_info_ = const_cast< ::enterprise_management::StatefulPartitionInfo*>(
+      ::enterprise_management::StatefulPartitionInfo::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->graphics_status_ = const_cast< ::enterprise_management::GraphicsStatus*>(
+      ::enterprise_management::GraphicsStatus::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->timezone_info_ = const_cast< ::enterprise_management::TimezoneInfo*>(
+      ::enterprise_management::TimezoneInfo::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->memory_info_ = const_cast< ::enterprise_management::MemoryInfo*>(
+      ::enterprise_management::MemoryInfo::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->global_cpu_info_ = const_cast< ::enterprise_management::GlobalCpuInfo*>(
+      ::enterprise_management::GlobalCpuInfo::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->smbios_info_ = const_cast< ::enterprise_management::SmbiosInfo*>(
+      ::enterprise_management::SmbiosInfo::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->kernel_parameters_ = const_cast< ::enterprise_management::KernelParameters*>(
+      ::enterprise_management::KernelParameters::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->efi_vars_ = const_cast< ::enterprise_management::EFIVars*>(
+      ::enterprise_management::EFIVars::internal_default_instance());
+  ::enterprise_management::_DeviceStatusReportRequest_default_instance_._instance.get_mutable()->boot_info_ = const_cast< ::enterprise_management::BootInfo*>(
+      ::enterprise_management::BootInfo::internal_default_instance());
+}
+class DeviceStatusReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceStatusReportRequest>()._has_bits_);
+  static void set_has_os_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_firmware_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_boot_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_browser_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_system_ram_total(HasBits* has_bits) {
+    (*has_bits)[0] |= 2097152u;
+  }
+  static const ::enterprise_management::OsUpdateStatus& os_update_status(const DeviceStatusReportRequest* msg);
+  static void set_has_os_update_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static const ::enterprise_management::AppStatus& running_kiosk_app(const DeviceStatusReportRequest* msg);
+  static void set_has_running_kiosk_app(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_sound_volume(HasBits* has_bits) {
+    (*has_bits)[0] |= 4194304u;
+  }
+  static const ::enterprise_management::TpmVersionInfo& tpm_version_info(const DeviceStatusReportRequest* msg);
+  static void set_has_tpm_version_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_channel(HasBits* has_bits) {
+    (*has_bits)[0] |= 8388608u;
+  }
+  static const ::enterprise_management::TpmStatusInfo& tpm_status_info(const DeviceStatusReportRequest* msg);
+  static void set_has_tpm_status_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_write_protect_switch(HasBits* has_bits) {
+    (*has_bits)[0] |= 16777216u;
+  }
+  static const ::enterprise_management::PowerStatus& power_status(const DeviceStatusReportRequest* msg);
+  static void set_has_power_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static const ::enterprise_management::StorageStatus& storage_status(const DeviceStatusReportRequest* msg);
+  static void set_has_storage_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static const ::enterprise_management::BoardStatus& board_status(const DeviceStatusReportRequest* msg);
+  static void set_has_board_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static const ::enterprise_management::SystemStatus& system_status(const DeviceStatusReportRequest* msg);
+  static void set_has_system_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static const ::enterprise_management::StatefulPartitionInfo& stateful_partition_info(const DeviceStatusReportRequest* msg);
+  static void set_has_stateful_partition_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static const ::enterprise_management::GraphicsStatus& graphics_status(const DeviceStatusReportRequest* msg);
+  static void set_has_graphics_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static const ::enterprise_management::TimezoneInfo& timezone_info(const DeviceStatusReportRequest* msg);
+  static void set_has_timezone_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static const ::enterprise_management::MemoryInfo& memory_info(const DeviceStatusReportRequest* msg);
+  static void set_has_memory_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static const ::enterprise_management::GlobalCpuInfo& global_cpu_info(const DeviceStatusReportRequest* msg);
+  static void set_has_global_cpu_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static const ::enterprise_management::SmbiosInfo& smbios_info(const DeviceStatusReportRequest* msg);
+  static void set_has_smbios_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static const ::enterprise_management::KernelParameters& kernel_parameters(const DeviceStatusReportRequest* msg);
+  static void set_has_kernel_parameters(HasBits* has_bits) {
+    (*has_bits)[0] |= 262144u;
+  }
+  static const ::enterprise_management::EFIVars& efi_vars(const DeviceStatusReportRequest* msg);
+  static void set_has_efi_vars(HasBits* has_bits) {
+    (*has_bits)[0] |= 524288u;
+  }
+  static const ::enterprise_management::BootInfo& boot_info(const DeviceStatusReportRequest* msg);
+  static void set_has_boot_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 1048576u;
+  }
+};
+
+const ::enterprise_management::OsUpdateStatus&
+DeviceStatusReportRequest::_Internal::os_update_status(const DeviceStatusReportRequest* msg) {
+  return *msg->os_update_status_;
+}
+const ::enterprise_management::AppStatus&
+DeviceStatusReportRequest::_Internal::running_kiosk_app(const DeviceStatusReportRequest* msg) {
+  return *msg->running_kiosk_app_;
+}
+const ::enterprise_management::TpmVersionInfo&
+DeviceStatusReportRequest::_Internal::tpm_version_info(const DeviceStatusReportRequest* msg) {
+  return *msg->tpm_version_info_;
+}
+const ::enterprise_management::TpmStatusInfo&
+DeviceStatusReportRequest::_Internal::tpm_status_info(const DeviceStatusReportRequest* msg) {
+  return *msg->tpm_status_info_;
+}
+const ::enterprise_management::PowerStatus&
+DeviceStatusReportRequest::_Internal::power_status(const DeviceStatusReportRequest* msg) {
+  return *msg->power_status_;
+}
+const ::enterprise_management::StorageStatus&
+DeviceStatusReportRequest::_Internal::storage_status(const DeviceStatusReportRequest* msg) {
+  return *msg->storage_status_;
+}
+const ::enterprise_management::BoardStatus&
+DeviceStatusReportRequest::_Internal::board_status(const DeviceStatusReportRequest* msg) {
+  return *msg->board_status_;
+}
+const ::enterprise_management::SystemStatus&
+DeviceStatusReportRequest::_Internal::system_status(const DeviceStatusReportRequest* msg) {
+  return *msg->system_status_;
+}
+const ::enterprise_management::StatefulPartitionInfo&
+DeviceStatusReportRequest::_Internal::stateful_partition_info(const DeviceStatusReportRequest* msg) {
+  return *msg->stateful_partition_info_;
+}
+const ::enterprise_management::GraphicsStatus&
+DeviceStatusReportRequest::_Internal::graphics_status(const DeviceStatusReportRequest* msg) {
+  return *msg->graphics_status_;
+}
+const ::enterprise_management::TimezoneInfo&
+DeviceStatusReportRequest::_Internal::timezone_info(const DeviceStatusReportRequest* msg) {
+  return *msg->timezone_info_;
+}
+const ::enterprise_management::MemoryInfo&
+DeviceStatusReportRequest::_Internal::memory_info(const DeviceStatusReportRequest* msg) {
+  return *msg->memory_info_;
+}
+const ::enterprise_management::GlobalCpuInfo&
+DeviceStatusReportRequest::_Internal::global_cpu_info(const DeviceStatusReportRequest* msg) {
+  return *msg->global_cpu_info_;
+}
+const ::enterprise_management::SmbiosInfo&
+DeviceStatusReportRequest::_Internal::smbios_info(const DeviceStatusReportRequest* msg) {
+  return *msg->smbios_info_;
+}
+const ::enterprise_management::KernelParameters&
+DeviceStatusReportRequest::_Internal::kernel_parameters(const DeviceStatusReportRequest* msg) {
+  return *msg->kernel_parameters_;
+}
+const ::enterprise_management::EFIVars&
+DeviceStatusReportRequest::_Internal::efi_vars(const DeviceStatusReportRequest* msg) {
+  return *msg->efi_vars_;
+}
+const ::enterprise_management::BootInfo&
+DeviceStatusReportRequest::_Internal::boot_info(const DeviceStatusReportRequest* msg) {
+  return *msg->boot_info_;
+}
+DeviceStatusReportRequest::DeviceStatusReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceStatusReportRequest)
+}
+DeviceStatusReportRequest::DeviceStatusReportRequest(const DeviceStatusReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      active_periods_(from.active_periods_),
+      network_interfaces_(from.network_interfaces_),
+      users_(from.users_),
+      volume_infos_(from.volume_infos_),
+      network_states_(from.network_states_),
+      cpu_utilization_pct_samples_(from.cpu_utilization_pct_samples_),
+      system_ram_free_samples_(from.system_ram_free_samples_),
+      cpu_temp_infos_(from.cpu_temp_infos_),
+      cpu_utilization_infos_(from.cpu_utilization_infos_),
+      system_ram_free_infos_(from.system_ram_free_infos_),
+      cpu_info_(from.cpu_info_),
+      crash_report_infos_(from.crash_report_infos_),
+      backlight_info_(from.backlight_info_),
+      fan_info_(from.fan_info_),
+      bluetooth_adapter_info_(from.bluetooth_adapter_info_),
+      network_adapter_info_(from.network_adapter_info_),
+      lacros_browser_report_(from.lacros_browser_report_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  os_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_os_version()) {
+    os_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_version_);
+  }
+  firmware_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_firmware_version()) {
+    firmware_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.firmware_version_);
+  }
+  boot_mode_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_boot_mode()) {
+    boot_mode_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.boot_mode_);
+  }
+  browser_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_browser_version()) {
+    browser_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.browser_version_);
+  }
+  if (from._internal_has_os_update_status()) {
+    os_update_status_ = new ::enterprise_management::OsUpdateStatus(*from.os_update_status_);
+  } else {
+    os_update_status_ = nullptr;
+  }
+  if (from._internal_has_running_kiosk_app()) {
+    running_kiosk_app_ = new ::enterprise_management::AppStatus(*from.running_kiosk_app_);
+  } else {
+    running_kiosk_app_ = nullptr;
+  }
+  if (from._internal_has_tpm_version_info()) {
+    tpm_version_info_ = new ::enterprise_management::TpmVersionInfo(*from.tpm_version_info_);
+  } else {
+    tpm_version_info_ = nullptr;
+  }
+  if (from._internal_has_tpm_status_info()) {
+    tpm_status_info_ = new ::enterprise_management::TpmStatusInfo(*from.tpm_status_info_);
+  } else {
+    tpm_status_info_ = nullptr;
+  }
+  if (from._internal_has_power_status()) {
+    power_status_ = new ::enterprise_management::PowerStatus(*from.power_status_);
+  } else {
+    power_status_ = nullptr;
+  }
+  if (from._internal_has_storage_status()) {
+    storage_status_ = new ::enterprise_management::StorageStatus(*from.storage_status_);
+  } else {
+    storage_status_ = nullptr;
+  }
+  if (from._internal_has_board_status()) {
+    board_status_ = new ::enterprise_management::BoardStatus(*from.board_status_);
+  } else {
+    board_status_ = nullptr;
+  }
+  if (from._internal_has_system_status()) {
+    system_status_ = new ::enterprise_management::SystemStatus(*from.system_status_);
+  } else {
+    system_status_ = nullptr;
+  }
+  if (from._internal_has_stateful_partition_info()) {
+    stateful_partition_info_ = new ::enterprise_management::StatefulPartitionInfo(*from.stateful_partition_info_);
+  } else {
+    stateful_partition_info_ = nullptr;
+  }
+  if (from._internal_has_graphics_status()) {
+    graphics_status_ = new ::enterprise_management::GraphicsStatus(*from.graphics_status_);
+  } else {
+    graphics_status_ = nullptr;
+  }
+  if (from._internal_has_timezone_info()) {
+    timezone_info_ = new ::enterprise_management::TimezoneInfo(*from.timezone_info_);
+  } else {
+    timezone_info_ = nullptr;
+  }
+  if (from._internal_has_memory_info()) {
+    memory_info_ = new ::enterprise_management::MemoryInfo(*from.memory_info_);
+  } else {
+    memory_info_ = nullptr;
+  }
+  if (from._internal_has_global_cpu_info()) {
+    global_cpu_info_ = new ::enterprise_management::GlobalCpuInfo(*from.global_cpu_info_);
+  } else {
+    global_cpu_info_ = nullptr;
+  }
+  if (from._internal_has_smbios_info()) {
+    smbios_info_ = new ::enterprise_management::SmbiosInfo(*from.smbios_info_);
+  } else {
+    smbios_info_ = nullptr;
+  }
+  if (from._internal_has_kernel_parameters()) {
+    kernel_parameters_ = new ::enterprise_management::KernelParameters(*from.kernel_parameters_);
+  } else {
+    kernel_parameters_ = nullptr;
+  }
+  if (from._internal_has_efi_vars()) {
+    efi_vars_ = new ::enterprise_management::EFIVars(*from.efi_vars_);
+  } else {
+    efi_vars_ = nullptr;
+  }
+  if (from._internal_has_boot_info()) {
+    boot_info_ = new ::enterprise_management::BootInfo(*from.boot_info_);
+  } else {
+    boot_info_ = nullptr;
+  }
+  ::memcpy(&system_ram_total_, &from.system_ram_total_,
+    static_cast<size_t>(reinterpret_cast<char*>(&write_protect_switch_) -
+    reinterpret_cast<char*>(&system_ram_total_)) + sizeof(write_protect_switch_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceStatusReportRequest)
+}
+
+void DeviceStatusReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  os_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  firmware_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  boot_mode_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  browser_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&os_update_status_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&write_protect_switch_) -
+      reinterpret_cast<char*>(&os_update_status_)) + sizeof(write_protect_switch_));
+}
+
+DeviceStatusReportRequest::~DeviceStatusReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceStatusReportRequest)
+  SharedDtor();
+}
+
+void DeviceStatusReportRequest::SharedDtor() {
+  os_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  firmware_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  boot_mode_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  browser_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete os_update_status_;
+  if (this != internal_default_instance()) delete running_kiosk_app_;
+  if (this != internal_default_instance()) delete tpm_version_info_;
+  if (this != internal_default_instance()) delete tpm_status_info_;
+  if (this != internal_default_instance()) delete power_status_;
+  if (this != internal_default_instance()) delete storage_status_;
+  if (this != internal_default_instance()) delete board_status_;
+  if (this != internal_default_instance()) delete system_status_;
+  if (this != internal_default_instance()) delete stateful_partition_info_;
+  if (this != internal_default_instance()) delete graphics_status_;
+  if (this != internal_default_instance()) delete timezone_info_;
+  if (this != internal_default_instance()) delete memory_info_;
+  if (this != internal_default_instance()) delete global_cpu_info_;
+  if (this != internal_default_instance()) delete smbios_info_;
+  if (this != internal_default_instance()) delete kernel_parameters_;
+  if (this != internal_default_instance()) delete efi_vars_;
+  if (this != internal_default_instance()) delete boot_info_;
+}
+
+void DeviceStatusReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceStatusReportRequest& DeviceStatusReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceStatusReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceStatusReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  active_periods_.Clear();
+  network_interfaces_.Clear();
+  users_.Clear();
+  volume_infos_.Clear();
+  network_states_.Clear();
+  cpu_utilization_pct_samples_.Clear();
+  system_ram_free_samples_.Clear();
+  cpu_temp_infos_.Clear();
+  cpu_utilization_infos_.Clear();
+  system_ram_free_infos_.Clear();
+  cpu_info_.Clear();
+  crash_report_infos_.Clear();
+  backlight_info_.Clear();
+  fan_info_.Clear();
+  bluetooth_adapter_info_.Clear();
+  network_adapter_info_.Clear();
+  lacros_browser_report_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      os_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      firmware_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      boot_mode_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      browser_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(os_update_status_ != nullptr);
+      os_update_status_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(running_kiosk_app_ != nullptr);
+      running_kiosk_app_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(tpm_version_info_ != nullptr);
+      tpm_version_info_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(tpm_status_info_ != nullptr);
+      tpm_status_info_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(power_status_ != nullptr);
+      power_status_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(storage_status_ != nullptr);
+      storage_status_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(board_status_ != nullptr);
+      board_status_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(system_status_ != nullptr);
+      system_status_->Clear();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      GOOGLE_DCHECK(stateful_partition_info_ != nullptr);
+      stateful_partition_info_->Clear();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      GOOGLE_DCHECK(graphics_status_ != nullptr);
+      graphics_status_->Clear();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      GOOGLE_DCHECK(timezone_info_ != nullptr);
+      timezone_info_->Clear();
+    }
+    if (cached_has_bits & 0x00008000u) {
+      GOOGLE_DCHECK(memory_info_ != nullptr);
+      memory_info_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x001f0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      GOOGLE_DCHECK(global_cpu_info_ != nullptr);
+      global_cpu_info_->Clear();
+    }
+    if (cached_has_bits & 0x00020000u) {
+      GOOGLE_DCHECK(smbios_info_ != nullptr);
+      smbios_info_->Clear();
+    }
+    if (cached_has_bits & 0x00040000u) {
+      GOOGLE_DCHECK(kernel_parameters_ != nullptr);
+      kernel_parameters_->Clear();
+    }
+    if (cached_has_bits & 0x00080000u) {
+      GOOGLE_DCHECK(efi_vars_ != nullptr);
+      efi_vars_->Clear();
+    }
+    if (cached_has_bits & 0x00100000u) {
+      GOOGLE_DCHECK(boot_info_ != nullptr);
+      boot_info_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00e00000u) {
+    ::memset(&system_ram_total_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&channel_) -
+        reinterpret_cast<char*>(&system_ram_total_)) + sizeof(channel_));
+  }
+  write_protect_switch_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceStatusReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string os_version = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_os_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string firmware_version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_firmware_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string boot_mode = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_boot_mode();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string browser_version = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_browser_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ActiveTimePeriod active_periods = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_active_periods(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<50>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.NetworkInterface network_interfaces = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_network_interfaces(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.DeviceUser users = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_users(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.VolumeInfo volume_infos = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_volume_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.NetworkState network_states = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_network_states(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<90>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated int32 cpu_utilization_pct_samples = 12 [deprecated = true];
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 96)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            _internal_add_cpu_utilization_pct_samples(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<96>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_cpu_utilization_pct_samples(), ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 system_ram_total = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 112)) {
+          _Internal::set_has_system_ram_total(&has_bits);
+          system_ram_total_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated int64 system_ram_free_samples = 15 [deprecated = true];
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 120)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            _internal_add_system_ram_free_samples(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<120>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt64Parser(_internal_mutable_system_ram_free_samples(), ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.CPUTempInfo cpu_temp_infos = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_cpu_temp_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<130>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OsUpdateStatus os_update_status = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_os_update_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AppStatus running_kiosk_app = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146)) {
+          ptr = ctx->ParseMessage(_internal_mutable_running_kiosk_app(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 sound_volume = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 152)) {
+          _Internal::set_has_sound_volume(&has_bits);
+          sound_volume_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.TpmVersionInfo tpm_version_info = 21;
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_tpm_version_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.Channel channel = 22;
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 176)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::Channel_IsValid(val))) {
+            _internal_set_channel(static_cast<::enterprise_management::Channel>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(22, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.TpmStatusInfo tpm_status_info = 23;
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr = ctx->ParseMessage(_internal_mutable_tpm_status_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool write_protect_switch = 24;
+      case 24:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 192)) {
+          _Internal::set_has_write_protect_switch(&has_bits);
+          write_protect_switch_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PowerStatus power_status = 25;
+      case 25:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          ptr = ctx->ParseMessage(_internal_mutable_power_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.StorageStatus storage_status = 26;
+      case 26:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 210)) {
+          ptr = ctx->ParseMessage(_internal_mutable_storage_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BoardStatus board_status = 27;
+      case 27:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          ptr = ctx->ParseMessage(_internal_mutable_board_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SystemStatus system_status = 28;
+      case 28:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 226)) {
+          ptr = ctx->ParseMessage(_internal_mutable_system_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.StatefulPartitionInfo stateful_partition_info = 29;
+      case 29:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 234)) {
+          ptr = ctx->ParseMessage(_internal_mutable_stateful_partition_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.CpuUtilizationInfo cpu_utilization_infos = 30;
+      case 30:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 242)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_cpu_utilization_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<242>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.SystemFreeRamInfo system_ram_free_infos = 31;
+      case 31:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_system_ram_free_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<250>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.CpuInfo cpu_info = 32;
+      case 32:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 2)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_cpu_info(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<258>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.GraphicsStatus graphics_status = 33;
+      case 33:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_graphics_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.CrashReportInfo crash_report_infos = 34;
+      case 34:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_crash_report_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<274>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.TimezoneInfo timezone_info = 35;
+      case 35:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_timezone_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.MemoryInfo memory_info = 36;
+      case 36:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_memory_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.BacklightInfo backlight_info = 37;
+      case 37:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_backlight_info(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<298>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.FanInfo fan_info = 38;
+      case 38:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_fan_info(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<306>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.GlobalCpuInfo global_cpu_info = 39;
+      case 39:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_global_cpu_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.BluetoothAdapterInfo bluetooth_adapter_info = 40;
+      case 40:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_bluetooth_adapter_info(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<322>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SmbiosInfo smbios_info = 41;
+      case 41:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_smbios_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.KernelParameters kernel_parameters = 42;
+      case 42:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr = ctx->ParseMessage(_internal_mutable_kernel_parameters(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.EFIVars efi_vars = 43;
+      case 43:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_efi_vars(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BootInfo boot_info = 44;
+      case 44:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          ptr = ctx->ParseMessage(_internal_mutable_boot_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.NetworkAdapterInfo network_adapter_info = 45;
+      case 45:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_network_adapter_info(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<362>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.LaCrOsBrowserReport lacros_browser_report = 46;
+      case 46:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_lacros_browser_report(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<370>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceStatusReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceStatusReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string os_version = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_os_version(), target);
+  }
+
+  // optional string firmware_version = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_firmware_version(), target);
+  }
+
+  // optional string boot_mode = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_boot_mode(), target);
+  }
+
+  // optional string browser_version = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_browser_version(), target);
+  }
+
+  // repeated .enterprise_management.ActiveTimePeriod active_periods = 6;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_active_periods_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(6, this->_internal_active_periods(i), target, stream);
+  }
+
+  // repeated .enterprise_management.NetworkInterface network_interfaces = 8;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_network_interfaces_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(8, this->_internal_network_interfaces(i), target, stream);
+  }
+
+  // repeated .enterprise_management.DeviceUser users = 9;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_users_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(9, this->_internal_users(i), target, stream);
+  }
+
+  // repeated .enterprise_management.VolumeInfo volume_infos = 10;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_volume_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(10, this->_internal_volume_infos(i), target, stream);
+  }
+
+  // repeated .enterprise_management.NetworkState network_states = 11;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_network_states_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(11, this->_internal_network_states(i), target, stream);
+  }
+
+  // repeated int32 cpu_utilization_pct_samples = 12 [deprecated = true];
+  for (int i = 0, n = this->_internal_cpu_utilization_pct_samples_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(12, this->_internal_cpu_utilization_pct_samples(i), target);
+  }
+
+  // optional int64 system_ram_total = 14;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(14, this->_internal_system_ram_total(), target);
+  }
+
+  // repeated int64 system_ram_free_samples = 15 [deprecated = true];
+  for (int i = 0, n = this->_internal_system_ram_free_samples_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(15, this->_internal_system_ram_free_samples(i), target);
+  }
+
+  // repeated .enterprise_management.CPUTempInfo cpu_temp_infos = 16;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_cpu_temp_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(16, this->_internal_cpu_temp_infos(i), target, stream);
+  }
+
+  // optional .enterprise_management.OsUpdateStatus os_update_status = 17;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        17, _Internal::os_update_status(this), target, stream);
+  }
+
+  // optional .enterprise_management.AppStatus running_kiosk_app = 18;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        18, _Internal::running_kiosk_app(this), target, stream);
+  }
+
+  // optional int32 sound_volume = 19;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(19, this->_internal_sound_volume(), target);
+  }
+
+  // optional .enterprise_management.TpmVersionInfo tpm_version_info = 21;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        21, _Internal::tpm_version_info(this), target, stream);
+  }
+
+  // optional .enterprise_management.Channel channel = 22;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      22, this->_internal_channel(), target);
+  }
+
+  // optional .enterprise_management.TpmStatusInfo tpm_status_info = 23;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        23, _Internal::tpm_status_info(this), target, stream);
+  }
+
+  // optional bool write_protect_switch = 24;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(24, this->_internal_write_protect_switch(), target);
+  }
+
+  // optional .enterprise_management.PowerStatus power_status = 25;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        25, _Internal::power_status(this), target, stream);
+  }
+
+  // optional .enterprise_management.StorageStatus storage_status = 26;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        26, _Internal::storage_status(this), target, stream);
+  }
+
+  // optional .enterprise_management.BoardStatus board_status = 27;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        27, _Internal::board_status(this), target, stream);
+  }
+
+  // optional .enterprise_management.SystemStatus system_status = 28;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        28, _Internal::system_status(this), target, stream);
+  }
+
+  // optional .enterprise_management.StatefulPartitionInfo stateful_partition_info = 29;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        29, _Internal::stateful_partition_info(this), target, stream);
+  }
+
+  // repeated .enterprise_management.CpuUtilizationInfo cpu_utilization_infos = 30;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_cpu_utilization_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(30, this->_internal_cpu_utilization_infos(i), target, stream);
+  }
+
+  // repeated .enterprise_management.SystemFreeRamInfo system_ram_free_infos = 31;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_system_ram_free_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(31, this->_internal_system_ram_free_infos(i), target, stream);
+  }
+
+  // repeated .enterprise_management.CpuInfo cpu_info = 32;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_cpu_info_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(32, this->_internal_cpu_info(i), target, stream);
+  }
+
+  // optional .enterprise_management.GraphicsStatus graphics_status = 33;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        33, _Internal::graphics_status(this), target, stream);
+  }
+
+  // repeated .enterprise_management.CrashReportInfo crash_report_infos = 34;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_crash_report_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(34, this->_internal_crash_report_infos(i), target, stream);
+  }
+
+  // optional .enterprise_management.TimezoneInfo timezone_info = 35;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        35, _Internal::timezone_info(this), target, stream);
+  }
+
+  // optional .enterprise_management.MemoryInfo memory_info = 36;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        36, _Internal::memory_info(this), target, stream);
+  }
+
+  // repeated .enterprise_management.BacklightInfo backlight_info = 37;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_backlight_info_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(37, this->_internal_backlight_info(i), target, stream);
+  }
+
+  // repeated .enterprise_management.FanInfo fan_info = 38;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_fan_info_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(38, this->_internal_fan_info(i), target, stream);
+  }
+
+  // optional .enterprise_management.GlobalCpuInfo global_cpu_info = 39;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        39, _Internal::global_cpu_info(this), target, stream);
+  }
+
+  // repeated .enterprise_management.BluetoothAdapterInfo bluetooth_adapter_info = 40;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_bluetooth_adapter_info_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(40, this->_internal_bluetooth_adapter_info(i), target, stream);
+  }
+
+  // optional .enterprise_management.SmbiosInfo smbios_info = 41;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        41, _Internal::smbios_info(this), target, stream);
+  }
+
+  // optional .enterprise_management.KernelParameters kernel_parameters = 42;
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        42, _Internal::kernel_parameters(this), target, stream);
+  }
+
+  // optional .enterprise_management.EFIVars efi_vars = 43;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        43, _Internal::efi_vars(this), target, stream);
+  }
+
+  // optional .enterprise_management.BootInfo boot_info = 44;
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        44, _Internal::boot_info(this), target, stream);
+  }
+
+  // repeated .enterprise_management.NetworkAdapterInfo network_adapter_info = 45;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_network_adapter_info_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(45, this->_internal_network_adapter_info(i), target, stream);
+  }
+
+  // repeated .enterprise_management.LaCrOsBrowserReport lacros_browser_report = 46;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_lacros_browser_report_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(46, this->_internal_lacros_browser_report(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceStatusReportRequest)
+  return target;
+}
+
+size_t DeviceStatusReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceStatusReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ActiveTimePeriod active_periods = 6;
+  total_size += 1UL * this->_internal_active_periods_size();
+  for (const auto& msg : this->active_periods_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.NetworkInterface network_interfaces = 8;
+  total_size += 1UL * this->_internal_network_interfaces_size();
+  for (const auto& msg : this->network_interfaces_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.DeviceUser users = 9;
+  total_size += 1UL * this->_internal_users_size();
+  for (const auto& msg : this->users_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.VolumeInfo volume_infos = 10;
+  total_size += 1UL * this->_internal_volume_infos_size();
+  for (const auto& msg : this->volume_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.NetworkState network_states = 11;
+  total_size += 1UL * this->_internal_network_states_size();
+  for (const auto& msg : this->network_states_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated int32 cpu_utilization_pct_samples = 12 [deprecated = true];
+  {
+    size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      Int32Size(this->cpu_utilization_pct_samples_);
+    total_size += 1 *
+                  ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_cpu_utilization_pct_samples_size());
+    total_size += data_size;
+  }
+
+  // repeated int64 system_ram_free_samples = 15 [deprecated = true];
+  {
+    size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      Int64Size(this->system_ram_free_samples_);
+    total_size += 1 *
+                  ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_system_ram_free_samples_size());
+    total_size += data_size;
+  }
+
+  // repeated .enterprise_management.CPUTempInfo cpu_temp_infos = 16;
+  total_size += 2UL * this->_internal_cpu_temp_infos_size();
+  for (const auto& msg : this->cpu_temp_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.CpuUtilizationInfo cpu_utilization_infos = 30;
+  total_size += 2UL * this->_internal_cpu_utilization_infos_size();
+  for (const auto& msg : this->cpu_utilization_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.SystemFreeRamInfo system_ram_free_infos = 31;
+  total_size += 2UL * this->_internal_system_ram_free_infos_size();
+  for (const auto& msg : this->system_ram_free_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.CpuInfo cpu_info = 32;
+  total_size += 2UL * this->_internal_cpu_info_size();
+  for (const auto& msg : this->cpu_info_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.CrashReportInfo crash_report_infos = 34;
+  total_size += 2UL * this->_internal_crash_report_infos_size();
+  for (const auto& msg : this->crash_report_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.BacklightInfo backlight_info = 37;
+  total_size += 2UL * this->_internal_backlight_info_size();
+  for (const auto& msg : this->backlight_info_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.FanInfo fan_info = 38;
+  total_size += 2UL * this->_internal_fan_info_size();
+  for (const auto& msg : this->fan_info_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.BluetoothAdapterInfo bluetooth_adapter_info = 40;
+  total_size += 2UL * this->_internal_bluetooth_adapter_info_size();
+  for (const auto& msg : this->bluetooth_adapter_info_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.NetworkAdapterInfo network_adapter_info = 45;
+  total_size += 2UL * this->_internal_network_adapter_info_size();
+  for (const auto& msg : this->network_adapter_info_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.LaCrOsBrowserReport lacros_browser_report = 46;
+  total_size += 2UL * this->_internal_lacros_browser_report_size();
+  for (const auto& msg : this->lacros_browser_report_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string os_version = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_os_version());
+    }
+
+    // optional string firmware_version = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_firmware_version());
+    }
+
+    // optional string boot_mode = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_boot_mode());
+    }
+
+    // optional string browser_version = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_browser_version());
+    }
+
+    // optional .enterprise_management.OsUpdateStatus os_update_status = 17;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *os_update_status_);
+    }
+
+    // optional .enterprise_management.AppStatus running_kiosk_app = 18;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *running_kiosk_app_);
+    }
+
+    // optional .enterprise_management.TpmVersionInfo tpm_version_info = 21;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *tpm_version_info_);
+    }
+
+    // optional .enterprise_management.TpmStatusInfo tpm_status_info = 23;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *tpm_status_info_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.PowerStatus power_status = 25;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *power_status_);
+    }
+
+    // optional .enterprise_management.StorageStatus storage_status = 26;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *storage_status_);
+    }
+
+    // optional .enterprise_management.BoardStatus board_status = 27;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *board_status_);
+    }
+
+    // optional .enterprise_management.SystemStatus system_status = 28;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *system_status_);
+    }
+
+    // optional .enterprise_management.StatefulPartitionInfo stateful_partition_info = 29;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *stateful_partition_info_);
+    }
+
+    // optional .enterprise_management.GraphicsStatus graphics_status = 33;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *graphics_status_);
+    }
+
+    // optional .enterprise_management.TimezoneInfo timezone_info = 35;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *timezone_info_);
+    }
+
+    // optional .enterprise_management.MemoryInfo memory_info = 36;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *memory_info_);
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional .enterprise_management.GlobalCpuInfo global_cpu_info = 39;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *global_cpu_info_);
+    }
+
+    // optional .enterprise_management.SmbiosInfo smbios_info = 41;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *smbios_info_);
+    }
+
+    // optional .enterprise_management.KernelParameters kernel_parameters = 42;
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *kernel_parameters_);
+    }
+
+    // optional .enterprise_management.EFIVars efi_vars = 43;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *efi_vars_);
+    }
+
+    // optional .enterprise_management.BootInfo boot_info = 44;
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *boot_info_);
+    }
+
+    // optional int64 system_ram_total = 14;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_system_ram_total());
+    }
+
+    // optional int32 sound_volume = 19;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_sound_volume());
+    }
+
+    // optional .enterprise_management.Channel channel = 22;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_channel());
+    }
+
+  }
+  // optional bool write_protect_switch = 24;
+  if (cached_has_bits & 0x01000000u) {
+    total_size += 2 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceStatusReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceStatusReportRequest*>(
+      &from));
+}
+
+void DeviceStatusReportRequest::MergeFrom(const DeviceStatusReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceStatusReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  active_periods_.MergeFrom(from.active_periods_);
+  network_interfaces_.MergeFrom(from.network_interfaces_);
+  users_.MergeFrom(from.users_);
+  volume_infos_.MergeFrom(from.volume_infos_);
+  network_states_.MergeFrom(from.network_states_);
+  cpu_utilization_pct_samples_.MergeFrom(from.cpu_utilization_pct_samples_);
+  system_ram_free_samples_.MergeFrom(from.system_ram_free_samples_);
+  cpu_temp_infos_.MergeFrom(from.cpu_temp_infos_);
+  cpu_utilization_infos_.MergeFrom(from.cpu_utilization_infos_);
+  system_ram_free_infos_.MergeFrom(from.system_ram_free_infos_);
+  cpu_info_.MergeFrom(from.cpu_info_);
+  crash_report_infos_.MergeFrom(from.crash_report_infos_);
+  backlight_info_.MergeFrom(from.backlight_info_);
+  fan_info_.MergeFrom(from.fan_info_);
+  bluetooth_adapter_info_.MergeFrom(from.bluetooth_adapter_info_);
+  network_adapter_info_.MergeFrom(from.network_adapter_info_);
+  lacros_browser_report_.MergeFrom(from.lacros_browser_report_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      os_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_version_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      firmware_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.firmware_version_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      boot_mode_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.boot_mode_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      browser_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.browser_version_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_os_update_status()->::enterprise_management::OsUpdateStatus::MergeFrom(from._internal_os_update_status());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_running_kiosk_app()->::enterprise_management::AppStatus::MergeFrom(from._internal_running_kiosk_app());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_tpm_version_info()->::enterprise_management::TpmVersionInfo::MergeFrom(from._internal_tpm_version_info());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_tpm_status_info()->::enterprise_management::TpmStatusInfo::MergeFrom(from._internal_tpm_status_info());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_power_status()->::enterprise_management::PowerStatus::MergeFrom(from._internal_power_status());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_storage_status()->::enterprise_management::StorageStatus::MergeFrom(from._internal_storage_status());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_board_status()->::enterprise_management::BoardStatus::MergeFrom(from._internal_board_status());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_system_status()->::enterprise_management::SystemStatus::MergeFrom(from._internal_system_status());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _internal_mutable_stateful_partition_info()->::enterprise_management::StatefulPartitionInfo::MergeFrom(from._internal_stateful_partition_info());
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _internal_mutable_graphics_status()->::enterprise_management::GraphicsStatus::MergeFrom(from._internal_graphics_status());
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _internal_mutable_timezone_info()->::enterprise_management::TimezoneInfo::MergeFrom(from._internal_timezone_info());
+    }
+    if (cached_has_bits & 0x00008000u) {
+      _internal_mutable_memory_info()->::enterprise_management::MemoryInfo::MergeFrom(from._internal_memory_info());
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      _internal_mutable_global_cpu_info()->::enterprise_management::GlobalCpuInfo::MergeFrom(from._internal_global_cpu_info());
+    }
+    if (cached_has_bits & 0x00020000u) {
+      _internal_mutable_smbios_info()->::enterprise_management::SmbiosInfo::MergeFrom(from._internal_smbios_info());
+    }
+    if (cached_has_bits & 0x00040000u) {
+      _internal_mutable_kernel_parameters()->::enterprise_management::KernelParameters::MergeFrom(from._internal_kernel_parameters());
+    }
+    if (cached_has_bits & 0x00080000u) {
+      _internal_mutable_efi_vars()->::enterprise_management::EFIVars::MergeFrom(from._internal_efi_vars());
+    }
+    if (cached_has_bits & 0x00100000u) {
+      _internal_mutable_boot_info()->::enterprise_management::BootInfo::MergeFrom(from._internal_boot_info());
+    }
+    if (cached_has_bits & 0x00200000u) {
+      system_ram_total_ = from.system_ram_total_;
+    }
+    if (cached_has_bits & 0x00400000u) {
+      sound_volume_ = from.sound_volume_;
+    }
+    if (cached_has_bits & 0x00800000u) {
+      channel_ = from.channel_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x01000000u) {
+    _internal_set_write_protect_switch(from._internal_write_protect_switch());
+  }
+}
+
+void DeviceStatusReportRequest::CopyFrom(const DeviceStatusReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceStatusReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceStatusReportRequest::IsInitialized() const {
+  if (!::PROTOBUF_NAMESPACE_ID::internal::AllAreInitialized(users_)) return false;
+  if (!::PROTOBUF_NAMESPACE_ID::internal::AllAreInitialized(lacros_browser_report_)) return false;
+  return true;
+}
+
+void DeviceStatusReportRequest::InternalSwap(DeviceStatusReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  active_periods_.InternalSwap(&other->active_periods_);
+  network_interfaces_.InternalSwap(&other->network_interfaces_);
+  users_.InternalSwap(&other->users_);
+  volume_infos_.InternalSwap(&other->volume_infos_);
+  network_states_.InternalSwap(&other->network_states_);
+  cpu_utilization_pct_samples_.InternalSwap(&other->cpu_utilization_pct_samples_);
+  system_ram_free_samples_.InternalSwap(&other->system_ram_free_samples_);
+  cpu_temp_infos_.InternalSwap(&other->cpu_temp_infos_);
+  cpu_utilization_infos_.InternalSwap(&other->cpu_utilization_infos_);
+  system_ram_free_infos_.InternalSwap(&other->system_ram_free_infos_);
+  cpu_info_.InternalSwap(&other->cpu_info_);
+  crash_report_infos_.InternalSwap(&other->crash_report_infos_);
+  backlight_info_.InternalSwap(&other->backlight_info_);
+  fan_info_.InternalSwap(&other->fan_info_);
+  bluetooth_adapter_info_.InternalSwap(&other->bluetooth_adapter_info_);
+  network_adapter_info_.InternalSwap(&other->network_adapter_info_);
+  lacros_browser_report_.InternalSwap(&other->lacros_browser_report_);
+  os_version_.Swap(&other->os_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  firmware_version_.Swap(&other->firmware_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  boot_mode_.Swap(&other->boot_mode_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  browser_version_.Swap(&other->browser_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(os_update_status_, other->os_update_status_);
+  swap(running_kiosk_app_, other->running_kiosk_app_);
+  swap(tpm_version_info_, other->tpm_version_info_);
+  swap(tpm_status_info_, other->tpm_status_info_);
+  swap(power_status_, other->power_status_);
+  swap(storage_status_, other->storage_status_);
+  swap(board_status_, other->board_status_);
+  swap(system_status_, other->system_status_);
+  swap(stateful_partition_info_, other->stateful_partition_info_);
+  swap(graphics_status_, other->graphics_status_);
+  swap(timezone_info_, other->timezone_info_);
+  swap(memory_info_, other->memory_info_);
+  swap(global_cpu_info_, other->global_cpu_info_);
+  swap(smbios_info_, other->smbios_info_);
+  swap(kernel_parameters_, other->kernel_parameters_);
+  swap(efi_vars_, other->efi_vars_);
+  swap(boot_info_, other->boot_info_);
+  swap(system_ram_total_, other->system_ram_total_);
+  swap(sound_volume_, other->sound_volume_);
+  swap(channel_, other->channel_);
+  swap(write_protect_switch_, other->write_protect_switch_);
+}
+
+std::string DeviceStatusReportRequest::GetTypeName() const {
+  return "enterprise_management.DeviceStatusReportRequest";
+}
+
+
+// ===================================================================
+
+void OsUpdateStatus::InitAsDefaultInstance() {
+}
+class OsUpdateStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OsUpdateStatus>()._has_bits_);
+  static void set_has_update_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_new_platform_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_new_required_platform_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_last_checked_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_last_reboot_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+OsUpdateStatus::OsUpdateStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OsUpdateStatus)
+}
+OsUpdateStatus::OsUpdateStatus(const OsUpdateStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  new_platform_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_platform_version()) {
+    new_platform_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_platform_version_);
+  }
+  new_required_platform_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_new_required_platform_version()) {
+    new_required_platform_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_required_platform_version_);
+  }
+  ::memcpy(&last_checked_timestamp_, &from.last_checked_timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&update_status_) -
+    reinterpret_cast<char*>(&last_checked_timestamp_)) + sizeof(update_status_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OsUpdateStatus)
+}
+
+void OsUpdateStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OsUpdateStatus_device_5fmanagement_5fbackend_2eproto.base);
+  new_platform_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_required_platform_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&last_checked_timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&update_status_) -
+      reinterpret_cast<char*>(&last_checked_timestamp_)) + sizeof(update_status_));
+}
+
+OsUpdateStatus::~OsUpdateStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OsUpdateStatus)
+  SharedDtor();
+}
+
+void OsUpdateStatus::SharedDtor() {
+  new_platform_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  new_required_platform_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void OsUpdateStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OsUpdateStatus& OsUpdateStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OsUpdateStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OsUpdateStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OsUpdateStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      new_platform_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      new_required_platform_version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000001cu) {
+    ::memset(&last_checked_timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&update_status_) -
+        reinterpret_cast<char*>(&last_checked_timestamp_)) + sizeof(update_status_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OsUpdateStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.OsUpdateStatus.UpdateStatus update_status = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::OsUpdateStatus_UpdateStatus_IsValid(val))) {
+            _internal_set_update_status(static_cast<::enterprise_management::OsUpdateStatus_UpdateStatus>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string new_platform_version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_new_platform_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string new_required_platform_version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_new_required_platform_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 last_checked_timestamp = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_last_checked_timestamp(&has_bits);
+          last_checked_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 last_reboot_timestamp = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_last_reboot_timestamp(&has_bits);
+          last_reboot_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OsUpdateStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OsUpdateStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.OsUpdateStatus.UpdateStatus update_status = 1;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_update_status(), target);
+  }
+
+  // optional string new_platform_version = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_new_platform_version(), target);
+  }
+
+  // optional string new_required_platform_version = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_new_required_platform_version(), target);
+  }
+
+  // optional int64 last_checked_timestamp = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_last_checked_timestamp(), target);
+  }
+
+  // optional int64 last_reboot_timestamp = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(5, this->_internal_last_reboot_timestamp(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OsUpdateStatus)
+  return target;
+}
+
+size_t OsUpdateStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OsUpdateStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string new_platform_version = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_new_platform_version());
+    }
+
+    // optional string new_required_platform_version = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_new_required_platform_version());
+    }
+
+    // optional int64 last_checked_timestamp = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_checked_timestamp());
+    }
+
+    // optional int64 last_reboot_timestamp = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_reboot_timestamp());
+    }
+
+    // optional .enterprise_management.OsUpdateStatus.UpdateStatus update_status = 1;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_update_status());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OsUpdateStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OsUpdateStatus*>(
+      &from));
+}
+
+void OsUpdateStatus::MergeFrom(const OsUpdateStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OsUpdateStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      new_platform_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_platform_version_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      new_required_platform_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.new_required_platform_version_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      last_checked_timestamp_ = from.last_checked_timestamp_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      last_reboot_timestamp_ = from.last_reboot_timestamp_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      update_status_ = from.update_status_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void OsUpdateStatus::CopyFrom(const OsUpdateStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OsUpdateStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OsUpdateStatus::IsInitialized() const {
+  return true;
+}
+
+void OsUpdateStatus::InternalSwap(OsUpdateStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  new_platform_version_.Swap(&other->new_platform_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  new_required_platform_version_.Swap(&other->new_required_platform_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(last_checked_timestamp_, other->last_checked_timestamp_);
+  swap(last_reboot_timestamp_, other->last_reboot_timestamp_);
+  swap(update_status_, other->update_status_);
+}
+
+std::string OsUpdateStatus::GetTypeName() const {
+  return "enterprise_management.OsUpdateStatus";
+}
+
+
+// ===================================================================
+
+void AppStatus::InitAsDefaultInstance() {
+}
+class AppStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AppStatus>()._has_bits_);
+  static void set_has_app_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_extension_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_error(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_required_platform_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+AppStatus::AppStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AppStatus)
+}
+AppStatus::AppStatus(const AppStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_id()) {
+    app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+  }
+  extension_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_extension_version()) {
+    extension_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.extension_version_);
+  }
+  status_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_status()) {
+    status_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.status_);
+  }
+  required_platform_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_required_platform_version()) {
+    required_platform_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.required_platform_version_);
+  }
+  error_ = from.error_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AppStatus)
+}
+
+void AppStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AppStatus_device_5fmanagement_5fbackend_2eproto.base);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  extension_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  status_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  required_platform_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  error_ = false;
+}
+
+AppStatus::~AppStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AppStatus)
+  SharedDtor();
+}
+
+void AppStatus::SharedDtor() {
+  app_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  extension_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  status_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  required_platform_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AppStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AppStatus& AppStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AppStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AppStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AppStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      app_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      extension_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      status_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      required_platform_version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  error_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AppStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string app_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_app_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string extension_version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_extension_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string status = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_status();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool error = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_error(&has_bits);
+          error_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string required_platform_version = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_required_platform_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AppStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AppStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string app_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_app_id(), target);
+  }
+
+  // optional string extension_version = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_extension_version(), target);
+  }
+
+  // optional string status = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_status(), target);
+  }
+
+  // optional bool error = 4;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_error(), target);
+  }
+
+  // optional string required_platform_version = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_required_platform_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AppStatus)
+  return target;
+}
+
+size_t AppStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AppStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string app_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_id());
+    }
+
+    // optional string extension_version = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_extension_version());
+    }
+
+    // optional string status = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_status());
+    }
+
+    // optional string required_platform_version = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_required_platform_version());
+    }
+
+    // optional bool error = 4;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AppStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AppStatus*>(
+      &from));
+}
+
+void AppStatus::MergeFrom(const AppStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AppStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      extension_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.extension_version_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      status_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.status_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      required_platform_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.required_platform_version_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      error_ = from.error_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void AppStatus::CopyFrom(const AppStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AppStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AppStatus::IsInitialized() const {
+  return true;
+}
+
+void AppStatus::InternalSwap(AppStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  app_id_.Swap(&other->app_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  extension_version_.Swap(&other->extension_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  status_.Swap(&other->status_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  required_platform_version_.Swap(&other->required_platform_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(error_, other->error_);
+}
+
+std::string AppStatus::GetTypeName() const {
+  return "enterprise_management.AppStatus";
+}
+
+
+// ===================================================================
+
+void AppInfo::InitAsDefaultInstance() {
+}
+class AppInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AppInfo>()._has_bits_);
+  static void set_has_app_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_app_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_app_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_install_time(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+AppInfo::AppInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AppInfo)
+}
+AppInfo::AppInfo(const AppInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      active_time_periods_(from.active_time_periods_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_id()) {
+    app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+  }
+  app_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_name()) {
+    app_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_name_);
+  }
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_version()) {
+    version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+  }
+  ::memcpy(&app_type_, &from.app_type_,
+    static_cast<size_t>(reinterpret_cast<char*>(&install_time_) -
+    reinterpret_cast<char*>(&app_type_)) + sizeof(install_time_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AppInfo)
+}
+
+void AppInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AppInfo_device_5fmanagement_5fbackend_2eproto.base);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  app_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&app_type_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&install_time_) -
+      reinterpret_cast<char*>(&app_type_)) + sizeof(install_time_));
+}
+
+AppInfo::~AppInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AppInfo)
+  SharedDtor();
+}
+
+void AppInfo::SharedDtor() {
+  app_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  app_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AppInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AppInfo& AppInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AppInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AppInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AppInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  active_time_periods_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      app_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      app_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000038u) {
+    ::memset(&app_type_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&install_time_) -
+        reinterpret_cast<char*>(&app_type_)) + sizeof(install_time_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AppInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string app_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_app_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AppInfo.AppType app_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AppInfo_AppType_IsValid(val))) {
+            _internal_set_app_type(static_cast<::enterprise_management::AppInfo_AppType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string app_name = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_app_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AppInfo.Status status = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AppInfo_Status_IsValid(val))) {
+            _internal_set_status(static_cast<::enterprise_management::AppInfo_Status>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int64 install_time = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_install_time(&has_bits);
+          install_time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string version = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          auto str = _internal_mutable_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.TimePeriod active_time_periods = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_active_time_periods(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AppInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AppInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string app_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_app_id(), target);
+  }
+
+  // optional .enterprise_management.AppInfo.AppType app_type = 2;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_app_type(), target);
+  }
+
+  // optional string app_name = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_app_name(), target);
+  }
+
+  // optional .enterprise_management.AppInfo.Status status = 4;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_status(), target);
+  }
+
+  // optional int64 install_time = 5;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(5, this->_internal_install_time(), target);
+  }
+
+  // optional string version = 7;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        7, this->_internal_version(), target);
+  }
+
+  // repeated .enterprise_management.TimePeriod active_time_periods = 8;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_active_time_periods_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(8, this->_internal_active_time_periods(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AppInfo)
+  return target;
+}
+
+size_t AppInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AppInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.TimePeriod active_time_periods = 8;
+  total_size += 1UL * this->_internal_active_time_periods_size();
+  for (const auto& msg : this->active_time_periods_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string app_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_id());
+    }
+
+    // optional string app_name = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_name());
+    }
+
+    // optional string version = 7;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_version());
+    }
+
+    // optional .enterprise_management.AppInfo.AppType app_type = 2;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_app_type());
+    }
+
+    // optional .enterprise_management.AppInfo.Status status = 4;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_status());
+    }
+
+    // optional int64 install_time = 5;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_install_time());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AppInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AppInfo*>(
+      &from));
+}
+
+void AppInfo::MergeFrom(const AppInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AppInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  active_time_periods_.MergeFrom(from.active_time_periods_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      app_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      app_type_ = from.app_type_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      status_ = from.status_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      install_time_ = from.install_time_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void AppInfo::CopyFrom(const AppInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AppInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AppInfo::IsInitialized() const {
+  return true;
+}
+
+void AppInfo::InternalSwap(AppInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  active_time_periods_.InternalSwap(&other->active_time_periods_);
+  app_id_.Swap(&other->app_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  app_name_.Swap(&other->app_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  version_.Swap(&other->version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(app_type_, other->app_type_);
+  swap(status_, other->status_);
+  swap(install_time_, other->install_time_);
+}
+
+std::string AppInfo::GetTypeName() const {
+  return "enterprise_management.AppInfo";
+}
+
+
+// ===================================================================
+
+void AndroidAppPermission::InitAsDefaultInstance() {
+}
+class AndroidAppPermission::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AndroidAppPermission>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_granted(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_managed(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+AndroidAppPermission::AndroidAppPermission()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AndroidAppPermission)
+}
+AndroidAppPermission::AndroidAppPermission(const AndroidAppPermission& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  ::memcpy(&granted_, &from.granted_,
+    static_cast<size_t>(reinterpret_cast<char*>(&managed_) -
+    reinterpret_cast<char*>(&granted_)) + sizeof(managed_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AndroidAppPermission)
+}
+
+void AndroidAppPermission::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AndroidAppPermission_device_5fmanagement_5fbackend_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&granted_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&managed_) -
+      reinterpret_cast<char*>(&granted_)) + sizeof(managed_));
+}
+
+AndroidAppPermission::~AndroidAppPermission() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AndroidAppPermission)
+  SharedDtor();
+}
+
+void AndroidAppPermission::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AndroidAppPermission::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AndroidAppPermission& AndroidAppPermission::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AndroidAppPermission_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AndroidAppPermission::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AndroidAppPermission)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    name_.ClearNonDefaultToEmptyNoArena();
+  }
+  ::memset(&granted_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&managed_) -
+      reinterpret_cast<char*>(&granted_)) + sizeof(managed_));
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AndroidAppPermission::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool granted = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_granted(&has_bits);
+          granted_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool managed = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_managed(&has_bits);
+          managed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AndroidAppPermission::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AndroidAppPermission)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional bool granted = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_granted(), target);
+  }
+
+  // optional bool managed = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_managed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AndroidAppPermission)
+  return target;
+}
+
+size_t AndroidAppPermission::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AndroidAppPermission)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional bool granted = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool managed = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AndroidAppPermission::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AndroidAppPermission*>(
+      &from));
+}
+
+void AndroidAppPermission::MergeFrom(const AndroidAppPermission& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AndroidAppPermission)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      granted_ = from.granted_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      managed_ = from.managed_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void AndroidAppPermission::CopyFrom(const AndroidAppPermission& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AndroidAppPermission)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AndroidAppPermission::IsInitialized() const {
+  return true;
+}
+
+void AndroidAppPermission::InternalSwap(AndroidAppPermission* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(granted_, other->granted_);
+  swap(managed_, other->managed_);
+}
+
+std::string AndroidAppPermission::GetTypeName() const {
+  return "enterprise_management.AndroidAppPermission";
+}
+
+
+// ===================================================================
+
+void AndroidAppInfo::InitAsDefaultInstance() {
+}
+class AndroidAppInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AndroidAppInfo>()._has_bits_);
+  static void set_has_app_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_app_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_package_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_installed_source(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+};
+
+AndroidAppInfo::AndroidAppInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AndroidAppInfo)
+}
+AndroidAppInfo::AndroidAppInfo(const AndroidAppInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      permissions_(from.permissions_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_id()) {
+    app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+  }
+  app_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_name()) {
+    app_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_name_);
+  }
+  package_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_package_name()) {
+    package_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_name_);
+  }
+  ::memcpy(&status_, &from.status_,
+    static_cast<size_t>(reinterpret_cast<char*>(&version_) -
+    reinterpret_cast<char*>(&status_)) + sizeof(version_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AndroidAppInfo)
+}
+
+void AndroidAppInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AndroidAppInfo_device_5fmanagement_5fbackend_2eproto.base);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  app_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  package_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&status_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&version_) -
+      reinterpret_cast<char*>(&status_)) + sizeof(version_));
+}
+
+AndroidAppInfo::~AndroidAppInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AndroidAppInfo)
+  SharedDtor();
+}
+
+void AndroidAppInfo::SharedDtor() {
+  app_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  app_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  package_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AndroidAppInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AndroidAppInfo& AndroidAppInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AndroidAppInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AndroidAppInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AndroidAppInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  permissions_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      app_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      app_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      package_name_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000038u) {
+    ::memset(&status_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&version_) -
+        reinterpret_cast<char*>(&status_)) + sizeof(version_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AndroidAppInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string app_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_app_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string app_name = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_app_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string package_name = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_package_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AndroidAppInfo.AndroidAppStatus status = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AndroidAppInfo_AndroidAppStatus_IsValid(val))) {
+            _internal_set_status(static_cast<::enterprise_management::AndroidAppInfo_AndroidAppStatus>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AndroidAppInfo.InstalledSource installed_source = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AndroidAppInfo_InstalledSource_IsValid(val))) {
+            _internal_set_installed_source(static_cast<::enterprise_management::AndroidAppInfo_InstalledSource>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(5, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 version = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_version(&has_bits);
+          version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.AndroidAppPermission permissions = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_permissions(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AndroidAppInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AndroidAppInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string app_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_app_id(), target);
+  }
+
+  // optional string app_name = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_app_name(), target);
+  }
+
+  // optional string package_name = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_package_name(), target);
+  }
+
+  // optional .enterprise_management.AndroidAppInfo.AndroidAppStatus status = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_status(), target);
+  }
+
+  // optional .enterprise_management.AndroidAppInfo.InstalledSource installed_source = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      5, this->_internal_installed_source(), target);
+  }
+
+  // optional int32 version = 6;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_version(), target);
+  }
+
+  // repeated .enterprise_management.AndroidAppPermission permissions = 7;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_permissions_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(7, this->_internal_permissions(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AndroidAppInfo)
+  return target;
+}
+
+size_t AndroidAppInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AndroidAppInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.AndroidAppPermission permissions = 7;
+  total_size += 1UL * this->_internal_permissions_size();
+  for (const auto& msg : this->permissions_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string app_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_id());
+    }
+
+    // optional string app_name = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_name());
+    }
+
+    // optional string package_name = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_package_name());
+    }
+
+    // optional .enterprise_management.AndroidAppInfo.AndroidAppStatus status = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_status());
+    }
+
+    // optional .enterprise_management.AndroidAppInfo.InstalledSource installed_source = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_installed_source());
+    }
+
+    // optional int32 version = 6;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_version());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AndroidAppInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AndroidAppInfo*>(
+      &from));
+}
+
+void AndroidAppInfo::MergeFrom(const AndroidAppInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AndroidAppInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  permissions_.MergeFrom(from.permissions_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      app_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      package_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_name_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      status_ = from.status_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      installed_source_ = from.installed_source_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      version_ = from.version_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void AndroidAppInfo::CopyFrom(const AndroidAppInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AndroidAppInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AndroidAppInfo::IsInitialized() const {
+  return true;
+}
+
+void AndroidAppInfo::InternalSwap(AndroidAppInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  permissions_.InternalSwap(&other->permissions_);
+  app_id_.Swap(&other->app_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  app_name_.Swap(&other->app_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  package_name_.Swap(&other->package_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(status_, other->status_);
+  swap(installed_source_, other->installed_source_);
+  swap(version_, other->version_);
+}
+
+std::string AndroidAppInfo::GetTypeName() const {
+  return "enterprise_management.AndroidAppInfo";
+}
+
+
+// ===================================================================
+
+void ChromeUserProfileReport::InitAsDefaultInstance() {
+}
+class ChromeUserProfileReport::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeUserProfileReport>()._has_bits_);
+  static void set_has_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_chrome_signed_in_user(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_extension_data(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_plugins(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_policy_data(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_policy_fetched_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_safe_browsing_warnings(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_safe_browsing_warnings_click_through(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+};
+
+ChromeUserProfileReport::ChromeUserProfileReport()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeUserProfileReport)
+}
+ChromeUserProfileReport::ChromeUserProfileReport(const ChromeUserProfileReport& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      extension_requests_(from.extension_requests_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_id()) {
+    id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+  }
+  chrome_signed_in_user_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_chrome_signed_in_user()) {
+    chrome_signed_in_user_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.chrome_signed_in_user_);
+  }
+  extension_data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_extension_data()) {
+    extension_data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.extension_data_);
+  }
+  plugins_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_plugins()) {
+    plugins_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.plugins_);
+  }
+  policy_data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_data()) {
+    policy_data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_data_);
+  }
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  ::memcpy(&policy_fetched_timestamp_, &from.policy_fetched_timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&safe_browsing_warnings_click_through_) -
+    reinterpret_cast<char*>(&policy_fetched_timestamp_)) + sizeof(safe_browsing_warnings_click_through_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeUserProfileReport)
+}
+
+void ChromeUserProfileReport::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChromeUserProfileReport_device_5fmanagement_5fbackend_2eproto.base);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  chrome_signed_in_user_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  extension_data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  plugins_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_data_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&policy_fetched_timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&safe_browsing_warnings_click_through_) -
+      reinterpret_cast<char*>(&policy_fetched_timestamp_)) + sizeof(safe_browsing_warnings_click_through_));
+}
+
+ChromeUserProfileReport::~ChromeUserProfileReport() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeUserProfileReport)
+  SharedDtor();
+}
+
+void ChromeUserProfileReport::SharedDtor() {
+  id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  chrome_signed_in_user_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  extension_data_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  plugins_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_data_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ChromeUserProfileReport::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeUserProfileReport& ChromeUserProfileReport::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeUserProfileReport_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeUserProfileReport::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeUserProfileReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  extension_requests_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      chrome_signed_in_user_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      extension_data_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      plugins_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      policy_data_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x000000c0u) {
+    ::memset(&policy_fetched_timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&safe_browsing_warnings_) -
+        reinterpret_cast<char*>(&policy_fetched_timestamp_)) + sizeof(safe_browsing_warnings_));
+  }
+  safe_browsing_warnings_click_through_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeUserProfileReport::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string chrome_signed_in_user = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_chrome_signed_in_user();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string extension_data = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_extension_data();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string plugins = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_plugins();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string policy_data = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_policy_data();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 policy_fetched_timestamp = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_policy_fetched_timestamp(&has_bits);
+          policy_fetched_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 safe_browsing_warnings = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_safe_browsing_warnings(&has_bits);
+          safe_browsing_warnings_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 safe_browsing_warnings_click_through = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_safe_browsing_warnings_click_through(&has_bits);
+          safe_browsing_warnings_click_through_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string name = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_extension_requests(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeUserProfileReport::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeUserProfileReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_id(), target);
+  }
+
+  // optional string chrome_signed_in_user = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_chrome_signed_in_user(), target);
+  }
+
+  // optional string extension_data = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_extension_data(), target);
+  }
+
+  // optional string plugins = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_plugins(), target);
+  }
+
+  // optional string policy_data = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_policy_data(), target);
+  }
+
+  // optional int64 policy_fetched_timestamp = 6;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(6, this->_internal_policy_fetched_timestamp(), target);
+  }
+
+  // optional uint64 safe_browsing_warnings = 7;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(7, this->_internal_safe_browsing_warnings(), target);
+  }
+
+  // optional uint64 safe_browsing_warnings_click_through = 8;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(8, this->_internal_safe_browsing_warnings_click_through(), target);
+  }
+
+  // optional string name = 9;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteStringMaybeAliased(
+        9, this->_internal_name(), target);
+  }
+
+  // repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_extension_requests_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(10, this->_internal_extension_requests(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeUserProfileReport)
+  return target;
+}
+
+size_t ChromeUserProfileReport::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeUserProfileReport)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+  total_size += 1UL * this->_internal_extension_requests_size();
+  for (const auto& msg : this->extension_requests_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_id());
+    }
+
+    // optional string chrome_signed_in_user = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_chrome_signed_in_user());
+    }
+
+    // optional string extension_data = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_extension_data());
+    }
+
+    // optional string plugins = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_plugins());
+    }
+
+    // optional string policy_data = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_data());
+    }
+
+    // optional string name = 9;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional int64 policy_fetched_timestamp = 6;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_policy_fetched_timestamp());
+    }
+
+    // optional uint64 safe_browsing_warnings = 7;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_safe_browsing_warnings());
+    }
+
+  }
+  // optional uint64 safe_browsing_warnings_click_through = 8;
+  if (cached_has_bits & 0x00000100u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+        this->_internal_safe_browsing_warnings_click_through());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeUserProfileReport::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeUserProfileReport*>(
+      &from));
+}
+
+void ChromeUserProfileReport::MergeFrom(const ChromeUserProfileReport& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeUserProfileReport)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  extension_requests_.MergeFrom(from.extension_requests_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      chrome_signed_in_user_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.chrome_signed_in_user_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      extension_data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.extension_data_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      plugins_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.plugins_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      policy_data_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_data_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      policy_fetched_timestamp_ = from.policy_fetched_timestamp_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      safe_browsing_warnings_ = from.safe_browsing_warnings_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00000100u) {
+    _internal_set_safe_browsing_warnings_click_through(from._internal_safe_browsing_warnings_click_through());
+  }
+}
+
+void ChromeUserProfileReport::CopyFrom(const ChromeUserProfileReport& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeUserProfileReport)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeUserProfileReport::IsInitialized() const {
+  return true;
+}
+
+void ChromeUserProfileReport::InternalSwap(ChromeUserProfileReport* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  extension_requests_.InternalSwap(&other->extension_requests_);
+  id_.Swap(&other->id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  chrome_signed_in_user_.Swap(&other->chrome_signed_in_user_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  extension_data_.Swap(&other->extension_data_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  plugins_.Swap(&other->plugins_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_data_.Swap(&other->policy_data_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(policy_fetched_timestamp_, other->policy_fetched_timestamp_);
+  swap(safe_browsing_warnings_, other->safe_browsing_warnings_);
+  swap(safe_browsing_warnings_click_through_, other->safe_browsing_warnings_click_through_);
+}
+
+std::string ChromeUserProfileReport::GetTypeName() const {
+  return "enterprise_management.ChromeUserProfileReport";
+}
+
+
+// ===================================================================
+
+void ChromeSignedInUser::InitAsDefaultInstance() {
+}
+class ChromeSignedInUser::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeSignedInUser>()._has_bits_);
+  static void set_has_email(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_obfuscated_gaia_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+ChromeSignedInUser::ChromeSignedInUser()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeSignedInUser)
+}
+ChromeSignedInUser::ChromeSignedInUser(const ChromeSignedInUser& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  email_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_email()) {
+    email_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.email_);
+  }
+  obfuscated_gaia_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_obfuscated_gaia_id()) {
+    obfuscated_gaia_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obfuscated_gaia_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeSignedInUser)
+}
+
+void ChromeSignedInUser::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChromeSignedInUser_device_5fmanagement_5fbackend_2eproto.base);
+  email_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obfuscated_gaia_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+ChromeSignedInUser::~ChromeSignedInUser() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeSignedInUser)
+  SharedDtor();
+}
+
+void ChromeSignedInUser::SharedDtor() {
+  email_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  obfuscated_gaia_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ChromeSignedInUser::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeSignedInUser& ChromeSignedInUser::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeSignedInUser_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeSignedInUser::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeSignedInUser)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      email_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      obfuscated_gaia_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeSignedInUser::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string email = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_email();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string obfuscated_gaia_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_obfuscated_gaia_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeSignedInUser::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeSignedInUser)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string email = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_email(), target);
+  }
+
+  // optional string obfuscated_gaia_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_obfuscated_gaia_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeSignedInUser)
+  return target;
+}
+
+size_t ChromeSignedInUser::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeSignedInUser)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string email = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_email());
+    }
+
+    // optional string obfuscated_gaia_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_obfuscated_gaia_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeSignedInUser::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeSignedInUser*>(
+      &from));
+}
+
+void ChromeSignedInUser::MergeFrom(const ChromeSignedInUser& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeSignedInUser)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      email_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.email_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      obfuscated_gaia_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.obfuscated_gaia_id_);
+    }
+  }
+}
+
+void ChromeSignedInUser::CopyFrom(const ChromeSignedInUser& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeSignedInUser)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeSignedInUser::IsInitialized() const {
+  return true;
+}
+
+void ChromeSignedInUser::InternalSwap(ChromeSignedInUser* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  email_.Swap(&other->email_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  obfuscated_gaia_id_.Swap(&other->obfuscated_gaia_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string ChromeSignedInUser::GetTypeName() const {
+  return "enterprise_management.ChromeSignedInUser";
+}
+
+
+// ===================================================================
+
+void ExtensionRequest::InitAsDefaultInstance() {
+}
+class ExtensionRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ExtensionRequest>()._has_bits_);
+  static void set_has_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_request_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_justification(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+ExtensionRequest::ExtensionRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ExtensionRequest)
+}
+ExtensionRequest::ExtensionRequest(const ExtensionRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_id()) {
+    id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+  }
+  justification_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_justification()) {
+    justification_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.justification_);
+  }
+  request_timestamp_ = from.request_timestamp_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ExtensionRequest)
+}
+
+void ExtensionRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ExtensionRequest_device_5fmanagement_5fbackend_2eproto.base);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  justification_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  request_timestamp_ = PROTOBUF_LONGLONG(0);
+}
+
+ExtensionRequest::~ExtensionRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ExtensionRequest)
+  SharedDtor();
+}
+
+void ExtensionRequest::SharedDtor() {
+  id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  justification_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ExtensionRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ExtensionRequest& ExtensionRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ExtensionRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ExtensionRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ExtensionRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      justification_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  request_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ExtensionRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 request_timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_request_timestamp(&has_bits);
+          request_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string justification = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_justification();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ExtensionRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ExtensionRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_id(), target);
+  }
+
+  // optional int64 request_timestamp = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_request_timestamp(), target);
+  }
+
+  // optional string justification = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_justification(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ExtensionRequest)
+  return target;
+}
+
+size_t ExtensionRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ExtensionRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_id());
+    }
+
+    // optional string justification = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_justification());
+    }
+
+    // optional int64 request_timestamp = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_request_timestamp());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ExtensionRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ExtensionRequest*>(
+      &from));
+}
+
+void ExtensionRequest::MergeFrom(const ExtensionRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ExtensionRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      justification_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.justification_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      request_timestamp_ = from.request_timestamp_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ExtensionRequest::CopyFrom(const ExtensionRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ExtensionRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ExtensionRequest::IsInitialized() const {
+  return true;
+}
+
+void ExtensionRequest::InternalSwap(ExtensionRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  id_.Swap(&other->id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  justification_.Swap(&other->justification_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(request_timestamp_, other->request_timestamp_);
+}
+
+std::string ExtensionRequest::GetTypeName() const {
+  return "enterprise_management.ExtensionRequest";
+}
+
+
+// ===================================================================
+
+void Extension::InitAsDefaultInstance() {
+}
+class Extension::_Internal {
+ public:
+  using HasBits = decltype(std::declval<Extension>()._has_bits_);
+  static void set_has_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_description(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_app_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_homepage_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_install_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_from_webstore(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_manifest_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+};
+
+Extension::Extension()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.Extension)
+}
+Extension::Extension(const Extension& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      permissions_(from.permissions_),
+      host_permissions_(from.host_permissions_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_id()) {
+    id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+  }
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_version()) {
+    version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+  }
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  description_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_description()) {
+    description_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.description_);
+  }
+  homepage_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_homepage_url()) {
+    homepage_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.homepage_url_);
+  }
+  ::memcpy(&app_type_, &from.app_type_,
+    static_cast<size_t>(reinterpret_cast<char*>(&manifest_version_) -
+    reinterpret_cast<char*>(&app_type_)) + sizeof(manifest_version_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.Extension)
+}
+
+void Extension::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Extension_device_5fmanagement_5fbackend_2eproto.base);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  description_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  homepage_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&app_type_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&manifest_version_) -
+      reinterpret_cast<char*>(&app_type_)) + sizeof(manifest_version_));
+}
+
+Extension::~Extension() {
+  // @@protoc_insertion_point(destructor:enterprise_management.Extension)
+  SharedDtor();
+}
+
+void Extension::SharedDtor() {
+  id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  description_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  homepage_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void Extension::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const Extension& Extension::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_Extension_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void Extension::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.Extension)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  permissions_.Clear();
+  host_permissions_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      description_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      homepage_url_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x000000e0u) {
+    ::memset(&app_type_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&enabled_) -
+        reinterpret_cast<char*>(&app_type_)) + sizeof(enabled_));
+  }
+  if (cached_has_bits & 0x00000300u) {
+    ::memset(&from_webstore_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&manifest_version_) -
+        reinterpret_cast<char*>(&from_webstore_)) + sizeof(manifest_version_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* Extension::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string name = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string description = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_description();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.Extension.ExtensionType app_type = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::Extension_ExtensionType_IsValid(val))) {
+            _internal_set_app_type(static_cast<::enterprise_management::Extension_ExtensionType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(5, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string homepage_url = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_homepage_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.Extension.InstallType install_type = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::Extension_InstallType_IsValid(val))) {
+            _internal_set_install_type(static_cast<::enterprise_management::Extension_InstallType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(8, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bool enabled = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated string permissions = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_permissions();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated string host_permissions = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_host_permissions();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<90>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional bool from_webstore = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 104)) {
+          _Internal::set_has_from_webstore(&has_bits);
+          from_webstore_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 manifest_version = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 112)) {
+          _Internal::set_has_manifest_version(&has_bits);
+          manifest_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* Extension::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.Extension)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_id(), target);
+  }
+
+  // optional string version = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_version(), target);
+  }
+
+  // optional string name = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_name(), target);
+  }
+
+  // optional string description = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_description(), target);
+  }
+
+  // optional .enterprise_management.Extension.ExtensionType app_type = 5;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      5, this->_internal_app_type(), target);
+  }
+
+  // optional string homepage_url = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_homepage_url(), target);
+  }
+
+  // optional .enterprise_management.Extension.InstallType install_type = 8;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      8, this->_internal_install_type(), target);
+  }
+
+  // optional bool enabled = 9;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(9, this->_internal_enabled(), target);
+  }
+
+  // repeated string permissions = 10;
+  for (int i = 0, n = this->_internal_permissions_size(); i < n; i++) {
+    const auto& s = this->_internal_permissions(i);
+    target = stream->WriteString(10, s, target);
+  }
+
+  // repeated string host_permissions = 11;
+  for (int i = 0, n = this->_internal_host_permissions_size(); i < n; i++) {
+    const auto& s = this->_internal_host_permissions(i);
+    target = stream->WriteString(11, s, target);
+  }
+
+  // optional bool from_webstore = 13;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(13, this->_internal_from_webstore(), target);
+  }
+
+  // optional int32 manifest_version = 14;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(14, this->_internal_manifest_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.Extension)
+  return target;
+}
+
+size_t Extension::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.Extension)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string permissions = 10;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(permissions_.size());
+  for (int i = 0, n = permissions_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      permissions_.Get(i));
+  }
+
+  // repeated string host_permissions = 11;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(host_permissions_.size());
+  for (int i = 0, n = host_permissions_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      host_permissions_.Get(i));
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_id());
+    }
+
+    // optional string version = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_version());
+    }
+
+    // optional string name = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string description = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_description());
+    }
+
+    // optional string homepage_url = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_homepage_url());
+    }
+
+    // optional .enterprise_management.Extension.ExtensionType app_type = 5;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_app_type());
+    }
+
+    // optional .enterprise_management.Extension.InstallType install_type = 8;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_install_type());
+    }
+
+    // optional bool enabled = 9;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (cached_has_bits & 0x00000300u) {
+    // optional bool from_webstore = 13;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 + 1;
+    }
+
+    // optional int32 manifest_version = 14;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_manifest_version());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void Extension::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const Extension*>(
+      &from));
+}
+
+void Extension::MergeFrom(const Extension& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.Extension)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  permissions_.MergeFrom(from.permissions_);
+  host_permissions_.MergeFrom(from.host_permissions_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      description_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.description_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      homepage_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.homepage_url_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      app_type_ = from.app_type_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      install_type_ = from.install_type_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      enabled_ = from.enabled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00000300u) {
+    if (cached_has_bits & 0x00000100u) {
+      from_webstore_ = from.from_webstore_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      manifest_version_ = from.manifest_version_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void Extension::CopyFrom(const Extension& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.Extension)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool Extension::IsInitialized() const {
+  return true;
+}
+
+void Extension::InternalSwap(Extension* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  permissions_.InternalSwap(&other->permissions_);
+  host_permissions_.InternalSwap(&other->host_permissions_);
+  id_.Swap(&other->id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  version_.Swap(&other->version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  description_.Swap(&other->description_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  homepage_url_.Swap(&other->homepage_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(app_type_, other->app_type_);
+  swap(install_type_, other->install_type_);
+  swap(enabled_, other->enabled_);
+  swap(from_webstore_, other->from_webstore_);
+  swap(manifest_version_, other->manifest_version_);
+}
+
+std::string Extension::GetTypeName() const {
+  return "enterprise_management.Extension";
+}
+
+
+// ===================================================================
+
+void Plugin::InitAsDefaultInstance() {
+}
+class Plugin::_Internal {
+ public:
+  using HasBits = decltype(std::declval<Plugin>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_filename(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_description(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+Plugin::Plugin()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.Plugin)
+}
+Plugin::Plugin(const Plugin& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_version()) {
+    version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+  }
+  filename_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_filename()) {
+    filename_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.filename_);
+  }
+  description_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_description()) {
+    description_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.description_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.Plugin)
+}
+
+void Plugin::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Plugin_device_5fmanagement_5fbackend_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  filename_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  description_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+Plugin::~Plugin() {
+  // @@protoc_insertion_point(destructor:enterprise_management.Plugin)
+  SharedDtor();
+}
+
+void Plugin::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  filename_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  description_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void Plugin::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const Plugin& Plugin::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_Plugin_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void Plugin::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.Plugin)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      filename_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      description_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* Plugin::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string filename = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_filename();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string description = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_description();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* Plugin::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.Plugin)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional string version = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_version(), target);
+  }
+
+  // optional string filename = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_filename(), target);
+  }
+
+  // optional string description = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_description(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.Plugin)
+  return target;
+}
+
+size_t Plugin::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.Plugin)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string version = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_version());
+    }
+
+    // optional string filename = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_filename());
+    }
+
+    // optional string description = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_description());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void Plugin::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const Plugin*>(
+      &from));
+}
+
+void Plugin::MergeFrom(const Plugin& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.Plugin)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      filename_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.filename_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      description_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.description_);
+    }
+  }
+}
+
+void Plugin::CopyFrom(const Plugin& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.Plugin)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool Plugin::IsInitialized() const {
+  return true;
+}
+
+void Plugin::InternalSwap(Plugin* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  version_.Swap(&other->version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  filename_.Swap(&other->filename_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  description_.Swap(&other->description_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string Plugin::GetTypeName() const {
+  return "enterprise_management.Plugin";
+}
+
+
+// ===================================================================
+
+void Policy::InitAsDefaultInstance() {
+}
+class Policy::_Internal {
+ public:
+  using HasBits = decltype(std::declval<Policy>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_level(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_scope(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_source(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_value(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_error(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+Policy::Policy()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.Policy)
+}
+Policy::Policy(const Policy& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_value()) {
+    value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.value_);
+  }
+  error_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_error()) {
+    error_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_);
+  }
+  ::memcpy(&level_, &from.level_,
+    static_cast<size_t>(reinterpret_cast<char*>(&source_) -
+    reinterpret_cast<char*>(&level_)) + sizeof(source_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.Policy)
+}
+
+void Policy::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Policy_device_5fmanagement_5fbackend_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  error_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&level_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&source_) -
+      reinterpret_cast<char*>(&level_)) + sizeof(source_));
+}
+
+Policy::~Policy() {
+  // @@protoc_insertion_point(destructor:enterprise_management.Policy)
+  SharedDtor();
+}
+
+void Policy::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  value_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  error_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void Policy::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const Policy& Policy::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_Policy_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void Policy::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.Policy)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      value_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      error_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000038u) {
+    ::memset(&level_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&source_) -
+        reinterpret_cast<char*>(&level_)) + sizeof(source_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* Policy::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.Policy.PolicyLevel level = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::Policy_PolicyLevel_IsValid(val))) {
+            _internal_set_level(static_cast<::enterprise_management::Policy_PolicyLevel>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.Policy.PolicyScope scope = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::Policy_PolicyScope_IsValid(val))) {
+            _internal_set_scope(static_cast<::enterprise_management::Policy_PolicyScope>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.Policy.PolicySource source = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::Policy_PolicySource_IsValid(val))) {
+            _internal_set_source(static_cast<::enterprise_management::Policy_PolicySource>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string value = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_value();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string error = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_error();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* Policy::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.Policy)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional .enterprise_management.Policy.PolicyLevel level = 2;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_level(), target);
+  }
+
+  // optional .enterprise_management.Policy.PolicyScope scope = 3;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_scope(), target);
+  }
+
+  // optional .enterprise_management.Policy.PolicySource source = 4;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_source(), target);
+  }
+
+  // optional string value = 5;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_value(), target);
+  }
+
+  // optional string error = 6;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_error(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.Policy)
+  return target;
+}
+
+size_t Policy::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.Policy)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string value = 5;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_value());
+    }
+
+    // optional string error = 6;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_error());
+    }
+
+    // optional .enterprise_management.Policy.PolicyLevel level = 2;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_level());
+    }
+
+    // optional .enterprise_management.Policy.PolicyScope scope = 3;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_scope());
+    }
+
+    // optional .enterprise_management.Policy.PolicySource source = 4;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_source());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void Policy::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const Policy*>(
+      &from));
+}
+
+void Policy::MergeFrom(const Policy& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.Policy)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.value_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      error_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      level_ = from.level_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      scope_ = from.scope_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      source_ = from.source_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void Policy::CopyFrom(const Policy& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.Policy)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool Policy::IsInitialized() const {
+  return true;
+}
+
+void Policy::InternalSwap(Policy* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  value_.Swap(&other->value_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  error_.Swap(&other->error_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(level_, other->level_);
+  swap(scope_, other->scope_);
+  swap(source_, other->source_);
+}
+
+std::string Policy::GetTypeName() const {
+  return "enterprise_management.Policy";
+}
+
+
+// ===================================================================
+
+void ExtensionPolicy::InitAsDefaultInstance() {
+}
+class ExtensionPolicy::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ExtensionPolicy>()._has_bits_);
+  static void set_has_extension_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ExtensionPolicy::ExtensionPolicy()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ExtensionPolicy)
+}
+ExtensionPolicy::ExtensionPolicy(const ExtensionPolicy& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      policies_(from.policies_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  extension_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_extension_id()) {
+    extension_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.extension_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ExtensionPolicy)
+}
+
+void ExtensionPolicy::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ExtensionPolicy_device_5fmanagement_5fbackend_2eproto.base);
+  extension_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+ExtensionPolicy::~ExtensionPolicy() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ExtensionPolicy)
+  SharedDtor();
+}
+
+void ExtensionPolicy::SharedDtor() {
+  extension_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ExtensionPolicy::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ExtensionPolicy& ExtensionPolicy::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ExtensionPolicy_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ExtensionPolicy::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ExtensionPolicy)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  policies_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    extension_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ExtensionPolicy::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string extension_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_extension_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.Policy policies = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_policies(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ExtensionPolicy::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ExtensionPolicy)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string extension_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_extension_id(), target);
+  }
+
+  // repeated .enterprise_management.Policy policies = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_policies_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_policies(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ExtensionPolicy)
+  return target;
+}
+
+size_t ExtensionPolicy::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ExtensionPolicy)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.Policy policies = 2;
+  total_size += 1UL * this->_internal_policies_size();
+  for (const auto& msg : this->policies_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // optional string extension_id = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_extension_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ExtensionPolicy::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ExtensionPolicy*>(
+      &from));
+}
+
+void ExtensionPolicy::MergeFrom(const ExtensionPolicy& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ExtensionPolicy)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  policies_.MergeFrom(from.policies_);
+  if (from._internal_has_extension_id()) {
+    _has_bits_[0] |= 0x00000001u;
+    extension_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.extension_id_);
+  }
+}
+
+void ExtensionPolicy::CopyFrom(const ExtensionPolicy& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ExtensionPolicy)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ExtensionPolicy::IsInitialized() const {
+  return true;
+}
+
+void ExtensionPolicy::InternalSwap(ExtensionPolicy* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  policies_.InternalSwap(&other->policies_);
+  extension_id_.Swap(&other->extension_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string ExtensionPolicy::GetTypeName() const {
+  return "enterprise_management.ExtensionPolicy";
+}
+
+
+// ===================================================================
+
+void PolicyFetchTimestamp::InitAsDefaultInstance() {
+}
+class PolicyFetchTimestamp::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PolicyFetchTimestamp>()._has_bits_);
+  static void set_has_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+PolicyFetchTimestamp::PolicyFetchTimestamp()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PolicyFetchTimestamp)
+}
+PolicyFetchTimestamp::PolicyFetchTimestamp(const PolicyFetchTimestamp& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_type()) {
+    type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.type_);
+  }
+  timestamp_ = from.timestamp_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PolicyFetchTimestamp)
+}
+
+void PolicyFetchTimestamp::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PolicyFetchTimestamp_device_5fmanagement_5fbackend_2eproto.base);
+  type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  timestamp_ = PROTOBUF_LONGLONG(0);
+}
+
+PolicyFetchTimestamp::~PolicyFetchTimestamp() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PolicyFetchTimestamp)
+  SharedDtor();
+}
+
+void PolicyFetchTimestamp::SharedDtor() {
+  type_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PolicyFetchTimestamp::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PolicyFetchTimestamp& PolicyFetchTimestamp::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PolicyFetchTimestamp_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PolicyFetchTimestamp::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PolicyFetchTimestamp)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    type_.ClearNonDefaultToEmptyNoArena();
+  }
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PolicyFetchTimestamp::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_type();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PolicyFetchTimestamp::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PolicyFetchTimestamp)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string type = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_type(), target);
+  }
+
+  // optional int64 timestamp = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_timestamp(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PolicyFetchTimestamp)
+  return target;
+}
+
+size_t PolicyFetchTimestamp::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PolicyFetchTimestamp)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string type = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_type());
+    }
+
+    // optional int64 timestamp = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PolicyFetchTimestamp::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PolicyFetchTimestamp*>(
+      &from));
+}
+
+void PolicyFetchTimestamp::MergeFrom(const PolicyFetchTimestamp& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PolicyFetchTimestamp)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.type_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      timestamp_ = from.timestamp_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PolicyFetchTimestamp::CopyFrom(const PolicyFetchTimestamp& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PolicyFetchTimestamp)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PolicyFetchTimestamp::IsInitialized() const {
+  return true;
+}
+
+void PolicyFetchTimestamp::InternalSwap(PolicyFetchTimestamp* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  type_.Swap(&other->type_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(timestamp_, other->timestamp_);
+}
+
+std::string PolicyFetchTimestamp::GetTypeName() const {
+  return "enterprise_management.PolicyFetchTimestamp";
+}
+
+
+// ===================================================================
+
+void ChromeUserProfileInfo::InitAsDefaultInstance() {
+  ::enterprise_management::_ChromeUserProfileInfo_default_instance_._instance.get_mutable()->chrome_signed_in_user_ = const_cast< ::enterprise_management::ChromeSignedInUser*>(
+      ::enterprise_management::ChromeSignedInUser::internal_default_instance());
+}
+class ChromeUserProfileInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeUserProfileInfo>()._has_bits_);
+  static void set_has_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_is_detail_available(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::enterprise_management::ChromeSignedInUser& chrome_signed_in_user(const ChromeUserProfileInfo* msg);
+  static void set_has_chrome_signed_in_user(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+const ::enterprise_management::ChromeSignedInUser&
+ChromeUserProfileInfo::_Internal::chrome_signed_in_user(const ChromeUserProfileInfo* msg) {
+  return *msg->chrome_signed_in_user_;
+}
+ChromeUserProfileInfo::ChromeUserProfileInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeUserProfileInfo)
+}
+ChromeUserProfileInfo::ChromeUserProfileInfo(const ChromeUserProfileInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      extensions_(from.extensions_),
+      chrome_policies_(from.chrome_policies_),
+      extension_policies_(from.extension_policies_),
+      policy_fetched_timestamps_(from.policy_fetched_timestamps_),
+      extension_requests_(from.extension_requests_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_id()) {
+    id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+  }
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  if (from._internal_has_chrome_signed_in_user()) {
+    chrome_signed_in_user_ = new ::enterprise_management::ChromeSignedInUser(*from.chrome_signed_in_user_);
+  } else {
+    chrome_signed_in_user_ = nullptr;
+  }
+  is_detail_available_ = from.is_detail_available_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeUserProfileInfo)
+}
+
+void ChromeUserProfileInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChromeUserProfileInfo_device_5fmanagement_5fbackend_2eproto.base);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&chrome_signed_in_user_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_detail_available_) -
+      reinterpret_cast<char*>(&chrome_signed_in_user_)) + sizeof(is_detail_available_));
+}
+
+ChromeUserProfileInfo::~ChromeUserProfileInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeUserProfileInfo)
+  SharedDtor();
+}
+
+void ChromeUserProfileInfo::SharedDtor() {
+  id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete chrome_signed_in_user_;
+}
+
+void ChromeUserProfileInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeUserProfileInfo& ChromeUserProfileInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeUserProfileInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeUserProfileInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeUserProfileInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  extensions_.Clear();
+  chrome_policies_.Clear();
+  extension_policies_.Clear();
+  policy_fetched_timestamps_.Clear();
+  extension_requests_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(chrome_signed_in_user_ != nullptr);
+      chrome_signed_in_user_->Clear();
+    }
+  }
+  is_detail_available_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeUserProfileInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string name = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_detail_available = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_is_detail_available(&has_bits);
+          is_detail_available_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChromeSignedInUser chrome_signed_in_user = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_chrome_signed_in_user(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.Extension extensions = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_extensions(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.Policy chrome_policies = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_chrome_policies(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ExtensionPolicy extension_policies = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_extension_policies(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.PolicyFetchTimestamp policy_fetched_timestamps = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_policy_fetched_timestamps(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_extension_requests(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeUserProfileInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeUserProfileInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_id(), target);
+  }
+
+  // optional string name = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_name(), target);
+  }
+
+  // optional bool is_detail_available = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_is_detail_available(), target);
+  }
+
+  // optional .enterprise_management.ChromeSignedInUser chrome_signed_in_user = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::chrome_signed_in_user(this), target, stream);
+  }
+
+  // repeated .enterprise_management.Extension extensions = 5;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_extensions_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(5, this->_internal_extensions(i), target, stream);
+  }
+
+  // repeated .enterprise_management.Policy chrome_policies = 7;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_chrome_policies_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(7, this->_internal_chrome_policies(i), target, stream);
+  }
+
+  // repeated .enterprise_management.ExtensionPolicy extension_policies = 8;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_extension_policies_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(8, this->_internal_extension_policies(i), target, stream);
+  }
+
+  // repeated .enterprise_management.PolicyFetchTimestamp policy_fetched_timestamps = 9;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_policy_fetched_timestamps_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(9, this->_internal_policy_fetched_timestamps(i), target, stream);
+  }
+
+  // repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_extension_requests_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(10, this->_internal_extension_requests(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeUserProfileInfo)
+  return target;
+}
+
+size_t ChromeUserProfileInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeUserProfileInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.Extension extensions = 5;
+  total_size += 1UL * this->_internal_extensions_size();
+  for (const auto& msg : this->extensions_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.Policy chrome_policies = 7;
+  total_size += 1UL * this->_internal_chrome_policies_size();
+  for (const auto& msg : this->chrome_policies_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.ExtensionPolicy extension_policies = 8;
+  total_size += 1UL * this->_internal_extension_policies_size();
+  for (const auto& msg : this->extension_policies_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.PolicyFetchTimestamp policy_fetched_timestamps = 9;
+  total_size += 1UL * this->_internal_policy_fetched_timestamps_size();
+  for (const auto& msg : this->policy_fetched_timestamps_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+  total_size += 1UL * this->_internal_extension_requests_size();
+  for (const auto& msg : this->extension_requests_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_id());
+    }
+
+    // optional string name = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional .enterprise_management.ChromeSignedInUser chrome_signed_in_user = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *chrome_signed_in_user_);
+    }
+
+    // optional bool is_detail_available = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeUserProfileInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeUserProfileInfo*>(
+      &from));
+}
+
+void ChromeUserProfileInfo::MergeFrom(const ChromeUserProfileInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeUserProfileInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  extensions_.MergeFrom(from.extensions_);
+  chrome_policies_.MergeFrom(from.chrome_policies_);
+  extension_policies_.MergeFrom(from.extension_policies_);
+  policy_fetched_timestamps_.MergeFrom(from.policy_fetched_timestamps_);
+  extension_requests_.MergeFrom(from.extension_requests_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_chrome_signed_in_user()->::enterprise_management::ChromeSignedInUser::MergeFrom(from._internal_chrome_signed_in_user());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      is_detail_available_ = from.is_detail_available_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ChromeUserProfileInfo::CopyFrom(const ChromeUserProfileInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeUserProfileInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeUserProfileInfo::IsInitialized() const {
+  return true;
+}
+
+void ChromeUserProfileInfo::InternalSwap(ChromeUserProfileInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  extensions_.InternalSwap(&other->extensions_);
+  chrome_policies_.InternalSwap(&other->chrome_policies_);
+  extension_policies_.InternalSwap(&other->extension_policies_);
+  policy_fetched_timestamps_.InternalSwap(&other->policy_fetched_timestamps_);
+  extension_requests_.InternalSwap(&other->extension_requests_);
+  id_.Swap(&other->id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(chrome_signed_in_user_, other->chrome_signed_in_user_);
+  swap(is_detail_available_, other->is_detail_available_);
+}
+
+std::string ChromeUserProfileInfo::GetTypeName() const {
+  return "enterprise_management.ChromeUserProfileInfo";
+}
+
+
+// ===================================================================
+
+void BrowserReport::InitAsDefaultInstance() {
+}
+class BrowserReport::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BrowserReport>()._has_bits_);
+  static void set_has_browser_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_channel(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_executable_path(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_installed_browser_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_is_extended_stable_channel(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+BrowserReport::BrowserReport()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BrowserReport)
+}
+BrowserReport::BrowserReport(const BrowserReport& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      chrome_user_profile_reports_(from.chrome_user_profile_reports_),
+      chrome_user_profile_infos_(from.chrome_user_profile_infos_),
+      plugins_(from.plugins_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  browser_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_browser_version()) {
+    browser_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.browser_version_);
+  }
+  executable_path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_executable_path()) {
+    executable_path_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.executable_path_);
+  }
+  installed_browser_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_installed_browser_version()) {
+    installed_browser_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.installed_browser_version_);
+  }
+  ::memcpy(&channel_, &from.channel_,
+    static_cast<size_t>(reinterpret_cast<char*>(&is_extended_stable_channel_) -
+    reinterpret_cast<char*>(&channel_)) + sizeof(is_extended_stable_channel_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BrowserReport)
+}
+
+void BrowserReport::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto.base);
+  browser_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  executable_path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  installed_browser_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&channel_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_extended_stable_channel_) -
+      reinterpret_cast<char*>(&channel_)) + sizeof(is_extended_stable_channel_));
+}
+
+BrowserReport::~BrowserReport() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BrowserReport)
+  SharedDtor();
+}
+
+void BrowserReport::SharedDtor() {
+  browser_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  executable_path_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  installed_browser_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void BrowserReport::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BrowserReport& BrowserReport::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BrowserReport_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BrowserReport::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BrowserReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  chrome_user_profile_reports_.Clear();
+  chrome_user_profile_infos_.Clear();
+  plugins_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      browser_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      executable_path_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      installed_browser_version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000018u) {
+    ::memset(&channel_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&is_extended_stable_channel_) -
+        reinterpret_cast<char*>(&channel_)) + sizeof(is_extended_stable_channel_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BrowserReport::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string browser_version = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_browser_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.Channel channel = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::Channel_IsValid(val))) {
+            _internal_set_channel(static_cast<::enterprise_management::Channel>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string executable_path = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_executable_path();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ChromeUserProfileReport chrome_user_profile_reports = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_chrome_user_profile_reports(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ChromeUserProfileInfo chrome_user_profile_infos = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_chrome_user_profile_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<50>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.Plugin plugins = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_plugins(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional string installed_browser_version = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_installed_browser_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_extended_stable_channel = 9 [default = false];
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_is_extended_stable_channel(&has_bits);
+          is_extended_stable_channel_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BrowserReport::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BrowserReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string browser_version = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_browser_version(), target);
+  }
+
+  // optional .enterprise_management.Channel channel = 2;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_channel(), target);
+  }
+
+  // optional string executable_path = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_executable_path(), target);
+  }
+
+  // repeated .enterprise_management.ChromeUserProfileReport chrome_user_profile_reports = 4;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_chrome_user_profile_reports_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(4, this->_internal_chrome_user_profile_reports(i), target, stream);
+  }
+
+  // repeated .enterprise_management.ChromeUserProfileInfo chrome_user_profile_infos = 6;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_chrome_user_profile_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(6, this->_internal_chrome_user_profile_infos(i), target, stream);
+  }
+
+  // repeated .enterprise_management.Plugin plugins = 7;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_plugins_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(7, this->_internal_plugins(i), target, stream);
+  }
+
+  // optional string installed_browser_version = 8;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        8, this->_internal_installed_browser_version(), target);
+  }
+
+  // optional bool is_extended_stable_channel = 9 [default = false];
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(9, this->_internal_is_extended_stable_channel(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BrowserReport)
+  return target;
+}
+
+size_t BrowserReport::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BrowserReport)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ChromeUserProfileReport chrome_user_profile_reports = 4;
+  total_size += 1UL * this->_internal_chrome_user_profile_reports_size();
+  for (const auto& msg : this->chrome_user_profile_reports_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.ChromeUserProfileInfo chrome_user_profile_infos = 6;
+  total_size += 1UL * this->_internal_chrome_user_profile_infos_size();
+  for (const auto& msg : this->chrome_user_profile_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.Plugin plugins = 7;
+  total_size += 1UL * this->_internal_plugins_size();
+  for (const auto& msg : this->plugins_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string browser_version = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_browser_version());
+    }
+
+    // optional string executable_path = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_executable_path());
+    }
+
+    // optional string installed_browser_version = 8;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_installed_browser_version());
+    }
+
+    // optional .enterprise_management.Channel channel = 2;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_channel());
+    }
+
+    // optional bool is_extended_stable_channel = 9 [default = false];
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BrowserReport::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BrowserReport*>(
+      &from));
+}
+
+void BrowserReport::MergeFrom(const BrowserReport& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BrowserReport)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  chrome_user_profile_reports_.MergeFrom(from.chrome_user_profile_reports_);
+  chrome_user_profile_infos_.MergeFrom(from.chrome_user_profile_infos_);
+  plugins_.MergeFrom(from.plugins_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      browser_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.browser_version_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      executable_path_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.executable_path_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      installed_browser_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.installed_browser_version_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      channel_ = from.channel_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      is_extended_stable_channel_ = from.is_extended_stable_channel_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void BrowserReport::CopyFrom(const BrowserReport& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BrowserReport)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BrowserReport::IsInitialized() const {
+  return true;
+}
+
+void BrowserReport::InternalSwap(BrowserReport* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  chrome_user_profile_reports_.InternalSwap(&other->chrome_user_profile_reports_);
+  chrome_user_profile_infos_.InternalSwap(&other->chrome_user_profile_infos_);
+  plugins_.InternalSwap(&other->plugins_);
+  browser_version_.Swap(&other->browser_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  executable_path_.Swap(&other->executable_path_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  installed_browser_version_.Swap(&other->installed_browser_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(channel_, other->channel_);
+  swap(is_extended_stable_channel_, other->is_extended_stable_channel_);
+}
+
+std::string BrowserReport::GetTypeName() const {
+  return "enterprise_management.BrowserReport";
+}
+
+
+// ===================================================================
+
+void OSReport::InitAsDefaultInstance() {
+}
+class OSReport::_Internal {
+ public:
+  using HasBits = decltype(std::declval<OSReport>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_arch(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+OSReport::OSReport()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.OSReport)
+}
+OSReport::OSReport(const OSReport& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  arch_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_arch()) {
+    arch_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.arch_);
+  }
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_version()) {
+    version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.OSReport)
+}
+
+void OSReport::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OSReport_device_5fmanagement_5fbackend_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  arch_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+OSReport::~OSReport() {
+  // @@protoc_insertion_point(destructor:enterprise_management.OSReport)
+  SharedDtor();
+}
+
+void OSReport::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  arch_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void OSReport::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const OSReport& OSReport::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_OSReport_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void OSReport::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.OSReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      arch_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* OSReport::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string arch = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_arch();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* OSReport::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.OSReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional string arch = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_arch(), target);
+  }
+
+  // optional string version = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.OSReport)
+  return target;
+}
+
+size_t OSReport::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.OSReport)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string arch = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_arch());
+    }
+
+    // optional string version = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_version());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void OSReport::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const OSReport*>(
+      &from));
+}
+
+void OSReport::MergeFrom(const OSReport& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.OSReport)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      arch_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.arch_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+    }
+  }
+}
+
+void OSReport::CopyFrom(const OSReport& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.OSReport)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool OSReport::IsInitialized() const {
+  return true;
+}
+
+void OSReport::InternalSwap(OSReport* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  arch_.Swap(&other->arch_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  version_.Swap(&other->version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string OSReport::GetTypeName() const {
+  return "enterprise_management.OSReport";
+}
+
+
+// ===================================================================
+
+void ChromeDesktopReportRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_ChromeDesktopReportRequest_default_instance_._instance.get_mutable()->browser_report_ = const_cast< ::enterprise_management::BrowserReport*>(
+      ::enterprise_management::BrowserReport::internal_default_instance());
+  ::enterprise_management::_ChromeDesktopReportRequest_default_instance_._instance.get_mutable()->os_report_ = const_cast< ::enterprise_management::OSReport*>(
+      ::enterprise_management::OSReport::internal_default_instance());
+  ::enterprise_management::_ChromeDesktopReportRequest_default_instance_._instance.get_mutable()->browser_device_identifier_ = const_cast< ::enterprise_management::BrowserDeviceIdentifier*>(
+      ::enterprise_management::BrowserDeviceIdentifier::internal_default_instance());
+}
+class ChromeDesktopReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeDesktopReportRequest>()._has_bits_);
+  static void set_has_machine_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_os_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_os_user(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::BrowserReport& browser_report(const ChromeDesktopReportRequest* msg);
+  static void set_has_browser_report(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_serial_number(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_computer_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static const ::enterprise_management::OSReport& os_report(const ChromeDesktopReportRequest* msg);
+  static void set_has_os_report(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_os_user_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::enterprise_management::BrowserDeviceIdentifier& browser_device_identifier(const ChromeDesktopReportRequest* msg);
+  static void set_has_browser_device_identifier(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_machine_attestation_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_device_model(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_brand_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+};
+
+const ::enterprise_management::BrowserReport&
+ChromeDesktopReportRequest::_Internal::browser_report(const ChromeDesktopReportRequest* msg) {
+  return *msg->browser_report_;
+}
+const ::enterprise_management::OSReport&
+ChromeDesktopReportRequest::_Internal::os_report(const ChromeDesktopReportRequest* msg) {
+  return *msg->os_report_;
+}
+const ::enterprise_management::BrowserDeviceIdentifier&
+ChromeDesktopReportRequest::_Internal::browser_device_identifier(const ChromeDesktopReportRequest* msg) {
+  return *msg->browser_device_identifier_;
+}
+ChromeDesktopReportRequest::ChromeDesktopReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeDesktopReportRequest)
+}
+ChromeDesktopReportRequest::ChromeDesktopReportRequest(const ChromeDesktopReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      partial_report_types_(from.partial_report_types_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  machine_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_machine_name()) {
+    machine_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_name_);
+  }
+  os_info_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_os_info()) {
+    os_info_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_info_);
+  }
+  os_user_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_os_user()) {
+    os_user_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_user_);
+  }
+  serial_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_serial_number()) {
+    serial_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_number_);
+  }
+  computer_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_computer_name()) {
+    computer_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.computer_name_);
+  }
+  os_user_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_os_user_name()) {
+    os_user_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_user_name_);
+  }
+  machine_attestation_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_machine_attestation_key()) {
+    machine_attestation_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_attestation_key_);
+  }
+  device_model_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_model()) {
+    device_model_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_model_);
+  }
+  brand_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_brand_name()) {
+    brand_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_name_);
+  }
+  if (from._internal_has_browser_report()) {
+    browser_report_ = new ::enterprise_management::BrowserReport(*from.browser_report_);
+  } else {
+    browser_report_ = nullptr;
+  }
+  if (from._internal_has_os_report()) {
+    os_report_ = new ::enterprise_management::OSReport(*from.os_report_);
+  } else {
+    os_report_ = nullptr;
+  }
+  if (from._internal_has_browser_device_identifier()) {
+    browser_device_identifier_ = new ::enterprise_management::BrowserDeviceIdentifier(*from.browser_device_identifier_);
+  } else {
+    browser_device_identifier_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeDesktopReportRequest)
+}
+
+void ChromeDesktopReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChromeDesktopReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  machine_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_info_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_user_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  serial_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  computer_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_user_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  machine_attestation_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_model_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&browser_report_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&browser_device_identifier_) -
+      reinterpret_cast<char*>(&browser_report_)) + sizeof(browser_device_identifier_));
+}
+
+ChromeDesktopReportRequest::~ChromeDesktopReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeDesktopReportRequest)
+  SharedDtor();
+}
+
+void ChromeDesktopReportRequest::SharedDtor() {
+  machine_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_info_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_user_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  serial_number_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  computer_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_user_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  machine_attestation_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_model_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete browser_report_;
+  if (this != internal_default_instance()) delete os_report_;
+  if (this != internal_default_instance()) delete browser_device_identifier_;
+}
+
+void ChromeDesktopReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeDesktopReportRequest& ChromeDesktopReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeDesktopReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeDesktopReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeDesktopReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  partial_report_types_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      machine_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      os_info_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      os_user_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      serial_number_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      computer_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      os_user_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      machine_attestation_key_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      device_model_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    if (cached_has_bits & 0x00000100u) {
+      brand_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(browser_report_ != nullptr);
+      browser_report_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(os_report_ != nullptr);
+      os_report_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(browser_device_identifier_ != nullptr);
+      browser_device_identifier_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeDesktopReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string machine_name = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_machine_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string os_info = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_os_info();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string os_user = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_os_user();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserReport browser_report = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_report(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string serial_number = 5 [deprecated = true];
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_serial_number();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string computer_name = 6 [deprecated = true];
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_computer_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OSReport os_report = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_os_report(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string os_user_name = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_os_user_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_device_identifier(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.PartialReportType partial_report_types = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+            CHK_(ptr);
+            if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PartialReportType_IsValid(val))) {
+              _internal_add_partial_report_types(static_cast<::enterprise_management::PartialReportType>(val));
+            } else {
+              ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(10, val, mutable_unknown_fields());
+            }
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<80>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedEnumParser(_internal_mutable_partial_report_types(), ptr, ctx, ::enterprise_management::PartialReportType_IsValid, &_internal_metadata_, 10);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string machine_attestation_key = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          auto str = _internal_mutable_machine_attestation_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_model = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          auto str = _internal_mutable_device_model();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string brand_name = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          auto str = _internal_mutable_brand_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeDesktopReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeDesktopReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string machine_name = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_machine_name(), target);
+  }
+
+  // optional string os_info = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_os_info(), target);
+  }
+
+  // optional string os_user = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_os_user(), target);
+  }
+
+  // optional .enterprise_management.BrowserReport browser_report = 4;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::browser_report(this), target, stream);
+  }
+
+  // optional string serial_number = 5 [deprecated = true];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_serial_number(), target);
+  }
+
+  // optional string computer_name = 6 [deprecated = true];
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_computer_name(), target);
+  }
+
+  // optional .enterprise_management.OSReport os_report = 7;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        7, _Internal::os_report(this), target, stream);
+  }
+
+  // optional string os_user_name = 8;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->WriteStringMaybeAliased(
+        8, this->_internal_os_user_name(), target);
+  }
+
+  // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 9;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        9, _Internal::browser_device_identifier(this), target, stream);
+  }
+
+  // repeated .enterprise_management.PartialReportType partial_report_types = 10;
+  for (int i = 0, n = this->_internal_partial_report_types_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+        10, this->_internal_partial_report_types(i), target);
+  }
+
+  // optional string machine_attestation_key = 11;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->WriteStringMaybeAliased(
+        11, this->_internal_machine_attestation_key(), target);
+  }
+
+  // optional string device_model = 12;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->WriteStringMaybeAliased(
+        12, this->_internal_device_model(), target);
+  }
+
+  // optional string brand_name = 13;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->WriteStringMaybeAliased(
+        13, this->_internal_brand_name(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeDesktopReportRequest)
+  return target;
+}
+
+size_t ChromeDesktopReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeDesktopReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.PartialReportType partial_report_types = 10;
+  {
+    size_t data_size = 0;
+    unsigned int count = static_cast<unsigned int>(this->_internal_partial_report_types_size());for (unsigned int i = 0; i < count; i++) {
+      data_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(
+        this->_internal_partial_report_types(static_cast<int>(i)));
+    }
+    total_size += (1UL * count) + data_size;
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string machine_name = 1 [deprecated = true];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_machine_name());
+    }
+
+    // optional string os_info = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_os_info());
+    }
+
+    // optional string os_user = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_os_user());
+    }
+
+    // optional string serial_number = 5 [deprecated = true];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_serial_number());
+    }
+
+    // optional string computer_name = 6 [deprecated = true];
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_computer_name());
+    }
+
+    // optional string os_user_name = 8;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_os_user_name());
+    }
+
+    // optional string machine_attestation_key = 11;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_machine_attestation_key());
+    }
+
+    // optional string device_model = 12;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_model());
+    }
+
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    // optional string brand_name = 13;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_brand_name());
+    }
+
+    // optional .enterprise_management.BrowserReport browser_report = 4;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *browser_report_);
+    }
+
+    // optional .enterprise_management.OSReport os_report = 7;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *os_report_);
+    }
+
+    // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 9;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *browser_device_identifier_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeDesktopReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeDesktopReportRequest*>(
+      &from));
+}
+
+void ChromeDesktopReportRequest::MergeFrom(const ChromeDesktopReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeDesktopReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  partial_report_types_.MergeFrom(from.partial_report_types_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      machine_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      os_info_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_info_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      os_user_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_user_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      serial_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_number_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      computer_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.computer_name_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _has_bits_[0] |= 0x00000020u;
+      os_user_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_user_name_);
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _has_bits_[0] |= 0x00000040u;
+      machine_attestation_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_attestation_key_);
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _has_bits_[0] |= 0x00000080u;
+      device_model_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_model_);
+    }
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _has_bits_[0] |= 0x00000100u;
+      brand_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_name_);
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_browser_report()->::enterprise_management::BrowserReport::MergeFrom(from._internal_browser_report());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_os_report()->::enterprise_management::OSReport::MergeFrom(from._internal_os_report());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_browser_device_identifier()->::enterprise_management::BrowserDeviceIdentifier::MergeFrom(from._internal_browser_device_identifier());
+    }
+  }
+}
+
+void ChromeDesktopReportRequest::CopyFrom(const ChromeDesktopReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeDesktopReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeDesktopReportRequest::IsInitialized() const {
+  return true;
+}
+
+void ChromeDesktopReportRequest::InternalSwap(ChromeDesktopReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  partial_report_types_.InternalSwap(&other->partial_report_types_);
+  machine_name_.Swap(&other->machine_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  os_info_.Swap(&other->os_info_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  os_user_.Swap(&other->os_user_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  serial_number_.Swap(&other->serial_number_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  computer_name_.Swap(&other->computer_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  os_user_name_.Swap(&other->os_user_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  machine_attestation_key_.Swap(&other->machine_attestation_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_model_.Swap(&other->device_model_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  brand_name_.Swap(&other->brand_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(browser_report_, other->browser_report_);
+  swap(os_report_, other->os_report_);
+  swap(browser_device_identifier_, other->browser_device_identifier_);
+}
+
+std::string ChromeDesktopReportRequest::GetTypeName() const {
+  return "enterprise_management.ChromeDesktopReportRequest";
+}
+
+
+// ===================================================================
+
+void ChromeOsUserReportRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_ChromeOsUserReportRequest_default_instance_._instance.get_mutable()->browser_report_ = const_cast< ::enterprise_management::BrowserReport*>(
+      ::enterprise_management::BrowserReport::internal_default_instance());
+}
+class ChromeOsUserReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeOsUserReportRequest>()._has_bits_);
+  static const ::enterprise_management::BrowserReport& browser_report(const ChromeOsUserReportRequest* msg);
+  static void set_has_browser_report(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::BrowserReport&
+ChromeOsUserReportRequest::_Internal::browser_report(const ChromeOsUserReportRequest* msg) {
+  return *msg->browser_report_;
+}
+ChromeOsUserReportRequest::ChromeOsUserReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeOsUserReportRequest)
+}
+ChromeOsUserReportRequest::ChromeOsUserReportRequest(const ChromeOsUserReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      android_app_infos_(from.android_app_infos_),
+      partial_report_types_(from.partial_report_types_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_browser_report()) {
+    browser_report_ = new ::enterprise_management::BrowserReport(*from.browser_report_);
+  } else {
+    browser_report_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeOsUserReportRequest)
+}
+
+void ChromeOsUserReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChromeOsUserReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  browser_report_ = nullptr;
+}
+
+ChromeOsUserReportRequest::~ChromeOsUserReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeOsUserReportRequest)
+  SharedDtor();
+}
+
+void ChromeOsUserReportRequest::SharedDtor() {
+  if (this != internal_default_instance()) delete browser_report_;
+}
+
+void ChromeOsUserReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeOsUserReportRequest& ChromeOsUserReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeOsUserReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeOsUserReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeOsUserReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  android_app_infos_.Clear();
+  partial_report_types_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(browser_report_ != nullptr);
+    browser_report_->Clear();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeOsUserReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.BrowserReport browser_report = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_report(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.AndroidAppInfo android_app_infos = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_android_app_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.PartialReportType partial_report_types = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+            CHK_(ptr);
+            if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PartialReportType_IsValid(val))) {
+              _internal_add_partial_report_types(static_cast<::enterprise_management::PartialReportType>(val));
+            } else {
+              ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+            }
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<24>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedEnumParser(_internal_mutable_partial_report_types(), ptr, ctx, ::enterprise_management::PartialReportType_IsValid, &_internal_metadata_, 3);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeOsUserReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeOsUserReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.BrowserReport browser_report = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::browser_report(this), target, stream);
+  }
+
+  // repeated .enterprise_management.AndroidAppInfo android_app_infos = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_android_app_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_android_app_infos(i), target, stream);
+  }
+
+  // repeated .enterprise_management.PartialReportType partial_report_types = 3;
+  for (int i = 0, n = this->_internal_partial_report_types_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+        3, this->_internal_partial_report_types(i), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeOsUserReportRequest)
+  return target;
+}
+
+size_t ChromeOsUserReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeOsUserReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.AndroidAppInfo android_app_infos = 2;
+  total_size += 1UL * this->_internal_android_app_infos_size();
+  for (const auto& msg : this->android_app_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.PartialReportType partial_report_types = 3;
+  {
+    size_t data_size = 0;
+    unsigned int count = static_cast<unsigned int>(this->_internal_partial_report_types_size());for (unsigned int i = 0; i < count; i++) {
+      data_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(
+        this->_internal_partial_report_types(static_cast<int>(i)));
+    }
+    total_size += (1UL * count) + data_size;
+  }
+
+  // optional .enterprise_management.BrowserReport browser_report = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *browser_report_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeOsUserReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeOsUserReportRequest*>(
+      &from));
+}
+
+void ChromeOsUserReportRequest::MergeFrom(const ChromeOsUserReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeOsUserReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  android_app_infos_.MergeFrom(from.android_app_infos_);
+  partial_report_types_.MergeFrom(from.partial_report_types_);
+  if (from._internal_has_browser_report()) {
+    _internal_mutable_browser_report()->::enterprise_management::BrowserReport::MergeFrom(from._internal_browser_report());
+  }
+}
+
+void ChromeOsUserReportRequest::CopyFrom(const ChromeOsUserReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeOsUserReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeOsUserReportRequest::IsInitialized() const {
+  return true;
+}
+
+void ChromeOsUserReportRequest::InternalSwap(ChromeOsUserReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  android_app_infos_.InternalSwap(&other->android_app_infos_);
+  partial_report_types_.InternalSwap(&other->partial_report_types_);
+  swap(browser_report_, other->browser_report_);
+}
+
+std::string ChromeOsUserReportRequest::GetTypeName() const {
+  return "enterprise_management.ChromeOsUserReportRequest";
+}
+
+
+// ===================================================================
+
+void ChromeProfileReportRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_ChromeProfileReportRequest_default_instance_._instance.get_mutable()->browser_report_ = const_cast< ::enterprise_management::BrowserReport*>(
+      ::enterprise_management::BrowserReport::internal_default_instance());
+  ::enterprise_management::_ChromeProfileReportRequest_default_instance_._instance.get_mutable()->os_report_ = const_cast< ::enterprise_management::OSReport*>(
+      ::enterprise_management::OSReport::internal_default_instance());
+}
+class ChromeProfileReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeProfileReportRequest>()._has_bits_);
+  static const ::enterprise_management::BrowserReport& browser_report(const ChromeProfileReportRequest* msg);
+  static void set_has_browser_report(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::OSReport& os_report(const ChromeProfileReportRequest* msg);
+  static void set_has_os_report(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::BrowserReport&
+ChromeProfileReportRequest::_Internal::browser_report(const ChromeProfileReportRequest* msg) {
+  return *msg->browser_report_;
+}
+const ::enterprise_management::OSReport&
+ChromeProfileReportRequest::_Internal::os_report(const ChromeProfileReportRequest* msg) {
+  return *msg->os_report_;
+}
+ChromeProfileReportRequest::ChromeProfileReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeProfileReportRequest)
+}
+ChromeProfileReportRequest::ChromeProfileReportRequest(const ChromeProfileReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_browser_report()) {
+    browser_report_ = new ::enterprise_management::BrowserReport(*from.browser_report_);
+  } else {
+    browser_report_ = nullptr;
+  }
+  if (from._internal_has_os_report()) {
+    os_report_ = new ::enterprise_management::OSReport(*from.os_report_);
+  } else {
+    os_report_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeProfileReportRequest)
+}
+
+void ChromeProfileReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChromeProfileReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&browser_report_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&os_report_) -
+      reinterpret_cast<char*>(&browser_report_)) + sizeof(os_report_));
+}
+
+ChromeProfileReportRequest::~ChromeProfileReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeProfileReportRequest)
+  SharedDtor();
+}
+
+void ChromeProfileReportRequest::SharedDtor() {
+  if (this != internal_default_instance()) delete browser_report_;
+  if (this != internal_default_instance()) delete os_report_;
+}
+
+void ChromeProfileReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeProfileReportRequest& ChromeProfileReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeProfileReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeProfileReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeProfileReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(browser_report_ != nullptr);
+      browser_report_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(os_report_ != nullptr);
+      os_report_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeProfileReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.BrowserReport browser_report = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_report(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.OSReport os_report = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_os_report(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeProfileReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeProfileReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.BrowserReport browser_report = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::browser_report(this), target, stream);
+  }
+
+  // optional .enterprise_management.OSReport os_report = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::os_report(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeProfileReportRequest)
+  return target;
+}
+
+size_t ChromeProfileReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeProfileReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.BrowserReport browser_report = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *browser_report_);
+    }
+
+    // optional .enterprise_management.OSReport os_report = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *os_report_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeProfileReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeProfileReportRequest*>(
+      &from));
+}
+
+void ChromeProfileReportRequest::MergeFrom(const ChromeProfileReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeProfileReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_browser_report()->::enterprise_management::BrowserReport::MergeFrom(from._internal_browser_report());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_os_report()->::enterprise_management::OSReport::MergeFrom(from._internal_os_report());
+    }
+  }
+}
+
+void ChromeProfileReportRequest::CopyFrom(const ChromeProfileReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeProfileReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeProfileReportRequest::IsInitialized() const {
+  return true;
+}
+
+void ChromeProfileReportRequest::InternalSwap(ChromeProfileReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(browser_report_, other->browser_report_);
+  swap(os_report_, other->os_report_);
+}
+
+std::string ChromeProfileReportRequest::GetTypeName() const {
+  return "enterprise_management.ChromeProfileReportRequest";
+}
+
+
+// ===================================================================
+
+void PolicyValueValidationIssue::InitAsDefaultInstance() {
+}
+class PolicyValueValidationIssue::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PolicyValueValidationIssue>()._has_bits_);
+  static void set_has_policy_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_severity(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_debug_message(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+PolicyValueValidationIssue::PolicyValueValidationIssue()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PolicyValueValidationIssue)
+}
+PolicyValueValidationIssue::PolicyValueValidationIssue(const PolicyValueValidationIssue& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  policy_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_name()) {
+    policy_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_name_);
+  }
+  debug_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_debug_message()) {
+    debug_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.debug_message_);
+  }
+  severity_ = from.severity_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PolicyValueValidationIssue)
+}
+
+void PolicyValueValidationIssue::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PolicyValueValidationIssue_device_5fmanagement_5fbackend_2eproto.base);
+  policy_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  debug_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  severity_ = 0;
+}
+
+PolicyValueValidationIssue::~PolicyValueValidationIssue() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PolicyValueValidationIssue)
+  SharedDtor();
+}
+
+void PolicyValueValidationIssue::SharedDtor() {
+  policy_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  debug_message_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PolicyValueValidationIssue::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PolicyValueValidationIssue& PolicyValueValidationIssue::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PolicyValueValidationIssue_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PolicyValueValidationIssue::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PolicyValueValidationIssue)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      policy_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      debug_message_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  severity_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PolicyValueValidationIssue::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string policy_name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_policy_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyValueValidationIssue.ValueValidationIssueSeverity severity = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity_IsValid(val))) {
+            _internal_set_severity(static_cast<::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string debug_message = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_debug_message();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PolicyValueValidationIssue::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PolicyValueValidationIssue)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string policy_name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_policy_name(), target);
+  }
+
+  // optional .enterprise_management.PolicyValueValidationIssue.ValueValidationIssueSeverity severity = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_severity(), target);
+  }
+
+  // optional string debug_message = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_debug_message(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PolicyValueValidationIssue)
+  return target;
+}
+
+size_t PolicyValueValidationIssue::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PolicyValueValidationIssue)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string policy_name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_name());
+    }
+
+    // optional string debug_message = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_debug_message());
+    }
+
+    // optional .enterprise_management.PolicyValueValidationIssue.ValueValidationIssueSeverity severity = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_severity());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PolicyValueValidationIssue::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PolicyValueValidationIssue*>(
+      &from));
+}
+
+void PolicyValueValidationIssue::MergeFrom(const PolicyValueValidationIssue& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PolicyValueValidationIssue)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      policy_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      debug_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.debug_message_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      severity_ = from.severity_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PolicyValueValidationIssue::CopyFrom(const PolicyValueValidationIssue& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PolicyValueValidationIssue)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PolicyValueValidationIssue::IsInitialized() const {
+  return true;
+}
+
+void PolicyValueValidationIssue::InternalSwap(PolicyValueValidationIssue* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  policy_name_.Swap(&other->policy_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  debug_message_.Swap(&other->debug_message_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(severity_, other->severity_);
+}
+
+std::string PolicyValueValidationIssue::GetTypeName() const {
+  return "enterprise_management.PolicyValueValidationIssue";
+}
+
+
+// ===================================================================
+
+void PolicyValidationReportRequest::InitAsDefaultInstance() {
+}
+class PolicyValidationReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PolicyValidationReportRequest>()._has_bits_);
+  static void set_has_policy_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_policy_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_validation_result_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+PolicyValidationReportRequest::PolicyValidationReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PolicyValidationReportRequest)
+}
+PolicyValidationReportRequest::PolicyValidationReportRequest(const PolicyValidationReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      policy_value_validation_issues_(from.policy_value_validation_issues_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  policy_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_type()) {
+    policy_type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_type_);
+  }
+  policy_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_token()) {
+    policy_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_token_);
+  }
+  validation_result_type_ = from.validation_result_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PolicyValidationReportRequest)
+}
+
+void PolicyValidationReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PolicyValidationReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  policy_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  validation_result_type_ = 0;
+}
+
+PolicyValidationReportRequest::~PolicyValidationReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PolicyValidationReportRequest)
+  SharedDtor();
+}
+
+void PolicyValidationReportRequest::SharedDtor() {
+  policy_type_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PolicyValidationReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PolicyValidationReportRequest& PolicyValidationReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PolicyValidationReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PolicyValidationReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PolicyValidationReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  policy_value_validation_issues_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      policy_type_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      policy_token_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  validation_result_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PolicyValidationReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string policy_type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_policy_type();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string policy_token = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_policy_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyValidationReportRequest.ValidationResultType validation_result_type = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyValidationReportRequest_ValidationResultType_IsValid(val))) {
+            _internal_set_validation_result_type(static_cast<::enterprise_management::PolicyValidationReportRequest_ValidationResultType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.PolicyValueValidationIssue policy_value_validation_issues = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_policy_value_validation_issues(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PolicyValidationReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PolicyValidationReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string policy_type = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_policy_type(), target);
+  }
+
+  // optional string policy_token = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_policy_token(), target);
+  }
+
+  // optional .enterprise_management.PolicyValidationReportRequest.ValidationResultType validation_result_type = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_validation_result_type(), target);
+  }
+
+  // repeated .enterprise_management.PolicyValueValidationIssue policy_value_validation_issues = 4;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_policy_value_validation_issues_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(4, this->_internal_policy_value_validation_issues(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PolicyValidationReportRequest)
+  return target;
+}
+
+size_t PolicyValidationReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PolicyValidationReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.PolicyValueValidationIssue policy_value_validation_issues = 4;
+  total_size += 1UL * this->_internal_policy_value_validation_issues_size();
+  for (const auto& msg : this->policy_value_validation_issues_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string policy_type = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_type());
+    }
+
+    // optional string policy_token = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_policy_token());
+    }
+
+    // optional .enterprise_management.PolicyValidationReportRequest.ValidationResultType validation_result_type = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_validation_result_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PolicyValidationReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PolicyValidationReportRequest*>(
+      &from));
+}
+
+void PolicyValidationReportRequest::MergeFrom(const PolicyValidationReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PolicyValidationReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  policy_value_validation_issues_.MergeFrom(from.policy_value_validation_issues_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      policy_type_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_type_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      policy_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_token_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      validation_result_type_ = from.validation_result_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PolicyValidationReportRequest::CopyFrom(const PolicyValidationReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PolicyValidationReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PolicyValidationReportRequest::IsInitialized() const {
+  return true;
+}
+
+void PolicyValidationReportRequest::InternalSwap(PolicyValidationReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  policy_value_validation_issues_.InternalSwap(&other->policy_value_validation_issues_);
+  policy_type_.Swap(&other->policy_type_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_token_.Swap(&other->policy_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(validation_result_type_, other->validation_result_type_);
+}
+
+std::string PolicyValidationReportRequest::GetTypeName() const {
+  return "enterprise_management.PolicyValidationReportRequest";
+}
+
+
+// ===================================================================
+
+void PolicyValidationReportResponse::InitAsDefaultInstance() {
+}
+class PolicyValidationReportResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PolicyValidationReportResponse>()._has_bits_);
+};
+
+PolicyValidationReportResponse::PolicyValidationReportResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PolicyValidationReportResponse)
+}
+PolicyValidationReportResponse::PolicyValidationReportResponse(const PolicyValidationReportResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PolicyValidationReportResponse)
+}
+
+void PolicyValidationReportResponse::SharedCtor() {
+}
+
+PolicyValidationReportResponse::~PolicyValidationReportResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PolicyValidationReportResponse)
+  SharedDtor();
+}
+
+void PolicyValidationReportResponse::SharedDtor() {
+}
+
+void PolicyValidationReportResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PolicyValidationReportResponse& PolicyValidationReportResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PolicyValidationReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PolicyValidationReportResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PolicyValidationReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PolicyValidationReportResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PolicyValidationReportResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PolicyValidationReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PolicyValidationReportResponse)
+  return target;
+}
+
+size_t PolicyValidationReportResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PolicyValidationReportResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PolicyValidationReportResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PolicyValidationReportResponse*>(
+      &from));
+}
+
+void PolicyValidationReportResponse::MergeFrom(const PolicyValidationReportResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PolicyValidationReportResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void PolicyValidationReportResponse::CopyFrom(const PolicyValidationReportResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PolicyValidationReportResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PolicyValidationReportResponse::IsInitialized() const {
+  return true;
+}
+
+void PolicyValidationReportResponse::InternalSwap(PolicyValidationReportResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string PolicyValidationReportResponse::GetTypeName() const {
+  return "enterprise_management.PolicyValidationReportResponse";
+}
+
+
+// ===================================================================
+
+void AndroidStatus::InitAsDefaultInstance() {
+}
+class AndroidStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AndroidStatus>()._has_bits_);
+  static void set_has_status_payload(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_droid_guard_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+AndroidStatus::AndroidStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AndroidStatus)
+}
+AndroidStatus::AndroidStatus(const AndroidStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  status_payload_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_status_payload()) {
+    status_payload_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.status_payload_);
+  }
+  droid_guard_info_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_droid_guard_info()) {
+    droid_guard_info_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.droid_guard_info_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AndroidStatus)
+}
+
+void AndroidStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AndroidStatus_device_5fmanagement_5fbackend_2eproto.base);
+  status_payload_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  droid_guard_info_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+AndroidStatus::~AndroidStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AndroidStatus)
+  SharedDtor();
+}
+
+void AndroidStatus::SharedDtor() {
+  status_payload_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  droid_guard_info_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AndroidStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AndroidStatus& AndroidStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AndroidStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AndroidStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AndroidStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      status_payload_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      droid_guard_info_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AndroidStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string status_payload = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_status_payload();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string droid_guard_info = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_droid_guard_info();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AndroidStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AndroidStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string status_payload = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_status_payload(), target);
+  }
+
+  // optional string droid_guard_info = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_droid_guard_info(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AndroidStatus)
+  return target;
+}
+
+size_t AndroidStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AndroidStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string status_payload = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_status_payload());
+    }
+
+    // optional string droid_guard_info = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_droid_guard_info());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AndroidStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AndroidStatus*>(
+      &from));
+}
+
+void AndroidStatus::MergeFrom(const AndroidStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AndroidStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      status_payload_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.status_payload_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      droid_guard_info_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.droid_guard_info_);
+    }
+  }
+}
+
+void AndroidStatus::CopyFrom(const AndroidStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AndroidStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AndroidStatus::IsInitialized() const {
+  return true;
+}
+
+void AndroidStatus::InternalSwap(AndroidStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  status_payload_.Swap(&other->status_payload_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  droid_guard_info_.Swap(&other->droid_guard_info_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string AndroidStatus::GetTypeName() const {
+  return "enterprise_management.AndroidStatus";
+}
+
+
+// ===================================================================
+
+void CrostiniApp::InitAsDefaultInstance() {
+}
+class CrostiniApp::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CrostiniApp>()._has_bits_);
+  static void set_has_app_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_app_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_last_launch_time_window_start_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_package_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_package_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_package_hash(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+CrostiniApp::CrostiniApp()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CrostiniApp)
+}
+CrostiniApp::CrostiniApp(const CrostiniApp& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  app_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_name()) {
+    app_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_name_);
+  }
+  package_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_package_name()) {
+    package_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_name_);
+  }
+  package_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_package_version()) {
+    package_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_version_);
+  }
+  package_hash_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_package_hash()) {
+    package_hash_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_hash_);
+  }
+  ::memcpy(&last_launch_time_window_start_timestamp_, &from.last_launch_time_window_start_timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&app_type_) -
+    reinterpret_cast<char*>(&last_launch_time_window_start_timestamp_)) + sizeof(app_type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CrostiniApp)
+}
+
+void CrostiniApp::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CrostiniApp_device_5fmanagement_5fbackend_2eproto.base);
+  app_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  package_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  package_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  package_hash_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&last_launch_time_window_start_timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&app_type_) -
+      reinterpret_cast<char*>(&last_launch_time_window_start_timestamp_)) + sizeof(app_type_));
+}
+
+CrostiniApp::~CrostiniApp() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CrostiniApp)
+  SharedDtor();
+}
+
+void CrostiniApp::SharedDtor() {
+  app_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  package_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  package_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  package_hash_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CrostiniApp::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CrostiniApp& CrostiniApp::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CrostiniApp_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CrostiniApp::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CrostiniApp)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      app_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      package_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      package_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      package_hash_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000030u) {
+    ::memset(&last_launch_time_window_start_timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&app_type_) -
+        reinterpret_cast<char*>(&last_launch_time_window_start_timestamp_)) + sizeof(app_type_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CrostiniApp::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string app_name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_app_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CrostiniAppType app_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::CrostiniAppType_IsValid(val))) {
+            _internal_set_app_type(static_cast<::enterprise_management::CrostiniAppType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int64 last_launch_time_window_start_timestamp = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_last_launch_time_window_start_timestamp(&has_bits);
+          last_launch_time_window_start_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string package_name = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_package_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string package_version = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_package_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string package_hash = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_package_hash();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CrostiniApp::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CrostiniApp)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string app_name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_app_name(), target);
+  }
+
+  // optional .enterprise_management.CrostiniAppType app_type = 2;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_app_type(), target);
+  }
+
+  // optional int64 last_launch_time_window_start_timestamp = 3;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_last_launch_time_window_start_timestamp(), target);
+  }
+
+  // optional string package_name = 4;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_package_name(), target);
+  }
+
+  // optional string package_version = 5;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_package_version(), target);
+  }
+
+  // optional string package_hash = 6;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_package_hash(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CrostiniApp)
+  return target;
+}
+
+size_t CrostiniApp::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CrostiniApp)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string app_name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_name());
+    }
+
+    // optional string package_name = 4;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_package_name());
+    }
+
+    // optional string package_version = 5;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_package_version());
+    }
+
+    // optional string package_hash = 6;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_package_hash());
+    }
+
+    // optional int64 last_launch_time_window_start_timestamp = 3;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_launch_time_window_start_timestamp());
+    }
+
+    // optional .enterprise_management.CrostiniAppType app_type = 2;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_app_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CrostiniApp::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CrostiniApp*>(
+      &from));
+}
+
+void CrostiniApp::MergeFrom(const CrostiniApp& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CrostiniApp)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      app_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      package_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      package_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_version_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      package_hash_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_hash_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      last_launch_time_window_start_timestamp_ = from.last_launch_time_window_start_timestamp_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      app_type_ = from.app_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CrostiniApp::CopyFrom(const CrostiniApp& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CrostiniApp)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CrostiniApp::IsInitialized() const {
+  return true;
+}
+
+void CrostiniApp::InternalSwap(CrostiniApp* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  app_name_.Swap(&other->app_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  package_name_.Swap(&other->package_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  package_version_.Swap(&other->package_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  package_hash_.Swap(&other->package_hash_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(last_launch_time_window_start_timestamp_, other->last_launch_time_window_start_timestamp_);
+  swap(app_type_, other->app_type_);
+}
+
+std::string CrostiniApp::GetTypeName() const {
+  return "enterprise_management.CrostiniApp";
+}
+
+
+// ===================================================================
+
+void CrostiniStatus::InitAsDefaultInstance() {
+}
+class CrostiniStatus::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CrostiniStatus>()._has_bits_);
+  static void set_has_last_launch_time_window_start_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_last_launch_vm_image_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_last_launch_vm_kernel_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+CrostiniStatus::CrostiniStatus()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CrostiniStatus)
+}
+CrostiniStatus::CrostiniStatus(const CrostiniStatus& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      installed_apps_(from.installed_apps_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  last_launch_vm_image_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_last_launch_vm_image_version()) {
+    last_launch_vm_image_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.last_launch_vm_image_version_);
+  }
+  last_launch_vm_kernel_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_last_launch_vm_kernel_version()) {
+    last_launch_vm_kernel_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.last_launch_vm_kernel_version_);
+  }
+  last_launch_time_window_start_timestamp_ = from.last_launch_time_window_start_timestamp_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CrostiniStatus)
+}
+
+void CrostiniStatus::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CrostiniStatus_device_5fmanagement_5fbackend_2eproto.base);
+  last_launch_vm_image_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  last_launch_vm_kernel_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  last_launch_time_window_start_timestamp_ = PROTOBUF_LONGLONG(0);
+}
+
+CrostiniStatus::~CrostiniStatus() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CrostiniStatus)
+  SharedDtor();
+}
+
+void CrostiniStatus::SharedDtor() {
+  last_launch_vm_image_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  last_launch_vm_kernel_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CrostiniStatus::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CrostiniStatus& CrostiniStatus::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CrostiniStatus_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CrostiniStatus::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CrostiniStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  installed_apps_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      last_launch_vm_image_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      last_launch_vm_kernel_version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  last_launch_time_window_start_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CrostiniStatus::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 last_launch_time_window_start_timestamp = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_last_launch_time_window_start_timestamp(&has_bits);
+          last_launch_time_window_start_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string last_launch_vm_image_version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_last_launch_vm_image_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string last_launch_vm_kernel_version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_last_launch_vm_kernel_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.CrostiniApp installed_apps = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_installed_apps(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CrostiniStatus::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CrostiniStatus)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 last_launch_time_window_start_timestamp = 1;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_last_launch_time_window_start_timestamp(), target);
+  }
+
+  // optional string last_launch_vm_image_version = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_last_launch_vm_image_version(), target);
+  }
+
+  // optional string last_launch_vm_kernel_version = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_last_launch_vm_kernel_version(), target);
+  }
+
+  // repeated .enterprise_management.CrostiniApp installed_apps = 4;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_installed_apps_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(4, this->_internal_installed_apps(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CrostiniStatus)
+  return target;
+}
+
+size_t CrostiniStatus::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CrostiniStatus)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.CrostiniApp installed_apps = 4;
+  total_size += 1UL * this->_internal_installed_apps_size();
+  for (const auto& msg : this->installed_apps_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string last_launch_vm_image_version = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_last_launch_vm_image_version());
+    }
+
+    // optional string last_launch_vm_kernel_version = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_last_launch_vm_kernel_version());
+    }
+
+    // optional int64 last_launch_time_window_start_timestamp = 1;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_launch_time_window_start_timestamp());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CrostiniStatus::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CrostiniStatus*>(
+      &from));
+}
+
+void CrostiniStatus::MergeFrom(const CrostiniStatus& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CrostiniStatus)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  installed_apps_.MergeFrom(from.installed_apps_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      last_launch_vm_image_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.last_launch_vm_image_version_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      last_launch_vm_kernel_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.last_launch_vm_kernel_version_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      last_launch_time_window_start_timestamp_ = from.last_launch_time_window_start_timestamp_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CrostiniStatus::CopyFrom(const CrostiniStatus& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CrostiniStatus)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CrostiniStatus::IsInitialized() const {
+  return true;
+}
+
+void CrostiniStatus::InternalSwap(CrostiniStatus* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  installed_apps_.InternalSwap(&other->installed_apps_);
+  last_launch_vm_image_version_.Swap(&other->last_launch_vm_image_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  last_launch_vm_kernel_version_.Swap(&other->last_launch_vm_kernel_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(last_launch_time_window_start_timestamp_, other->last_launch_time_window_start_timestamp_);
+}
+
+std::string CrostiniStatus::GetTypeName() const {
+  return "enterprise_management.CrostiniStatus";
+}
+
+
+// ===================================================================
+
+void SessionStatusReportRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_SessionStatusReportRequest_default_instance_._instance.get_mutable()->android_status_ = const_cast< ::enterprise_management::AndroidStatus*>(
+      ::enterprise_management::AndroidStatus::internal_default_instance());
+  ::enterprise_management::_SessionStatusReportRequest_default_instance_._instance.get_mutable()->crostini_status_ = const_cast< ::enterprise_management::CrostiniStatus*>(
+      ::enterprise_management::CrostiniStatus::internal_default_instance());
+}
+class SessionStatusReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SessionStatusReportRequest>()._has_bits_);
+  static void set_has_device_local_account_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::AndroidStatus& android_status(const SessionStatusReportRequest* msg);
+  static void set_has_android_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_user_dm_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_time_zone(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::CrostiniStatus& crostini_status(const SessionStatusReportRequest* msg);
+  static void set_has_crostini_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+const ::enterprise_management::AndroidStatus&
+SessionStatusReportRequest::_Internal::android_status(const SessionStatusReportRequest* msg) {
+  return *msg->android_status_;
+}
+const ::enterprise_management::CrostiniStatus&
+SessionStatusReportRequest::_Internal::crostini_status(const SessionStatusReportRequest* msg) {
+  return *msg->crostini_status_;
+}
+SessionStatusReportRequest::SessionStatusReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SessionStatusReportRequest)
+}
+SessionStatusReportRequest::SessionStatusReportRequest(const SessionStatusReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      installed_apps_(from.installed_apps_),
+      app_infos_(from.app_infos_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_local_account_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_local_account_id()) {
+    device_local_account_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_local_account_id_);
+  }
+  user_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_user_dm_token()) {
+    user_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_dm_token_);
+  }
+  time_zone_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_time_zone()) {
+    time_zone_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.time_zone_);
+  }
+  if (from._internal_has_android_status()) {
+    android_status_ = new ::enterprise_management::AndroidStatus(*from.android_status_);
+  } else {
+    android_status_ = nullptr;
+  }
+  if (from._internal_has_crostini_status()) {
+    crostini_status_ = new ::enterprise_management::CrostiniStatus(*from.crostini_status_);
+  } else {
+    crostini_status_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SessionStatusReportRequest)
+}
+
+void SessionStatusReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SessionStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  device_local_account_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  user_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  time_zone_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&android_status_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&crostini_status_) -
+      reinterpret_cast<char*>(&android_status_)) + sizeof(crostini_status_));
+}
+
+SessionStatusReportRequest::~SessionStatusReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SessionStatusReportRequest)
+  SharedDtor();
+}
+
+void SessionStatusReportRequest::SharedDtor() {
+  device_local_account_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  user_dm_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  time_zone_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete android_status_;
+  if (this != internal_default_instance()) delete crostini_status_;
+}
+
+void SessionStatusReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SessionStatusReportRequest& SessionStatusReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SessionStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SessionStatusReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SessionStatusReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  installed_apps_.Clear();
+  app_infos_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      device_local_account_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      user_dm_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      time_zone_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(android_status_ != nullptr);
+      android_status_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(crostini_status_ != nullptr);
+      crostini_status_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SessionStatusReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_local_account_id = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_device_local_account_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.AppStatus installed_apps = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_installed_apps(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AndroidStatus android_status = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_android_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string user_dm_token = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_user_dm_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string time_zone = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          auto str = _internal_mutable_time_zone();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CrostiniStatus crostini_status = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr = ctx->ParseMessage(_internal_mutable_crostini_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.AppInfo app_infos = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_app_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<90>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SessionStatusReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SessionStatusReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_local_account_id = 4;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_device_local_account_id(), target);
+  }
+
+  // repeated .enterprise_management.AppStatus installed_apps = 5;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_installed_apps_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(5, this->_internal_installed_apps(i), target, stream);
+  }
+
+  // optional .enterprise_management.AndroidStatus android_status = 7;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        7, _Internal::android_status(this), target, stream);
+  }
+
+  // optional string user_dm_token = 8;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        8, this->_internal_user_dm_token(), target);
+  }
+
+  // optional string time_zone = 9;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        9, this->_internal_time_zone(), target);
+  }
+
+  // optional .enterprise_management.CrostiniStatus crostini_status = 10;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        10, _Internal::crostini_status(this), target, stream);
+  }
+
+  // repeated .enterprise_management.AppInfo app_infos = 11;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_app_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(11, this->_internal_app_infos(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SessionStatusReportRequest)
+  return target;
+}
+
+size_t SessionStatusReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SessionStatusReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.AppStatus installed_apps = 5;
+  total_size += 1UL * this->_internal_installed_apps_size();
+  for (const auto& msg : this->installed_apps_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.AppInfo app_infos = 11;
+  total_size += 1UL * this->_internal_app_infos_size();
+  for (const auto& msg : this->app_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string device_local_account_id = 4;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_local_account_id());
+    }
+
+    // optional string user_dm_token = 8;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_user_dm_token());
+    }
+
+    // optional string time_zone = 9;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_time_zone());
+    }
+
+    // optional .enterprise_management.AndroidStatus android_status = 7;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *android_status_);
+    }
+
+    // optional .enterprise_management.CrostiniStatus crostini_status = 10;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *crostini_status_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SessionStatusReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SessionStatusReportRequest*>(
+      &from));
+}
+
+void SessionStatusReportRequest::MergeFrom(const SessionStatusReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SessionStatusReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  installed_apps_.MergeFrom(from.installed_apps_);
+  app_infos_.MergeFrom(from.app_infos_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      device_local_account_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_local_account_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      user_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_dm_token_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      time_zone_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.time_zone_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_android_status()->::enterprise_management::AndroidStatus::MergeFrom(from._internal_android_status());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_crostini_status()->::enterprise_management::CrostiniStatus::MergeFrom(from._internal_crostini_status());
+    }
+  }
+}
+
+void SessionStatusReportRequest::CopyFrom(const SessionStatusReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SessionStatusReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SessionStatusReportRequest::IsInitialized() const {
+  return true;
+}
+
+void SessionStatusReportRequest::InternalSwap(SessionStatusReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  installed_apps_.InternalSwap(&other->installed_apps_);
+  app_infos_.InternalSwap(&other->app_infos_);
+  device_local_account_id_.Swap(&other->device_local_account_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  user_dm_token_.Swap(&other->user_dm_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  time_zone_.Swap(&other->time_zone_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(android_status_, other->android_status_);
+  swap(crostini_status_, other->crostini_status_);
+}
+
+std::string SessionStatusReportRequest::GetTypeName() const {
+  return "enterprise_management.SessionStatusReportRequest";
+}
+
+
+// ===================================================================
+
+void DeviceStatusReportResponse::InitAsDefaultInstance() {
+}
+class DeviceStatusReportResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceStatusReportResponse>()._has_bits_);
+  static void set_has_error_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_error_message(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceStatusReportResponse::DeviceStatusReportResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceStatusReportResponse)
+}
+DeviceStatusReportResponse::DeviceStatusReportResponse(const DeviceStatusReportResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_error_message()) {
+    error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+  }
+  error_code_ = from.error_code_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceStatusReportResponse)
+}
+
+void DeviceStatusReportResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  error_code_ = 0;
+}
+
+DeviceStatusReportResponse::~DeviceStatusReportResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceStatusReportResponse)
+  SharedDtor();
+}
+
+void DeviceStatusReportResponse::SharedDtor() {
+  error_message_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceStatusReportResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceStatusReportResponse& DeviceStatusReportResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceStatusReportResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceStatusReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    error_message_.ClearNonDefaultToEmptyNoArena();
+  }
+  error_code_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceStatusReportResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 error_code = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_error_code(&has_bits);
+          error_code_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string error_message = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_error_message();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceStatusReportResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceStatusReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 error_code = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_error_code(), target);
+  }
+
+  // optional string error_message = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_error_message(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceStatusReportResponse)
+  return target;
+}
+
+size_t DeviceStatusReportResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceStatusReportResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string error_message = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_error_message());
+    }
+
+    // optional int32 error_code = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_error_code());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceStatusReportResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceStatusReportResponse*>(
+      &from));
+}
+
+void DeviceStatusReportResponse::MergeFrom(const DeviceStatusReportResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceStatusReportResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      error_code_ = from.error_code_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceStatusReportResponse::CopyFrom(const DeviceStatusReportResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceStatusReportResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceStatusReportResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceStatusReportResponse::InternalSwap(DeviceStatusReportResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  error_message_.Swap(&other->error_message_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(error_code_, other->error_code_);
+}
+
+std::string DeviceStatusReportResponse::GetTypeName() const {
+  return "enterprise_management.DeviceStatusReportResponse";
+}
+
+
+// ===================================================================
+
+void ChromeDesktopReportResponse::InitAsDefaultInstance() {
+}
+class ChromeDesktopReportResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeDesktopReportResponse>()._has_bits_);
+};
+
+ChromeDesktopReportResponse::ChromeDesktopReportResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeDesktopReportResponse)
+}
+ChromeDesktopReportResponse::ChromeDesktopReportResponse(const ChromeDesktopReportResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeDesktopReportResponse)
+}
+
+void ChromeDesktopReportResponse::SharedCtor() {
+}
+
+ChromeDesktopReportResponse::~ChromeDesktopReportResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeDesktopReportResponse)
+  SharedDtor();
+}
+
+void ChromeDesktopReportResponse::SharedDtor() {
+}
+
+void ChromeDesktopReportResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeDesktopReportResponse& ChromeDesktopReportResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeDesktopReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeDesktopReportResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeDesktopReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeDesktopReportResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeDesktopReportResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeDesktopReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeDesktopReportResponse)
+  return target;
+}
+
+size_t ChromeDesktopReportResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeDesktopReportResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeDesktopReportResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeDesktopReportResponse*>(
+      &from));
+}
+
+void ChromeDesktopReportResponse::MergeFrom(const ChromeDesktopReportResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeDesktopReportResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void ChromeDesktopReportResponse::CopyFrom(const ChromeDesktopReportResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeDesktopReportResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeDesktopReportResponse::IsInitialized() const {
+  return true;
+}
+
+void ChromeDesktopReportResponse::InternalSwap(ChromeDesktopReportResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string ChromeDesktopReportResponse::GetTypeName() const {
+  return "enterprise_management.ChromeDesktopReportResponse";
+}
+
+
+// ===================================================================
+
+void ChromeOsUserReportResponse::InitAsDefaultInstance() {
+}
+class ChromeOsUserReportResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeOsUserReportResponse>()._has_bits_);
+};
+
+ChromeOsUserReportResponse::ChromeOsUserReportResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeOsUserReportResponse)
+}
+ChromeOsUserReportResponse::ChromeOsUserReportResponse(const ChromeOsUserReportResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeOsUserReportResponse)
+}
+
+void ChromeOsUserReportResponse::SharedCtor() {
+}
+
+ChromeOsUserReportResponse::~ChromeOsUserReportResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeOsUserReportResponse)
+  SharedDtor();
+}
+
+void ChromeOsUserReportResponse::SharedDtor() {
+}
+
+void ChromeOsUserReportResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeOsUserReportResponse& ChromeOsUserReportResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeOsUserReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeOsUserReportResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeOsUserReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeOsUserReportResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeOsUserReportResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeOsUserReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeOsUserReportResponse)
+  return target;
+}
+
+size_t ChromeOsUserReportResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeOsUserReportResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeOsUserReportResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeOsUserReportResponse*>(
+      &from));
+}
+
+void ChromeOsUserReportResponse::MergeFrom(const ChromeOsUserReportResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeOsUserReportResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void ChromeOsUserReportResponse::CopyFrom(const ChromeOsUserReportResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeOsUserReportResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeOsUserReportResponse::IsInitialized() const {
+  return true;
+}
+
+void ChromeOsUserReportResponse::InternalSwap(ChromeOsUserReportResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string ChromeOsUserReportResponse::GetTypeName() const {
+  return "enterprise_management.ChromeOsUserReportResponse";
+}
+
+
+// ===================================================================
+
+void ChromeProfileReportResponse::InitAsDefaultInstance() {
+}
+class ChromeProfileReportResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeProfileReportResponse>()._has_bits_);
+};
+
+ChromeProfileReportResponse::ChromeProfileReportResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChromeProfileReportResponse)
+}
+ChromeProfileReportResponse::ChromeProfileReportResponse(const ChromeProfileReportResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChromeProfileReportResponse)
+}
+
+void ChromeProfileReportResponse::SharedCtor() {
+}
+
+ChromeProfileReportResponse::~ChromeProfileReportResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChromeProfileReportResponse)
+  SharedDtor();
+}
+
+void ChromeProfileReportResponse::SharedDtor() {
+}
+
+void ChromeProfileReportResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeProfileReportResponse& ChromeProfileReportResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeProfileReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeProfileReportResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChromeProfileReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeProfileReportResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeProfileReportResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChromeProfileReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChromeProfileReportResponse)
+  return target;
+}
+
+size_t ChromeProfileReportResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChromeProfileReportResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeProfileReportResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeProfileReportResponse*>(
+      &from));
+}
+
+void ChromeProfileReportResponse::MergeFrom(const ChromeProfileReportResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChromeProfileReportResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void ChromeProfileReportResponse::CopyFrom(const ChromeProfileReportResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChromeProfileReportResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeProfileReportResponse::IsInitialized() const {
+  return true;
+}
+
+void ChromeProfileReportResponse::InternalSwap(ChromeProfileReportResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string ChromeProfileReportResponse::GetTypeName() const {
+  return "enterprise_management.ChromeProfileReportResponse";
+}
+
+
+// ===================================================================
+
+void SessionStatusReportResponse::InitAsDefaultInstance() {
+}
+class SessionStatusReportResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SessionStatusReportResponse>()._has_bits_);
+  static void set_has_error_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_error_message(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SessionStatusReportResponse::SessionStatusReportResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SessionStatusReportResponse)
+}
+SessionStatusReportResponse::SessionStatusReportResponse(const SessionStatusReportResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_error_message()) {
+    error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+  }
+  error_code_ = from.error_code_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SessionStatusReportResponse)
+}
+
+void SessionStatusReportResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SessionStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  error_code_ = 0;
+}
+
+SessionStatusReportResponse::~SessionStatusReportResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SessionStatusReportResponse)
+  SharedDtor();
+}
+
+void SessionStatusReportResponse::SharedDtor() {
+  error_message_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SessionStatusReportResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SessionStatusReportResponse& SessionStatusReportResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SessionStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SessionStatusReportResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SessionStatusReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    error_message_.ClearNonDefaultToEmptyNoArena();
+  }
+  error_code_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SessionStatusReportResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 error_code = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_error_code(&has_bits);
+          error_code_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string error_message = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_error_message();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SessionStatusReportResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SessionStatusReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 error_code = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_error_code(), target);
+  }
+
+  // optional string error_message = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_error_message(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SessionStatusReportResponse)
+  return target;
+}
+
+size_t SessionStatusReportResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SessionStatusReportResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string error_message = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_error_message());
+    }
+
+    // optional int32 error_code = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_error_code());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SessionStatusReportResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SessionStatusReportResponse*>(
+      &from));
+}
+
+void SessionStatusReportResponse::MergeFrom(const SessionStatusReportResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SessionStatusReportResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      error_code_ = from.error_code_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SessionStatusReportResponse::CopyFrom(const SessionStatusReportResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SessionStatusReportResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SessionStatusReportResponse::IsInitialized() const {
+  return true;
+}
+
+void SessionStatusReportResponse::InternalSwap(SessionStatusReportResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  error_message_.Swap(&other->error_message_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(error_code_, other->error_code_);
+}
+
+std::string SessionStatusReportResponse::GetTypeName() const {
+  return "enterprise_management.SessionStatusReportResponse";
+}
+
+
+// ===================================================================
+
+void PrivateSetMembershipRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_PrivateSetMembershipRequest_default_instance_._instance.get_mutable()->rlwe_request_ = const_cast< ::enterprise_management::PrivateSetMembershipRlweRequest*>(
+      ::enterprise_management::PrivateSetMembershipRlweRequest::internal_default_instance());
+}
+class PrivateSetMembershipRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrivateSetMembershipRequest>()._has_bits_);
+  static const ::enterprise_management::PrivateSetMembershipRlweRequest& rlwe_request(const PrivateSetMembershipRequest* msg);
+  static void set_has_rlwe_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::PrivateSetMembershipRlweRequest&
+PrivateSetMembershipRequest::_Internal::rlwe_request(const PrivateSetMembershipRequest* msg) {
+  return *msg->rlwe_request_;
+}
+PrivateSetMembershipRequest::PrivateSetMembershipRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrivateSetMembershipRequest)
+}
+PrivateSetMembershipRequest::PrivateSetMembershipRequest(const PrivateSetMembershipRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_rlwe_request()) {
+    rlwe_request_ = new ::enterprise_management::PrivateSetMembershipRlweRequest(*from.rlwe_request_);
+  } else {
+    rlwe_request_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrivateSetMembershipRequest)
+}
+
+void PrivateSetMembershipRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateSetMembershipRequest_device_5fmanagement_5fbackend_2eproto.base);
+  rlwe_request_ = nullptr;
+}
+
+PrivateSetMembershipRequest::~PrivateSetMembershipRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrivateSetMembershipRequest)
+  SharedDtor();
+}
+
+void PrivateSetMembershipRequest::SharedDtor() {
+  if (this != internal_default_instance()) delete rlwe_request_;
+}
+
+void PrivateSetMembershipRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateSetMembershipRequest& PrivateSetMembershipRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateSetMembershipRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateSetMembershipRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrivateSetMembershipRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(rlwe_request_ != nullptr);
+    rlwe_request_->Clear();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateSetMembershipRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PrivateSetMembershipRlweRequest rlwe_request = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_rlwe_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateSetMembershipRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrivateSetMembershipRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PrivateSetMembershipRlweRequest rlwe_request = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::rlwe_request(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrivateSetMembershipRequest)
+  return target;
+}
+
+size_t PrivateSetMembershipRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrivateSetMembershipRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.PrivateSetMembershipRlweRequest rlwe_request = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *rlwe_request_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateSetMembershipRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateSetMembershipRequest*>(
+      &from));
+}
+
+void PrivateSetMembershipRequest::MergeFrom(const PrivateSetMembershipRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrivateSetMembershipRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_rlwe_request()) {
+    _internal_mutable_rlwe_request()->::enterprise_management::PrivateSetMembershipRlweRequest::MergeFrom(from._internal_rlwe_request());
+  }
+}
+
+void PrivateSetMembershipRequest::CopyFrom(const PrivateSetMembershipRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrivateSetMembershipRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateSetMembershipRequest::IsInitialized() const {
+  return true;
+}
+
+void PrivateSetMembershipRequest::InternalSwap(PrivateSetMembershipRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(rlwe_request_, other->rlwe_request_);
+}
+
+std::string PrivateSetMembershipRequest::GetTypeName() const {
+  return "enterprise_management.PrivateSetMembershipRequest";
+}
+
+
+// ===================================================================
+
+void PrivateSetMembershipResponse::InitAsDefaultInstance() {
+  ::enterprise_management::_PrivateSetMembershipResponse_default_instance_._instance.get_mutable()->rlwe_response_ = const_cast< ::enterprise_management::PrivateSetMembershipRlweResponse*>(
+      ::enterprise_management::PrivateSetMembershipRlweResponse::internal_default_instance());
+}
+class PrivateSetMembershipResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrivateSetMembershipResponse>()._has_bits_);
+  static const ::enterprise_management::PrivateSetMembershipRlweResponse& rlwe_response(const PrivateSetMembershipResponse* msg);
+  static void set_has_rlwe_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::PrivateSetMembershipRlweResponse&
+PrivateSetMembershipResponse::_Internal::rlwe_response(const PrivateSetMembershipResponse* msg) {
+  return *msg->rlwe_response_;
+}
+PrivateSetMembershipResponse::PrivateSetMembershipResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrivateSetMembershipResponse)
+}
+PrivateSetMembershipResponse::PrivateSetMembershipResponse(const PrivateSetMembershipResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_rlwe_response()) {
+    rlwe_response_ = new ::enterprise_management::PrivateSetMembershipRlweResponse(*from.rlwe_response_);
+  } else {
+    rlwe_response_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrivateSetMembershipResponse)
+}
+
+void PrivateSetMembershipResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateSetMembershipResponse_device_5fmanagement_5fbackend_2eproto.base);
+  rlwe_response_ = nullptr;
+}
+
+PrivateSetMembershipResponse::~PrivateSetMembershipResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrivateSetMembershipResponse)
+  SharedDtor();
+}
+
+void PrivateSetMembershipResponse::SharedDtor() {
+  if (this != internal_default_instance()) delete rlwe_response_;
+}
+
+void PrivateSetMembershipResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateSetMembershipResponse& PrivateSetMembershipResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateSetMembershipResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateSetMembershipResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrivateSetMembershipResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(rlwe_response_ != nullptr);
+    rlwe_response_->Clear();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateSetMembershipResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PrivateSetMembershipRlweResponse rlwe_response = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_rlwe_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateSetMembershipResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrivateSetMembershipResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PrivateSetMembershipRlweResponse rlwe_response = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::rlwe_response(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrivateSetMembershipResponse)
+  return target;
+}
+
+size_t PrivateSetMembershipResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrivateSetMembershipResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.PrivateSetMembershipRlweResponse rlwe_response = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *rlwe_response_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateSetMembershipResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateSetMembershipResponse*>(
+      &from));
+}
+
+void PrivateSetMembershipResponse::MergeFrom(const PrivateSetMembershipResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrivateSetMembershipResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_rlwe_response()) {
+    _internal_mutable_rlwe_response()->::enterprise_management::PrivateSetMembershipRlweResponse::MergeFrom(from._internal_rlwe_response());
+  }
+}
+
+void PrivateSetMembershipResponse::CopyFrom(const PrivateSetMembershipResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrivateSetMembershipResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateSetMembershipResponse::IsInitialized() const {
+  return true;
+}
+
+void PrivateSetMembershipResponse::InternalSwap(PrivateSetMembershipResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(rlwe_response_, other->rlwe_response_);
+}
+
+std::string PrivateSetMembershipResponse::GetTypeName() const {
+  return "enterprise_management.PrivateSetMembershipResponse";
+}
+
+
+// ===================================================================
+
+void PrivateSetMembershipRlweRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_PrivateSetMembershipRlweRequest_default_instance_._instance.get_mutable()->oprf_request_ = const_cast< ::private_membership::rlwe::PrivateMembershipRlweOprfRequest*>(
+      ::private_membership::rlwe::PrivateMembershipRlweOprfRequest::internal_default_instance());
+  ::enterprise_management::_PrivateSetMembershipRlweRequest_default_instance_._instance.get_mutable()->query_request_ = const_cast< ::private_membership::rlwe::PrivateMembershipRlweQueryRequest*>(
+      ::private_membership::rlwe::PrivateMembershipRlweQueryRequest::internal_default_instance());
+}
+class PrivateSetMembershipRlweRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrivateSetMembershipRlweRequest>()._has_bits_);
+  static const ::private_membership::rlwe::PrivateMembershipRlweOprfRequest& oprf_request(const PrivateSetMembershipRlweRequest* msg);
+  static void set_has_oprf_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::private_membership::rlwe::PrivateMembershipRlweQueryRequest& query_request(const PrivateSetMembershipRlweRequest* msg);
+  static void set_has_query_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::private_membership::rlwe::PrivateMembershipRlweOprfRequest&
+PrivateSetMembershipRlweRequest::_Internal::oprf_request(const PrivateSetMembershipRlweRequest* msg) {
+  return *msg->oprf_request_;
+}
+const ::private_membership::rlwe::PrivateMembershipRlweQueryRequest&
+PrivateSetMembershipRlweRequest::_Internal::query_request(const PrivateSetMembershipRlweRequest* msg) {
+  return *msg->query_request_;
+}
+void PrivateSetMembershipRlweRequest::clear_oprf_request() {
+  if (oprf_request_ != nullptr) oprf_request_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+void PrivateSetMembershipRlweRequest::clear_query_request() {
+  if (query_request_ != nullptr) query_request_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+PrivateSetMembershipRlweRequest::PrivateSetMembershipRlweRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrivateSetMembershipRlweRequest)
+}
+PrivateSetMembershipRlweRequest::PrivateSetMembershipRlweRequest(const PrivateSetMembershipRlweRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_oprf_request()) {
+    oprf_request_ = new ::private_membership::rlwe::PrivateMembershipRlweOprfRequest(*from.oprf_request_);
+  } else {
+    oprf_request_ = nullptr;
+  }
+  if (from._internal_has_query_request()) {
+    query_request_ = new ::private_membership::rlwe::PrivateMembershipRlweQueryRequest(*from.query_request_);
+  } else {
+    query_request_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrivateSetMembershipRlweRequest)
+}
+
+void PrivateSetMembershipRlweRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateSetMembershipRlweRequest_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&oprf_request_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&query_request_) -
+      reinterpret_cast<char*>(&oprf_request_)) + sizeof(query_request_));
+}
+
+PrivateSetMembershipRlweRequest::~PrivateSetMembershipRlweRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrivateSetMembershipRlweRequest)
+  SharedDtor();
+}
+
+void PrivateSetMembershipRlweRequest::SharedDtor() {
+  if (this != internal_default_instance()) delete oprf_request_;
+  if (this != internal_default_instance()) delete query_request_;
+}
+
+void PrivateSetMembershipRlweRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateSetMembershipRlweRequest& PrivateSetMembershipRlweRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateSetMembershipRlweRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateSetMembershipRlweRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrivateSetMembershipRlweRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(oprf_request_ != nullptr);
+      oprf_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(query_request_ != nullptr);
+      query_request_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateSetMembershipRlweRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .private_membership.rlwe.PrivateMembershipRlweOprfRequest oprf_request = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_oprf_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .private_membership.rlwe.PrivateMembershipRlweQueryRequest query_request = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_query_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateSetMembershipRlweRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrivateSetMembershipRlweRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .private_membership.rlwe.PrivateMembershipRlweOprfRequest oprf_request = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::oprf_request(this), target, stream);
+  }
+
+  // optional .private_membership.rlwe.PrivateMembershipRlweQueryRequest query_request = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::query_request(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrivateSetMembershipRlweRequest)
+  return target;
+}
+
+size_t PrivateSetMembershipRlweRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrivateSetMembershipRlweRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .private_membership.rlwe.PrivateMembershipRlweOprfRequest oprf_request = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *oprf_request_);
+    }
+
+    // optional .private_membership.rlwe.PrivateMembershipRlweQueryRequest query_request = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *query_request_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateSetMembershipRlweRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateSetMembershipRlweRequest*>(
+      &from));
+}
+
+void PrivateSetMembershipRlweRequest::MergeFrom(const PrivateSetMembershipRlweRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrivateSetMembershipRlweRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_oprf_request()->::private_membership::rlwe::PrivateMembershipRlweOprfRequest::MergeFrom(from._internal_oprf_request());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_query_request()->::private_membership::rlwe::PrivateMembershipRlweQueryRequest::MergeFrom(from._internal_query_request());
+    }
+  }
+}
+
+void PrivateSetMembershipRlweRequest::CopyFrom(const PrivateSetMembershipRlweRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrivateSetMembershipRlweRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateSetMembershipRlweRequest::IsInitialized() const {
+  return true;
+}
+
+void PrivateSetMembershipRlweRequest::InternalSwap(PrivateSetMembershipRlweRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(oprf_request_, other->oprf_request_);
+  swap(query_request_, other->query_request_);
+}
+
+std::string PrivateSetMembershipRlweRequest::GetTypeName() const {
+  return "enterprise_management.PrivateSetMembershipRlweRequest";
+}
+
+
+// ===================================================================
+
+void PrivateSetMembershipRlweResponse::InitAsDefaultInstance() {
+  ::enterprise_management::_PrivateSetMembershipRlweResponse_default_instance_._instance.get_mutable()->oprf_response_ = const_cast< ::private_membership::rlwe::PrivateMembershipRlweOprfResponse*>(
+      ::private_membership::rlwe::PrivateMembershipRlweOprfResponse::internal_default_instance());
+  ::enterprise_management::_PrivateSetMembershipRlweResponse_default_instance_._instance.get_mutable()->query_response_ = const_cast< ::private_membership::rlwe::PrivateMembershipRlweQueryResponse*>(
+      ::private_membership::rlwe::PrivateMembershipRlweQueryResponse::internal_default_instance());
+}
+class PrivateSetMembershipRlweResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrivateSetMembershipRlweResponse>()._has_bits_);
+  static const ::private_membership::rlwe::PrivateMembershipRlweOprfResponse& oprf_response(const PrivateSetMembershipRlweResponse* msg);
+  static void set_has_oprf_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::private_membership::rlwe::PrivateMembershipRlweQueryResponse& query_response(const PrivateSetMembershipRlweResponse* msg);
+  static void set_has_query_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::private_membership::rlwe::PrivateMembershipRlweOprfResponse&
+PrivateSetMembershipRlweResponse::_Internal::oprf_response(const PrivateSetMembershipRlweResponse* msg) {
+  return *msg->oprf_response_;
+}
+const ::private_membership::rlwe::PrivateMembershipRlweQueryResponse&
+PrivateSetMembershipRlweResponse::_Internal::query_response(const PrivateSetMembershipRlweResponse* msg) {
+  return *msg->query_response_;
+}
+void PrivateSetMembershipRlweResponse::clear_oprf_response() {
+  if (oprf_response_ != nullptr) oprf_response_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+void PrivateSetMembershipRlweResponse::clear_query_response() {
+  if (query_response_ != nullptr) query_response_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+PrivateSetMembershipRlweResponse::PrivateSetMembershipRlweResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrivateSetMembershipRlweResponse)
+}
+PrivateSetMembershipRlweResponse::PrivateSetMembershipRlweResponse(const PrivateSetMembershipRlweResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_oprf_response()) {
+    oprf_response_ = new ::private_membership::rlwe::PrivateMembershipRlweOprfResponse(*from.oprf_response_);
+  } else {
+    oprf_response_ = nullptr;
+  }
+  if (from._internal_has_query_response()) {
+    query_response_ = new ::private_membership::rlwe::PrivateMembershipRlweQueryResponse(*from.query_response_);
+  } else {
+    query_response_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrivateSetMembershipRlweResponse)
+}
+
+void PrivateSetMembershipRlweResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateSetMembershipRlweResponse_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&oprf_response_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&query_response_) -
+      reinterpret_cast<char*>(&oprf_response_)) + sizeof(query_response_));
+}
+
+PrivateSetMembershipRlweResponse::~PrivateSetMembershipRlweResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrivateSetMembershipRlweResponse)
+  SharedDtor();
+}
+
+void PrivateSetMembershipRlweResponse::SharedDtor() {
+  if (this != internal_default_instance()) delete oprf_response_;
+  if (this != internal_default_instance()) delete query_response_;
+}
+
+void PrivateSetMembershipRlweResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateSetMembershipRlweResponse& PrivateSetMembershipRlweResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateSetMembershipRlweResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateSetMembershipRlweResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrivateSetMembershipRlweResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(oprf_response_ != nullptr);
+      oprf_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(query_response_ != nullptr);
+      query_response_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateSetMembershipRlweResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .private_membership.rlwe.PrivateMembershipRlweOprfResponse oprf_response = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_oprf_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .private_membership.rlwe.PrivateMembershipRlweQueryResponse query_response = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_query_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateSetMembershipRlweResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrivateSetMembershipRlweResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .private_membership.rlwe.PrivateMembershipRlweOprfResponse oprf_response = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::oprf_response(this), target, stream);
+  }
+
+  // optional .private_membership.rlwe.PrivateMembershipRlweQueryResponse query_response = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::query_response(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrivateSetMembershipRlweResponse)
+  return target;
+}
+
+size_t PrivateSetMembershipRlweResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrivateSetMembershipRlweResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .private_membership.rlwe.PrivateMembershipRlweOprfResponse oprf_response = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *oprf_response_);
+    }
+
+    // optional .private_membership.rlwe.PrivateMembershipRlweQueryResponse query_response = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *query_response_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateSetMembershipRlweResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateSetMembershipRlweResponse*>(
+      &from));
+}
+
+void PrivateSetMembershipRlweResponse::MergeFrom(const PrivateSetMembershipRlweResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrivateSetMembershipRlweResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_oprf_response()->::private_membership::rlwe::PrivateMembershipRlweOprfResponse::MergeFrom(from._internal_oprf_response());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_query_response()->::private_membership::rlwe::PrivateMembershipRlweQueryResponse::MergeFrom(from._internal_query_response());
+    }
+  }
+}
+
+void PrivateSetMembershipRlweResponse::CopyFrom(const PrivateSetMembershipRlweResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrivateSetMembershipRlweResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateSetMembershipRlweResponse::IsInitialized() const {
+  return true;
+}
+
+void PrivateSetMembershipRlweResponse::InternalSwap(PrivateSetMembershipRlweResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(oprf_response_, other->oprf_response_);
+  swap(query_response_, other->query_response_);
+}
+
+std::string PrivateSetMembershipRlweResponse::GetTypeName() const {
+  return "enterprise_management.PrivateSetMembershipRlweResponse";
+}
+
+
+// ===================================================================
+
+void DeviceAutoEnrollmentRequest::InitAsDefaultInstance() {
+}
+class DeviceAutoEnrollmentRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAutoEnrollmentRequest>()._has_bits_);
+  static void set_has_remainder(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_modulus(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_enrollment_check_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+DeviceAutoEnrollmentRequest::DeviceAutoEnrollmentRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAutoEnrollmentRequest)
+}
+DeviceAutoEnrollmentRequest::DeviceAutoEnrollmentRequest(const DeviceAutoEnrollmentRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&remainder_, &from.remainder_,
+    static_cast<size_t>(reinterpret_cast<char*>(&enrollment_check_type_) -
+    reinterpret_cast<char*>(&remainder_)) + sizeof(enrollment_check_type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAutoEnrollmentRequest)
+}
+
+void DeviceAutoEnrollmentRequest::SharedCtor() {
+  ::memset(&remainder_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&modulus_) -
+      reinterpret_cast<char*>(&remainder_)) + sizeof(modulus_));
+  enrollment_check_type_ = 1;
+}
+
+DeviceAutoEnrollmentRequest::~DeviceAutoEnrollmentRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAutoEnrollmentRequest)
+  SharedDtor();
+}
+
+void DeviceAutoEnrollmentRequest::SharedDtor() {
+}
+
+void DeviceAutoEnrollmentRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAutoEnrollmentRequest& DeviceAutoEnrollmentRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAutoEnrollmentRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAutoEnrollmentRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAutoEnrollmentRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    ::memset(&remainder_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&modulus_) -
+        reinterpret_cast<char*>(&remainder_)) + sizeof(modulus_));
+    enrollment_check_type_ = 1;
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAutoEnrollmentRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 remainder = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_remainder(&has_bits);
+          remainder_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 modulus = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_modulus(&has_bits);
+          modulus_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAutoEnrollmentRequest.EnrollmentCheckType enrollment_check_type = 3 [default = ENROLLMENT_CHECK_TYPE_FRE];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType_IsValid(val))) {
+            _internal_set_enrollment_check_type(static_cast<::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAutoEnrollmentRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAutoEnrollmentRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 remainder = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_remainder(), target);
+  }
+
+  // optional int64 modulus = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_modulus(), target);
+  }
+
+  // optional .enterprise_management.DeviceAutoEnrollmentRequest.EnrollmentCheckType enrollment_check_type = 3 [default = ENROLLMENT_CHECK_TYPE_FRE];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_enrollment_check_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAutoEnrollmentRequest)
+  return target;
+}
+
+size_t DeviceAutoEnrollmentRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAutoEnrollmentRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional int64 remainder = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_remainder());
+    }
+
+    // optional int64 modulus = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_modulus());
+    }
+
+    // optional .enterprise_management.DeviceAutoEnrollmentRequest.EnrollmentCheckType enrollment_check_type = 3 [default = ENROLLMENT_CHECK_TYPE_FRE];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_enrollment_check_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAutoEnrollmentRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAutoEnrollmentRequest*>(
+      &from));
+}
+
+void DeviceAutoEnrollmentRequest::MergeFrom(const DeviceAutoEnrollmentRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAutoEnrollmentRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      remainder_ = from.remainder_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      modulus_ = from.modulus_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      enrollment_check_type_ = from.enrollment_check_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceAutoEnrollmentRequest::CopyFrom(const DeviceAutoEnrollmentRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAutoEnrollmentRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAutoEnrollmentRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceAutoEnrollmentRequest::InternalSwap(DeviceAutoEnrollmentRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(remainder_, other->remainder_);
+  swap(modulus_, other->modulus_);
+  swap(enrollment_check_type_, other->enrollment_check_type_);
+}
+
+std::string DeviceAutoEnrollmentRequest::GetTypeName() const {
+  return "enterprise_management.DeviceAutoEnrollmentRequest";
+}
+
+
+// ===================================================================
+
+void DeviceAutoEnrollmentResponse::InitAsDefaultInstance() {
+}
+class DeviceAutoEnrollmentResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAutoEnrollmentResponse>()._has_bits_);
+  static void set_has_expected_modulus(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceAutoEnrollmentResponse::DeviceAutoEnrollmentResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAutoEnrollmentResponse)
+}
+DeviceAutoEnrollmentResponse::DeviceAutoEnrollmentResponse(const DeviceAutoEnrollmentResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      hashes_(from.hashes_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  expected_modulus_ = from.expected_modulus_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAutoEnrollmentResponse)
+}
+
+void DeviceAutoEnrollmentResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceAutoEnrollmentResponse_device_5fmanagement_5fbackend_2eproto.base);
+  expected_modulus_ = PROTOBUF_LONGLONG(0);
+}
+
+DeviceAutoEnrollmentResponse::~DeviceAutoEnrollmentResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAutoEnrollmentResponse)
+  SharedDtor();
+}
+
+void DeviceAutoEnrollmentResponse::SharedDtor() {
+}
+
+void DeviceAutoEnrollmentResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAutoEnrollmentResponse& DeviceAutoEnrollmentResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAutoEnrollmentResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAutoEnrollmentResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAutoEnrollmentResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  hashes_.Clear();
+  expected_modulus_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAutoEnrollmentResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 expected_modulus = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_expected_modulus(&has_bits);
+          expected_modulus_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated bytes hashes = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_hashes();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAutoEnrollmentResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAutoEnrollmentResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 expected_modulus = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_expected_modulus(), target);
+  }
+
+  // repeated bytes hashes = 2;
+  for (int i = 0, n = this->_internal_hashes_size(); i < n; i++) {
+    const auto& s = this->_internal_hashes(i);
+    target = stream->WriteBytes(2, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAutoEnrollmentResponse)
+  return target;
+}
+
+size_t DeviceAutoEnrollmentResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAutoEnrollmentResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated bytes hashes = 2;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(hashes_.size());
+  for (int i = 0, n = hashes_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+      hashes_.Get(i));
+  }
+
+  // optional int64 expected_modulus = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+        this->_internal_expected_modulus());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAutoEnrollmentResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAutoEnrollmentResponse*>(
+      &from));
+}
+
+void DeviceAutoEnrollmentResponse::MergeFrom(const DeviceAutoEnrollmentResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAutoEnrollmentResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  hashes_.MergeFrom(from.hashes_);
+  if (from._internal_has_expected_modulus()) {
+    _internal_set_expected_modulus(from._internal_expected_modulus());
+  }
+}
+
+void DeviceAutoEnrollmentResponse::CopyFrom(const DeviceAutoEnrollmentResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAutoEnrollmentResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAutoEnrollmentResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceAutoEnrollmentResponse::InternalSwap(DeviceAutoEnrollmentResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  hashes_.InternalSwap(&other->hashes_);
+  swap(expected_modulus_, other->expected_modulus_);
+}
+
+std::string DeviceAutoEnrollmentResponse::GetTypeName() const {
+  return "enterprise_management.DeviceAutoEnrollmentResponse";
+}
+
+
+// ===================================================================
+
+void DeviceStateRetrievalRequest::InitAsDefaultInstance() {
+}
+class DeviceStateRetrievalRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceStateRetrievalRequest>()._has_bits_);
+  static void set_has_server_backed_state_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceStateRetrievalRequest::DeviceStateRetrievalRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceStateRetrievalRequest)
+}
+DeviceStateRetrievalRequest::DeviceStateRetrievalRequest(const DeviceStateRetrievalRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  server_backed_state_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_server_backed_state_key()) {
+    server_backed_state_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.server_backed_state_key_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceStateRetrievalRequest)
+}
+
+void DeviceStateRetrievalRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceStateRetrievalRequest_device_5fmanagement_5fbackend_2eproto.base);
+  server_backed_state_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceStateRetrievalRequest::~DeviceStateRetrievalRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceStateRetrievalRequest)
+  SharedDtor();
+}
+
+void DeviceStateRetrievalRequest::SharedDtor() {
+  server_backed_state_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceStateRetrievalRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceStateRetrievalRequest& DeviceStateRetrievalRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceStateRetrievalRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceStateRetrievalRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceStateRetrievalRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    server_backed_state_key_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceStateRetrievalRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes server_backed_state_key = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_server_backed_state_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceStateRetrievalRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceStateRetrievalRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes server_backed_state_key = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_server_backed_state_key(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceStateRetrievalRequest)
+  return target;
+}
+
+size_t DeviceStateRetrievalRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceStateRetrievalRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bytes server_backed_state_key = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_server_backed_state_key());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceStateRetrievalRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceStateRetrievalRequest*>(
+      &from));
+}
+
+void DeviceStateRetrievalRequest::MergeFrom(const DeviceStateRetrievalRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceStateRetrievalRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_server_backed_state_key()) {
+    _has_bits_[0] |= 0x00000001u;
+    server_backed_state_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.server_backed_state_key_);
+  }
+}
+
+void DeviceStateRetrievalRequest::CopyFrom(const DeviceStateRetrievalRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceStateRetrievalRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceStateRetrievalRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceStateRetrievalRequest::InternalSwap(DeviceStateRetrievalRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  server_backed_state_key_.Swap(&other->server_backed_state_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceStateRetrievalRequest::GetTypeName() const {
+  return "enterprise_management.DeviceStateRetrievalRequest";
+}
+
+
+// ===================================================================
+
+void DeviceStateKeyUpdateRequest::InitAsDefaultInstance() {
+}
+class DeviceStateKeyUpdateRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceStateKeyUpdateRequest>()._has_bits_);
+};
+
+DeviceStateKeyUpdateRequest::DeviceStateKeyUpdateRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceStateKeyUpdateRequest)
+}
+DeviceStateKeyUpdateRequest::DeviceStateKeyUpdateRequest(const DeviceStateKeyUpdateRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      server_backed_state_keys_(from.server_backed_state_keys_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceStateKeyUpdateRequest)
+}
+
+void DeviceStateKeyUpdateRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceStateKeyUpdateRequest_device_5fmanagement_5fbackend_2eproto.base);
+}
+
+DeviceStateKeyUpdateRequest::~DeviceStateKeyUpdateRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceStateKeyUpdateRequest)
+  SharedDtor();
+}
+
+void DeviceStateKeyUpdateRequest::SharedDtor() {
+}
+
+void DeviceStateKeyUpdateRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceStateKeyUpdateRequest& DeviceStateKeyUpdateRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceStateKeyUpdateRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceStateKeyUpdateRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceStateKeyUpdateRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  server_backed_state_keys_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceStateKeyUpdateRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated bytes server_backed_state_keys = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_server_backed_state_keys();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceStateKeyUpdateRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceStateKeyUpdateRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated bytes server_backed_state_keys = 1;
+  for (int i = 0, n = this->_internal_server_backed_state_keys_size(); i < n; i++) {
+    const auto& s = this->_internal_server_backed_state_keys(i);
+    target = stream->WriteBytes(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceStateKeyUpdateRequest)
+  return target;
+}
+
+size_t DeviceStateKeyUpdateRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceStateKeyUpdateRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated bytes server_backed_state_keys = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(server_backed_state_keys_.size());
+  for (int i = 0, n = server_backed_state_keys_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+      server_backed_state_keys_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceStateKeyUpdateRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceStateKeyUpdateRequest*>(
+      &from));
+}
+
+void DeviceStateKeyUpdateRequest::MergeFrom(const DeviceStateKeyUpdateRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceStateKeyUpdateRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  server_backed_state_keys_.MergeFrom(from.server_backed_state_keys_);
+}
+
+void DeviceStateKeyUpdateRequest::CopyFrom(const DeviceStateKeyUpdateRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceStateKeyUpdateRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceStateKeyUpdateRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceStateKeyUpdateRequest::InternalSwap(DeviceStateKeyUpdateRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  server_backed_state_keys_.InternalSwap(&other->server_backed_state_keys_);
+}
+
+std::string DeviceStateKeyUpdateRequest::GetTypeName() const {
+  return "enterprise_management.DeviceStateKeyUpdateRequest";
+}
+
+
+// ===================================================================
+
+void DeviceStateRetrievalResponse::InitAsDefaultInstance() {
+  ::enterprise_management::_DeviceStateRetrievalResponse_default_instance_._instance.get_mutable()->disabled_state_ = const_cast< ::enterprise_management::DisabledState*>(
+      ::enterprise_management::DisabledState::internal_default_instance());
+  ::enterprise_management::_DeviceStateRetrievalResponse_default_instance_._instance.get_mutable()->initial_state_response_ = const_cast< ::enterprise_management::DeviceInitialEnrollmentStateResponse*>(
+      ::enterprise_management::DeviceInitialEnrollmentStateResponse::internal_default_instance());
+}
+class DeviceStateRetrievalResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceStateRetrievalResponse>()._has_bits_);
+  static void set_has_restore_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_management_domain(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::DisabledState& disabled_state(const DeviceStateRetrievalResponse* msg);
+  static void set_has_disabled_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::enterprise_management::DeviceInitialEnrollmentStateResponse& initial_state_response(const DeviceStateRetrievalResponse* msg);
+  static void set_has_initial_state_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+const ::enterprise_management::DisabledState&
+DeviceStateRetrievalResponse::_Internal::disabled_state(const DeviceStateRetrievalResponse* msg) {
+  return *msg->disabled_state_;
+}
+const ::enterprise_management::DeviceInitialEnrollmentStateResponse&
+DeviceStateRetrievalResponse::_Internal::initial_state_response(const DeviceStateRetrievalResponse* msg) {
+  return *msg->initial_state_response_;
+}
+DeviceStateRetrievalResponse::DeviceStateRetrievalResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceStateRetrievalResponse)
+}
+DeviceStateRetrievalResponse::DeviceStateRetrievalResponse(const DeviceStateRetrievalResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  management_domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_management_domain()) {
+    management_domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.management_domain_);
+  }
+  if (from._internal_has_disabled_state()) {
+    disabled_state_ = new ::enterprise_management::DisabledState(*from.disabled_state_);
+  } else {
+    disabled_state_ = nullptr;
+  }
+  if (from._internal_has_initial_state_response()) {
+    initial_state_response_ = new ::enterprise_management::DeviceInitialEnrollmentStateResponse(*from.initial_state_response_);
+  } else {
+    initial_state_response_ = nullptr;
+  }
+  restore_mode_ = from.restore_mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceStateRetrievalResponse)
+}
+
+void DeviceStateRetrievalResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceStateRetrievalResponse_device_5fmanagement_5fbackend_2eproto.base);
+  management_domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&disabled_state_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&restore_mode_) -
+      reinterpret_cast<char*>(&disabled_state_)) + sizeof(restore_mode_));
+}
+
+DeviceStateRetrievalResponse::~DeviceStateRetrievalResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceStateRetrievalResponse)
+  SharedDtor();
+}
+
+void DeviceStateRetrievalResponse::SharedDtor() {
+  management_domain_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete disabled_state_;
+  if (this != internal_default_instance()) delete initial_state_response_;
+}
+
+void DeviceStateRetrievalResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceStateRetrievalResponse& DeviceStateRetrievalResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceStateRetrievalResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceStateRetrievalResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceStateRetrievalResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      management_domain_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(disabled_state_ != nullptr);
+      disabled_state_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(initial_state_response_ != nullptr);
+      initial_state_response_->Clear();
+    }
+  }
+  restore_mode_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceStateRetrievalResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceStateRetrievalResponse.RestoreMode restore_mode = 1 [default = RESTORE_MODE_NONE];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceStateRetrievalResponse_RestoreMode_IsValid(val))) {
+            _internal_set_restore_mode(static_cast<::enterprise_management::DeviceStateRetrievalResponse_RestoreMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string management_domain = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_management_domain();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DisabledState disabled_state = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_disabled_state(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceInitialEnrollmentStateResponse initial_state_response = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_initial_state_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceStateRetrievalResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceStateRetrievalResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceStateRetrievalResponse.RestoreMode restore_mode = 1 [default = RESTORE_MODE_NONE];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_restore_mode(), target);
+  }
+
+  // optional string management_domain = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_management_domain(), target);
+  }
+
+  // optional .enterprise_management.DisabledState disabled_state = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::disabled_state(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateResponse initial_state_response = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::initial_state_response(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceStateRetrievalResponse)
+  return target;
+}
+
+size_t DeviceStateRetrievalResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceStateRetrievalResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string management_domain = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_management_domain());
+    }
+
+    // optional .enterprise_management.DisabledState disabled_state = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *disabled_state_);
+    }
+
+    // optional .enterprise_management.DeviceInitialEnrollmentStateResponse initial_state_response = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *initial_state_response_);
+    }
+
+    // optional .enterprise_management.DeviceStateRetrievalResponse.RestoreMode restore_mode = 1 [default = RESTORE_MODE_NONE];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_restore_mode());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceStateRetrievalResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceStateRetrievalResponse*>(
+      &from));
+}
+
+void DeviceStateRetrievalResponse::MergeFrom(const DeviceStateRetrievalResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceStateRetrievalResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      management_domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.management_domain_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_disabled_state()->::enterprise_management::DisabledState::MergeFrom(from._internal_disabled_state());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_initial_state_response()->::enterprise_management::DeviceInitialEnrollmentStateResponse::MergeFrom(from._internal_initial_state_response());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      restore_mode_ = from.restore_mode_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceStateRetrievalResponse::CopyFrom(const DeviceStateRetrievalResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceStateRetrievalResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceStateRetrievalResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceStateRetrievalResponse::InternalSwap(DeviceStateRetrievalResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  management_domain_.Swap(&other->management_domain_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(disabled_state_, other->disabled_state_);
+  swap(initial_state_response_, other->initial_state_response_);
+  swap(restore_mode_, other->restore_mode_);
+}
+
+std::string DeviceStateRetrievalResponse::GetTypeName() const {
+  return "enterprise_management.DeviceStateRetrievalResponse";
+}
+
+
+// ===================================================================
+
+void DeviceInitialEnrollmentStateRequest::InitAsDefaultInstance() {
+}
+class DeviceInitialEnrollmentStateRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceInitialEnrollmentStateRequest>()._has_bits_);
+  static void set_has_serial_number(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_brand_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+DeviceInitialEnrollmentStateRequest::DeviceInitialEnrollmentStateRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceInitialEnrollmentStateRequest)
+}
+DeviceInitialEnrollmentStateRequest::DeviceInitialEnrollmentStateRequest(const DeviceInitialEnrollmentStateRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  serial_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_serial_number()) {
+    serial_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_number_);
+  }
+  brand_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_brand_code()) {
+    brand_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_code_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceInitialEnrollmentStateRequest)
+}
+
+void DeviceInitialEnrollmentStateRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceInitialEnrollmentStateRequest_device_5fmanagement_5fbackend_2eproto.base);
+  serial_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceInitialEnrollmentStateRequest::~DeviceInitialEnrollmentStateRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceInitialEnrollmentStateRequest)
+  SharedDtor();
+}
+
+void DeviceInitialEnrollmentStateRequest::SharedDtor() {
+  serial_number_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_code_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceInitialEnrollmentStateRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceInitialEnrollmentStateRequest& DeviceInitialEnrollmentStateRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceInitialEnrollmentStateRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceInitialEnrollmentStateRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceInitialEnrollmentStateRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      serial_number_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      brand_code_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceInitialEnrollmentStateRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string serial_number = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_serial_number();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string brand_code = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_brand_code();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceInitialEnrollmentStateRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceInitialEnrollmentStateRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string serial_number = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_serial_number(), target);
+  }
+
+  // optional string brand_code = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_brand_code(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceInitialEnrollmentStateRequest)
+  return target;
+}
+
+size_t DeviceInitialEnrollmentStateRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceInitialEnrollmentStateRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string serial_number = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_serial_number());
+    }
+
+    // optional string brand_code = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_brand_code());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceInitialEnrollmentStateRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceInitialEnrollmentStateRequest*>(
+      &from));
+}
+
+void DeviceInitialEnrollmentStateRequest::MergeFrom(const DeviceInitialEnrollmentStateRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceInitialEnrollmentStateRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      serial_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.serial_number_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      brand_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_code_);
+    }
+  }
+}
+
+void DeviceInitialEnrollmentStateRequest::CopyFrom(const DeviceInitialEnrollmentStateRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceInitialEnrollmentStateRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceInitialEnrollmentStateRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceInitialEnrollmentStateRequest::InternalSwap(DeviceInitialEnrollmentStateRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  serial_number_.Swap(&other->serial_number_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  brand_code_.Swap(&other->brand_code_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceInitialEnrollmentStateRequest::GetTypeName() const {
+  return "enterprise_management.DeviceInitialEnrollmentStateRequest";
+}
+
+
+// ===================================================================
+
+void DeviceInitialEnrollmentStateResponse::InitAsDefaultInstance() {
+  ::enterprise_management::_DeviceInitialEnrollmentStateResponse_default_instance_._instance.get_mutable()->disabled_state_ = const_cast< ::enterprise_management::DisabledState*>(
+      ::enterprise_management::DisabledState::internal_default_instance());
+}
+class DeviceInitialEnrollmentStateResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceInitialEnrollmentStateResponse>()._has_bits_);
+  static void set_has_initial_enrollment_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_management_domain(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_is_license_packaged_with_device(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::enterprise_management::DisabledState& disabled_state(const DeviceInitialEnrollmentStateResponse* msg);
+  static void set_has_disabled_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_license_packaging_sku(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+const ::enterprise_management::DisabledState&
+DeviceInitialEnrollmentStateResponse::_Internal::disabled_state(const DeviceInitialEnrollmentStateResponse* msg) {
+  return *msg->disabled_state_;
+}
+DeviceInitialEnrollmentStateResponse::DeviceInitialEnrollmentStateResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceInitialEnrollmentStateResponse)
+}
+DeviceInitialEnrollmentStateResponse::DeviceInitialEnrollmentStateResponse(const DeviceInitialEnrollmentStateResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  management_domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_management_domain()) {
+    management_domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.management_domain_);
+  }
+  if (from._internal_has_disabled_state()) {
+    disabled_state_ = new ::enterprise_management::DisabledState(*from.disabled_state_);
+  } else {
+    disabled_state_ = nullptr;
+  }
+  ::memcpy(&initial_enrollment_mode_, &from.initial_enrollment_mode_,
+    static_cast<size_t>(reinterpret_cast<char*>(&license_packaging_sku_) -
+    reinterpret_cast<char*>(&initial_enrollment_mode_)) + sizeof(license_packaging_sku_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceInitialEnrollmentStateResponse)
+}
+
+void DeviceInitialEnrollmentStateResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceInitialEnrollmentStateResponse_device_5fmanagement_5fbackend_2eproto.base);
+  management_domain_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&disabled_state_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&license_packaging_sku_) -
+      reinterpret_cast<char*>(&disabled_state_)) + sizeof(license_packaging_sku_));
+}
+
+DeviceInitialEnrollmentStateResponse::~DeviceInitialEnrollmentStateResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceInitialEnrollmentStateResponse)
+  SharedDtor();
+}
+
+void DeviceInitialEnrollmentStateResponse::SharedDtor() {
+  management_domain_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete disabled_state_;
+}
+
+void DeviceInitialEnrollmentStateResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceInitialEnrollmentStateResponse& DeviceInitialEnrollmentStateResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceInitialEnrollmentStateResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceInitialEnrollmentStateResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceInitialEnrollmentStateResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      management_domain_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(disabled_state_ != nullptr);
+      disabled_state_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000001cu) {
+    ::memset(&initial_enrollment_mode_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&license_packaging_sku_) -
+        reinterpret_cast<char*>(&initial_enrollment_mode_)) + sizeof(license_packaging_sku_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceInitialEnrollmentStateResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceInitialEnrollmentStateResponse.InitialEnrollmentMode initial_enrollment_mode = 1 [default = INITIAL_ENROLLMENT_MODE_NONE];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_IsValid(val))) {
+            _internal_set_initial_enrollment_mode(static_cast<::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string management_domain = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_management_domain();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_license_packaged_with_device = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_is_license_packaged_with_device(&has_bits);
+          is_license_packaged_with_device_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DisabledState disabled_state = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_disabled_state(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceInitialEnrollmentStateResponse.LicensePackagingSKU license_packaging_sku = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_IsValid(val))) {
+            _internal_set_license_packaging_sku(static_cast<::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(5, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceInitialEnrollmentStateResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceInitialEnrollmentStateResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceInitialEnrollmentStateResponse.InitialEnrollmentMode initial_enrollment_mode = 1 [default = INITIAL_ENROLLMENT_MODE_NONE];
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_initial_enrollment_mode(), target);
+  }
+
+  // optional string management_domain = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_management_domain(), target);
+  }
+
+  // optional bool is_license_packaged_with_device = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_is_license_packaged_with_device(), target);
+  }
+
+  // optional .enterprise_management.DisabledState disabled_state = 4;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::disabled_state(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateResponse.LicensePackagingSKU license_packaging_sku = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      5, this->_internal_license_packaging_sku(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceInitialEnrollmentStateResponse)
+  return target;
+}
+
+size_t DeviceInitialEnrollmentStateResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceInitialEnrollmentStateResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string management_domain = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_management_domain());
+    }
+
+    // optional .enterprise_management.DisabledState disabled_state = 4;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *disabled_state_);
+    }
+
+    // optional .enterprise_management.DeviceInitialEnrollmentStateResponse.InitialEnrollmentMode initial_enrollment_mode = 1 [default = INITIAL_ENROLLMENT_MODE_NONE];
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_initial_enrollment_mode());
+    }
+
+    // optional bool is_license_packaged_with_device = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .enterprise_management.DeviceInitialEnrollmentStateResponse.LicensePackagingSKU license_packaging_sku = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_license_packaging_sku());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceInitialEnrollmentStateResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceInitialEnrollmentStateResponse*>(
+      &from));
+}
+
+void DeviceInitialEnrollmentStateResponse::MergeFrom(const DeviceInitialEnrollmentStateResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceInitialEnrollmentStateResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      management_domain_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.management_domain_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_disabled_state()->::enterprise_management::DisabledState::MergeFrom(from._internal_disabled_state());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      initial_enrollment_mode_ = from.initial_enrollment_mode_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      is_license_packaged_with_device_ = from.is_license_packaged_with_device_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      license_packaging_sku_ = from.license_packaging_sku_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceInitialEnrollmentStateResponse::CopyFrom(const DeviceInitialEnrollmentStateResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceInitialEnrollmentStateResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceInitialEnrollmentStateResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceInitialEnrollmentStateResponse::InternalSwap(DeviceInitialEnrollmentStateResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  management_domain_.Swap(&other->management_domain_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(disabled_state_, other->disabled_state_);
+  swap(initial_enrollment_mode_, other->initial_enrollment_mode_);
+  swap(is_license_packaged_with_device_, other->is_license_packaged_with_device_);
+  swap(license_packaging_sku_, other->license_packaging_sku_);
+}
+
+std::string DeviceInitialEnrollmentStateResponse::GetTypeName() const {
+  return "enterprise_management.DeviceInitialEnrollmentStateResponse";
+}
+
+
+// ===================================================================
+
+void DevicePairingRequest::InitAsDefaultInstance() {
+}
+class DevicePairingRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePairingRequest>()._has_bits_);
+  static void set_has_host_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_controller_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+DevicePairingRequest::DevicePairingRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePairingRequest)
+}
+DevicePairingRequest::DevicePairingRequest(const DevicePairingRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  host_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_host_device_id()) {
+    host_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.host_device_id_);
+  }
+  controller_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_controller_device_id()) {
+    controller_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.controller_device_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePairingRequest)
+}
+
+void DevicePairingRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DevicePairingRequest_device_5fmanagement_5fbackend_2eproto.base);
+  host_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  controller_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DevicePairingRequest::~DevicePairingRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePairingRequest)
+  SharedDtor();
+}
+
+void DevicePairingRequest::SharedDtor() {
+  host_device_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  controller_device_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DevicePairingRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePairingRequest& DevicePairingRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePairingRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePairingRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePairingRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      host_device_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      controller_device_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePairingRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string host_device_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_host_device_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string controller_device_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_controller_device_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePairingRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePairingRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string host_device_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_host_device_id(), target);
+  }
+
+  // optional string controller_device_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_controller_device_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePairingRequest)
+  return target;
+}
+
+size_t DevicePairingRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePairingRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string host_device_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_host_device_id());
+    }
+
+    // optional string controller_device_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_controller_device_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePairingRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePairingRequest*>(
+      &from));
+}
+
+void DevicePairingRequest::MergeFrom(const DevicePairingRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePairingRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      host_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.host_device_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      controller_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.controller_device_id_);
+    }
+  }
+}
+
+void DevicePairingRequest::CopyFrom(const DevicePairingRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePairingRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePairingRequest::IsInitialized() const {
+  return true;
+}
+
+void DevicePairingRequest::InternalSwap(DevicePairingRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  host_device_id_.Swap(&other->host_device_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  controller_device_id_.Swap(&other->controller_device_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DevicePairingRequest::GetTypeName() const {
+  return "enterprise_management.DevicePairingRequest";
+}
+
+
+// ===================================================================
+
+void DevicePairingResponse::InitAsDefaultInstance() {
+}
+class DevicePairingResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DevicePairingResponse>()._has_bits_);
+  static void set_has_status_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DevicePairingResponse::DevicePairingResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DevicePairingResponse)
+}
+DevicePairingResponse::DevicePairingResponse(const DevicePairingResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  status_code_ = from.status_code_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DevicePairingResponse)
+}
+
+void DevicePairingResponse::SharedCtor() {
+  status_code_ = 1;
+}
+
+DevicePairingResponse::~DevicePairingResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DevicePairingResponse)
+  SharedDtor();
+}
+
+void DevicePairingResponse::SharedDtor() {
+}
+
+void DevicePairingResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DevicePairingResponse& DevicePairingResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DevicePairingResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DevicePairingResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DevicePairingResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  status_code_ = 1;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DevicePairingResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DevicePairingResponse.StatusCode status_code = 1 [default = FAILED];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DevicePairingResponse_StatusCode_IsValid(val))) {
+            _internal_set_status_code(static_cast<::enterprise_management::DevicePairingResponse_StatusCode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DevicePairingResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DevicePairingResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DevicePairingResponse.StatusCode status_code = 1 [default = FAILED];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_status_code(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DevicePairingResponse)
+  return target;
+}
+
+size_t DevicePairingResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DevicePairingResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DevicePairingResponse.StatusCode status_code = 1 [default = FAILED];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_status_code());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DevicePairingResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DevicePairingResponse*>(
+      &from));
+}
+
+void DevicePairingResponse::MergeFrom(const DevicePairingResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DevicePairingResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_status_code()) {
+    _internal_set_status_code(from._internal_status_code());
+  }
+}
+
+void DevicePairingResponse::CopyFrom(const DevicePairingResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DevicePairingResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DevicePairingResponse::IsInitialized() const {
+  return true;
+}
+
+void DevicePairingResponse::InternalSwap(DevicePairingResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(status_code_, other->status_code_);
+}
+
+std::string DevicePairingResponse::GetTypeName() const {
+  return "enterprise_management.DevicePairingResponse";
+}
+
+
+// ===================================================================
+
+void CheckDevicePairingRequest::InitAsDefaultInstance() {
+}
+class CheckDevicePairingRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CheckDevicePairingRequest>()._has_bits_);
+  static void set_has_host_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_controller_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+CheckDevicePairingRequest::CheckDevicePairingRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CheckDevicePairingRequest)
+}
+CheckDevicePairingRequest::CheckDevicePairingRequest(const CheckDevicePairingRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  host_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_host_device_id()) {
+    host_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.host_device_id_);
+  }
+  controller_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_controller_device_id()) {
+    controller_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.controller_device_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CheckDevicePairingRequest)
+}
+
+void CheckDevicePairingRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CheckDevicePairingRequest_device_5fmanagement_5fbackend_2eproto.base);
+  host_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  controller_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+CheckDevicePairingRequest::~CheckDevicePairingRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CheckDevicePairingRequest)
+  SharedDtor();
+}
+
+void CheckDevicePairingRequest::SharedDtor() {
+  host_device_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  controller_device_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void CheckDevicePairingRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CheckDevicePairingRequest& CheckDevicePairingRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CheckDevicePairingRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CheckDevicePairingRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CheckDevicePairingRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      host_device_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      controller_device_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CheckDevicePairingRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string host_device_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_host_device_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string controller_device_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_controller_device_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CheckDevicePairingRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CheckDevicePairingRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string host_device_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_host_device_id(), target);
+  }
+
+  // optional string controller_device_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_controller_device_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CheckDevicePairingRequest)
+  return target;
+}
+
+size_t CheckDevicePairingRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CheckDevicePairingRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string host_device_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_host_device_id());
+    }
+
+    // optional string controller_device_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_controller_device_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CheckDevicePairingRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CheckDevicePairingRequest*>(
+      &from));
+}
+
+void CheckDevicePairingRequest::MergeFrom(const CheckDevicePairingRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CheckDevicePairingRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      host_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.host_device_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      controller_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.controller_device_id_);
+    }
+  }
+}
+
+void CheckDevicePairingRequest::CopyFrom(const CheckDevicePairingRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CheckDevicePairingRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CheckDevicePairingRequest::IsInitialized() const {
+  return true;
+}
+
+void CheckDevicePairingRequest::InternalSwap(CheckDevicePairingRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  host_device_id_.Swap(&other->host_device_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  controller_device_id_.Swap(&other->controller_device_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string CheckDevicePairingRequest::GetTypeName() const {
+  return "enterprise_management.CheckDevicePairingRequest";
+}
+
+
+// ===================================================================
+
+void CheckDevicePairingResponse::InitAsDefaultInstance() {
+}
+class CheckDevicePairingResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CheckDevicePairingResponse>()._has_bits_);
+  static void set_has_status_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+CheckDevicePairingResponse::CheckDevicePairingResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CheckDevicePairingResponse)
+}
+CheckDevicePairingResponse::CheckDevicePairingResponse(const CheckDevicePairingResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  status_code_ = from.status_code_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CheckDevicePairingResponse)
+}
+
+void CheckDevicePairingResponse::SharedCtor() {
+  status_code_ = 1;
+}
+
+CheckDevicePairingResponse::~CheckDevicePairingResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CheckDevicePairingResponse)
+  SharedDtor();
+}
+
+void CheckDevicePairingResponse::SharedDtor() {
+}
+
+void CheckDevicePairingResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CheckDevicePairingResponse& CheckDevicePairingResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CheckDevicePairingResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CheckDevicePairingResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CheckDevicePairingResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  status_code_ = 1;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CheckDevicePairingResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.CheckDevicePairingResponse.StatusCode status_code = 1 [default = NOT_PAIRED];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::CheckDevicePairingResponse_StatusCode_IsValid(val))) {
+            _internal_set_status_code(static_cast<::enterprise_management::CheckDevicePairingResponse_StatusCode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CheckDevicePairingResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CheckDevicePairingResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.CheckDevicePairingResponse.StatusCode status_code = 1 [default = NOT_PAIRED];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_status_code(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CheckDevicePairingResponse)
+  return target;
+}
+
+size_t CheckDevicePairingResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CheckDevicePairingResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.CheckDevicePairingResponse.StatusCode status_code = 1 [default = NOT_PAIRED];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_status_code());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CheckDevicePairingResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CheckDevicePairingResponse*>(
+      &from));
+}
+
+void CheckDevicePairingResponse::MergeFrom(const CheckDevicePairingResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CheckDevicePairingResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_status_code()) {
+    _internal_set_status_code(from._internal_status_code());
+  }
+}
+
+void CheckDevicePairingResponse::CopyFrom(const CheckDevicePairingResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CheckDevicePairingResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CheckDevicePairingResponse::IsInitialized() const {
+  return true;
+}
+
+void CheckDevicePairingResponse::InternalSwap(CheckDevicePairingResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(status_code_, other->status_code_);
+}
+
+std::string CheckDevicePairingResponse::GetTypeName() const {
+  return "enterprise_management.CheckDevicePairingResponse";
+}
+
+
+// ===================================================================
+
+void RemoteCommand::InitAsDefaultInstance() {
+}
+class RemoteCommand::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RemoteCommand>()._has_bits_);
+  static void set_has_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_command_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_age_of_command(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_payload(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_target_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+RemoteCommand::RemoteCommand()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RemoteCommand)
+}
+RemoteCommand::RemoteCommand(const RemoteCommand& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  payload_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_payload()) {
+    payload_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.payload_);
+  }
+  target_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_target_device_id()) {
+    target_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.target_device_id_);
+  }
+  ::memcpy(&command_id_, &from.command_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&type_) -
+    reinterpret_cast<char*>(&command_id_)) + sizeof(type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RemoteCommand)
+}
+
+void RemoteCommand::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RemoteCommand_device_5fmanagement_5fbackend_2eproto.base);
+  payload_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  target_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&command_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&age_of_command_) -
+      reinterpret_cast<char*>(&command_id_)) + sizeof(age_of_command_));
+  type_ = -1;
+}
+
+RemoteCommand::~RemoteCommand() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RemoteCommand)
+  SharedDtor();
+}
+
+void RemoteCommand::SharedDtor() {
+  payload_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  target_device_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void RemoteCommand::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RemoteCommand& RemoteCommand::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RemoteCommand_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RemoteCommand::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RemoteCommand)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      payload_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      target_device_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000001cu) {
+    ::memset(&command_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&age_of_command_) -
+        reinterpret_cast<char*>(&command_id_)) + sizeof(age_of_command_));
+    type_ = -1;
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RemoteCommand::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.RemoteCommand.Type type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::RemoteCommand_Type_IsValid(val))) {
+            _internal_set_type(static_cast<::enterprise_management::RemoteCommand_Type>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int64 command_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_command_id(&has_bits);
+          command_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 age_of_command = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_age_of_command(&has_bits);
+          age_of_command_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string payload = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_payload();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string target_device_id = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_target_device_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RemoteCommand::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RemoteCommand)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.RemoteCommand.Type type = 1;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_type(), target);
+  }
+
+  // optional int64 command_id = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_command_id(), target);
+  }
+
+  // optional int64 age_of_command = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_age_of_command(), target);
+  }
+
+  // optional string payload = 4;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_payload(), target);
+  }
+
+  // optional string target_device_id = 5;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_target_device_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RemoteCommand)
+  return target;
+}
+
+size_t RemoteCommand::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RemoteCommand)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string payload = 4;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_payload());
+    }
+
+    // optional string target_device_id = 5;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_target_device_id());
+    }
+
+    // optional int64 command_id = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_command_id());
+    }
+
+    // optional int64 age_of_command = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_age_of_command());
+    }
+
+    // optional .enterprise_management.RemoteCommand.Type type = 1;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RemoteCommand::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RemoteCommand*>(
+      &from));
+}
+
+void RemoteCommand::MergeFrom(const RemoteCommand& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RemoteCommand)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      payload_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.payload_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      target_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.target_device_id_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      command_id_ = from.command_id_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      age_of_command_ = from.age_of_command_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      type_ = from.type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void RemoteCommand::CopyFrom(const RemoteCommand& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RemoteCommand)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RemoteCommand::IsInitialized() const {
+  return true;
+}
+
+void RemoteCommand::InternalSwap(RemoteCommand* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  payload_.Swap(&other->payload_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  target_device_id_.Swap(&other->target_device_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(command_id_, other->command_id_);
+  swap(age_of_command_, other->age_of_command_);
+  swap(type_, other->type_);
+}
+
+std::string RemoteCommand::GetTypeName() const {
+  return "enterprise_management.RemoteCommand";
+}
+
+
+// ===================================================================
+
+void RemoteCommandResult::InitAsDefaultInstance() {
+}
+class RemoteCommandResult::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RemoteCommandResult>()._has_bits_);
+  static void set_has_result(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_command_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_payload(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+RemoteCommandResult::RemoteCommandResult()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RemoteCommandResult)
+}
+RemoteCommandResult::RemoteCommandResult(const RemoteCommandResult& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  payload_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_payload()) {
+    payload_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.payload_);
+  }
+  ::memcpy(&command_id_, &from.command_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&result_) -
+    reinterpret_cast<char*>(&command_id_)) + sizeof(result_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RemoteCommandResult)
+}
+
+void RemoteCommandResult::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RemoteCommandResult_device_5fmanagement_5fbackend_2eproto.base);
+  payload_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&command_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&result_) -
+      reinterpret_cast<char*>(&command_id_)) + sizeof(result_));
+}
+
+RemoteCommandResult::~RemoteCommandResult() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RemoteCommandResult)
+  SharedDtor();
+}
+
+void RemoteCommandResult::SharedDtor() {
+  payload_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void RemoteCommandResult::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RemoteCommandResult& RemoteCommandResult::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RemoteCommandResult_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RemoteCommandResult::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RemoteCommandResult)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    payload_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x0000000eu) {
+    ::memset(&command_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&result_) -
+        reinterpret_cast<char*>(&command_id_)) + sizeof(result_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RemoteCommandResult::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.RemoteCommandResult.ResultType result = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::RemoteCommandResult_ResultType_IsValid(val))) {
+            _internal_set_result(static_cast<::enterprise_management::RemoteCommandResult_ResultType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int64 command_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_command_id(&has_bits);
+          command_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 timestamp = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string payload = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_payload();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RemoteCommandResult::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RemoteCommandResult)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.RemoteCommandResult.ResultType result = 1;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_result(), target);
+  }
+
+  // optional int64 command_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_command_id(), target);
+  }
+
+  // optional int64 timestamp = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_timestamp(), target);
+  }
+
+  // optional string payload = 4;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_payload(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RemoteCommandResult)
+  return target;
+}
+
+size_t RemoteCommandResult::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RemoteCommandResult)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string payload = 4;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_payload());
+    }
+
+    // optional int64 command_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_command_id());
+    }
+
+    // optional int64 timestamp = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+    // optional .enterprise_management.RemoteCommandResult.ResultType result = 1;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_result());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RemoteCommandResult::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RemoteCommandResult*>(
+      &from));
+}
+
+void RemoteCommandResult::MergeFrom(const RemoteCommandResult& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RemoteCommandResult)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      payload_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.payload_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      command_id_ = from.command_id_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      timestamp_ = from.timestamp_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      result_ = from.result_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void RemoteCommandResult::CopyFrom(const RemoteCommandResult& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RemoteCommandResult)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RemoteCommandResult::IsInitialized() const {
+  return true;
+}
+
+void RemoteCommandResult::InternalSwap(RemoteCommandResult* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  payload_.Swap(&other->payload_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(command_id_, other->command_id_);
+  swap(timestamp_, other->timestamp_);
+  swap(result_, other->result_);
+}
+
+std::string RemoteCommandResult::GetTypeName() const {
+  return "enterprise_management.RemoteCommandResult";
+}
+
+
+// ===================================================================
+
+void DeviceRemoteCommandRequest::InitAsDefaultInstance() {
+}
+class DeviceRemoteCommandRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceRemoteCommandRequest>()._has_bits_);
+  static void set_has_last_command_unique_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_send_secure_commands(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_signature_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+DeviceRemoteCommandRequest::DeviceRemoteCommandRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceRemoteCommandRequest)
+}
+DeviceRemoteCommandRequest::DeviceRemoteCommandRequest(const DeviceRemoteCommandRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      command_results_(from.command_results_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&last_command_unique_id_, &from.last_command_unique_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&signature_type_) -
+    reinterpret_cast<char*>(&last_command_unique_id_)) + sizeof(signature_type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceRemoteCommandRequest)
+}
+
+void DeviceRemoteCommandRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceRemoteCommandRequest_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&last_command_unique_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&signature_type_) -
+      reinterpret_cast<char*>(&last_command_unique_id_)) + sizeof(signature_type_));
+}
+
+DeviceRemoteCommandRequest::~DeviceRemoteCommandRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceRemoteCommandRequest)
+  SharedDtor();
+}
+
+void DeviceRemoteCommandRequest::SharedDtor() {
+}
+
+void DeviceRemoteCommandRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceRemoteCommandRequest& DeviceRemoteCommandRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceRemoteCommandRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceRemoteCommandRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceRemoteCommandRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  command_results_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    ::memset(&last_command_unique_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&signature_type_) -
+        reinterpret_cast<char*>(&last_command_unique_id_)) + sizeof(signature_type_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceRemoteCommandRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 last_command_unique_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_last_command_unique_id(&has_bits);
+          last_command_unique_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.RemoteCommandResult command_results = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_command_results(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional bool send_secure_commands = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_send_secure_commands(&has_bits);
+          send_secure_commands_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyFetchRequest_SignatureType_IsValid(val))) {
+            _internal_set_signature_type(static_cast<::enterprise_management::PolicyFetchRequest_SignatureType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceRemoteCommandRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceRemoteCommandRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 last_command_unique_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_last_command_unique_id(), target);
+  }
+
+  // repeated .enterprise_management.RemoteCommandResult command_results = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_command_results_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_command_results(i), target, stream);
+  }
+
+  // optional bool send_secure_commands = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_send_secure_commands(), target);
+  }
+
+  // optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_signature_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceRemoteCommandRequest)
+  return target;
+}
+
+size_t DeviceRemoteCommandRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceRemoteCommandRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.RemoteCommandResult command_results = 2;
+  total_size += 1UL * this->_internal_command_results_size();
+  for (const auto& msg : this->command_results_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional int64 last_command_unique_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_command_unique_id());
+    }
+
+    // optional bool send_secure_commands = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_signature_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceRemoteCommandRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceRemoteCommandRequest*>(
+      &from));
+}
+
+void DeviceRemoteCommandRequest::MergeFrom(const DeviceRemoteCommandRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceRemoteCommandRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  command_results_.MergeFrom(from.command_results_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      last_command_unique_id_ = from.last_command_unique_id_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      send_secure_commands_ = from.send_secure_commands_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      signature_type_ = from.signature_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void DeviceRemoteCommandRequest::CopyFrom(const DeviceRemoteCommandRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceRemoteCommandRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceRemoteCommandRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceRemoteCommandRequest::InternalSwap(DeviceRemoteCommandRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  command_results_.InternalSwap(&other->command_results_);
+  swap(last_command_unique_id_, other->last_command_unique_id_);
+  swap(send_secure_commands_, other->send_secure_commands_);
+  swap(signature_type_, other->signature_type_);
+}
+
+std::string DeviceRemoteCommandRequest::GetTypeName() const {
+  return "enterprise_management.DeviceRemoteCommandRequest";
+}
+
+
+// ===================================================================
+
+void DeviceRemoteCommandResponse::InitAsDefaultInstance() {
+}
+class DeviceRemoteCommandResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceRemoteCommandResponse>()._has_bits_);
+};
+
+DeviceRemoteCommandResponse::DeviceRemoteCommandResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceRemoteCommandResponse)
+}
+DeviceRemoteCommandResponse::DeviceRemoteCommandResponse(const DeviceRemoteCommandResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      commands_(from.commands_),
+      secure_commands_(from.secure_commands_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceRemoteCommandResponse)
+}
+
+void DeviceRemoteCommandResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceRemoteCommandResponse_device_5fmanagement_5fbackend_2eproto.base);
+}
+
+DeviceRemoteCommandResponse::~DeviceRemoteCommandResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceRemoteCommandResponse)
+  SharedDtor();
+}
+
+void DeviceRemoteCommandResponse::SharedDtor() {
+}
+
+void DeviceRemoteCommandResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceRemoteCommandResponse& DeviceRemoteCommandResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceRemoteCommandResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceRemoteCommandResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceRemoteCommandResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  commands_.Clear();
+  secure_commands_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceRemoteCommandResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.RemoteCommand commands = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_commands(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.SignedData secure_commands = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_secure_commands(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceRemoteCommandResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceRemoteCommandResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.RemoteCommand commands = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_commands_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_commands(i), target, stream);
+  }
+
+  // repeated .enterprise_management.SignedData secure_commands = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_secure_commands_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_secure_commands(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceRemoteCommandResponse)
+  return target;
+}
+
+size_t DeviceRemoteCommandResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceRemoteCommandResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.RemoteCommand commands = 1;
+  total_size += 1UL * this->_internal_commands_size();
+  for (const auto& msg : this->commands_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.SignedData secure_commands = 2;
+  total_size += 1UL * this->_internal_secure_commands_size();
+  for (const auto& msg : this->secure_commands_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceRemoteCommandResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceRemoteCommandResponse*>(
+      &from));
+}
+
+void DeviceRemoteCommandResponse::MergeFrom(const DeviceRemoteCommandResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceRemoteCommandResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  commands_.MergeFrom(from.commands_);
+  secure_commands_.MergeFrom(from.secure_commands_);
+}
+
+void DeviceRemoteCommandResponse::CopyFrom(const DeviceRemoteCommandResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceRemoteCommandResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceRemoteCommandResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceRemoteCommandResponse::InternalSwap(DeviceRemoteCommandResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  commands_.InternalSwap(&other->commands_);
+  secure_commands_.InternalSwap(&other->secure_commands_);
+}
+
+std::string DeviceRemoteCommandResponse::GetTypeName() const {
+  return "enterprise_management.DeviceRemoteCommandResponse";
+}
+
+
+// ===================================================================
+
+void DeviceAttributeUpdatePermissionRequest::InitAsDefaultInstance() {
+}
+class DeviceAttributeUpdatePermissionRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAttributeUpdatePermissionRequest>()._has_bits_);
+};
+
+DeviceAttributeUpdatePermissionRequest::DeviceAttributeUpdatePermissionRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+}
+DeviceAttributeUpdatePermissionRequest::DeviceAttributeUpdatePermissionRequest(const DeviceAttributeUpdatePermissionRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+}
+
+void DeviceAttributeUpdatePermissionRequest::SharedCtor() {
+}
+
+DeviceAttributeUpdatePermissionRequest::~DeviceAttributeUpdatePermissionRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+  SharedDtor();
+}
+
+void DeviceAttributeUpdatePermissionRequest::SharedDtor() {
+}
+
+void DeviceAttributeUpdatePermissionRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAttributeUpdatePermissionRequest& DeviceAttributeUpdatePermissionRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAttributeUpdatePermissionRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAttributeUpdatePermissionRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAttributeUpdatePermissionRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAttributeUpdatePermissionRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+  return target;
+}
+
+size_t DeviceAttributeUpdatePermissionRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAttributeUpdatePermissionRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAttributeUpdatePermissionRequest*>(
+      &from));
+}
+
+void DeviceAttributeUpdatePermissionRequest::MergeFrom(const DeviceAttributeUpdatePermissionRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void DeviceAttributeUpdatePermissionRequest::CopyFrom(const DeviceAttributeUpdatePermissionRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAttributeUpdatePermissionRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceAttributeUpdatePermissionRequest::InternalSwap(DeviceAttributeUpdatePermissionRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string DeviceAttributeUpdatePermissionRequest::GetTypeName() const {
+  return "enterprise_management.DeviceAttributeUpdatePermissionRequest";
+}
+
+
+// ===================================================================
+
+void DeviceAttributeUpdatePermissionResponse::InitAsDefaultInstance() {
+}
+class DeviceAttributeUpdatePermissionResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAttributeUpdatePermissionResponse>()._has_bits_);
+  static void set_has_result(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceAttributeUpdatePermissionResponse::DeviceAttributeUpdatePermissionResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+}
+DeviceAttributeUpdatePermissionResponse::DeviceAttributeUpdatePermissionResponse(const DeviceAttributeUpdatePermissionResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  result_ = from.result_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+}
+
+void DeviceAttributeUpdatePermissionResponse::SharedCtor() {
+  result_ = 0;
+}
+
+DeviceAttributeUpdatePermissionResponse::~DeviceAttributeUpdatePermissionResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+  SharedDtor();
+}
+
+void DeviceAttributeUpdatePermissionResponse::SharedDtor() {
+}
+
+void DeviceAttributeUpdatePermissionResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAttributeUpdatePermissionResponse& DeviceAttributeUpdatePermissionResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAttributeUpdatePermissionResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAttributeUpdatePermissionResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  result_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAttributeUpdatePermissionResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceAttributeUpdatePermissionResponse.ResultType result = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType_IsValid(val))) {
+            _internal_set_result(static_cast<::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAttributeUpdatePermissionResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceAttributeUpdatePermissionResponse.ResultType result = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_result(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+  return target;
+}
+
+size_t DeviceAttributeUpdatePermissionResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceAttributeUpdatePermissionResponse.ResultType result = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_result());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAttributeUpdatePermissionResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAttributeUpdatePermissionResponse*>(
+      &from));
+}
+
+void DeviceAttributeUpdatePermissionResponse::MergeFrom(const DeviceAttributeUpdatePermissionResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_result()) {
+    _internal_set_result(from._internal_result());
+  }
+}
+
+void DeviceAttributeUpdatePermissionResponse::CopyFrom(const DeviceAttributeUpdatePermissionResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAttributeUpdatePermissionResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceAttributeUpdatePermissionResponse::InternalSwap(DeviceAttributeUpdatePermissionResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(result_, other->result_);
+}
+
+std::string DeviceAttributeUpdatePermissionResponse::GetTypeName() const {
+  return "enterprise_management.DeviceAttributeUpdatePermissionResponse";
+}
+
+
+// ===================================================================
+
+void DeviceAttributeUpdateRequest::InitAsDefaultInstance() {
+}
+class DeviceAttributeUpdateRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAttributeUpdateRequest>()._has_bits_);
+  static void set_has_asset_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_location(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+DeviceAttributeUpdateRequest::DeviceAttributeUpdateRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAttributeUpdateRequest)
+}
+DeviceAttributeUpdateRequest::DeviceAttributeUpdateRequest(const DeviceAttributeUpdateRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  asset_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_asset_id()) {
+    asset_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.asset_id_);
+  }
+  location_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_location()) {
+    location_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.location_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAttributeUpdateRequest)
+}
+
+void DeviceAttributeUpdateRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceAttributeUpdateRequest_device_5fmanagement_5fbackend_2eproto.base);
+  asset_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  location_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceAttributeUpdateRequest::~DeviceAttributeUpdateRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAttributeUpdateRequest)
+  SharedDtor();
+}
+
+void DeviceAttributeUpdateRequest::SharedDtor() {
+  asset_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  location_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceAttributeUpdateRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAttributeUpdateRequest& DeviceAttributeUpdateRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAttributeUpdateRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAttributeUpdateRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAttributeUpdateRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      asset_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      location_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAttributeUpdateRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string asset_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_asset_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string location = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_location();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAttributeUpdateRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAttributeUpdateRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string asset_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_asset_id(), target);
+  }
+
+  // optional string location = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_location(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAttributeUpdateRequest)
+  return target;
+}
+
+size_t DeviceAttributeUpdateRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAttributeUpdateRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string asset_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_asset_id());
+    }
+
+    // optional string location = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_location());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAttributeUpdateRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAttributeUpdateRequest*>(
+      &from));
+}
+
+void DeviceAttributeUpdateRequest::MergeFrom(const DeviceAttributeUpdateRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAttributeUpdateRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      asset_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.asset_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      location_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.location_);
+    }
+  }
+}
+
+void DeviceAttributeUpdateRequest::CopyFrom(const DeviceAttributeUpdateRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAttributeUpdateRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAttributeUpdateRequest::IsInitialized() const {
+  return true;
+}
+
+void DeviceAttributeUpdateRequest::InternalSwap(DeviceAttributeUpdateRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  asset_id_.Swap(&other->asset_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  location_.Swap(&other->location_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceAttributeUpdateRequest::GetTypeName() const {
+  return "enterprise_management.DeviceAttributeUpdateRequest";
+}
+
+
+// ===================================================================
+
+void DeviceAttributeUpdateResponse::InitAsDefaultInstance() {
+}
+class DeviceAttributeUpdateResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceAttributeUpdateResponse>()._has_bits_);
+  static void set_has_result(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceAttributeUpdateResponse::DeviceAttributeUpdateResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceAttributeUpdateResponse)
+}
+DeviceAttributeUpdateResponse::DeviceAttributeUpdateResponse(const DeviceAttributeUpdateResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  result_ = from.result_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceAttributeUpdateResponse)
+}
+
+void DeviceAttributeUpdateResponse::SharedCtor() {
+  result_ = 0;
+}
+
+DeviceAttributeUpdateResponse::~DeviceAttributeUpdateResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceAttributeUpdateResponse)
+  SharedDtor();
+}
+
+void DeviceAttributeUpdateResponse::SharedDtor() {
+}
+
+void DeviceAttributeUpdateResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceAttributeUpdateResponse& DeviceAttributeUpdateResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceAttributeUpdateResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceAttributeUpdateResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceAttributeUpdateResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  result_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceAttributeUpdateResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceAttributeUpdateResponse.ResultType result = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceAttributeUpdateResponse_ResultType_IsValid(val))) {
+            _internal_set_result(static_cast<::enterprise_management::DeviceAttributeUpdateResponse_ResultType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceAttributeUpdateResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceAttributeUpdateResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceAttributeUpdateResponse.ResultType result = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_result(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceAttributeUpdateResponse)
+  return target;
+}
+
+size_t DeviceAttributeUpdateResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceAttributeUpdateResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.DeviceAttributeUpdateResponse.ResultType result = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_result());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceAttributeUpdateResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceAttributeUpdateResponse*>(
+      &from));
+}
+
+void DeviceAttributeUpdateResponse::MergeFrom(const DeviceAttributeUpdateResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceAttributeUpdateResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_result()) {
+    _internal_set_result(from._internal_result());
+  }
+}
+
+void DeviceAttributeUpdateResponse::CopyFrom(const DeviceAttributeUpdateResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceAttributeUpdateResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceAttributeUpdateResponse::IsInitialized() const {
+  return true;
+}
+
+void DeviceAttributeUpdateResponse::InternalSwap(DeviceAttributeUpdateResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(result_, other->result_);
+}
+
+std::string DeviceAttributeUpdateResponse::GetTypeName() const {
+  return "enterprise_management.DeviceAttributeUpdateResponse";
+}
+
+
+// ===================================================================
+
+void GcmIdUpdateRequest::InitAsDefaultInstance() {
+}
+class GcmIdUpdateRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<GcmIdUpdateRequest>()._has_bits_);
+  static void set_has_gcm_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+GcmIdUpdateRequest::GcmIdUpdateRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.GcmIdUpdateRequest)
+}
+GcmIdUpdateRequest::GcmIdUpdateRequest(const GcmIdUpdateRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  gcm_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_gcm_id()) {
+    gcm_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gcm_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.GcmIdUpdateRequest)
+}
+
+void GcmIdUpdateRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_GcmIdUpdateRequest_device_5fmanagement_5fbackend_2eproto.base);
+  gcm_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+GcmIdUpdateRequest::~GcmIdUpdateRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.GcmIdUpdateRequest)
+  SharedDtor();
+}
+
+void GcmIdUpdateRequest::SharedDtor() {
+  gcm_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void GcmIdUpdateRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const GcmIdUpdateRequest& GcmIdUpdateRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_GcmIdUpdateRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void GcmIdUpdateRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.GcmIdUpdateRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    gcm_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* GcmIdUpdateRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string gcm_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_gcm_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* GcmIdUpdateRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.GcmIdUpdateRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string gcm_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_gcm_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.GcmIdUpdateRequest)
+  return target;
+}
+
+size_t GcmIdUpdateRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.GcmIdUpdateRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string gcm_id = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_gcm_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void GcmIdUpdateRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const GcmIdUpdateRequest*>(
+      &from));
+}
+
+void GcmIdUpdateRequest::MergeFrom(const GcmIdUpdateRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.GcmIdUpdateRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_gcm_id()) {
+    _has_bits_[0] |= 0x00000001u;
+    gcm_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gcm_id_);
+  }
+}
+
+void GcmIdUpdateRequest::CopyFrom(const GcmIdUpdateRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.GcmIdUpdateRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool GcmIdUpdateRequest::IsInitialized() const {
+  return true;
+}
+
+void GcmIdUpdateRequest::InternalSwap(GcmIdUpdateRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  gcm_id_.Swap(&other->gcm_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string GcmIdUpdateRequest::GetTypeName() const {
+  return "enterprise_management.GcmIdUpdateRequest";
+}
+
+
+// ===================================================================
+
+void GcmIdUpdateResponse::InitAsDefaultInstance() {
+}
+class GcmIdUpdateResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<GcmIdUpdateResponse>()._has_bits_);
+};
+
+GcmIdUpdateResponse::GcmIdUpdateResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.GcmIdUpdateResponse)
+}
+GcmIdUpdateResponse::GcmIdUpdateResponse(const GcmIdUpdateResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.GcmIdUpdateResponse)
+}
+
+void GcmIdUpdateResponse::SharedCtor() {
+}
+
+GcmIdUpdateResponse::~GcmIdUpdateResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.GcmIdUpdateResponse)
+  SharedDtor();
+}
+
+void GcmIdUpdateResponse::SharedDtor() {
+}
+
+void GcmIdUpdateResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const GcmIdUpdateResponse& GcmIdUpdateResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_GcmIdUpdateResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void GcmIdUpdateResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.GcmIdUpdateResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* GcmIdUpdateResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* GcmIdUpdateResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.GcmIdUpdateResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.GcmIdUpdateResponse)
+  return target;
+}
+
+size_t GcmIdUpdateResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.GcmIdUpdateResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void GcmIdUpdateResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const GcmIdUpdateResponse*>(
+      &from));
+}
+
+void GcmIdUpdateResponse::MergeFrom(const GcmIdUpdateResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.GcmIdUpdateResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void GcmIdUpdateResponse::CopyFrom(const GcmIdUpdateResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.GcmIdUpdateResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool GcmIdUpdateResponse::IsInitialized() const {
+  return true;
+}
+
+void GcmIdUpdateResponse::InternalSwap(GcmIdUpdateResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string GcmIdUpdateResponse::GetTypeName() const {
+  return "enterprise_management.GcmIdUpdateResponse";
+}
+
+
+// ===================================================================
+
+void CheckAndroidManagementRequest::InitAsDefaultInstance() {
+}
+class CheckAndroidManagementRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CheckAndroidManagementRequest>()._has_bits_);
+};
+
+CheckAndroidManagementRequest::CheckAndroidManagementRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CheckAndroidManagementRequest)
+}
+CheckAndroidManagementRequest::CheckAndroidManagementRequest(const CheckAndroidManagementRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CheckAndroidManagementRequest)
+}
+
+void CheckAndroidManagementRequest::SharedCtor() {
+}
+
+CheckAndroidManagementRequest::~CheckAndroidManagementRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CheckAndroidManagementRequest)
+  SharedDtor();
+}
+
+void CheckAndroidManagementRequest::SharedDtor() {
+}
+
+void CheckAndroidManagementRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CheckAndroidManagementRequest& CheckAndroidManagementRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CheckAndroidManagementRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CheckAndroidManagementRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CheckAndroidManagementRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CheckAndroidManagementRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CheckAndroidManagementRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CheckAndroidManagementRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CheckAndroidManagementRequest)
+  return target;
+}
+
+size_t CheckAndroidManagementRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CheckAndroidManagementRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CheckAndroidManagementRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CheckAndroidManagementRequest*>(
+      &from));
+}
+
+void CheckAndroidManagementRequest::MergeFrom(const CheckAndroidManagementRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CheckAndroidManagementRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void CheckAndroidManagementRequest::CopyFrom(const CheckAndroidManagementRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CheckAndroidManagementRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CheckAndroidManagementRequest::IsInitialized() const {
+  return true;
+}
+
+void CheckAndroidManagementRequest::InternalSwap(CheckAndroidManagementRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string CheckAndroidManagementRequest::GetTypeName() const {
+  return "enterprise_management.CheckAndroidManagementRequest";
+}
+
+
+// ===================================================================
+
+void CheckAndroidManagementResponse::InitAsDefaultInstance() {
+}
+class CheckAndroidManagementResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CheckAndroidManagementResponse>()._has_bits_);
+};
+
+CheckAndroidManagementResponse::CheckAndroidManagementResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CheckAndroidManagementResponse)
+}
+CheckAndroidManagementResponse::CheckAndroidManagementResponse(const CheckAndroidManagementResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CheckAndroidManagementResponse)
+}
+
+void CheckAndroidManagementResponse::SharedCtor() {
+}
+
+CheckAndroidManagementResponse::~CheckAndroidManagementResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CheckAndroidManagementResponse)
+  SharedDtor();
+}
+
+void CheckAndroidManagementResponse::SharedDtor() {
+}
+
+void CheckAndroidManagementResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CheckAndroidManagementResponse& CheckAndroidManagementResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CheckAndroidManagementResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CheckAndroidManagementResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CheckAndroidManagementResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CheckAndroidManagementResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CheckAndroidManagementResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CheckAndroidManagementResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CheckAndroidManagementResponse)
+  return target;
+}
+
+size_t CheckAndroidManagementResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CheckAndroidManagementResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CheckAndroidManagementResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CheckAndroidManagementResponse*>(
+      &from));
+}
+
+void CheckAndroidManagementResponse::MergeFrom(const CheckAndroidManagementResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CheckAndroidManagementResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void CheckAndroidManagementResponse::CopyFrom(const CheckAndroidManagementResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CheckAndroidManagementResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CheckAndroidManagementResponse::IsInitialized() const {
+  return true;
+}
+
+void CheckAndroidManagementResponse::InternalSwap(CheckAndroidManagementResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string CheckAndroidManagementResponse::GetTypeName() const {
+  return "enterprise_management.CheckAndroidManagementResponse";
+}
+
+
+// ===================================================================
+
+void CertificateBasedDeviceRegisterRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_CertificateBasedDeviceRegisterRequest_default_instance_._instance.get_mutable()->signed_request_ = const_cast< ::enterprise_management::SignedData*>(
+      ::enterprise_management::SignedData::internal_default_instance());
+}
+class CertificateBasedDeviceRegisterRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CertificateBasedDeviceRegisterRequest>()._has_bits_);
+  static const ::enterprise_management::SignedData& signed_request(const CertificateBasedDeviceRegisterRequest* msg);
+  static void set_has_signed_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::SignedData&
+CertificateBasedDeviceRegisterRequest::_Internal::signed_request(const CertificateBasedDeviceRegisterRequest* msg) {
+  return *msg->signed_request_;
+}
+CertificateBasedDeviceRegisterRequest::CertificateBasedDeviceRegisterRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CertificateBasedDeviceRegisterRequest)
+}
+CertificateBasedDeviceRegisterRequest::CertificateBasedDeviceRegisterRequest(const CertificateBasedDeviceRegisterRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_signed_request()) {
+    signed_request_ = new ::enterprise_management::SignedData(*from.signed_request_);
+  } else {
+    signed_request_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CertificateBasedDeviceRegisterRequest)
+}
+
+void CertificateBasedDeviceRegisterRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CertificateBasedDeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto.base);
+  signed_request_ = nullptr;
+}
+
+CertificateBasedDeviceRegisterRequest::~CertificateBasedDeviceRegisterRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CertificateBasedDeviceRegisterRequest)
+  SharedDtor();
+}
+
+void CertificateBasedDeviceRegisterRequest::SharedDtor() {
+  if (this != internal_default_instance()) delete signed_request_;
+}
+
+void CertificateBasedDeviceRegisterRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CertificateBasedDeviceRegisterRequest& CertificateBasedDeviceRegisterRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CertificateBasedDeviceRegisterRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CertificateBasedDeviceRegisterRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CertificateBasedDeviceRegisterRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(signed_request_ != nullptr);
+    signed_request_->Clear();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CertificateBasedDeviceRegisterRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.SignedData signed_request = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_signed_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CertificateBasedDeviceRegisterRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CertificateBasedDeviceRegisterRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.SignedData signed_request = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::signed_request(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CertificateBasedDeviceRegisterRequest)
+  return target;
+}
+
+size_t CertificateBasedDeviceRegisterRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CertificateBasedDeviceRegisterRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.SignedData signed_request = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *signed_request_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CertificateBasedDeviceRegisterRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CertificateBasedDeviceRegisterRequest*>(
+      &from));
+}
+
+void CertificateBasedDeviceRegisterRequest::MergeFrom(const CertificateBasedDeviceRegisterRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CertificateBasedDeviceRegisterRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_signed_request()) {
+    _internal_mutable_signed_request()->::enterprise_management::SignedData::MergeFrom(from._internal_signed_request());
+  }
+}
+
+void CertificateBasedDeviceRegisterRequest::CopyFrom(const CertificateBasedDeviceRegisterRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CertificateBasedDeviceRegisterRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CertificateBasedDeviceRegisterRequest::IsInitialized() const {
+  return true;
+}
+
+void CertificateBasedDeviceRegisterRequest::InternalSwap(CertificateBasedDeviceRegisterRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(signed_request_, other->signed_request_);
+}
+
+std::string CertificateBasedDeviceRegisterRequest::GetTypeName() const {
+  return "enterprise_management.CertificateBasedDeviceRegisterRequest";
+}
+
+
+// ===================================================================
+
+void DeviceRegisterConfiguration::InitAsDefaultInstance() {
+}
+class DeviceRegisterConfiguration::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceRegisterConfiguration>()._has_bits_);
+  static void set_has_device_owner(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceRegisterConfiguration::DeviceRegisterConfiguration()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceRegisterConfiguration)
+}
+DeviceRegisterConfiguration::DeviceRegisterConfiguration(const DeviceRegisterConfiguration& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_owner_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_owner()) {
+    device_owner_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_owner_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceRegisterConfiguration)
+}
+
+void DeviceRegisterConfiguration::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceRegisterConfiguration_device_5fmanagement_5fbackend_2eproto.base);
+  device_owner_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DeviceRegisterConfiguration::~DeviceRegisterConfiguration() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceRegisterConfiguration)
+  SharedDtor();
+}
+
+void DeviceRegisterConfiguration::SharedDtor() {
+  device_owner_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DeviceRegisterConfiguration::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceRegisterConfiguration& DeviceRegisterConfiguration::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceRegisterConfiguration_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceRegisterConfiguration::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceRegisterConfiguration)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    device_owner_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceRegisterConfiguration::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string device_owner = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_device_owner();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceRegisterConfiguration::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceRegisterConfiguration)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string device_owner = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_device_owner(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceRegisterConfiguration)
+  return target;
+}
+
+size_t DeviceRegisterConfiguration::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceRegisterConfiguration)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string device_owner = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_device_owner());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceRegisterConfiguration::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceRegisterConfiguration*>(
+      &from));
+}
+
+void DeviceRegisterConfiguration::MergeFrom(const DeviceRegisterConfiguration& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceRegisterConfiguration)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_device_owner()) {
+    _has_bits_[0] |= 0x00000001u;
+    device_owner_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_owner_);
+  }
+}
+
+void DeviceRegisterConfiguration::CopyFrom(const DeviceRegisterConfiguration& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceRegisterConfiguration)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceRegisterConfiguration::IsInitialized() const {
+  return true;
+}
+
+void DeviceRegisterConfiguration::InternalSwap(DeviceRegisterConfiguration* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_owner_.Swap(&other->device_owner_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DeviceRegisterConfiguration::GetTypeName() const {
+  return "enterprise_management.DeviceRegisterConfiguration";
+}
+
+
+// ===================================================================
+
+void CertificateBasedDeviceRegistrationData::InitAsDefaultInstance() {
+  ::enterprise_management::_CertificateBasedDeviceRegistrationData_default_instance_._instance.get_mutable()->device_register_request_ = const_cast< ::enterprise_management::DeviceRegisterRequest*>(
+      ::enterprise_management::DeviceRegisterRequest::internal_default_instance());
+  ::enterprise_management::_CertificateBasedDeviceRegistrationData_default_instance_._instance.get_mutable()->device_register_configuration_ = const_cast< ::enterprise_management::DeviceRegisterConfiguration*>(
+      ::enterprise_management::DeviceRegisterConfiguration::internal_default_instance());
+}
+class CertificateBasedDeviceRegistrationData::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CertificateBasedDeviceRegistrationData>()._has_bits_);
+  static void set_has_certificate_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_device_certificate(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::DeviceRegisterRequest& device_register_request(const CertificateBasedDeviceRegistrationData* msg);
+  static void set_has_device_register_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::enterprise_management::DeviceRegisterConfiguration& device_register_configuration(const CertificateBasedDeviceRegistrationData* msg);
+  static void set_has_device_register_configuration(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+const ::enterprise_management::DeviceRegisterRequest&
+CertificateBasedDeviceRegistrationData::_Internal::device_register_request(const CertificateBasedDeviceRegistrationData* msg) {
+  return *msg->device_register_request_;
+}
+const ::enterprise_management::DeviceRegisterConfiguration&
+CertificateBasedDeviceRegistrationData::_Internal::device_register_configuration(const CertificateBasedDeviceRegistrationData* msg) {
+  return *msg->device_register_configuration_;
+}
+CertificateBasedDeviceRegistrationData::CertificateBasedDeviceRegistrationData()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CertificateBasedDeviceRegistrationData)
+}
+CertificateBasedDeviceRegistrationData::CertificateBasedDeviceRegistrationData(const CertificateBasedDeviceRegistrationData& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  device_certificate_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_certificate()) {
+    device_certificate_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_certificate_);
+  }
+  if (from._internal_has_device_register_request()) {
+    device_register_request_ = new ::enterprise_management::DeviceRegisterRequest(*from.device_register_request_);
+  } else {
+    device_register_request_ = nullptr;
+  }
+  if (from._internal_has_device_register_configuration()) {
+    device_register_configuration_ = new ::enterprise_management::DeviceRegisterConfiguration(*from.device_register_configuration_);
+  } else {
+    device_register_configuration_ = nullptr;
+  }
+  certificate_type_ = from.certificate_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CertificateBasedDeviceRegistrationData)
+}
+
+void CertificateBasedDeviceRegistrationData::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CertificateBasedDeviceRegistrationData_device_5fmanagement_5fbackend_2eproto.base);
+  device_certificate_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&device_register_request_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&certificate_type_) -
+      reinterpret_cast<char*>(&device_register_request_)) + sizeof(certificate_type_));
+}
+
+CertificateBasedDeviceRegistrationData::~CertificateBasedDeviceRegistrationData() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CertificateBasedDeviceRegistrationData)
+  SharedDtor();
+}
+
+void CertificateBasedDeviceRegistrationData::SharedDtor() {
+  device_certificate_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete device_register_request_;
+  if (this != internal_default_instance()) delete device_register_configuration_;
+}
+
+void CertificateBasedDeviceRegistrationData::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CertificateBasedDeviceRegistrationData& CertificateBasedDeviceRegistrationData::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CertificateBasedDeviceRegistrationData_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CertificateBasedDeviceRegistrationData::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CertificateBasedDeviceRegistrationData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      device_certificate_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(device_register_request_ != nullptr);
+      device_register_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(device_register_configuration_ != nullptr);
+      device_register_configuration_->Clear();
+    }
+  }
+  certificate_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CertificateBasedDeviceRegistrationData::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.CertificateBasedDeviceRegistrationData.CertificateType certificate_type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType_IsValid(val))) {
+            _internal_set_certificate_type(static_cast<::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bytes device_certificate = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_device_certificate();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterRequest device_register_request = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_register_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterConfiguration device_register_configuration = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_register_configuration(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CertificateBasedDeviceRegistrationData::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CertificateBasedDeviceRegistrationData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.CertificateBasedDeviceRegistrationData.CertificateType certificate_type = 1;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_certificate_type(), target);
+  }
+
+  // optional bytes device_certificate = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_device_certificate(), target);
+  }
+
+  // optional .enterprise_management.DeviceRegisterRequest device_register_request = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::device_register_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceRegisterConfiguration device_register_configuration = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::device_register_configuration(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CertificateBasedDeviceRegistrationData)
+  return target;
+}
+
+size_t CertificateBasedDeviceRegistrationData::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CertificateBasedDeviceRegistrationData)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional bytes device_certificate = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_device_certificate());
+    }
+
+    // optional .enterprise_management.DeviceRegisterRequest device_register_request = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_register_request_);
+    }
+
+    // optional .enterprise_management.DeviceRegisterConfiguration device_register_configuration = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_register_configuration_);
+    }
+
+    // optional .enterprise_management.CertificateBasedDeviceRegistrationData.CertificateType certificate_type = 1;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_certificate_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CertificateBasedDeviceRegistrationData::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CertificateBasedDeviceRegistrationData*>(
+      &from));
+}
+
+void CertificateBasedDeviceRegistrationData::MergeFrom(const CertificateBasedDeviceRegistrationData& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CertificateBasedDeviceRegistrationData)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      device_certificate_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_certificate_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_device_register_request()->::enterprise_management::DeviceRegisterRequest::MergeFrom(from._internal_device_register_request());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_device_register_configuration()->::enterprise_management::DeviceRegisterConfiguration::MergeFrom(from._internal_device_register_configuration());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      certificate_type_ = from.certificate_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void CertificateBasedDeviceRegistrationData::CopyFrom(const CertificateBasedDeviceRegistrationData& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CertificateBasedDeviceRegistrationData)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CertificateBasedDeviceRegistrationData::IsInitialized() const {
+  return true;
+}
+
+void CertificateBasedDeviceRegistrationData::InternalSwap(CertificateBasedDeviceRegistrationData* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  device_certificate_.Swap(&other->device_certificate_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(device_register_request_, other->device_register_request_);
+  swap(device_register_configuration_, other->device_register_configuration_);
+  swap(certificate_type_, other->certificate_type_);
+}
+
+std::string CertificateBasedDeviceRegistrationData::GetTypeName() const {
+  return "enterprise_management.CertificateBasedDeviceRegistrationData";
+}
+
+
+// ===================================================================
+
+void RegisterBrowserRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_RegisterBrowserRequest_default_instance_._instance.get_mutable()->browser_device_identifier_ = const_cast< ::enterprise_management::BrowserDeviceIdentifier*>(
+      ::enterprise_management::BrowserDeviceIdentifier::internal_default_instance());
+}
+class RegisterBrowserRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RegisterBrowserRequest>()._has_bits_);
+  static void set_has_machine_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_os_platform(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_os_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::BrowserDeviceIdentifier& browser_device_identifier(const RegisterBrowserRequest* msg);
+  static void set_has_browser_device_identifier(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_device_model(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_brand_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+const ::enterprise_management::BrowserDeviceIdentifier&
+RegisterBrowserRequest::_Internal::browser_device_identifier(const RegisterBrowserRequest* msg) {
+  return *msg->browser_device_identifier_;
+}
+RegisterBrowserRequest::RegisterBrowserRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RegisterBrowserRequest)
+}
+RegisterBrowserRequest::RegisterBrowserRequest(const RegisterBrowserRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  machine_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_machine_name()) {
+    machine_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_name_);
+  }
+  os_platform_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_os_platform()) {
+    os_platform_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_platform_);
+  }
+  os_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_os_version()) {
+    os_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_version_);
+  }
+  device_model_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_model()) {
+    device_model_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_model_);
+  }
+  brand_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_brand_name()) {
+    brand_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_name_);
+  }
+  if (from._internal_has_browser_device_identifier()) {
+    browser_device_identifier_ = new ::enterprise_management::BrowserDeviceIdentifier(*from.browser_device_identifier_);
+  } else {
+    browser_device_identifier_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RegisterBrowserRequest)
+}
+
+void RegisterBrowserRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RegisterBrowserRequest_device_5fmanagement_5fbackend_2eproto.base);
+  machine_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_platform_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_model_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  browser_device_identifier_ = nullptr;
+}
+
+RegisterBrowserRequest::~RegisterBrowserRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RegisterBrowserRequest)
+  SharedDtor();
+}
+
+void RegisterBrowserRequest::SharedDtor() {
+  machine_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_platform_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_model_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete browser_device_identifier_;
+}
+
+void RegisterBrowserRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RegisterBrowserRequest& RegisterBrowserRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RegisterBrowserRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RegisterBrowserRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RegisterBrowserRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      machine_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      os_platform_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      os_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      device_model_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      brand_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(browser_device_identifier_ != nullptr);
+      browser_device_identifier_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RegisterBrowserRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string machine_name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_machine_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string os_platform = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_os_platform();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string os_version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_os_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_device_identifier(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_model = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          auto str = _internal_mutable_device_model();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string brand_name = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_brand_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RegisterBrowserRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RegisterBrowserRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string machine_name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_machine_name(), target);
+  }
+
+  // optional string os_platform = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_os_platform(), target);
+  }
+
+  // optional string os_version = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_os_version(), target);
+  }
+
+  // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 4;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::browser_device_identifier(this), target, stream);
+  }
+
+  // optional string device_model = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        5, this->_internal_device_model(), target);
+  }
+
+  // optional string brand_name = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_brand_name(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RegisterBrowserRequest)
+  return target;
+}
+
+size_t RegisterBrowserRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RegisterBrowserRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string machine_name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_machine_name());
+    }
+
+    // optional string os_platform = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_os_platform());
+    }
+
+    // optional string os_version = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_os_version());
+    }
+
+    // optional string device_model = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_model());
+    }
+
+    // optional string brand_name = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_brand_name());
+    }
+
+    // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 4;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *browser_device_identifier_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RegisterBrowserRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RegisterBrowserRequest*>(
+      &from));
+}
+
+void RegisterBrowserRequest::MergeFrom(const RegisterBrowserRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RegisterBrowserRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      machine_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.machine_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      os_platform_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_platform_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      os_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_version_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      device_model_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_model_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      brand_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_name_);
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_browser_device_identifier()->::enterprise_management::BrowserDeviceIdentifier::MergeFrom(from._internal_browser_device_identifier());
+    }
+  }
+}
+
+void RegisterBrowserRequest::CopyFrom(const RegisterBrowserRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RegisterBrowserRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RegisterBrowserRequest::IsInitialized() const {
+  return true;
+}
+
+void RegisterBrowserRequest::InternalSwap(RegisterBrowserRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  machine_name_.Swap(&other->machine_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  os_platform_.Swap(&other->os_platform_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  os_version_.Swap(&other->os_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_model_.Swap(&other->device_model_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  brand_name_.Swap(&other->brand_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(browser_device_identifier_, other->browser_device_identifier_);
+}
+
+std::string RegisterBrowserRequest::GetTypeName() const {
+  return "enterprise_management.RegisterBrowserRequest";
+}
+
+
+// ===================================================================
+
+void ActiveDirectoryEnrollPlayUserRequest::InitAsDefaultInstance() {
+}
+class ActiveDirectoryEnrollPlayUserRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ActiveDirectoryEnrollPlayUserRequest>()._has_bits_);
+  static void set_has_auth_session_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ActiveDirectoryEnrollPlayUserRequest::ActiveDirectoryEnrollPlayUserRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+}
+ActiveDirectoryEnrollPlayUserRequest::ActiveDirectoryEnrollPlayUserRequest(const ActiveDirectoryEnrollPlayUserRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  auth_session_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_auth_session_id()) {
+    auth_session_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_session_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+}
+
+void ActiveDirectoryEnrollPlayUserRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ActiveDirectoryEnrollPlayUserRequest_device_5fmanagement_5fbackend_2eproto.base);
+  auth_session_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+ActiveDirectoryEnrollPlayUserRequest::~ActiveDirectoryEnrollPlayUserRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+  SharedDtor();
+}
+
+void ActiveDirectoryEnrollPlayUserRequest::SharedDtor() {
+  auth_session_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ActiveDirectoryEnrollPlayUserRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ActiveDirectoryEnrollPlayUserRequest& ActiveDirectoryEnrollPlayUserRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ActiveDirectoryEnrollPlayUserRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ActiveDirectoryEnrollPlayUserRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    auth_session_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ActiveDirectoryEnrollPlayUserRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string auth_session_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_auth_session_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ActiveDirectoryEnrollPlayUserRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string auth_session_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_auth_session_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+  return target;
+}
+
+size_t ActiveDirectoryEnrollPlayUserRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string auth_session_id = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_auth_session_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ActiveDirectoryEnrollPlayUserRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ActiveDirectoryEnrollPlayUserRequest*>(
+      &from));
+}
+
+void ActiveDirectoryEnrollPlayUserRequest::MergeFrom(const ActiveDirectoryEnrollPlayUserRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_auth_session_id()) {
+    _has_bits_[0] |= 0x00000001u;
+    auth_session_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_session_id_);
+  }
+}
+
+void ActiveDirectoryEnrollPlayUserRequest::CopyFrom(const ActiveDirectoryEnrollPlayUserRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ActiveDirectoryEnrollPlayUserRequest::IsInitialized() const {
+  return true;
+}
+
+void ActiveDirectoryEnrollPlayUserRequest::InternalSwap(ActiveDirectoryEnrollPlayUserRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  auth_session_id_.Swap(&other->auth_session_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string ActiveDirectoryEnrollPlayUserRequest::GetTypeName() const {
+  return "enterprise_management.ActiveDirectoryEnrollPlayUserRequest";
+}
+
+
+// ===================================================================
+
+void ActiveDirectoryEnrollPlayUserResponse::InitAsDefaultInstance() {
+  ::enterprise_management::_ActiveDirectoryEnrollPlayUserResponse_default_instance_._instance.get_mutable()->saml_parameters_ = const_cast< ::enterprise_management::SamlParametersProto*>(
+      ::enterprise_management::SamlParametersProto::internal_default_instance());
+}
+class ActiveDirectoryEnrollPlayUserResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ActiveDirectoryEnrollPlayUserResponse>()._has_bits_);
+  static void set_has_enrollment_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_user_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::enterprise_management::SamlParametersProto& saml_parameters(const ActiveDirectoryEnrollPlayUserResponse* msg);
+  static void set_has_saml_parameters(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+const ::enterprise_management::SamlParametersProto&
+ActiveDirectoryEnrollPlayUserResponse::_Internal::saml_parameters(const ActiveDirectoryEnrollPlayUserResponse* msg) {
+  return *msg->saml_parameters_;
+}
+ActiveDirectoryEnrollPlayUserResponse::ActiveDirectoryEnrollPlayUserResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+}
+ActiveDirectoryEnrollPlayUserResponse::ActiveDirectoryEnrollPlayUserResponse(const ActiveDirectoryEnrollPlayUserResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  enrollment_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_enrollment_token()) {
+    enrollment_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.enrollment_token_);
+  }
+  user_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_user_id()) {
+    user_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_id_);
+  }
+  if (from._internal_has_saml_parameters()) {
+    saml_parameters_ = new ::enterprise_management::SamlParametersProto(*from.saml_parameters_);
+  } else {
+    saml_parameters_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+}
+
+void ActiveDirectoryEnrollPlayUserResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ActiveDirectoryEnrollPlayUserResponse_device_5fmanagement_5fbackend_2eproto.base);
+  enrollment_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  user_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  saml_parameters_ = nullptr;
+}
+
+ActiveDirectoryEnrollPlayUserResponse::~ActiveDirectoryEnrollPlayUserResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+  SharedDtor();
+}
+
+void ActiveDirectoryEnrollPlayUserResponse::SharedDtor() {
+  enrollment_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  user_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete saml_parameters_;
+}
+
+void ActiveDirectoryEnrollPlayUserResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ActiveDirectoryEnrollPlayUserResponse& ActiveDirectoryEnrollPlayUserResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ActiveDirectoryEnrollPlayUserResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ActiveDirectoryEnrollPlayUserResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      enrollment_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      user_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(saml_parameters_ != nullptr);
+      saml_parameters_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ActiveDirectoryEnrollPlayUserResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string enrollment_token = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_enrollment_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string user_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_user_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SamlParametersProto saml_parameters = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_saml_parameters(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ActiveDirectoryEnrollPlayUserResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string enrollment_token = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_enrollment_token(), target);
+  }
+
+  // optional string user_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_user_id(), target);
+  }
+
+  // optional .enterprise_management.SamlParametersProto saml_parameters = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::saml_parameters(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+  return target;
+}
+
+size_t ActiveDirectoryEnrollPlayUserResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string enrollment_token = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_enrollment_token());
+    }
+
+    // optional string user_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_user_id());
+    }
+
+    // optional .enterprise_management.SamlParametersProto saml_parameters = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *saml_parameters_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ActiveDirectoryEnrollPlayUserResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ActiveDirectoryEnrollPlayUserResponse*>(
+      &from));
+}
+
+void ActiveDirectoryEnrollPlayUserResponse::MergeFrom(const ActiveDirectoryEnrollPlayUserResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      enrollment_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.enrollment_token_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      user_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_id_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_saml_parameters()->::enterprise_management::SamlParametersProto::MergeFrom(from._internal_saml_parameters());
+    }
+  }
+}
+
+void ActiveDirectoryEnrollPlayUserResponse::CopyFrom(const ActiveDirectoryEnrollPlayUserResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ActiveDirectoryEnrollPlayUserResponse::IsInitialized() const {
+  return true;
+}
+
+void ActiveDirectoryEnrollPlayUserResponse::InternalSwap(ActiveDirectoryEnrollPlayUserResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  enrollment_token_.Swap(&other->enrollment_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  user_id_.Swap(&other->user_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(saml_parameters_, other->saml_parameters_);
+}
+
+std::string ActiveDirectoryEnrollPlayUserResponse::GetTypeName() const {
+  return "enterprise_management.ActiveDirectoryEnrollPlayUserResponse";
+}
+
+
+// ===================================================================
+
+void SamlParametersProto::InitAsDefaultInstance() {
+}
+class SamlParametersProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SamlParametersProto>()._has_bits_);
+  static void set_has_auth_redirect_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_auth_session_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+SamlParametersProto::SamlParametersProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SamlParametersProto)
+}
+SamlParametersProto::SamlParametersProto(const SamlParametersProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  auth_redirect_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_auth_redirect_url()) {
+    auth_redirect_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_redirect_url_);
+  }
+  auth_session_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_auth_session_id()) {
+    auth_session_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_session_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SamlParametersProto)
+}
+
+void SamlParametersProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SamlParametersProto_device_5fmanagement_5fbackend_2eproto.base);
+  auth_redirect_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  auth_session_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+SamlParametersProto::~SamlParametersProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SamlParametersProto)
+  SharedDtor();
+}
+
+void SamlParametersProto::SharedDtor() {
+  auth_redirect_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  auth_session_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SamlParametersProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SamlParametersProto& SamlParametersProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SamlParametersProto_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SamlParametersProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SamlParametersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      auth_redirect_url_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      auth_session_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SamlParametersProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string auth_redirect_url = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_auth_redirect_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string auth_session_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_auth_session_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SamlParametersProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SamlParametersProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string auth_redirect_url = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_auth_redirect_url(), target);
+  }
+
+  // optional string auth_session_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_auth_session_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SamlParametersProto)
+  return target;
+}
+
+size_t SamlParametersProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SamlParametersProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string auth_redirect_url = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_auth_redirect_url());
+    }
+
+    // optional string auth_session_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_auth_session_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SamlParametersProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SamlParametersProto*>(
+      &from));
+}
+
+void SamlParametersProto::MergeFrom(const SamlParametersProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SamlParametersProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      auth_redirect_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_redirect_url_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      auth_session_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_session_id_);
+    }
+  }
+}
+
+void SamlParametersProto::CopyFrom(const SamlParametersProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SamlParametersProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SamlParametersProto::IsInitialized() const {
+  return true;
+}
+
+void SamlParametersProto::InternalSwap(SamlParametersProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  auth_redirect_url_.Swap(&other->auth_redirect_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  auth_session_id_.Swap(&other->auth_session_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string SamlParametersProto::GetTypeName() const {
+  return "enterprise_management.SamlParametersProto";
+}
+
+
+// ===================================================================
+
+void PublicSamlUserRequest::InitAsDefaultInstance() {
+}
+class PublicSamlUserRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PublicSamlUserRequest>()._has_bits_);
+  static void set_has_account_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+PublicSamlUserRequest::PublicSamlUserRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PublicSamlUserRequest)
+}
+PublicSamlUserRequest::PublicSamlUserRequest(const PublicSamlUserRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  account_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_account_id()) {
+    account_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.account_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PublicSamlUserRequest)
+}
+
+void PublicSamlUserRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PublicSamlUserRequest_device_5fmanagement_5fbackend_2eproto.base);
+  account_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+PublicSamlUserRequest::~PublicSamlUserRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PublicSamlUserRequest)
+  SharedDtor();
+}
+
+void PublicSamlUserRequest::SharedDtor() {
+  account_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PublicSamlUserRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PublicSamlUserRequest& PublicSamlUserRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PublicSamlUserRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PublicSamlUserRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PublicSamlUserRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    account_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PublicSamlUserRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string account_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_account_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PublicSamlUserRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PublicSamlUserRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string account_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_account_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PublicSamlUserRequest)
+  return target;
+}
+
+size_t PublicSamlUserRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PublicSamlUserRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string account_id = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_account_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PublicSamlUserRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PublicSamlUserRequest*>(
+      &from));
+}
+
+void PublicSamlUserRequest::MergeFrom(const PublicSamlUserRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PublicSamlUserRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_account_id()) {
+    _has_bits_[0] |= 0x00000001u;
+    account_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.account_id_);
+  }
+}
+
+void PublicSamlUserRequest::CopyFrom(const PublicSamlUserRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PublicSamlUserRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PublicSamlUserRequest::IsInitialized() const {
+  return true;
+}
+
+void PublicSamlUserRequest::InternalSwap(PublicSamlUserRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  account_id_.Swap(&other->account_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string PublicSamlUserRequest::GetTypeName() const {
+  return "enterprise_management.PublicSamlUserRequest";
+}
+
+
+// ===================================================================
+
+void PublicSamlUserResponse::InitAsDefaultInstance() {
+  ::enterprise_management::_PublicSamlUserResponse_default_instance_._instance.get_mutable()->saml_parameters_ = const_cast< ::enterprise_management::SamlParametersProto*>(
+      ::enterprise_management::SamlParametersProto::internal_default_instance());
+}
+class PublicSamlUserResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PublicSamlUserResponse>()._has_bits_);
+  static const ::enterprise_management::SamlParametersProto& saml_parameters(const PublicSamlUserResponse* msg);
+  static void set_has_saml_parameters(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::SamlParametersProto&
+PublicSamlUserResponse::_Internal::saml_parameters(const PublicSamlUserResponse* msg) {
+  return *msg->saml_parameters_;
+}
+PublicSamlUserResponse::PublicSamlUserResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PublicSamlUserResponse)
+}
+PublicSamlUserResponse::PublicSamlUserResponse(const PublicSamlUserResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_saml_parameters()) {
+    saml_parameters_ = new ::enterprise_management::SamlParametersProto(*from.saml_parameters_);
+  } else {
+    saml_parameters_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PublicSamlUserResponse)
+}
+
+void PublicSamlUserResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PublicSamlUserResponse_device_5fmanagement_5fbackend_2eproto.base);
+  saml_parameters_ = nullptr;
+}
+
+PublicSamlUserResponse::~PublicSamlUserResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PublicSamlUserResponse)
+  SharedDtor();
+}
+
+void PublicSamlUserResponse::SharedDtor() {
+  if (this != internal_default_instance()) delete saml_parameters_;
+}
+
+void PublicSamlUserResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PublicSamlUserResponse& PublicSamlUserResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PublicSamlUserResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PublicSamlUserResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PublicSamlUserResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(saml_parameters_ != nullptr);
+    saml_parameters_->Clear();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PublicSamlUserResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.SamlParametersProto saml_parameters = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_saml_parameters(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PublicSamlUserResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PublicSamlUserResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.SamlParametersProto saml_parameters = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::saml_parameters(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PublicSamlUserResponse)
+  return target;
+}
+
+size_t PublicSamlUserResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PublicSamlUserResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.SamlParametersProto saml_parameters = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *saml_parameters_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PublicSamlUserResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PublicSamlUserResponse*>(
+      &from));
+}
+
+void PublicSamlUserResponse::MergeFrom(const PublicSamlUserResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PublicSamlUserResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_saml_parameters()) {
+    _internal_mutable_saml_parameters()->::enterprise_management::SamlParametersProto::MergeFrom(from._internal_saml_parameters());
+  }
+}
+
+void PublicSamlUserResponse::CopyFrom(const PublicSamlUserResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PublicSamlUserResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PublicSamlUserResponse::IsInitialized() const {
+  return true;
+}
+
+void PublicSamlUserResponse::InternalSwap(PublicSamlUserResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(saml_parameters_, other->saml_parameters_);
+}
+
+std::string PublicSamlUserResponse::GetTypeName() const {
+  return "enterprise_management.PublicSamlUserResponse";
+}
+
+
+// ===================================================================
+
+void ActiveDirectoryPlayActivityRequest::InitAsDefaultInstance() {
+}
+class ActiveDirectoryPlayActivityRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ActiveDirectoryPlayActivityRequest>()._has_bits_);
+  static void set_has_user_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ActiveDirectoryPlayActivityRequest::ActiveDirectoryPlayActivityRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ActiveDirectoryPlayActivityRequest)
+}
+ActiveDirectoryPlayActivityRequest::ActiveDirectoryPlayActivityRequest(const ActiveDirectoryPlayActivityRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  user_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_user_id()) {
+    user_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ActiveDirectoryPlayActivityRequest)
+}
+
+void ActiveDirectoryPlayActivityRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ActiveDirectoryPlayActivityRequest_device_5fmanagement_5fbackend_2eproto.base);
+  user_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+ActiveDirectoryPlayActivityRequest::~ActiveDirectoryPlayActivityRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ActiveDirectoryPlayActivityRequest)
+  SharedDtor();
+}
+
+void ActiveDirectoryPlayActivityRequest::SharedDtor() {
+  user_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ActiveDirectoryPlayActivityRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ActiveDirectoryPlayActivityRequest& ActiveDirectoryPlayActivityRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ActiveDirectoryPlayActivityRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ActiveDirectoryPlayActivityRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ActiveDirectoryPlayActivityRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    user_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ActiveDirectoryPlayActivityRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string user_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_user_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ActiveDirectoryPlayActivityRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ActiveDirectoryPlayActivityRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string user_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_user_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ActiveDirectoryPlayActivityRequest)
+  return target;
+}
+
+size_t ActiveDirectoryPlayActivityRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ActiveDirectoryPlayActivityRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string user_id = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_user_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ActiveDirectoryPlayActivityRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ActiveDirectoryPlayActivityRequest*>(
+      &from));
+}
+
+void ActiveDirectoryPlayActivityRequest::MergeFrom(const ActiveDirectoryPlayActivityRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ActiveDirectoryPlayActivityRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_user_id()) {
+    _has_bits_[0] |= 0x00000001u;
+    user_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_id_);
+  }
+}
+
+void ActiveDirectoryPlayActivityRequest::CopyFrom(const ActiveDirectoryPlayActivityRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ActiveDirectoryPlayActivityRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ActiveDirectoryPlayActivityRequest::IsInitialized() const {
+  return true;
+}
+
+void ActiveDirectoryPlayActivityRequest::InternalSwap(ActiveDirectoryPlayActivityRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  user_id_.Swap(&other->user_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string ActiveDirectoryPlayActivityRequest::GetTypeName() const {
+  return "enterprise_management.ActiveDirectoryPlayActivityRequest";
+}
+
+
+// ===================================================================
+
+void ActiveDirectoryPlayActivityResponse::InitAsDefaultInstance() {
+}
+class ActiveDirectoryPlayActivityResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ActiveDirectoryPlayActivityResponse>()._has_bits_);
+};
+
+ActiveDirectoryPlayActivityResponse::ActiveDirectoryPlayActivityResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ActiveDirectoryPlayActivityResponse)
+}
+ActiveDirectoryPlayActivityResponse::ActiveDirectoryPlayActivityResponse(const ActiveDirectoryPlayActivityResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ActiveDirectoryPlayActivityResponse)
+}
+
+void ActiveDirectoryPlayActivityResponse::SharedCtor() {
+}
+
+ActiveDirectoryPlayActivityResponse::~ActiveDirectoryPlayActivityResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ActiveDirectoryPlayActivityResponse)
+  SharedDtor();
+}
+
+void ActiveDirectoryPlayActivityResponse::SharedDtor() {
+}
+
+void ActiveDirectoryPlayActivityResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ActiveDirectoryPlayActivityResponse& ActiveDirectoryPlayActivityResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ActiveDirectoryPlayActivityResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ActiveDirectoryPlayActivityResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ActiveDirectoryPlayActivityResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ActiveDirectoryPlayActivityResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ActiveDirectoryPlayActivityResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ActiveDirectoryPlayActivityResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ActiveDirectoryPlayActivityResponse)
+  return target;
+}
+
+size_t ActiveDirectoryPlayActivityResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ActiveDirectoryPlayActivityResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ActiveDirectoryPlayActivityResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ActiveDirectoryPlayActivityResponse*>(
+      &from));
+}
+
+void ActiveDirectoryPlayActivityResponse::MergeFrom(const ActiveDirectoryPlayActivityResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ActiveDirectoryPlayActivityResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void ActiveDirectoryPlayActivityResponse::CopyFrom(const ActiveDirectoryPlayActivityResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ActiveDirectoryPlayActivityResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ActiveDirectoryPlayActivityResponse::IsInitialized() const {
+  return true;
+}
+
+void ActiveDirectoryPlayActivityResponse::InternalSwap(ActiveDirectoryPlayActivityResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string ActiveDirectoryPlayActivityResponse::GetTypeName() const {
+  return "enterprise_management.ActiveDirectoryPlayActivityResponse";
+}
+
+
+// ===================================================================
+
+void CheckDeviceLicenseRequest::InitAsDefaultInstance() {
+}
+class CheckDeviceLicenseRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CheckDeviceLicenseRequest>()._has_bits_);
+};
+
+CheckDeviceLicenseRequest::CheckDeviceLicenseRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CheckDeviceLicenseRequest)
+}
+CheckDeviceLicenseRequest::CheckDeviceLicenseRequest(const CheckDeviceLicenseRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CheckDeviceLicenseRequest)
+}
+
+void CheckDeviceLicenseRequest::SharedCtor() {
+}
+
+CheckDeviceLicenseRequest::~CheckDeviceLicenseRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CheckDeviceLicenseRequest)
+  SharedDtor();
+}
+
+void CheckDeviceLicenseRequest::SharedDtor() {
+}
+
+void CheckDeviceLicenseRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CheckDeviceLicenseRequest& CheckDeviceLicenseRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CheckDeviceLicenseRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CheckDeviceLicenseRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CheckDeviceLicenseRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CheckDeviceLicenseRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CheckDeviceLicenseRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CheckDeviceLicenseRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CheckDeviceLicenseRequest)
+  return target;
+}
+
+size_t CheckDeviceLicenseRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CheckDeviceLicenseRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CheckDeviceLicenseRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CheckDeviceLicenseRequest*>(
+      &from));
+}
+
+void CheckDeviceLicenseRequest::MergeFrom(const CheckDeviceLicenseRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CheckDeviceLicenseRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void CheckDeviceLicenseRequest::CopyFrom(const CheckDeviceLicenseRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CheckDeviceLicenseRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CheckDeviceLicenseRequest::IsInitialized() const {
+  return true;
+}
+
+void CheckDeviceLicenseRequest::InternalSwap(CheckDeviceLicenseRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string CheckDeviceLicenseRequest::GetTypeName() const {
+  return "enterprise_management.CheckDeviceLicenseRequest";
+}
+
+
+// ===================================================================
+
+void LicenseAvailability::InitAsDefaultInstance() {
+  ::enterprise_management::_LicenseAvailability_default_instance_._instance.get_mutable()->license_type_deprecated_ = const_cast< ::enterprise_management::LicenseType*>(
+      ::enterprise_management::LicenseType::internal_default_instance());
+}
+class LicenseAvailability::_Internal {
+ public:
+  using HasBits = decltype(std::declval<LicenseAvailability>()._has_bits_);
+  static const ::enterprise_management::LicenseType& license_type_deprecated(const LicenseAvailability* msg);
+  static void set_has_license_type_deprecated(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_available_licenses_deprecated(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::LicenseType&
+LicenseAvailability::_Internal::license_type_deprecated(const LicenseAvailability* msg) {
+  return *msg->license_type_deprecated_;
+}
+LicenseAvailability::LicenseAvailability()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.LicenseAvailability)
+}
+LicenseAvailability::LicenseAvailability(const LicenseAvailability& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_license_type_deprecated()) {
+    license_type_deprecated_ = new ::enterprise_management::LicenseType(*from.license_type_deprecated_);
+  } else {
+    license_type_deprecated_ = nullptr;
+  }
+  available_licenses_deprecated_ = from.available_licenses_deprecated_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.LicenseAvailability)
+}
+
+void LicenseAvailability::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_LicenseAvailability_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&license_type_deprecated_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&available_licenses_deprecated_) -
+      reinterpret_cast<char*>(&license_type_deprecated_)) + sizeof(available_licenses_deprecated_));
+}
+
+LicenseAvailability::~LicenseAvailability() {
+  // @@protoc_insertion_point(destructor:enterprise_management.LicenseAvailability)
+  SharedDtor();
+}
+
+void LicenseAvailability::SharedDtor() {
+  if (this != internal_default_instance()) delete license_type_deprecated_;
+}
+
+void LicenseAvailability::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const LicenseAvailability& LicenseAvailability::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_LicenseAvailability_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void LicenseAvailability::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.LicenseAvailability)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(license_type_deprecated_ != nullptr);
+    license_type_deprecated_->Clear();
+  }
+  available_licenses_deprecated_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* LicenseAvailability::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.LicenseType license_type_deprecated = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_license_type_deprecated(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 available_licenses_deprecated = 2 [deprecated = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_available_licenses_deprecated(&has_bits);
+          available_licenses_deprecated_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* LicenseAvailability::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.LicenseAvailability)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.LicenseType license_type_deprecated = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::license_type_deprecated(this), target, stream);
+  }
+
+  // optional int32 available_licenses_deprecated = 2 [deprecated = true];
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_available_licenses_deprecated(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.LicenseAvailability)
+  return target;
+}
+
+size_t LicenseAvailability::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.LicenseAvailability)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.LicenseType license_type_deprecated = 1 [deprecated = true];
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *license_type_deprecated_);
+    }
+
+    // optional int32 available_licenses_deprecated = 2 [deprecated = true];
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_available_licenses_deprecated());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void LicenseAvailability::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const LicenseAvailability*>(
+      &from));
+}
+
+void LicenseAvailability::MergeFrom(const LicenseAvailability& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.LicenseAvailability)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_license_type_deprecated()->::enterprise_management::LicenseType::MergeFrom(from._internal_license_type_deprecated());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      available_licenses_deprecated_ = from.available_licenses_deprecated_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void LicenseAvailability::CopyFrom(const LicenseAvailability& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.LicenseAvailability)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool LicenseAvailability::IsInitialized() const {
+  return true;
+}
+
+void LicenseAvailability::InternalSwap(LicenseAvailability* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(license_type_deprecated_, other->license_type_deprecated_);
+  swap(available_licenses_deprecated_, other->available_licenses_deprecated_);
+}
+
+std::string LicenseAvailability::GetTypeName() const {
+  return "enterprise_management.LicenseAvailability";
+}
+
+
+// ===================================================================
+
+void CheckDeviceLicenseResponse::InitAsDefaultInstance() {
+}
+class CheckDeviceLicenseResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<CheckDeviceLicenseResponse>()._has_bits_);
+  static void set_has_license_selection_mode_deprecated(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+CheckDeviceLicenseResponse::CheckDeviceLicenseResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.CheckDeviceLicenseResponse)
+}
+CheckDeviceLicenseResponse::CheckDeviceLicenseResponse(const CheckDeviceLicenseResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      license_availabilities_deprecated_(from.license_availabilities_deprecated_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  license_selection_mode_deprecated_ = from.license_selection_mode_deprecated_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.CheckDeviceLicenseResponse)
+}
+
+void CheckDeviceLicenseResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CheckDeviceLicenseResponse_device_5fmanagement_5fbackend_2eproto.base);
+  license_selection_mode_deprecated_ = 0;
+}
+
+CheckDeviceLicenseResponse::~CheckDeviceLicenseResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.CheckDeviceLicenseResponse)
+  SharedDtor();
+}
+
+void CheckDeviceLicenseResponse::SharedDtor() {
+}
+
+void CheckDeviceLicenseResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const CheckDeviceLicenseResponse& CheckDeviceLicenseResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_CheckDeviceLicenseResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void CheckDeviceLicenseResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.CheckDeviceLicenseResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  license_availabilities_deprecated_.Clear();
+  license_selection_mode_deprecated_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* CheckDeviceLicenseResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.CheckDeviceLicenseResponse.LicenseSelectionMode license_selection_mode_deprecated = 1 [deprecated = true];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode_IsValid(val))) {
+            _internal_set_license_selection_mode_deprecated(static_cast<::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.LicenseAvailability license_availabilities_deprecated = 2 [deprecated = true];
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_license_availabilities_deprecated(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* CheckDeviceLicenseResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.CheckDeviceLicenseResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.CheckDeviceLicenseResponse.LicenseSelectionMode license_selection_mode_deprecated = 1 [deprecated = true];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_license_selection_mode_deprecated(), target);
+  }
+
+  // repeated .enterprise_management.LicenseAvailability license_availabilities_deprecated = 2 [deprecated = true];
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_license_availabilities_deprecated_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_license_availabilities_deprecated(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.CheckDeviceLicenseResponse)
+  return target;
+}
+
+size_t CheckDeviceLicenseResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.CheckDeviceLicenseResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.LicenseAvailability license_availabilities_deprecated = 2 [deprecated = true];
+  total_size += 1UL * this->_internal_license_availabilities_deprecated_size();
+  for (const auto& msg : this->license_availabilities_deprecated_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // optional .enterprise_management.CheckDeviceLicenseResponse.LicenseSelectionMode license_selection_mode_deprecated = 1 [deprecated = true];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_license_selection_mode_deprecated());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void CheckDeviceLicenseResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const CheckDeviceLicenseResponse*>(
+      &from));
+}
+
+void CheckDeviceLicenseResponse::MergeFrom(const CheckDeviceLicenseResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.CheckDeviceLicenseResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  license_availabilities_deprecated_.MergeFrom(from.license_availabilities_deprecated_);
+  if (from._internal_has_license_selection_mode_deprecated()) {
+    _internal_set_license_selection_mode_deprecated(from._internal_license_selection_mode_deprecated());
+  }
+}
+
+void CheckDeviceLicenseResponse::CopyFrom(const CheckDeviceLicenseResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.CheckDeviceLicenseResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool CheckDeviceLicenseResponse::IsInitialized() const {
+  return true;
+}
+
+void CheckDeviceLicenseResponse::InternalSwap(CheckDeviceLicenseResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  license_availabilities_deprecated_.InternalSwap(&other->license_availabilities_deprecated_);
+  swap(license_selection_mode_deprecated_, other->license_selection_mode_deprecated_);
+}
+
+std::string CheckDeviceLicenseResponse::GetTypeName() const {
+  return "enterprise_management.CheckDeviceLicenseResponse";
+}
+
+
+// ===================================================================
+
+void ActiveDirectoryUserSigninRequest::InitAsDefaultInstance() {
+}
+class ActiveDirectoryUserSigninRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ActiveDirectoryUserSigninRequest>()._has_bits_);
+};
+
+ActiveDirectoryUserSigninRequest::ActiveDirectoryUserSigninRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ActiveDirectoryUserSigninRequest)
+}
+ActiveDirectoryUserSigninRequest::ActiveDirectoryUserSigninRequest(const ActiveDirectoryUserSigninRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ActiveDirectoryUserSigninRequest)
+}
+
+void ActiveDirectoryUserSigninRequest::SharedCtor() {
+}
+
+ActiveDirectoryUserSigninRequest::~ActiveDirectoryUserSigninRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ActiveDirectoryUserSigninRequest)
+  SharedDtor();
+}
+
+void ActiveDirectoryUserSigninRequest::SharedDtor() {
+}
+
+void ActiveDirectoryUserSigninRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ActiveDirectoryUserSigninRequest& ActiveDirectoryUserSigninRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ActiveDirectoryUserSigninRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ActiveDirectoryUserSigninRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ActiveDirectoryUserSigninRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ActiveDirectoryUserSigninRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ActiveDirectoryUserSigninRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ActiveDirectoryUserSigninRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ActiveDirectoryUserSigninRequest)
+  return target;
+}
+
+size_t ActiveDirectoryUserSigninRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ActiveDirectoryUserSigninRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ActiveDirectoryUserSigninRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ActiveDirectoryUserSigninRequest*>(
+      &from));
+}
+
+void ActiveDirectoryUserSigninRequest::MergeFrom(const ActiveDirectoryUserSigninRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ActiveDirectoryUserSigninRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void ActiveDirectoryUserSigninRequest::CopyFrom(const ActiveDirectoryUserSigninRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ActiveDirectoryUserSigninRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ActiveDirectoryUserSigninRequest::IsInitialized() const {
+  return true;
+}
+
+void ActiveDirectoryUserSigninRequest::InternalSwap(ActiveDirectoryUserSigninRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string ActiveDirectoryUserSigninRequest::GetTypeName() const {
+  return "enterprise_management.ActiveDirectoryUserSigninRequest";
+}
+
+
+// ===================================================================
+
+void ActiveDirectoryUserSigninResponse::InitAsDefaultInstance() {
+}
+class ActiveDirectoryUserSigninResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ActiveDirectoryUserSigninResponse>()._has_bits_);
+  static void set_has_auth_redirect_url(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ActiveDirectoryUserSigninResponse::ActiveDirectoryUserSigninResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ActiveDirectoryUserSigninResponse)
+}
+ActiveDirectoryUserSigninResponse::ActiveDirectoryUserSigninResponse(const ActiveDirectoryUserSigninResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  auth_redirect_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_auth_redirect_url()) {
+    auth_redirect_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_redirect_url_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ActiveDirectoryUserSigninResponse)
+}
+
+void ActiveDirectoryUserSigninResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ActiveDirectoryUserSigninResponse_device_5fmanagement_5fbackend_2eproto.base);
+  auth_redirect_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+ActiveDirectoryUserSigninResponse::~ActiveDirectoryUserSigninResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ActiveDirectoryUserSigninResponse)
+  SharedDtor();
+}
+
+void ActiveDirectoryUserSigninResponse::SharedDtor() {
+  auth_redirect_url_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ActiveDirectoryUserSigninResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ActiveDirectoryUserSigninResponse& ActiveDirectoryUserSigninResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ActiveDirectoryUserSigninResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ActiveDirectoryUserSigninResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ActiveDirectoryUserSigninResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    auth_redirect_url_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ActiveDirectoryUserSigninResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string auth_redirect_url = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_auth_redirect_url();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ActiveDirectoryUserSigninResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ActiveDirectoryUserSigninResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string auth_redirect_url = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_auth_redirect_url(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ActiveDirectoryUserSigninResponse)
+  return target;
+}
+
+size_t ActiveDirectoryUserSigninResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ActiveDirectoryUserSigninResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string auth_redirect_url = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_auth_redirect_url());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ActiveDirectoryUserSigninResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ActiveDirectoryUserSigninResponse*>(
+      &from));
+}
+
+void ActiveDirectoryUserSigninResponse::MergeFrom(const ActiveDirectoryUserSigninResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ActiveDirectoryUserSigninResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_auth_redirect_url()) {
+    _has_bits_[0] |= 0x00000001u;
+    auth_redirect_url_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.auth_redirect_url_);
+  }
+}
+
+void ActiveDirectoryUserSigninResponse::CopyFrom(const ActiveDirectoryUserSigninResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ActiveDirectoryUserSigninResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ActiveDirectoryUserSigninResponse::IsInitialized() const {
+  return true;
+}
+
+void ActiveDirectoryUserSigninResponse::InternalSwap(ActiveDirectoryUserSigninResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  auth_redirect_url_.Swap(&other->auth_redirect_url_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string ActiveDirectoryUserSigninResponse::GetTypeName() const {
+  return "enterprise_management.ActiveDirectoryUserSigninResponse";
+}
+
+
+// ===================================================================
+
+void TpmVersionInfo::InitAsDefaultInstance() {
+}
+class TpmVersionInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<TpmVersionInfo>()._has_bits_);
+  static void set_has_family(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_spec_level(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_manufacturer(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_tpm_model(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_firmware_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_vendor_specific(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_gsc_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_did_vid(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+TpmVersionInfo::TpmVersionInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.TpmVersionInfo)
+}
+TpmVersionInfo::TpmVersionInfo(const TpmVersionInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  vendor_specific_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_vendor_specific()) {
+    vendor_specific_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vendor_specific_);
+  }
+  did_vid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_did_vid()) {
+    did_vid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.did_vid_);
+  }
+  ::memcpy(&spec_level_, &from.spec_level_,
+    static_cast<size_t>(reinterpret_cast<char*>(&gsc_version_) -
+    reinterpret_cast<char*>(&spec_level_)) + sizeof(gsc_version_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.TpmVersionInfo)
+}
+
+void TpmVersionInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_TpmVersionInfo_device_5fmanagement_5fbackend_2eproto.base);
+  vendor_specific_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  did_vid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&spec_level_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&gsc_version_) -
+      reinterpret_cast<char*>(&spec_level_)) + sizeof(gsc_version_));
+}
+
+TpmVersionInfo::~TpmVersionInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.TpmVersionInfo)
+  SharedDtor();
+}
+
+void TpmVersionInfo::SharedDtor() {
+  vendor_specific_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  did_vid_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void TpmVersionInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const TpmVersionInfo& TpmVersionInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_TpmVersionInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void TpmVersionInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.TpmVersionInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      vendor_specific_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      did_vid_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x000000fcu) {
+    ::memset(&spec_level_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&gsc_version_) -
+        reinterpret_cast<char*>(&spec_level_)) + sizeof(gsc_version_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* TpmVersionInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 family = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_family(&has_bits);
+          family_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 spec_level = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_spec_level(&has_bits);
+          spec_level_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 manufacturer = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_manufacturer(&has_bits);
+          manufacturer_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 tpm_model = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_tpm_model(&has_bits);
+          tpm_model_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint64 firmware_version = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_firmware_version(&has_bits);
+          firmware_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string vendor_specific = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_vendor_specific();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.TpmVersionInfo.GscVersion gsc_version = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::TpmVersionInfo_GscVersion_IsValid(val))) {
+            _internal_set_gsc_version(static_cast<::enterprise_management::TpmVersionInfo_GscVersion>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(7, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional string did_vid = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_did_vid();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* TpmVersionInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.TpmVersionInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 family = 1;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_family(), target);
+  }
+
+  // optional uint64 spec_level = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(2, this->_internal_spec_level(), target);
+  }
+
+  // optional uint32 manufacturer = 3;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(3, this->_internal_manufacturer(), target);
+  }
+
+  // optional uint32 tpm_model = 4;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(4, this->_internal_tpm_model(), target);
+  }
+
+  // optional uint64 firmware_version = 5;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(5, this->_internal_firmware_version(), target);
+  }
+
+  // optional string vendor_specific = 6;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_vendor_specific(), target);
+  }
+
+  // optional .enterprise_management.TpmVersionInfo.GscVersion gsc_version = 7;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      7, this->_internal_gsc_version(), target);
+  }
+
+  // optional string did_vid = 8;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        8, this->_internal_did_vid(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.TpmVersionInfo)
+  return target;
+}
+
+size_t TpmVersionInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.TpmVersionInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string vendor_specific = 6;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_vendor_specific());
+    }
+
+    // optional string did_vid = 8;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_did_vid());
+    }
+
+    // optional uint64 spec_level = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_spec_level());
+    }
+
+    // optional uint32 family = 1;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_family());
+    }
+
+    // optional uint32 manufacturer = 3;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_manufacturer());
+    }
+
+    // optional uint64 firmware_version = 5;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+          this->_internal_firmware_version());
+    }
+
+    // optional uint32 tpm_model = 4;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_tpm_model());
+    }
+
+    // optional .enterprise_management.TpmVersionInfo.GscVersion gsc_version = 7;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_gsc_version());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void TpmVersionInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const TpmVersionInfo*>(
+      &from));
+}
+
+void TpmVersionInfo::MergeFrom(const TpmVersionInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.TpmVersionInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      vendor_specific_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vendor_specific_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      did_vid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.did_vid_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      spec_level_ = from.spec_level_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      family_ = from.family_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      manufacturer_ = from.manufacturer_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      firmware_version_ = from.firmware_version_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      tpm_model_ = from.tpm_model_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      gsc_version_ = from.gsc_version_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void TpmVersionInfo::CopyFrom(const TpmVersionInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.TpmVersionInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool TpmVersionInfo::IsInitialized() const {
+  return true;
+}
+
+void TpmVersionInfo::InternalSwap(TpmVersionInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  vendor_specific_.Swap(&other->vendor_specific_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  did_vid_.Swap(&other->did_vid_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(spec_level_, other->spec_level_);
+  swap(family_, other->family_);
+  swap(manufacturer_, other->manufacturer_);
+  swap(firmware_version_, other->firmware_version_);
+  swap(tpm_model_, other->tpm_model_);
+  swap(gsc_version_, other->gsc_version_);
+}
+
+std::string TpmVersionInfo::GetTypeName() const {
+  return "enterprise_management.TpmVersionInfo";
+}
+
+
+// ===================================================================
+
+void TpmStatusInfo::InitAsDefaultInstance() {
+  ::enterprise_management::_TpmStatusInfo_default_instance_._instance.get_mutable()->tpm_supported_features_ = const_cast< ::enterprise_management::TpmSupportedFeatures*>(
+      ::enterprise_management::TpmSupportedFeatures::internal_default_instance());
+}
+class TpmStatusInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<TpmStatusInfo>()._has_bits_);
+  static void set_has_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_owned(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_tpm_initialized(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_attestation_prepared(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_attestation_enrolled(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_dictionary_attack_counter(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_dictionary_attack_threshold(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_dictionary_attack_lockout_in_effect(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_dictionary_attack_lockout_seconds_remaining(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_boot_lockbox_finalized(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_owner_password_is_present(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static const ::enterprise_management::TpmSupportedFeatures& tpm_supported_features(const TpmStatusInfo* msg);
+  static void set_has_tpm_supported_features(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::TpmSupportedFeatures&
+TpmStatusInfo::_Internal::tpm_supported_features(const TpmStatusInfo* msg) {
+  return *msg->tpm_supported_features_;
+}
+TpmStatusInfo::TpmStatusInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.TpmStatusInfo)
+}
+TpmStatusInfo::TpmStatusInfo(const TpmStatusInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_tpm_supported_features()) {
+    tpm_supported_features_ = new ::enterprise_management::TpmSupportedFeatures(*from.tpm_supported_features_);
+  } else {
+    tpm_supported_features_ = nullptr;
+  }
+  ::memcpy(&enabled_, &from.enabled_,
+    static_cast<size_t>(reinterpret_cast<char*>(&dictionary_attack_lockout_seconds_remaining_) -
+    reinterpret_cast<char*>(&enabled_)) + sizeof(dictionary_attack_lockout_seconds_remaining_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.TpmStatusInfo)
+}
+
+void TpmStatusInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_TpmStatusInfo_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&tpm_supported_features_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&dictionary_attack_lockout_seconds_remaining_) -
+      reinterpret_cast<char*>(&tpm_supported_features_)) + sizeof(dictionary_attack_lockout_seconds_remaining_));
+}
+
+TpmStatusInfo::~TpmStatusInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.TpmStatusInfo)
+  SharedDtor();
+}
+
+void TpmStatusInfo::SharedDtor() {
+  if (this != internal_default_instance()) delete tpm_supported_features_;
+}
+
+void TpmStatusInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const TpmStatusInfo& TpmStatusInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_TpmStatusInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void TpmStatusInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.TpmStatusInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(tpm_supported_features_ != nullptr);
+    tpm_supported_features_->Clear();
+  }
+  if (cached_has_bits & 0x000000feu) {
+    ::memset(&enabled_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&attestation_enrolled_) -
+        reinterpret_cast<char*>(&enabled_)) + sizeof(attestation_enrolled_));
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    ::memset(&dictionary_attack_lockout_in_effect_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&dictionary_attack_lockout_seconds_remaining_) -
+        reinterpret_cast<char*>(&dictionary_attack_lockout_in_effect_)) + sizeof(dictionary_attack_lockout_seconds_remaining_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* TpmStatusInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool enabled = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_enabled(&has_bits);
+          enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool owned = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_owned(&has_bits);
+          owned_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool tpm_initialized = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_tpm_initialized(&has_bits);
+          tpm_initialized_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool attestation_prepared = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_attestation_prepared(&has_bits);
+          attestation_prepared_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool attestation_enrolled = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_attestation_enrolled(&has_bits);
+          attestation_enrolled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 dictionary_attack_counter = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_dictionary_attack_counter(&has_bits);
+          dictionary_attack_counter_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 dictionary_attack_threshold = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_dictionary_attack_threshold(&has_bits);
+          dictionary_attack_threshold_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool dictionary_attack_lockout_in_effect = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_dictionary_attack_lockout_in_effect(&has_bits);
+          dictionary_attack_lockout_in_effect_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 dictionary_attack_lockout_seconds_remaining = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_dictionary_attack_lockout_seconds_remaining(&has_bits);
+          dictionary_attack_lockout_seconds_remaining_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool boot_lockbox_finalized = 10 [deprecated = true];
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          _Internal::set_has_boot_lockbox_finalized(&has_bits);
+          boot_lockbox_finalized_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool owner_password_is_present = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          _Internal::set_has_owner_password_is_present(&has_bits);
+          owner_password_is_present_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.TpmSupportedFeatures tpm_supported_features = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          ptr = ctx->ParseMessage(_internal_mutable_tpm_supported_features(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* TpmStatusInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.TpmStatusInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool enabled = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_enabled(), target);
+  }
+
+  // optional bool owned = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_owned(), target);
+  }
+
+  // optional bool tpm_initialized = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_tpm_initialized(), target);
+  }
+
+  // optional bool attestation_prepared = 4;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_attestation_prepared(), target);
+  }
+
+  // optional bool attestation_enrolled = 5;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(5, this->_internal_attestation_enrolled(), target);
+  }
+
+  // optional int32 dictionary_attack_counter = 6;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_dictionary_attack_counter(), target);
+  }
+
+  // optional int32 dictionary_attack_threshold = 7;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(7, this->_internal_dictionary_attack_threshold(), target);
+  }
+
+  // optional bool dictionary_attack_lockout_in_effect = 8;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(8, this->_internal_dictionary_attack_lockout_in_effect(), target);
+  }
+
+  // optional int32 dictionary_attack_lockout_seconds_remaining = 9;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(9, this->_internal_dictionary_attack_lockout_seconds_remaining(), target);
+  }
+
+  // optional bool boot_lockbox_finalized = 10 [deprecated = true];
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(10, this->_internal_boot_lockbox_finalized(), target);
+  }
+
+  // optional bool owner_password_is_present = 11;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(11, this->_internal_owner_password_is_present(), target);
+  }
+
+  // optional .enterprise_management.TpmSupportedFeatures tpm_supported_features = 12;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        12, _Internal::tpm_supported_features(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.TpmStatusInfo)
+  return target;
+}
+
+size_t TpmStatusInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.TpmStatusInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional .enterprise_management.TpmSupportedFeatures tpm_supported_features = 12;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *tpm_supported_features_);
+    }
+
+    // optional bool enabled = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool owned = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool tpm_initialized = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool attestation_prepared = 4;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 + 1;
+    }
+
+    // optional int32 dictionary_attack_counter = 6;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_dictionary_attack_counter());
+    }
+
+    // optional int32 dictionary_attack_threshold = 7;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_dictionary_attack_threshold());
+    }
+
+    // optional bool attestation_enrolled = 5;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    // optional bool dictionary_attack_lockout_in_effect = 8;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool boot_lockbox_finalized = 10 [deprecated = true];
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool owner_password_is_present = 11;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 + 1;
+    }
+
+    // optional int32 dictionary_attack_lockout_seconds_remaining = 9;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_dictionary_attack_lockout_seconds_remaining());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void TpmStatusInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const TpmStatusInfo*>(
+      &from));
+}
+
+void TpmStatusInfo::MergeFrom(const TpmStatusInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.TpmStatusInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_tpm_supported_features()->::enterprise_management::TpmSupportedFeatures::MergeFrom(from._internal_tpm_supported_features());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      enabled_ = from.enabled_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      owned_ = from.owned_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      tpm_initialized_ = from.tpm_initialized_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      attestation_prepared_ = from.attestation_prepared_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      dictionary_attack_counter_ = from.dictionary_attack_counter_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      dictionary_attack_threshold_ = from.dictionary_attack_threshold_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      attestation_enrolled_ = from.attestation_enrolled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00000f00u) {
+    if (cached_has_bits & 0x00000100u) {
+      dictionary_attack_lockout_in_effect_ = from.dictionary_attack_lockout_in_effect_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      boot_lockbox_finalized_ = from.boot_lockbox_finalized_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      owner_password_is_present_ = from.owner_password_is_present_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      dictionary_attack_lockout_seconds_remaining_ = from.dictionary_attack_lockout_seconds_remaining_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void TpmStatusInfo::CopyFrom(const TpmStatusInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.TpmStatusInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool TpmStatusInfo::IsInitialized() const {
+  return true;
+}
+
+void TpmStatusInfo::InternalSwap(TpmStatusInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(tpm_supported_features_, other->tpm_supported_features_);
+  swap(enabled_, other->enabled_);
+  swap(owned_, other->owned_);
+  swap(tpm_initialized_, other->tpm_initialized_);
+  swap(attestation_prepared_, other->attestation_prepared_);
+  swap(dictionary_attack_counter_, other->dictionary_attack_counter_);
+  swap(dictionary_attack_threshold_, other->dictionary_attack_threshold_);
+  swap(attestation_enrolled_, other->attestation_enrolled_);
+  swap(dictionary_attack_lockout_in_effect_, other->dictionary_attack_lockout_in_effect_);
+  swap(boot_lockbox_finalized_, other->boot_lockbox_finalized_);
+  swap(owner_password_is_present_, other->owner_password_is_present_);
+  swap(dictionary_attack_lockout_seconds_remaining_, other->dictionary_attack_lockout_seconds_remaining_);
+}
+
+std::string TpmStatusInfo::GetTypeName() const {
+  return "enterprise_management.TpmStatusInfo";
+}
+
+
+// ===================================================================
+
+void TpmSupportedFeatures::InitAsDefaultInstance() {
+}
+class TpmSupportedFeatures::_Internal {
+ public:
+  using HasBits = decltype(std::declval<TpmSupportedFeatures>()._has_bits_);
+  static void set_has_is_allowed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_support_pinweaver(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_support_runtime_selection(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_support_u2f(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+TpmSupportedFeatures::TpmSupportedFeatures()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.TpmSupportedFeatures)
+}
+TpmSupportedFeatures::TpmSupportedFeatures(const TpmSupportedFeatures& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&is_allowed_, &from.is_allowed_,
+    static_cast<size_t>(reinterpret_cast<char*>(&support_u2f_) -
+    reinterpret_cast<char*>(&is_allowed_)) + sizeof(support_u2f_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.TpmSupportedFeatures)
+}
+
+void TpmSupportedFeatures::SharedCtor() {
+  ::memset(&is_allowed_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&support_u2f_) -
+      reinterpret_cast<char*>(&is_allowed_)) + sizeof(support_u2f_));
+}
+
+TpmSupportedFeatures::~TpmSupportedFeatures() {
+  // @@protoc_insertion_point(destructor:enterprise_management.TpmSupportedFeatures)
+  SharedDtor();
+}
+
+void TpmSupportedFeatures::SharedDtor() {
+}
+
+void TpmSupportedFeatures::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const TpmSupportedFeatures& TpmSupportedFeatures::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_TpmSupportedFeatures_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void TpmSupportedFeatures::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.TpmSupportedFeatures)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  ::memset(&is_allowed_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&support_u2f_) -
+      reinterpret_cast<char*>(&is_allowed_)) + sizeof(support_u2f_));
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* TpmSupportedFeatures::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool is_allowed = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_is_allowed(&has_bits);
+          is_allowed_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool support_pinweaver = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_support_pinweaver(&has_bits);
+          support_pinweaver_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool support_runtime_selection = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_support_runtime_selection(&has_bits);
+          support_runtime_selection_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool support_u2f = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_support_u2f(&has_bits);
+          support_u2f_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* TpmSupportedFeatures::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.TpmSupportedFeatures)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool is_allowed = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_is_allowed(), target);
+  }
+
+  // optional bool support_pinweaver = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_support_pinweaver(), target);
+  }
+
+  // optional bool support_runtime_selection = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_support_runtime_selection(), target);
+  }
+
+  // optional bool support_u2f = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_support_u2f(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.TpmSupportedFeatures)
+  return target;
+}
+
+size_t TpmSupportedFeatures::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.TpmSupportedFeatures)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional bool is_allowed = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool support_pinweaver = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool support_runtime_selection = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool support_u2f = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void TpmSupportedFeatures::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const TpmSupportedFeatures*>(
+      &from));
+}
+
+void TpmSupportedFeatures::MergeFrom(const TpmSupportedFeatures& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.TpmSupportedFeatures)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      is_allowed_ = from.is_allowed_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      support_pinweaver_ = from.support_pinweaver_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      support_runtime_selection_ = from.support_runtime_selection_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      support_u2f_ = from.support_u2f_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void TpmSupportedFeatures::CopyFrom(const TpmSupportedFeatures& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.TpmSupportedFeatures)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool TpmSupportedFeatures::IsInitialized() const {
+  return true;
+}
+
+void TpmSupportedFeatures::InternalSwap(TpmSupportedFeatures* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(is_allowed_, other->is_allowed_);
+  swap(support_pinweaver_, other->support_pinweaver_);
+  swap(support_runtime_selection_, other->support_runtime_selection_);
+  swap(support_u2f_, other->support_u2f_);
+}
+
+std::string TpmSupportedFeatures::GetTypeName() const {
+  return "enterprise_management.TpmSupportedFeatures";
+}
+
+
+// ===================================================================
+
+void SystemState::InitAsDefaultInstance() {
+}
+class SystemState::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemState>()._has_bits_);
+};
+
+SystemState::SystemState()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.SystemState)
+}
+SystemState::SystemState(const SystemState& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      volume_infos_(from.volume_infos_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.SystemState)
+}
+
+void SystemState::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemState_device_5fmanagement_5fbackend_2eproto.base);
+}
+
+SystemState::~SystemState() {
+  // @@protoc_insertion_point(destructor:enterprise_management.SystemState)
+  SharedDtor();
+}
+
+void SystemState::SharedDtor() {
+}
+
+void SystemState::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemState& SystemState::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemState_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemState::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.SystemState)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  volume_infos_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemState::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.VolumeInfo volume_infos = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_volume_infos(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemState::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.SystemState)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.VolumeInfo volume_infos = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_volume_infos_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_volume_infos(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.SystemState)
+  return target;
+}
+
+size_t SystemState::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.SystemState)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.VolumeInfo volume_infos = 1;
+  total_size += 1UL * this->_internal_volume_infos_size();
+  for (const auto& msg : this->volume_infos_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemState::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemState*>(
+      &from));
+}
+
+void SystemState::MergeFrom(const SystemState& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.SystemState)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  volume_infos_.MergeFrom(from.volume_infos_);
+}
+
+void SystemState::CopyFrom(const SystemState& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.SystemState)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemState::IsInitialized() const {
+  return true;
+}
+
+void SystemState::InternalSwap(SystemState* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  volume_infos_.InternalSwap(&other->volume_infos_);
+}
+
+std::string SystemState::GetTypeName() const {
+  return "enterprise_management.SystemState";
+}
+
+
+// ===================================================================
+
+void ExtensionInstallReportLogEvent::InitAsDefaultInstance() {
+}
+class ExtensionInstallReportLogEvent::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ExtensionInstallReportLogEvent>()._has_bits_);
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_event_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_stateful_total(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_stateful_free(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_online(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_session_state_change_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_failure_reason(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_installation_stage(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_downloading_stage(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_extension_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_user_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_is_new_user(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_is_misconfiguration_failure(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_install_creation_stage(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static void set_has_download_cache_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static void set_has_unpacker_failure_reason(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static void set_has_manifest_invalid_error(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static void set_has_crx_install_error_detail(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static void set_has_fetch_error_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 262144u;
+  }
+  static void set_has_fetch_tries(HasBits* has_bits) {
+    (*has_bits)[0] |= 524288u;
+  }
+};
+
+ExtensionInstallReportLogEvent::ExtensionInstallReportLogEvent()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ExtensionInstallReportLogEvent)
+}
+ExtensionInstallReportLogEvent::ExtensionInstallReportLogEvent(const ExtensionInstallReportLogEvent& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&timestamp_, &from.timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&fetch_tries_) -
+    reinterpret_cast<char*>(&timestamp_)) + sizeof(fetch_tries_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ExtensionInstallReportLogEvent)
+}
+
+void ExtensionInstallReportLogEvent::SharedCtor() {
+  ::memset(&timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&fetch_tries_) -
+      reinterpret_cast<char*>(&timestamp_)) + sizeof(fetch_tries_));
+}
+
+ExtensionInstallReportLogEvent::~ExtensionInstallReportLogEvent() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ExtensionInstallReportLogEvent)
+  SharedDtor();
+}
+
+void ExtensionInstallReportLogEvent::SharedDtor() {
+}
+
+void ExtensionInstallReportLogEvent::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ExtensionInstallReportLogEvent& ExtensionInstallReportLogEvent::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ExtensionInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ExtensionInstallReportLogEvent::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ExtensionInstallReportLogEvent)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    ::memset(&timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&downloading_stage_) -
+        reinterpret_cast<char*>(&timestamp_)) + sizeof(downloading_stage_));
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    ::memset(&extension_type_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&unpacker_failure_reason_) -
+        reinterpret_cast<char*>(&extension_type_)) + sizeof(unpacker_failure_reason_));
+  }
+  if (cached_has_bits & 0x000f0000u) {
+    ::memset(&manifest_invalid_error_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&fetch_tries_) -
+        reinterpret_cast<char*>(&manifest_invalid_error_)) + sizeof(fetch_tries_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ExtensionInstallReportLogEvent::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 timestamp = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.EventType event_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_EventType_IsValid(val))) {
+            _internal_set_event_type(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_EventType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int64 stateful_total = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_stateful_total(&has_bits);
+          stateful_total_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 stateful_free = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_stateful_free(&has_bits);
+          stateful_free_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool online = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_online(&has_bits);
+          online_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.SessionStateChangeType session_state_change_type = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType_IsValid(val))) {
+            _internal_set_session_state_change_type(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(6, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.FailureReason failure_reason = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_FailureReason_IsValid(val))) {
+            _internal_set_failure_reason(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_FailureReason>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(7, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.InstallationStage installation_stage = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage_IsValid(val))) {
+            _internal_set_installation_stage(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(8, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadingStage downloading_stage = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage_IsValid(val))) {
+            _internal_set_downloading_stage(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(9, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.Extension.ExtensionType extension_type = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::Extension_ExtensionType_IsValid(val))) {
+            _internal_set_extension_type(static_cast<::enterprise_management::Extension_ExtensionType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(10, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.UserType user_type = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_UserType_IsValid(val))) {
+            _internal_set_user_type(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_UserType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(11, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_new_user = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 96)) {
+          _Internal::set_has_is_new_user(&has_bits);
+          is_new_user_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_misconfiguration_failure = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 104)) {
+          _Internal::set_has_is_misconfiguration_failure(&has_bits);
+          is_misconfiguration_failure_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.InstallCreationStage install_creation_stage = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 112)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage_IsValid(val))) {
+            _internal_set_install_creation_stage(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(14, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadCacheStatus download_cache_status = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 120)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus_IsValid(val))) {
+            _internal_set_download_cache_status(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(15, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.SandboxedUnpackerFailureReason unpacker_failure_reason = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 128)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_IsValid(val))) {
+            _internal_set_unpacker_failure_reason(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(16, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.ManifestInvalidError manifest_invalid_error = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 136)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError_IsValid(val))) {
+            _internal_set_manifest_invalid_error(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(17, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportLogEvent.CrxInstallErrorDetail crx_install_error_detail = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 144)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail_IsValid(val))) {
+            _internal_set_crx_install_error_detail(static_cast<::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(18, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 fetch_error_code = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 152)) {
+          _Internal::set_has_fetch_error_code(&has_bits);
+          fetch_error_code_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 fetch_tries = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 160)) {
+          _Internal::set_has_fetch_tries(&has_bits);
+          fetch_tries_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ExtensionInstallReportLogEvent::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ExtensionInstallReportLogEvent)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 timestamp = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_timestamp(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.EventType event_type = 2;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_event_type(), target);
+  }
+
+  // optional int64 stateful_total = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_stateful_total(), target);
+  }
+
+  // optional int64 stateful_free = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_stateful_free(), target);
+  }
+
+  // optional bool online = 5;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(5, this->_internal_online(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.SessionStateChangeType session_state_change_type = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      6, this->_internal_session_state_change_type(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.FailureReason failure_reason = 7;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      7, this->_internal_failure_reason(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.InstallationStage installation_stage = 8;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      8, this->_internal_installation_stage(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadingStage downloading_stage = 9;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      9, this->_internal_downloading_stage(), target);
+  }
+
+  // optional .enterprise_management.Extension.ExtensionType extension_type = 10;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      10, this->_internal_extension_type(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.UserType user_type = 11;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      11, this->_internal_user_type(), target);
+  }
+
+  // optional bool is_new_user = 12;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(12, this->_internal_is_new_user(), target);
+  }
+
+  // optional bool is_misconfiguration_failure = 13;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(13, this->_internal_is_misconfiguration_failure(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.InstallCreationStage install_creation_stage = 14;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      14, this->_internal_install_creation_stage(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadCacheStatus download_cache_status = 15;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      15, this->_internal_download_cache_status(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.SandboxedUnpackerFailureReason unpacker_failure_reason = 16;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      16, this->_internal_unpacker_failure_reason(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.ManifestInvalidError manifest_invalid_error = 17;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      17, this->_internal_manifest_invalid_error(), target);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.CrxInstallErrorDetail crx_install_error_detail = 18;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      18, this->_internal_crx_install_error_detail(), target);
+  }
+
+  // optional int32 fetch_error_code = 19;
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(19, this->_internal_fetch_error_code(), target);
+  }
+
+  // optional int32 fetch_tries = 20;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(20, this->_internal_fetch_tries(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ExtensionInstallReportLogEvent)
+  return target;
+}
+
+size_t ExtensionInstallReportLogEvent::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ExtensionInstallReportLogEvent)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional int64 timestamp = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+    // optional int64 stateful_total = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_stateful_total());
+    }
+
+    // optional int64 stateful_free = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_stateful_free());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.EventType event_type = 2;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_event_type());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.SessionStateChangeType session_state_change_type = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_session_state_change_type());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.FailureReason failure_reason = 7;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_failure_reason());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.InstallationStage installation_stage = 8;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_installation_stage());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadingStage downloading_stage = 9;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_downloading_stage());
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.Extension.ExtensionType extension_type = 10;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_extension_type());
+    }
+
+    // optional bool online = 5;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool is_new_user = 12;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool is_misconfiguration_failure = 13;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.UserType user_type = 11;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_user_type());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.InstallCreationStage install_creation_stage = 14;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_install_creation_stage());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadCacheStatus download_cache_status = 15;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_download_cache_status());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.SandboxedUnpackerFailureReason unpacker_failure_reason = 16;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_unpacker_failure_reason());
+    }
+
+  }
+  if (cached_has_bits & 0x000f0000u) {
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.ManifestInvalidError manifest_invalid_error = 17;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_manifest_invalid_error());
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportLogEvent.CrxInstallErrorDetail crx_install_error_detail = 18;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_crx_install_error_detail());
+    }
+
+    // optional int32 fetch_error_code = 19;
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_fetch_error_code());
+    }
+
+    // optional int32 fetch_tries = 20;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_fetch_tries());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ExtensionInstallReportLogEvent::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ExtensionInstallReportLogEvent*>(
+      &from));
+}
+
+void ExtensionInstallReportLogEvent::MergeFrom(const ExtensionInstallReportLogEvent& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ExtensionInstallReportLogEvent)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      timestamp_ = from.timestamp_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      stateful_total_ = from.stateful_total_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      stateful_free_ = from.stateful_free_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      event_type_ = from.event_type_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      session_state_change_type_ = from.session_state_change_type_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      failure_reason_ = from.failure_reason_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      installation_stage_ = from.installation_stage_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      downloading_stage_ = from.downloading_stage_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      extension_type_ = from.extension_type_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      online_ = from.online_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      is_new_user_ = from.is_new_user_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      is_misconfiguration_failure_ = from.is_misconfiguration_failure_;
+    }
+    if (cached_has_bits & 0x00001000u) {
+      user_type_ = from.user_type_;
+    }
+    if (cached_has_bits & 0x00002000u) {
+      install_creation_stage_ = from.install_creation_stage_;
+    }
+    if (cached_has_bits & 0x00004000u) {
+      download_cache_status_ = from.download_cache_status_;
+    }
+    if (cached_has_bits & 0x00008000u) {
+      unpacker_failure_reason_ = from.unpacker_failure_reason_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x000f0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      manifest_invalid_error_ = from.manifest_invalid_error_;
+    }
+    if (cached_has_bits & 0x00020000u) {
+      crx_install_error_detail_ = from.crx_install_error_detail_;
+    }
+    if (cached_has_bits & 0x00040000u) {
+      fetch_error_code_ = from.fetch_error_code_;
+    }
+    if (cached_has_bits & 0x00080000u) {
+      fetch_tries_ = from.fetch_tries_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ExtensionInstallReportLogEvent::CopyFrom(const ExtensionInstallReportLogEvent& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ExtensionInstallReportLogEvent)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ExtensionInstallReportLogEvent::IsInitialized() const {
+  return true;
+}
+
+void ExtensionInstallReportLogEvent::InternalSwap(ExtensionInstallReportLogEvent* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(timestamp_, other->timestamp_);
+  swap(stateful_total_, other->stateful_total_);
+  swap(stateful_free_, other->stateful_free_);
+  swap(event_type_, other->event_type_);
+  swap(session_state_change_type_, other->session_state_change_type_);
+  swap(failure_reason_, other->failure_reason_);
+  swap(installation_stage_, other->installation_stage_);
+  swap(downloading_stage_, other->downloading_stage_);
+  swap(extension_type_, other->extension_type_);
+  swap(online_, other->online_);
+  swap(is_new_user_, other->is_new_user_);
+  swap(is_misconfiguration_failure_, other->is_misconfiguration_failure_);
+  swap(user_type_, other->user_type_);
+  swap(install_creation_stage_, other->install_creation_stage_);
+  swap(download_cache_status_, other->download_cache_status_);
+  swap(unpacker_failure_reason_, other->unpacker_failure_reason_);
+  swap(manifest_invalid_error_, other->manifest_invalid_error_);
+  swap(crx_install_error_detail_, other->crx_install_error_detail_);
+  swap(fetch_error_code_, other->fetch_error_code_);
+  swap(fetch_tries_, other->fetch_tries_);
+}
+
+std::string ExtensionInstallReportLogEvent::GetTypeName() const {
+  return "enterprise_management.ExtensionInstallReportLogEvent";
+}
+
+
+// ===================================================================
+
+void AppInstallReportLogEvent::InitAsDefaultInstance() {
+}
+class AppInstallReportLogEvent::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AppInstallReportLogEvent>()._has_bits_);
+  static void set_has_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_event_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_stateful_total(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_stateful_free(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_clouddps_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_phonesky_log(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_online(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_session_state_change_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_android_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+};
+
+AppInstallReportLogEvent::AppInstallReportLogEvent()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AppInstallReportLogEvent)
+}
+AppInstallReportLogEvent::AppInstallReportLogEvent(const AppInstallReportLogEvent& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  phonesky_log_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_phonesky_log()) {
+    phonesky_log_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.phonesky_log_);
+  }
+  ::memcpy(&timestamp_, &from.timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&android_id_) -
+    reinterpret_cast<char*>(&timestamp_)) + sizeof(android_id_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AppInstallReportLogEvent)
+}
+
+void AppInstallReportLogEvent::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AppInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto.base);
+  phonesky_log_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&android_id_) -
+      reinterpret_cast<char*>(&timestamp_)) + sizeof(android_id_));
+}
+
+AppInstallReportLogEvent::~AppInstallReportLogEvent() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AppInstallReportLogEvent)
+  SharedDtor();
+}
+
+void AppInstallReportLogEvent::SharedDtor() {
+  phonesky_log_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AppInstallReportLogEvent::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AppInstallReportLogEvent& AppInstallReportLogEvent::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AppInstallReportLogEvent_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AppInstallReportLogEvent::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AppInstallReportLogEvent)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    phonesky_log_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x000000feu) {
+    ::memset(&timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&session_state_change_type_) -
+        reinterpret_cast<char*>(&timestamp_)) + sizeof(session_state_change_type_));
+  }
+  android_id_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AppInstallReportLogEvent::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 timestamp = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_timestamp(&has_bits);
+          timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AppInstallReportLogEvent.EventType event_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AppInstallReportLogEvent_EventType_IsValid(val))) {
+            _internal_set_event_type(static_cast<::enterprise_management::AppInstallReportLogEvent_EventType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int64 stateful_total = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_stateful_total(&has_bits);
+          stateful_total_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 stateful_free = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_stateful_free(&has_bits);
+          stateful_free_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 clouddps_response = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_clouddps_response(&has_bits);
+          clouddps_response_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string phonesky_log = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_phonesky_log();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool online = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_online(&has_bits);
+          online_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AppInstallReportLogEvent.SessionStateChangeType session_state_change_type = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType_IsValid(val))) {
+            _internal_set_session_state_change_type(static_cast<::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(8, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int64 android_id = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_android_id(&has_bits);
+          android_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AppInstallReportLogEvent::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AppInstallReportLogEvent)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 timestamp = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_timestamp(), target);
+  }
+
+  // optional .enterprise_management.AppInstallReportLogEvent.EventType event_type = 2;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_event_type(), target);
+  }
+
+  // optional int64 stateful_total = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_stateful_total(), target);
+  }
+
+  // optional int64 stateful_free = 4;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_stateful_free(), target);
+  }
+
+  // optional int32 clouddps_response = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_clouddps_response(), target);
+  }
+
+  // optional string phonesky_log = 6;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_phonesky_log(), target);
+  }
+
+  // optional bool online = 7;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(7, this->_internal_online(), target);
+  }
+
+  // optional .enterprise_management.AppInstallReportLogEvent.SessionStateChangeType session_state_change_type = 8;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      8, this->_internal_session_state_change_type(), target);
+  }
+
+  // optional int64 android_id = 9;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(9, this->_internal_android_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AppInstallReportLogEvent)
+  return target;
+}
+
+size_t AppInstallReportLogEvent::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AppInstallReportLogEvent)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string phonesky_log = 6;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_phonesky_log());
+    }
+
+    // optional int64 timestamp = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp());
+    }
+
+    // optional int64 stateful_total = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_stateful_total());
+    }
+
+    // optional .enterprise_management.AppInstallReportLogEvent.EventType event_type = 2;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_event_type());
+    }
+
+    // optional int32 clouddps_response = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_clouddps_response());
+    }
+
+    // optional int64 stateful_free = 4;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_stateful_free());
+    }
+
+    // optional bool online = 7;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .enterprise_management.AppInstallReportLogEvent.SessionStateChangeType session_state_change_type = 8;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_session_state_change_type());
+    }
+
+  }
+  // optional int64 android_id = 9;
+  if (cached_has_bits & 0x00000100u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+        this->_internal_android_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AppInstallReportLogEvent::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AppInstallReportLogEvent*>(
+      &from));
+}
+
+void AppInstallReportLogEvent::MergeFrom(const AppInstallReportLogEvent& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AppInstallReportLogEvent)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      phonesky_log_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.phonesky_log_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      timestamp_ = from.timestamp_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      stateful_total_ = from.stateful_total_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      event_type_ = from.event_type_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      clouddps_response_ = from.clouddps_response_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      stateful_free_ = from.stateful_free_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      online_ = from.online_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      session_state_change_type_ = from.session_state_change_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00000100u) {
+    _internal_set_android_id(from._internal_android_id());
+  }
+}
+
+void AppInstallReportLogEvent::CopyFrom(const AppInstallReportLogEvent& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AppInstallReportLogEvent)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AppInstallReportLogEvent::IsInitialized() const {
+  return true;
+}
+
+void AppInstallReportLogEvent::InternalSwap(AppInstallReportLogEvent* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  phonesky_log_.Swap(&other->phonesky_log_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(timestamp_, other->timestamp_);
+  swap(stateful_total_, other->stateful_total_);
+  swap(event_type_, other->event_type_);
+  swap(clouddps_response_, other->clouddps_response_);
+  swap(stateful_free_, other->stateful_free_);
+  swap(online_, other->online_);
+  swap(session_state_change_type_, other->session_state_change_type_);
+  swap(android_id_, other->android_id_);
+}
+
+std::string AppInstallReportLogEvent::GetTypeName() const {
+  return "enterprise_management.AppInstallReportLogEvent";
+}
+
+
+// ===================================================================
+
+void ExtensionInstallReport::InitAsDefaultInstance() {
+}
+class ExtensionInstallReport::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ExtensionInstallReport>()._has_bits_);
+  static void set_has_extension_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_incomplete(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+ExtensionInstallReport::ExtensionInstallReport()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ExtensionInstallReport)
+}
+ExtensionInstallReport::ExtensionInstallReport(const ExtensionInstallReport& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      logs_(from.logs_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  extension_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_extension_id()) {
+    extension_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.extension_id_);
+  }
+  incomplete_ = from.incomplete_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ExtensionInstallReport)
+}
+
+void ExtensionInstallReport::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ExtensionInstallReport_device_5fmanagement_5fbackend_2eproto.base);
+  extension_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  incomplete_ = false;
+}
+
+ExtensionInstallReport::~ExtensionInstallReport() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ExtensionInstallReport)
+  SharedDtor();
+}
+
+void ExtensionInstallReport::SharedDtor() {
+  extension_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ExtensionInstallReport::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ExtensionInstallReport& ExtensionInstallReport::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ExtensionInstallReport_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ExtensionInstallReport::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ExtensionInstallReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  logs_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    extension_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  incomplete_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ExtensionInstallReport::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string extension_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_extension_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool incomplete = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_incomplete(&has_bits);
+          incomplete_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ExtensionInstallReportLogEvent logs = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_logs(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ExtensionInstallReport::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ExtensionInstallReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string extension_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_extension_id(), target);
+  }
+
+  // optional bool incomplete = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_incomplete(), target);
+  }
+
+  // repeated .enterprise_management.ExtensionInstallReportLogEvent logs = 3;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_logs_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(3, this->_internal_logs(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ExtensionInstallReport)
+  return target;
+}
+
+size_t ExtensionInstallReport::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ExtensionInstallReport)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ExtensionInstallReportLogEvent logs = 3;
+  total_size += 1UL * this->_internal_logs_size();
+  for (const auto& msg : this->logs_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string extension_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_extension_id());
+    }
+
+    // optional bool incomplete = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ExtensionInstallReport::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ExtensionInstallReport*>(
+      &from));
+}
+
+void ExtensionInstallReport::MergeFrom(const ExtensionInstallReport& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ExtensionInstallReport)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  logs_.MergeFrom(from.logs_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      extension_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.extension_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      incomplete_ = from.incomplete_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ExtensionInstallReport::CopyFrom(const ExtensionInstallReport& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ExtensionInstallReport)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ExtensionInstallReport::IsInitialized() const {
+  return true;
+}
+
+void ExtensionInstallReport::InternalSwap(ExtensionInstallReport* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  logs_.InternalSwap(&other->logs_);
+  extension_id_.Swap(&other->extension_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(incomplete_, other->incomplete_);
+}
+
+std::string ExtensionInstallReport::GetTypeName() const {
+  return "enterprise_management.ExtensionInstallReport";
+}
+
+
+// ===================================================================
+
+void AppInstallReport::InitAsDefaultInstance() {
+}
+class AppInstallReport::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AppInstallReport>()._has_bits_);
+  static void set_has_package(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_incomplete(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+AppInstallReport::AppInstallReport()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AppInstallReport)
+}
+AppInstallReport::AppInstallReport(const AppInstallReport& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      logs_(from.logs_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  package_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_package()) {
+    package_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_);
+  }
+  incomplete_ = from.incomplete_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AppInstallReport)
+}
+
+void AppInstallReport::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AppInstallReport_device_5fmanagement_5fbackend_2eproto.base);
+  package_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  incomplete_ = false;
+}
+
+AppInstallReport::~AppInstallReport() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AppInstallReport)
+  SharedDtor();
+}
+
+void AppInstallReport::SharedDtor() {
+  package_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void AppInstallReport::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AppInstallReport& AppInstallReport::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AppInstallReport_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AppInstallReport::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AppInstallReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  logs_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    package_.ClearNonDefaultToEmptyNoArena();
+  }
+  incomplete_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AppInstallReport::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string package = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_package();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool incomplete = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_incomplete(&has_bits);
+          incomplete_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.AppInstallReportLogEvent logs = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_logs(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AppInstallReport::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AppInstallReport)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string package = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_package(), target);
+  }
+
+  // optional bool incomplete = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_incomplete(), target);
+  }
+
+  // repeated .enterprise_management.AppInstallReportLogEvent logs = 3;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_logs_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(3, this->_internal_logs(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AppInstallReport)
+  return target;
+}
+
+size_t AppInstallReport::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AppInstallReport)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.AppInstallReportLogEvent logs = 3;
+  total_size += 1UL * this->_internal_logs_size();
+  for (const auto& msg : this->logs_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string package = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_package());
+    }
+
+    // optional bool incomplete = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AppInstallReport::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AppInstallReport*>(
+      &from));
+}
+
+void AppInstallReport::MergeFrom(const AppInstallReport& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AppInstallReport)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  logs_.MergeFrom(from.logs_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      package_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.package_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      incomplete_ = from.incomplete_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void AppInstallReport::CopyFrom(const AppInstallReport& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AppInstallReport)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AppInstallReport::IsInitialized() const {
+  return true;
+}
+
+void AppInstallReport::InternalSwap(AppInstallReport* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  logs_.InternalSwap(&other->logs_);
+  package_.Swap(&other->package_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(incomplete_, other->incomplete_);
+}
+
+std::string AppInstallReport::GetTypeName() const {
+  return "enterprise_management.AppInstallReport";
+}
+
+
+// ===================================================================
+
+void AppInstallReportRequest::InitAsDefaultInstance() {
+}
+class AppInstallReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AppInstallReportRequest>()._has_bits_);
+};
+
+AppInstallReportRequest::AppInstallReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AppInstallReportRequest)
+}
+AppInstallReportRequest::AppInstallReportRequest(const AppInstallReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      app_install_reports_(from.app_install_reports_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AppInstallReportRequest)
+}
+
+void AppInstallReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AppInstallReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+}
+
+AppInstallReportRequest::~AppInstallReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AppInstallReportRequest)
+  SharedDtor();
+}
+
+void AppInstallReportRequest::SharedDtor() {
+}
+
+void AppInstallReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AppInstallReportRequest& AppInstallReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AppInstallReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AppInstallReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AppInstallReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  app_install_reports_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AppInstallReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.AppInstallReport app_install_reports = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_app_install_reports(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AppInstallReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AppInstallReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.AppInstallReport app_install_reports = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_app_install_reports_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_app_install_reports(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AppInstallReportRequest)
+  return target;
+}
+
+size_t AppInstallReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AppInstallReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.AppInstallReport app_install_reports = 1;
+  total_size += 1UL * this->_internal_app_install_reports_size();
+  for (const auto& msg : this->app_install_reports_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AppInstallReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AppInstallReportRequest*>(
+      &from));
+}
+
+void AppInstallReportRequest::MergeFrom(const AppInstallReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AppInstallReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  app_install_reports_.MergeFrom(from.app_install_reports_);
+}
+
+void AppInstallReportRequest::CopyFrom(const AppInstallReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AppInstallReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AppInstallReportRequest::IsInitialized() const {
+  return true;
+}
+
+void AppInstallReportRequest::InternalSwap(AppInstallReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  app_install_reports_.InternalSwap(&other->app_install_reports_);
+}
+
+std::string AppInstallReportRequest::GetTypeName() const {
+  return "enterprise_management.AppInstallReportRequest";
+}
+
+
+// ===================================================================
+
+void ExtensionInstallReportRequest::InitAsDefaultInstance() {
+}
+class ExtensionInstallReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ExtensionInstallReportRequest>()._has_bits_);
+};
+
+ExtensionInstallReportRequest::ExtensionInstallReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ExtensionInstallReportRequest)
+}
+ExtensionInstallReportRequest::ExtensionInstallReportRequest(const ExtensionInstallReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      extension_install_reports_(from.extension_install_reports_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ExtensionInstallReportRequest)
+}
+
+void ExtensionInstallReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ExtensionInstallReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+}
+
+ExtensionInstallReportRequest::~ExtensionInstallReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ExtensionInstallReportRequest)
+  SharedDtor();
+}
+
+void ExtensionInstallReportRequest::SharedDtor() {
+}
+
+void ExtensionInstallReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ExtensionInstallReportRequest& ExtensionInstallReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ExtensionInstallReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ExtensionInstallReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ExtensionInstallReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  extension_install_reports_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ExtensionInstallReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .enterprise_management.ExtensionInstallReport extension_install_reports = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_extension_install_reports(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ExtensionInstallReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ExtensionInstallReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ExtensionInstallReport extension_install_reports = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_extension_install_reports_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_extension_install_reports(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ExtensionInstallReportRequest)
+  return target;
+}
+
+size_t ExtensionInstallReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ExtensionInstallReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ExtensionInstallReport extension_install_reports = 1;
+  total_size += 1UL * this->_internal_extension_install_reports_size();
+  for (const auto& msg : this->extension_install_reports_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ExtensionInstallReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ExtensionInstallReportRequest*>(
+      &from));
+}
+
+void ExtensionInstallReportRequest::MergeFrom(const ExtensionInstallReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ExtensionInstallReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  extension_install_reports_.MergeFrom(from.extension_install_reports_);
+}
+
+void ExtensionInstallReportRequest::CopyFrom(const ExtensionInstallReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ExtensionInstallReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ExtensionInstallReportRequest::IsInitialized() const {
+  return true;
+}
+
+void ExtensionInstallReportRequest::InternalSwap(ExtensionInstallReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  extension_install_reports_.InternalSwap(&other->extension_install_reports_);
+}
+
+std::string ExtensionInstallReportRequest::GetTypeName() const {
+  return "enterprise_management.ExtensionInstallReportRequest";
+}
+
+
+// ===================================================================
+
+void AppInstallReportResponse::InitAsDefaultInstance() {
+}
+class AppInstallReportResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AppInstallReportResponse>()._has_bits_);
+};
+
+AppInstallReportResponse::AppInstallReportResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AppInstallReportResponse)
+}
+AppInstallReportResponse::AppInstallReportResponse(const AppInstallReportResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AppInstallReportResponse)
+}
+
+void AppInstallReportResponse::SharedCtor() {
+}
+
+AppInstallReportResponse::~AppInstallReportResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AppInstallReportResponse)
+  SharedDtor();
+}
+
+void AppInstallReportResponse::SharedDtor() {
+}
+
+void AppInstallReportResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AppInstallReportResponse& AppInstallReportResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AppInstallReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AppInstallReportResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AppInstallReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AppInstallReportResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AppInstallReportResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AppInstallReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AppInstallReportResponse)
+  return target;
+}
+
+size_t AppInstallReportResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AppInstallReportResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AppInstallReportResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AppInstallReportResponse*>(
+      &from));
+}
+
+void AppInstallReportResponse::MergeFrom(const AppInstallReportResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AppInstallReportResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void AppInstallReportResponse::CopyFrom(const AppInstallReportResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AppInstallReportResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AppInstallReportResponse::IsInitialized() const {
+  return true;
+}
+
+void AppInstallReportResponse::InternalSwap(AppInstallReportResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string AppInstallReportResponse::GetTypeName() const {
+  return "enterprise_management.AppInstallReportResponse";
+}
+
+
+// ===================================================================
+
+void RefreshAccountRequest::InitAsDefaultInstance() {
+}
+class RefreshAccountRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RefreshAccountRequest>()._has_bits_);
+  static void set_has_account_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+RefreshAccountRequest::RefreshAccountRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RefreshAccountRequest)
+}
+RefreshAccountRequest::RefreshAccountRequest(const RefreshAccountRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  account_type_ = from.account_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RefreshAccountRequest)
+}
+
+void RefreshAccountRequest::SharedCtor() {
+  account_type_ = 0;
+}
+
+RefreshAccountRequest::~RefreshAccountRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RefreshAccountRequest)
+  SharedDtor();
+}
+
+void RefreshAccountRequest::SharedDtor() {
+}
+
+void RefreshAccountRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RefreshAccountRequest& RefreshAccountRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RefreshAccountRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RefreshAccountRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RefreshAccountRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  account_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RefreshAccountRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.RefreshAccountRequest.AccountType account_type = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::RefreshAccountRequest_AccountType_IsValid(val))) {
+            _internal_set_account_type(static_cast<::enterprise_management::RefreshAccountRequest_AccountType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RefreshAccountRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RefreshAccountRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.RefreshAccountRequest.AccountType account_type = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_account_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RefreshAccountRequest)
+  return target;
+}
+
+size_t RefreshAccountRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RefreshAccountRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.RefreshAccountRequest.AccountType account_type = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_account_type());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RefreshAccountRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RefreshAccountRequest*>(
+      &from));
+}
+
+void RefreshAccountRequest::MergeFrom(const RefreshAccountRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RefreshAccountRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_account_type()) {
+    _internal_set_account_type(from._internal_account_type());
+  }
+}
+
+void RefreshAccountRequest::CopyFrom(const RefreshAccountRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RefreshAccountRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RefreshAccountRequest::IsInitialized() const {
+  return true;
+}
+
+void RefreshAccountRequest::InternalSwap(RefreshAccountRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(account_type_, other->account_type_);
+}
+
+std::string RefreshAccountRequest::GetTypeName() const {
+  return "enterprise_management.RefreshAccountRequest";
+}
+
+
+// ===================================================================
+
+void RefreshAccountResponse::InitAsDefaultInstance() {
+}
+class RefreshAccountResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RefreshAccountResponse>()._has_bits_);
+};
+
+RefreshAccountResponse::RefreshAccountResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RefreshAccountResponse)
+}
+RefreshAccountResponse::RefreshAccountResponse(const RefreshAccountResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RefreshAccountResponse)
+}
+
+void RefreshAccountResponse::SharedCtor() {
+}
+
+RefreshAccountResponse::~RefreshAccountResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RefreshAccountResponse)
+  SharedDtor();
+}
+
+void RefreshAccountResponse::SharedDtor() {
+}
+
+void RefreshAccountResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RefreshAccountResponse& RefreshAccountResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RefreshAccountResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RefreshAccountResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RefreshAccountResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RefreshAccountResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RefreshAccountResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RefreshAccountResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RefreshAccountResponse)
+  return target;
+}
+
+size_t RefreshAccountResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RefreshAccountResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RefreshAccountResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RefreshAccountResponse*>(
+      &from));
+}
+
+void RefreshAccountResponse::MergeFrom(const RefreshAccountResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RefreshAccountResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void RefreshAccountResponse::CopyFrom(const RefreshAccountResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RefreshAccountResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RefreshAccountResponse::IsInitialized() const {
+  return true;
+}
+
+void RefreshAccountResponse::InternalSwap(RefreshAccountResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string RefreshAccountResponse::GetTypeName() const {
+  return "enterprise_management.RefreshAccountResponse";
+}
+
+
+// ===================================================================
+
+void RsuLookupKeyUploadRequest::InitAsDefaultInstance() {
+}
+class RsuLookupKeyUploadRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RsuLookupKeyUploadRequest>()._has_bits_);
+  static void set_has_board_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_cr50_hashed_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+RsuLookupKeyUploadRequest::RsuLookupKeyUploadRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RsuLookupKeyUploadRequest)
+}
+RsuLookupKeyUploadRequest::RsuLookupKeyUploadRequest(const RsuLookupKeyUploadRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  board_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_board_id()) {
+    board_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.board_id_);
+  }
+  cr50_hashed_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_cr50_hashed_device_id()) {
+    cr50_hashed_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cr50_hashed_device_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RsuLookupKeyUploadRequest)
+}
+
+void RsuLookupKeyUploadRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RsuLookupKeyUploadRequest_device_5fmanagement_5fbackend_2eproto.base);
+  board_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  cr50_hashed_device_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+RsuLookupKeyUploadRequest::~RsuLookupKeyUploadRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RsuLookupKeyUploadRequest)
+  SharedDtor();
+}
+
+void RsuLookupKeyUploadRequest::SharedDtor() {
+  board_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  cr50_hashed_device_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void RsuLookupKeyUploadRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RsuLookupKeyUploadRequest& RsuLookupKeyUploadRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RsuLookupKeyUploadRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RsuLookupKeyUploadRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RsuLookupKeyUploadRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      board_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      cr50_hashed_device_id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RsuLookupKeyUploadRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes board_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_board_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes cr50_hashed_device_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_cr50_hashed_device_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RsuLookupKeyUploadRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RsuLookupKeyUploadRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes board_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_board_id(), target);
+  }
+
+  // optional bytes cr50_hashed_device_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_cr50_hashed_device_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RsuLookupKeyUploadRequest)
+  return target;
+}
+
+size_t RsuLookupKeyUploadRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RsuLookupKeyUploadRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional bytes board_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_board_id());
+    }
+
+    // optional bytes cr50_hashed_device_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_cr50_hashed_device_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RsuLookupKeyUploadRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RsuLookupKeyUploadRequest*>(
+      &from));
+}
+
+void RsuLookupKeyUploadRequest::MergeFrom(const RsuLookupKeyUploadRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RsuLookupKeyUploadRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      board_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.board_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      cr50_hashed_device_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cr50_hashed_device_id_);
+    }
+  }
+}
+
+void RsuLookupKeyUploadRequest::CopyFrom(const RsuLookupKeyUploadRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RsuLookupKeyUploadRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RsuLookupKeyUploadRequest::IsInitialized() const {
+  return true;
+}
+
+void RsuLookupKeyUploadRequest::InternalSwap(RsuLookupKeyUploadRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  board_id_.Swap(&other->board_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  cr50_hashed_device_id_.Swap(&other->cr50_hashed_device_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string RsuLookupKeyUploadRequest::GetTypeName() const {
+  return "enterprise_management.RsuLookupKeyUploadRequest";
+}
+
+
+// ===================================================================
+
+void RsuLookupKeyUploadResponse::InitAsDefaultInstance() {
+}
+class RsuLookupKeyUploadResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<RsuLookupKeyUploadResponse>()._has_bits_);
+  static void set_has_rsu_lookup_key_updated(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+RsuLookupKeyUploadResponse::RsuLookupKeyUploadResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.RsuLookupKeyUploadResponse)
+}
+RsuLookupKeyUploadResponse::RsuLookupKeyUploadResponse(const RsuLookupKeyUploadResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  rsu_lookup_key_updated_ = from.rsu_lookup_key_updated_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.RsuLookupKeyUploadResponse)
+}
+
+void RsuLookupKeyUploadResponse::SharedCtor() {
+  rsu_lookup_key_updated_ = false;
+}
+
+RsuLookupKeyUploadResponse::~RsuLookupKeyUploadResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.RsuLookupKeyUploadResponse)
+  SharedDtor();
+}
+
+void RsuLookupKeyUploadResponse::SharedDtor() {
+}
+
+void RsuLookupKeyUploadResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RsuLookupKeyUploadResponse& RsuLookupKeyUploadResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RsuLookupKeyUploadResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RsuLookupKeyUploadResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.RsuLookupKeyUploadResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  rsu_lookup_key_updated_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RsuLookupKeyUploadResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool rsu_lookup_key_updated = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_rsu_lookup_key_updated(&has_bits);
+          rsu_lookup_key_updated_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RsuLookupKeyUploadResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.RsuLookupKeyUploadResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool rsu_lookup_key_updated = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_rsu_lookup_key_updated(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.RsuLookupKeyUploadResponse)
+  return target;
+}
+
+size_t RsuLookupKeyUploadResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.RsuLookupKeyUploadResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool rsu_lookup_key_updated = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RsuLookupKeyUploadResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RsuLookupKeyUploadResponse*>(
+      &from));
+}
+
+void RsuLookupKeyUploadResponse::MergeFrom(const RsuLookupKeyUploadResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.RsuLookupKeyUploadResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_rsu_lookup_key_updated()) {
+    _internal_set_rsu_lookup_key_updated(from._internal_rsu_lookup_key_updated());
+  }
+}
+
+void RsuLookupKeyUploadResponse::CopyFrom(const RsuLookupKeyUploadResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.RsuLookupKeyUploadResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RsuLookupKeyUploadResponse::IsInitialized() const {
+  return true;
+}
+
+void RsuLookupKeyUploadResponse::InternalSwap(RsuLookupKeyUploadResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(rsu_lookup_key_updated_, other->rsu_lookup_key_updated_);
+}
+
+std::string RsuLookupKeyUploadResponse::GetTypeName() const {
+  return "enterprise_management.RsuLookupKeyUploadResponse";
+}
+
+
+// ===================================================================
+
+void ESimProfileInfo::InitAsDefaultInstance() {
+}
+class ESimProfileInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ESimProfileInfo>()._has_bits_);
+  static void set_has_iccid(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_smdp_address(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+ESimProfileInfo::ESimProfileInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ESimProfileInfo)
+}
+ESimProfileInfo::ESimProfileInfo(const ESimProfileInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  iccid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_iccid()) {
+    iccid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.iccid_);
+  }
+  smdp_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_smdp_address()) {
+    smdp_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.smdp_address_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ESimProfileInfo)
+}
+
+void ESimProfileInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ESimProfileInfo_device_5fmanagement_5fbackend_2eproto.base);
+  iccid_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  smdp_address_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+ESimProfileInfo::~ESimProfileInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ESimProfileInfo)
+  SharedDtor();
+}
+
+void ESimProfileInfo::SharedDtor() {
+  iccid_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  smdp_address_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ESimProfileInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ESimProfileInfo& ESimProfileInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ESimProfileInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ESimProfileInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ESimProfileInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      iccid_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      smdp_address_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ESimProfileInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string iccid = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_iccid();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string smdp_address = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_smdp_address();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ESimProfileInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ESimProfileInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string iccid = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_iccid(), target);
+  }
+
+  // optional string smdp_address = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_smdp_address(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ESimProfileInfo)
+  return target;
+}
+
+size_t ESimProfileInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ESimProfileInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string iccid = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_iccid());
+    }
+
+    // optional string smdp_address = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_smdp_address());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ESimProfileInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ESimProfileInfo*>(
+      &from));
+}
+
+void ESimProfileInfo::MergeFrom(const ESimProfileInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ESimProfileInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      iccid_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.iccid_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      smdp_address_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.smdp_address_);
+    }
+  }
+}
+
+void ESimProfileInfo::CopyFrom(const ESimProfileInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ESimProfileInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ESimProfileInfo::IsInitialized() const {
+  return true;
+}
+
+void ESimProfileInfo::InternalSwap(ESimProfileInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  iccid_.Swap(&other->iccid_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  smdp_address_.Swap(&other->smdp_address_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string ESimProfileInfo::GetTypeName() const {
+  return "enterprise_management.ESimProfileInfo";
+}
+
+
+// ===================================================================
+
+void UploadEuiccInfoRequest::InitAsDefaultInstance() {
+}
+class UploadEuiccInfoRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UploadEuiccInfoRequest>()._has_bits_);
+  static void set_has_euicc_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_clear_profile_list(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+UploadEuiccInfoRequest::UploadEuiccInfoRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UploadEuiccInfoRequest)
+}
+UploadEuiccInfoRequest::UploadEuiccInfoRequest(const UploadEuiccInfoRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      esim_profiles_(from.esim_profiles_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&euicc_count_, &from.euicc_count_,
+    static_cast<size_t>(reinterpret_cast<char*>(&clear_profile_list_) -
+    reinterpret_cast<char*>(&euicc_count_)) + sizeof(clear_profile_list_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UploadEuiccInfoRequest)
+}
+
+void UploadEuiccInfoRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UploadEuiccInfoRequest_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&euicc_count_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&clear_profile_list_) -
+      reinterpret_cast<char*>(&euicc_count_)) + sizeof(clear_profile_list_));
+}
+
+UploadEuiccInfoRequest::~UploadEuiccInfoRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UploadEuiccInfoRequest)
+  SharedDtor();
+}
+
+void UploadEuiccInfoRequest::SharedDtor() {
+}
+
+void UploadEuiccInfoRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UploadEuiccInfoRequest& UploadEuiccInfoRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UploadEuiccInfoRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UploadEuiccInfoRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UploadEuiccInfoRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  esim_profiles_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&euicc_count_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&clear_profile_list_) -
+        reinterpret_cast<char*>(&euicc_count_)) + sizeof(clear_profile_list_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UploadEuiccInfoRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 euicc_count = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_euicc_count(&has_bits);
+          euicc_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ESimProfileInfo esim_profiles = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_esim_profiles(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional bool clear_profile_list = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_clear_profile_list(&has_bits);
+          clear_profile_list_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UploadEuiccInfoRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UploadEuiccInfoRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 euicc_count = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_euicc_count(), target);
+  }
+
+  // repeated .enterprise_management.ESimProfileInfo esim_profiles = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_esim_profiles_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_esim_profiles(i), target, stream);
+  }
+
+  // optional bool clear_profile_list = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_clear_profile_list(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UploadEuiccInfoRequest)
+  return target;
+}
+
+size_t UploadEuiccInfoRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UploadEuiccInfoRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ESimProfileInfo esim_profiles = 2;
+  total_size += 1UL * this->_internal_esim_profiles_size();
+  for (const auto& msg : this->esim_profiles_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional uint32 euicc_count = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_euicc_count());
+    }
+
+    // optional bool clear_profile_list = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UploadEuiccInfoRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UploadEuiccInfoRequest*>(
+      &from));
+}
+
+void UploadEuiccInfoRequest::MergeFrom(const UploadEuiccInfoRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UploadEuiccInfoRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  esim_profiles_.MergeFrom(from.esim_profiles_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      euicc_count_ = from.euicc_count_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      clear_profile_list_ = from.clear_profile_list_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void UploadEuiccInfoRequest::CopyFrom(const UploadEuiccInfoRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UploadEuiccInfoRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UploadEuiccInfoRequest::IsInitialized() const {
+  return true;
+}
+
+void UploadEuiccInfoRequest::InternalSwap(UploadEuiccInfoRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  esim_profiles_.InternalSwap(&other->esim_profiles_);
+  swap(euicc_count_, other->euicc_count_);
+  swap(clear_profile_list_, other->clear_profile_list_);
+}
+
+std::string UploadEuiccInfoRequest::GetTypeName() const {
+  return "enterprise_management.UploadEuiccInfoRequest";
+}
+
+
+// ===================================================================
+
+void UploadEuiccInfoResponse::InitAsDefaultInstance() {
+}
+class UploadEuiccInfoResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UploadEuiccInfoResponse>()._has_bits_);
+};
+
+UploadEuiccInfoResponse::UploadEuiccInfoResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.UploadEuiccInfoResponse)
+}
+UploadEuiccInfoResponse::UploadEuiccInfoResponse(const UploadEuiccInfoResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.UploadEuiccInfoResponse)
+}
+
+void UploadEuiccInfoResponse::SharedCtor() {
+}
+
+UploadEuiccInfoResponse::~UploadEuiccInfoResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.UploadEuiccInfoResponse)
+  SharedDtor();
+}
+
+void UploadEuiccInfoResponse::SharedDtor() {
+}
+
+void UploadEuiccInfoResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UploadEuiccInfoResponse& UploadEuiccInfoResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UploadEuiccInfoResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UploadEuiccInfoResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.UploadEuiccInfoResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UploadEuiccInfoResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UploadEuiccInfoResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.UploadEuiccInfoResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.UploadEuiccInfoResponse)
+  return target;
+}
+
+size_t UploadEuiccInfoResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.UploadEuiccInfoResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UploadEuiccInfoResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UploadEuiccInfoResponse*>(
+      &from));
+}
+
+void UploadEuiccInfoResponse::MergeFrom(const UploadEuiccInfoResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.UploadEuiccInfoResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void UploadEuiccInfoResponse::CopyFrom(const UploadEuiccInfoResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.UploadEuiccInfoResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UploadEuiccInfoResponse::IsInitialized() const {
+  return true;
+}
+
+void UploadEuiccInfoResponse::InternalSwap(UploadEuiccInfoResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string UploadEuiccInfoResponse::GetTypeName() const {
+  return "enterprise_management.UploadEuiccInfoResponse";
+}
+
+
+// ===================================================================
+
+void PrintJobEvent_PrintJobConfiguration::InitAsDefaultInstance() {
+  ::enterprise_management::_PrintJobEvent_PrintJobConfiguration_default_instance_._instance.get_mutable()->settings_ = const_cast< ::enterprise_management::PrintJobEvent_PrintSettings*>(
+      ::enterprise_management::PrintJobEvent_PrintSettings::internal_default_instance());
+}
+class PrintJobEvent_PrintJobConfiguration::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrintJobEvent_PrintJobConfiguration>()._has_bits_);
+  static void set_has_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_title(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_creation_timestamp_ms(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_completion_timestamp_ms(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_number_of_pages(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::enterprise_management::PrintJobEvent_PrintSettings& settings(const PrintJobEvent_PrintJobConfiguration* msg);
+  static void set_has_settings(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+const ::enterprise_management::PrintJobEvent_PrintSettings&
+PrintJobEvent_PrintJobConfiguration::_Internal::settings(const PrintJobEvent_PrintJobConfiguration* msg) {
+  return *msg->settings_;
+}
+PrintJobEvent_PrintJobConfiguration::PrintJobEvent_PrintJobConfiguration()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+}
+PrintJobEvent_PrintJobConfiguration::PrintJobEvent_PrintJobConfiguration(const PrintJobEvent_PrintJobConfiguration& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_id()) {
+    id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+  }
+  title_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_title()) {
+    title_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.title_);
+  }
+  if (from._internal_has_settings()) {
+    settings_ = new ::enterprise_management::PrintJobEvent_PrintSettings(*from.settings_);
+  } else {
+    settings_ = nullptr;
+  }
+  ::memcpy(&creation_timestamp_ms_, &from.creation_timestamp_ms_,
+    static_cast<size_t>(reinterpret_cast<char*>(&completion_timestamp_ms_) -
+    reinterpret_cast<char*>(&creation_timestamp_ms_)) + sizeof(completion_timestamp_ms_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+}
+
+void PrintJobEvent_PrintJobConfiguration::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrintJobEvent_PrintJobConfiguration_device_5fmanagement_5fbackend_2eproto.base);
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  title_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&settings_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&completion_timestamp_ms_) -
+      reinterpret_cast<char*>(&settings_)) + sizeof(completion_timestamp_ms_));
+}
+
+PrintJobEvent_PrintJobConfiguration::~PrintJobEvent_PrintJobConfiguration() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+  SharedDtor();
+}
+
+void PrintJobEvent_PrintJobConfiguration::SharedDtor() {
+  id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  title_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete settings_;
+}
+
+void PrintJobEvent_PrintJobConfiguration::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrintJobEvent_PrintJobConfiguration& PrintJobEvent_PrintJobConfiguration::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrintJobEvent_PrintJobConfiguration_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrintJobEvent_PrintJobConfiguration::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      title_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(settings_ != nullptr);
+      settings_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00000078u) {
+    ::memset(&creation_timestamp_ms_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&completion_timestamp_ms_) -
+        reinterpret_cast<char*>(&creation_timestamp_ms_)) + sizeof(completion_timestamp_ms_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrintJobEvent_PrintJobConfiguration::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string title = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_title();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 status = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_status(&has_bits);
+          status_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 creation_timestamp_ms = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_creation_timestamp_ms(&has_bits);
+          creation_timestamp_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 completion_timestamp_ms = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_completion_timestamp_ms(&has_bits);
+          completion_timestamp_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 number_of_pages = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_number_of_pages(&has_bits);
+          number_of_pages_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PrintJobEvent.PrintSettings settings = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_settings(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrintJobEvent_PrintJobConfiguration::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_id(), target);
+  }
+
+  // optional string title = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_title(), target);
+  }
+
+  // optional int32 status = 3;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_status(), target);
+  }
+
+  // optional int64 creation_timestamp_ms = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_creation_timestamp_ms(), target);
+  }
+
+  // optional int64 completion_timestamp_ms = 5;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(5, this->_internal_completion_timestamp_ms(), target);
+  }
+
+  // optional int32 number_of_pages = 6;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_number_of_pages(), target);
+  }
+
+  // optional .enterprise_management.PrintJobEvent.PrintSettings settings = 7;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        7, _Internal::settings(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+  return target;
+}
+
+size_t PrintJobEvent_PrintJobConfiguration::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    // optional string id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_id());
+    }
+
+    // optional string title = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_title());
+    }
+
+    // optional .enterprise_management.PrintJobEvent.PrintSettings settings = 7;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *settings_);
+    }
+
+    // optional int64 creation_timestamp_ms = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_creation_timestamp_ms());
+    }
+
+    // optional int32 status = 3;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_status());
+    }
+
+    // optional int32 number_of_pages = 6;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_number_of_pages());
+    }
+
+    // optional int64 completion_timestamp_ms = 5;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_completion_timestamp_ms());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrintJobEvent_PrintJobConfiguration::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrintJobEvent_PrintJobConfiguration*>(
+      &from));
+}
+
+void PrintJobEvent_PrintJobConfiguration::MergeFrom(const PrintJobEvent_PrintJobConfiguration& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      title_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.title_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_settings()->::enterprise_management::PrintJobEvent_PrintSettings::MergeFrom(from._internal_settings());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      creation_timestamp_ms_ = from.creation_timestamp_ms_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      status_ = from.status_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      number_of_pages_ = from.number_of_pages_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      completion_timestamp_ms_ = from.completion_timestamp_ms_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PrintJobEvent_PrintJobConfiguration::CopyFrom(const PrintJobEvent_PrintJobConfiguration& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrintJobEvent_PrintJobConfiguration::IsInitialized() const {
+  return true;
+}
+
+void PrintJobEvent_PrintJobConfiguration::InternalSwap(PrintJobEvent_PrintJobConfiguration* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  id_.Swap(&other->id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  title_.Swap(&other->title_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(settings_, other->settings_);
+  swap(creation_timestamp_ms_, other->creation_timestamp_ms_);
+  swap(status_, other->status_);
+  swap(number_of_pages_, other->number_of_pages_);
+  swap(completion_timestamp_ms_, other->completion_timestamp_ms_);
+}
+
+std::string PrintJobEvent_PrintJobConfiguration::GetTypeName() const {
+  return "enterprise_management.PrintJobEvent.PrintJobConfiguration";
+}
+
+
+// ===================================================================
+
+void PrintJobEvent_Printer::InitAsDefaultInstance() {
+}
+class PrintJobEvent_Printer::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrintJobEvent_Printer>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_uri(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+PrintJobEvent_Printer::PrintJobEvent_Printer()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrintJobEvent.Printer)
+}
+PrintJobEvent_Printer::PrintJobEvent_Printer(const PrintJobEvent_Printer& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  uri_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_uri()) {
+    uri_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.uri_);
+  }
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_id()) {
+    id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrintJobEvent.Printer)
+}
+
+void PrintJobEvent_Printer::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrintJobEvent_Printer_device_5fmanagement_5fbackend_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  uri_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+PrintJobEvent_Printer::~PrintJobEvent_Printer() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrintJobEvent.Printer)
+  SharedDtor();
+}
+
+void PrintJobEvent_Printer::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  uri_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PrintJobEvent_Printer::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrintJobEvent_Printer& PrintJobEvent_Printer::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrintJobEvent_Printer_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrintJobEvent_Printer::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrintJobEvent.Printer)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      uri_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      id_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrintJobEvent_Printer::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string uri = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_uri();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string id = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrintJobEvent_Printer::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrintJobEvent.Printer)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional string uri = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_uri(), target);
+  }
+
+  // optional string id = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrintJobEvent.Printer)
+  return target;
+}
+
+size_t PrintJobEvent_Printer::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrintJobEvent.Printer)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string uri = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_uri());
+    }
+
+    // optional string id = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrintJobEvent_Printer::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrintJobEvent_Printer*>(
+      &from));
+}
+
+void PrintJobEvent_Printer::MergeFrom(const PrintJobEvent_Printer& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrintJobEvent.Printer)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      uri_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.uri_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.id_);
+    }
+  }
+}
+
+void PrintJobEvent_Printer::CopyFrom(const PrintJobEvent_Printer& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrintJobEvent.Printer)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrintJobEvent_Printer::IsInitialized() const {
+  return true;
+}
+
+void PrintJobEvent_Printer::InternalSwap(PrintJobEvent_Printer* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  uri_.Swap(&other->uri_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  id_.Swap(&other->id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string PrintJobEvent_Printer::GetTypeName() const {
+  return "enterprise_management.PrintJobEvent.Printer";
+}
+
+
+// ===================================================================
+
+void PrintJobEvent_PrintSettings_MediaSize::InitAsDefaultInstance() {
+}
+class PrintJobEvent_PrintSettings_MediaSize::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrintJobEvent_PrintSettings_MediaSize>()._has_bits_);
+  static void set_has_width(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_height(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_vendor_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+PrintJobEvent_PrintSettings_MediaSize::PrintJobEvent_PrintSettings_MediaSize()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+}
+PrintJobEvent_PrintSettings_MediaSize::PrintJobEvent_PrintSettings_MediaSize(const PrintJobEvent_PrintSettings_MediaSize& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  vendor_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_vendor_id()) {
+    vendor_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vendor_id_);
+  }
+  ::memcpy(&width_, &from.width_,
+    static_cast<size_t>(reinterpret_cast<char*>(&height_) -
+    reinterpret_cast<char*>(&width_)) + sizeof(height_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+}
+
+void PrintJobEvent_PrintSettings_MediaSize::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrintJobEvent_PrintSettings_MediaSize_device_5fmanagement_5fbackend_2eproto.base);
+  vendor_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&width_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&height_) -
+      reinterpret_cast<char*>(&width_)) + sizeof(height_));
+}
+
+PrintJobEvent_PrintSettings_MediaSize::~PrintJobEvent_PrintSettings_MediaSize() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+  SharedDtor();
+}
+
+void PrintJobEvent_PrintSettings_MediaSize::SharedDtor() {
+  vendor_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PrintJobEvent_PrintSettings_MediaSize::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrintJobEvent_PrintSettings_MediaSize& PrintJobEvent_PrintSettings_MediaSize::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrintJobEvent_PrintSettings_MediaSize_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrintJobEvent_PrintSettings_MediaSize::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    vendor_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&width_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&height_) -
+        reinterpret_cast<char*>(&width_)) + sizeof(height_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrintJobEvent_PrintSettings_MediaSize::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 width = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_width(&has_bits);
+          width_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 height = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_height(&has_bits);
+          height_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string vendor_id = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_vendor_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrintJobEvent_PrintSettings_MediaSize::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 width = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_width(), target);
+  }
+
+  // optional int32 height = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_height(), target);
+  }
+
+  // optional string vendor_id = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_vendor_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+  return target;
+}
+
+size_t PrintJobEvent_PrintSettings_MediaSize::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string vendor_id = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_vendor_id());
+    }
+
+    // optional int32 width = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_width());
+    }
+
+    // optional int32 height = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_height());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrintJobEvent_PrintSettings_MediaSize::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrintJobEvent_PrintSettings_MediaSize*>(
+      &from));
+}
+
+void PrintJobEvent_PrintSettings_MediaSize::MergeFrom(const PrintJobEvent_PrintSettings_MediaSize& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      vendor_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vendor_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      width_ = from.width_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      height_ = from.height_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PrintJobEvent_PrintSettings_MediaSize::CopyFrom(const PrintJobEvent_PrintSettings_MediaSize& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrintJobEvent_PrintSettings_MediaSize::IsInitialized() const {
+  return true;
+}
+
+void PrintJobEvent_PrintSettings_MediaSize::InternalSwap(PrintJobEvent_PrintSettings_MediaSize* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  vendor_id_.Swap(&other->vendor_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(width_, other->width_);
+  swap(height_, other->height_);
+}
+
+std::string PrintJobEvent_PrintSettings_MediaSize::GetTypeName() const {
+  return "enterprise_management.PrintJobEvent.PrintSettings.MediaSize";
+}
+
+
+// ===================================================================
+
+void PrintJobEvent_PrintSettings::InitAsDefaultInstance() {
+  ::enterprise_management::_PrintJobEvent_PrintSettings_default_instance_._instance.get_mutable()->media_size_ = const_cast< ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize*>(
+      ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize::internal_default_instance());
+}
+class PrintJobEvent_PrintSettings::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrintJobEvent_PrintSettings>()._has_bits_);
+  static void set_has_color(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_duplex(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize& media_size(const PrintJobEvent_PrintSettings* msg);
+  static void set_has_media_size(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_copies(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+const ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize&
+PrintJobEvent_PrintSettings::_Internal::media_size(const PrintJobEvent_PrintSettings* msg) {
+  return *msg->media_size_;
+}
+PrintJobEvent_PrintSettings::PrintJobEvent_PrintSettings()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrintJobEvent.PrintSettings)
+}
+PrintJobEvent_PrintSettings::PrintJobEvent_PrintSettings(const PrintJobEvent_PrintSettings& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_media_size()) {
+    media_size_ = new ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize(*from.media_size_);
+  } else {
+    media_size_ = nullptr;
+  }
+  ::memcpy(&color_, &from.color_,
+    static_cast<size_t>(reinterpret_cast<char*>(&copies_) -
+    reinterpret_cast<char*>(&color_)) + sizeof(copies_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrintJobEvent.PrintSettings)
+}
+
+void PrintJobEvent_PrintSettings::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrintJobEvent_PrintSettings_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&media_size_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&copies_) -
+      reinterpret_cast<char*>(&media_size_)) + sizeof(copies_));
+}
+
+PrintJobEvent_PrintSettings::~PrintJobEvent_PrintSettings() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrintJobEvent.PrintSettings)
+  SharedDtor();
+}
+
+void PrintJobEvent_PrintSettings::SharedDtor() {
+  if (this != internal_default_instance()) delete media_size_;
+}
+
+void PrintJobEvent_PrintSettings::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrintJobEvent_PrintSettings& PrintJobEvent_PrintSettings::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrintJobEvent_PrintSettings_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrintJobEvent_PrintSettings::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrintJobEvent.PrintSettings)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(media_size_ != nullptr);
+    media_size_->Clear();
+  }
+  if (cached_has_bits & 0x0000000eu) {
+    ::memset(&color_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&copies_) -
+        reinterpret_cast<char*>(&color_)) + sizeof(copies_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrintJobEvent_PrintSettings::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PrintJobEvent.PrintSettings.ColorMode color = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PrintJobEvent_PrintSettings_ColorMode_IsValid(val))) {
+            _internal_set_color(static_cast<::enterprise_management::PrintJobEvent_PrintSettings_ColorMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PrintJobEvent.PrintSettings.DuplexMode duplex = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode_IsValid(val))) {
+            _internal_set_duplex(static_cast<::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PrintJobEvent.PrintSettings.MediaSize media_size = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_media_size(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 copies = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_copies(&has_bits);
+          copies_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrintJobEvent_PrintSettings::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrintJobEvent.PrintSettings)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PrintJobEvent.PrintSettings.ColorMode color = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_color(), target);
+  }
+
+  // optional .enterprise_management.PrintJobEvent.PrintSettings.DuplexMode duplex = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_duplex(), target);
+  }
+
+  // optional .enterprise_management.PrintJobEvent.PrintSettings.MediaSize media_size = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::media_size(this), target, stream);
+  }
+
+  // optional int32 copies = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_copies(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrintJobEvent.PrintSettings)
+  return target;
+}
+
+size_t PrintJobEvent_PrintSettings::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrintJobEvent.PrintSettings)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional .enterprise_management.PrintJobEvent.PrintSettings.MediaSize media_size = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *media_size_);
+    }
+
+    // optional .enterprise_management.PrintJobEvent.PrintSettings.ColorMode color = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_color());
+    }
+
+    // optional .enterprise_management.PrintJobEvent.PrintSettings.DuplexMode duplex = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_duplex());
+    }
+
+    // optional int32 copies = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_copies());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrintJobEvent_PrintSettings::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrintJobEvent_PrintSettings*>(
+      &from));
+}
+
+void PrintJobEvent_PrintSettings::MergeFrom(const PrintJobEvent_PrintSettings& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrintJobEvent.PrintSettings)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_media_size()->::enterprise_management::PrintJobEvent_PrintSettings_MediaSize::MergeFrom(from._internal_media_size());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      color_ = from.color_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      duplex_ = from.duplex_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      copies_ = from.copies_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PrintJobEvent_PrintSettings::CopyFrom(const PrintJobEvent_PrintSettings& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrintJobEvent.PrintSettings)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrintJobEvent_PrintSettings::IsInitialized() const {
+  return true;
+}
+
+void PrintJobEvent_PrintSettings::InternalSwap(PrintJobEvent_PrintSettings* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(media_size_, other->media_size_);
+  swap(color_, other->color_);
+  swap(duplex_, other->duplex_);
+  swap(copies_, other->copies_);
+}
+
+std::string PrintJobEvent_PrintSettings::GetTypeName() const {
+  return "enterprise_management.PrintJobEvent.PrintSettings";
+}
+
+
+// ===================================================================
+
+void PrintJobEvent::InitAsDefaultInstance() {
+  ::enterprise_management::_PrintJobEvent_default_instance_._instance.get_mutable()->job_configuration_ = const_cast< ::enterprise_management::PrintJobEvent_PrintJobConfiguration*>(
+      ::enterprise_management::PrintJobEvent_PrintJobConfiguration::internal_default_instance());
+  ::enterprise_management::_PrintJobEvent_default_instance_._instance.get_mutable()->printer_ = const_cast< ::enterprise_management::PrintJobEvent_Printer*>(
+      ::enterprise_management::PrintJobEvent_Printer::internal_default_instance());
+}
+class PrintJobEvent::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PrintJobEvent>()._has_bits_);
+  static const ::enterprise_management::PrintJobEvent_PrintJobConfiguration& job_configuration(const PrintJobEvent* msg);
+  static void set_has_job_configuration(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_user_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::PrintJobEvent_Printer& printer(const PrintJobEvent* msg);
+  static void set_has_printer(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::PrintJobEvent_PrintJobConfiguration&
+PrintJobEvent::_Internal::job_configuration(const PrintJobEvent* msg) {
+  return *msg->job_configuration_;
+}
+const ::enterprise_management::PrintJobEvent_Printer&
+PrintJobEvent::_Internal::printer(const PrintJobEvent* msg) {
+  return *msg->printer_;
+}
+PrintJobEvent::PrintJobEvent()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PrintJobEvent)
+}
+PrintJobEvent::PrintJobEvent(const PrintJobEvent& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_job_configuration()) {
+    job_configuration_ = new ::enterprise_management::PrintJobEvent_PrintJobConfiguration(*from.job_configuration_);
+  } else {
+    job_configuration_ = nullptr;
+  }
+  if (from._internal_has_printer()) {
+    printer_ = new ::enterprise_management::PrintJobEvent_Printer(*from.printer_);
+  } else {
+    printer_ = nullptr;
+  }
+  user_type_ = from.user_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PrintJobEvent)
+}
+
+void PrintJobEvent::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrintJobEvent_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&job_configuration_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&user_type_) -
+      reinterpret_cast<char*>(&job_configuration_)) + sizeof(user_type_));
+}
+
+PrintJobEvent::~PrintJobEvent() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PrintJobEvent)
+  SharedDtor();
+}
+
+void PrintJobEvent::SharedDtor() {
+  if (this != internal_default_instance()) delete job_configuration_;
+  if (this != internal_default_instance()) delete printer_;
+}
+
+void PrintJobEvent::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrintJobEvent& PrintJobEvent::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrintJobEvent_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrintJobEvent::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PrintJobEvent)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(job_configuration_ != nullptr);
+      job_configuration_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(printer_ != nullptr);
+      printer_->Clear();
+    }
+  }
+  user_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrintJobEvent::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PrintJobEvent.PrintJobConfiguration job_configuration = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_job_configuration(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PrintJobEvent.UserType user_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PrintJobEvent_UserType_IsValid(val))) {
+            _internal_set_user_type(static_cast<::enterprise_management::PrintJobEvent_UserType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PrintJobEvent.Printer printer = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_printer(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrintJobEvent::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PrintJobEvent)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PrintJobEvent.PrintJobConfiguration job_configuration = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::job_configuration(this), target, stream);
+  }
+
+  // optional .enterprise_management.PrintJobEvent.UserType user_type = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_user_type(), target);
+  }
+
+  // optional .enterprise_management.PrintJobEvent.Printer printer = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::printer(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PrintJobEvent)
+  return target;
+}
+
+size_t PrintJobEvent::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PrintJobEvent)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional .enterprise_management.PrintJobEvent.PrintJobConfiguration job_configuration = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *job_configuration_);
+    }
+
+    // optional .enterprise_management.PrintJobEvent.Printer printer = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *printer_);
+    }
+
+    // optional .enterprise_management.PrintJobEvent.UserType user_type = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_user_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrintJobEvent::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrintJobEvent*>(
+      &from));
+}
+
+void PrintJobEvent::MergeFrom(const PrintJobEvent& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PrintJobEvent)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_job_configuration()->::enterprise_management::PrintJobEvent_PrintJobConfiguration::MergeFrom(from._internal_job_configuration());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_printer()->::enterprise_management::PrintJobEvent_Printer::MergeFrom(from._internal_printer());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      user_type_ = from.user_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void PrintJobEvent::CopyFrom(const PrintJobEvent& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PrintJobEvent)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrintJobEvent::IsInitialized() const {
+  return true;
+}
+
+void PrintJobEvent::InternalSwap(PrintJobEvent* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(job_configuration_, other->job_configuration_);
+  swap(printer_, other->printer_);
+  swap(user_type_, other->user_type_);
+}
+
+std::string PrintJobEvent::GetTypeName() const {
+  return "enterprise_management.PrintJobEvent";
+}
+
+
+// ===================================================================
+
+void App::InitAsDefaultInstance() {
+}
+class App::_Internal {
+ public:
+  using HasBits = decltype(std::declval<App>()._has_bits_);
+  static void set_has_app_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_app_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+App::App()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.App)
+}
+App::App(const App& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      additional_app_id_(from.additional_app_id_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_id()) {
+    app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+  }
+  app_type_ = from.app_type_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.App)
+}
+
+void App::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_App_device_5fmanagement_5fbackend_2eproto.base);
+  app_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  app_type_ = 0;
+}
+
+App::~App() {
+  // @@protoc_insertion_point(destructor:enterprise_management.App)
+  SharedDtor();
+}
+
+void App::SharedDtor() {
+  app_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void App::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const App& App::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_App_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void App::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.App)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  additional_app_id_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    app_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  app_type_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* App::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string app_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_app_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.App.AppType app_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::App_AppType_IsValid(val))) {
+            _internal_set_app_type(static_cast<::enterprise_management::App_AppType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // repeated string additional_app_id = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_additional_app_id();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* App::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.App)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string app_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_app_id(), target);
+  }
+
+  // optional .enterprise_management.App.AppType app_type = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_app_type(), target);
+  }
+
+  // repeated string additional_app_id = 3;
+  for (int i = 0, n = this->_internal_additional_app_id_size(); i < n; i++) {
+    const auto& s = this->_internal_additional_app_id(i);
+    target = stream->WriteString(3, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.App)
+  return target;
+}
+
+size_t App::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.App)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string additional_app_id = 3;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(additional_app_id_.size());
+  for (int i = 0, n = additional_app_id_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      additional_app_id_.Get(i));
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string app_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_id());
+    }
+
+    // optional .enterprise_management.App.AppType app_type = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_app_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void App::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const App*>(
+      &from));
+}
+
+void App::MergeFrom(const App& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.App)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  additional_app_id_.MergeFrom(from.additional_app_id_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      app_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_id_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      app_type_ = from.app_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void App::CopyFrom(const App& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.App)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool App::IsInitialized() const {
+  return true;
+}
+
+void App::InternalSwap(App* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  additional_app_id_.InternalSwap(&other->additional_app_id_);
+  app_id_.Swap(&other->app_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(app_type_, other->app_type_);
+}
+
+std::string App::GetTypeName() const {
+  return "enterprise_management.App";
+}
+
+
+// ===================================================================
+
+void AppActivity::InitAsDefaultInstance() {
+  ::enterprise_management::_AppActivity_default_instance_._instance.get_mutable()->app_info_ = const_cast< ::enterprise_management::App*>(
+      ::enterprise_management::App::internal_default_instance());
+}
+class AppActivity::_Internal {
+ public:
+  using HasBits = decltype(std::declval<AppActivity>()._has_bits_);
+  static const ::enterprise_management::App& app_info(const AppActivity* msg);
+  static void set_has_app_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_populated_at(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_app_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+const ::enterprise_management::App&
+AppActivity::_Internal::app_info(const AppActivity* msg) {
+  return *msg->app_info_;
+}
+AppActivity::AppActivity()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.AppActivity)
+}
+AppActivity::AppActivity(const AppActivity& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      active_time_periods_(from.active_time_periods_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_app_info()) {
+    app_info_ = new ::enterprise_management::App(*from.app_info_);
+  } else {
+    app_info_ = nullptr;
+  }
+  ::memcpy(&populated_at_, &from.populated_at_,
+    static_cast<size_t>(reinterpret_cast<char*>(&app_state_) -
+    reinterpret_cast<char*>(&populated_at_)) + sizeof(app_state_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.AppActivity)
+}
+
+void AppActivity::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_AppActivity_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&app_info_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&app_state_) -
+      reinterpret_cast<char*>(&app_info_)) + sizeof(app_state_));
+}
+
+AppActivity::~AppActivity() {
+  // @@protoc_insertion_point(destructor:enterprise_management.AppActivity)
+  SharedDtor();
+}
+
+void AppActivity::SharedDtor() {
+  if (this != internal_default_instance()) delete app_info_;
+}
+
+void AppActivity::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const AppActivity& AppActivity::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_AppActivity_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void AppActivity::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.AppActivity)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  active_time_periods_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(app_info_ != nullptr);
+    app_info_->Clear();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&populated_at_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&app_state_) -
+        reinterpret_cast<char*>(&populated_at_)) + sizeof(app_state_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* AppActivity::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.App app_info = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_app_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.TimePeriod active_time_periods = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_active_time_periods(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional int64 populated_at = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_populated_at(&has_bits);
+          populated_at_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AppActivity.AppState app_state = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::AppActivity_AppState_IsValid(val))) {
+            _internal_set_app_state(static_cast<::enterprise_management::AppActivity_AppState>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* AppActivity::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.AppActivity)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.App app_info = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::app_info(this), target, stream);
+  }
+
+  // repeated .enterprise_management.TimePeriod active_time_periods = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_active_time_periods_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_active_time_periods(i), target, stream);
+  }
+
+  // optional int64 populated_at = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_populated_at(), target);
+  }
+
+  // optional .enterprise_management.AppActivity.AppState app_state = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_app_state(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.AppActivity)
+  return target;
+}
+
+size_t AppActivity::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.AppActivity)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.TimePeriod active_time_periods = 2;
+  total_size += 1UL * this->_internal_active_time_periods_size();
+  for (const auto& msg : this->active_time_periods_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional .enterprise_management.App app_info = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *app_info_);
+    }
+
+    // optional int64 populated_at = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_populated_at());
+    }
+
+    // optional .enterprise_management.AppActivity.AppState app_state = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_app_state());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void AppActivity::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const AppActivity*>(
+      &from));
+}
+
+void AppActivity::MergeFrom(const AppActivity& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.AppActivity)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  active_time_periods_.MergeFrom(from.active_time_periods_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_app_info()->::enterprise_management::App::MergeFrom(from._internal_app_info());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      populated_at_ = from.populated_at_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      app_state_ = from.app_state_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void AppActivity::CopyFrom(const AppActivity& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.AppActivity)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool AppActivity::IsInitialized() const {
+  return true;
+}
+
+void AppActivity::InternalSwap(AppActivity* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  active_time_periods_.InternalSwap(&other->active_time_periods_);
+  swap(app_info_, other->app_info_);
+  swap(populated_at_, other->populated_at_);
+  swap(app_state_, other->app_state_);
+}
+
+std::string AppActivity::GetTypeName() const {
+  return "enterprise_management.AppActivity";
+}
+
+
+// ===================================================================
+
+void ScreenTimeSpan::InitAsDefaultInstance() {
+  ::enterprise_management::_ScreenTimeSpan_default_instance_._instance.get_mutable()->time_period_ = const_cast< ::enterprise_management::TimePeriod*>(
+      ::enterprise_management::TimePeriod::internal_default_instance());
+}
+class ScreenTimeSpan::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ScreenTimeSpan>()._has_bits_);
+  static const ::enterprise_management::TimePeriod& time_period(const ScreenTimeSpan* msg);
+  static void set_has_time_period(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_active_duration_ms(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::TimePeriod&
+ScreenTimeSpan::_Internal::time_period(const ScreenTimeSpan* msg) {
+  return *msg->time_period_;
+}
+ScreenTimeSpan::ScreenTimeSpan()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ScreenTimeSpan)
+}
+ScreenTimeSpan::ScreenTimeSpan(const ScreenTimeSpan& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_time_period()) {
+    time_period_ = new ::enterprise_management::TimePeriod(*from.time_period_);
+  } else {
+    time_period_ = nullptr;
+  }
+  active_duration_ms_ = from.active_duration_ms_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ScreenTimeSpan)
+}
+
+void ScreenTimeSpan::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ScreenTimeSpan_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&time_period_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&active_duration_ms_) -
+      reinterpret_cast<char*>(&time_period_)) + sizeof(active_duration_ms_));
+}
+
+ScreenTimeSpan::~ScreenTimeSpan() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ScreenTimeSpan)
+  SharedDtor();
+}
+
+void ScreenTimeSpan::SharedDtor() {
+  if (this != internal_default_instance()) delete time_period_;
+}
+
+void ScreenTimeSpan::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ScreenTimeSpan& ScreenTimeSpan::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ScreenTimeSpan_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ScreenTimeSpan::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ScreenTimeSpan)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(time_period_ != nullptr);
+    time_period_->Clear();
+  }
+  active_duration_ms_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ScreenTimeSpan::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.TimePeriod time_period = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_time_period(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 active_duration_ms = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_active_duration_ms(&has_bits);
+          active_duration_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ScreenTimeSpan::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ScreenTimeSpan)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.TimePeriod time_period = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::time_period(this), target, stream);
+  }
+
+  // optional int64 active_duration_ms = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_active_duration_ms(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ScreenTimeSpan)
+  return target;
+}
+
+size_t ScreenTimeSpan::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ScreenTimeSpan)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.TimePeriod time_period = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *time_period_);
+    }
+
+    // optional int64 active_duration_ms = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_active_duration_ms());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ScreenTimeSpan::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ScreenTimeSpan*>(
+      &from));
+}
+
+void ScreenTimeSpan::MergeFrom(const ScreenTimeSpan& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ScreenTimeSpan)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_time_period()->::enterprise_management::TimePeriod::MergeFrom(from._internal_time_period());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      active_duration_ms_ = from.active_duration_ms_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ScreenTimeSpan::CopyFrom(const ScreenTimeSpan& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ScreenTimeSpan)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ScreenTimeSpan::IsInitialized() const {
+  return true;
+}
+
+void ScreenTimeSpan::InternalSwap(ScreenTimeSpan* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(time_period_, other->time_period_);
+  swap(active_duration_ms_, other->active_duration_ms_);
+}
+
+std::string ScreenTimeSpan::GetTypeName() const {
+  return "enterprise_management.ScreenTimeSpan";
+}
+
+
+// ===================================================================
+
+void ChildStatusReportRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_ChildStatusReportRequest_default_instance_._instance.get_mutable()->android_status_ = const_cast< ::enterprise_management::AndroidStatus*>(
+      ::enterprise_management::AndroidStatus::internal_default_instance());
+}
+class ChildStatusReportRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChildStatusReportRequest>()._has_bits_);
+  static void set_has_user_dm_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_timestamp_ms(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_time_zone(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::enterprise_management::AndroidStatus& android_status(const ChildStatusReportRequest* msg);
+  static void set_has_android_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_os_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_boot_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+const ::enterprise_management::AndroidStatus&
+ChildStatusReportRequest::_Internal::android_status(const ChildStatusReportRequest* msg) {
+  return *msg->android_status_;
+}
+ChildStatusReportRequest::ChildStatusReportRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChildStatusReportRequest)
+}
+ChildStatusReportRequest::ChildStatusReportRequest(const ChildStatusReportRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      screen_time_span_(from.screen_time_span_),
+      app_activity_(from.app_activity_),
+      hidden_app_(from.hidden_app_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  user_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_user_dm_token()) {
+    user_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_dm_token_);
+  }
+  time_zone_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_time_zone()) {
+    time_zone_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.time_zone_);
+  }
+  os_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_os_version()) {
+    os_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_version_);
+  }
+  boot_mode_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_boot_mode()) {
+    boot_mode_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.boot_mode_);
+  }
+  if (from._internal_has_android_status()) {
+    android_status_ = new ::enterprise_management::AndroidStatus(*from.android_status_);
+  } else {
+    android_status_ = nullptr;
+  }
+  timestamp_ms_ = from.timestamp_ms_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChildStatusReportRequest)
+}
+
+void ChildStatusReportRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChildStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  user_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  time_zone_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  boot_mode_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&android_status_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&timestamp_ms_) -
+      reinterpret_cast<char*>(&android_status_)) + sizeof(timestamp_ms_));
+}
+
+ChildStatusReportRequest::~ChildStatusReportRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChildStatusReportRequest)
+  SharedDtor();
+}
+
+void ChildStatusReportRequest::SharedDtor() {
+  user_dm_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  time_zone_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  os_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  boot_mode_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete android_status_;
+}
+
+void ChildStatusReportRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChildStatusReportRequest& ChildStatusReportRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChildStatusReportRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChildStatusReportRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChildStatusReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  screen_time_span_.Clear();
+  app_activity_.Clear();
+  hidden_app_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      user_dm_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      time_zone_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      os_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      boot_mode_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(android_status_ != nullptr);
+      android_status_->Clear();
+    }
+  }
+  timestamp_ms_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChildStatusReportRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string user_dm_token = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_user_dm_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 timestamp_ms = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_timestamp_ms(&has_bits);
+          timestamp_ms_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string time_zone = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_time_zone();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.ScreenTimeSpan screen_time_span = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_screen_time_span(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AndroidStatus android_status = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_android_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string os_version = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_os_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string boot_mode = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          auto str = _internal_mutable_boot_mode();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.AppActivity app_activity = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_app_activity(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.App hidden_app = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_hidden_app(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChildStatusReportRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChildStatusReportRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string user_dm_token = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_user_dm_token(), target);
+  }
+
+  // optional int64 timestamp_ms = 2;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_timestamp_ms(), target);
+  }
+
+  // optional string time_zone = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_time_zone(), target);
+  }
+
+  // repeated .enterprise_management.ScreenTimeSpan screen_time_span = 4;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_screen_time_span_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(4, this->_internal_screen_time_span(i), target, stream);
+  }
+
+  // optional .enterprise_management.AndroidStatus android_status = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        5, _Internal::android_status(this), target, stream);
+  }
+
+  // optional string os_version = 6;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_os_version(), target);
+  }
+
+  // optional string boot_mode = 7;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        7, this->_internal_boot_mode(), target);
+  }
+
+  // repeated .enterprise_management.AppActivity app_activity = 8;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_app_activity_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(8, this->_internal_app_activity(i), target, stream);
+  }
+
+  // repeated .enterprise_management.App hidden_app = 9;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_hidden_app_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(9, this->_internal_hidden_app(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChildStatusReportRequest)
+  return target;
+}
+
+size_t ChildStatusReportRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChildStatusReportRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.ScreenTimeSpan screen_time_span = 4;
+  total_size += 1UL * this->_internal_screen_time_span_size();
+  for (const auto& msg : this->screen_time_span_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.AppActivity app_activity = 8;
+  total_size += 1UL * this->_internal_app_activity_size();
+  for (const auto& msg : this->app_activity_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .enterprise_management.App hidden_app = 9;
+  total_size += 1UL * this->_internal_hidden_app_size();
+  for (const auto& msg : this->hidden_app_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string user_dm_token = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_user_dm_token());
+    }
+
+    // optional string time_zone = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_time_zone());
+    }
+
+    // optional string os_version = 6;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_os_version());
+    }
+
+    // optional string boot_mode = 7;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_boot_mode());
+    }
+
+    // optional .enterprise_management.AndroidStatus android_status = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *android_status_);
+    }
+
+    // optional int64 timestamp_ms = 2;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_timestamp_ms());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChildStatusReportRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChildStatusReportRequest*>(
+      &from));
+}
+
+void ChildStatusReportRequest::MergeFrom(const ChildStatusReportRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChildStatusReportRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  screen_time_span_.MergeFrom(from.screen_time_span_);
+  app_activity_.MergeFrom(from.app_activity_);
+  hidden_app_.MergeFrom(from.hidden_app_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      user_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.user_dm_token_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      time_zone_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.time_zone_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      os_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.os_version_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      boot_mode_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.boot_mode_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_android_status()->::enterprise_management::AndroidStatus::MergeFrom(from._internal_android_status());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      timestamp_ms_ = from.timestamp_ms_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ChildStatusReportRequest::CopyFrom(const ChildStatusReportRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChildStatusReportRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChildStatusReportRequest::IsInitialized() const {
+  return true;
+}
+
+void ChildStatusReportRequest::InternalSwap(ChildStatusReportRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  screen_time_span_.InternalSwap(&other->screen_time_span_);
+  app_activity_.InternalSwap(&other->app_activity_);
+  hidden_app_.InternalSwap(&other->hidden_app_);
+  user_dm_token_.Swap(&other->user_dm_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  time_zone_.Swap(&other->time_zone_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  os_version_.Swap(&other->os_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  boot_mode_.Swap(&other->boot_mode_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(android_status_, other->android_status_);
+  swap(timestamp_ms_, other->timestamp_ms_);
+}
+
+std::string ChildStatusReportRequest::GetTypeName() const {
+  return "enterprise_management.ChildStatusReportRequest";
+}
+
+
+// ===================================================================
+
+void ChildStatusReportResponse::InitAsDefaultInstance() {
+}
+class ChildStatusReportResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChildStatusReportResponse>()._has_bits_);
+  static void set_has_error_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_error_message(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+ChildStatusReportResponse::ChildStatusReportResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ChildStatusReportResponse)
+}
+ChildStatusReportResponse::ChildStatusReportResponse(const ChildStatusReportResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_error_message()) {
+    error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+  }
+  error_code_ = from.error_code_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ChildStatusReportResponse)
+}
+
+void ChildStatusReportResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChildStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  error_code_ = 0;
+}
+
+ChildStatusReportResponse::~ChildStatusReportResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ChildStatusReportResponse)
+  SharedDtor();
+}
+
+void ChildStatusReportResponse::SharedDtor() {
+  error_message_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void ChildStatusReportResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChildStatusReportResponse& ChildStatusReportResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChildStatusReportResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChildStatusReportResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ChildStatusReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    error_message_.ClearNonDefaultToEmptyNoArena();
+  }
+  error_code_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChildStatusReportResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 error_code = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_error_code(&has_bits);
+          error_code_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string error_message = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_error_message();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChildStatusReportResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ChildStatusReportResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 error_code = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_error_code(), target);
+  }
+
+  // optional string error_message = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_error_message(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ChildStatusReportResponse)
+  return target;
+}
+
+size_t ChildStatusReportResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ChildStatusReportResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string error_message = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_error_message());
+    }
+
+    // optional int32 error_code = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_error_code());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChildStatusReportResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChildStatusReportResponse*>(
+      &from));
+}
+
+void ChildStatusReportResponse::MergeFrom(const ChildStatusReportResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ChildStatusReportResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      error_code_ = from.error_code_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ChildStatusReportResponse::CopyFrom(const ChildStatusReportResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ChildStatusReportResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChildStatusReportResponse::IsInitialized() const {
+  return true;
+}
+
+void ChildStatusReportResponse::InternalSwap(ChildStatusReportResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  error_message_.Swap(&other->error_message_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(error_code_, other->error_code_);
+}
+
+std::string ChildStatusReportResponse::GetTypeName() const {
+  return "enterprise_management.ChildStatusReportResponse";
+}
+
+
+// ===================================================================
+
+void StartCsrRequest::InitAsDefaultInstance() {
+}
+class StartCsrRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StartCsrRequest>()._has_bits_);
+};
+
+StartCsrRequest::StartCsrRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.StartCsrRequest)
+}
+StartCsrRequest::StartCsrRequest(const StartCsrRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.StartCsrRequest)
+}
+
+void StartCsrRequest::SharedCtor() {
+}
+
+StartCsrRequest::~StartCsrRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.StartCsrRequest)
+  SharedDtor();
+}
+
+void StartCsrRequest::SharedDtor() {
+}
+
+void StartCsrRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StartCsrRequest& StartCsrRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StartCsrRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StartCsrRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.StartCsrRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StartCsrRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StartCsrRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.StartCsrRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.StartCsrRequest)
+  return target;
+}
+
+size_t StartCsrRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.StartCsrRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StartCsrRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StartCsrRequest*>(
+      &from));
+}
+
+void StartCsrRequest::MergeFrom(const StartCsrRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.StartCsrRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void StartCsrRequest::CopyFrom(const StartCsrRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.StartCsrRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StartCsrRequest::IsInitialized() const {
+  return true;
+}
+
+void StartCsrRequest::InternalSwap(StartCsrRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string StartCsrRequest::GetTypeName() const {
+  return "enterprise_management.StartCsrRequest";
+}
+
+
+// ===================================================================
+
+void StartCsrResponse::InitAsDefaultInstance() {
+}
+class StartCsrResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StartCsrResponse>()._has_bits_);
+  static void set_has_invalidation_topic(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_va_challenge(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_hashing_algorithm(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_signing_algorithm(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_data_to_sign(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+StartCsrResponse::StartCsrResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.StartCsrResponse)
+}
+StartCsrResponse::StartCsrResponse(const StartCsrResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  invalidation_topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_invalidation_topic()) {
+    invalidation_topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.invalidation_topic_);
+  }
+  va_challenge_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_va_challenge()) {
+    va_challenge_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.va_challenge_);
+  }
+  data_to_sign_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_data_to_sign()) {
+    data_to_sign_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.data_to_sign_);
+  }
+  ::memcpy(&signing_algorithm_, &from.signing_algorithm_,
+    static_cast<size_t>(reinterpret_cast<char*>(&hashing_algorithm_) -
+    reinterpret_cast<char*>(&signing_algorithm_)) + sizeof(hashing_algorithm_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.StartCsrResponse)
+}
+
+void StartCsrResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StartCsrResponse_device_5fmanagement_5fbackend_2eproto.base);
+  invalidation_topic_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  va_challenge_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  data_to_sign_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&signing_algorithm_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&hashing_algorithm_) -
+      reinterpret_cast<char*>(&signing_algorithm_)) + sizeof(hashing_algorithm_));
+}
+
+StartCsrResponse::~StartCsrResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.StartCsrResponse)
+  SharedDtor();
+}
+
+void StartCsrResponse::SharedDtor() {
+  invalidation_topic_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  va_challenge_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  data_to_sign_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void StartCsrResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StartCsrResponse& StartCsrResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StartCsrResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StartCsrResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.StartCsrResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      invalidation_topic_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      va_challenge_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      data_to_sign_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000018u) {
+    ::memset(&signing_algorithm_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&hashing_algorithm_) -
+        reinterpret_cast<char*>(&signing_algorithm_)) + sizeof(hashing_algorithm_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StartCsrResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string invalidation_topic = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_invalidation_topic();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes va_challenge = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_va_challenge();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SigningAlgorithm signing_algorithm = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::SigningAlgorithm_IsValid(val))) {
+            _internal_set_signing_algorithm(static_cast<::enterprise_management::SigningAlgorithm>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bytes data_to_sign = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_data_to_sign();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.HashingAlgorithm hashing_algorithm = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::HashingAlgorithm_IsValid(val))) {
+            _internal_set_hashing_algorithm(static_cast<::enterprise_management::HashingAlgorithm>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(5, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StartCsrResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.StartCsrResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string invalidation_topic = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_invalidation_topic(), target);
+  }
+
+  // optional bytes va_challenge = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_va_challenge(), target);
+  }
+
+  // optional .enterprise_management.SigningAlgorithm signing_algorithm = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_signing_algorithm(), target);
+  }
+
+  // optional bytes data_to_sign = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteBytesMaybeAliased(
+        4, this->_internal_data_to_sign(), target);
+  }
+
+  // optional .enterprise_management.HashingAlgorithm hashing_algorithm = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      5, this->_internal_hashing_algorithm(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.StartCsrResponse)
+  return target;
+}
+
+size_t StartCsrResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.StartCsrResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string invalidation_topic = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_invalidation_topic());
+    }
+
+    // optional bytes va_challenge = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_va_challenge());
+    }
+
+    // optional bytes data_to_sign = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_data_to_sign());
+    }
+
+    // optional .enterprise_management.SigningAlgorithm signing_algorithm = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_signing_algorithm());
+    }
+
+    // optional .enterprise_management.HashingAlgorithm hashing_algorithm = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_hashing_algorithm());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StartCsrResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StartCsrResponse*>(
+      &from));
+}
+
+void StartCsrResponse::MergeFrom(const StartCsrResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.StartCsrResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      invalidation_topic_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.invalidation_topic_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      va_challenge_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.va_challenge_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      data_to_sign_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.data_to_sign_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      signing_algorithm_ = from.signing_algorithm_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      hashing_algorithm_ = from.hashing_algorithm_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void StartCsrResponse::CopyFrom(const StartCsrResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.StartCsrResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StartCsrResponse::IsInitialized() const {
+  return true;
+}
+
+void StartCsrResponse::InternalSwap(StartCsrResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  invalidation_topic_.Swap(&other->invalidation_topic_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  va_challenge_.Swap(&other->va_challenge_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  data_to_sign_.Swap(&other->data_to_sign_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(signing_algorithm_, other->signing_algorithm_);
+  swap(hashing_algorithm_, other->hashing_algorithm_);
+}
+
+std::string StartCsrResponse::GetTypeName() const {
+  return "enterprise_management.StartCsrResponse";
+}
+
+
+// ===================================================================
+
+void FinishCsrRequest::InitAsDefaultInstance() {
+}
+class FinishCsrRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<FinishCsrRequest>()._has_bits_);
+  static void set_has_va_challenge_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_signature(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+FinishCsrRequest::FinishCsrRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.FinishCsrRequest)
+}
+FinishCsrRequest::FinishCsrRequest(const FinishCsrRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  va_challenge_response_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_va_challenge_response()) {
+    va_challenge_response_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.va_challenge_response_);
+  }
+  signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_signature()) {
+    signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.signature_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.FinishCsrRequest)
+}
+
+void FinishCsrRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FinishCsrRequest_device_5fmanagement_5fbackend_2eproto.base);
+  va_challenge_response_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+FinishCsrRequest::~FinishCsrRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.FinishCsrRequest)
+  SharedDtor();
+}
+
+void FinishCsrRequest::SharedDtor() {
+  va_challenge_response_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  signature_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void FinishCsrRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const FinishCsrRequest& FinishCsrRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_FinishCsrRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void FinishCsrRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.FinishCsrRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      va_challenge_response_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      signature_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* FinishCsrRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes va_challenge_response = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_va_challenge_response();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes signature = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_signature();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* FinishCsrRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.FinishCsrRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes va_challenge_response = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_va_challenge_response(), target);
+  }
+
+  // optional bytes signature = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_signature(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.FinishCsrRequest)
+  return target;
+}
+
+size_t FinishCsrRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.FinishCsrRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional bytes va_challenge_response = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_va_challenge_response());
+    }
+
+    // optional bytes signature = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_signature());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void FinishCsrRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const FinishCsrRequest*>(
+      &from));
+}
+
+void FinishCsrRequest::MergeFrom(const FinishCsrRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.FinishCsrRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      va_challenge_response_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.va_challenge_response_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.signature_);
+    }
+  }
+}
+
+void FinishCsrRequest::CopyFrom(const FinishCsrRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.FinishCsrRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool FinishCsrRequest::IsInitialized() const {
+  return true;
+}
+
+void FinishCsrRequest::InternalSwap(FinishCsrRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  va_challenge_response_.Swap(&other->va_challenge_response_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  signature_.Swap(&other->signature_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string FinishCsrRequest::GetTypeName() const {
+  return "enterprise_management.FinishCsrRequest";
+}
+
+
+// ===================================================================
+
+void FinishCsrResponse::InitAsDefaultInstance() {
+}
+class FinishCsrResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<FinishCsrResponse>()._has_bits_);
+};
+
+FinishCsrResponse::FinishCsrResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.FinishCsrResponse)
+}
+FinishCsrResponse::FinishCsrResponse(const FinishCsrResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.FinishCsrResponse)
+}
+
+void FinishCsrResponse::SharedCtor() {
+}
+
+FinishCsrResponse::~FinishCsrResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.FinishCsrResponse)
+  SharedDtor();
+}
+
+void FinishCsrResponse::SharedDtor() {
+}
+
+void FinishCsrResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const FinishCsrResponse& FinishCsrResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_FinishCsrResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void FinishCsrResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.FinishCsrResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* FinishCsrResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* FinishCsrResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.FinishCsrResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.FinishCsrResponse)
+  return target;
+}
+
+size_t FinishCsrResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.FinishCsrResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void FinishCsrResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const FinishCsrResponse*>(
+      &from));
+}
+
+void FinishCsrResponse::MergeFrom(const FinishCsrResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.FinishCsrResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void FinishCsrResponse::CopyFrom(const FinishCsrResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.FinishCsrResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool FinishCsrResponse::IsInitialized() const {
+  return true;
+}
+
+void FinishCsrResponse::InternalSwap(FinishCsrResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string FinishCsrResponse::GetTypeName() const {
+  return "enterprise_management.FinishCsrResponse";
+}
+
+
+// ===================================================================
+
+void DownloadCertRequest::InitAsDefaultInstance() {
+}
+class DownloadCertRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DownloadCertRequest>()._has_bits_);
+};
+
+DownloadCertRequest::DownloadCertRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DownloadCertRequest)
+}
+DownloadCertRequest::DownloadCertRequest(const DownloadCertRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DownloadCertRequest)
+}
+
+void DownloadCertRequest::SharedCtor() {
+}
+
+DownloadCertRequest::~DownloadCertRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DownloadCertRequest)
+  SharedDtor();
+}
+
+void DownloadCertRequest::SharedDtor() {
+}
+
+void DownloadCertRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DownloadCertRequest& DownloadCertRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DownloadCertRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DownloadCertRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DownloadCertRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DownloadCertRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DownloadCertRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DownloadCertRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DownloadCertRequest)
+  return target;
+}
+
+size_t DownloadCertRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DownloadCertRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DownloadCertRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DownloadCertRequest*>(
+      &from));
+}
+
+void DownloadCertRequest::MergeFrom(const DownloadCertRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DownloadCertRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+}
+
+void DownloadCertRequest::CopyFrom(const DownloadCertRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DownloadCertRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DownloadCertRequest::IsInitialized() const {
+  return true;
+}
+
+void DownloadCertRequest::InternalSwap(DownloadCertRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+}
+
+std::string DownloadCertRequest::GetTypeName() const {
+  return "enterprise_management.DownloadCertRequest";
+}
+
+
+// ===================================================================
+
+void DownloadCertResponse::InitAsDefaultInstance() {
+}
+class DownloadCertResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DownloadCertResponse>()._has_bits_);
+  static void set_has_pem_encoded_certificate(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DownloadCertResponse::DownloadCertResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DownloadCertResponse)
+}
+DownloadCertResponse::DownloadCertResponse(const DownloadCertResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  pem_encoded_certificate_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_pem_encoded_certificate()) {
+    pem_encoded_certificate_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.pem_encoded_certificate_);
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DownloadCertResponse)
+}
+
+void DownloadCertResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DownloadCertResponse_device_5fmanagement_5fbackend_2eproto.base);
+  pem_encoded_certificate_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DownloadCertResponse::~DownloadCertResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DownloadCertResponse)
+  SharedDtor();
+}
+
+void DownloadCertResponse::SharedDtor() {
+  pem_encoded_certificate_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DownloadCertResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DownloadCertResponse& DownloadCertResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DownloadCertResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DownloadCertResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DownloadCertResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    pem_encoded_certificate_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DownloadCertResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string pem_encoded_certificate = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_pem_encoded_certificate();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DownloadCertResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DownloadCertResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string pem_encoded_certificate = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_pem_encoded_certificate(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DownloadCertResponse)
+  return target;
+}
+
+size_t DownloadCertResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DownloadCertResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string pem_encoded_certificate = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_pem_encoded_certificate());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DownloadCertResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DownloadCertResponse*>(
+      &from));
+}
+
+void DownloadCertResponse::MergeFrom(const DownloadCertResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DownloadCertResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_pem_encoded_certificate()) {
+    _has_bits_[0] |= 0x00000001u;
+    pem_encoded_certificate_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.pem_encoded_certificate_);
+  }
+}
+
+void DownloadCertResponse::CopyFrom(const DownloadCertResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DownloadCertResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DownloadCertResponse::IsInitialized() const {
+  return true;
+}
+
+void DownloadCertResponse::InternalSwap(DownloadCertResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  pem_encoded_certificate_.Swap(&other->pem_encoded_certificate_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DownloadCertResponse::GetTypeName() const {
+  return "enterprise_management.DownloadCertResponse";
+}
+
+
+// ===================================================================
+
+void ClientCertificateProvisioningRequest::InitAsDefaultInstance() {
+}
+class ClientCertificateProvisioningRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ClientCertificateProvisioningRequest>()._has_bits_);
+  static void set_has_certificate_scope(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_cert_profile_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_public_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_device_dm_token(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::enterprise_management::StartCsrRequest& start_csr_request(const ClientCertificateProvisioningRequest* msg);
+  static const ::enterprise_management::FinishCsrRequest& finish_csr_request(const ClientCertificateProvisioningRequest* msg);
+  static const ::enterprise_management::DownloadCertRequest& download_cert_request(const ClientCertificateProvisioningRequest* msg);
+  static void set_has_policy_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+const ::enterprise_management::StartCsrRequest&
+ClientCertificateProvisioningRequest::_Internal::start_csr_request(const ClientCertificateProvisioningRequest* msg) {
+  return *msg->request_.start_csr_request_;
+}
+const ::enterprise_management::FinishCsrRequest&
+ClientCertificateProvisioningRequest::_Internal::finish_csr_request(const ClientCertificateProvisioningRequest* msg) {
+  return *msg->request_.finish_csr_request_;
+}
+const ::enterprise_management::DownloadCertRequest&
+ClientCertificateProvisioningRequest::_Internal::download_cert_request(const ClientCertificateProvisioningRequest* msg) {
+  return *msg->request_.download_cert_request_;
+}
+void ClientCertificateProvisioningRequest::set_allocated_start_csr_request(::enterprise_management::StartCsrRequest* start_csr_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  clear_request();
+  if (start_csr_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      start_csr_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, start_csr_request, submessage_arena);
+    }
+    set_has_start_csr_request();
+    request_.start_csr_request_ = start_csr_request;
+  }
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningRequest.start_csr_request)
+}
+void ClientCertificateProvisioningRequest::set_allocated_finish_csr_request(::enterprise_management::FinishCsrRequest* finish_csr_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  clear_request();
+  if (finish_csr_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      finish_csr_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, finish_csr_request, submessage_arena);
+    }
+    set_has_finish_csr_request();
+    request_.finish_csr_request_ = finish_csr_request;
+  }
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningRequest.finish_csr_request)
+}
+void ClientCertificateProvisioningRequest::set_allocated_download_cert_request(::enterprise_management::DownloadCertRequest* download_cert_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  clear_request();
+  if (download_cert_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      download_cert_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, download_cert_request, submessage_arena);
+    }
+    set_has_download_cert_request();
+    request_.download_cert_request_ = download_cert_request;
+  }
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningRequest.download_cert_request)
+}
+ClientCertificateProvisioningRequest::ClientCertificateProvisioningRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ClientCertificateProvisioningRequest)
+}
+ClientCertificateProvisioningRequest::ClientCertificateProvisioningRequest(const ClientCertificateProvisioningRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  certificate_scope_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_certificate_scope()) {
+    certificate_scope_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.certificate_scope_);
+  }
+  cert_profile_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_cert_profile_id()) {
+    cert_profile_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cert_profile_id_);
+  }
+  public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_public_key()) {
+    public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.public_key_);
+  }
+  device_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_dm_token()) {
+    device_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_dm_token_);
+  }
+  policy_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_policy_version()) {
+    policy_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_version_);
+  }
+  clear_has_request();
+  switch (from.request_case()) {
+    case kStartCsrRequest: {
+      _internal_mutable_start_csr_request()->::enterprise_management::StartCsrRequest::MergeFrom(from._internal_start_csr_request());
+      break;
+    }
+    case kFinishCsrRequest: {
+      _internal_mutable_finish_csr_request()->::enterprise_management::FinishCsrRequest::MergeFrom(from._internal_finish_csr_request());
+      break;
+    }
+    case kDownloadCertRequest: {
+      _internal_mutable_download_cert_request()->::enterprise_management::DownloadCertRequest::MergeFrom(from._internal_download_cert_request());
+      break;
+    }
+    case REQUEST_NOT_SET: {
+      break;
+    }
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ClientCertificateProvisioningRequest)
+}
+
+void ClientCertificateProvisioningRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ClientCertificateProvisioningRequest_device_5fmanagement_5fbackend_2eproto.base);
+  certificate_scope_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  cert_profile_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_dm_token_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  clear_has_request();
+}
+
+ClientCertificateProvisioningRequest::~ClientCertificateProvisioningRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ClientCertificateProvisioningRequest)
+  SharedDtor();
+}
+
+void ClientCertificateProvisioningRequest::SharedDtor() {
+  certificate_scope_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  cert_profile_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  public_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_dm_token_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (has_request()) {
+    clear_request();
+  }
+}
+
+void ClientCertificateProvisioningRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ClientCertificateProvisioningRequest& ClientCertificateProvisioningRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ClientCertificateProvisioningRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ClientCertificateProvisioningRequest::clear_request() {
+// @@protoc_insertion_point(one_of_clear_start:enterprise_management.ClientCertificateProvisioningRequest)
+  switch (request_case()) {
+    case kStartCsrRequest: {
+      delete request_.start_csr_request_;
+      break;
+    }
+    case kFinishCsrRequest: {
+      delete request_.finish_csr_request_;
+      break;
+    }
+    case kDownloadCertRequest: {
+      delete request_.download_cert_request_;
+      break;
+    }
+    case REQUEST_NOT_SET: {
+      break;
+    }
+  }
+  _oneof_case_[0] = REQUEST_NOT_SET;
+}
+
+
+void ClientCertificateProvisioningRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ClientCertificateProvisioningRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      certificate_scope_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      cert_profile_id_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      public_key_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      device_dm_token_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      policy_version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  clear_request();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ClientCertificateProvisioningRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string certificate_scope = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_certificate_scope();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string cert_profile_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_cert_profile_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes public_key = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_public_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_dm_token = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_device_dm_token();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.StartCsrRequest start_csr_request = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_start_csr_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.FinishCsrRequest finish_csr_request = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_finish_csr_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DownloadCertRequest download_cert_request = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_download_cert_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes policy_version = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          auto str = _internal_mutable_policy_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ClientCertificateProvisioningRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ClientCertificateProvisioningRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string certificate_scope = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_certificate_scope(), target);
+  }
+
+  // optional string cert_profile_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_cert_profile_id(), target);
+  }
+
+  // optional bytes public_key = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteBytesMaybeAliased(
+        3, this->_internal_public_key(), target);
+  }
+
+  // optional string device_dm_token = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_device_dm_token(), target);
+  }
+
+  switch (request_case()) {
+    case kStartCsrRequest: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+        InternalWriteMessage(
+          5, _Internal::start_csr_request(this), target, stream);
+      break;
+    }
+    case kFinishCsrRequest: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+        InternalWriteMessage(
+          6, _Internal::finish_csr_request(this), target, stream);
+      break;
+    }
+    case kDownloadCertRequest: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+        InternalWriteMessage(
+          7, _Internal::download_cert_request(this), target, stream);
+      break;
+    }
+    default: ;
+  }
+  // optional bytes policy_version = 8;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->WriteBytesMaybeAliased(
+        8, this->_internal_policy_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ClientCertificateProvisioningRequest)
+  return target;
+}
+
+size_t ClientCertificateProvisioningRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ClientCertificateProvisioningRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string certificate_scope = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_certificate_scope());
+    }
+
+    // optional string cert_profile_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_cert_profile_id());
+    }
+
+    // optional bytes public_key = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_public_key());
+    }
+
+    // optional string device_dm_token = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_dm_token());
+    }
+
+    // optional bytes policy_version = 8;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_policy_version());
+    }
+
+  }
+  switch (request_case()) {
+    // optional .enterprise_management.StartCsrRequest start_csr_request = 5;
+    case kStartCsrRequest: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *request_.start_csr_request_);
+      break;
+    }
+    // optional .enterprise_management.FinishCsrRequest finish_csr_request = 6;
+    case kFinishCsrRequest: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *request_.finish_csr_request_);
+      break;
+    }
+    // optional .enterprise_management.DownloadCertRequest download_cert_request = 7;
+    case kDownloadCertRequest: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *request_.download_cert_request_);
+      break;
+    }
+    case REQUEST_NOT_SET: {
+      break;
+    }
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ClientCertificateProvisioningRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ClientCertificateProvisioningRequest*>(
+      &from));
+}
+
+void ClientCertificateProvisioningRequest::MergeFrom(const ClientCertificateProvisioningRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ClientCertificateProvisioningRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      certificate_scope_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.certificate_scope_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      cert_profile_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cert_profile_id_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.public_key_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      device_dm_token_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_dm_token_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _has_bits_[0] |= 0x00000010u;
+      policy_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.policy_version_);
+    }
+  }
+  switch (from.request_case()) {
+    case kStartCsrRequest: {
+      _internal_mutable_start_csr_request()->::enterprise_management::StartCsrRequest::MergeFrom(from._internal_start_csr_request());
+      break;
+    }
+    case kFinishCsrRequest: {
+      _internal_mutable_finish_csr_request()->::enterprise_management::FinishCsrRequest::MergeFrom(from._internal_finish_csr_request());
+      break;
+    }
+    case kDownloadCertRequest: {
+      _internal_mutable_download_cert_request()->::enterprise_management::DownloadCertRequest::MergeFrom(from._internal_download_cert_request());
+      break;
+    }
+    case REQUEST_NOT_SET: {
+      break;
+    }
+  }
+}
+
+void ClientCertificateProvisioningRequest::CopyFrom(const ClientCertificateProvisioningRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ClientCertificateProvisioningRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ClientCertificateProvisioningRequest::IsInitialized() const {
+  return true;
+}
+
+void ClientCertificateProvisioningRequest::InternalSwap(ClientCertificateProvisioningRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  certificate_scope_.Swap(&other->certificate_scope_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  cert_profile_id_.Swap(&other->cert_profile_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  public_key_.Swap(&other->public_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_dm_token_.Swap(&other->device_dm_token_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  policy_version_.Swap(&other->policy_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(request_, other->request_);
+  swap(_oneof_case_[0], other->_oneof_case_[0]);
+}
+
+std::string ClientCertificateProvisioningRequest::GetTypeName() const {
+  return "enterprise_management.ClientCertificateProvisioningRequest";
+}
+
+
+// ===================================================================
+
+void ClientCertificateProvisioningResponse::InitAsDefaultInstance() {
+}
+class ClientCertificateProvisioningResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ClientCertificateProvisioningResponse>()._has_bits_);
+  static void set_has_try_again_later(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::StartCsrResponse& start_csr_response(const ClientCertificateProvisioningResponse* msg);
+  static const ::enterprise_management::FinishCsrResponse& finish_csr_response(const ClientCertificateProvisioningResponse* msg);
+  static const ::enterprise_management::DownloadCertResponse& download_cert_response(const ClientCertificateProvisioningResponse* msg);
+};
+
+const ::enterprise_management::StartCsrResponse&
+ClientCertificateProvisioningResponse::_Internal::start_csr_response(const ClientCertificateProvisioningResponse* msg) {
+  return *msg->response_.start_csr_response_;
+}
+const ::enterprise_management::FinishCsrResponse&
+ClientCertificateProvisioningResponse::_Internal::finish_csr_response(const ClientCertificateProvisioningResponse* msg) {
+  return *msg->response_.finish_csr_response_;
+}
+const ::enterprise_management::DownloadCertResponse&
+ClientCertificateProvisioningResponse::_Internal::download_cert_response(const ClientCertificateProvisioningResponse* msg) {
+  return *msg->response_.download_cert_response_;
+}
+void ClientCertificateProvisioningResponse::set_allocated_start_csr_response(::enterprise_management::StartCsrResponse* start_csr_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  clear_response();
+  if (start_csr_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      start_csr_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, start_csr_response, submessage_arena);
+    }
+    set_has_start_csr_response();
+    response_.start_csr_response_ = start_csr_response;
+  }
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningResponse.start_csr_response)
+}
+void ClientCertificateProvisioningResponse::set_allocated_finish_csr_response(::enterprise_management::FinishCsrResponse* finish_csr_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  clear_response();
+  if (finish_csr_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      finish_csr_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, finish_csr_response, submessage_arena);
+    }
+    set_has_finish_csr_response();
+    response_.finish_csr_response_ = finish_csr_response;
+  }
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningResponse.finish_csr_response)
+}
+void ClientCertificateProvisioningResponse::set_allocated_download_cert_response(::enterprise_management::DownloadCertResponse* download_cert_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  clear_response();
+  if (download_cert_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      download_cert_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, download_cert_response, submessage_arena);
+    }
+    set_has_download_cert_response();
+    response_.download_cert_response_ = download_cert_response;
+  }
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningResponse.download_cert_response)
+}
+ClientCertificateProvisioningResponse::ClientCertificateProvisioningResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.ClientCertificateProvisioningResponse)
+}
+ClientCertificateProvisioningResponse::ClientCertificateProvisioningResponse(const ClientCertificateProvisioningResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  try_again_later_ = from.try_again_later_;
+  clear_has_response();
+  switch (from.response_case()) {
+    case kError: {
+      _internal_set_error(from._internal_error());
+      break;
+    }
+    case kStartCsrResponse: {
+      _internal_mutable_start_csr_response()->::enterprise_management::StartCsrResponse::MergeFrom(from._internal_start_csr_response());
+      break;
+    }
+    case kFinishCsrResponse: {
+      _internal_mutable_finish_csr_response()->::enterprise_management::FinishCsrResponse::MergeFrom(from._internal_finish_csr_response());
+      break;
+    }
+    case kDownloadCertResponse: {
+      _internal_mutable_download_cert_response()->::enterprise_management::DownloadCertResponse::MergeFrom(from._internal_download_cert_response());
+      break;
+    }
+    case RESPONSE_NOT_SET: {
+      break;
+    }
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.ClientCertificateProvisioningResponse)
+}
+
+void ClientCertificateProvisioningResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ClientCertificateProvisioningResponse_device_5fmanagement_5fbackend_2eproto.base);
+  try_again_later_ = PROTOBUF_LONGLONG(0);
+  clear_has_response();
+}
+
+ClientCertificateProvisioningResponse::~ClientCertificateProvisioningResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.ClientCertificateProvisioningResponse)
+  SharedDtor();
+}
+
+void ClientCertificateProvisioningResponse::SharedDtor() {
+  if (has_response()) {
+    clear_response();
+  }
+}
+
+void ClientCertificateProvisioningResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ClientCertificateProvisioningResponse& ClientCertificateProvisioningResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ClientCertificateProvisioningResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ClientCertificateProvisioningResponse::clear_response() {
+// @@protoc_insertion_point(one_of_clear_start:enterprise_management.ClientCertificateProvisioningResponse)
+  switch (response_case()) {
+    case kError: {
+      // No need to clear
+      break;
+    }
+    case kStartCsrResponse: {
+      delete response_.start_csr_response_;
+      break;
+    }
+    case kFinishCsrResponse: {
+      delete response_.finish_csr_response_;
+      break;
+    }
+    case kDownloadCertResponse: {
+      delete response_.download_cert_response_;
+      break;
+    }
+    case RESPONSE_NOT_SET: {
+      break;
+    }
+  }
+  _oneof_case_[0] = RESPONSE_NOT_SET;
+}
+
+
+void ClientCertificateProvisioningResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.ClientCertificateProvisioningResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  try_again_later_ = PROTOBUF_LONGLONG(0);
+  clear_response();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ClientCertificateProvisioningResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 try_again_later = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_try_again_later(&has_bits);
+          try_again_later_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ClientCertificateProvisioningResponse.Error error = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::ClientCertificateProvisioningResponse_Error_IsValid(val))) {
+            _internal_set_error(static_cast<::enterprise_management::ClientCertificateProvisioningResponse_Error>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.StartCsrResponse start_csr_response = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_start_csr_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.FinishCsrResponse finish_csr_response = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_finish_csr_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DownloadCertResponse download_cert_response = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_download_cert_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ClientCertificateProvisioningResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.ClientCertificateProvisioningResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 try_again_later = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_try_again_later(), target);
+  }
+
+  switch (response_case()) {
+    case kError: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+        2, this->_internal_error(), target);
+      break;
+    }
+    case kStartCsrResponse: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+        InternalWriteMessage(
+          3, _Internal::start_csr_response(this), target, stream);
+      break;
+    }
+    case kFinishCsrResponse: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+        InternalWriteMessage(
+          4, _Internal::finish_csr_response(this), target, stream);
+      break;
+    }
+    case kDownloadCertResponse: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+        InternalWriteMessage(
+          5, _Internal::download_cert_response(this), target, stream);
+      break;
+    }
+    default: ;
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.ClientCertificateProvisioningResponse)
+  return target;
+}
+
+size_t ClientCertificateProvisioningResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.ClientCertificateProvisioningResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional int64 try_again_later = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+        this->_internal_try_again_later());
+  }
+
+  switch (response_case()) {
+    // optional .enterprise_management.ClientCertificateProvisioningResponse.Error error = 2;
+    case kError: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_error());
+      break;
+    }
+    // optional .enterprise_management.StartCsrResponse start_csr_response = 3;
+    case kStartCsrResponse: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *response_.start_csr_response_);
+      break;
+    }
+    // optional .enterprise_management.FinishCsrResponse finish_csr_response = 4;
+    case kFinishCsrResponse: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *response_.finish_csr_response_);
+      break;
+    }
+    // optional .enterprise_management.DownloadCertResponse download_cert_response = 5;
+    case kDownloadCertResponse: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *response_.download_cert_response_);
+      break;
+    }
+    case RESPONSE_NOT_SET: {
+      break;
+    }
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ClientCertificateProvisioningResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ClientCertificateProvisioningResponse*>(
+      &from));
+}
+
+void ClientCertificateProvisioningResponse::MergeFrom(const ClientCertificateProvisioningResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.ClientCertificateProvisioningResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_try_again_later()) {
+    _internal_set_try_again_later(from._internal_try_again_later());
+  }
+  switch (from.response_case()) {
+    case kError: {
+      _internal_set_error(from._internal_error());
+      break;
+    }
+    case kStartCsrResponse: {
+      _internal_mutable_start_csr_response()->::enterprise_management::StartCsrResponse::MergeFrom(from._internal_start_csr_response());
+      break;
+    }
+    case kFinishCsrResponse: {
+      _internal_mutable_finish_csr_response()->::enterprise_management::FinishCsrResponse::MergeFrom(from._internal_finish_csr_response());
+      break;
+    }
+    case kDownloadCertResponse: {
+      _internal_mutable_download_cert_response()->::enterprise_management::DownloadCertResponse::MergeFrom(from._internal_download_cert_response());
+      break;
+    }
+    case RESPONSE_NOT_SET: {
+      break;
+    }
+  }
+}
+
+void ClientCertificateProvisioningResponse::CopyFrom(const ClientCertificateProvisioningResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.ClientCertificateProvisioningResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ClientCertificateProvisioningResponse::IsInitialized() const {
+  return true;
+}
+
+void ClientCertificateProvisioningResponse::InternalSwap(ClientCertificateProvisioningResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(try_again_later_, other->try_again_later_);
+  swap(response_, other->response_);
+  swap(_oneof_case_[0], other->_oneof_case_[0]);
+}
+
+std::string ClientCertificateProvisioningResponse::GetTypeName() const {
+  return "enterprise_management.ClientCertificateProvisioningResponse";
+}
+
+
+// ===================================================================
+
+void BrowserPublicKeyUploadRequest::InitAsDefaultInstance() {
+}
+class BrowserPublicKeyUploadRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BrowserPublicKeyUploadRequest>()._has_bits_);
+  static void set_has_public_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_signature(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_key_trust_level(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_key_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+BrowserPublicKeyUploadRequest::BrowserPublicKeyUploadRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BrowserPublicKeyUploadRequest)
+}
+BrowserPublicKeyUploadRequest::BrowserPublicKeyUploadRequest(const BrowserPublicKeyUploadRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_public_key()) {
+    public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.public_key_);
+  }
+  signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_signature()) {
+    signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.signature_);
+  }
+  ::memcpy(&key_trust_level_, &from.key_trust_level_,
+    static_cast<size_t>(reinterpret_cast<char*>(&key_type_) -
+    reinterpret_cast<char*>(&key_trust_level_)) + sizeof(key_type_));
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BrowserPublicKeyUploadRequest)
+}
+
+void BrowserPublicKeyUploadRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BrowserPublicKeyUploadRequest_device_5fmanagement_5fbackend_2eproto.base);
+  public_key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  signature_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&key_trust_level_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&key_type_) -
+      reinterpret_cast<char*>(&key_trust_level_)) + sizeof(key_type_));
+}
+
+BrowserPublicKeyUploadRequest::~BrowserPublicKeyUploadRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BrowserPublicKeyUploadRequest)
+  SharedDtor();
+}
+
+void BrowserPublicKeyUploadRequest::SharedDtor() {
+  public_key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  signature_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void BrowserPublicKeyUploadRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BrowserPublicKeyUploadRequest& BrowserPublicKeyUploadRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BrowserPublicKeyUploadRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BrowserPublicKeyUploadRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BrowserPublicKeyUploadRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      public_key_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      signature_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x0000000cu) {
+    ::memset(&key_trust_level_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&key_type_) -
+        reinterpret_cast<char*>(&key_trust_level_)) + sizeof(key_type_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BrowserPublicKeyUploadRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes public_key = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_public_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes signature = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_signature();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyTrustLevel key_trust_level = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel_IsValid(val))) {
+            _internal_set_key_trust_level(static_cast<::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyType key_type = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::BrowserPublicKeyUploadRequest_KeyType_IsValid(val))) {
+            _internal_set_key_type(static_cast<::enterprise_management::BrowserPublicKeyUploadRequest_KeyType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BrowserPublicKeyUploadRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BrowserPublicKeyUploadRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes public_key = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_public_key(), target);
+  }
+
+  // optional bytes signature = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_signature(), target);
+  }
+
+  // optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyTrustLevel key_trust_level = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_key_trust_level(), target);
+  }
+
+  // optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyType key_type = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_key_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BrowserPublicKeyUploadRequest)
+  return target;
+}
+
+size_t BrowserPublicKeyUploadRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BrowserPublicKeyUploadRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional bytes public_key = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_public_key());
+    }
+
+    // optional bytes signature = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_signature());
+    }
+
+    // optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyTrustLevel key_trust_level = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_key_trust_level());
+    }
+
+    // optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyType key_type = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_key_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BrowserPublicKeyUploadRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BrowserPublicKeyUploadRequest*>(
+      &from));
+}
+
+void BrowserPublicKeyUploadRequest::MergeFrom(const BrowserPublicKeyUploadRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BrowserPublicKeyUploadRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      public_key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.public_key_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      signature_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.signature_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      key_trust_level_ = from.key_trust_level_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      key_type_ = from.key_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void BrowserPublicKeyUploadRequest::CopyFrom(const BrowserPublicKeyUploadRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BrowserPublicKeyUploadRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BrowserPublicKeyUploadRequest::IsInitialized() const {
+  return true;
+}
+
+void BrowserPublicKeyUploadRequest::InternalSwap(BrowserPublicKeyUploadRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  public_key_.Swap(&other->public_key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  signature_.Swap(&other->signature_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(key_trust_level_, other->key_trust_level_);
+  swap(key_type_, other->key_type_);
+}
+
+std::string BrowserPublicKeyUploadRequest::GetTypeName() const {
+  return "enterprise_management.BrowserPublicKeyUploadRequest";
+}
+
+
+// ===================================================================
+
+void BrowserPublicKeyUploadResponse::InitAsDefaultInstance() {
+}
+class BrowserPublicKeyUploadResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BrowserPublicKeyUploadResponse>()._has_bits_);
+  static void set_has_response_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+BrowserPublicKeyUploadResponse::BrowserPublicKeyUploadResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BrowserPublicKeyUploadResponse)
+}
+BrowserPublicKeyUploadResponse::BrowserPublicKeyUploadResponse(const BrowserPublicKeyUploadResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  response_code_ = from.response_code_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BrowserPublicKeyUploadResponse)
+}
+
+void BrowserPublicKeyUploadResponse::SharedCtor() {
+  response_code_ = 0;
+}
+
+BrowserPublicKeyUploadResponse::~BrowserPublicKeyUploadResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BrowserPublicKeyUploadResponse)
+  SharedDtor();
+}
+
+void BrowserPublicKeyUploadResponse::SharedDtor() {
+}
+
+void BrowserPublicKeyUploadResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BrowserPublicKeyUploadResponse& BrowserPublicKeyUploadResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BrowserPublicKeyUploadResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BrowserPublicKeyUploadResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BrowserPublicKeyUploadResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  response_code_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BrowserPublicKeyUploadResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.BrowserPublicKeyUploadResponse.ResponseCode response_code = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode_IsValid(val))) {
+            _internal_set_response_code(static_cast<::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BrowserPublicKeyUploadResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BrowserPublicKeyUploadResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.BrowserPublicKeyUploadResponse.ResponseCode response_code = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_response_code(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BrowserPublicKeyUploadResponse)
+  return target;
+}
+
+size_t BrowserPublicKeyUploadResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BrowserPublicKeyUploadResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.BrowserPublicKeyUploadResponse.ResponseCode response_code = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_response_code());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BrowserPublicKeyUploadResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BrowserPublicKeyUploadResponse*>(
+      &from));
+}
+
+void BrowserPublicKeyUploadResponse::MergeFrom(const BrowserPublicKeyUploadResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BrowserPublicKeyUploadResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_response_code()) {
+    _internal_set_response_code(from._internal_response_code());
+  }
+}
+
+void BrowserPublicKeyUploadResponse::CopyFrom(const BrowserPublicKeyUploadResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BrowserPublicKeyUploadResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BrowserPublicKeyUploadResponse::IsInitialized() const {
+  return true;
+}
+
+void BrowserPublicKeyUploadResponse::InternalSwap(BrowserPublicKeyUploadResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(response_code_, other->response_code_);
+}
+
+std::string BrowserPublicKeyUploadResponse::GetTypeName() const {
+  return "enterprise_management.BrowserPublicKeyUploadResponse";
+}
+
+
+// ===================================================================
+
+void DeviceManagementRequest::InitAsDefaultInstance() {
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->register_request_ = const_cast< ::enterprise_management::DeviceRegisterRequest*>(
+      ::enterprise_management::DeviceRegisterRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->unregister_request_ = const_cast< ::enterprise_management::DeviceUnregisterRequest*>(
+      ::enterprise_management::DeviceUnregisterRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->policy_request_ = const_cast< ::enterprise_management::DevicePolicyRequest*>(
+      ::enterprise_management::DevicePolicyRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->device_status_report_request_ = const_cast< ::enterprise_management::DeviceStatusReportRequest*>(
+      ::enterprise_management::DeviceStatusReportRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->session_status_report_request_ = const_cast< ::enterprise_management::SessionStatusReportRequest*>(
+      ::enterprise_management::SessionStatusReportRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->child_status_report_request_ = const_cast< ::enterprise_management::ChildStatusReportRequest*>(
+      ::enterprise_management::ChildStatusReportRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->auto_enrollment_request_ = const_cast< ::enterprise_management::DeviceAutoEnrollmentRequest*>(
+      ::enterprise_management::DeviceAutoEnrollmentRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->cert_upload_request_ = const_cast< ::enterprise_management::DeviceCertUploadRequest*>(
+      ::enterprise_management::DeviceCertUploadRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->service_api_access_request_ = const_cast< ::enterprise_management::DeviceServiceApiAccessRequest*>(
+      ::enterprise_management::DeviceServiceApiAccessRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->device_state_retrieval_request_ = const_cast< ::enterprise_management::DeviceStateRetrievalRequest*>(
+      ::enterprise_management::DeviceStateRetrievalRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->device_state_key_update_request_ = const_cast< ::enterprise_management::DeviceStateKeyUpdateRequest*>(
+      ::enterprise_management::DeviceStateKeyUpdateRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->device_pairing_request_ = const_cast< ::enterprise_management::DevicePairingRequest*>(
+      ::enterprise_management::DevicePairingRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->check_device_pairing_request_ = const_cast< ::enterprise_management::CheckDevicePairingRequest*>(
+      ::enterprise_management::CheckDevicePairingRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->remote_command_request_ = const_cast< ::enterprise_management::DeviceRemoteCommandRequest*>(
+      ::enterprise_management::DeviceRemoteCommandRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->device_attribute_update_permission_request_ = const_cast< ::enterprise_management::DeviceAttributeUpdatePermissionRequest*>(
+      ::enterprise_management::DeviceAttributeUpdatePermissionRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->device_attribute_update_request_ = const_cast< ::enterprise_management::DeviceAttributeUpdateRequest*>(
+      ::enterprise_management::DeviceAttributeUpdateRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->gcm_id_update_request_ = const_cast< ::enterprise_management::GcmIdUpdateRequest*>(
+      ::enterprise_management::GcmIdUpdateRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->check_android_management_request_ = const_cast< ::enterprise_management::CheckAndroidManagementRequest*>(
+      ::enterprise_management::CheckAndroidManagementRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->certificate_based_register_request_ = const_cast< ::enterprise_management::CertificateBasedDeviceRegisterRequest*>(
+      ::enterprise_management::CertificateBasedDeviceRegisterRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->active_directory_enroll_play_user_request_ = const_cast< ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest*>(
+      ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->active_directory_play_activity_request_ = const_cast< ::enterprise_management::ActiveDirectoryPlayActivityRequest*>(
+      ::enterprise_management::ActiveDirectoryPlayActivityRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->check_device_license_request_deprecated_ = const_cast< ::enterprise_management::CheckDeviceLicenseRequest*>(
+      ::enterprise_management::CheckDeviceLicenseRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->active_directory_user_signin_request_ = const_cast< ::enterprise_management::ActiveDirectoryUserSigninRequest*>(
+      ::enterprise_management::ActiveDirectoryUserSigninRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->register_browser_request_ = const_cast< ::enterprise_management::RegisterBrowserRequest*>(
+      ::enterprise_management::RegisterBrowserRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->app_install_report_request_ = const_cast< ::enterprise_management::AppInstallReportRequest*>(
+      ::enterprise_management::AppInstallReportRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->chrome_desktop_report_request_ = const_cast< ::enterprise_management::ChromeDesktopReportRequest*>(
+      ::enterprise_management::ChromeDesktopReportRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->policy_validation_report_request_ = const_cast< ::enterprise_management::PolicyValidationReportRequest*>(
+      ::enterprise_management::PolicyValidationReportRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->device_initial_enrollment_state_request_ = const_cast< ::enterprise_management::DeviceInitialEnrollmentStateRequest*>(
+      ::enterprise_management::DeviceInitialEnrollmentStateRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->refresh_account_request_ = const_cast< ::enterprise_management::RefreshAccountRequest*>(
+      ::enterprise_management::RefreshAccountRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->rsu_lookup_key_upload_request_ = const_cast< ::enterprise_management::RsuLookupKeyUploadRequest*>(
+      ::enterprise_management::RsuLookupKeyUploadRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->public_saml_user_request_ = const_cast< ::enterprise_management::PublicSamlUserRequest*>(
+      ::enterprise_management::PublicSamlUserRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->chrome_os_user_report_request_ = const_cast< ::enterprise_management::ChromeOsUserReportRequest*>(
+      ::enterprise_management::ChromeOsUserReportRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->client_certificate_provisioning_request_ = const_cast< ::enterprise_management::ClientCertificateProvisioningRequest*>(
+      ::enterprise_management::ClientCertificateProvisioningRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->extension_install_report_request_ = const_cast< ::enterprise_management::ExtensionInstallReportRequest*>(
+      ::enterprise_management::ExtensionInstallReportRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->check_user_account_request_ = const_cast< ::enterprise_management::CheckUserAccountRequest*>(
+      ::enterprise_management::CheckUserAccountRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->private_set_membership_request_ = const_cast< ::enterprise_management::PrivateSetMembershipRequest*>(
+      ::enterprise_management::PrivateSetMembershipRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->browser_public_key_upload_request_ = const_cast< ::enterprise_management::BrowserPublicKeyUploadRequest*>(
+      ::enterprise_management::BrowserPublicKeyUploadRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->upload_euicc_info_request_ = const_cast< ::enterprise_management::UploadEuiccInfoRequest*>(
+      ::enterprise_management::UploadEuiccInfoRequest::internal_default_instance());
+  ::enterprise_management::_DeviceManagementRequest_default_instance_._instance.get_mutable()->chrome_profile_report_request_ = const_cast< ::enterprise_management::ChromeProfileReportRequest*>(
+      ::enterprise_management::ChromeProfileReportRequest::internal_default_instance());
+}
+class DeviceManagementRequest::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceManagementRequest>()._has_bits_);
+  static const ::enterprise_management::DeviceRegisterRequest& register_request(const DeviceManagementRequest* msg);
+  static void set_has_register_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::DeviceUnregisterRequest& unregister_request(const DeviceManagementRequest* msg);
+  static void set_has_unregister_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::enterprise_management::DevicePolicyRequest& policy_request(const DeviceManagementRequest* msg);
+  static void set_has_policy_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::DeviceStatusReportRequest& device_status_report_request(const DeviceManagementRequest* msg);
+  static void set_has_device_status_report_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::enterprise_management::SessionStatusReportRequest& session_status_report_request(const DeviceManagementRequest* msg);
+  static void set_has_session_status_report_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static const ::enterprise_management::ChildStatusReportRequest& child_status_report_request(const DeviceManagementRequest* msg);
+  static void set_has_child_status_report_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 268435456u;
+  }
+  static const ::enterprise_management::DeviceAutoEnrollmentRequest& auto_enrollment_request(const DeviceManagementRequest* msg);
+  static void set_has_auto_enrollment_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::enterprise_management::DeviceCertUploadRequest& cert_upload_request(const DeviceManagementRequest* msg);
+  static void set_has_cert_upload_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static const ::enterprise_management::DeviceServiceApiAccessRequest& service_api_access_request(const DeviceManagementRequest* msg);
+  static void set_has_service_api_access_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static const ::enterprise_management::DeviceStateRetrievalRequest& device_state_retrieval_request(const DeviceManagementRequest* msg);
+  static void set_has_device_state_retrieval_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static const ::enterprise_management::DeviceStateKeyUpdateRequest& device_state_key_update_request(const DeviceManagementRequest* msg);
+  static void set_has_device_state_key_update_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static const ::enterprise_management::DevicePairingRequest& device_pairing_request(const DeviceManagementRequest* msg);
+  static void set_has_device_pairing_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static const ::enterprise_management::CheckDevicePairingRequest& check_device_pairing_request(const DeviceManagementRequest* msg);
+  static void set_has_check_device_pairing_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static const ::enterprise_management::DeviceRemoteCommandRequest& remote_command_request(const DeviceManagementRequest* msg);
+  static void set_has_remote_command_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static const ::enterprise_management::DeviceAttributeUpdatePermissionRequest& device_attribute_update_permission_request(const DeviceManagementRequest* msg);
+  static void set_has_device_attribute_update_permission_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static const ::enterprise_management::DeviceAttributeUpdateRequest& device_attribute_update_request(const DeviceManagementRequest* msg);
+  static void set_has_device_attribute_update_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static const ::enterprise_management::GcmIdUpdateRequest& gcm_id_update_request(const DeviceManagementRequest* msg);
+  static void set_has_gcm_id_update_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static const ::enterprise_management::CheckAndroidManagementRequest& check_android_management_request(const DeviceManagementRequest* msg);
+  static void set_has_check_android_management_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static const ::enterprise_management::CertificateBasedDeviceRegisterRequest& certificate_based_register_request(const DeviceManagementRequest* msg);
+  static void set_has_certificate_based_register_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static const ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest& active_directory_enroll_play_user_request(const DeviceManagementRequest* msg);
+  static void set_has_active_directory_enroll_play_user_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 262144u;
+  }
+  static const ::enterprise_management::ActiveDirectoryPlayActivityRequest& active_directory_play_activity_request(const DeviceManagementRequest* msg);
+  static void set_has_active_directory_play_activity_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 524288u;
+  }
+  static const ::enterprise_management::CheckDeviceLicenseRequest& check_device_license_request_deprecated(const DeviceManagementRequest* msg);
+  static void set_has_check_device_license_request_deprecated(HasBits* has_bits) {
+    (*has_bits)[0] |= 1048576u;
+  }
+  static const ::enterprise_management::ActiveDirectoryUserSigninRequest& active_directory_user_signin_request(const DeviceManagementRequest* msg);
+  static void set_has_active_directory_user_signin_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 2097152u;
+  }
+  static const ::enterprise_management::RegisterBrowserRequest& register_browser_request(const DeviceManagementRequest* msg);
+  static void set_has_register_browser_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 4194304u;
+  }
+  static const ::enterprise_management::AppInstallReportRequest& app_install_report_request(const DeviceManagementRequest* msg);
+  static void set_has_app_install_report_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 8388608u;
+  }
+  static const ::enterprise_management::ChromeDesktopReportRequest& chrome_desktop_report_request(const DeviceManagementRequest* msg);
+  static void set_has_chrome_desktop_report_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 16777216u;
+  }
+  static const ::enterprise_management::PolicyValidationReportRequest& policy_validation_report_request(const DeviceManagementRequest* msg);
+  static void set_has_policy_validation_report_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 33554432u;
+  }
+  static const ::enterprise_management::DeviceInitialEnrollmentStateRequest& device_initial_enrollment_state_request(const DeviceManagementRequest* msg);
+  static void set_has_device_initial_enrollment_state_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 67108864u;
+  }
+  static const ::enterprise_management::RefreshAccountRequest& refresh_account_request(const DeviceManagementRequest* msg);
+  static void set_has_refresh_account_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 134217728u;
+  }
+  static const ::enterprise_management::RsuLookupKeyUploadRequest& rsu_lookup_key_upload_request(const DeviceManagementRequest* msg);
+  static void set_has_rsu_lookup_key_upload_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 536870912u;
+  }
+  static const ::enterprise_management::PublicSamlUserRequest& public_saml_user_request(const DeviceManagementRequest* msg);
+  static void set_has_public_saml_user_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 1073741824u;
+  }
+  static const ::enterprise_management::ChromeOsUserReportRequest& chrome_os_user_report_request(const DeviceManagementRequest* msg);
+  static void set_has_chrome_os_user_report_request(HasBits* has_bits) {
+    (*has_bits)[0] |= 2147483648u;
+  }
+  static const ::enterprise_management::ClientCertificateProvisioningRequest& client_certificate_provisioning_request(const DeviceManagementRequest* msg);
+  static void set_has_client_certificate_provisioning_request(HasBits* has_bits) {
+    (*has_bits)[1] |= 1u;
+  }
+  static const ::enterprise_management::ExtensionInstallReportRequest& extension_install_report_request(const DeviceManagementRequest* msg);
+  static void set_has_extension_install_report_request(HasBits* has_bits) {
+    (*has_bits)[1] |= 2u;
+  }
+  static const ::enterprise_management::CheckUserAccountRequest& check_user_account_request(const DeviceManagementRequest* msg);
+  static void set_has_check_user_account_request(HasBits* has_bits) {
+    (*has_bits)[1] |= 4u;
+  }
+  static const ::enterprise_management::PrivateSetMembershipRequest& private_set_membership_request(const DeviceManagementRequest* msg);
+  static void set_has_private_set_membership_request(HasBits* has_bits) {
+    (*has_bits)[1] |= 8u;
+  }
+  static const ::enterprise_management::BrowserPublicKeyUploadRequest& browser_public_key_upload_request(const DeviceManagementRequest* msg);
+  static void set_has_browser_public_key_upload_request(HasBits* has_bits) {
+    (*has_bits)[1] |= 16u;
+  }
+  static const ::enterprise_management::UploadEuiccInfoRequest& upload_euicc_info_request(const DeviceManagementRequest* msg);
+  static void set_has_upload_euicc_info_request(HasBits* has_bits) {
+    (*has_bits)[1] |= 32u;
+  }
+  static const ::enterprise_management::ChromeProfileReportRequest& chrome_profile_report_request(const DeviceManagementRequest* msg);
+  static void set_has_chrome_profile_report_request(HasBits* has_bits) {
+    (*has_bits)[1] |= 64u;
+  }
+};
+
+const ::enterprise_management::DeviceRegisterRequest&
+DeviceManagementRequest::_Internal::register_request(const DeviceManagementRequest* msg) {
+  return *msg->register_request_;
+}
+const ::enterprise_management::DeviceUnregisterRequest&
+DeviceManagementRequest::_Internal::unregister_request(const DeviceManagementRequest* msg) {
+  return *msg->unregister_request_;
+}
+const ::enterprise_management::DevicePolicyRequest&
+DeviceManagementRequest::_Internal::policy_request(const DeviceManagementRequest* msg) {
+  return *msg->policy_request_;
+}
+const ::enterprise_management::DeviceStatusReportRequest&
+DeviceManagementRequest::_Internal::device_status_report_request(const DeviceManagementRequest* msg) {
+  return *msg->device_status_report_request_;
+}
+const ::enterprise_management::SessionStatusReportRequest&
+DeviceManagementRequest::_Internal::session_status_report_request(const DeviceManagementRequest* msg) {
+  return *msg->session_status_report_request_;
+}
+const ::enterprise_management::ChildStatusReportRequest&
+DeviceManagementRequest::_Internal::child_status_report_request(const DeviceManagementRequest* msg) {
+  return *msg->child_status_report_request_;
+}
+const ::enterprise_management::DeviceAutoEnrollmentRequest&
+DeviceManagementRequest::_Internal::auto_enrollment_request(const DeviceManagementRequest* msg) {
+  return *msg->auto_enrollment_request_;
+}
+const ::enterprise_management::DeviceCertUploadRequest&
+DeviceManagementRequest::_Internal::cert_upload_request(const DeviceManagementRequest* msg) {
+  return *msg->cert_upload_request_;
+}
+const ::enterprise_management::DeviceServiceApiAccessRequest&
+DeviceManagementRequest::_Internal::service_api_access_request(const DeviceManagementRequest* msg) {
+  return *msg->service_api_access_request_;
+}
+const ::enterprise_management::DeviceStateRetrievalRequest&
+DeviceManagementRequest::_Internal::device_state_retrieval_request(const DeviceManagementRequest* msg) {
+  return *msg->device_state_retrieval_request_;
+}
+const ::enterprise_management::DeviceStateKeyUpdateRequest&
+DeviceManagementRequest::_Internal::device_state_key_update_request(const DeviceManagementRequest* msg) {
+  return *msg->device_state_key_update_request_;
+}
+const ::enterprise_management::DevicePairingRequest&
+DeviceManagementRequest::_Internal::device_pairing_request(const DeviceManagementRequest* msg) {
+  return *msg->device_pairing_request_;
+}
+const ::enterprise_management::CheckDevicePairingRequest&
+DeviceManagementRequest::_Internal::check_device_pairing_request(const DeviceManagementRequest* msg) {
+  return *msg->check_device_pairing_request_;
+}
+const ::enterprise_management::DeviceRemoteCommandRequest&
+DeviceManagementRequest::_Internal::remote_command_request(const DeviceManagementRequest* msg) {
+  return *msg->remote_command_request_;
+}
+const ::enterprise_management::DeviceAttributeUpdatePermissionRequest&
+DeviceManagementRequest::_Internal::device_attribute_update_permission_request(const DeviceManagementRequest* msg) {
+  return *msg->device_attribute_update_permission_request_;
+}
+const ::enterprise_management::DeviceAttributeUpdateRequest&
+DeviceManagementRequest::_Internal::device_attribute_update_request(const DeviceManagementRequest* msg) {
+  return *msg->device_attribute_update_request_;
+}
+const ::enterprise_management::GcmIdUpdateRequest&
+DeviceManagementRequest::_Internal::gcm_id_update_request(const DeviceManagementRequest* msg) {
+  return *msg->gcm_id_update_request_;
+}
+const ::enterprise_management::CheckAndroidManagementRequest&
+DeviceManagementRequest::_Internal::check_android_management_request(const DeviceManagementRequest* msg) {
+  return *msg->check_android_management_request_;
+}
+const ::enterprise_management::CertificateBasedDeviceRegisterRequest&
+DeviceManagementRequest::_Internal::certificate_based_register_request(const DeviceManagementRequest* msg) {
+  return *msg->certificate_based_register_request_;
+}
+const ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest&
+DeviceManagementRequest::_Internal::active_directory_enroll_play_user_request(const DeviceManagementRequest* msg) {
+  return *msg->active_directory_enroll_play_user_request_;
+}
+const ::enterprise_management::ActiveDirectoryPlayActivityRequest&
+DeviceManagementRequest::_Internal::active_directory_play_activity_request(const DeviceManagementRequest* msg) {
+  return *msg->active_directory_play_activity_request_;
+}
+const ::enterprise_management::CheckDeviceLicenseRequest&
+DeviceManagementRequest::_Internal::check_device_license_request_deprecated(const DeviceManagementRequest* msg) {
+  return *msg->check_device_license_request_deprecated_;
+}
+const ::enterprise_management::ActiveDirectoryUserSigninRequest&
+DeviceManagementRequest::_Internal::active_directory_user_signin_request(const DeviceManagementRequest* msg) {
+  return *msg->active_directory_user_signin_request_;
+}
+const ::enterprise_management::RegisterBrowserRequest&
+DeviceManagementRequest::_Internal::register_browser_request(const DeviceManagementRequest* msg) {
+  return *msg->register_browser_request_;
+}
+const ::enterprise_management::AppInstallReportRequest&
+DeviceManagementRequest::_Internal::app_install_report_request(const DeviceManagementRequest* msg) {
+  return *msg->app_install_report_request_;
+}
+const ::enterprise_management::ChromeDesktopReportRequest&
+DeviceManagementRequest::_Internal::chrome_desktop_report_request(const DeviceManagementRequest* msg) {
+  return *msg->chrome_desktop_report_request_;
+}
+const ::enterprise_management::PolicyValidationReportRequest&
+DeviceManagementRequest::_Internal::policy_validation_report_request(const DeviceManagementRequest* msg) {
+  return *msg->policy_validation_report_request_;
+}
+const ::enterprise_management::DeviceInitialEnrollmentStateRequest&
+DeviceManagementRequest::_Internal::device_initial_enrollment_state_request(const DeviceManagementRequest* msg) {
+  return *msg->device_initial_enrollment_state_request_;
+}
+const ::enterprise_management::RefreshAccountRequest&
+DeviceManagementRequest::_Internal::refresh_account_request(const DeviceManagementRequest* msg) {
+  return *msg->refresh_account_request_;
+}
+const ::enterprise_management::RsuLookupKeyUploadRequest&
+DeviceManagementRequest::_Internal::rsu_lookup_key_upload_request(const DeviceManagementRequest* msg) {
+  return *msg->rsu_lookup_key_upload_request_;
+}
+const ::enterprise_management::PublicSamlUserRequest&
+DeviceManagementRequest::_Internal::public_saml_user_request(const DeviceManagementRequest* msg) {
+  return *msg->public_saml_user_request_;
+}
+const ::enterprise_management::ChromeOsUserReportRequest&
+DeviceManagementRequest::_Internal::chrome_os_user_report_request(const DeviceManagementRequest* msg) {
+  return *msg->chrome_os_user_report_request_;
+}
+const ::enterprise_management::ClientCertificateProvisioningRequest&
+DeviceManagementRequest::_Internal::client_certificate_provisioning_request(const DeviceManagementRequest* msg) {
+  return *msg->client_certificate_provisioning_request_;
+}
+const ::enterprise_management::ExtensionInstallReportRequest&
+DeviceManagementRequest::_Internal::extension_install_report_request(const DeviceManagementRequest* msg) {
+  return *msg->extension_install_report_request_;
+}
+const ::enterprise_management::CheckUserAccountRequest&
+DeviceManagementRequest::_Internal::check_user_account_request(const DeviceManagementRequest* msg) {
+  return *msg->check_user_account_request_;
+}
+const ::enterprise_management::PrivateSetMembershipRequest&
+DeviceManagementRequest::_Internal::private_set_membership_request(const DeviceManagementRequest* msg) {
+  return *msg->private_set_membership_request_;
+}
+const ::enterprise_management::BrowserPublicKeyUploadRequest&
+DeviceManagementRequest::_Internal::browser_public_key_upload_request(const DeviceManagementRequest* msg) {
+  return *msg->browser_public_key_upload_request_;
+}
+const ::enterprise_management::UploadEuiccInfoRequest&
+DeviceManagementRequest::_Internal::upload_euicc_info_request(const DeviceManagementRequest* msg) {
+  return *msg->upload_euicc_info_request_;
+}
+const ::enterprise_management::ChromeProfileReportRequest&
+DeviceManagementRequest::_Internal::chrome_profile_report_request(const DeviceManagementRequest* msg) {
+  return *msg->chrome_profile_report_request_;
+}
+DeviceManagementRequest::DeviceManagementRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceManagementRequest)
+}
+DeviceManagementRequest::DeviceManagementRequest(const DeviceManagementRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_register_request()) {
+    register_request_ = new ::enterprise_management::DeviceRegisterRequest(*from.register_request_);
+  } else {
+    register_request_ = nullptr;
+  }
+  if (from._internal_has_unregister_request()) {
+    unregister_request_ = new ::enterprise_management::DeviceUnregisterRequest(*from.unregister_request_);
+  } else {
+    unregister_request_ = nullptr;
+  }
+  if (from._internal_has_policy_request()) {
+    policy_request_ = new ::enterprise_management::DevicePolicyRequest(*from.policy_request_);
+  } else {
+    policy_request_ = nullptr;
+  }
+  if (from._internal_has_device_status_report_request()) {
+    device_status_report_request_ = new ::enterprise_management::DeviceStatusReportRequest(*from.device_status_report_request_);
+  } else {
+    device_status_report_request_ = nullptr;
+  }
+  if (from._internal_has_session_status_report_request()) {
+    session_status_report_request_ = new ::enterprise_management::SessionStatusReportRequest(*from.session_status_report_request_);
+  } else {
+    session_status_report_request_ = nullptr;
+  }
+  if (from._internal_has_auto_enrollment_request()) {
+    auto_enrollment_request_ = new ::enterprise_management::DeviceAutoEnrollmentRequest(*from.auto_enrollment_request_);
+  } else {
+    auto_enrollment_request_ = nullptr;
+  }
+  if (from._internal_has_cert_upload_request()) {
+    cert_upload_request_ = new ::enterprise_management::DeviceCertUploadRequest(*from.cert_upload_request_);
+  } else {
+    cert_upload_request_ = nullptr;
+  }
+  if (from._internal_has_service_api_access_request()) {
+    service_api_access_request_ = new ::enterprise_management::DeviceServiceApiAccessRequest(*from.service_api_access_request_);
+  } else {
+    service_api_access_request_ = nullptr;
+  }
+  if (from._internal_has_device_state_retrieval_request()) {
+    device_state_retrieval_request_ = new ::enterprise_management::DeviceStateRetrievalRequest(*from.device_state_retrieval_request_);
+  } else {
+    device_state_retrieval_request_ = nullptr;
+  }
+  if (from._internal_has_device_state_key_update_request()) {
+    device_state_key_update_request_ = new ::enterprise_management::DeviceStateKeyUpdateRequest(*from.device_state_key_update_request_);
+  } else {
+    device_state_key_update_request_ = nullptr;
+  }
+  if (from._internal_has_device_pairing_request()) {
+    device_pairing_request_ = new ::enterprise_management::DevicePairingRequest(*from.device_pairing_request_);
+  } else {
+    device_pairing_request_ = nullptr;
+  }
+  if (from._internal_has_check_device_pairing_request()) {
+    check_device_pairing_request_ = new ::enterprise_management::CheckDevicePairingRequest(*from.check_device_pairing_request_);
+  } else {
+    check_device_pairing_request_ = nullptr;
+  }
+  if (from._internal_has_remote_command_request()) {
+    remote_command_request_ = new ::enterprise_management::DeviceRemoteCommandRequest(*from.remote_command_request_);
+  } else {
+    remote_command_request_ = nullptr;
+  }
+  if (from._internal_has_device_attribute_update_permission_request()) {
+    device_attribute_update_permission_request_ = new ::enterprise_management::DeviceAttributeUpdatePermissionRequest(*from.device_attribute_update_permission_request_);
+  } else {
+    device_attribute_update_permission_request_ = nullptr;
+  }
+  if (from._internal_has_device_attribute_update_request()) {
+    device_attribute_update_request_ = new ::enterprise_management::DeviceAttributeUpdateRequest(*from.device_attribute_update_request_);
+  } else {
+    device_attribute_update_request_ = nullptr;
+  }
+  if (from._internal_has_gcm_id_update_request()) {
+    gcm_id_update_request_ = new ::enterprise_management::GcmIdUpdateRequest(*from.gcm_id_update_request_);
+  } else {
+    gcm_id_update_request_ = nullptr;
+  }
+  if (from._internal_has_check_android_management_request()) {
+    check_android_management_request_ = new ::enterprise_management::CheckAndroidManagementRequest(*from.check_android_management_request_);
+  } else {
+    check_android_management_request_ = nullptr;
+  }
+  if (from._internal_has_certificate_based_register_request()) {
+    certificate_based_register_request_ = new ::enterprise_management::CertificateBasedDeviceRegisterRequest(*from.certificate_based_register_request_);
+  } else {
+    certificate_based_register_request_ = nullptr;
+  }
+  if (from._internal_has_active_directory_enroll_play_user_request()) {
+    active_directory_enroll_play_user_request_ = new ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest(*from.active_directory_enroll_play_user_request_);
+  } else {
+    active_directory_enroll_play_user_request_ = nullptr;
+  }
+  if (from._internal_has_active_directory_play_activity_request()) {
+    active_directory_play_activity_request_ = new ::enterprise_management::ActiveDirectoryPlayActivityRequest(*from.active_directory_play_activity_request_);
+  } else {
+    active_directory_play_activity_request_ = nullptr;
+  }
+  if (from._internal_has_check_device_license_request_deprecated()) {
+    check_device_license_request_deprecated_ = new ::enterprise_management::CheckDeviceLicenseRequest(*from.check_device_license_request_deprecated_);
+  } else {
+    check_device_license_request_deprecated_ = nullptr;
+  }
+  if (from._internal_has_active_directory_user_signin_request()) {
+    active_directory_user_signin_request_ = new ::enterprise_management::ActiveDirectoryUserSigninRequest(*from.active_directory_user_signin_request_);
+  } else {
+    active_directory_user_signin_request_ = nullptr;
+  }
+  if (from._internal_has_register_browser_request()) {
+    register_browser_request_ = new ::enterprise_management::RegisterBrowserRequest(*from.register_browser_request_);
+  } else {
+    register_browser_request_ = nullptr;
+  }
+  if (from._internal_has_app_install_report_request()) {
+    app_install_report_request_ = new ::enterprise_management::AppInstallReportRequest(*from.app_install_report_request_);
+  } else {
+    app_install_report_request_ = nullptr;
+  }
+  if (from._internal_has_chrome_desktop_report_request()) {
+    chrome_desktop_report_request_ = new ::enterprise_management::ChromeDesktopReportRequest(*from.chrome_desktop_report_request_);
+  } else {
+    chrome_desktop_report_request_ = nullptr;
+  }
+  if (from._internal_has_policy_validation_report_request()) {
+    policy_validation_report_request_ = new ::enterprise_management::PolicyValidationReportRequest(*from.policy_validation_report_request_);
+  } else {
+    policy_validation_report_request_ = nullptr;
+  }
+  if (from._internal_has_device_initial_enrollment_state_request()) {
+    device_initial_enrollment_state_request_ = new ::enterprise_management::DeviceInitialEnrollmentStateRequest(*from.device_initial_enrollment_state_request_);
+  } else {
+    device_initial_enrollment_state_request_ = nullptr;
+  }
+  if (from._internal_has_refresh_account_request()) {
+    refresh_account_request_ = new ::enterprise_management::RefreshAccountRequest(*from.refresh_account_request_);
+  } else {
+    refresh_account_request_ = nullptr;
+  }
+  if (from._internal_has_child_status_report_request()) {
+    child_status_report_request_ = new ::enterprise_management::ChildStatusReportRequest(*from.child_status_report_request_);
+  } else {
+    child_status_report_request_ = nullptr;
+  }
+  if (from._internal_has_rsu_lookup_key_upload_request()) {
+    rsu_lookup_key_upload_request_ = new ::enterprise_management::RsuLookupKeyUploadRequest(*from.rsu_lookup_key_upload_request_);
+  } else {
+    rsu_lookup_key_upload_request_ = nullptr;
+  }
+  if (from._internal_has_public_saml_user_request()) {
+    public_saml_user_request_ = new ::enterprise_management::PublicSamlUserRequest(*from.public_saml_user_request_);
+  } else {
+    public_saml_user_request_ = nullptr;
+  }
+  if (from._internal_has_chrome_os_user_report_request()) {
+    chrome_os_user_report_request_ = new ::enterprise_management::ChromeOsUserReportRequest(*from.chrome_os_user_report_request_);
+  } else {
+    chrome_os_user_report_request_ = nullptr;
+  }
+  if (from._internal_has_client_certificate_provisioning_request()) {
+    client_certificate_provisioning_request_ = new ::enterprise_management::ClientCertificateProvisioningRequest(*from.client_certificate_provisioning_request_);
+  } else {
+    client_certificate_provisioning_request_ = nullptr;
+  }
+  if (from._internal_has_extension_install_report_request()) {
+    extension_install_report_request_ = new ::enterprise_management::ExtensionInstallReportRequest(*from.extension_install_report_request_);
+  } else {
+    extension_install_report_request_ = nullptr;
+  }
+  if (from._internal_has_check_user_account_request()) {
+    check_user_account_request_ = new ::enterprise_management::CheckUserAccountRequest(*from.check_user_account_request_);
+  } else {
+    check_user_account_request_ = nullptr;
+  }
+  if (from._internal_has_private_set_membership_request()) {
+    private_set_membership_request_ = new ::enterprise_management::PrivateSetMembershipRequest(*from.private_set_membership_request_);
+  } else {
+    private_set_membership_request_ = nullptr;
+  }
+  if (from._internal_has_browser_public_key_upload_request()) {
+    browser_public_key_upload_request_ = new ::enterprise_management::BrowserPublicKeyUploadRequest(*from.browser_public_key_upload_request_);
+  } else {
+    browser_public_key_upload_request_ = nullptr;
+  }
+  if (from._internal_has_upload_euicc_info_request()) {
+    upload_euicc_info_request_ = new ::enterprise_management::UploadEuiccInfoRequest(*from.upload_euicc_info_request_);
+  } else {
+    upload_euicc_info_request_ = nullptr;
+  }
+  if (from._internal_has_chrome_profile_report_request()) {
+    chrome_profile_report_request_ = new ::enterprise_management::ChromeProfileReportRequest(*from.chrome_profile_report_request_);
+  } else {
+    chrome_profile_report_request_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceManagementRequest)
+}
+
+void DeviceManagementRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceManagementRequest_device_5fmanagement_5fbackend_2eproto.base);
+  ::memset(&register_request_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&chrome_profile_report_request_) -
+      reinterpret_cast<char*>(&register_request_)) + sizeof(chrome_profile_report_request_));
+}
+
+DeviceManagementRequest::~DeviceManagementRequest() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceManagementRequest)
+  SharedDtor();
+}
+
+void DeviceManagementRequest::SharedDtor() {
+  if (this != internal_default_instance()) delete register_request_;
+  if (this != internal_default_instance()) delete unregister_request_;
+  if (this != internal_default_instance()) delete policy_request_;
+  if (this != internal_default_instance()) delete device_status_report_request_;
+  if (this != internal_default_instance()) delete session_status_report_request_;
+  if (this != internal_default_instance()) delete auto_enrollment_request_;
+  if (this != internal_default_instance()) delete cert_upload_request_;
+  if (this != internal_default_instance()) delete service_api_access_request_;
+  if (this != internal_default_instance()) delete device_state_retrieval_request_;
+  if (this != internal_default_instance()) delete device_state_key_update_request_;
+  if (this != internal_default_instance()) delete device_pairing_request_;
+  if (this != internal_default_instance()) delete check_device_pairing_request_;
+  if (this != internal_default_instance()) delete remote_command_request_;
+  if (this != internal_default_instance()) delete device_attribute_update_permission_request_;
+  if (this != internal_default_instance()) delete device_attribute_update_request_;
+  if (this != internal_default_instance()) delete gcm_id_update_request_;
+  if (this != internal_default_instance()) delete check_android_management_request_;
+  if (this != internal_default_instance()) delete certificate_based_register_request_;
+  if (this != internal_default_instance()) delete active_directory_enroll_play_user_request_;
+  if (this != internal_default_instance()) delete active_directory_play_activity_request_;
+  if (this != internal_default_instance()) delete check_device_license_request_deprecated_;
+  if (this != internal_default_instance()) delete active_directory_user_signin_request_;
+  if (this != internal_default_instance()) delete register_browser_request_;
+  if (this != internal_default_instance()) delete app_install_report_request_;
+  if (this != internal_default_instance()) delete chrome_desktop_report_request_;
+  if (this != internal_default_instance()) delete policy_validation_report_request_;
+  if (this != internal_default_instance()) delete device_initial_enrollment_state_request_;
+  if (this != internal_default_instance()) delete refresh_account_request_;
+  if (this != internal_default_instance()) delete child_status_report_request_;
+  if (this != internal_default_instance()) delete rsu_lookup_key_upload_request_;
+  if (this != internal_default_instance()) delete public_saml_user_request_;
+  if (this != internal_default_instance()) delete chrome_os_user_report_request_;
+  if (this != internal_default_instance()) delete client_certificate_provisioning_request_;
+  if (this != internal_default_instance()) delete extension_install_report_request_;
+  if (this != internal_default_instance()) delete check_user_account_request_;
+  if (this != internal_default_instance()) delete private_set_membership_request_;
+  if (this != internal_default_instance()) delete browser_public_key_upload_request_;
+  if (this != internal_default_instance()) delete upload_euicc_info_request_;
+  if (this != internal_default_instance()) delete chrome_profile_report_request_;
+}
+
+void DeviceManagementRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceManagementRequest& DeviceManagementRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceManagementRequest_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceManagementRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceManagementRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(register_request_ != nullptr);
+      register_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(unregister_request_ != nullptr);
+      unregister_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(policy_request_ != nullptr);
+      policy_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(device_status_report_request_ != nullptr);
+      device_status_report_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(session_status_report_request_ != nullptr);
+      session_status_report_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(auto_enrollment_request_ != nullptr);
+      auto_enrollment_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(cert_upload_request_ != nullptr);
+      cert_upload_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(service_api_access_request_ != nullptr);
+      service_api_access_request_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(device_state_retrieval_request_ != nullptr);
+      device_state_retrieval_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(device_state_key_update_request_ != nullptr);
+      device_state_key_update_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(device_pairing_request_ != nullptr);
+      device_pairing_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(check_device_pairing_request_ != nullptr);
+      check_device_pairing_request_->Clear();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      GOOGLE_DCHECK(remote_command_request_ != nullptr);
+      remote_command_request_->Clear();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      GOOGLE_DCHECK(device_attribute_update_permission_request_ != nullptr);
+      device_attribute_update_permission_request_->Clear();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      GOOGLE_DCHECK(device_attribute_update_request_ != nullptr);
+      device_attribute_update_request_->Clear();
+    }
+    if (cached_has_bits & 0x00008000u) {
+      GOOGLE_DCHECK(gcm_id_update_request_ != nullptr);
+      gcm_id_update_request_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      GOOGLE_DCHECK(check_android_management_request_ != nullptr);
+      check_android_management_request_->Clear();
+    }
+    if (cached_has_bits & 0x00020000u) {
+      GOOGLE_DCHECK(certificate_based_register_request_ != nullptr);
+      certificate_based_register_request_->Clear();
+    }
+    if (cached_has_bits & 0x00040000u) {
+      GOOGLE_DCHECK(active_directory_enroll_play_user_request_ != nullptr);
+      active_directory_enroll_play_user_request_->Clear();
+    }
+    if (cached_has_bits & 0x00080000u) {
+      GOOGLE_DCHECK(active_directory_play_activity_request_ != nullptr);
+      active_directory_play_activity_request_->Clear();
+    }
+    if (cached_has_bits & 0x00100000u) {
+      GOOGLE_DCHECK(check_device_license_request_deprecated_ != nullptr);
+      check_device_license_request_deprecated_->Clear();
+    }
+    if (cached_has_bits & 0x00200000u) {
+      GOOGLE_DCHECK(active_directory_user_signin_request_ != nullptr);
+      active_directory_user_signin_request_->Clear();
+    }
+    if (cached_has_bits & 0x00400000u) {
+      GOOGLE_DCHECK(register_browser_request_ != nullptr);
+      register_browser_request_->Clear();
+    }
+    if (cached_has_bits & 0x00800000u) {
+      GOOGLE_DCHECK(app_install_report_request_ != nullptr);
+      app_install_report_request_->Clear();
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      GOOGLE_DCHECK(chrome_desktop_report_request_ != nullptr);
+      chrome_desktop_report_request_->Clear();
+    }
+    if (cached_has_bits & 0x02000000u) {
+      GOOGLE_DCHECK(policy_validation_report_request_ != nullptr);
+      policy_validation_report_request_->Clear();
+    }
+    if (cached_has_bits & 0x04000000u) {
+      GOOGLE_DCHECK(device_initial_enrollment_state_request_ != nullptr);
+      device_initial_enrollment_state_request_->Clear();
+    }
+    if (cached_has_bits & 0x08000000u) {
+      GOOGLE_DCHECK(refresh_account_request_ != nullptr);
+      refresh_account_request_->Clear();
+    }
+    if (cached_has_bits & 0x10000000u) {
+      GOOGLE_DCHECK(child_status_report_request_ != nullptr);
+      child_status_report_request_->Clear();
+    }
+    if (cached_has_bits & 0x20000000u) {
+      GOOGLE_DCHECK(rsu_lookup_key_upload_request_ != nullptr);
+      rsu_lookup_key_upload_request_->Clear();
+    }
+    if (cached_has_bits & 0x40000000u) {
+      GOOGLE_DCHECK(public_saml_user_request_ != nullptr);
+      public_saml_user_request_->Clear();
+    }
+    if (cached_has_bits & 0x80000000u) {
+      GOOGLE_DCHECK(chrome_os_user_report_request_ != nullptr);
+      chrome_os_user_report_request_->Clear();
+    }
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x0000007fu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(client_certificate_provisioning_request_ != nullptr);
+      client_certificate_provisioning_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(extension_install_report_request_ != nullptr);
+      extension_install_report_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(check_user_account_request_ != nullptr);
+      check_user_account_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(private_set_membership_request_ != nullptr);
+      private_set_membership_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(browser_public_key_upload_request_ != nullptr);
+      browser_public_key_upload_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(upload_euicc_info_request_ != nullptr);
+      upload_euicc_info_request_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(chrome_profile_report_request_ != nullptr);
+      chrome_profile_report_request_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceManagementRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.DeviceRegisterRequest register_request = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_register_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceUnregisterRequest unregister_request = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_unregister_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePolicyRequest policy_request = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_policy_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceStatusReportRequest device_status_report_request = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_status_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SessionStatusReportRequest session_status_report_request = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_session_status_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAutoEnrollmentRequest auto_enrollment_request = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_auto_enrollment_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceCertUploadRequest cert_upload_request = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_cert_upload_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceServiceApiAccessRequest service_api_access_request = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_service_api_access_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceStateRetrievalRequest device_state_retrieval_request = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_state_retrieval_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceStateKeyUpdateRequest device_state_key_update_request = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_state_key_update_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePairingRequest device_pairing_request = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_pairing_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckDevicePairingRequest check_device_pairing_request = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          ptr = ctx->ParseMessage(_internal_mutable_check_device_pairing_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRemoteCommandRequest remote_command_request = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_remote_command_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAttributeUpdatePermissionRequest device_attribute_update_permission_request = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_attribute_update_permission_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAttributeUpdateRequest device_attribute_update_request = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_attribute_update_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.GcmIdUpdateRequest gcm_id_update_request = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          ptr = ctx->ParseMessage(_internal_mutable_gcm_id_update_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckAndroidManagementRequest check_android_management_request = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_check_android_management_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CertificateBasedDeviceRegisterRequest certificate_based_register_request = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146)) {
+          ptr = ctx->ParseMessage(_internal_mutable_certificate_based_register_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ActiveDirectoryEnrollPlayUserRequest active_directory_enroll_play_user_request = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 154)) {
+          ptr = ctx->ParseMessage(_internal_mutable_active_directory_enroll_play_user_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ActiveDirectoryPlayActivityRequest active_directory_play_activity_request = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 162)) {
+          ptr = ctx->ParseMessage(_internal_mutable_active_directory_play_activity_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckDeviceLicenseRequest check_device_license_request_deprecated = 21 [deprecated = true];
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_check_device_license_request_deprecated(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ActiveDirectoryUserSigninRequest active_directory_user_signin_request = 22;
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 178)) {
+          ptr = ctx->ParseMessage(_internal_mutable_active_directory_user_signin_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.RegisterBrowserRequest register_browser_request = 23;
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr = ctx->ParseMessage(_internal_mutable_register_browser_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AppInstallReportRequest app_install_report_request = 25;
+      case 25:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          ptr = ctx->ParseMessage(_internal_mutable_app_install_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChromeDesktopReportRequest chrome_desktop_report_request = 26;
+      case 26:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 210)) {
+          ptr = ctx->ParseMessage(_internal_mutable_chrome_desktop_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyValidationReportRequest policy_validation_report_request = 27;
+      case 27:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          ptr = ctx->ParseMessage(_internal_mutable_policy_validation_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceInitialEnrollmentStateRequest device_initial_enrollment_state_request = 28;
+      case 28:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 226)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_initial_enrollment_state_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.RefreshAccountRequest refresh_account_request = 29;
+      case 29:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 234)) {
+          ptr = ctx->ParseMessage(_internal_mutable_refresh_account_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChildStatusReportRequest child_status_report_request = 30;
+      case 30:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 242)) {
+          ptr = ctx->ParseMessage(_internal_mutable_child_status_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.RsuLookupKeyUploadRequest rsu_lookup_key_upload_request = 31;
+      case 31:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr = ctx->ParseMessage(_internal_mutable_rsu_lookup_key_upload_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PublicSamlUserRequest public_saml_user_request = 32;
+      case 32:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 2)) {
+          ptr = ctx->ParseMessage(_internal_mutable_public_saml_user_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChromeOsUserReportRequest chrome_os_user_report_request = 33;
+      case 33:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_chrome_os_user_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ClientCertificateProvisioningRequest client_certificate_provisioning_request = 34;
+      case 34:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_client_certificate_provisioning_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ExtensionInstallReportRequest extension_install_report_request = 35;
+      case 35:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_extension_install_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckUserAccountRequest check_user_account_request = 36;
+      case 36:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_check_user_account_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PrivateSetMembershipRequest private_set_membership_request = 37;
+      case 37:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_private_set_membership_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserPublicKeyUploadRequest browser_public_key_upload_request = 38;
+      case 38:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_public_key_upload_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.UploadEuiccInfoRequest upload_euicc_info_request = 39;
+      case 39:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_upload_euicc_info_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChromeProfileReportRequest chrome_profile_report_request = 40;
+      case 40:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_chrome_profile_report_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceManagementRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceManagementRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.DeviceRegisterRequest register_request = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::register_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceUnregisterRequest unregister_request = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::unregister_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePolicyRequest policy_request = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::policy_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceStatusReportRequest device_status_report_request = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::device_status_report_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.SessionStatusReportRequest session_status_report_request = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        5, _Internal::session_status_report_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAutoEnrollmentRequest auto_enrollment_request = 6;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        6, _Internal::auto_enrollment_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceCertUploadRequest cert_upload_request = 7;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        7, _Internal::cert_upload_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceServiceApiAccessRequest service_api_access_request = 8;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        8, _Internal::service_api_access_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceStateRetrievalRequest device_state_retrieval_request = 9;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        9, _Internal::device_state_retrieval_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceStateKeyUpdateRequest device_state_key_update_request = 10;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        10, _Internal::device_state_key_update_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePairingRequest device_pairing_request = 11;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        11, _Internal::device_pairing_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.CheckDevicePairingRequest check_device_pairing_request = 12;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        12, _Internal::check_device_pairing_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceRemoteCommandRequest remote_command_request = 13;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        13, _Internal::remote_command_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAttributeUpdatePermissionRequest device_attribute_update_permission_request = 14;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        14, _Internal::device_attribute_update_permission_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAttributeUpdateRequest device_attribute_update_request = 15;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        15, _Internal::device_attribute_update_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.GcmIdUpdateRequest gcm_id_update_request = 16;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        16, _Internal::gcm_id_update_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.CheckAndroidManagementRequest check_android_management_request = 17;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        17, _Internal::check_android_management_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.CertificateBasedDeviceRegisterRequest certificate_based_register_request = 18;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        18, _Internal::certificate_based_register_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.ActiveDirectoryEnrollPlayUserRequest active_directory_enroll_play_user_request = 19;
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        19, _Internal::active_directory_enroll_play_user_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.ActiveDirectoryPlayActivityRequest active_directory_play_activity_request = 20;
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        20, _Internal::active_directory_play_activity_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.CheckDeviceLicenseRequest check_device_license_request_deprecated = 21 [deprecated = true];
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        21, _Internal::check_device_license_request_deprecated(this), target, stream);
+  }
+
+  // optional .enterprise_management.ActiveDirectoryUserSigninRequest active_directory_user_signin_request = 22;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        22, _Internal::active_directory_user_signin_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.RegisterBrowserRequest register_browser_request = 23;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        23, _Internal::register_browser_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.AppInstallReportRequest app_install_report_request = 25;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        25, _Internal::app_install_report_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.ChromeDesktopReportRequest chrome_desktop_report_request = 26;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        26, _Internal::chrome_desktop_report_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.PolicyValidationReportRequest policy_validation_report_request = 27;
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        27, _Internal::policy_validation_report_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateRequest device_initial_enrollment_state_request = 28;
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        28, _Internal::device_initial_enrollment_state_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.RefreshAccountRequest refresh_account_request = 29;
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        29, _Internal::refresh_account_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.ChildStatusReportRequest child_status_report_request = 30;
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        30, _Internal::child_status_report_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.RsuLookupKeyUploadRequest rsu_lookup_key_upload_request = 31;
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        31, _Internal::rsu_lookup_key_upload_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.PublicSamlUserRequest public_saml_user_request = 32;
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        32, _Internal::public_saml_user_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.ChromeOsUserReportRequest chrome_os_user_report_request = 33;
+  if (cached_has_bits & 0x80000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        33, _Internal::chrome_os_user_report_request(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional .enterprise_management.ClientCertificateProvisioningRequest client_certificate_provisioning_request = 34;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        34, _Internal::client_certificate_provisioning_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.ExtensionInstallReportRequest extension_install_report_request = 35;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        35, _Internal::extension_install_report_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.CheckUserAccountRequest check_user_account_request = 36;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        36, _Internal::check_user_account_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.PrivateSetMembershipRequest private_set_membership_request = 37;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        37, _Internal::private_set_membership_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.BrowserPublicKeyUploadRequest browser_public_key_upload_request = 38;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        38, _Internal::browser_public_key_upload_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.UploadEuiccInfoRequest upload_euicc_info_request = 39;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        39, _Internal::upload_euicc_info_request(this), target, stream);
+  }
+
+  // optional .enterprise_management.ChromeProfileReportRequest chrome_profile_report_request = 40;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        40, _Internal::chrome_profile_report_request(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceManagementRequest)
+  return target;
+}
+
+size_t DeviceManagementRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceManagementRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional .enterprise_management.DeviceRegisterRequest register_request = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *register_request_);
+    }
+
+    // optional .enterprise_management.DeviceUnregisterRequest unregister_request = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *unregister_request_);
+    }
+
+    // optional .enterprise_management.DevicePolicyRequest policy_request = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *policy_request_);
+    }
+
+    // optional .enterprise_management.DeviceStatusReportRequest device_status_report_request = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_status_report_request_);
+    }
+
+    // optional .enterprise_management.SessionStatusReportRequest session_status_report_request = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *session_status_report_request_);
+    }
+
+    // optional .enterprise_management.DeviceAutoEnrollmentRequest auto_enrollment_request = 6;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *auto_enrollment_request_);
+    }
+
+    // optional .enterprise_management.DeviceCertUploadRequest cert_upload_request = 7;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *cert_upload_request_);
+    }
+
+    // optional .enterprise_management.DeviceServiceApiAccessRequest service_api_access_request = 8;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *service_api_access_request_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.DeviceStateRetrievalRequest device_state_retrieval_request = 9;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_state_retrieval_request_);
+    }
+
+    // optional .enterprise_management.DeviceStateKeyUpdateRequest device_state_key_update_request = 10;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_state_key_update_request_);
+    }
+
+    // optional .enterprise_management.DevicePairingRequest device_pairing_request = 11;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_pairing_request_);
+    }
+
+    // optional .enterprise_management.CheckDevicePairingRequest check_device_pairing_request = 12;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *check_device_pairing_request_);
+    }
+
+    // optional .enterprise_management.DeviceRemoteCommandRequest remote_command_request = 13;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *remote_command_request_);
+    }
+
+    // optional .enterprise_management.DeviceAttributeUpdatePermissionRequest device_attribute_update_permission_request = 14;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_attribute_update_permission_request_);
+    }
+
+    // optional .enterprise_management.DeviceAttributeUpdateRequest device_attribute_update_request = 15;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_attribute_update_request_);
+    }
+
+    // optional .enterprise_management.GcmIdUpdateRequest gcm_id_update_request = 16;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *gcm_id_update_request_);
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional .enterprise_management.CheckAndroidManagementRequest check_android_management_request = 17;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *check_android_management_request_);
+    }
+
+    // optional .enterprise_management.CertificateBasedDeviceRegisterRequest certificate_based_register_request = 18;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *certificate_based_register_request_);
+    }
+
+    // optional .enterprise_management.ActiveDirectoryEnrollPlayUserRequest active_directory_enroll_play_user_request = 19;
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *active_directory_enroll_play_user_request_);
+    }
+
+    // optional .enterprise_management.ActiveDirectoryPlayActivityRequest active_directory_play_activity_request = 20;
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *active_directory_play_activity_request_);
+    }
+
+    // optional .enterprise_management.CheckDeviceLicenseRequest check_device_license_request_deprecated = 21 [deprecated = true];
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *check_device_license_request_deprecated_);
+    }
+
+    // optional .enterprise_management.ActiveDirectoryUserSigninRequest active_directory_user_signin_request = 22;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *active_directory_user_signin_request_);
+    }
+
+    // optional .enterprise_management.RegisterBrowserRequest register_browser_request = 23;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *register_browser_request_);
+    }
+
+    // optional .enterprise_management.AppInstallReportRequest app_install_report_request = 25;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *app_install_report_request_);
+    }
+
+  }
+  if (cached_has_bits & 0xff000000u) {
+    // optional .enterprise_management.ChromeDesktopReportRequest chrome_desktop_report_request = 26;
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *chrome_desktop_report_request_);
+    }
+
+    // optional .enterprise_management.PolicyValidationReportRequest policy_validation_report_request = 27;
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *policy_validation_report_request_);
+    }
+
+    // optional .enterprise_management.DeviceInitialEnrollmentStateRequest device_initial_enrollment_state_request = 28;
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_initial_enrollment_state_request_);
+    }
+
+    // optional .enterprise_management.RefreshAccountRequest refresh_account_request = 29;
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *refresh_account_request_);
+    }
+
+    // optional .enterprise_management.ChildStatusReportRequest child_status_report_request = 30;
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *child_status_report_request_);
+    }
+
+    // optional .enterprise_management.RsuLookupKeyUploadRequest rsu_lookup_key_upload_request = 31;
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *rsu_lookup_key_upload_request_);
+    }
+
+    // optional .enterprise_management.PublicSamlUserRequest public_saml_user_request = 32;
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *public_saml_user_request_);
+    }
+
+    // optional .enterprise_management.ChromeOsUserReportRequest chrome_os_user_report_request = 33;
+    if (cached_has_bits & 0x80000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *chrome_os_user_report_request_);
+    }
+
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x0000007fu) {
+    // optional .enterprise_management.ClientCertificateProvisioningRequest client_certificate_provisioning_request = 34;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *client_certificate_provisioning_request_);
+    }
+
+    // optional .enterprise_management.ExtensionInstallReportRequest extension_install_report_request = 35;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *extension_install_report_request_);
+    }
+
+    // optional .enterprise_management.CheckUserAccountRequest check_user_account_request = 36;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *check_user_account_request_);
+    }
+
+    // optional .enterprise_management.PrivateSetMembershipRequest private_set_membership_request = 37;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *private_set_membership_request_);
+    }
+
+    // optional .enterprise_management.BrowserPublicKeyUploadRequest browser_public_key_upload_request = 38;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *browser_public_key_upload_request_);
+    }
+
+    // optional .enterprise_management.UploadEuiccInfoRequest upload_euicc_info_request = 39;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *upload_euicc_info_request_);
+    }
+
+    // optional .enterprise_management.ChromeProfileReportRequest chrome_profile_report_request = 40;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *chrome_profile_report_request_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceManagementRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceManagementRequest*>(
+      &from));
+}
+
+void DeviceManagementRequest::MergeFrom(const DeviceManagementRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceManagementRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_register_request()->::enterprise_management::DeviceRegisterRequest::MergeFrom(from._internal_register_request());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_unregister_request()->::enterprise_management::DeviceUnregisterRequest::MergeFrom(from._internal_unregister_request());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_policy_request()->::enterprise_management::DevicePolicyRequest::MergeFrom(from._internal_policy_request());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_device_status_report_request()->::enterprise_management::DeviceStatusReportRequest::MergeFrom(from._internal_device_status_report_request());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_session_status_report_request()->::enterprise_management::SessionStatusReportRequest::MergeFrom(from._internal_session_status_report_request());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_auto_enrollment_request()->::enterprise_management::DeviceAutoEnrollmentRequest::MergeFrom(from._internal_auto_enrollment_request());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_cert_upload_request()->::enterprise_management::DeviceCertUploadRequest::MergeFrom(from._internal_cert_upload_request());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_service_api_access_request()->::enterprise_management::DeviceServiceApiAccessRequest::MergeFrom(from._internal_service_api_access_request());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_device_state_retrieval_request()->::enterprise_management::DeviceStateRetrievalRequest::MergeFrom(from._internal_device_state_retrieval_request());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_device_state_key_update_request()->::enterprise_management::DeviceStateKeyUpdateRequest::MergeFrom(from._internal_device_state_key_update_request());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_device_pairing_request()->::enterprise_management::DevicePairingRequest::MergeFrom(from._internal_device_pairing_request());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_check_device_pairing_request()->::enterprise_management::CheckDevicePairingRequest::MergeFrom(from._internal_check_device_pairing_request());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _internal_mutable_remote_command_request()->::enterprise_management::DeviceRemoteCommandRequest::MergeFrom(from._internal_remote_command_request());
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _internal_mutable_device_attribute_update_permission_request()->::enterprise_management::DeviceAttributeUpdatePermissionRequest::MergeFrom(from._internal_device_attribute_update_permission_request());
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _internal_mutable_device_attribute_update_request()->::enterprise_management::DeviceAttributeUpdateRequest::MergeFrom(from._internal_device_attribute_update_request());
+    }
+    if (cached_has_bits & 0x00008000u) {
+      _internal_mutable_gcm_id_update_request()->::enterprise_management::GcmIdUpdateRequest::MergeFrom(from._internal_gcm_id_update_request());
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      _internal_mutable_check_android_management_request()->::enterprise_management::CheckAndroidManagementRequest::MergeFrom(from._internal_check_android_management_request());
+    }
+    if (cached_has_bits & 0x00020000u) {
+      _internal_mutable_certificate_based_register_request()->::enterprise_management::CertificateBasedDeviceRegisterRequest::MergeFrom(from._internal_certificate_based_register_request());
+    }
+    if (cached_has_bits & 0x00040000u) {
+      _internal_mutable_active_directory_enroll_play_user_request()->::enterprise_management::ActiveDirectoryEnrollPlayUserRequest::MergeFrom(from._internal_active_directory_enroll_play_user_request());
+    }
+    if (cached_has_bits & 0x00080000u) {
+      _internal_mutable_active_directory_play_activity_request()->::enterprise_management::ActiveDirectoryPlayActivityRequest::MergeFrom(from._internal_active_directory_play_activity_request());
+    }
+    if (cached_has_bits & 0x00100000u) {
+      _internal_mutable_check_device_license_request_deprecated()->::enterprise_management::CheckDeviceLicenseRequest::MergeFrom(from._internal_check_device_license_request_deprecated());
+    }
+    if (cached_has_bits & 0x00200000u) {
+      _internal_mutable_active_directory_user_signin_request()->::enterprise_management::ActiveDirectoryUserSigninRequest::MergeFrom(from._internal_active_directory_user_signin_request());
+    }
+    if (cached_has_bits & 0x00400000u) {
+      _internal_mutable_register_browser_request()->::enterprise_management::RegisterBrowserRequest::MergeFrom(from._internal_register_browser_request());
+    }
+    if (cached_has_bits & 0x00800000u) {
+      _internal_mutable_app_install_report_request()->::enterprise_management::AppInstallReportRequest::MergeFrom(from._internal_app_install_report_request());
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      _internal_mutable_chrome_desktop_report_request()->::enterprise_management::ChromeDesktopReportRequest::MergeFrom(from._internal_chrome_desktop_report_request());
+    }
+    if (cached_has_bits & 0x02000000u) {
+      _internal_mutable_policy_validation_report_request()->::enterprise_management::PolicyValidationReportRequest::MergeFrom(from._internal_policy_validation_report_request());
+    }
+    if (cached_has_bits & 0x04000000u) {
+      _internal_mutable_device_initial_enrollment_state_request()->::enterprise_management::DeviceInitialEnrollmentStateRequest::MergeFrom(from._internal_device_initial_enrollment_state_request());
+    }
+    if (cached_has_bits & 0x08000000u) {
+      _internal_mutable_refresh_account_request()->::enterprise_management::RefreshAccountRequest::MergeFrom(from._internal_refresh_account_request());
+    }
+    if (cached_has_bits & 0x10000000u) {
+      _internal_mutable_child_status_report_request()->::enterprise_management::ChildStatusReportRequest::MergeFrom(from._internal_child_status_report_request());
+    }
+    if (cached_has_bits & 0x20000000u) {
+      _internal_mutable_rsu_lookup_key_upload_request()->::enterprise_management::RsuLookupKeyUploadRequest::MergeFrom(from._internal_rsu_lookup_key_upload_request());
+    }
+    if (cached_has_bits & 0x40000000u) {
+      _internal_mutable_public_saml_user_request()->::enterprise_management::PublicSamlUserRequest::MergeFrom(from._internal_public_saml_user_request());
+    }
+    if (cached_has_bits & 0x80000000u) {
+      _internal_mutable_chrome_os_user_report_request()->::enterprise_management::ChromeOsUserReportRequest::MergeFrom(from._internal_chrome_os_user_report_request());
+    }
+  }
+  cached_has_bits = from._has_bits_[1];
+  if (cached_has_bits & 0x0000007fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_client_certificate_provisioning_request()->::enterprise_management::ClientCertificateProvisioningRequest::MergeFrom(from._internal_client_certificate_provisioning_request());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_extension_install_report_request()->::enterprise_management::ExtensionInstallReportRequest::MergeFrom(from._internal_extension_install_report_request());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_check_user_account_request()->::enterprise_management::CheckUserAccountRequest::MergeFrom(from._internal_check_user_account_request());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_private_set_membership_request()->::enterprise_management::PrivateSetMembershipRequest::MergeFrom(from._internal_private_set_membership_request());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_browser_public_key_upload_request()->::enterprise_management::BrowserPublicKeyUploadRequest::MergeFrom(from._internal_browser_public_key_upload_request());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_upload_euicc_info_request()->::enterprise_management::UploadEuiccInfoRequest::MergeFrom(from._internal_upload_euicc_info_request());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_chrome_profile_report_request()->::enterprise_management::ChromeProfileReportRequest::MergeFrom(from._internal_chrome_profile_report_request());
+    }
+  }
+}
+
+void DeviceManagementRequest::CopyFrom(const DeviceManagementRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceManagementRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceManagementRequest::IsInitialized() const {
+  if (_internal_has_device_status_report_request()) {
+    if (!device_status_report_request_->IsInitialized()) return false;
+  }
+  return true;
+}
+
+void DeviceManagementRequest::InternalSwap(DeviceManagementRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(_has_bits_[1], other->_has_bits_[1]);
+  swap(register_request_, other->register_request_);
+  swap(unregister_request_, other->unregister_request_);
+  swap(policy_request_, other->policy_request_);
+  swap(device_status_report_request_, other->device_status_report_request_);
+  swap(session_status_report_request_, other->session_status_report_request_);
+  swap(auto_enrollment_request_, other->auto_enrollment_request_);
+  swap(cert_upload_request_, other->cert_upload_request_);
+  swap(service_api_access_request_, other->service_api_access_request_);
+  swap(device_state_retrieval_request_, other->device_state_retrieval_request_);
+  swap(device_state_key_update_request_, other->device_state_key_update_request_);
+  swap(device_pairing_request_, other->device_pairing_request_);
+  swap(check_device_pairing_request_, other->check_device_pairing_request_);
+  swap(remote_command_request_, other->remote_command_request_);
+  swap(device_attribute_update_permission_request_, other->device_attribute_update_permission_request_);
+  swap(device_attribute_update_request_, other->device_attribute_update_request_);
+  swap(gcm_id_update_request_, other->gcm_id_update_request_);
+  swap(check_android_management_request_, other->check_android_management_request_);
+  swap(certificate_based_register_request_, other->certificate_based_register_request_);
+  swap(active_directory_enroll_play_user_request_, other->active_directory_enroll_play_user_request_);
+  swap(active_directory_play_activity_request_, other->active_directory_play_activity_request_);
+  swap(check_device_license_request_deprecated_, other->check_device_license_request_deprecated_);
+  swap(active_directory_user_signin_request_, other->active_directory_user_signin_request_);
+  swap(register_browser_request_, other->register_browser_request_);
+  swap(app_install_report_request_, other->app_install_report_request_);
+  swap(chrome_desktop_report_request_, other->chrome_desktop_report_request_);
+  swap(policy_validation_report_request_, other->policy_validation_report_request_);
+  swap(device_initial_enrollment_state_request_, other->device_initial_enrollment_state_request_);
+  swap(refresh_account_request_, other->refresh_account_request_);
+  swap(child_status_report_request_, other->child_status_report_request_);
+  swap(rsu_lookup_key_upload_request_, other->rsu_lookup_key_upload_request_);
+  swap(public_saml_user_request_, other->public_saml_user_request_);
+  swap(chrome_os_user_report_request_, other->chrome_os_user_report_request_);
+  swap(client_certificate_provisioning_request_, other->client_certificate_provisioning_request_);
+  swap(extension_install_report_request_, other->extension_install_report_request_);
+  swap(check_user_account_request_, other->check_user_account_request_);
+  swap(private_set_membership_request_, other->private_set_membership_request_);
+  swap(browser_public_key_upload_request_, other->browser_public_key_upload_request_);
+  swap(upload_euicc_info_request_, other->upload_euicc_info_request_);
+  swap(chrome_profile_report_request_, other->chrome_profile_report_request_);
+}
+
+std::string DeviceManagementRequest::GetTypeName() const {
+  return "enterprise_management.DeviceManagementRequest";
+}
+
+
+// ===================================================================
+
+void DeviceManagementResponse::InitAsDefaultInstance() {
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->register_response_ = const_cast< ::enterprise_management::DeviceRegisterResponse*>(
+      ::enterprise_management::DeviceRegisterResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->unregister_response_ = const_cast< ::enterprise_management::DeviceUnregisterResponse*>(
+      ::enterprise_management::DeviceUnregisterResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->policy_response_ = const_cast< ::enterprise_management::DevicePolicyResponse*>(
+      ::enterprise_management::DevicePolicyResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->device_status_report_response_ = const_cast< ::enterprise_management::DeviceStatusReportResponse*>(
+      ::enterprise_management::DeviceStatusReportResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->session_status_report_response_ = const_cast< ::enterprise_management::SessionStatusReportResponse*>(
+      ::enterprise_management::SessionStatusReportResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->child_status_report_response_ = const_cast< ::enterprise_management::ChildStatusReportResponse*>(
+      ::enterprise_management::ChildStatusReportResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->auto_enrollment_response_ = const_cast< ::enterprise_management::DeviceAutoEnrollmentResponse*>(
+      ::enterprise_management::DeviceAutoEnrollmentResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->cert_upload_response_ = const_cast< ::enterprise_management::DeviceCertUploadResponse*>(
+      ::enterprise_management::DeviceCertUploadResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->service_api_access_response_ = const_cast< ::enterprise_management::DeviceServiceApiAccessResponse*>(
+      ::enterprise_management::DeviceServiceApiAccessResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->device_state_retrieval_response_ = const_cast< ::enterprise_management::DeviceStateRetrievalResponse*>(
+      ::enterprise_management::DeviceStateRetrievalResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->device_pairing_response_ = const_cast< ::enterprise_management::DevicePairingResponse*>(
+      ::enterprise_management::DevicePairingResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->check_device_pairing_response_ = const_cast< ::enterprise_management::CheckDevicePairingResponse*>(
+      ::enterprise_management::CheckDevicePairingResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->remote_command_response_ = const_cast< ::enterprise_management::DeviceRemoteCommandResponse*>(
+      ::enterprise_management::DeviceRemoteCommandResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->device_attribute_update_permission_response_ = const_cast< ::enterprise_management::DeviceAttributeUpdatePermissionResponse*>(
+      ::enterprise_management::DeviceAttributeUpdatePermissionResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->device_attribute_update_response_ = const_cast< ::enterprise_management::DeviceAttributeUpdateResponse*>(
+      ::enterprise_management::DeviceAttributeUpdateResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->gcm_id_update_response_ = const_cast< ::enterprise_management::GcmIdUpdateResponse*>(
+      ::enterprise_management::GcmIdUpdateResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->check_android_management_response_ = const_cast< ::enterprise_management::CheckAndroidManagementResponse*>(
+      ::enterprise_management::CheckAndroidManagementResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->active_directory_enroll_play_user_response_ = const_cast< ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse*>(
+      ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->active_directory_play_activity_response_ = const_cast< ::enterprise_management::ActiveDirectoryPlayActivityResponse*>(
+      ::enterprise_management::ActiveDirectoryPlayActivityResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->check_device_license_response_deprecated_ = const_cast< ::enterprise_management::CheckDeviceLicenseResponse*>(
+      ::enterprise_management::CheckDeviceLicenseResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->active_directory_user_signin_response_ = const_cast< ::enterprise_management::ActiveDirectoryUserSigninResponse*>(
+      ::enterprise_management::ActiveDirectoryUserSigninResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->chrome_desktop_report_response_ = const_cast< ::enterprise_management::ChromeDesktopReportResponse*>(
+      ::enterprise_management::ChromeDesktopReportResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->app_install_report_response_ = const_cast< ::enterprise_management::AppInstallReportResponse*>(
+      ::enterprise_management::AppInstallReportResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->policy_validation_report_response_ = const_cast< ::enterprise_management::PolicyValidationReportResponse*>(
+      ::enterprise_management::PolicyValidationReportResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->device_initial_enrollment_state_response_ = const_cast< ::enterprise_management::DeviceInitialEnrollmentStateResponse*>(
+      ::enterprise_management::DeviceInitialEnrollmentStateResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->refresh_account_response_ = const_cast< ::enterprise_management::RefreshAccountResponse*>(
+      ::enterprise_management::RefreshAccountResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->rsu_lookup_key_upload_response_ = const_cast< ::enterprise_management::RsuLookupKeyUploadResponse*>(
+      ::enterprise_management::RsuLookupKeyUploadResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->public_saml_user_response_ = const_cast< ::enterprise_management::PublicSamlUserResponse*>(
+      ::enterprise_management::PublicSamlUserResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->chrome_os_user_report_response_ = const_cast< ::enterprise_management::ChromeOsUserReportResponse*>(
+      ::enterprise_management::ChromeOsUserReportResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->client_certificate_provisioning_response_ = const_cast< ::enterprise_management::ClientCertificateProvisioningResponse*>(
+      ::enterprise_management::ClientCertificateProvisioningResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->check_user_account_response_ = const_cast< ::enterprise_management::CheckUserAccountResponse*>(
+      ::enterprise_management::CheckUserAccountResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->private_set_membership_response_ = const_cast< ::enterprise_management::PrivateSetMembershipResponse*>(
+      ::enterprise_management::PrivateSetMembershipResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->browser_public_key_upload_response_ = const_cast< ::enterprise_management::BrowserPublicKeyUploadResponse*>(
+      ::enterprise_management::BrowserPublicKeyUploadResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->upload_euicc_info_response_ = const_cast< ::enterprise_management::UploadEuiccInfoResponse*>(
+      ::enterprise_management::UploadEuiccInfoResponse::internal_default_instance());
+  ::enterprise_management::_DeviceManagementResponse_default_instance_._instance.get_mutable()->chrome_profile_report_response_ = const_cast< ::enterprise_management::ChromeProfileReportResponse*>(
+      ::enterprise_management::ChromeProfileReportResponse::internal_default_instance());
+}
+class DeviceManagementResponse::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceManagementResponse>()._has_bits_);
+  static void set_has_error_message(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::DeviceRegisterResponse& register_response(const DeviceManagementResponse* msg);
+  static void set_has_register_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::enterprise_management::DeviceUnregisterResponse& unregister_response(const DeviceManagementResponse* msg);
+  static void set_has_unregister_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::enterprise_management::DevicePolicyResponse& policy_response(const DeviceManagementResponse* msg);
+  static void set_has_policy_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::enterprise_management::DeviceStatusReportResponse& device_status_report_response(const DeviceManagementResponse* msg);
+  static void set_has_device_status_report_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static const ::enterprise_management::SessionStatusReportResponse& session_status_report_response(const DeviceManagementResponse* msg);
+  static void set_has_session_status_report_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::enterprise_management::ChildStatusReportResponse& child_status_report_response(const DeviceManagementResponse* msg);
+  static void set_has_child_status_report_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 67108864u;
+  }
+  static const ::enterprise_management::DeviceAutoEnrollmentResponse& auto_enrollment_response(const DeviceManagementResponse* msg);
+  static void set_has_auto_enrollment_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static const ::enterprise_management::DeviceCertUploadResponse& cert_upload_response(const DeviceManagementResponse* msg);
+  static void set_has_cert_upload_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static const ::enterprise_management::DeviceServiceApiAccessResponse& service_api_access_response(const DeviceManagementResponse* msg);
+  static void set_has_service_api_access_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static const ::enterprise_management::DeviceStateRetrievalResponse& device_state_retrieval_response(const DeviceManagementResponse* msg);
+  static void set_has_device_state_retrieval_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static const ::enterprise_management::DevicePairingResponse& device_pairing_response(const DeviceManagementResponse* msg);
+  static void set_has_device_pairing_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static const ::enterprise_management::CheckDevicePairingResponse& check_device_pairing_response(const DeviceManagementResponse* msg);
+  static void set_has_check_device_pairing_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static const ::enterprise_management::DeviceRemoteCommandResponse& remote_command_response(const DeviceManagementResponse* msg);
+  static void set_has_remote_command_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static const ::enterprise_management::DeviceAttributeUpdatePermissionResponse& device_attribute_update_permission_response(const DeviceManagementResponse* msg);
+  static void set_has_device_attribute_update_permission_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static const ::enterprise_management::DeviceAttributeUpdateResponse& device_attribute_update_response(const DeviceManagementResponse* msg);
+  static void set_has_device_attribute_update_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static const ::enterprise_management::GcmIdUpdateResponse& gcm_id_update_response(const DeviceManagementResponse* msg);
+  static void set_has_gcm_id_update_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static const ::enterprise_management::CheckAndroidManagementResponse& check_android_management_response(const DeviceManagementResponse* msg);
+  static void set_has_check_android_management_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static const ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse& active_directory_enroll_play_user_response(const DeviceManagementResponse* msg);
+  static void set_has_active_directory_enroll_play_user_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 131072u;
+  }
+  static const ::enterprise_management::ActiveDirectoryPlayActivityResponse& active_directory_play_activity_response(const DeviceManagementResponse* msg);
+  static void set_has_active_directory_play_activity_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 262144u;
+  }
+  static const ::enterprise_management::CheckDeviceLicenseResponse& check_device_license_response_deprecated(const DeviceManagementResponse* msg);
+  static void set_has_check_device_license_response_deprecated(HasBits* has_bits) {
+    (*has_bits)[0] |= 524288u;
+  }
+  static const ::enterprise_management::ActiveDirectoryUserSigninResponse& active_directory_user_signin_response(const DeviceManagementResponse* msg);
+  static void set_has_active_directory_user_signin_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 1048576u;
+  }
+  static const ::enterprise_management::ChromeDesktopReportResponse& chrome_desktop_report_response(const DeviceManagementResponse* msg);
+  static void set_has_chrome_desktop_report_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 2097152u;
+  }
+  static const ::enterprise_management::AppInstallReportResponse& app_install_report_response(const DeviceManagementResponse* msg);
+  static void set_has_app_install_report_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 4194304u;
+  }
+  static const ::enterprise_management::PolicyValidationReportResponse& policy_validation_report_response(const DeviceManagementResponse* msg);
+  static void set_has_policy_validation_report_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 8388608u;
+  }
+  static const ::enterprise_management::DeviceInitialEnrollmentStateResponse& device_initial_enrollment_state_response(const DeviceManagementResponse* msg);
+  static void set_has_device_initial_enrollment_state_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 16777216u;
+  }
+  static const ::enterprise_management::RefreshAccountResponse& refresh_account_response(const DeviceManagementResponse* msg);
+  static void set_has_refresh_account_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 33554432u;
+  }
+  static const ::enterprise_management::RsuLookupKeyUploadResponse& rsu_lookup_key_upload_response(const DeviceManagementResponse* msg);
+  static void set_has_rsu_lookup_key_upload_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 134217728u;
+  }
+  static const ::enterprise_management::PublicSamlUserResponse& public_saml_user_response(const DeviceManagementResponse* msg);
+  static void set_has_public_saml_user_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 268435456u;
+  }
+  static const ::enterprise_management::ChromeOsUserReportResponse& chrome_os_user_report_response(const DeviceManagementResponse* msg);
+  static void set_has_chrome_os_user_report_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 536870912u;
+  }
+  static const ::enterprise_management::ClientCertificateProvisioningResponse& client_certificate_provisioning_response(const DeviceManagementResponse* msg);
+  static void set_has_client_certificate_provisioning_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 1073741824u;
+  }
+  static const ::enterprise_management::CheckUserAccountResponse& check_user_account_response(const DeviceManagementResponse* msg);
+  static void set_has_check_user_account_response(HasBits* has_bits) {
+    (*has_bits)[0] |= 2147483648u;
+  }
+  static const ::enterprise_management::PrivateSetMembershipResponse& private_set_membership_response(const DeviceManagementResponse* msg);
+  static void set_has_private_set_membership_response(HasBits* has_bits) {
+    (*has_bits)[1] |= 1u;
+  }
+  static const ::enterprise_management::BrowserPublicKeyUploadResponse& browser_public_key_upload_response(const DeviceManagementResponse* msg);
+  static void set_has_browser_public_key_upload_response(HasBits* has_bits) {
+    (*has_bits)[1] |= 2u;
+  }
+  static const ::enterprise_management::UploadEuiccInfoResponse& upload_euicc_info_response(const DeviceManagementResponse* msg);
+  static void set_has_upload_euicc_info_response(HasBits* has_bits) {
+    (*has_bits)[1] |= 4u;
+  }
+  static const ::enterprise_management::ChromeProfileReportResponse& chrome_profile_report_response(const DeviceManagementResponse* msg);
+  static void set_has_chrome_profile_report_response(HasBits* has_bits) {
+    (*has_bits)[1] |= 8u;
+  }
+};
+
+const ::enterprise_management::DeviceRegisterResponse&
+DeviceManagementResponse::_Internal::register_response(const DeviceManagementResponse* msg) {
+  return *msg->register_response_;
+}
+const ::enterprise_management::DeviceUnregisterResponse&
+DeviceManagementResponse::_Internal::unregister_response(const DeviceManagementResponse* msg) {
+  return *msg->unregister_response_;
+}
+const ::enterprise_management::DevicePolicyResponse&
+DeviceManagementResponse::_Internal::policy_response(const DeviceManagementResponse* msg) {
+  return *msg->policy_response_;
+}
+const ::enterprise_management::DeviceStatusReportResponse&
+DeviceManagementResponse::_Internal::device_status_report_response(const DeviceManagementResponse* msg) {
+  return *msg->device_status_report_response_;
+}
+const ::enterprise_management::SessionStatusReportResponse&
+DeviceManagementResponse::_Internal::session_status_report_response(const DeviceManagementResponse* msg) {
+  return *msg->session_status_report_response_;
+}
+const ::enterprise_management::ChildStatusReportResponse&
+DeviceManagementResponse::_Internal::child_status_report_response(const DeviceManagementResponse* msg) {
+  return *msg->child_status_report_response_;
+}
+const ::enterprise_management::DeviceAutoEnrollmentResponse&
+DeviceManagementResponse::_Internal::auto_enrollment_response(const DeviceManagementResponse* msg) {
+  return *msg->auto_enrollment_response_;
+}
+const ::enterprise_management::DeviceCertUploadResponse&
+DeviceManagementResponse::_Internal::cert_upload_response(const DeviceManagementResponse* msg) {
+  return *msg->cert_upload_response_;
+}
+const ::enterprise_management::DeviceServiceApiAccessResponse&
+DeviceManagementResponse::_Internal::service_api_access_response(const DeviceManagementResponse* msg) {
+  return *msg->service_api_access_response_;
+}
+const ::enterprise_management::DeviceStateRetrievalResponse&
+DeviceManagementResponse::_Internal::device_state_retrieval_response(const DeviceManagementResponse* msg) {
+  return *msg->device_state_retrieval_response_;
+}
+const ::enterprise_management::DevicePairingResponse&
+DeviceManagementResponse::_Internal::device_pairing_response(const DeviceManagementResponse* msg) {
+  return *msg->device_pairing_response_;
+}
+const ::enterprise_management::CheckDevicePairingResponse&
+DeviceManagementResponse::_Internal::check_device_pairing_response(const DeviceManagementResponse* msg) {
+  return *msg->check_device_pairing_response_;
+}
+const ::enterprise_management::DeviceRemoteCommandResponse&
+DeviceManagementResponse::_Internal::remote_command_response(const DeviceManagementResponse* msg) {
+  return *msg->remote_command_response_;
+}
+const ::enterprise_management::DeviceAttributeUpdatePermissionResponse&
+DeviceManagementResponse::_Internal::device_attribute_update_permission_response(const DeviceManagementResponse* msg) {
+  return *msg->device_attribute_update_permission_response_;
+}
+const ::enterprise_management::DeviceAttributeUpdateResponse&
+DeviceManagementResponse::_Internal::device_attribute_update_response(const DeviceManagementResponse* msg) {
+  return *msg->device_attribute_update_response_;
+}
+const ::enterprise_management::GcmIdUpdateResponse&
+DeviceManagementResponse::_Internal::gcm_id_update_response(const DeviceManagementResponse* msg) {
+  return *msg->gcm_id_update_response_;
+}
+const ::enterprise_management::CheckAndroidManagementResponse&
+DeviceManagementResponse::_Internal::check_android_management_response(const DeviceManagementResponse* msg) {
+  return *msg->check_android_management_response_;
+}
+const ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse&
+DeviceManagementResponse::_Internal::active_directory_enroll_play_user_response(const DeviceManagementResponse* msg) {
+  return *msg->active_directory_enroll_play_user_response_;
+}
+const ::enterprise_management::ActiveDirectoryPlayActivityResponse&
+DeviceManagementResponse::_Internal::active_directory_play_activity_response(const DeviceManagementResponse* msg) {
+  return *msg->active_directory_play_activity_response_;
+}
+const ::enterprise_management::CheckDeviceLicenseResponse&
+DeviceManagementResponse::_Internal::check_device_license_response_deprecated(const DeviceManagementResponse* msg) {
+  return *msg->check_device_license_response_deprecated_;
+}
+const ::enterprise_management::ActiveDirectoryUserSigninResponse&
+DeviceManagementResponse::_Internal::active_directory_user_signin_response(const DeviceManagementResponse* msg) {
+  return *msg->active_directory_user_signin_response_;
+}
+const ::enterprise_management::ChromeDesktopReportResponse&
+DeviceManagementResponse::_Internal::chrome_desktop_report_response(const DeviceManagementResponse* msg) {
+  return *msg->chrome_desktop_report_response_;
+}
+const ::enterprise_management::AppInstallReportResponse&
+DeviceManagementResponse::_Internal::app_install_report_response(const DeviceManagementResponse* msg) {
+  return *msg->app_install_report_response_;
+}
+const ::enterprise_management::PolicyValidationReportResponse&
+DeviceManagementResponse::_Internal::policy_validation_report_response(const DeviceManagementResponse* msg) {
+  return *msg->policy_validation_report_response_;
+}
+const ::enterprise_management::DeviceInitialEnrollmentStateResponse&
+DeviceManagementResponse::_Internal::device_initial_enrollment_state_response(const DeviceManagementResponse* msg) {
+  return *msg->device_initial_enrollment_state_response_;
+}
+const ::enterprise_management::RefreshAccountResponse&
+DeviceManagementResponse::_Internal::refresh_account_response(const DeviceManagementResponse* msg) {
+  return *msg->refresh_account_response_;
+}
+const ::enterprise_management::RsuLookupKeyUploadResponse&
+DeviceManagementResponse::_Internal::rsu_lookup_key_upload_response(const DeviceManagementResponse* msg) {
+  return *msg->rsu_lookup_key_upload_response_;
+}
+const ::enterprise_management::PublicSamlUserResponse&
+DeviceManagementResponse::_Internal::public_saml_user_response(const DeviceManagementResponse* msg) {
+  return *msg->public_saml_user_response_;
+}
+const ::enterprise_management::ChromeOsUserReportResponse&
+DeviceManagementResponse::_Internal::chrome_os_user_report_response(const DeviceManagementResponse* msg) {
+  return *msg->chrome_os_user_report_response_;
+}
+const ::enterprise_management::ClientCertificateProvisioningResponse&
+DeviceManagementResponse::_Internal::client_certificate_provisioning_response(const DeviceManagementResponse* msg) {
+  return *msg->client_certificate_provisioning_response_;
+}
+const ::enterprise_management::CheckUserAccountResponse&
+DeviceManagementResponse::_Internal::check_user_account_response(const DeviceManagementResponse* msg) {
+  return *msg->check_user_account_response_;
+}
+const ::enterprise_management::PrivateSetMembershipResponse&
+DeviceManagementResponse::_Internal::private_set_membership_response(const DeviceManagementResponse* msg) {
+  return *msg->private_set_membership_response_;
+}
+const ::enterprise_management::BrowserPublicKeyUploadResponse&
+DeviceManagementResponse::_Internal::browser_public_key_upload_response(const DeviceManagementResponse* msg) {
+  return *msg->browser_public_key_upload_response_;
+}
+const ::enterprise_management::UploadEuiccInfoResponse&
+DeviceManagementResponse::_Internal::upload_euicc_info_response(const DeviceManagementResponse* msg) {
+  return *msg->upload_euicc_info_response_;
+}
+const ::enterprise_management::ChromeProfileReportResponse&
+DeviceManagementResponse::_Internal::chrome_profile_report_response(const DeviceManagementResponse* msg) {
+  return *msg->chrome_profile_report_response_;
+}
+DeviceManagementResponse::DeviceManagementResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceManagementResponse)
+}
+DeviceManagementResponse::DeviceManagementResponse(const DeviceManagementResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      error_detail_(from.error_detail_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_error_message()) {
+    error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+  }
+  if (from._internal_has_register_response()) {
+    register_response_ = new ::enterprise_management::DeviceRegisterResponse(*from.register_response_);
+  } else {
+    register_response_ = nullptr;
+  }
+  if (from._internal_has_unregister_response()) {
+    unregister_response_ = new ::enterprise_management::DeviceUnregisterResponse(*from.unregister_response_);
+  } else {
+    unregister_response_ = nullptr;
+  }
+  if (from._internal_has_policy_response()) {
+    policy_response_ = new ::enterprise_management::DevicePolicyResponse(*from.policy_response_);
+  } else {
+    policy_response_ = nullptr;
+  }
+  if (from._internal_has_device_status_report_response()) {
+    device_status_report_response_ = new ::enterprise_management::DeviceStatusReportResponse(*from.device_status_report_response_);
+  } else {
+    device_status_report_response_ = nullptr;
+  }
+  if (from._internal_has_session_status_report_response()) {
+    session_status_report_response_ = new ::enterprise_management::SessionStatusReportResponse(*from.session_status_report_response_);
+  } else {
+    session_status_report_response_ = nullptr;
+  }
+  if (from._internal_has_auto_enrollment_response()) {
+    auto_enrollment_response_ = new ::enterprise_management::DeviceAutoEnrollmentResponse(*from.auto_enrollment_response_);
+  } else {
+    auto_enrollment_response_ = nullptr;
+  }
+  if (from._internal_has_cert_upload_response()) {
+    cert_upload_response_ = new ::enterprise_management::DeviceCertUploadResponse(*from.cert_upload_response_);
+  } else {
+    cert_upload_response_ = nullptr;
+  }
+  if (from._internal_has_service_api_access_response()) {
+    service_api_access_response_ = new ::enterprise_management::DeviceServiceApiAccessResponse(*from.service_api_access_response_);
+  } else {
+    service_api_access_response_ = nullptr;
+  }
+  if (from._internal_has_device_state_retrieval_response()) {
+    device_state_retrieval_response_ = new ::enterprise_management::DeviceStateRetrievalResponse(*from.device_state_retrieval_response_);
+  } else {
+    device_state_retrieval_response_ = nullptr;
+  }
+  if (from._internal_has_device_pairing_response()) {
+    device_pairing_response_ = new ::enterprise_management::DevicePairingResponse(*from.device_pairing_response_);
+  } else {
+    device_pairing_response_ = nullptr;
+  }
+  if (from._internal_has_check_device_pairing_response()) {
+    check_device_pairing_response_ = new ::enterprise_management::CheckDevicePairingResponse(*from.check_device_pairing_response_);
+  } else {
+    check_device_pairing_response_ = nullptr;
+  }
+  if (from._internal_has_remote_command_response()) {
+    remote_command_response_ = new ::enterprise_management::DeviceRemoteCommandResponse(*from.remote_command_response_);
+  } else {
+    remote_command_response_ = nullptr;
+  }
+  if (from._internal_has_device_attribute_update_permission_response()) {
+    device_attribute_update_permission_response_ = new ::enterprise_management::DeviceAttributeUpdatePermissionResponse(*from.device_attribute_update_permission_response_);
+  } else {
+    device_attribute_update_permission_response_ = nullptr;
+  }
+  if (from._internal_has_device_attribute_update_response()) {
+    device_attribute_update_response_ = new ::enterprise_management::DeviceAttributeUpdateResponse(*from.device_attribute_update_response_);
+  } else {
+    device_attribute_update_response_ = nullptr;
+  }
+  if (from._internal_has_gcm_id_update_response()) {
+    gcm_id_update_response_ = new ::enterprise_management::GcmIdUpdateResponse(*from.gcm_id_update_response_);
+  } else {
+    gcm_id_update_response_ = nullptr;
+  }
+  if (from._internal_has_check_android_management_response()) {
+    check_android_management_response_ = new ::enterprise_management::CheckAndroidManagementResponse(*from.check_android_management_response_);
+  } else {
+    check_android_management_response_ = nullptr;
+  }
+  if (from._internal_has_active_directory_enroll_play_user_response()) {
+    active_directory_enroll_play_user_response_ = new ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse(*from.active_directory_enroll_play_user_response_);
+  } else {
+    active_directory_enroll_play_user_response_ = nullptr;
+  }
+  if (from._internal_has_active_directory_play_activity_response()) {
+    active_directory_play_activity_response_ = new ::enterprise_management::ActiveDirectoryPlayActivityResponse(*from.active_directory_play_activity_response_);
+  } else {
+    active_directory_play_activity_response_ = nullptr;
+  }
+  if (from._internal_has_check_device_license_response_deprecated()) {
+    check_device_license_response_deprecated_ = new ::enterprise_management::CheckDeviceLicenseResponse(*from.check_device_license_response_deprecated_);
+  } else {
+    check_device_license_response_deprecated_ = nullptr;
+  }
+  if (from._internal_has_active_directory_user_signin_response()) {
+    active_directory_user_signin_response_ = new ::enterprise_management::ActiveDirectoryUserSigninResponse(*from.active_directory_user_signin_response_);
+  } else {
+    active_directory_user_signin_response_ = nullptr;
+  }
+  if (from._internal_has_chrome_desktop_report_response()) {
+    chrome_desktop_report_response_ = new ::enterprise_management::ChromeDesktopReportResponse(*from.chrome_desktop_report_response_);
+  } else {
+    chrome_desktop_report_response_ = nullptr;
+  }
+  if (from._internal_has_app_install_report_response()) {
+    app_install_report_response_ = new ::enterprise_management::AppInstallReportResponse(*from.app_install_report_response_);
+  } else {
+    app_install_report_response_ = nullptr;
+  }
+  if (from._internal_has_policy_validation_report_response()) {
+    policy_validation_report_response_ = new ::enterprise_management::PolicyValidationReportResponse(*from.policy_validation_report_response_);
+  } else {
+    policy_validation_report_response_ = nullptr;
+  }
+  if (from._internal_has_device_initial_enrollment_state_response()) {
+    device_initial_enrollment_state_response_ = new ::enterprise_management::DeviceInitialEnrollmentStateResponse(*from.device_initial_enrollment_state_response_);
+  } else {
+    device_initial_enrollment_state_response_ = nullptr;
+  }
+  if (from._internal_has_refresh_account_response()) {
+    refresh_account_response_ = new ::enterprise_management::RefreshAccountResponse(*from.refresh_account_response_);
+  } else {
+    refresh_account_response_ = nullptr;
+  }
+  if (from._internal_has_child_status_report_response()) {
+    child_status_report_response_ = new ::enterprise_management::ChildStatusReportResponse(*from.child_status_report_response_);
+  } else {
+    child_status_report_response_ = nullptr;
+  }
+  if (from._internal_has_rsu_lookup_key_upload_response()) {
+    rsu_lookup_key_upload_response_ = new ::enterprise_management::RsuLookupKeyUploadResponse(*from.rsu_lookup_key_upload_response_);
+  } else {
+    rsu_lookup_key_upload_response_ = nullptr;
+  }
+  if (from._internal_has_public_saml_user_response()) {
+    public_saml_user_response_ = new ::enterprise_management::PublicSamlUserResponse(*from.public_saml_user_response_);
+  } else {
+    public_saml_user_response_ = nullptr;
+  }
+  if (from._internal_has_chrome_os_user_report_response()) {
+    chrome_os_user_report_response_ = new ::enterprise_management::ChromeOsUserReportResponse(*from.chrome_os_user_report_response_);
+  } else {
+    chrome_os_user_report_response_ = nullptr;
+  }
+  if (from._internal_has_client_certificate_provisioning_response()) {
+    client_certificate_provisioning_response_ = new ::enterprise_management::ClientCertificateProvisioningResponse(*from.client_certificate_provisioning_response_);
+  } else {
+    client_certificate_provisioning_response_ = nullptr;
+  }
+  if (from._internal_has_check_user_account_response()) {
+    check_user_account_response_ = new ::enterprise_management::CheckUserAccountResponse(*from.check_user_account_response_);
+  } else {
+    check_user_account_response_ = nullptr;
+  }
+  if (from._internal_has_private_set_membership_response()) {
+    private_set_membership_response_ = new ::enterprise_management::PrivateSetMembershipResponse(*from.private_set_membership_response_);
+  } else {
+    private_set_membership_response_ = nullptr;
+  }
+  if (from._internal_has_browser_public_key_upload_response()) {
+    browser_public_key_upload_response_ = new ::enterprise_management::BrowserPublicKeyUploadResponse(*from.browser_public_key_upload_response_);
+  } else {
+    browser_public_key_upload_response_ = nullptr;
+  }
+  if (from._internal_has_upload_euicc_info_response()) {
+    upload_euicc_info_response_ = new ::enterprise_management::UploadEuiccInfoResponse(*from.upload_euicc_info_response_);
+  } else {
+    upload_euicc_info_response_ = nullptr;
+  }
+  if (from._internal_has_chrome_profile_report_response()) {
+    chrome_profile_report_response_ = new ::enterprise_management::ChromeProfileReportResponse(*from.chrome_profile_report_response_);
+  } else {
+    chrome_profile_report_response_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceManagementResponse)
+}
+
+void DeviceManagementResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DeviceManagementResponse_device_5fmanagement_5fbackend_2eproto.base);
+  error_message_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&register_response_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&chrome_profile_report_response_) -
+      reinterpret_cast<char*>(&register_response_)) + sizeof(chrome_profile_report_response_));
+}
+
+DeviceManagementResponse::~DeviceManagementResponse() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceManagementResponse)
+  SharedDtor();
+}
+
+void DeviceManagementResponse::SharedDtor() {
+  error_message_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete register_response_;
+  if (this != internal_default_instance()) delete unregister_response_;
+  if (this != internal_default_instance()) delete policy_response_;
+  if (this != internal_default_instance()) delete device_status_report_response_;
+  if (this != internal_default_instance()) delete session_status_report_response_;
+  if (this != internal_default_instance()) delete auto_enrollment_response_;
+  if (this != internal_default_instance()) delete cert_upload_response_;
+  if (this != internal_default_instance()) delete service_api_access_response_;
+  if (this != internal_default_instance()) delete device_state_retrieval_response_;
+  if (this != internal_default_instance()) delete device_pairing_response_;
+  if (this != internal_default_instance()) delete check_device_pairing_response_;
+  if (this != internal_default_instance()) delete remote_command_response_;
+  if (this != internal_default_instance()) delete device_attribute_update_permission_response_;
+  if (this != internal_default_instance()) delete device_attribute_update_response_;
+  if (this != internal_default_instance()) delete gcm_id_update_response_;
+  if (this != internal_default_instance()) delete check_android_management_response_;
+  if (this != internal_default_instance()) delete active_directory_enroll_play_user_response_;
+  if (this != internal_default_instance()) delete active_directory_play_activity_response_;
+  if (this != internal_default_instance()) delete check_device_license_response_deprecated_;
+  if (this != internal_default_instance()) delete active_directory_user_signin_response_;
+  if (this != internal_default_instance()) delete chrome_desktop_report_response_;
+  if (this != internal_default_instance()) delete app_install_report_response_;
+  if (this != internal_default_instance()) delete policy_validation_report_response_;
+  if (this != internal_default_instance()) delete device_initial_enrollment_state_response_;
+  if (this != internal_default_instance()) delete refresh_account_response_;
+  if (this != internal_default_instance()) delete child_status_report_response_;
+  if (this != internal_default_instance()) delete rsu_lookup_key_upload_response_;
+  if (this != internal_default_instance()) delete public_saml_user_response_;
+  if (this != internal_default_instance()) delete chrome_os_user_report_response_;
+  if (this != internal_default_instance()) delete client_certificate_provisioning_response_;
+  if (this != internal_default_instance()) delete check_user_account_response_;
+  if (this != internal_default_instance()) delete private_set_membership_response_;
+  if (this != internal_default_instance()) delete browser_public_key_upload_response_;
+  if (this != internal_default_instance()) delete upload_euicc_info_response_;
+  if (this != internal_default_instance()) delete chrome_profile_report_response_;
+}
+
+void DeviceManagementResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceManagementResponse& DeviceManagementResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceManagementResponse_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceManagementResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceManagementResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  error_detail_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      error_message_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(register_response_ != nullptr);
+      register_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(unregister_response_ != nullptr);
+      unregister_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(policy_response_ != nullptr);
+      policy_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(device_status_report_response_ != nullptr);
+      device_status_report_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(session_status_report_response_ != nullptr);
+      session_status_report_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(auto_enrollment_response_ != nullptr);
+      auto_enrollment_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(cert_upload_response_ != nullptr);
+      cert_upload_response_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(service_api_access_response_ != nullptr);
+      service_api_access_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(device_state_retrieval_response_ != nullptr);
+      device_state_retrieval_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000400u) {
+      GOOGLE_DCHECK(device_pairing_response_ != nullptr);
+      device_pairing_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000800u) {
+      GOOGLE_DCHECK(check_device_pairing_response_ != nullptr);
+      check_device_pairing_response_->Clear();
+    }
+    if (cached_has_bits & 0x00001000u) {
+      GOOGLE_DCHECK(remote_command_response_ != nullptr);
+      remote_command_response_->Clear();
+    }
+    if (cached_has_bits & 0x00002000u) {
+      GOOGLE_DCHECK(device_attribute_update_permission_response_ != nullptr);
+      device_attribute_update_permission_response_->Clear();
+    }
+    if (cached_has_bits & 0x00004000u) {
+      GOOGLE_DCHECK(device_attribute_update_response_ != nullptr);
+      device_attribute_update_response_->Clear();
+    }
+    if (cached_has_bits & 0x00008000u) {
+      GOOGLE_DCHECK(gcm_id_update_response_ != nullptr);
+      gcm_id_update_response_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      GOOGLE_DCHECK(check_android_management_response_ != nullptr);
+      check_android_management_response_->Clear();
+    }
+    if (cached_has_bits & 0x00020000u) {
+      GOOGLE_DCHECK(active_directory_enroll_play_user_response_ != nullptr);
+      active_directory_enroll_play_user_response_->Clear();
+    }
+    if (cached_has_bits & 0x00040000u) {
+      GOOGLE_DCHECK(active_directory_play_activity_response_ != nullptr);
+      active_directory_play_activity_response_->Clear();
+    }
+    if (cached_has_bits & 0x00080000u) {
+      GOOGLE_DCHECK(check_device_license_response_deprecated_ != nullptr);
+      check_device_license_response_deprecated_->Clear();
+    }
+    if (cached_has_bits & 0x00100000u) {
+      GOOGLE_DCHECK(active_directory_user_signin_response_ != nullptr);
+      active_directory_user_signin_response_->Clear();
+    }
+    if (cached_has_bits & 0x00200000u) {
+      GOOGLE_DCHECK(chrome_desktop_report_response_ != nullptr);
+      chrome_desktop_report_response_->Clear();
+    }
+    if (cached_has_bits & 0x00400000u) {
+      GOOGLE_DCHECK(app_install_report_response_ != nullptr);
+      app_install_report_response_->Clear();
+    }
+    if (cached_has_bits & 0x00800000u) {
+      GOOGLE_DCHECK(policy_validation_report_response_ != nullptr);
+      policy_validation_report_response_->Clear();
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      GOOGLE_DCHECK(device_initial_enrollment_state_response_ != nullptr);
+      device_initial_enrollment_state_response_->Clear();
+    }
+    if (cached_has_bits & 0x02000000u) {
+      GOOGLE_DCHECK(refresh_account_response_ != nullptr);
+      refresh_account_response_->Clear();
+    }
+    if (cached_has_bits & 0x04000000u) {
+      GOOGLE_DCHECK(child_status_report_response_ != nullptr);
+      child_status_report_response_->Clear();
+    }
+    if (cached_has_bits & 0x08000000u) {
+      GOOGLE_DCHECK(rsu_lookup_key_upload_response_ != nullptr);
+      rsu_lookup_key_upload_response_->Clear();
+    }
+    if (cached_has_bits & 0x10000000u) {
+      GOOGLE_DCHECK(public_saml_user_response_ != nullptr);
+      public_saml_user_response_->Clear();
+    }
+    if (cached_has_bits & 0x20000000u) {
+      GOOGLE_DCHECK(chrome_os_user_report_response_ != nullptr);
+      chrome_os_user_report_response_->Clear();
+    }
+    if (cached_has_bits & 0x40000000u) {
+      GOOGLE_DCHECK(client_certificate_provisioning_response_ != nullptr);
+      client_certificate_provisioning_response_->Clear();
+    }
+    if (cached_has_bits & 0x80000000u) {
+      GOOGLE_DCHECK(check_user_account_response_ != nullptr);
+      check_user_account_response_->Clear();
+    }
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(private_set_membership_response_ != nullptr);
+      private_set_membership_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(browser_public_key_upload_response_ != nullptr);
+      browser_public_key_upload_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(upload_euicc_info_response_ != nullptr);
+      upload_euicc_info_response_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(chrome_profile_report_response_ != nullptr);
+      chrome_profile_report_response_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceManagementResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string error_message = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_error_message();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRegisterResponse register_response = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_register_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceUnregisterResponse unregister_response = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_unregister_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePolicyResponse policy_response = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_policy_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceStatusReportResponse device_status_report_response = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_status_report_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.SessionStatusReportResponse session_status_report_response = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr = ctx->ParseMessage(_internal_mutable_session_status_report_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAutoEnrollmentResponse auto_enrollment_response = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_auto_enrollment_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceCertUploadResponse cert_upload_response = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr = ctx->ParseMessage(_internal_mutable_cert_upload_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceServiceApiAccessResponse service_api_access_response = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
+          ptr = ctx->ParseMessage(_internal_mutable_service_api_access_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceStateRetrievalResponse device_state_retrieval_response = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_state_retrieval_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DevicePairingResponse device_pairing_response = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_pairing_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckDevicePairingResponse check_device_pairing_response = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_check_device_pairing_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceRemoteCommandResponse remote_command_response = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          ptr = ctx->ParseMessage(_internal_mutable_remote_command_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAttributeUpdatePermissionResponse device_attribute_update_permission_response = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_attribute_update_permission_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceAttributeUpdateResponse device_attribute_update_response = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_attribute_update_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.GcmIdUpdateResponse gcm_id_update_response = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_gcm_id_update_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckAndroidManagementResponse check_android_management_response = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146)) {
+          ptr = ctx->ParseMessage(_internal_mutable_check_android_management_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ActiveDirectoryEnrollPlayUserResponse active_directory_enroll_play_user_response = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 154)) {
+          ptr = ctx->ParseMessage(_internal_mutable_active_directory_enroll_play_user_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ActiveDirectoryPlayActivityResponse active_directory_play_activity_response = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 162)) {
+          ptr = ctx->ParseMessage(_internal_mutable_active_directory_play_activity_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckDeviceLicenseResponse check_device_license_response_deprecated = 21 [deprecated = true];
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_check_device_license_response_deprecated(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ActiveDirectoryUserSigninResponse active_directory_user_signin_response = 22;
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 178)) {
+          ptr = ctx->ParseMessage(_internal_mutable_active_directory_user_signin_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChromeDesktopReportResponse chrome_desktop_report_response = 23;
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 186)) {
+          ptr = ctx->ParseMessage(_internal_mutable_chrome_desktop_report_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.AppInstallReportResponse app_install_report_response = 25;
+      case 25:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 202)) {
+          ptr = ctx->ParseMessage(_internal_mutable_app_install_report_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PolicyValidationReportResponse policy_validation_report_response = 26;
+      case 26:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 210)) {
+          ptr = ctx->ParseMessage(_internal_mutable_policy_validation_report_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.DeviceInitialEnrollmentStateResponse device_initial_enrollment_state_response = 27;
+      case 27:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 218)) {
+          ptr = ctx->ParseMessage(_internal_mutable_device_initial_enrollment_state_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.RefreshAccountResponse refresh_account_response = 28;
+      case 28:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 226)) {
+          ptr = ctx->ParseMessage(_internal_mutable_refresh_account_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChildStatusReportResponse child_status_report_response = 29;
+      case 29:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 234)) {
+          ptr = ctx->ParseMessage(_internal_mutable_child_status_report_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.RsuLookupKeyUploadResponse rsu_lookup_key_upload_response = 30;
+      case 30:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 242)) {
+          ptr = ctx->ParseMessage(_internal_mutable_rsu_lookup_key_upload_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PublicSamlUserResponse public_saml_user_response = 31;
+      case 31:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 250)) {
+          ptr = ctx->ParseMessage(_internal_mutable_public_saml_user_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChromeOsUserReportResponse chrome_os_user_report_response = 32;
+      case 32:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 2)) {
+          ptr = ctx->ParseMessage(_internal_mutable_chrome_os_user_report_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ClientCertificateProvisioningResponse client_certificate_provisioning_response = 33;
+      case 33:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_client_certificate_provisioning_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.CheckUserAccountResponse check_user_account_response = 34;
+      case 34:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_check_user_account_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.PrivateSetMembershipResponse private_set_membership_response = 35;
+      case 35:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_private_set_membership_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.BrowserPublicKeyUploadResponse browser_public_key_upload_response = 36;
+      case 36:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_browser_public_key_upload_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.UploadEuiccInfoResponse upload_euicc_info_response = 37;
+      case 37:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_upload_euicc_info_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.ChromeProfileReportResponse chrome_profile_report_response = 38;
+      case 38:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_chrome_profile_report_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .enterprise_management.DeviceManagementErrorDetail error_detail = 39;
+      case 39:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+            CHK_(ptr);
+            if (PROTOBUF_PREDICT_TRUE(::enterprise_management::DeviceManagementErrorDetail_IsValid(val))) {
+              _internal_add_error_detail(static_cast<::enterprise_management::DeviceManagementErrorDetail>(val));
+            } else {
+              ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(39, val, mutable_unknown_fields());
+            }
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<312>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedEnumParser(_internal_mutable_error_detail(), ptr, ctx, ::enterprise_management::DeviceManagementErrorDetail_IsValid, &_internal_metadata_, 39);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceManagementResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceManagementResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string error_message = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_error_message(), target);
+  }
+
+  // optional .enterprise_management.DeviceRegisterResponse register_response = 3;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::register_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceUnregisterResponse unregister_response = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::unregister_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePolicyResponse policy_response = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        5, _Internal::policy_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceStatusReportResponse device_status_report_response = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        6, _Internal::device_status_report_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.SessionStatusReportResponse session_status_report_response = 7;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        7, _Internal::session_status_report_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAutoEnrollmentResponse auto_enrollment_response = 8;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        8, _Internal::auto_enrollment_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceCertUploadResponse cert_upload_response = 9;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        9, _Internal::cert_upload_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceServiceApiAccessResponse service_api_access_response = 10;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        10, _Internal::service_api_access_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceStateRetrievalResponse device_state_retrieval_response = 11;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        11, _Internal::device_state_retrieval_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DevicePairingResponse device_pairing_response = 12;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        12, _Internal::device_pairing_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.CheckDevicePairingResponse check_device_pairing_response = 13;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        13, _Internal::check_device_pairing_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceRemoteCommandResponse remote_command_response = 14;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        14, _Internal::remote_command_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAttributeUpdatePermissionResponse device_attribute_update_permission_response = 15;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        15, _Internal::device_attribute_update_permission_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceAttributeUpdateResponse device_attribute_update_response = 16;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        16, _Internal::device_attribute_update_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.GcmIdUpdateResponse gcm_id_update_response = 17;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        17, _Internal::gcm_id_update_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.CheckAndroidManagementResponse check_android_management_response = 18;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        18, _Internal::check_android_management_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.ActiveDirectoryEnrollPlayUserResponse active_directory_enroll_play_user_response = 19;
+  if (cached_has_bits & 0x00020000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        19, _Internal::active_directory_enroll_play_user_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.ActiveDirectoryPlayActivityResponse active_directory_play_activity_response = 20;
+  if (cached_has_bits & 0x00040000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        20, _Internal::active_directory_play_activity_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.CheckDeviceLicenseResponse check_device_license_response_deprecated = 21 [deprecated = true];
+  if (cached_has_bits & 0x00080000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        21, _Internal::check_device_license_response_deprecated(this), target, stream);
+  }
+
+  // optional .enterprise_management.ActiveDirectoryUserSigninResponse active_directory_user_signin_response = 22;
+  if (cached_has_bits & 0x00100000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        22, _Internal::active_directory_user_signin_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.ChromeDesktopReportResponse chrome_desktop_report_response = 23;
+  if (cached_has_bits & 0x00200000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        23, _Internal::chrome_desktop_report_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.AppInstallReportResponse app_install_report_response = 25;
+  if (cached_has_bits & 0x00400000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        25, _Internal::app_install_report_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.PolicyValidationReportResponse policy_validation_report_response = 26;
+  if (cached_has_bits & 0x00800000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        26, _Internal::policy_validation_report_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateResponse device_initial_enrollment_state_response = 27;
+  if (cached_has_bits & 0x01000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        27, _Internal::device_initial_enrollment_state_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.RefreshAccountResponse refresh_account_response = 28;
+  if (cached_has_bits & 0x02000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        28, _Internal::refresh_account_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.ChildStatusReportResponse child_status_report_response = 29;
+  if (cached_has_bits & 0x04000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        29, _Internal::child_status_report_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.RsuLookupKeyUploadResponse rsu_lookup_key_upload_response = 30;
+  if (cached_has_bits & 0x08000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        30, _Internal::rsu_lookup_key_upload_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.PublicSamlUserResponse public_saml_user_response = 31;
+  if (cached_has_bits & 0x10000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        31, _Internal::public_saml_user_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.ChromeOsUserReportResponse chrome_os_user_report_response = 32;
+  if (cached_has_bits & 0x20000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        32, _Internal::chrome_os_user_report_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.ClientCertificateProvisioningResponse client_certificate_provisioning_response = 33;
+  if (cached_has_bits & 0x40000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        33, _Internal::client_certificate_provisioning_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.CheckUserAccountResponse check_user_account_response = 34;
+  if (cached_has_bits & 0x80000000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        34, _Internal::check_user_account_response(this), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[1];
+  // optional .enterprise_management.PrivateSetMembershipResponse private_set_membership_response = 35;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        35, _Internal::private_set_membership_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.BrowserPublicKeyUploadResponse browser_public_key_upload_response = 36;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        36, _Internal::browser_public_key_upload_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.UploadEuiccInfoResponse upload_euicc_info_response = 37;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        37, _Internal::upload_euicc_info_response(this), target, stream);
+  }
+
+  // optional .enterprise_management.ChromeProfileReportResponse chrome_profile_report_response = 38;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        38, _Internal::chrome_profile_report_response(this), target, stream);
+  }
+
+  // repeated .enterprise_management.DeviceManagementErrorDetail error_detail = 39;
+  for (int i = 0, n = this->_internal_error_detail_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+        39, this->_internal_error_detail(i), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceManagementResponse)
+  return target;
+}
+
+size_t DeviceManagementResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceManagementResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .enterprise_management.DeviceManagementErrorDetail error_detail = 39;
+  {
+    size_t data_size = 0;
+    unsigned int count = static_cast<unsigned int>(this->_internal_error_detail_size());for (unsigned int i = 0; i < count; i++) {
+      data_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(
+        this->_internal_error_detail(static_cast<int>(i)));
+    }
+    total_size += (2UL * count) + data_size;
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string error_message = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_error_message());
+    }
+
+    // optional .enterprise_management.DeviceRegisterResponse register_response = 3;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *register_response_);
+    }
+
+    // optional .enterprise_management.DeviceUnregisterResponse unregister_response = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *unregister_response_);
+    }
+
+    // optional .enterprise_management.DevicePolicyResponse policy_response = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *policy_response_);
+    }
+
+    // optional .enterprise_management.DeviceStatusReportResponse device_status_report_response = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_status_report_response_);
+    }
+
+    // optional .enterprise_management.SessionStatusReportResponse session_status_report_response = 7;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *session_status_report_response_);
+    }
+
+    // optional .enterprise_management.DeviceAutoEnrollmentResponse auto_enrollment_response = 8;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *auto_enrollment_response_);
+    }
+
+    // optional .enterprise_management.DeviceCertUploadResponse cert_upload_response = 9;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *cert_upload_response_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .enterprise_management.DeviceServiceApiAccessResponse service_api_access_response = 10;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *service_api_access_response_);
+    }
+
+    // optional .enterprise_management.DeviceStateRetrievalResponse device_state_retrieval_response = 11;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_state_retrieval_response_);
+    }
+
+    // optional .enterprise_management.DevicePairingResponse device_pairing_response = 12;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_pairing_response_);
+    }
+
+    // optional .enterprise_management.CheckDevicePairingResponse check_device_pairing_response = 13;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *check_device_pairing_response_);
+    }
+
+    // optional .enterprise_management.DeviceRemoteCommandResponse remote_command_response = 14;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *remote_command_response_);
+    }
+
+    // optional .enterprise_management.DeviceAttributeUpdatePermissionResponse device_attribute_update_permission_response = 15;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_attribute_update_permission_response_);
+    }
+
+    // optional .enterprise_management.DeviceAttributeUpdateResponse device_attribute_update_response = 16;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_attribute_update_response_);
+    }
+
+    // optional .enterprise_management.GcmIdUpdateResponse gcm_id_update_response = 17;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *gcm_id_update_response_);
+    }
+
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    // optional .enterprise_management.CheckAndroidManagementResponse check_android_management_response = 18;
+    if (cached_has_bits & 0x00010000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *check_android_management_response_);
+    }
+
+    // optional .enterprise_management.ActiveDirectoryEnrollPlayUserResponse active_directory_enroll_play_user_response = 19;
+    if (cached_has_bits & 0x00020000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *active_directory_enroll_play_user_response_);
+    }
+
+    // optional .enterprise_management.ActiveDirectoryPlayActivityResponse active_directory_play_activity_response = 20;
+    if (cached_has_bits & 0x00040000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *active_directory_play_activity_response_);
+    }
+
+    // optional .enterprise_management.CheckDeviceLicenseResponse check_device_license_response_deprecated = 21 [deprecated = true];
+    if (cached_has_bits & 0x00080000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *check_device_license_response_deprecated_);
+    }
+
+    // optional .enterprise_management.ActiveDirectoryUserSigninResponse active_directory_user_signin_response = 22;
+    if (cached_has_bits & 0x00100000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *active_directory_user_signin_response_);
+    }
+
+    // optional .enterprise_management.ChromeDesktopReportResponse chrome_desktop_report_response = 23;
+    if (cached_has_bits & 0x00200000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *chrome_desktop_report_response_);
+    }
+
+    // optional .enterprise_management.AppInstallReportResponse app_install_report_response = 25;
+    if (cached_has_bits & 0x00400000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *app_install_report_response_);
+    }
+
+    // optional .enterprise_management.PolicyValidationReportResponse policy_validation_report_response = 26;
+    if (cached_has_bits & 0x00800000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *policy_validation_report_response_);
+    }
+
+  }
+  if (cached_has_bits & 0xff000000u) {
+    // optional .enterprise_management.DeviceInitialEnrollmentStateResponse device_initial_enrollment_state_response = 27;
+    if (cached_has_bits & 0x01000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *device_initial_enrollment_state_response_);
+    }
+
+    // optional .enterprise_management.RefreshAccountResponse refresh_account_response = 28;
+    if (cached_has_bits & 0x02000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *refresh_account_response_);
+    }
+
+    // optional .enterprise_management.ChildStatusReportResponse child_status_report_response = 29;
+    if (cached_has_bits & 0x04000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *child_status_report_response_);
+    }
+
+    // optional .enterprise_management.RsuLookupKeyUploadResponse rsu_lookup_key_upload_response = 30;
+    if (cached_has_bits & 0x08000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *rsu_lookup_key_upload_response_);
+    }
+
+    // optional .enterprise_management.PublicSamlUserResponse public_saml_user_response = 31;
+    if (cached_has_bits & 0x10000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *public_saml_user_response_);
+    }
+
+    // optional .enterprise_management.ChromeOsUserReportResponse chrome_os_user_report_response = 32;
+    if (cached_has_bits & 0x20000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *chrome_os_user_report_response_);
+    }
+
+    // optional .enterprise_management.ClientCertificateProvisioningResponse client_certificate_provisioning_response = 33;
+    if (cached_has_bits & 0x40000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *client_certificate_provisioning_response_);
+    }
+
+    // optional .enterprise_management.CheckUserAccountResponse check_user_account_response = 34;
+    if (cached_has_bits & 0x80000000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *check_user_account_response_);
+    }
+
+  }
+  cached_has_bits = _has_bits_[1];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional .enterprise_management.PrivateSetMembershipResponse private_set_membership_response = 35;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *private_set_membership_response_);
+    }
+
+    // optional .enterprise_management.BrowserPublicKeyUploadResponse browser_public_key_upload_response = 36;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *browser_public_key_upload_response_);
+    }
+
+    // optional .enterprise_management.UploadEuiccInfoResponse upload_euicc_info_response = 37;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *upload_euicc_info_response_);
+    }
+
+    // optional .enterprise_management.ChromeProfileReportResponse chrome_profile_report_response = 38;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *chrome_profile_report_response_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceManagementResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceManagementResponse*>(
+      &from));
+}
+
+void DeviceManagementResponse::MergeFrom(const DeviceManagementResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceManagementResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  error_detail_.MergeFrom(from.error_detail_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      error_message_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.error_message_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_register_response()->::enterprise_management::DeviceRegisterResponse::MergeFrom(from._internal_register_response());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_unregister_response()->::enterprise_management::DeviceUnregisterResponse::MergeFrom(from._internal_unregister_response());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_policy_response()->::enterprise_management::DevicePolicyResponse::MergeFrom(from._internal_policy_response());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_device_status_report_response()->::enterprise_management::DeviceStatusReportResponse::MergeFrom(from._internal_device_status_report_response());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_session_status_report_response()->::enterprise_management::SessionStatusReportResponse::MergeFrom(from._internal_session_status_report_response());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_auto_enrollment_response()->::enterprise_management::DeviceAutoEnrollmentResponse::MergeFrom(from._internal_auto_enrollment_response());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_cert_upload_response()->::enterprise_management::DeviceCertUploadResponse::MergeFrom(from._internal_cert_upload_response());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_service_api_access_response()->::enterprise_management::DeviceServiceApiAccessResponse::MergeFrom(from._internal_service_api_access_response());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_device_state_retrieval_response()->::enterprise_management::DeviceStateRetrievalResponse::MergeFrom(from._internal_device_state_retrieval_response());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      _internal_mutable_device_pairing_response()->::enterprise_management::DevicePairingResponse::MergeFrom(from._internal_device_pairing_response());
+    }
+    if (cached_has_bits & 0x00000800u) {
+      _internal_mutable_check_device_pairing_response()->::enterprise_management::CheckDevicePairingResponse::MergeFrom(from._internal_check_device_pairing_response());
+    }
+    if (cached_has_bits & 0x00001000u) {
+      _internal_mutable_remote_command_response()->::enterprise_management::DeviceRemoteCommandResponse::MergeFrom(from._internal_remote_command_response());
+    }
+    if (cached_has_bits & 0x00002000u) {
+      _internal_mutable_device_attribute_update_permission_response()->::enterprise_management::DeviceAttributeUpdatePermissionResponse::MergeFrom(from._internal_device_attribute_update_permission_response());
+    }
+    if (cached_has_bits & 0x00004000u) {
+      _internal_mutable_device_attribute_update_response()->::enterprise_management::DeviceAttributeUpdateResponse::MergeFrom(from._internal_device_attribute_update_response());
+    }
+    if (cached_has_bits & 0x00008000u) {
+      _internal_mutable_gcm_id_update_response()->::enterprise_management::GcmIdUpdateResponse::MergeFrom(from._internal_gcm_id_update_response());
+    }
+  }
+  if (cached_has_bits & 0x00ff0000u) {
+    if (cached_has_bits & 0x00010000u) {
+      _internal_mutable_check_android_management_response()->::enterprise_management::CheckAndroidManagementResponse::MergeFrom(from._internal_check_android_management_response());
+    }
+    if (cached_has_bits & 0x00020000u) {
+      _internal_mutable_active_directory_enroll_play_user_response()->::enterprise_management::ActiveDirectoryEnrollPlayUserResponse::MergeFrom(from._internal_active_directory_enroll_play_user_response());
+    }
+    if (cached_has_bits & 0x00040000u) {
+      _internal_mutable_active_directory_play_activity_response()->::enterprise_management::ActiveDirectoryPlayActivityResponse::MergeFrom(from._internal_active_directory_play_activity_response());
+    }
+    if (cached_has_bits & 0x00080000u) {
+      _internal_mutable_check_device_license_response_deprecated()->::enterprise_management::CheckDeviceLicenseResponse::MergeFrom(from._internal_check_device_license_response_deprecated());
+    }
+    if (cached_has_bits & 0x00100000u) {
+      _internal_mutable_active_directory_user_signin_response()->::enterprise_management::ActiveDirectoryUserSigninResponse::MergeFrom(from._internal_active_directory_user_signin_response());
+    }
+    if (cached_has_bits & 0x00200000u) {
+      _internal_mutable_chrome_desktop_report_response()->::enterprise_management::ChromeDesktopReportResponse::MergeFrom(from._internal_chrome_desktop_report_response());
+    }
+    if (cached_has_bits & 0x00400000u) {
+      _internal_mutable_app_install_report_response()->::enterprise_management::AppInstallReportResponse::MergeFrom(from._internal_app_install_report_response());
+    }
+    if (cached_has_bits & 0x00800000u) {
+      _internal_mutable_policy_validation_report_response()->::enterprise_management::PolicyValidationReportResponse::MergeFrom(from._internal_policy_validation_report_response());
+    }
+  }
+  if (cached_has_bits & 0xff000000u) {
+    if (cached_has_bits & 0x01000000u) {
+      _internal_mutable_device_initial_enrollment_state_response()->::enterprise_management::DeviceInitialEnrollmentStateResponse::MergeFrom(from._internal_device_initial_enrollment_state_response());
+    }
+    if (cached_has_bits & 0x02000000u) {
+      _internal_mutable_refresh_account_response()->::enterprise_management::RefreshAccountResponse::MergeFrom(from._internal_refresh_account_response());
+    }
+    if (cached_has_bits & 0x04000000u) {
+      _internal_mutable_child_status_report_response()->::enterprise_management::ChildStatusReportResponse::MergeFrom(from._internal_child_status_report_response());
+    }
+    if (cached_has_bits & 0x08000000u) {
+      _internal_mutable_rsu_lookup_key_upload_response()->::enterprise_management::RsuLookupKeyUploadResponse::MergeFrom(from._internal_rsu_lookup_key_upload_response());
+    }
+    if (cached_has_bits & 0x10000000u) {
+      _internal_mutable_public_saml_user_response()->::enterprise_management::PublicSamlUserResponse::MergeFrom(from._internal_public_saml_user_response());
+    }
+    if (cached_has_bits & 0x20000000u) {
+      _internal_mutable_chrome_os_user_report_response()->::enterprise_management::ChromeOsUserReportResponse::MergeFrom(from._internal_chrome_os_user_report_response());
+    }
+    if (cached_has_bits & 0x40000000u) {
+      _internal_mutable_client_certificate_provisioning_response()->::enterprise_management::ClientCertificateProvisioningResponse::MergeFrom(from._internal_client_certificate_provisioning_response());
+    }
+    if (cached_has_bits & 0x80000000u) {
+      _internal_mutable_check_user_account_response()->::enterprise_management::CheckUserAccountResponse::MergeFrom(from._internal_check_user_account_response());
+    }
+  }
+  cached_has_bits = from._has_bits_[1];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_private_set_membership_response()->::enterprise_management::PrivateSetMembershipResponse::MergeFrom(from._internal_private_set_membership_response());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_browser_public_key_upload_response()->::enterprise_management::BrowserPublicKeyUploadResponse::MergeFrom(from._internal_browser_public_key_upload_response());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_upload_euicc_info_response()->::enterprise_management::UploadEuiccInfoResponse::MergeFrom(from._internal_upload_euicc_info_response());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_chrome_profile_report_response()->::enterprise_management::ChromeProfileReportResponse::MergeFrom(from._internal_chrome_profile_report_response());
+    }
+  }
+}
+
+void DeviceManagementResponse::CopyFrom(const DeviceManagementResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceManagementResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceManagementResponse::IsInitialized() const {
+  if (_internal_has_register_response()) {
+    if (!register_response_->IsInitialized()) return false;
+  }
+  return true;
+}
+
+void DeviceManagementResponse::InternalSwap(DeviceManagementResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(_has_bits_[1], other->_has_bits_[1]);
+  error_detail_.InternalSwap(&other->error_detail_);
+  error_message_.Swap(&other->error_message_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(register_response_, other->register_response_);
+  swap(unregister_response_, other->unregister_response_);
+  swap(policy_response_, other->policy_response_);
+  swap(device_status_report_response_, other->device_status_report_response_);
+  swap(session_status_report_response_, other->session_status_report_response_);
+  swap(auto_enrollment_response_, other->auto_enrollment_response_);
+  swap(cert_upload_response_, other->cert_upload_response_);
+  swap(service_api_access_response_, other->service_api_access_response_);
+  swap(device_state_retrieval_response_, other->device_state_retrieval_response_);
+  swap(device_pairing_response_, other->device_pairing_response_);
+  swap(check_device_pairing_response_, other->check_device_pairing_response_);
+  swap(remote_command_response_, other->remote_command_response_);
+  swap(device_attribute_update_permission_response_, other->device_attribute_update_permission_response_);
+  swap(device_attribute_update_response_, other->device_attribute_update_response_);
+  swap(gcm_id_update_response_, other->gcm_id_update_response_);
+  swap(check_android_management_response_, other->check_android_management_response_);
+  swap(active_directory_enroll_play_user_response_, other->active_directory_enroll_play_user_response_);
+  swap(active_directory_play_activity_response_, other->active_directory_play_activity_response_);
+  swap(check_device_license_response_deprecated_, other->check_device_license_response_deprecated_);
+  swap(active_directory_user_signin_response_, other->active_directory_user_signin_response_);
+  swap(chrome_desktop_report_response_, other->chrome_desktop_report_response_);
+  swap(app_install_report_response_, other->app_install_report_response_);
+  swap(policy_validation_report_response_, other->policy_validation_report_response_);
+  swap(device_initial_enrollment_state_response_, other->device_initial_enrollment_state_response_);
+  swap(refresh_account_response_, other->refresh_account_response_);
+  swap(child_status_report_response_, other->child_status_report_response_);
+  swap(rsu_lookup_key_upload_response_, other->rsu_lookup_key_upload_response_);
+  swap(public_saml_user_response_, other->public_saml_user_response_);
+  swap(chrome_os_user_report_response_, other->chrome_os_user_report_response_);
+  swap(client_certificate_provisioning_response_, other->client_certificate_provisioning_response_);
+  swap(check_user_account_response_, other->check_user_account_response_);
+  swap(private_set_membership_response_, other->private_set_membership_response_);
+  swap(browser_public_key_upload_response_, other->browser_public_key_upload_response_);
+  swap(upload_euicc_info_response_, other->upload_euicc_info_response_);
+  swap(chrome_profile_report_response_, other->chrome_profile_report_response_);
+}
+
+std::string DeviceManagementResponse::GetTypeName() const {
+  return "enterprise_management.DeviceManagementResponse";
+}
+
+
+// ===================================================================
+
+void DeviceStateRetrievalInfo::InitAsDefaultInstance() {
+}
+class DeviceStateRetrievalInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<DeviceStateRetrievalInfo>()._has_bits_);
+  static void set_has_has_initial_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+DeviceStateRetrievalInfo::DeviceStateRetrievalInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.DeviceStateRetrievalInfo)
+}
+DeviceStateRetrievalInfo::DeviceStateRetrievalInfo(const DeviceStateRetrievalInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  has_initial_state_ = from.has_initial_state_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.DeviceStateRetrievalInfo)
+}
+
+void DeviceStateRetrievalInfo::SharedCtor() {
+  has_initial_state_ = false;
+}
+
+DeviceStateRetrievalInfo::~DeviceStateRetrievalInfo() {
+  // @@protoc_insertion_point(destructor:enterprise_management.DeviceStateRetrievalInfo)
+  SharedDtor();
+}
+
+void DeviceStateRetrievalInfo::SharedDtor() {
+}
+
+void DeviceStateRetrievalInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DeviceStateRetrievalInfo& DeviceStateRetrievalInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DeviceStateRetrievalInfo_device_5fmanagement_5fbackend_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DeviceStateRetrievalInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.DeviceStateRetrievalInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  has_initial_state_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* DeviceStateRetrievalInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool has_initial_state = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_has_initial_state(&has_bits);
+          has_initial_state_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DeviceStateRetrievalInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.DeviceStateRetrievalInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool has_initial_state = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_has_initial_state(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.DeviceStateRetrievalInfo)
+  return target;
+}
+
+size_t DeviceStateRetrievalInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.DeviceStateRetrievalInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool has_initial_state = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DeviceStateRetrievalInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DeviceStateRetrievalInfo*>(
+      &from));
+}
+
+void DeviceStateRetrievalInfo::MergeFrom(const DeviceStateRetrievalInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.DeviceStateRetrievalInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_has_initial_state()) {
+    _internal_set_has_initial_state(from._internal_has_initial_state());
+  }
+}
+
+void DeviceStateRetrievalInfo::CopyFrom(const DeviceStateRetrievalInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.DeviceStateRetrievalInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DeviceStateRetrievalInfo::IsInitialized() const {
+  return true;
+}
+
+void DeviceStateRetrievalInfo::InternalSwap(DeviceStateRetrievalInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(has_initial_state_, other->has_initial_state_);
+}
+
+std::string DeviceStateRetrievalInfo::GetTypeName() const {
+  return "enterprise_management.DeviceStateRetrievalInfo";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace enterprise_management
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::enterprise_management::LicenseType* Arena::CreateMaybeMessage< ::enterprise_management::LicenseType >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LicenseType >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SignedData* Arena::CreateMaybeMessage< ::enterprise_management::SignedData >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SignedData >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CheckUserAccountRequest* Arena::CreateMaybeMessage< ::enterprise_management::CheckUserAccountRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CheckUserAccountRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceRegisterRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceRegisterRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceRegisterRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceRegisterIdentification* Arena::CreateMaybeMessage< ::enterprise_management::DeviceRegisterIdentification >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceRegisterIdentification >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CheckUserAccountResponse* Arena::CreateMaybeMessage< ::enterprise_management::CheckUserAccountResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CheckUserAccountResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceRegisterResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceRegisterResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceRegisterResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceUnregisterRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceUnregisterRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceUnregisterRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceUnregisterResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceUnregisterResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceUnregisterResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceCertUploadRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceCertUploadRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceCertUploadRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceCertUploadResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceCertUploadResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceCertUploadResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceServiceApiAccessRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceServiceApiAccessRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceServiceApiAccessRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceServiceApiAccessResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceServiceApiAccessResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceServiceApiAccessResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BrowserDeviceIdentifier* Arena::CreateMaybeMessage< ::enterprise_management::BrowserDeviceIdentifier >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BrowserDeviceIdentifier >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PolicyFetchRequest* Arena::CreateMaybeMessage< ::enterprise_management::PolicyFetchRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PolicyFetchRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DisabledState* Arena::CreateMaybeMessage< ::enterprise_management::DisabledState >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DisabledState >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceState* Arena::CreateMaybeMessage< ::enterprise_management::DeviceState >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceState >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CustomerLogo* Arena::CreateMaybeMessage< ::enterprise_management::CustomerLogo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CustomerLogo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PolicyData* Arena::CreateMaybeMessage< ::enterprise_management::PolicyData >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PolicyData >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ClientActionRequired* Arena::CreateMaybeMessage< ::enterprise_management::ClientActionRequired >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ClientActionRequired >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PolicyFetchResponse* Arena::CreateMaybeMessage< ::enterprise_management::PolicyFetchResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PolicyFetchResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DEPRECATEDPolicyPublicKeyAndDomain* Arena::CreateMaybeMessage< ::enterprise_management::DEPRECATEDPolicyPublicKeyAndDomain >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DEPRECATEDPolicyPublicKeyAndDomain >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PublicKeyVerificationData* Arena::CreateMaybeMessage< ::enterprise_management::PublicKeyVerificationData >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PublicKeyVerificationData >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePolicyRequest* Arena::CreateMaybeMessage< ::enterprise_management::DevicePolicyRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePolicyRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePolicyResponse* Arena::CreateMaybeMessage< ::enterprise_management::DevicePolicyResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePolicyResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::TimePeriod* Arena::CreateMaybeMessage< ::enterprise_management::TimePeriod >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::TimePeriod >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ActiveTimePeriod* Arena::CreateMaybeMessage< ::enterprise_management::ActiveTimePeriod >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ActiveTimePeriod >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::NetworkInterface* Arena::CreateMaybeMessage< ::enterprise_management::NetworkInterface >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::NetworkInterface >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::NetworkState* Arena::CreateMaybeMessage< ::enterprise_management::NetworkState >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::NetworkState >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceUser* Arena::CreateMaybeMessage< ::enterprise_management::DeviceUser >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceUser >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::VolumeInfo* Arena::CreateMaybeMessage< ::enterprise_management::VolumeInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::VolumeInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CpuUtilizationInfo* Arena::CreateMaybeMessage< ::enterprise_management::CpuUtilizationInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CpuUtilizationInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SystemFreeRamInfo* Arena::CreateMaybeMessage< ::enterprise_management::SystemFreeRamInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SystemFreeRamInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CPUTempInfo* Arena::CreateMaybeMessage< ::enterprise_management::CPUTempInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CPUTempInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::StatefulPartitionInfo* Arena::CreateMaybeMessage< ::enterprise_management::StatefulPartitionInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::StatefulPartitionInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BatterySample* Arena::CreateMaybeMessage< ::enterprise_management::BatterySample >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BatterySample >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BatteryInfo* Arena::CreateMaybeMessage< ::enterprise_management::BatteryInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BatteryInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PowerStatus* Arena::CreateMaybeMessage< ::enterprise_management::PowerStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PowerStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DiskLifetimeEstimation* Arena::CreateMaybeMessage< ::enterprise_management::DiskLifetimeEstimation >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DiskLifetimeEstimation >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DiskInfo* Arena::CreateMaybeMessage< ::enterprise_management::DiskInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DiskInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::StorageStatus* Arena::CreateMaybeMessage< ::enterprise_management::StorageStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::StorageStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ThermalSample* Arena::CreateMaybeMessage< ::enterprise_management::ThermalSample >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ThermalSample >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ThermalInfo* Arena::CreateMaybeMessage< ::enterprise_management::ThermalInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ThermalInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BoardStatus* Arena::CreateMaybeMessage< ::enterprise_management::BoardStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BoardStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SystemStatus* Arena::CreateMaybeMessage< ::enterprise_management::SystemStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SystemStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CpuCStateInfo* Arena::CreateMaybeMessage< ::enterprise_management::CpuCStateInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CpuCStateInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LogicalCpuInfo* Arena::CreateMaybeMessage< ::enterprise_management::LogicalCpuInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LogicalCpuInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CpuInfo* Arena::CreateMaybeMessage< ::enterprise_management::CpuInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CpuInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::GlobalCpuInfo* Arena::CreateMaybeMessage< ::enterprise_management::GlobalCpuInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::GlobalCpuInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DisplayInfo* Arena::CreateMaybeMessage< ::enterprise_management::DisplayInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DisplayInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::GraphicsAdapterInfo* Arena::CreateMaybeMessage< ::enterprise_management::GraphicsAdapterInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::GraphicsAdapterInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::GraphicsStatus* Arena::CreateMaybeMessage< ::enterprise_management::GraphicsStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::GraphicsStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CrashReportInfo* Arena::CreateMaybeMessage< ::enterprise_management::CrashReportInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CrashReportInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::TimezoneInfo* Arena::CreateMaybeMessage< ::enterprise_management::TimezoneInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::TimezoneInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::MemoryInfo* Arena::CreateMaybeMessage< ::enterprise_management::MemoryInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::MemoryInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BacklightInfo* Arena::CreateMaybeMessage< ::enterprise_management::BacklightInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BacklightInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::FanInfo* Arena::CreateMaybeMessage< ::enterprise_management::FanInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::FanInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BluetoothAdapterInfo* Arena::CreateMaybeMessage< ::enterprise_management::BluetoothAdapterInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BluetoothAdapterInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SmbiosInfo* Arena::CreateMaybeMessage< ::enterprise_management::SmbiosInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SmbiosInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::KernelParameters* Arena::CreateMaybeMessage< ::enterprise_management::KernelParameters >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::KernelParameters >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::EFIVars* Arena::CreateMaybeMessage< ::enterprise_management::EFIVars >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::EFIVars >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BootInfo* Arena::CreateMaybeMessage< ::enterprise_management::BootInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BootInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::NetworkAdapterInfo* Arena::CreateMaybeMessage< ::enterprise_management::NetworkAdapterInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::NetworkAdapterInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LaCrOsBrowserReport* Arena::CreateMaybeMessage< ::enterprise_management::LaCrOsBrowserReport >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LaCrOsBrowserReport >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceStatusReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceStatusReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceStatusReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OsUpdateStatus* Arena::CreateMaybeMessage< ::enterprise_management::OsUpdateStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OsUpdateStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AppStatus* Arena::CreateMaybeMessage< ::enterprise_management::AppStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AppStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AppInfo* Arena::CreateMaybeMessage< ::enterprise_management::AppInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AppInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AndroidAppPermission* Arena::CreateMaybeMessage< ::enterprise_management::AndroidAppPermission >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AndroidAppPermission >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AndroidAppInfo* Arena::CreateMaybeMessage< ::enterprise_management::AndroidAppInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AndroidAppInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeUserProfileReport* Arena::CreateMaybeMessage< ::enterprise_management::ChromeUserProfileReport >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeUserProfileReport >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeSignedInUser* Arena::CreateMaybeMessage< ::enterprise_management::ChromeSignedInUser >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeSignedInUser >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ExtensionRequest* Arena::CreateMaybeMessage< ::enterprise_management::ExtensionRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ExtensionRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::Extension* Arena::CreateMaybeMessage< ::enterprise_management::Extension >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::Extension >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::Plugin* Arena::CreateMaybeMessage< ::enterprise_management::Plugin >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::Plugin >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::Policy* Arena::CreateMaybeMessage< ::enterprise_management::Policy >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::Policy >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ExtensionPolicy* Arena::CreateMaybeMessage< ::enterprise_management::ExtensionPolicy >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ExtensionPolicy >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PolicyFetchTimestamp* Arena::CreateMaybeMessage< ::enterprise_management::PolicyFetchTimestamp >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PolicyFetchTimestamp >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeUserProfileInfo* Arena::CreateMaybeMessage< ::enterprise_management::ChromeUserProfileInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeUserProfileInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BrowserReport* Arena::CreateMaybeMessage< ::enterprise_management::BrowserReport >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BrowserReport >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::OSReport* Arena::CreateMaybeMessage< ::enterprise_management::OSReport >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::OSReport >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeDesktopReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::ChromeDesktopReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeDesktopReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeOsUserReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::ChromeOsUserReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeOsUserReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeProfileReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::ChromeProfileReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeProfileReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PolicyValueValidationIssue* Arena::CreateMaybeMessage< ::enterprise_management::PolicyValueValidationIssue >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PolicyValueValidationIssue >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PolicyValidationReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::PolicyValidationReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PolicyValidationReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PolicyValidationReportResponse* Arena::CreateMaybeMessage< ::enterprise_management::PolicyValidationReportResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PolicyValidationReportResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AndroidStatus* Arena::CreateMaybeMessage< ::enterprise_management::AndroidStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AndroidStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CrostiniApp* Arena::CreateMaybeMessage< ::enterprise_management::CrostiniApp >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CrostiniApp >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CrostiniStatus* Arena::CreateMaybeMessage< ::enterprise_management::CrostiniStatus >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CrostiniStatus >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SessionStatusReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::SessionStatusReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SessionStatusReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceStatusReportResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceStatusReportResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceStatusReportResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeDesktopReportResponse* Arena::CreateMaybeMessage< ::enterprise_management::ChromeDesktopReportResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeDesktopReportResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeOsUserReportResponse* Arena::CreateMaybeMessage< ::enterprise_management::ChromeOsUserReportResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeOsUserReportResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChromeProfileReportResponse* Arena::CreateMaybeMessage< ::enterprise_management::ChromeProfileReportResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChromeProfileReportResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SessionStatusReportResponse* Arena::CreateMaybeMessage< ::enterprise_management::SessionStatusReportResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SessionStatusReportResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrivateSetMembershipRequest* Arena::CreateMaybeMessage< ::enterprise_management::PrivateSetMembershipRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrivateSetMembershipRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrivateSetMembershipResponse* Arena::CreateMaybeMessage< ::enterprise_management::PrivateSetMembershipResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrivateSetMembershipResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrivateSetMembershipRlweRequest* Arena::CreateMaybeMessage< ::enterprise_management::PrivateSetMembershipRlweRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrivateSetMembershipRlweRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrivateSetMembershipRlweResponse* Arena::CreateMaybeMessage< ::enterprise_management::PrivateSetMembershipRlweResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrivateSetMembershipRlweResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAutoEnrollmentRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAutoEnrollmentRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAutoEnrollmentRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAutoEnrollmentResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAutoEnrollmentResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAutoEnrollmentResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceStateRetrievalRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceStateRetrievalRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceStateRetrievalRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceStateKeyUpdateRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceStateKeyUpdateRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceStateKeyUpdateRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceStateRetrievalResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceStateRetrievalResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceStateRetrievalResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceInitialEnrollmentStateRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceInitialEnrollmentStateRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceInitialEnrollmentStateRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceInitialEnrollmentStateResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceInitialEnrollmentStateResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceInitialEnrollmentStateResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePairingRequest* Arena::CreateMaybeMessage< ::enterprise_management::DevicePairingRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePairingRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DevicePairingResponse* Arena::CreateMaybeMessage< ::enterprise_management::DevicePairingResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DevicePairingResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CheckDevicePairingRequest* Arena::CreateMaybeMessage< ::enterprise_management::CheckDevicePairingRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CheckDevicePairingRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CheckDevicePairingResponse* Arena::CreateMaybeMessage< ::enterprise_management::CheckDevicePairingResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CheckDevicePairingResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RemoteCommand* Arena::CreateMaybeMessage< ::enterprise_management::RemoteCommand >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RemoteCommand >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RemoteCommandResult* Arena::CreateMaybeMessage< ::enterprise_management::RemoteCommandResult >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RemoteCommandResult >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceRemoteCommandRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceRemoteCommandRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceRemoteCommandRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceRemoteCommandResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceRemoteCommandResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceRemoteCommandResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAttributeUpdatePermissionRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAttributeUpdatePermissionRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAttributeUpdatePermissionRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAttributeUpdatePermissionResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAttributeUpdatePermissionResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAttributeUpdatePermissionResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAttributeUpdateRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAttributeUpdateRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAttributeUpdateRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceAttributeUpdateResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceAttributeUpdateResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceAttributeUpdateResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::GcmIdUpdateRequest* Arena::CreateMaybeMessage< ::enterprise_management::GcmIdUpdateRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::GcmIdUpdateRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::GcmIdUpdateResponse* Arena::CreateMaybeMessage< ::enterprise_management::GcmIdUpdateResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::GcmIdUpdateResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CheckAndroidManagementRequest* Arena::CreateMaybeMessage< ::enterprise_management::CheckAndroidManagementRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CheckAndroidManagementRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CheckAndroidManagementResponse* Arena::CreateMaybeMessage< ::enterprise_management::CheckAndroidManagementResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CheckAndroidManagementResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CertificateBasedDeviceRegisterRequest* Arena::CreateMaybeMessage< ::enterprise_management::CertificateBasedDeviceRegisterRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CertificateBasedDeviceRegisterRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceRegisterConfiguration* Arena::CreateMaybeMessage< ::enterprise_management::DeviceRegisterConfiguration >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceRegisterConfiguration >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CertificateBasedDeviceRegistrationData* Arena::CreateMaybeMessage< ::enterprise_management::CertificateBasedDeviceRegistrationData >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CertificateBasedDeviceRegistrationData >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RegisterBrowserRequest* Arena::CreateMaybeMessage< ::enterprise_management::RegisterBrowserRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RegisterBrowserRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* Arena::CreateMaybeMessage< ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* Arena::CreateMaybeMessage< ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SamlParametersProto* Arena::CreateMaybeMessage< ::enterprise_management::SamlParametersProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SamlParametersProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PublicSamlUserRequest* Arena::CreateMaybeMessage< ::enterprise_management::PublicSamlUserRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PublicSamlUserRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PublicSamlUserResponse* Arena::CreateMaybeMessage< ::enterprise_management::PublicSamlUserResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PublicSamlUserResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ActiveDirectoryPlayActivityRequest* Arena::CreateMaybeMessage< ::enterprise_management::ActiveDirectoryPlayActivityRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ActiveDirectoryPlayActivityRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ActiveDirectoryPlayActivityResponse* Arena::CreateMaybeMessage< ::enterprise_management::ActiveDirectoryPlayActivityResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ActiveDirectoryPlayActivityResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CheckDeviceLicenseRequest* Arena::CreateMaybeMessage< ::enterprise_management::CheckDeviceLicenseRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CheckDeviceLicenseRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::LicenseAvailability* Arena::CreateMaybeMessage< ::enterprise_management::LicenseAvailability >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::LicenseAvailability >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::CheckDeviceLicenseResponse* Arena::CreateMaybeMessage< ::enterprise_management::CheckDeviceLicenseResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::CheckDeviceLicenseResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ActiveDirectoryUserSigninRequest* Arena::CreateMaybeMessage< ::enterprise_management::ActiveDirectoryUserSigninRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ActiveDirectoryUserSigninRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ActiveDirectoryUserSigninResponse* Arena::CreateMaybeMessage< ::enterprise_management::ActiveDirectoryUserSigninResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ActiveDirectoryUserSigninResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::TpmVersionInfo* Arena::CreateMaybeMessage< ::enterprise_management::TpmVersionInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::TpmVersionInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::TpmStatusInfo* Arena::CreateMaybeMessage< ::enterprise_management::TpmStatusInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::TpmStatusInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::TpmSupportedFeatures* Arena::CreateMaybeMessage< ::enterprise_management::TpmSupportedFeatures >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::TpmSupportedFeatures >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::SystemState* Arena::CreateMaybeMessage< ::enterprise_management::SystemState >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::SystemState >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ExtensionInstallReportLogEvent* Arena::CreateMaybeMessage< ::enterprise_management::ExtensionInstallReportLogEvent >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ExtensionInstallReportLogEvent >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AppInstallReportLogEvent* Arena::CreateMaybeMessage< ::enterprise_management::AppInstallReportLogEvent >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AppInstallReportLogEvent >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ExtensionInstallReport* Arena::CreateMaybeMessage< ::enterprise_management::ExtensionInstallReport >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ExtensionInstallReport >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AppInstallReport* Arena::CreateMaybeMessage< ::enterprise_management::AppInstallReport >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AppInstallReport >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AppInstallReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::AppInstallReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AppInstallReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ExtensionInstallReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::ExtensionInstallReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ExtensionInstallReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AppInstallReportResponse* Arena::CreateMaybeMessage< ::enterprise_management::AppInstallReportResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AppInstallReportResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RefreshAccountRequest* Arena::CreateMaybeMessage< ::enterprise_management::RefreshAccountRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RefreshAccountRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RefreshAccountResponse* Arena::CreateMaybeMessage< ::enterprise_management::RefreshAccountResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RefreshAccountResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RsuLookupKeyUploadRequest* Arena::CreateMaybeMessage< ::enterprise_management::RsuLookupKeyUploadRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RsuLookupKeyUploadRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::RsuLookupKeyUploadResponse* Arena::CreateMaybeMessage< ::enterprise_management::RsuLookupKeyUploadResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::RsuLookupKeyUploadResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ESimProfileInfo* Arena::CreateMaybeMessage< ::enterprise_management::ESimProfileInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ESimProfileInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UploadEuiccInfoRequest* Arena::CreateMaybeMessage< ::enterprise_management::UploadEuiccInfoRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UploadEuiccInfoRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::UploadEuiccInfoResponse* Arena::CreateMaybeMessage< ::enterprise_management::UploadEuiccInfoResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::UploadEuiccInfoResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrintJobEvent_PrintJobConfiguration* Arena::CreateMaybeMessage< ::enterprise_management::PrintJobEvent_PrintJobConfiguration >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrintJobEvent_PrintJobConfiguration >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrintJobEvent_Printer* Arena::CreateMaybeMessage< ::enterprise_management::PrintJobEvent_Printer >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrintJobEvent_Printer >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* Arena::CreateMaybeMessage< ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrintJobEvent_PrintSettings* Arena::CreateMaybeMessage< ::enterprise_management::PrintJobEvent_PrintSettings >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrintJobEvent_PrintSettings >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PrintJobEvent* Arena::CreateMaybeMessage< ::enterprise_management::PrintJobEvent >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PrintJobEvent >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::App* Arena::CreateMaybeMessage< ::enterprise_management::App >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::App >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::AppActivity* Arena::CreateMaybeMessage< ::enterprise_management::AppActivity >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::AppActivity >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ScreenTimeSpan* Arena::CreateMaybeMessage< ::enterprise_management::ScreenTimeSpan >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ScreenTimeSpan >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChildStatusReportRequest* Arena::CreateMaybeMessage< ::enterprise_management::ChildStatusReportRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChildStatusReportRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ChildStatusReportResponse* Arena::CreateMaybeMessage< ::enterprise_management::ChildStatusReportResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ChildStatusReportResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::StartCsrRequest* Arena::CreateMaybeMessage< ::enterprise_management::StartCsrRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::StartCsrRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::StartCsrResponse* Arena::CreateMaybeMessage< ::enterprise_management::StartCsrResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::StartCsrResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::FinishCsrRequest* Arena::CreateMaybeMessage< ::enterprise_management::FinishCsrRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::FinishCsrRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::FinishCsrResponse* Arena::CreateMaybeMessage< ::enterprise_management::FinishCsrResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::FinishCsrResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DownloadCertRequest* Arena::CreateMaybeMessage< ::enterprise_management::DownloadCertRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DownloadCertRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DownloadCertResponse* Arena::CreateMaybeMessage< ::enterprise_management::DownloadCertResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DownloadCertResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ClientCertificateProvisioningRequest* Arena::CreateMaybeMessage< ::enterprise_management::ClientCertificateProvisioningRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ClientCertificateProvisioningRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::ClientCertificateProvisioningResponse* Arena::CreateMaybeMessage< ::enterprise_management::ClientCertificateProvisioningResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::ClientCertificateProvisioningResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BrowserPublicKeyUploadRequest* Arena::CreateMaybeMessage< ::enterprise_management::BrowserPublicKeyUploadRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BrowserPublicKeyUploadRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BrowserPublicKeyUploadResponse* Arena::CreateMaybeMessage< ::enterprise_management::BrowserPublicKeyUploadResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BrowserPublicKeyUploadResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceManagementRequest* Arena::CreateMaybeMessage< ::enterprise_management::DeviceManagementRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceManagementRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceManagementResponse* Arena::CreateMaybeMessage< ::enterprise_management::DeviceManagementResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceManagementResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::DeviceStateRetrievalInfo* Arena::CreateMaybeMessage< ::enterprise_management::DeviceStateRetrievalInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::DeviceStateRetrievalInfo >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/device_management_backend.pb.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/device_management_backend.pb.h
new file mode 100644
index 0000000..dc2a9e5
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/device_management_backend.pb.h
@@ -0,0 +1,77447 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: device_management_backend.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_device_5fmanagement_5fbackend_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_device_5fmanagement_5fbackend_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/generated_enum_util.h>
+#include "private_membership_rlwe.pb.h"
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_device_5fmanagement_5fbackend_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_device_5fmanagement_5fbackend_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[180]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace enterprise_management {
+class ActiveDirectoryEnrollPlayUserRequest;
+class ActiveDirectoryEnrollPlayUserRequestDefaultTypeInternal;
+extern ActiveDirectoryEnrollPlayUserRequestDefaultTypeInternal _ActiveDirectoryEnrollPlayUserRequest_default_instance_;
+class ActiveDirectoryEnrollPlayUserResponse;
+class ActiveDirectoryEnrollPlayUserResponseDefaultTypeInternal;
+extern ActiveDirectoryEnrollPlayUserResponseDefaultTypeInternal _ActiveDirectoryEnrollPlayUserResponse_default_instance_;
+class ActiveDirectoryPlayActivityRequest;
+class ActiveDirectoryPlayActivityRequestDefaultTypeInternal;
+extern ActiveDirectoryPlayActivityRequestDefaultTypeInternal _ActiveDirectoryPlayActivityRequest_default_instance_;
+class ActiveDirectoryPlayActivityResponse;
+class ActiveDirectoryPlayActivityResponseDefaultTypeInternal;
+extern ActiveDirectoryPlayActivityResponseDefaultTypeInternal _ActiveDirectoryPlayActivityResponse_default_instance_;
+class ActiveDirectoryUserSigninRequest;
+class ActiveDirectoryUserSigninRequestDefaultTypeInternal;
+extern ActiveDirectoryUserSigninRequestDefaultTypeInternal _ActiveDirectoryUserSigninRequest_default_instance_;
+class ActiveDirectoryUserSigninResponse;
+class ActiveDirectoryUserSigninResponseDefaultTypeInternal;
+extern ActiveDirectoryUserSigninResponseDefaultTypeInternal _ActiveDirectoryUserSigninResponse_default_instance_;
+class ActiveTimePeriod;
+class ActiveTimePeriodDefaultTypeInternal;
+extern ActiveTimePeriodDefaultTypeInternal _ActiveTimePeriod_default_instance_;
+class AndroidAppInfo;
+class AndroidAppInfoDefaultTypeInternal;
+extern AndroidAppInfoDefaultTypeInternal _AndroidAppInfo_default_instance_;
+class AndroidAppPermission;
+class AndroidAppPermissionDefaultTypeInternal;
+extern AndroidAppPermissionDefaultTypeInternal _AndroidAppPermission_default_instance_;
+class AndroidStatus;
+class AndroidStatusDefaultTypeInternal;
+extern AndroidStatusDefaultTypeInternal _AndroidStatus_default_instance_;
+class App;
+class AppDefaultTypeInternal;
+extern AppDefaultTypeInternal _App_default_instance_;
+class AppActivity;
+class AppActivityDefaultTypeInternal;
+extern AppActivityDefaultTypeInternal _AppActivity_default_instance_;
+class AppInfo;
+class AppInfoDefaultTypeInternal;
+extern AppInfoDefaultTypeInternal _AppInfo_default_instance_;
+class AppInstallReport;
+class AppInstallReportDefaultTypeInternal;
+extern AppInstallReportDefaultTypeInternal _AppInstallReport_default_instance_;
+class AppInstallReportLogEvent;
+class AppInstallReportLogEventDefaultTypeInternal;
+extern AppInstallReportLogEventDefaultTypeInternal _AppInstallReportLogEvent_default_instance_;
+class AppInstallReportRequest;
+class AppInstallReportRequestDefaultTypeInternal;
+extern AppInstallReportRequestDefaultTypeInternal _AppInstallReportRequest_default_instance_;
+class AppInstallReportResponse;
+class AppInstallReportResponseDefaultTypeInternal;
+extern AppInstallReportResponseDefaultTypeInternal _AppInstallReportResponse_default_instance_;
+class AppStatus;
+class AppStatusDefaultTypeInternal;
+extern AppStatusDefaultTypeInternal _AppStatus_default_instance_;
+class BacklightInfo;
+class BacklightInfoDefaultTypeInternal;
+extern BacklightInfoDefaultTypeInternal _BacklightInfo_default_instance_;
+class BatteryInfo;
+class BatteryInfoDefaultTypeInternal;
+extern BatteryInfoDefaultTypeInternal _BatteryInfo_default_instance_;
+class BatterySample;
+class BatterySampleDefaultTypeInternal;
+extern BatterySampleDefaultTypeInternal _BatterySample_default_instance_;
+class BluetoothAdapterInfo;
+class BluetoothAdapterInfoDefaultTypeInternal;
+extern BluetoothAdapterInfoDefaultTypeInternal _BluetoothAdapterInfo_default_instance_;
+class BoardStatus;
+class BoardStatusDefaultTypeInternal;
+extern BoardStatusDefaultTypeInternal _BoardStatus_default_instance_;
+class BootInfo;
+class BootInfoDefaultTypeInternal;
+extern BootInfoDefaultTypeInternal _BootInfo_default_instance_;
+class BrowserDeviceIdentifier;
+class BrowserDeviceIdentifierDefaultTypeInternal;
+extern BrowserDeviceIdentifierDefaultTypeInternal _BrowserDeviceIdentifier_default_instance_;
+class BrowserPublicKeyUploadRequest;
+class BrowserPublicKeyUploadRequestDefaultTypeInternal;
+extern BrowserPublicKeyUploadRequestDefaultTypeInternal _BrowserPublicKeyUploadRequest_default_instance_;
+class BrowserPublicKeyUploadResponse;
+class BrowserPublicKeyUploadResponseDefaultTypeInternal;
+extern BrowserPublicKeyUploadResponseDefaultTypeInternal _BrowserPublicKeyUploadResponse_default_instance_;
+class BrowserReport;
+class BrowserReportDefaultTypeInternal;
+extern BrowserReportDefaultTypeInternal _BrowserReport_default_instance_;
+class CPUTempInfo;
+class CPUTempInfoDefaultTypeInternal;
+extern CPUTempInfoDefaultTypeInternal _CPUTempInfo_default_instance_;
+class CertificateBasedDeviceRegisterRequest;
+class CertificateBasedDeviceRegisterRequestDefaultTypeInternal;
+extern CertificateBasedDeviceRegisterRequestDefaultTypeInternal _CertificateBasedDeviceRegisterRequest_default_instance_;
+class CertificateBasedDeviceRegistrationData;
+class CertificateBasedDeviceRegistrationDataDefaultTypeInternal;
+extern CertificateBasedDeviceRegistrationDataDefaultTypeInternal _CertificateBasedDeviceRegistrationData_default_instance_;
+class CheckAndroidManagementRequest;
+class CheckAndroidManagementRequestDefaultTypeInternal;
+extern CheckAndroidManagementRequestDefaultTypeInternal _CheckAndroidManagementRequest_default_instance_;
+class CheckAndroidManagementResponse;
+class CheckAndroidManagementResponseDefaultTypeInternal;
+extern CheckAndroidManagementResponseDefaultTypeInternal _CheckAndroidManagementResponse_default_instance_;
+class CheckDeviceLicenseRequest;
+class CheckDeviceLicenseRequestDefaultTypeInternal;
+extern CheckDeviceLicenseRequestDefaultTypeInternal _CheckDeviceLicenseRequest_default_instance_;
+class CheckDeviceLicenseResponse;
+class CheckDeviceLicenseResponseDefaultTypeInternal;
+extern CheckDeviceLicenseResponseDefaultTypeInternal _CheckDeviceLicenseResponse_default_instance_;
+class CheckDevicePairingRequest;
+class CheckDevicePairingRequestDefaultTypeInternal;
+extern CheckDevicePairingRequestDefaultTypeInternal _CheckDevicePairingRequest_default_instance_;
+class CheckDevicePairingResponse;
+class CheckDevicePairingResponseDefaultTypeInternal;
+extern CheckDevicePairingResponseDefaultTypeInternal _CheckDevicePairingResponse_default_instance_;
+class CheckUserAccountRequest;
+class CheckUserAccountRequestDefaultTypeInternal;
+extern CheckUserAccountRequestDefaultTypeInternal _CheckUserAccountRequest_default_instance_;
+class CheckUserAccountResponse;
+class CheckUserAccountResponseDefaultTypeInternal;
+extern CheckUserAccountResponseDefaultTypeInternal _CheckUserAccountResponse_default_instance_;
+class ChildStatusReportRequest;
+class ChildStatusReportRequestDefaultTypeInternal;
+extern ChildStatusReportRequestDefaultTypeInternal _ChildStatusReportRequest_default_instance_;
+class ChildStatusReportResponse;
+class ChildStatusReportResponseDefaultTypeInternal;
+extern ChildStatusReportResponseDefaultTypeInternal _ChildStatusReportResponse_default_instance_;
+class ChromeDesktopReportRequest;
+class ChromeDesktopReportRequestDefaultTypeInternal;
+extern ChromeDesktopReportRequestDefaultTypeInternal _ChromeDesktopReportRequest_default_instance_;
+class ChromeDesktopReportResponse;
+class ChromeDesktopReportResponseDefaultTypeInternal;
+extern ChromeDesktopReportResponseDefaultTypeInternal _ChromeDesktopReportResponse_default_instance_;
+class ChromeOsUserReportRequest;
+class ChromeOsUserReportRequestDefaultTypeInternal;
+extern ChromeOsUserReportRequestDefaultTypeInternal _ChromeOsUserReportRequest_default_instance_;
+class ChromeOsUserReportResponse;
+class ChromeOsUserReportResponseDefaultTypeInternal;
+extern ChromeOsUserReportResponseDefaultTypeInternal _ChromeOsUserReportResponse_default_instance_;
+class ChromeProfileReportRequest;
+class ChromeProfileReportRequestDefaultTypeInternal;
+extern ChromeProfileReportRequestDefaultTypeInternal _ChromeProfileReportRequest_default_instance_;
+class ChromeProfileReportResponse;
+class ChromeProfileReportResponseDefaultTypeInternal;
+extern ChromeProfileReportResponseDefaultTypeInternal _ChromeProfileReportResponse_default_instance_;
+class ChromeSignedInUser;
+class ChromeSignedInUserDefaultTypeInternal;
+extern ChromeSignedInUserDefaultTypeInternal _ChromeSignedInUser_default_instance_;
+class ChromeUserProfileInfo;
+class ChromeUserProfileInfoDefaultTypeInternal;
+extern ChromeUserProfileInfoDefaultTypeInternal _ChromeUserProfileInfo_default_instance_;
+class ChromeUserProfileReport;
+class ChromeUserProfileReportDefaultTypeInternal;
+extern ChromeUserProfileReportDefaultTypeInternal _ChromeUserProfileReport_default_instance_;
+class ClientActionRequired;
+class ClientActionRequiredDefaultTypeInternal;
+extern ClientActionRequiredDefaultTypeInternal _ClientActionRequired_default_instance_;
+class ClientCertificateProvisioningRequest;
+class ClientCertificateProvisioningRequestDefaultTypeInternal;
+extern ClientCertificateProvisioningRequestDefaultTypeInternal _ClientCertificateProvisioningRequest_default_instance_;
+class ClientCertificateProvisioningResponse;
+class ClientCertificateProvisioningResponseDefaultTypeInternal;
+extern ClientCertificateProvisioningResponseDefaultTypeInternal _ClientCertificateProvisioningResponse_default_instance_;
+class CpuCStateInfo;
+class CpuCStateInfoDefaultTypeInternal;
+extern CpuCStateInfoDefaultTypeInternal _CpuCStateInfo_default_instance_;
+class CpuInfo;
+class CpuInfoDefaultTypeInternal;
+extern CpuInfoDefaultTypeInternal _CpuInfo_default_instance_;
+class CpuUtilizationInfo;
+class CpuUtilizationInfoDefaultTypeInternal;
+extern CpuUtilizationInfoDefaultTypeInternal _CpuUtilizationInfo_default_instance_;
+class CrashReportInfo;
+class CrashReportInfoDefaultTypeInternal;
+extern CrashReportInfoDefaultTypeInternal _CrashReportInfo_default_instance_;
+class CrostiniApp;
+class CrostiniAppDefaultTypeInternal;
+extern CrostiniAppDefaultTypeInternal _CrostiniApp_default_instance_;
+class CrostiniStatus;
+class CrostiniStatusDefaultTypeInternal;
+extern CrostiniStatusDefaultTypeInternal _CrostiniStatus_default_instance_;
+class CustomerLogo;
+class CustomerLogoDefaultTypeInternal;
+extern CustomerLogoDefaultTypeInternal _CustomerLogo_default_instance_;
+class DEPRECATEDPolicyPublicKeyAndDomain;
+class DEPRECATEDPolicyPublicKeyAndDomainDefaultTypeInternal;
+extern DEPRECATEDPolicyPublicKeyAndDomainDefaultTypeInternal _DEPRECATEDPolicyPublicKeyAndDomain_default_instance_;
+class DeviceAttributeUpdatePermissionRequest;
+class DeviceAttributeUpdatePermissionRequestDefaultTypeInternal;
+extern DeviceAttributeUpdatePermissionRequestDefaultTypeInternal _DeviceAttributeUpdatePermissionRequest_default_instance_;
+class DeviceAttributeUpdatePermissionResponse;
+class DeviceAttributeUpdatePermissionResponseDefaultTypeInternal;
+extern DeviceAttributeUpdatePermissionResponseDefaultTypeInternal _DeviceAttributeUpdatePermissionResponse_default_instance_;
+class DeviceAttributeUpdateRequest;
+class DeviceAttributeUpdateRequestDefaultTypeInternal;
+extern DeviceAttributeUpdateRequestDefaultTypeInternal _DeviceAttributeUpdateRequest_default_instance_;
+class DeviceAttributeUpdateResponse;
+class DeviceAttributeUpdateResponseDefaultTypeInternal;
+extern DeviceAttributeUpdateResponseDefaultTypeInternal _DeviceAttributeUpdateResponse_default_instance_;
+class DeviceAutoEnrollmentRequest;
+class DeviceAutoEnrollmentRequestDefaultTypeInternal;
+extern DeviceAutoEnrollmentRequestDefaultTypeInternal _DeviceAutoEnrollmentRequest_default_instance_;
+class DeviceAutoEnrollmentResponse;
+class DeviceAutoEnrollmentResponseDefaultTypeInternal;
+extern DeviceAutoEnrollmentResponseDefaultTypeInternal _DeviceAutoEnrollmentResponse_default_instance_;
+class DeviceCertUploadRequest;
+class DeviceCertUploadRequestDefaultTypeInternal;
+extern DeviceCertUploadRequestDefaultTypeInternal _DeviceCertUploadRequest_default_instance_;
+class DeviceCertUploadResponse;
+class DeviceCertUploadResponseDefaultTypeInternal;
+extern DeviceCertUploadResponseDefaultTypeInternal _DeviceCertUploadResponse_default_instance_;
+class DeviceInitialEnrollmentStateRequest;
+class DeviceInitialEnrollmentStateRequestDefaultTypeInternal;
+extern DeviceInitialEnrollmentStateRequestDefaultTypeInternal _DeviceInitialEnrollmentStateRequest_default_instance_;
+class DeviceInitialEnrollmentStateResponse;
+class DeviceInitialEnrollmentStateResponseDefaultTypeInternal;
+extern DeviceInitialEnrollmentStateResponseDefaultTypeInternal _DeviceInitialEnrollmentStateResponse_default_instance_;
+class DeviceManagementRequest;
+class DeviceManagementRequestDefaultTypeInternal;
+extern DeviceManagementRequestDefaultTypeInternal _DeviceManagementRequest_default_instance_;
+class DeviceManagementResponse;
+class DeviceManagementResponseDefaultTypeInternal;
+extern DeviceManagementResponseDefaultTypeInternal _DeviceManagementResponse_default_instance_;
+class DevicePairingRequest;
+class DevicePairingRequestDefaultTypeInternal;
+extern DevicePairingRequestDefaultTypeInternal _DevicePairingRequest_default_instance_;
+class DevicePairingResponse;
+class DevicePairingResponseDefaultTypeInternal;
+extern DevicePairingResponseDefaultTypeInternal _DevicePairingResponse_default_instance_;
+class DevicePolicyRequest;
+class DevicePolicyRequestDefaultTypeInternal;
+extern DevicePolicyRequestDefaultTypeInternal _DevicePolicyRequest_default_instance_;
+class DevicePolicyResponse;
+class DevicePolicyResponseDefaultTypeInternal;
+extern DevicePolicyResponseDefaultTypeInternal _DevicePolicyResponse_default_instance_;
+class DeviceRegisterConfiguration;
+class DeviceRegisterConfigurationDefaultTypeInternal;
+extern DeviceRegisterConfigurationDefaultTypeInternal _DeviceRegisterConfiguration_default_instance_;
+class DeviceRegisterIdentification;
+class DeviceRegisterIdentificationDefaultTypeInternal;
+extern DeviceRegisterIdentificationDefaultTypeInternal _DeviceRegisterIdentification_default_instance_;
+class DeviceRegisterRequest;
+class DeviceRegisterRequestDefaultTypeInternal;
+extern DeviceRegisterRequestDefaultTypeInternal _DeviceRegisterRequest_default_instance_;
+class DeviceRegisterResponse;
+class DeviceRegisterResponseDefaultTypeInternal;
+extern DeviceRegisterResponseDefaultTypeInternal _DeviceRegisterResponse_default_instance_;
+class DeviceRemoteCommandRequest;
+class DeviceRemoteCommandRequestDefaultTypeInternal;
+extern DeviceRemoteCommandRequestDefaultTypeInternal _DeviceRemoteCommandRequest_default_instance_;
+class DeviceRemoteCommandResponse;
+class DeviceRemoteCommandResponseDefaultTypeInternal;
+extern DeviceRemoteCommandResponseDefaultTypeInternal _DeviceRemoteCommandResponse_default_instance_;
+class DeviceServiceApiAccessRequest;
+class DeviceServiceApiAccessRequestDefaultTypeInternal;
+extern DeviceServiceApiAccessRequestDefaultTypeInternal _DeviceServiceApiAccessRequest_default_instance_;
+class DeviceServiceApiAccessResponse;
+class DeviceServiceApiAccessResponseDefaultTypeInternal;
+extern DeviceServiceApiAccessResponseDefaultTypeInternal _DeviceServiceApiAccessResponse_default_instance_;
+class DeviceState;
+class DeviceStateDefaultTypeInternal;
+extern DeviceStateDefaultTypeInternal _DeviceState_default_instance_;
+class DeviceStateKeyUpdateRequest;
+class DeviceStateKeyUpdateRequestDefaultTypeInternal;
+extern DeviceStateKeyUpdateRequestDefaultTypeInternal _DeviceStateKeyUpdateRequest_default_instance_;
+class DeviceStateRetrievalInfo;
+class DeviceStateRetrievalInfoDefaultTypeInternal;
+extern DeviceStateRetrievalInfoDefaultTypeInternal _DeviceStateRetrievalInfo_default_instance_;
+class DeviceStateRetrievalRequest;
+class DeviceStateRetrievalRequestDefaultTypeInternal;
+extern DeviceStateRetrievalRequestDefaultTypeInternal _DeviceStateRetrievalRequest_default_instance_;
+class DeviceStateRetrievalResponse;
+class DeviceStateRetrievalResponseDefaultTypeInternal;
+extern DeviceStateRetrievalResponseDefaultTypeInternal _DeviceStateRetrievalResponse_default_instance_;
+class DeviceStatusReportRequest;
+class DeviceStatusReportRequestDefaultTypeInternal;
+extern DeviceStatusReportRequestDefaultTypeInternal _DeviceStatusReportRequest_default_instance_;
+class DeviceStatusReportResponse;
+class DeviceStatusReportResponseDefaultTypeInternal;
+extern DeviceStatusReportResponseDefaultTypeInternal _DeviceStatusReportResponse_default_instance_;
+class DeviceUnregisterRequest;
+class DeviceUnregisterRequestDefaultTypeInternal;
+extern DeviceUnregisterRequestDefaultTypeInternal _DeviceUnregisterRequest_default_instance_;
+class DeviceUnregisterResponse;
+class DeviceUnregisterResponseDefaultTypeInternal;
+extern DeviceUnregisterResponseDefaultTypeInternal _DeviceUnregisterResponse_default_instance_;
+class DeviceUser;
+class DeviceUserDefaultTypeInternal;
+extern DeviceUserDefaultTypeInternal _DeviceUser_default_instance_;
+class DisabledState;
+class DisabledStateDefaultTypeInternal;
+extern DisabledStateDefaultTypeInternal _DisabledState_default_instance_;
+class DiskInfo;
+class DiskInfoDefaultTypeInternal;
+extern DiskInfoDefaultTypeInternal _DiskInfo_default_instance_;
+class DiskLifetimeEstimation;
+class DiskLifetimeEstimationDefaultTypeInternal;
+extern DiskLifetimeEstimationDefaultTypeInternal _DiskLifetimeEstimation_default_instance_;
+class DisplayInfo;
+class DisplayInfoDefaultTypeInternal;
+extern DisplayInfoDefaultTypeInternal _DisplayInfo_default_instance_;
+class DownloadCertRequest;
+class DownloadCertRequestDefaultTypeInternal;
+extern DownloadCertRequestDefaultTypeInternal _DownloadCertRequest_default_instance_;
+class DownloadCertResponse;
+class DownloadCertResponseDefaultTypeInternal;
+extern DownloadCertResponseDefaultTypeInternal _DownloadCertResponse_default_instance_;
+class EFIVars;
+class EFIVarsDefaultTypeInternal;
+extern EFIVarsDefaultTypeInternal _EFIVars_default_instance_;
+class ESimProfileInfo;
+class ESimProfileInfoDefaultTypeInternal;
+extern ESimProfileInfoDefaultTypeInternal _ESimProfileInfo_default_instance_;
+class Extension;
+class ExtensionDefaultTypeInternal;
+extern ExtensionDefaultTypeInternal _Extension_default_instance_;
+class ExtensionInstallReport;
+class ExtensionInstallReportDefaultTypeInternal;
+extern ExtensionInstallReportDefaultTypeInternal _ExtensionInstallReport_default_instance_;
+class ExtensionInstallReportLogEvent;
+class ExtensionInstallReportLogEventDefaultTypeInternal;
+extern ExtensionInstallReportLogEventDefaultTypeInternal _ExtensionInstallReportLogEvent_default_instance_;
+class ExtensionInstallReportRequest;
+class ExtensionInstallReportRequestDefaultTypeInternal;
+extern ExtensionInstallReportRequestDefaultTypeInternal _ExtensionInstallReportRequest_default_instance_;
+class ExtensionPolicy;
+class ExtensionPolicyDefaultTypeInternal;
+extern ExtensionPolicyDefaultTypeInternal _ExtensionPolicy_default_instance_;
+class ExtensionRequest;
+class ExtensionRequestDefaultTypeInternal;
+extern ExtensionRequestDefaultTypeInternal _ExtensionRequest_default_instance_;
+class FanInfo;
+class FanInfoDefaultTypeInternal;
+extern FanInfoDefaultTypeInternal _FanInfo_default_instance_;
+class FinishCsrRequest;
+class FinishCsrRequestDefaultTypeInternal;
+extern FinishCsrRequestDefaultTypeInternal _FinishCsrRequest_default_instance_;
+class FinishCsrResponse;
+class FinishCsrResponseDefaultTypeInternal;
+extern FinishCsrResponseDefaultTypeInternal _FinishCsrResponse_default_instance_;
+class GcmIdUpdateRequest;
+class GcmIdUpdateRequestDefaultTypeInternal;
+extern GcmIdUpdateRequestDefaultTypeInternal _GcmIdUpdateRequest_default_instance_;
+class GcmIdUpdateResponse;
+class GcmIdUpdateResponseDefaultTypeInternal;
+extern GcmIdUpdateResponseDefaultTypeInternal _GcmIdUpdateResponse_default_instance_;
+class GlobalCpuInfo;
+class GlobalCpuInfoDefaultTypeInternal;
+extern GlobalCpuInfoDefaultTypeInternal _GlobalCpuInfo_default_instance_;
+class GraphicsAdapterInfo;
+class GraphicsAdapterInfoDefaultTypeInternal;
+extern GraphicsAdapterInfoDefaultTypeInternal _GraphicsAdapterInfo_default_instance_;
+class GraphicsStatus;
+class GraphicsStatusDefaultTypeInternal;
+extern GraphicsStatusDefaultTypeInternal _GraphicsStatus_default_instance_;
+class KernelParameters;
+class KernelParametersDefaultTypeInternal;
+extern KernelParametersDefaultTypeInternal _KernelParameters_default_instance_;
+class LaCrOsBrowserReport;
+class LaCrOsBrowserReportDefaultTypeInternal;
+extern LaCrOsBrowserReportDefaultTypeInternal _LaCrOsBrowserReport_default_instance_;
+class LicenseAvailability;
+class LicenseAvailabilityDefaultTypeInternal;
+extern LicenseAvailabilityDefaultTypeInternal _LicenseAvailability_default_instance_;
+class LicenseType;
+class LicenseTypeDefaultTypeInternal;
+extern LicenseTypeDefaultTypeInternal _LicenseType_default_instance_;
+class LogicalCpuInfo;
+class LogicalCpuInfoDefaultTypeInternal;
+extern LogicalCpuInfoDefaultTypeInternal _LogicalCpuInfo_default_instance_;
+class MemoryInfo;
+class MemoryInfoDefaultTypeInternal;
+extern MemoryInfoDefaultTypeInternal _MemoryInfo_default_instance_;
+class NetworkAdapterInfo;
+class NetworkAdapterInfoDefaultTypeInternal;
+extern NetworkAdapterInfoDefaultTypeInternal _NetworkAdapterInfo_default_instance_;
+class NetworkInterface;
+class NetworkInterfaceDefaultTypeInternal;
+extern NetworkInterfaceDefaultTypeInternal _NetworkInterface_default_instance_;
+class NetworkState;
+class NetworkStateDefaultTypeInternal;
+extern NetworkStateDefaultTypeInternal _NetworkState_default_instance_;
+class OSReport;
+class OSReportDefaultTypeInternal;
+extern OSReportDefaultTypeInternal _OSReport_default_instance_;
+class OsUpdateStatus;
+class OsUpdateStatusDefaultTypeInternal;
+extern OsUpdateStatusDefaultTypeInternal _OsUpdateStatus_default_instance_;
+class Plugin;
+class PluginDefaultTypeInternal;
+extern PluginDefaultTypeInternal _Plugin_default_instance_;
+class Policy;
+class PolicyDefaultTypeInternal;
+extern PolicyDefaultTypeInternal _Policy_default_instance_;
+class PolicyData;
+class PolicyDataDefaultTypeInternal;
+extern PolicyDataDefaultTypeInternal _PolicyData_default_instance_;
+class PolicyFetchRequest;
+class PolicyFetchRequestDefaultTypeInternal;
+extern PolicyFetchRequestDefaultTypeInternal _PolicyFetchRequest_default_instance_;
+class PolicyFetchResponse;
+class PolicyFetchResponseDefaultTypeInternal;
+extern PolicyFetchResponseDefaultTypeInternal _PolicyFetchResponse_default_instance_;
+class PolicyFetchTimestamp;
+class PolicyFetchTimestampDefaultTypeInternal;
+extern PolicyFetchTimestampDefaultTypeInternal _PolicyFetchTimestamp_default_instance_;
+class PolicyValidationReportRequest;
+class PolicyValidationReportRequestDefaultTypeInternal;
+extern PolicyValidationReportRequestDefaultTypeInternal _PolicyValidationReportRequest_default_instance_;
+class PolicyValidationReportResponse;
+class PolicyValidationReportResponseDefaultTypeInternal;
+extern PolicyValidationReportResponseDefaultTypeInternal _PolicyValidationReportResponse_default_instance_;
+class PolicyValueValidationIssue;
+class PolicyValueValidationIssueDefaultTypeInternal;
+extern PolicyValueValidationIssueDefaultTypeInternal _PolicyValueValidationIssue_default_instance_;
+class PowerStatus;
+class PowerStatusDefaultTypeInternal;
+extern PowerStatusDefaultTypeInternal _PowerStatus_default_instance_;
+class PrintJobEvent;
+class PrintJobEventDefaultTypeInternal;
+extern PrintJobEventDefaultTypeInternal _PrintJobEvent_default_instance_;
+class PrintJobEvent_PrintJobConfiguration;
+class PrintJobEvent_PrintJobConfigurationDefaultTypeInternal;
+extern PrintJobEvent_PrintJobConfigurationDefaultTypeInternal _PrintJobEvent_PrintJobConfiguration_default_instance_;
+class PrintJobEvent_PrintSettings;
+class PrintJobEvent_PrintSettingsDefaultTypeInternal;
+extern PrintJobEvent_PrintSettingsDefaultTypeInternal _PrintJobEvent_PrintSettings_default_instance_;
+class PrintJobEvent_PrintSettings_MediaSize;
+class PrintJobEvent_PrintSettings_MediaSizeDefaultTypeInternal;
+extern PrintJobEvent_PrintSettings_MediaSizeDefaultTypeInternal _PrintJobEvent_PrintSettings_MediaSize_default_instance_;
+class PrintJobEvent_Printer;
+class PrintJobEvent_PrinterDefaultTypeInternal;
+extern PrintJobEvent_PrinterDefaultTypeInternal _PrintJobEvent_Printer_default_instance_;
+class PrivateSetMembershipRequest;
+class PrivateSetMembershipRequestDefaultTypeInternal;
+extern PrivateSetMembershipRequestDefaultTypeInternal _PrivateSetMembershipRequest_default_instance_;
+class PrivateSetMembershipResponse;
+class PrivateSetMembershipResponseDefaultTypeInternal;
+extern PrivateSetMembershipResponseDefaultTypeInternal _PrivateSetMembershipResponse_default_instance_;
+class PrivateSetMembershipRlweRequest;
+class PrivateSetMembershipRlweRequestDefaultTypeInternal;
+extern PrivateSetMembershipRlweRequestDefaultTypeInternal _PrivateSetMembershipRlweRequest_default_instance_;
+class PrivateSetMembershipRlweResponse;
+class PrivateSetMembershipRlweResponseDefaultTypeInternal;
+extern PrivateSetMembershipRlweResponseDefaultTypeInternal _PrivateSetMembershipRlweResponse_default_instance_;
+class PublicKeyVerificationData;
+class PublicKeyVerificationDataDefaultTypeInternal;
+extern PublicKeyVerificationDataDefaultTypeInternal _PublicKeyVerificationData_default_instance_;
+class PublicSamlUserRequest;
+class PublicSamlUserRequestDefaultTypeInternal;
+extern PublicSamlUserRequestDefaultTypeInternal _PublicSamlUserRequest_default_instance_;
+class PublicSamlUserResponse;
+class PublicSamlUserResponseDefaultTypeInternal;
+extern PublicSamlUserResponseDefaultTypeInternal _PublicSamlUserResponse_default_instance_;
+class RefreshAccountRequest;
+class RefreshAccountRequestDefaultTypeInternal;
+extern RefreshAccountRequestDefaultTypeInternal _RefreshAccountRequest_default_instance_;
+class RefreshAccountResponse;
+class RefreshAccountResponseDefaultTypeInternal;
+extern RefreshAccountResponseDefaultTypeInternal _RefreshAccountResponse_default_instance_;
+class RegisterBrowserRequest;
+class RegisterBrowserRequestDefaultTypeInternal;
+extern RegisterBrowserRequestDefaultTypeInternal _RegisterBrowserRequest_default_instance_;
+class RemoteCommand;
+class RemoteCommandDefaultTypeInternal;
+extern RemoteCommandDefaultTypeInternal _RemoteCommand_default_instance_;
+class RemoteCommandResult;
+class RemoteCommandResultDefaultTypeInternal;
+extern RemoteCommandResultDefaultTypeInternal _RemoteCommandResult_default_instance_;
+class RsuLookupKeyUploadRequest;
+class RsuLookupKeyUploadRequestDefaultTypeInternal;
+extern RsuLookupKeyUploadRequestDefaultTypeInternal _RsuLookupKeyUploadRequest_default_instance_;
+class RsuLookupKeyUploadResponse;
+class RsuLookupKeyUploadResponseDefaultTypeInternal;
+extern RsuLookupKeyUploadResponseDefaultTypeInternal _RsuLookupKeyUploadResponse_default_instance_;
+class SamlParametersProto;
+class SamlParametersProtoDefaultTypeInternal;
+extern SamlParametersProtoDefaultTypeInternal _SamlParametersProto_default_instance_;
+class ScreenTimeSpan;
+class ScreenTimeSpanDefaultTypeInternal;
+extern ScreenTimeSpanDefaultTypeInternal _ScreenTimeSpan_default_instance_;
+class SessionStatusReportRequest;
+class SessionStatusReportRequestDefaultTypeInternal;
+extern SessionStatusReportRequestDefaultTypeInternal _SessionStatusReportRequest_default_instance_;
+class SessionStatusReportResponse;
+class SessionStatusReportResponseDefaultTypeInternal;
+extern SessionStatusReportResponseDefaultTypeInternal _SessionStatusReportResponse_default_instance_;
+class SignedData;
+class SignedDataDefaultTypeInternal;
+extern SignedDataDefaultTypeInternal _SignedData_default_instance_;
+class SmbiosInfo;
+class SmbiosInfoDefaultTypeInternal;
+extern SmbiosInfoDefaultTypeInternal _SmbiosInfo_default_instance_;
+class StartCsrRequest;
+class StartCsrRequestDefaultTypeInternal;
+extern StartCsrRequestDefaultTypeInternal _StartCsrRequest_default_instance_;
+class StartCsrResponse;
+class StartCsrResponseDefaultTypeInternal;
+extern StartCsrResponseDefaultTypeInternal _StartCsrResponse_default_instance_;
+class StatefulPartitionInfo;
+class StatefulPartitionInfoDefaultTypeInternal;
+extern StatefulPartitionInfoDefaultTypeInternal _StatefulPartitionInfo_default_instance_;
+class StorageStatus;
+class StorageStatusDefaultTypeInternal;
+extern StorageStatusDefaultTypeInternal _StorageStatus_default_instance_;
+class SystemFreeRamInfo;
+class SystemFreeRamInfoDefaultTypeInternal;
+extern SystemFreeRamInfoDefaultTypeInternal _SystemFreeRamInfo_default_instance_;
+class SystemState;
+class SystemStateDefaultTypeInternal;
+extern SystemStateDefaultTypeInternal _SystemState_default_instance_;
+class SystemStatus;
+class SystemStatusDefaultTypeInternal;
+extern SystemStatusDefaultTypeInternal _SystemStatus_default_instance_;
+class ThermalInfo;
+class ThermalInfoDefaultTypeInternal;
+extern ThermalInfoDefaultTypeInternal _ThermalInfo_default_instance_;
+class ThermalSample;
+class ThermalSampleDefaultTypeInternal;
+extern ThermalSampleDefaultTypeInternal _ThermalSample_default_instance_;
+class TimePeriod;
+class TimePeriodDefaultTypeInternal;
+extern TimePeriodDefaultTypeInternal _TimePeriod_default_instance_;
+class TimezoneInfo;
+class TimezoneInfoDefaultTypeInternal;
+extern TimezoneInfoDefaultTypeInternal _TimezoneInfo_default_instance_;
+class TpmStatusInfo;
+class TpmStatusInfoDefaultTypeInternal;
+extern TpmStatusInfoDefaultTypeInternal _TpmStatusInfo_default_instance_;
+class TpmSupportedFeatures;
+class TpmSupportedFeaturesDefaultTypeInternal;
+extern TpmSupportedFeaturesDefaultTypeInternal _TpmSupportedFeatures_default_instance_;
+class TpmVersionInfo;
+class TpmVersionInfoDefaultTypeInternal;
+extern TpmVersionInfoDefaultTypeInternal _TpmVersionInfo_default_instance_;
+class UploadEuiccInfoRequest;
+class UploadEuiccInfoRequestDefaultTypeInternal;
+extern UploadEuiccInfoRequestDefaultTypeInternal _UploadEuiccInfoRequest_default_instance_;
+class UploadEuiccInfoResponse;
+class UploadEuiccInfoResponseDefaultTypeInternal;
+extern UploadEuiccInfoResponseDefaultTypeInternal _UploadEuiccInfoResponse_default_instance_;
+class VolumeInfo;
+class VolumeInfoDefaultTypeInternal;
+extern VolumeInfoDefaultTypeInternal _VolumeInfo_default_instance_;
+}  // namespace enterprise_management
+PROTOBUF_NAMESPACE_OPEN
+template<> ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* Arena::CreateMaybeMessage<::enterprise_management::ActiveDirectoryEnrollPlayUserRequest>(Arena*);
+template<> ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* Arena::CreateMaybeMessage<::enterprise_management::ActiveDirectoryEnrollPlayUserResponse>(Arena*);
+template<> ::enterprise_management::ActiveDirectoryPlayActivityRequest* Arena::CreateMaybeMessage<::enterprise_management::ActiveDirectoryPlayActivityRequest>(Arena*);
+template<> ::enterprise_management::ActiveDirectoryPlayActivityResponse* Arena::CreateMaybeMessage<::enterprise_management::ActiveDirectoryPlayActivityResponse>(Arena*);
+template<> ::enterprise_management::ActiveDirectoryUserSigninRequest* Arena::CreateMaybeMessage<::enterprise_management::ActiveDirectoryUserSigninRequest>(Arena*);
+template<> ::enterprise_management::ActiveDirectoryUserSigninResponse* Arena::CreateMaybeMessage<::enterprise_management::ActiveDirectoryUserSigninResponse>(Arena*);
+template<> ::enterprise_management::ActiveTimePeriod* Arena::CreateMaybeMessage<::enterprise_management::ActiveTimePeriod>(Arena*);
+template<> ::enterprise_management::AndroidAppInfo* Arena::CreateMaybeMessage<::enterprise_management::AndroidAppInfo>(Arena*);
+template<> ::enterprise_management::AndroidAppPermission* Arena::CreateMaybeMessage<::enterprise_management::AndroidAppPermission>(Arena*);
+template<> ::enterprise_management::AndroidStatus* Arena::CreateMaybeMessage<::enterprise_management::AndroidStatus>(Arena*);
+template<> ::enterprise_management::App* Arena::CreateMaybeMessage<::enterprise_management::App>(Arena*);
+template<> ::enterprise_management::AppActivity* Arena::CreateMaybeMessage<::enterprise_management::AppActivity>(Arena*);
+template<> ::enterprise_management::AppInfo* Arena::CreateMaybeMessage<::enterprise_management::AppInfo>(Arena*);
+template<> ::enterprise_management::AppInstallReport* Arena::CreateMaybeMessage<::enterprise_management::AppInstallReport>(Arena*);
+template<> ::enterprise_management::AppInstallReportLogEvent* Arena::CreateMaybeMessage<::enterprise_management::AppInstallReportLogEvent>(Arena*);
+template<> ::enterprise_management::AppInstallReportRequest* Arena::CreateMaybeMessage<::enterprise_management::AppInstallReportRequest>(Arena*);
+template<> ::enterprise_management::AppInstallReportResponse* Arena::CreateMaybeMessage<::enterprise_management::AppInstallReportResponse>(Arena*);
+template<> ::enterprise_management::AppStatus* Arena::CreateMaybeMessage<::enterprise_management::AppStatus>(Arena*);
+template<> ::enterprise_management::BacklightInfo* Arena::CreateMaybeMessage<::enterprise_management::BacklightInfo>(Arena*);
+template<> ::enterprise_management::BatteryInfo* Arena::CreateMaybeMessage<::enterprise_management::BatteryInfo>(Arena*);
+template<> ::enterprise_management::BatterySample* Arena::CreateMaybeMessage<::enterprise_management::BatterySample>(Arena*);
+template<> ::enterprise_management::BluetoothAdapterInfo* Arena::CreateMaybeMessage<::enterprise_management::BluetoothAdapterInfo>(Arena*);
+template<> ::enterprise_management::BoardStatus* Arena::CreateMaybeMessage<::enterprise_management::BoardStatus>(Arena*);
+template<> ::enterprise_management::BootInfo* Arena::CreateMaybeMessage<::enterprise_management::BootInfo>(Arena*);
+template<> ::enterprise_management::BrowserDeviceIdentifier* Arena::CreateMaybeMessage<::enterprise_management::BrowserDeviceIdentifier>(Arena*);
+template<> ::enterprise_management::BrowserPublicKeyUploadRequest* Arena::CreateMaybeMessage<::enterprise_management::BrowserPublicKeyUploadRequest>(Arena*);
+template<> ::enterprise_management::BrowserPublicKeyUploadResponse* Arena::CreateMaybeMessage<::enterprise_management::BrowserPublicKeyUploadResponse>(Arena*);
+template<> ::enterprise_management::BrowserReport* Arena::CreateMaybeMessage<::enterprise_management::BrowserReport>(Arena*);
+template<> ::enterprise_management::CPUTempInfo* Arena::CreateMaybeMessage<::enterprise_management::CPUTempInfo>(Arena*);
+template<> ::enterprise_management::CertificateBasedDeviceRegisterRequest* Arena::CreateMaybeMessage<::enterprise_management::CertificateBasedDeviceRegisterRequest>(Arena*);
+template<> ::enterprise_management::CertificateBasedDeviceRegistrationData* Arena::CreateMaybeMessage<::enterprise_management::CertificateBasedDeviceRegistrationData>(Arena*);
+template<> ::enterprise_management::CheckAndroidManagementRequest* Arena::CreateMaybeMessage<::enterprise_management::CheckAndroidManagementRequest>(Arena*);
+template<> ::enterprise_management::CheckAndroidManagementResponse* Arena::CreateMaybeMessage<::enterprise_management::CheckAndroidManagementResponse>(Arena*);
+template<> ::enterprise_management::CheckDeviceLicenseRequest* Arena::CreateMaybeMessage<::enterprise_management::CheckDeviceLicenseRequest>(Arena*);
+template<> ::enterprise_management::CheckDeviceLicenseResponse* Arena::CreateMaybeMessage<::enterprise_management::CheckDeviceLicenseResponse>(Arena*);
+template<> ::enterprise_management::CheckDevicePairingRequest* Arena::CreateMaybeMessage<::enterprise_management::CheckDevicePairingRequest>(Arena*);
+template<> ::enterprise_management::CheckDevicePairingResponse* Arena::CreateMaybeMessage<::enterprise_management::CheckDevicePairingResponse>(Arena*);
+template<> ::enterprise_management::CheckUserAccountRequest* Arena::CreateMaybeMessage<::enterprise_management::CheckUserAccountRequest>(Arena*);
+template<> ::enterprise_management::CheckUserAccountResponse* Arena::CreateMaybeMessage<::enterprise_management::CheckUserAccountResponse>(Arena*);
+template<> ::enterprise_management::ChildStatusReportRequest* Arena::CreateMaybeMessage<::enterprise_management::ChildStatusReportRequest>(Arena*);
+template<> ::enterprise_management::ChildStatusReportResponse* Arena::CreateMaybeMessage<::enterprise_management::ChildStatusReportResponse>(Arena*);
+template<> ::enterprise_management::ChromeDesktopReportRequest* Arena::CreateMaybeMessage<::enterprise_management::ChromeDesktopReportRequest>(Arena*);
+template<> ::enterprise_management::ChromeDesktopReportResponse* Arena::CreateMaybeMessage<::enterprise_management::ChromeDesktopReportResponse>(Arena*);
+template<> ::enterprise_management::ChromeOsUserReportRequest* Arena::CreateMaybeMessage<::enterprise_management::ChromeOsUserReportRequest>(Arena*);
+template<> ::enterprise_management::ChromeOsUserReportResponse* Arena::CreateMaybeMessage<::enterprise_management::ChromeOsUserReportResponse>(Arena*);
+template<> ::enterprise_management::ChromeProfileReportRequest* Arena::CreateMaybeMessage<::enterprise_management::ChromeProfileReportRequest>(Arena*);
+template<> ::enterprise_management::ChromeProfileReportResponse* Arena::CreateMaybeMessage<::enterprise_management::ChromeProfileReportResponse>(Arena*);
+template<> ::enterprise_management::ChromeSignedInUser* Arena::CreateMaybeMessage<::enterprise_management::ChromeSignedInUser>(Arena*);
+template<> ::enterprise_management::ChromeUserProfileInfo* Arena::CreateMaybeMessage<::enterprise_management::ChromeUserProfileInfo>(Arena*);
+template<> ::enterprise_management::ChromeUserProfileReport* Arena::CreateMaybeMessage<::enterprise_management::ChromeUserProfileReport>(Arena*);
+template<> ::enterprise_management::ClientActionRequired* Arena::CreateMaybeMessage<::enterprise_management::ClientActionRequired>(Arena*);
+template<> ::enterprise_management::ClientCertificateProvisioningRequest* Arena::CreateMaybeMessage<::enterprise_management::ClientCertificateProvisioningRequest>(Arena*);
+template<> ::enterprise_management::ClientCertificateProvisioningResponse* Arena::CreateMaybeMessage<::enterprise_management::ClientCertificateProvisioningResponse>(Arena*);
+template<> ::enterprise_management::CpuCStateInfo* Arena::CreateMaybeMessage<::enterprise_management::CpuCStateInfo>(Arena*);
+template<> ::enterprise_management::CpuInfo* Arena::CreateMaybeMessage<::enterprise_management::CpuInfo>(Arena*);
+template<> ::enterprise_management::CpuUtilizationInfo* Arena::CreateMaybeMessage<::enterprise_management::CpuUtilizationInfo>(Arena*);
+template<> ::enterprise_management::CrashReportInfo* Arena::CreateMaybeMessage<::enterprise_management::CrashReportInfo>(Arena*);
+template<> ::enterprise_management::CrostiniApp* Arena::CreateMaybeMessage<::enterprise_management::CrostiniApp>(Arena*);
+template<> ::enterprise_management::CrostiniStatus* Arena::CreateMaybeMessage<::enterprise_management::CrostiniStatus>(Arena*);
+template<> ::enterprise_management::CustomerLogo* Arena::CreateMaybeMessage<::enterprise_management::CustomerLogo>(Arena*);
+template<> ::enterprise_management::DEPRECATEDPolicyPublicKeyAndDomain* Arena::CreateMaybeMessage<::enterprise_management::DEPRECATEDPolicyPublicKeyAndDomain>(Arena*);
+template<> ::enterprise_management::DeviceAttributeUpdatePermissionRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceAttributeUpdatePermissionRequest>(Arena*);
+template<> ::enterprise_management::DeviceAttributeUpdatePermissionResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceAttributeUpdatePermissionResponse>(Arena*);
+template<> ::enterprise_management::DeviceAttributeUpdateRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceAttributeUpdateRequest>(Arena*);
+template<> ::enterprise_management::DeviceAttributeUpdateResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceAttributeUpdateResponse>(Arena*);
+template<> ::enterprise_management::DeviceAutoEnrollmentRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceAutoEnrollmentRequest>(Arena*);
+template<> ::enterprise_management::DeviceAutoEnrollmentResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceAutoEnrollmentResponse>(Arena*);
+template<> ::enterprise_management::DeviceCertUploadRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceCertUploadRequest>(Arena*);
+template<> ::enterprise_management::DeviceCertUploadResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceCertUploadResponse>(Arena*);
+template<> ::enterprise_management::DeviceInitialEnrollmentStateRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceInitialEnrollmentStateRequest>(Arena*);
+template<> ::enterprise_management::DeviceInitialEnrollmentStateResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceInitialEnrollmentStateResponse>(Arena*);
+template<> ::enterprise_management::DeviceManagementRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceManagementRequest>(Arena*);
+template<> ::enterprise_management::DeviceManagementResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceManagementResponse>(Arena*);
+template<> ::enterprise_management::DevicePairingRequest* Arena::CreateMaybeMessage<::enterprise_management::DevicePairingRequest>(Arena*);
+template<> ::enterprise_management::DevicePairingResponse* Arena::CreateMaybeMessage<::enterprise_management::DevicePairingResponse>(Arena*);
+template<> ::enterprise_management::DevicePolicyRequest* Arena::CreateMaybeMessage<::enterprise_management::DevicePolicyRequest>(Arena*);
+template<> ::enterprise_management::DevicePolicyResponse* Arena::CreateMaybeMessage<::enterprise_management::DevicePolicyResponse>(Arena*);
+template<> ::enterprise_management::DeviceRegisterConfiguration* Arena::CreateMaybeMessage<::enterprise_management::DeviceRegisterConfiguration>(Arena*);
+template<> ::enterprise_management::DeviceRegisterIdentification* Arena::CreateMaybeMessage<::enterprise_management::DeviceRegisterIdentification>(Arena*);
+template<> ::enterprise_management::DeviceRegisterRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceRegisterRequest>(Arena*);
+template<> ::enterprise_management::DeviceRegisterResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceRegisterResponse>(Arena*);
+template<> ::enterprise_management::DeviceRemoteCommandRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceRemoteCommandRequest>(Arena*);
+template<> ::enterprise_management::DeviceRemoteCommandResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceRemoteCommandResponse>(Arena*);
+template<> ::enterprise_management::DeviceServiceApiAccessRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceServiceApiAccessRequest>(Arena*);
+template<> ::enterprise_management::DeviceServiceApiAccessResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceServiceApiAccessResponse>(Arena*);
+template<> ::enterprise_management::DeviceState* Arena::CreateMaybeMessage<::enterprise_management::DeviceState>(Arena*);
+template<> ::enterprise_management::DeviceStateKeyUpdateRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceStateKeyUpdateRequest>(Arena*);
+template<> ::enterprise_management::DeviceStateRetrievalInfo* Arena::CreateMaybeMessage<::enterprise_management::DeviceStateRetrievalInfo>(Arena*);
+template<> ::enterprise_management::DeviceStateRetrievalRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceStateRetrievalRequest>(Arena*);
+template<> ::enterprise_management::DeviceStateRetrievalResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceStateRetrievalResponse>(Arena*);
+template<> ::enterprise_management::DeviceStatusReportRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceStatusReportRequest>(Arena*);
+template<> ::enterprise_management::DeviceStatusReportResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceStatusReportResponse>(Arena*);
+template<> ::enterprise_management::DeviceUnregisterRequest* Arena::CreateMaybeMessage<::enterprise_management::DeviceUnregisterRequest>(Arena*);
+template<> ::enterprise_management::DeviceUnregisterResponse* Arena::CreateMaybeMessage<::enterprise_management::DeviceUnregisterResponse>(Arena*);
+template<> ::enterprise_management::DeviceUser* Arena::CreateMaybeMessage<::enterprise_management::DeviceUser>(Arena*);
+template<> ::enterprise_management::DisabledState* Arena::CreateMaybeMessage<::enterprise_management::DisabledState>(Arena*);
+template<> ::enterprise_management::DiskInfo* Arena::CreateMaybeMessage<::enterprise_management::DiskInfo>(Arena*);
+template<> ::enterprise_management::DiskLifetimeEstimation* Arena::CreateMaybeMessage<::enterprise_management::DiskLifetimeEstimation>(Arena*);
+template<> ::enterprise_management::DisplayInfo* Arena::CreateMaybeMessage<::enterprise_management::DisplayInfo>(Arena*);
+template<> ::enterprise_management::DownloadCertRequest* Arena::CreateMaybeMessage<::enterprise_management::DownloadCertRequest>(Arena*);
+template<> ::enterprise_management::DownloadCertResponse* Arena::CreateMaybeMessage<::enterprise_management::DownloadCertResponse>(Arena*);
+template<> ::enterprise_management::EFIVars* Arena::CreateMaybeMessage<::enterprise_management::EFIVars>(Arena*);
+template<> ::enterprise_management::ESimProfileInfo* Arena::CreateMaybeMessage<::enterprise_management::ESimProfileInfo>(Arena*);
+template<> ::enterprise_management::Extension* Arena::CreateMaybeMessage<::enterprise_management::Extension>(Arena*);
+template<> ::enterprise_management::ExtensionInstallReport* Arena::CreateMaybeMessage<::enterprise_management::ExtensionInstallReport>(Arena*);
+template<> ::enterprise_management::ExtensionInstallReportLogEvent* Arena::CreateMaybeMessage<::enterprise_management::ExtensionInstallReportLogEvent>(Arena*);
+template<> ::enterprise_management::ExtensionInstallReportRequest* Arena::CreateMaybeMessage<::enterprise_management::ExtensionInstallReportRequest>(Arena*);
+template<> ::enterprise_management::ExtensionPolicy* Arena::CreateMaybeMessage<::enterprise_management::ExtensionPolicy>(Arena*);
+template<> ::enterprise_management::ExtensionRequest* Arena::CreateMaybeMessage<::enterprise_management::ExtensionRequest>(Arena*);
+template<> ::enterprise_management::FanInfo* Arena::CreateMaybeMessage<::enterprise_management::FanInfo>(Arena*);
+template<> ::enterprise_management::FinishCsrRequest* Arena::CreateMaybeMessage<::enterprise_management::FinishCsrRequest>(Arena*);
+template<> ::enterprise_management::FinishCsrResponse* Arena::CreateMaybeMessage<::enterprise_management::FinishCsrResponse>(Arena*);
+template<> ::enterprise_management::GcmIdUpdateRequest* Arena::CreateMaybeMessage<::enterprise_management::GcmIdUpdateRequest>(Arena*);
+template<> ::enterprise_management::GcmIdUpdateResponse* Arena::CreateMaybeMessage<::enterprise_management::GcmIdUpdateResponse>(Arena*);
+template<> ::enterprise_management::GlobalCpuInfo* Arena::CreateMaybeMessage<::enterprise_management::GlobalCpuInfo>(Arena*);
+template<> ::enterprise_management::GraphicsAdapterInfo* Arena::CreateMaybeMessage<::enterprise_management::GraphicsAdapterInfo>(Arena*);
+template<> ::enterprise_management::GraphicsStatus* Arena::CreateMaybeMessage<::enterprise_management::GraphicsStatus>(Arena*);
+template<> ::enterprise_management::KernelParameters* Arena::CreateMaybeMessage<::enterprise_management::KernelParameters>(Arena*);
+template<> ::enterprise_management::LaCrOsBrowserReport* Arena::CreateMaybeMessage<::enterprise_management::LaCrOsBrowserReport>(Arena*);
+template<> ::enterprise_management::LicenseAvailability* Arena::CreateMaybeMessage<::enterprise_management::LicenseAvailability>(Arena*);
+template<> ::enterprise_management::LicenseType* Arena::CreateMaybeMessage<::enterprise_management::LicenseType>(Arena*);
+template<> ::enterprise_management::LogicalCpuInfo* Arena::CreateMaybeMessage<::enterprise_management::LogicalCpuInfo>(Arena*);
+template<> ::enterprise_management::MemoryInfo* Arena::CreateMaybeMessage<::enterprise_management::MemoryInfo>(Arena*);
+template<> ::enterprise_management::NetworkAdapterInfo* Arena::CreateMaybeMessage<::enterprise_management::NetworkAdapterInfo>(Arena*);
+template<> ::enterprise_management::NetworkInterface* Arena::CreateMaybeMessage<::enterprise_management::NetworkInterface>(Arena*);
+template<> ::enterprise_management::NetworkState* Arena::CreateMaybeMessage<::enterprise_management::NetworkState>(Arena*);
+template<> ::enterprise_management::OSReport* Arena::CreateMaybeMessage<::enterprise_management::OSReport>(Arena*);
+template<> ::enterprise_management::OsUpdateStatus* Arena::CreateMaybeMessage<::enterprise_management::OsUpdateStatus>(Arena*);
+template<> ::enterprise_management::Plugin* Arena::CreateMaybeMessage<::enterprise_management::Plugin>(Arena*);
+template<> ::enterprise_management::Policy* Arena::CreateMaybeMessage<::enterprise_management::Policy>(Arena*);
+template<> ::enterprise_management::PolicyData* Arena::CreateMaybeMessage<::enterprise_management::PolicyData>(Arena*);
+template<> ::enterprise_management::PolicyFetchRequest* Arena::CreateMaybeMessage<::enterprise_management::PolicyFetchRequest>(Arena*);
+template<> ::enterprise_management::PolicyFetchResponse* Arena::CreateMaybeMessage<::enterprise_management::PolicyFetchResponse>(Arena*);
+template<> ::enterprise_management::PolicyFetchTimestamp* Arena::CreateMaybeMessage<::enterprise_management::PolicyFetchTimestamp>(Arena*);
+template<> ::enterprise_management::PolicyValidationReportRequest* Arena::CreateMaybeMessage<::enterprise_management::PolicyValidationReportRequest>(Arena*);
+template<> ::enterprise_management::PolicyValidationReportResponse* Arena::CreateMaybeMessage<::enterprise_management::PolicyValidationReportResponse>(Arena*);
+template<> ::enterprise_management::PolicyValueValidationIssue* Arena::CreateMaybeMessage<::enterprise_management::PolicyValueValidationIssue>(Arena*);
+template<> ::enterprise_management::PowerStatus* Arena::CreateMaybeMessage<::enterprise_management::PowerStatus>(Arena*);
+template<> ::enterprise_management::PrintJobEvent* Arena::CreateMaybeMessage<::enterprise_management::PrintJobEvent>(Arena*);
+template<> ::enterprise_management::PrintJobEvent_PrintJobConfiguration* Arena::CreateMaybeMessage<::enterprise_management::PrintJobEvent_PrintJobConfiguration>(Arena*);
+template<> ::enterprise_management::PrintJobEvent_PrintSettings* Arena::CreateMaybeMessage<::enterprise_management::PrintJobEvent_PrintSettings>(Arena*);
+template<> ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* Arena::CreateMaybeMessage<::enterprise_management::PrintJobEvent_PrintSettings_MediaSize>(Arena*);
+template<> ::enterprise_management::PrintJobEvent_Printer* Arena::CreateMaybeMessage<::enterprise_management::PrintJobEvent_Printer>(Arena*);
+template<> ::enterprise_management::PrivateSetMembershipRequest* Arena::CreateMaybeMessage<::enterprise_management::PrivateSetMembershipRequest>(Arena*);
+template<> ::enterprise_management::PrivateSetMembershipResponse* Arena::CreateMaybeMessage<::enterprise_management::PrivateSetMembershipResponse>(Arena*);
+template<> ::enterprise_management::PrivateSetMembershipRlweRequest* Arena::CreateMaybeMessage<::enterprise_management::PrivateSetMembershipRlweRequest>(Arena*);
+template<> ::enterprise_management::PrivateSetMembershipRlweResponse* Arena::CreateMaybeMessage<::enterprise_management::PrivateSetMembershipRlweResponse>(Arena*);
+template<> ::enterprise_management::PublicKeyVerificationData* Arena::CreateMaybeMessage<::enterprise_management::PublicKeyVerificationData>(Arena*);
+template<> ::enterprise_management::PublicSamlUserRequest* Arena::CreateMaybeMessage<::enterprise_management::PublicSamlUserRequest>(Arena*);
+template<> ::enterprise_management::PublicSamlUserResponse* Arena::CreateMaybeMessage<::enterprise_management::PublicSamlUserResponse>(Arena*);
+template<> ::enterprise_management::RefreshAccountRequest* Arena::CreateMaybeMessage<::enterprise_management::RefreshAccountRequest>(Arena*);
+template<> ::enterprise_management::RefreshAccountResponse* Arena::CreateMaybeMessage<::enterprise_management::RefreshAccountResponse>(Arena*);
+template<> ::enterprise_management::RegisterBrowserRequest* Arena::CreateMaybeMessage<::enterprise_management::RegisterBrowserRequest>(Arena*);
+template<> ::enterprise_management::RemoteCommand* Arena::CreateMaybeMessage<::enterprise_management::RemoteCommand>(Arena*);
+template<> ::enterprise_management::RemoteCommandResult* Arena::CreateMaybeMessage<::enterprise_management::RemoteCommandResult>(Arena*);
+template<> ::enterprise_management::RsuLookupKeyUploadRequest* Arena::CreateMaybeMessage<::enterprise_management::RsuLookupKeyUploadRequest>(Arena*);
+template<> ::enterprise_management::RsuLookupKeyUploadResponse* Arena::CreateMaybeMessage<::enterprise_management::RsuLookupKeyUploadResponse>(Arena*);
+template<> ::enterprise_management::SamlParametersProto* Arena::CreateMaybeMessage<::enterprise_management::SamlParametersProto>(Arena*);
+template<> ::enterprise_management::ScreenTimeSpan* Arena::CreateMaybeMessage<::enterprise_management::ScreenTimeSpan>(Arena*);
+template<> ::enterprise_management::SessionStatusReportRequest* Arena::CreateMaybeMessage<::enterprise_management::SessionStatusReportRequest>(Arena*);
+template<> ::enterprise_management::SessionStatusReportResponse* Arena::CreateMaybeMessage<::enterprise_management::SessionStatusReportResponse>(Arena*);
+template<> ::enterprise_management::SignedData* Arena::CreateMaybeMessage<::enterprise_management::SignedData>(Arena*);
+template<> ::enterprise_management::SmbiosInfo* Arena::CreateMaybeMessage<::enterprise_management::SmbiosInfo>(Arena*);
+template<> ::enterprise_management::StartCsrRequest* Arena::CreateMaybeMessage<::enterprise_management::StartCsrRequest>(Arena*);
+template<> ::enterprise_management::StartCsrResponse* Arena::CreateMaybeMessage<::enterprise_management::StartCsrResponse>(Arena*);
+template<> ::enterprise_management::StatefulPartitionInfo* Arena::CreateMaybeMessage<::enterprise_management::StatefulPartitionInfo>(Arena*);
+template<> ::enterprise_management::StorageStatus* Arena::CreateMaybeMessage<::enterprise_management::StorageStatus>(Arena*);
+template<> ::enterprise_management::SystemFreeRamInfo* Arena::CreateMaybeMessage<::enterprise_management::SystemFreeRamInfo>(Arena*);
+template<> ::enterprise_management::SystemState* Arena::CreateMaybeMessage<::enterprise_management::SystemState>(Arena*);
+template<> ::enterprise_management::SystemStatus* Arena::CreateMaybeMessage<::enterprise_management::SystemStatus>(Arena*);
+template<> ::enterprise_management::ThermalInfo* Arena::CreateMaybeMessage<::enterprise_management::ThermalInfo>(Arena*);
+template<> ::enterprise_management::ThermalSample* Arena::CreateMaybeMessage<::enterprise_management::ThermalSample>(Arena*);
+template<> ::enterprise_management::TimePeriod* Arena::CreateMaybeMessage<::enterprise_management::TimePeriod>(Arena*);
+template<> ::enterprise_management::TimezoneInfo* Arena::CreateMaybeMessage<::enterprise_management::TimezoneInfo>(Arena*);
+template<> ::enterprise_management::TpmStatusInfo* Arena::CreateMaybeMessage<::enterprise_management::TpmStatusInfo>(Arena*);
+template<> ::enterprise_management::TpmSupportedFeatures* Arena::CreateMaybeMessage<::enterprise_management::TpmSupportedFeatures>(Arena*);
+template<> ::enterprise_management::TpmVersionInfo* Arena::CreateMaybeMessage<::enterprise_management::TpmVersionInfo>(Arena*);
+template<> ::enterprise_management::UploadEuiccInfoRequest* Arena::CreateMaybeMessage<::enterprise_management::UploadEuiccInfoRequest>(Arena*);
+template<> ::enterprise_management::UploadEuiccInfoResponse* Arena::CreateMaybeMessage<::enterprise_management::UploadEuiccInfoResponse>(Arena*);
+template<> ::enterprise_management::VolumeInfo* Arena::CreateMaybeMessage<::enterprise_management::VolumeInfo>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace enterprise_management {
+
+enum LicenseType_LicenseTypeEnum : int {
+  LicenseType_LicenseTypeEnum_UNDEFINED = 0,
+  LicenseType_LicenseTypeEnum_CDM_PERPETUAL = 1,
+  LicenseType_LicenseTypeEnum_CDM_ANNUAL = 2,
+  LicenseType_LicenseTypeEnum_KIOSK = 3
+};
+bool LicenseType_LicenseTypeEnum_IsValid(int value);
+constexpr LicenseType_LicenseTypeEnum LicenseType_LicenseTypeEnum_LicenseTypeEnum_MIN = LicenseType_LicenseTypeEnum_UNDEFINED;
+constexpr LicenseType_LicenseTypeEnum LicenseType_LicenseTypeEnum_LicenseTypeEnum_MAX = LicenseType_LicenseTypeEnum_KIOSK;
+constexpr int LicenseType_LicenseTypeEnum_LicenseTypeEnum_ARRAYSIZE = LicenseType_LicenseTypeEnum_LicenseTypeEnum_MAX + 1;
+
+const std::string& LicenseType_LicenseTypeEnum_Name(LicenseType_LicenseTypeEnum value);
+template<typename T>
+inline const std::string& LicenseType_LicenseTypeEnum_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, LicenseType_LicenseTypeEnum>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function LicenseType_LicenseTypeEnum_Name.");
+  return LicenseType_LicenseTypeEnum_Name(static_cast<LicenseType_LicenseTypeEnum>(enum_t_value));
+}
+bool LicenseType_LicenseTypeEnum_Parse(
+    const std::string& name, LicenseType_LicenseTypeEnum* value);
+enum DeviceRegisterRequest_Type : int {
+  DeviceRegisterRequest_Type_TT = 0,
+  DeviceRegisterRequest_Type_USER = 1,
+  DeviceRegisterRequest_Type_DEVICE = 2,
+  DeviceRegisterRequest_Type_BROWSER = 3,
+  DeviceRegisterRequest_Type_ANDROID_BROWSER = 4,
+  DeviceRegisterRequest_Type_IOS_BROWSER = 6
+};
+bool DeviceRegisterRequest_Type_IsValid(int value);
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest_Type_Type_MIN = DeviceRegisterRequest_Type_TT;
+constexpr DeviceRegisterRequest_Type DeviceRegisterRequest_Type_Type_MAX = DeviceRegisterRequest_Type_IOS_BROWSER;
+constexpr int DeviceRegisterRequest_Type_Type_ARRAYSIZE = DeviceRegisterRequest_Type_Type_MAX + 1;
+
+const std::string& DeviceRegisterRequest_Type_Name(DeviceRegisterRequest_Type value);
+template<typename T>
+inline const std::string& DeviceRegisterRequest_Type_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceRegisterRequest_Type>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceRegisterRequest_Type_Name.");
+  return DeviceRegisterRequest_Type_Name(static_cast<DeviceRegisterRequest_Type>(enum_t_value));
+}
+bool DeviceRegisterRequest_Type_Parse(
+    const std::string& name, DeviceRegisterRequest_Type* value);
+enum DeviceRegisterRequest_Flavor : int {
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_MANUAL = 0,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_MANUAL_RENEW = 1,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_LOCAL_FORCED = 2,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_LOCAL_ADVERTISED = 3,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_SERVER_FORCED = 4,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_SERVER_ADVERTISED = 5,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_RECOVERY = 6,
+  DeviceRegisterRequest_Flavor_FLAVOR_USER_REGISTRATION = 7,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION = 8,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_LOCAL_FORCED = 9,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_SERVER_FORCED = 10,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_MANUAL_FALLBACK = 11,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_INITIAL_SERVER_FORCED = 13,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_SERVER_FORCED = 14,
+  DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_MANUAL_FALLBACK = 15
+};
+bool DeviceRegisterRequest_Flavor_IsValid(int value);
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest_Flavor_Flavor_MIN = DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_MANUAL;
+constexpr DeviceRegisterRequest_Flavor DeviceRegisterRequest_Flavor_Flavor_MAX = DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_MANUAL_FALLBACK;
+constexpr int DeviceRegisterRequest_Flavor_Flavor_ARRAYSIZE = DeviceRegisterRequest_Flavor_Flavor_MAX + 1;
+
+const std::string& DeviceRegisterRequest_Flavor_Name(DeviceRegisterRequest_Flavor value);
+template<typename T>
+inline const std::string& DeviceRegisterRequest_Flavor_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceRegisterRequest_Flavor>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceRegisterRequest_Flavor_Name.");
+  return DeviceRegisterRequest_Flavor_Name(static_cast<DeviceRegisterRequest_Flavor>(enum_t_value));
+}
+bool DeviceRegisterRequest_Flavor_Parse(
+    const std::string& name, DeviceRegisterRequest_Flavor* value);
+enum DeviceRegisterRequest_Lifetime : int {
+  DeviceRegisterRequest_Lifetime_LIFETIME_UNDEFINED = 0,
+  DeviceRegisterRequest_Lifetime_LIFETIME_INDEFINITE = 1,
+  DeviceRegisterRequest_Lifetime_LIFETIME_EPHEMERAL_USER = 2
+};
+bool DeviceRegisterRequest_Lifetime_IsValid(int value);
+constexpr DeviceRegisterRequest_Lifetime DeviceRegisterRequest_Lifetime_Lifetime_MIN = DeviceRegisterRequest_Lifetime_LIFETIME_UNDEFINED;
+constexpr DeviceRegisterRequest_Lifetime DeviceRegisterRequest_Lifetime_Lifetime_MAX = DeviceRegisterRequest_Lifetime_LIFETIME_EPHEMERAL_USER;
+constexpr int DeviceRegisterRequest_Lifetime_Lifetime_ARRAYSIZE = DeviceRegisterRequest_Lifetime_Lifetime_MAX + 1;
+
+const std::string& DeviceRegisterRequest_Lifetime_Name(DeviceRegisterRequest_Lifetime value);
+template<typename T>
+inline const std::string& DeviceRegisterRequest_Lifetime_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceRegisterRequest_Lifetime>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceRegisterRequest_Lifetime_Name.");
+  return DeviceRegisterRequest_Lifetime_Name(static_cast<DeviceRegisterRequest_Lifetime>(enum_t_value));
+}
+bool DeviceRegisterRequest_Lifetime_Parse(
+    const std::string& name, DeviceRegisterRequest_Lifetime* value);
+enum DeviceRegisterRequest_PsmExecutionResult : int {
+  DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_UNKNOWN = 0,
+  DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_SUCCESSFUL_WITH_STATE = 1,
+  DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_SUCCESSFUL_WITHOUT_STATE = 2,
+  DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_ERROR = 3
+};
+bool DeviceRegisterRequest_PsmExecutionResult_IsValid(int value);
+constexpr DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest_PsmExecutionResult_PsmExecutionResult_MIN = DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_UNKNOWN;
+constexpr DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest_PsmExecutionResult_PsmExecutionResult_MAX = DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_ERROR;
+constexpr int DeviceRegisterRequest_PsmExecutionResult_PsmExecutionResult_ARRAYSIZE = DeviceRegisterRequest_PsmExecutionResult_PsmExecutionResult_MAX + 1;
+
+const std::string& DeviceRegisterRequest_PsmExecutionResult_Name(DeviceRegisterRequest_PsmExecutionResult value);
+template<typename T>
+inline const std::string& DeviceRegisterRequest_PsmExecutionResult_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceRegisterRequest_PsmExecutionResult>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceRegisterRequest_PsmExecutionResult_Name.");
+  return DeviceRegisterRequest_PsmExecutionResult_Name(static_cast<DeviceRegisterRequest_PsmExecutionResult>(enum_t_value));
+}
+bool DeviceRegisterRequest_PsmExecutionResult_Parse(
+    const std::string& name, DeviceRegisterRequest_PsmExecutionResult* value);
+enum CheckUserAccountResponse_UserAccountType : int {
+  CheckUserAccountResponse_UserAccountType_UNKNOWN_USER_ACCOUNT_TYPE = 0,
+  CheckUserAccountResponse_UserAccountType_NOT_EXIST = 1,
+  CheckUserAccountResponse_UserAccountType_CONSUMER = 2,
+  CheckUserAccountResponse_UserAccountType_DASHER = 3
+};
+bool CheckUserAccountResponse_UserAccountType_IsValid(int value);
+constexpr CheckUserAccountResponse_UserAccountType CheckUserAccountResponse_UserAccountType_UserAccountType_MIN = CheckUserAccountResponse_UserAccountType_UNKNOWN_USER_ACCOUNT_TYPE;
+constexpr CheckUserAccountResponse_UserAccountType CheckUserAccountResponse_UserAccountType_UserAccountType_MAX = CheckUserAccountResponse_UserAccountType_DASHER;
+constexpr int CheckUserAccountResponse_UserAccountType_UserAccountType_ARRAYSIZE = CheckUserAccountResponse_UserAccountType_UserAccountType_MAX + 1;
+
+const std::string& CheckUserAccountResponse_UserAccountType_Name(CheckUserAccountResponse_UserAccountType value);
+template<typename T>
+inline const std::string& CheckUserAccountResponse_UserAccountType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, CheckUserAccountResponse_UserAccountType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function CheckUserAccountResponse_UserAccountType_Name.");
+  return CheckUserAccountResponse_UserAccountType_Name(static_cast<CheckUserAccountResponse_UserAccountType>(enum_t_value));
+}
+bool CheckUserAccountResponse_UserAccountType_Parse(
+    const std::string& name, CheckUserAccountResponse_UserAccountType* value);
+enum DeviceRegisterResponse_DeviceMode : int {
+  DeviceRegisterResponse_DeviceMode_ENTERPRISE = 0,
+  DeviceRegisterResponse_DeviceMode_RETAIL_DEPRECATED = 1,
+  DeviceRegisterResponse_DeviceMode_CHROME_AD = 2,
+  DeviceRegisterResponse_DeviceMode_DEMO = 3
+};
+bool DeviceRegisterResponse_DeviceMode_IsValid(int value);
+constexpr DeviceRegisterResponse_DeviceMode DeviceRegisterResponse_DeviceMode_DeviceMode_MIN = DeviceRegisterResponse_DeviceMode_ENTERPRISE;
+constexpr DeviceRegisterResponse_DeviceMode DeviceRegisterResponse_DeviceMode_DeviceMode_MAX = DeviceRegisterResponse_DeviceMode_DEMO;
+constexpr int DeviceRegisterResponse_DeviceMode_DeviceMode_ARRAYSIZE = DeviceRegisterResponse_DeviceMode_DeviceMode_MAX + 1;
+
+const std::string& DeviceRegisterResponse_DeviceMode_Name(DeviceRegisterResponse_DeviceMode value);
+template<typename T>
+inline const std::string& DeviceRegisterResponse_DeviceMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceRegisterResponse_DeviceMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceRegisterResponse_DeviceMode_Name.");
+  return DeviceRegisterResponse_DeviceMode_Name(static_cast<DeviceRegisterResponse_DeviceMode>(enum_t_value));
+}
+bool DeviceRegisterResponse_DeviceMode_Parse(
+    const std::string& name, DeviceRegisterResponse_DeviceMode* value);
+enum DeviceCertUploadRequest_CertificateType : int {
+  DeviceCertUploadRequest_CertificateType_CERTIFICATE_TYPE_UNSPECIFIED = 0,
+  DeviceCertUploadRequest_CertificateType_ENTERPRISE_MACHINE_CERTIFICATE = 1,
+  DeviceCertUploadRequest_CertificateType_ENTERPRISE_ENROLLMENT_CERTIFICATE = 2
+};
+bool DeviceCertUploadRequest_CertificateType_IsValid(int value);
+constexpr DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest_CertificateType_CertificateType_MIN = DeviceCertUploadRequest_CertificateType_CERTIFICATE_TYPE_UNSPECIFIED;
+constexpr DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest_CertificateType_CertificateType_MAX = DeviceCertUploadRequest_CertificateType_ENTERPRISE_ENROLLMENT_CERTIFICATE;
+constexpr int DeviceCertUploadRequest_CertificateType_CertificateType_ARRAYSIZE = DeviceCertUploadRequest_CertificateType_CertificateType_MAX + 1;
+
+const std::string& DeviceCertUploadRequest_CertificateType_Name(DeviceCertUploadRequest_CertificateType value);
+template<typename T>
+inline const std::string& DeviceCertUploadRequest_CertificateType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceCertUploadRequest_CertificateType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceCertUploadRequest_CertificateType_Name.");
+  return DeviceCertUploadRequest_CertificateType_Name(static_cast<DeviceCertUploadRequest_CertificateType>(enum_t_value));
+}
+bool DeviceCertUploadRequest_CertificateType_Parse(
+    const std::string& name, DeviceCertUploadRequest_CertificateType* value);
+enum DeviceServiceApiAccessRequest_DeviceType : int {
+  DeviceServiceApiAccessRequest_DeviceType_CHROME_OS = 0,
+  DeviceServiceApiAccessRequest_DeviceType_ANDROID_OS = 1,
+  DeviceServiceApiAccessRequest_DeviceType_CHROME_OS_DEMO_MODE = 2,
+  DeviceServiceApiAccessRequest_DeviceType_CHROME_BROWSER = 3
+};
+bool DeviceServiceApiAccessRequest_DeviceType_IsValid(int value);
+constexpr DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest_DeviceType_DeviceType_MIN = DeviceServiceApiAccessRequest_DeviceType_CHROME_OS;
+constexpr DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest_DeviceType_DeviceType_MAX = DeviceServiceApiAccessRequest_DeviceType_CHROME_BROWSER;
+constexpr int DeviceServiceApiAccessRequest_DeviceType_DeviceType_ARRAYSIZE = DeviceServiceApiAccessRequest_DeviceType_DeviceType_MAX + 1;
+
+const std::string& DeviceServiceApiAccessRequest_DeviceType_Name(DeviceServiceApiAccessRequest_DeviceType value);
+template<typename T>
+inline const std::string& DeviceServiceApiAccessRequest_DeviceType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceServiceApiAccessRequest_DeviceType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceServiceApiAccessRequest_DeviceType_Name.");
+  return DeviceServiceApiAccessRequest_DeviceType_Name(static_cast<DeviceServiceApiAccessRequest_DeviceType>(enum_t_value));
+}
+bool DeviceServiceApiAccessRequest_DeviceType_Parse(
+    const std::string& name, DeviceServiceApiAccessRequest_DeviceType* value);
+enum PolicyFetchRequest_SignatureType : int {
+  PolicyFetchRequest_SignatureType_NONE = 0,
+  PolicyFetchRequest_SignatureType_SHA1_RSA = 1,
+  PolicyFetchRequest_SignatureType_SHA256_RSA = 2
+};
+bool PolicyFetchRequest_SignatureType_IsValid(int value);
+constexpr PolicyFetchRequest_SignatureType PolicyFetchRequest_SignatureType_SignatureType_MIN = PolicyFetchRequest_SignatureType_NONE;
+constexpr PolicyFetchRequest_SignatureType PolicyFetchRequest_SignatureType_SignatureType_MAX = PolicyFetchRequest_SignatureType_SHA256_RSA;
+constexpr int PolicyFetchRequest_SignatureType_SignatureType_ARRAYSIZE = PolicyFetchRequest_SignatureType_SignatureType_MAX + 1;
+
+const std::string& PolicyFetchRequest_SignatureType_Name(PolicyFetchRequest_SignatureType value);
+template<typename T>
+inline const std::string& PolicyFetchRequest_SignatureType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PolicyFetchRequest_SignatureType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PolicyFetchRequest_SignatureType_Name.");
+  return PolicyFetchRequest_SignatureType_Name(static_cast<PolicyFetchRequest_SignatureType>(enum_t_value));
+}
+bool PolicyFetchRequest_SignatureType_Parse(
+    const std::string& name, PolicyFetchRequest_SignatureType* value);
+enum DeviceState_DeviceMode : int {
+  DeviceState_DeviceMode_DEVICE_MODE_NORMAL = 0,
+  DeviceState_DeviceMode_DEVICE_MODE_DISABLED = 1
+};
+bool DeviceState_DeviceMode_IsValid(int value);
+constexpr DeviceState_DeviceMode DeviceState_DeviceMode_DeviceMode_MIN = DeviceState_DeviceMode_DEVICE_MODE_NORMAL;
+constexpr DeviceState_DeviceMode DeviceState_DeviceMode_DeviceMode_MAX = DeviceState_DeviceMode_DEVICE_MODE_DISABLED;
+constexpr int DeviceState_DeviceMode_DeviceMode_ARRAYSIZE = DeviceState_DeviceMode_DeviceMode_MAX + 1;
+
+const std::string& DeviceState_DeviceMode_Name(DeviceState_DeviceMode value);
+template<typename T>
+inline const std::string& DeviceState_DeviceMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceState_DeviceMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceState_DeviceMode_Name.");
+  return DeviceState_DeviceMode_Name(static_cast<DeviceState_DeviceMode>(enum_t_value));
+}
+bool DeviceState_DeviceMode_Parse(
+    const std::string& name, DeviceState_DeviceMode* value);
+enum PolicyData_AssociationState : int {
+  PolicyData_AssociationState_ACTIVE = 0,
+  PolicyData_AssociationState_UNMANAGED = 1,
+  PolicyData_AssociationState_DEPROVISIONED = 2
+};
+bool PolicyData_AssociationState_IsValid(int value);
+constexpr PolicyData_AssociationState PolicyData_AssociationState_AssociationState_MIN = PolicyData_AssociationState_ACTIVE;
+constexpr PolicyData_AssociationState PolicyData_AssociationState_AssociationState_MAX = PolicyData_AssociationState_DEPROVISIONED;
+constexpr int PolicyData_AssociationState_AssociationState_ARRAYSIZE = PolicyData_AssociationState_AssociationState_MAX + 1;
+
+const std::string& PolicyData_AssociationState_Name(PolicyData_AssociationState value);
+template<typename T>
+inline const std::string& PolicyData_AssociationState_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PolicyData_AssociationState>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PolicyData_AssociationState_Name.");
+  return PolicyData_AssociationState_Name(static_cast<PolicyData_AssociationState>(enum_t_value));
+}
+bool PolicyData_AssociationState_Parse(
+    const std::string& name, PolicyData_AssociationState* value);
+enum PolicyData_ManagementMode : int {
+  PolicyData_ManagementMode_LOCAL_OWNER = 0,
+  PolicyData_ManagementMode_ENTERPRISE_MANAGED = 1,
+  PolicyData_ManagementMode_OBSOLETE_CONSUMER_MANAGED = 2
+};
+bool PolicyData_ManagementMode_IsValid(int value);
+constexpr PolicyData_ManagementMode PolicyData_ManagementMode_ManagementMode_MIN = PolicyData_ManagementMode_LOCAL_OWNER;
+constexpr PolicyData_ManagementMode PolicyData_ManagementMode_ManagementMode_MAX = PolicyData_ManagementMode_OBSOLETE_CONSUMER_MANAGED;
+constexpr int PolicyData_ManagementMode_ManagementMode_ARRAYSIZE = PolicyData_ManagementMode_ManagementMode_MAX + 1;
+
+const std::string& PolicyData_ManagementMode_Name(PolicyData_ManagementMode value);
+template<typename T>
+inline const std::string& PolicyData_ManagementMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PolicyData_ManagementMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PolicyData_ManagementMode_Name.");
+  return PolicyData_ManagementMode_Name(static_cast<PolicyData_ManagementMode>(enum_t_value));
+}
+bool PolicyData_ManagementMode_Parse(
+    const std::string& name, PolicyData_ManagementMode* value);
+enum PolicyData_MarketSegment : int {
+  PolicyData_MarketSegment_MARKET_SEGMENT_UNSPECIFIED = 0,
+  PolicyData_MarketSegment_ENROLLED_EDUCATION = 1,
+  PolicyData_MarketSegment_ENROLLED_ENTERPRISE = 2
+};
+bool PolicyData_MarketSegment_IsValid(int value);
+constexpr PolicyData_MarketSegment PolicyData_MarketSegment_MarketSegment_MIN = PolicyData_MarketSegment_MARKET_SEGMENT_UNSPECIFIED;
+constexpr PolicyData_MarketSegment PolicyData_MarketSegment_MarketSegment_MAX = PolicyData_MarketSegment_ENROLLED_ENTERPRISE;
+constexpr int PolicyData_MarketSegment_MarketSegment_ARRAYSIZE = PolicyData_MarketSegment_MarketSegment_MAX + 1;
+
+const std::string& PolicyData_MarketSegment_Name(PolicyData_MarketSegment value);
+template<typename T>
+inline const std::string& PolicyData_MarketSegment_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PolicyData_MarketSegment>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PolicyData_MarketSegment_Name.");
+  return PolicyData_MarketSegment_Name(static_cast<PolicyData_MarketSegment>(enum_t_value));
+}
+bool PolicyData_MarketSegment_Parse(
+    const std::string& name, PolicyData_MarketSegment* value);
+enum PolicyData_MetricsLogSegment : int {
+  PolicyData_MetricsLogSegment_UNSPECIFIED = 0,
+  PolicyData_MetricsLogSegment_K12 = 1,
+  PolicyData_MetricsLogSegment_UNIVERSITY = 2,
+  PolicyData_MetricsLogSegment_NONPROFIT = 3,
+  PolicyData_MetricsLogSegment_ENTERPRISE = 4
+};
+bool PolicyData_MetricsLogSegment_IsValid(int value);
+constexpr PolicyData_MetricsLogSegment PolicyData_MetricsLogSegment_MetricsLogSegment_MIN = PolicyData_MetricsLogSegment_UNSPECIFIED;
+constexpr PolicyData_MetricsLogSegment PolicyData_MetricsLogSegment_MetricsLogSegment_MAX = PolicyData_MetricsLogSegment_ENTERPRISE;
+constexpr int PolicyData_MetricsLogSegment_MetricsLogSegment_ARRAYSIZE = PolicyData_MetricsLogSegment_MetricsLogSegment_MAX + 1;
+
+const std::string& PolicyData_MetricsLogSegment_Name(PolicyData_MetricsLogSegment value);
+template<typename T>
+inline const std::string& PolicyData_MetricsLogSegment_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PolicyData_MetricsLogSegment>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PolicyData_MetricsLogSegment_Name.");
+  return PolicyData_MetricsLogSegment_Name(static_cast<PolicyData_MetricsLogSegment>(enum_t_value));
+}
+bool PolicyData_MetricsLogSegment_Parse(
+    const std::string& name, PolicyData_MetricsLogSegment* value);
+enum ActiveTimePeriod_SessionType : int {
+  ActiveTimePeriod_SessionType_SESSION_UNKNOWN = 0,
+  ActiveTimePeriod_SessionType_SESSION_AFFILIATED_USER = 1,
+  ActiveTimePeriod_SessionType_SESSION_MANAGED_GUEST = 2,
+  ActiveTimePeriod_SessionType_SESSION_KIOSK = 3,
+  ActiveTimePeriod_SessionType_SESSION_ARC_KIOSK = 4,
+  ActiveTimePeriod_SessionType_SESSION_WEB_KIOSK = 5
+};
+bool ActiveTimePeriod_SessionType_IsValid(int value);
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod_SessionType_SessionType_MIN = ActiveTimePeriod_SessionType_SESSION_UNKNOWN;
+constexpr ActiveTimePeriod_SessionType ActiveTimePeriod_SessionType_SessionType_MAX = ActiveTimePeriod_SessionType_SESSION_WEB_KIOSK;
+constexpr int ActiveTimePeriod_SessionType_SessionType_ARRAYSIZE = ActiveTimePeriod_SessionType_SessionType_MAX + 1;
+
+const std::string& ActiveTimePeriod_SessionType_Name(ActiveTimePeriod_SessionType value);
+template<typename T>
+inline const std::string& ActiveTimePeriod_SessionType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ActiveTimePeriod_SessionType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ActiveTimePeriod_SessionType_Name.");
+  return ActiveTimePeriod_SessionType_Name(static_cast<ActiveTimePeriod_SessionType>(enum_t_value));
+}
+bool ActiveTimePeriod_SessionType_Parse(
+    const std::string& name, ActiveTimePeriod_SessionType* value);
+enum NetworkInterface_NetworkDeviceType : int {
+  NetworkInterface_NetworkDeviceType_TYPE_ETHERNET = 0,
+  NetworkInterface_NetworkDeviceType_TYPE_WIFI = 1,
+  NetworkInterface_NetworkDeviceType_TYPE_BLUETOOTH = 3,
+  NetworkInterface_NetworkDeviceType_TYPE_CELLULAR = 4
+};
+bool NetworkInterface_NetworkDeviceType_IsValid(int value);
+constexpr NetworkInterface_NetworkDeviceType NetworkInterface_NetworkDeviceType_NetworkDeviceType_MIN = NetworkInterface_NetworkDeviceType_TYPE_ETHERNET;
+constexpr NetworkInterface_NetworkDeviceType NetworkInterface_NetworkDeviceType_NetworkDeviceType_MAX = NetworkInterface_NetworkDeviceType_TYPE_CELLULAR;
+constexpr int NetworkInterface_NetworkDeviceType_NetworkDeviceType_ARRAYSIZE = NetworkInterface_NetworkDeviceType_NetworkDeviceType_MAX + 1;
+
+const std::string& NetworkInterface_NetworkDeviceType_Name(NetworkInterface_NetworkDeviceType value);
+template<typename T>
+inline const std::string& NetworkInterface_NetworkDeviceType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, NetworkInterface_NetworkDeviceType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function NetworkInterface_NetworkDeviceType_Name.");
+  return NetworkInterface_NetworkDeviceType_Name(static_cast<NetworkInterface_NetworkDeviceType>(enum_t_value));
+}
+bool NetworkInterface_NetworkDeviceType_Parse(
+    const std::string& name, NetworkInterface_NetworkDeviceType* value);
+enum NetworkState_ConnectionState : int {
+  NetworkState_ConnectionState_IDLE = 0,
+  NetworkState_ConnectionState_CARRIER = 1,
+  NetworkState_ConnectionState_ASSOCIATION = 2,
+  NetworkState_ConnectionState_CONFIGURATION = 3,
+  NetworkState_ConnectionState_READY = 4,
+  NetworkState_ConnectionState_PORTAL = 5,
+  NetworkState_ConnectionState_OFFLINE = 6,
+  NetworkState_ConnectionState_ONLINE = 7,
+  NetworkState_ConnectionState_DISCONNECT = 8,
+  NetworkState_ConnectionState_FAILURE = 9,
+  NetworkState_ConnectionState_ACTIVATION_FAILURE = 10,
+  NetworkState_ConnectionState_UNKNOWN = 11
+};
+bool NetworkState_ConnectionState_IsValid(int value);
+constexpr NetworkState_ConnectionState NetworkState_ConnectionState_ConnectionState_MIN = NetworkState_ConnectionState_IDLE;
+constexpr NetworkState_ConnectionState NetworkState_ConnectionState_ConnectionState_MAX = NetworkState_ConnectionState_UNKNOWN;
+constexpr int NetworkState_ConnectionState_ConnectionState_ARRAYSIZE = NetworkState_ConnectionState_ConnectionState_MAX + 1;
+
+const std::string& NetworkState_ConnectionState_Name(NetworkState_ConnectionState value);
+template<typename T>
+inline const std::string& NetworkState_ConnectionState_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, NetworkState_ConnectionState>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function NetworkState_ConnectionState_Name.");
+  return NetworkState_ConnectionState_Name(static_cast<NetworkState_ConnectionState>(enum_t_value));
+}
+bool NetworkState_ConnectionState_Parse(
+    const std::string& name, NetworkState_ConnectionState* value);
+enum DeviceUser_UserType : int {
+  DeviceUser_UserType_USER_TYPE_MANAGED = 0,
+  DeviceUser_UserType_USER_TYPE_UNMANAGED = 1
+};
+bool DeviceUser_UserType_IsValid(int value);
+constexpr DeviceUser_UserType DeviceUser_UserType_UserType_MIN = DeviceUser_UserType_USER_TYPE_MANAGED;
+constexpr DeviceUser_UserType DeviceUser_UserType_UserType_MAX = DeviceUser_UserType_USER_TYPE_UNMANAGED;
+constexpr int DeviceUser_UserType_UserType_ARRAYSIZE = DeviceUser_UserType_UserType_MAX + 1;
+
+const std::string& DeviceUser_UserType_Name(DeviceUser_UserType value);
+template<typename T>
+inline const std::string& DeviceUser_UserType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceUser_UserType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceUser_UserType_Name.");
+  return DeviceUser_UserType_Name(static_cast<DeviceUser_UserType>(enum_t_value));
+}
+bool DeviceUser_UserType_Parse(
+    const std::string& name, DeviceUser_UserType* value);
+enum PowerStatus_PowerSource : int {
+  PowerStatus_PowerSource_POWER_UNKNOWN = 0,
+  PowerStatus_PowerSource_POWER_AC = 1,
+  PowerStatus_PowerSource_POWER_BATTERY = 2
+};
+bool PowerStatus_PowerSource_IsValid(int value);
+constexpr PowerStatus_PowerSource PowerStatus_PowerSource_PowerSource_MIN = PowerStatus_PowerSource_POWER_UNKNOWN;
+constexpr PowerStatus_PowerSource PowerStatus_PowerSource_PowerSource_MAX = PowerStatus_PowerSource_POWER_BATTERY;
+constexpr int PowerStatus_PowerSource_PowerSource_ARRAYSIZE = PowerStatus_PowerSource_PowerSource_MAX + 1;
+
+const std::string& PowerStatus_PowerSource_Name(PowerStatus_PowerSource value);
+template<typename T>
+inline const std::string& PowerStatus_PowerSource_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PowerStatus_PowerSource>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PowerStatus_PowerSource_Name.");
+  return PowerStatus_PowerSource_Name(static_cast<PowerStatus_PowerSource>(enum_t_value));
+}
+bool PowerStatus_PowerSource_Parse(
+    const std::string& name, PowerStatus_PowerSource* value);
+enum DiskInfo_DevicePurpose : int {
+  DiskInfo_DevicePurpose_PURPOSE_UNKNOWN = 0,
+  DiskInfo_DevicePurpose_PURPOSE_BOOT = 1,
+  DiskInfo_DevicePurpose_PURPOSE_SWAP = 2
+};
+bool DiskInfo_DevicePurpose_IsValid(int value);
+constexpr DiskInfo_DevicePurpose DiskInfo_DevicePurpose_DevicePurpose_MIN = DiskInfo_DevicePurpose_PURPOSE_UNKNOWN;
+constexpr DiskInfo_DevicePurpose DiskInfo_DevicePurpose_DevicePurpose_MAX = DiskInfo_DevicePurpose_PURPOSE_SWAP;
+constexpr int DiskInfo_DevicePurpose_DevicePurpose_ARRAYSIZE = DiskInfo_DevicePurpose_DevicePurpose_MAX + 1;
+
+const std::string& DiskInfo_DevicePurpose_Name(DiskInfo_DevicePurpose value);
+template<typename T>
+inline const std::string& DiskInfo_DevicePurpose_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DiskInfo_DevicePurpose>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DiskInfo_DevicePurpose_Name.");
+  return DiskInfo_DevicePurpose_Name(static_cast<DiskInfo_DevicePurpose>(enum_t_value));
+}
+bool DiskInfo_DevicePurpose_Parse(
+    const std::string& name, DiskInfo_DevicePurpose* value);
+enum CpuInfo_Architecture : int {
+  CpuInfo_Architecture_ARCHITECTURE_UNSPECIFIED = 0,
+  CpuInfo_Architecture_X86_64 = 1,
+  CpuInfo_Architecture_AARCH64 = 2,
+  CpuInfo_Architecture_ARMV7L = 3
+};
+bool CpuInfo_Architecture_IsValid(int value);
+constexpr CpuInfo_Architecture CpuInfo_Architecture_Architecture_MIN = CpuInfo_Architecture_ARCHITECTURE_UNSPECIFIED;
+constexpr CpuInfo_Architecture CpuInfo_Architecture_Architecture_MAX = CpuInfo_Architecture_ARMV7L;
+constexpr int CpuInfo_Architecture_Architecture_ARRAYSIZE = CpuInfo_Architecture_Architecture_MAX + 1;
+
+const std::string& CpuInfo_Architecture_Name(CpuInfo_Architecture value);
+template<typename T>
+inline const std::string& CpuInfo_Architecture_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, CpuInfo_Architecture>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function CpuInfo_Architecture_Name.");
+  return CpuInfo_Architecture_Name(static_cast<CpuInfo_Architecture>(enum_t_value));
+}
+bool CpuInfo_Architecture_Parse(
+    const std::string& name, CpuInfo_Architecture* value);
+enum CrashReportInfo_CrashReportUploadStatus : int {
+  CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_UNKNOWN = 0,
+  CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_NOT_UPLOADED = 1,
+  CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_PENDING = 2,
+  CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_PENDING_USER_REQUESTED = 3,
+  CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_UPLOADED = 4
+};
+bool CrashReportInfo_CrashReportUploadStatus_IsValid(int value);
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo_CrashReportUploadStatus_CrashReportUploadStatus_MIN = CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_UNKNOWN;
+constexpr CrashReportInfo_CrashReportUploadStatus CrashReportInfo_CrashReportUploadStatus_CrashReportUploadStatus_MAX = CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_UPLOADED;
+constexpr int CrashReportInfo_CrashReportUploadStatus_CrashReportUploadStatus_ARRAYSIZE = CrashReportInfo_CrashReportUploadStatus_CrashReportUploadStatus_MAX + 1;
+
+const std::string& CrashReportInfo_CrashReportUploadStatus_Name(CrashReportInfo_CrashReportUploadStatus value);
+template<typename T>
+inline const std::string& CrashReportInfo_CrashReportUploadStatus_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, CrashReportInfo_CrashReportUploadStatus>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function CrashReportInfo_CrashReportUploadStatus_Name.");
+  return CrashReportInfo_CrashReportUploadStatus_Name(static_cast<CrashReportInfo_CrashReportUploadStatus>(enum_t_value));
+}
+bool CrashReportInfo_CrashReportUploadStatus_Parse(
+    const std::string& name, CrashReportInfo_CrashReportUploadStatus* value);
+enum BootInfo_BootMethod : int {
+  BootInfo_BootMethod_UNKNOWN = 0,
+  BootInfo_BootMethod_CROS_SECURE = 1,
+  BootInfo_BootMethod_CROS_UEFI = 2,
+  BootInfo_BootMethod_CROS_LEGACY = 3,
+  BootInfo_BootMethod_CROS_EFI_SECURE = 4
+};
+bool BootInfo_BootMethod_IsValid(int value);
+constexpr BootInfo_BootMethod BootInfo_BootMethod_BootMethod_MIN = BootInfo_BootMethod_UNKNOWN;
+constexpr BootInfo_BootMethod BootInfo_BootMethod_BootMethod_MAX = BootInfo_BootMethod_CROS_EFI_SECURE;
+constexpr int BootInfo_BootMethod_BootMethod_ARRAYSIZE = BootInfo_BootMethod_BootMethod_MAX + 1;
+
+const std::string& BootInfo_BootMethod_Name(BootInfo_BootMethod value);
+template<typename T>
+inline const std::string& BootInfo_BootMethod_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, BootInfo_BootMethod>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function BootInfo_BootMethod_Name.");
+  return BootInfo_BootMethod_Name(static_cast<BootInfo_BootMethod>(enum_t_value));
+}
+bool BootInfo_BootMethod_Parse(
+    const std::string& name, BootInfo_BootMethod* value);
+enum OsUpdateStatus_UpdateStatus : int {
+  OsUpdateStatus_UpdateStatus_OS_UP_TO_DATE = 0,
+  OsUpdateStatus_UpdateStatus_OS_IMAGE_DOWNLOAD_NOT_STARTED = 1,
+  OsUpdateStatus_UpdateStatus_OS_IMAGE_DOWNLOAD_IN_PROGRESS = 2,
+  OsUpdateStatus_UpdateStatus_OS_UPDATE_NEED_REBOOT = 3
+};
+bool OsUpdateStatus_UpdateStatus_IsValid(int value);
+constexpr OsUpdateStatus_UpdateStatus OsUpdateStatus_UpdateStatus_UpdateStatus_MIN = OsUpdateStatus_UpdateStatus_OS_UP_TO_DATE;
+constexpr OsUpdateStatus_UpdateStatus OsUpdateStatus_UpdateStatus_UpdateStatus_MAX = OsUpdateStatus_UpdateStatus_OS_UPDATE_NEED_REBOOT;
+constexpr int OsUpdateStatus_UpdateStatus_UpdateStatus_ARRAYSIZE = OsUpdateStatus_UpdateStatus_UpdateStatus_MAX + 1;
+
+const std::string& OsUpdateStatus_UpdateStatus_Name(OsUpdateStatus_UpdateStatus value);
+template<typename T>
+inline const std::string& OsUpdateStatus_UpdateStatus_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, OsUpdateStatus_UpdateStatus>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function OsUpdateStatus_UpdateStatus_Name.");
+  return OsUpdateStatus_UpdateStatus_Name(static_cast<OsUpdateStatus_UpdateStatus>(enum_t_value));
+}
+bool OsUpdateStatus_UpdateStatus_Parse(
+    const std::string& name, OsUpdateStatus_UpdateStatus* value);
+enum AppInfo_AppType : int {
+  AppInfo_AppType_TYPE_UNKNOWN = 0,
+  AppInfo_AppType_TYPE_ARC = 1,
+  AppInfo_AppType_TYPE_BUILTIN = 2,
+  AppInfo_AppType_TYPE_CROSTINI = 3,
+  AppInfo_AppType_TYPE_EXTENSION = 4,
+  AppInfo_AppType_TYPE_WEB = 5,
+  AppInfo_AppType_TYPE_PLUGINVM = 6,
+  AppInfo_AppType_TYPE_BOREALIS = 7
+};
+bool AppInfo_AppType_IsValid(int value);
+constexpr AppInfo_AppType AppInfo_AppType_AppType_MIN = AppInfo_AppType_TYPE_UNKNOWN;
+constexpr AppInfo_AppType AppInfo_AppType_AppType_MAX = AppInfo_AppType_TYPE_BOREALIS;
+constexpr int AppInfo_AppType_AppType_ARRAYSIZE = AppInfo_AppType_AppType_MAX + 1;
+
+const std::string& AppInfo_AppType_Name(AppInfo_AppType value);
+template<typename T>
+inline const std::string& AppInfo_AppType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AppInfo_AppType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AppInfo_AppType_Name.");
+  return AppInfo_AppType_Name(static_cast<AppInfo_AppType>(enum_t_value));
+}
+bool AppInfo_AppType_Parse(
+    const std::string& name, AppInfo_AppType* value);
+enum AppInfo_Status : int {
+  AppInfo_Status_STATUS_UNKNOWN = 0,
+  AppInfo_Status_STATUS_INSTALLED = 1,
+  AppInfo_Status_STATUS_DISABLED = 2,
+  AppInfo_Status_STATUS_UNINSTALLED = 3
+};
+bool AppInfo_Status_IsValid(int value);
+constexpr AppInfo_Status AppInfo_Status_Status_MIN = AppInfo_Status_STATUS_UNKNOWN;
+constexpr AppInfo_Status AppInfo_Status_Status_MAX = AppInfo_Status_STATUS_UNINSTALLED;
+constexpr int AppInfo_Status_Status_ARRAYSIZE = AppInfo_Status_Status_MAX + 1;
+
+const std::string& AppInfo_Status_Name(AppInfo_Status value);
+template<typename T>
+inline const std::string& AppInfo_Status_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AppInfo_Status>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AppInfo_Status_Name.");
+  return AppInfo_Status_Name(static_cast<AppInfo_Status>(enum_t_value));
+}
+bool AppInfo_Status_Parse(
+    const std::string& name, AppInfo_Status* value);
+enum AndroidAppInfo_AndroidAppStatus : int {
+  AndroidAppInfo_AndroidAppStatus_STATUS_UNKNOWN = 0,
+  AndroidAppInfo_AndroidAppStatus_STATUS_ENABLED = 1,
+  AndroidAppInfo_AndroidAppStatus_STATUS_SUSPENDED = 2,
+  AndroidAppInfo_AndroidAppStatus_STATUS_DISABLED = 3
+};
+bool AndroidAppInfo_AndroidAppStatus_IsValid(int value);
+constexpr AndroidAppInfo_AndroidAppStatus AndroidAppInfo_AndroidAppStatus_AndroidAppStatus_MIN = AndroidAppInfo_AndroidAppStatus_STATUS_UNKNOWN;
+constexpr AndroidAppInfo_AndroidAppStatus AndroidAppInfo_AndroidAppStatus_AndroidAppStatus_MAX = AndroidAppInfo_AndroidAppStatus_STATUS_DISABLED;
+constexpr int AndroidAppInfo_AndroidAppStatus_AndroidAppStatus_ARRAYSIZE = AndroidAppInfo_AndroidAppStatus_AndroidAppStatus_MAX + 1;
+
+const std::string& AndroidAppInfo_AndroidAppStatus_Name(AndroidAppInfo_AndroidAppStatus value);
+template<typename T>
+inline const std::string& AndroidAppInfo_AndroidAppStatus_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AndroidAppInfo_AndroidAppStatus>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AndroidAppInfo_AndroidAppStatus_Name.");
+  return AndroidAppInfo_AndroidAppStatus_Name(static_cast<AndroidAppInfo_AndroidAppStatus>(enum_t_value));
+}
+bool AndroidAppInfo_AndroidAppStatus_Parse(
+    const std::string& name, AndroidAppInfo_AndroidAppStatus* value);
+enum AndroidAppInfo_InstalledSource : int {
+  AndroidAppInfo_InstalledSource_SOURCE_UNKNOWN = 0,
+  AndroidAppInfo_InstalledSource_SOURCE_BY_ADMIN = 1,
+  AndroidAppInfo_InstalledSource_SOURCE_BY_USER = 2,
+  AndroidAppInfo_InstalledSource_SOURCE_NOT_INSTALLED = 3
+};
+bool AndroidAppInfo_InstalledSource_IsValid(int value);
+constexpr AndroidAppInfo_InstalledSource AndroidAppInfo_InstalledSource_InstalledSource_MIN = AndroidAppInfo_InstalledSource_SOURCE_UNKNOWN;
+constexpr AndroidAppInfo_InstalledSource AndroidAppInfo_InstalledSource_InstalledSource_MAX = AndroidAppInfo_InstalledSource_SOURCE_NOT_INSTALLED;
+constexpr int AndroidAppInfo_InstalledSource_InstalledSource_ARRAYSIZE = AndroidAppInfo_InstalledSource_InstalledSource_MAX + 1;
+
+const std::string& AndroidAppInfo_InstalledSource_Name(AndroidAppInfo_InstalledSource value);
+template<typename T>
+inline const std::string& AndroidAppInfo_InstalledSource_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AndroidAppInfo_InstalledSource>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AndroidAppInfo_InstalledSource_Name.");
+  return AndroidAppInfo_InstalledSource_Name(static_cast<AndroidAppInfo_InstalledSource>(enum_t_value));
+}
+bool AndroidAppInfo_InstalledSource_Parse(
+    const std::string& name, AndroidAppInfo_InstalledSource* value);
+enum Extension_ExtensionType : int {
+  Extension_ExtensionType_TYPE_UNKNOWN = 0,
+  Extension_ExtensionType_TYPE_EXTENSION = 1,
+  Extension_ExtensionType_TYPE_HOSTED_APP = 2,
+  Extension_ExtensionType_TYPE_PACKAGED_APP = 3,
+  Extension_ExtensionType_TYPE_LEGACY_PACKAGED_APP = 4,
+  Extension_ExtensionType_TYPE_THEME = 5,
+  Extension_ExtensionType_TYPE_USER_SCRIPT = 6,
+  Extension_ExtensionType_TYPE_PLATFORM_APP = 7,
+  Extension_ExtensionType_TYPE_LOGIN_SCREEN_EXTENSION = 8,
+  Extension_ExtensionType_TYPE_CHROMEOS_SYSTEM_EXTENSION = 9
+};
+bool Extension_ExtensionType_IsValid(int value);
+constexpr Extension_ExtensionType Extension_ExtensionType_ExtensionType_MIN = Extension_ExtensionType_TYPE_UNKNOWN;
+constexpr Extension_ExtensionType Extension_ExtensionType_ExtensionType_MAX = Extension_ExtensionType_TYPE_CHROMEOS_SYSTEM_EXTENSION;
+constexpr int Extension_ExtensionType_ExtensionType_ARRAYSIZE = Extension_ExtensionType_ExtensionType_MAX + 1;
+
+const std::string& Extension_ExtensionType_Name(Extension_ExtensionType value);
+template<typename T>
+inline const std::string& Extension_ExtensionType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, Extension_ExtensionType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function Extension_ExtensionType_Name.");
+  return Extension_ExtensionType_Name(static_cast<Extension_ExtensionType>(enum_t_value));
+}
+bool Extension_ExtensionType_Parse(
+    const std::string& name, Extension_ExtensionType* value);
+enum Extension_InstallType : int {
+  Extension_InstallType_TYPE_NORMAL = 0,
+  Extension_InstallType_TYPE_DEVELOPMENT = 1,
+  Extension_InstallType_TYPE_SIDELOAD = 2,
+  Extension_InstallType_TYPE_ADMIN = 3,
+  Extension_InstallType_TYPE_OTHER = 4
+};
+bool Extension_InstallType_IsValid(int value);
+constexpr Extension_InstallType Extension_InstallType_InstallType_MIN = Extension_InstallType_TYPE_NORMAL;
+constexpr Extension_InstallType Extension_InstallType_InstallType_MAX = Extension_InstallType_TYPE_OTHER;
+constexpr int Extension_InstallType_InstallType_ARRAYSIZE = Extension_InstallType_InstallType_MAX + 1;
+
+const std::string& Extension_InstallType_Name(Extension_InstallType value);
+template<typename T>
+inline const std::string& Extension_InstallType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, Extension_InstallType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function Extension_InstallType_Name.");
+  return Extension_InstallType_Name(static_cast<Extension_InstallType>(enum_t_value));
+}
+bool Extension_InstallType_Parse(
+    const std::string& name, Extension_InstallType* value);
+enum Policy_PolicyLevel : int {
+  Policy_PolicyLevel_LEVEL_UNKNOWN = 0,
+  Policy_PolicyLevel_LEVEL_RECOMMENDED = 1,
+  Policy_PolicyLevel_LEVEL_MANDATORY = 2
+};
+bool Policy_PolicyLevel_IsValid(int value);
+constexpr Policy_PolicyLevel Policy_PolicyLevel_PolicyLevel_MIN = Policy_PolicyLevel_LEVEL_UNKNOWN;
+constexpr Policy_PolicyLevel Policy_PolicyLevel_PolicyLevel_MAX = Policy_PolicyLevel_LEVEL_MANDATORY;
+constexpr int Policy_PolicyLevel_PolicyLevel_ARRAYSIZE = Policy_PolicyLevel_PolicyLevel_MAX + 1;
+
+const std::string& Policy_PolicyLevel_Name(Policy_PolicyLevel value);
+template<typename T>
+inline const std::string& Policy_PolicyLevel_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, Policy_PolicyLevel>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function Policy_PolicyLevel_Name.");
+  return Policy_PolicyLevel_Name(static_cast<Policy_PolicyLevel>(enum_t_value));
+}
+bool Policy_PolicyLevel_Parse(
+    const std::string& name, Policy_PolicyLevel* value);
+enum Policy_PolicyScope : int {
+  Policy_PolicyScope_SCOPE_UNKNOWN = 0,
+  Policy_PolicyScope_SCOPE_USER = 1,
+  Policy_PolicyScope_SCOPE_MACHINE = 2
+};
+bool Policy_PolicyScope_IsValid(int value);
+constexpr Policy_PolicyScope Policy_PolicyScope_PolicyScope_MIN = Policy_PolicyScope_SCOPE_UNKNOWN;
+constexpr Policy_PolicyScope Policy_PolicyScope_PolicyScope_MAX = Policy_PolicyScope_SCOPE_MACHINE;
+constexpr int Policy_PolicyScope_PolicyScope_ARRAYSIZE = Policy_PolicyScope_PolicyScope_MAX + 1;
+
+const std::string& Policy_PolicyScope_Name(Policy_PolicyScope value);
+template<typename T>
+inline const std::string& Policy_PolicyScope_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, Policy_PolicyScope>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function Policy_PolicyScope_Name.");
+  return Policy_PolicyScope_Name(static_cast<Policy_PolicyScope>(enum_t_value));
+}
+bool Policy_PolicyScope_Parse(
+    const std::string& name, Policy_PolicyScope* value);
+enum Policy_PolicySource : int {
+  Policy_PolicySource_SOURCE_UNKNOWN = 0,
+  Policy_PolicySource_SOURCE_ENTERPRISE_DEFAULT = 1,
+  Policy_PolicySource_SOURCE_CLOUD = 2,
+  Policy_PolicySource_SOURCE_ACTIVE_DIRECTORY = 3,
+  Policy_PolicySource_SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE_DEPRECATED = 4,
+  Policy_PolicySource_SOURCE_PLATFORM = 5,
+  Policy_PolicySource_SOURCE_PRIORITY_CLOUD_DEPRECATED = 6,
+  Policy_PolicySource_SOURCE_MERGED = 7,
+  Policy_PolicySource_SOURCE_COMMAND_LINE = 8,
+  Policy_PolicySource_SOURCE_CLOUD_FROM_ASH = 9,
+  Policy_PolicySource_SOURCE_RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE = 10
+};
+bool Policy_PolicySource_IsValid(int value);
+constexpr Policy_PolicySource Policy_PolicySource_PolicySource_MIN = Policy_PolicySource_SOURCE_UNKNOWN;
+constexpr Policy_PolicySource Policy_PolicySource_PolicySource_MAX = Policy_PolicySource_SOURCE_RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE;
+constexpr int Policy_PolicySource_PolicySource_ARRAYSIZE = Policy_PolicySource_PolicySource_MAX + 1;
+
+const std::string& Policy_PolicySource_Name(Policy_PolicySource value);
+template<typename T>
+inline const std::string& Policy_PolicySource_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, Policy_PolicySource>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function Policy_PolicySource_Name.");
+  return Policy_PolicySource_Name(static_cast<Policy_PolicySource>(enum_t_value));
+}
+bool Policy_PolicySource_Parse(
+    const std::string& name, Policy_PolicySource* value);
+enum PolicyValueValidationIssue_ValueValidationIssueSeverity : int {
+  PolicyValueValidationIssue_ValueValidationIssueSeverity_VALUE_VALIDATION_ISSUE_SEVERITY_UNSPECIFIED = 0,
+  PolicyValueValidationIssue_ValueValidationIssueSeverity_VALUE_VALIDATION_ISSUE_SEVERITY_WARNING = 1,
+  PolicyValueValidationIssue_ValueValidationIssueSeverity_VALUE_VALIDATION_ISSUE_SEVERITY_ERROR = 2
+};
+bool PolicyValueValidationIssue_ValueValidationIssueSeverity_IsValid(int value);
+constexpr PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue_ValueValidationIssueSeverity_ValueValidationIssueSeverity_MIN = PolicyValueValidationIssue_ValueValidationIssueSeverity_VALUE_VALIDATION_ISSUE_SEVERITY_UNSPECIFIED;
+constexpr PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue_ValueValidationIssueSeverity_ValueValidationIssueSeverity_MAX = PolicyValueValidationIssue_ValueValidationIssueSeverity_VALUE_VALIDATION_ISSUE_SEVERITY_ERROR;
+constexpr int PolicyValueValidationIssue_ValueValidationIssueSeverity_ValueValidationIssueSeverity_ARRAYSIZE = PolicyValueValidationIssue_ValueValidationIssueSeverity_ValueValidationIssueSeverity_MAX + 1;
+
+const std::string& PolicyValueValidationIssue_ValueValidationIssueSeverity_Name(PolicyValueValidationIssue_ValueValidationIssueSeverity value);
+template<typename T>
+inline const std::string& PolicyValueValidationIssue_ValueValidationIssueSeverity_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PolicyValueValidationIssue_ValueValidationIssueSeverity>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PolicyValueValidationIssue_ValueValidationIssueSeverity_Name.");
+  return PolicyValueValidationIssue_ValueValidationIssueSeverity_Name(static_cast<PolicyValueValidationIssue_ValueValidationIssueSeverity>(enum_t_value));
+}
+bool PolicyValueValidationIssue_ValueValidationIssueSeverity_Parse(
+    const std::string& name, PolicyValueValidationIssue_ValueValidationIssueSeverity* value);
+enum PolicyValidationReportRequest_ValidationResultType : int {
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_ERROR_UNSPECIFIED = 0,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_SUCCESS = 1,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_INITIAL_SIGNATURE = 2,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_SIGNATURE = 3,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_ERROR_CODE_PRESENT = 4,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_PAYLOAD_PARSE_ERROR = 5,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_WRONG_POLICY_TYPE = 6,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_WRONG_SETTINGS_ENTITY_ID = 7,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_TIMESTAMP = 8,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_DM_TOKEN = 9,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_DEVICE_ID = 10,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_USER = 11,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_POLICY_PARSE_ERROR = 12,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_KEY_VERIFICATION_SIGNATURE = 13,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_VALUE_WARNING = 14,
+  PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_VALUE_ERROR = 15
+};
+bool PolicyValidationReportRequest_ValidationResultType_IsValid(int value);
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest_ValidationResultType_ValidationResultType_MIN = PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_ERROR_UNSPECIFIED;
+constexpr PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest_ValidationResultType_ValidationResultType_MAX = PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_VALUE_ERROR;
+constexpr int PolicyValidationReportRequest_ValidationResultType_ValidationResultType_ARRAYSIZE = PolicyValidationReportRequest_ValidationResultType_ValidationResultType_MAX + 1;
+
+const std::string& PolicyValidationReportRequest_ValidationResultType_Name(PolicyValidationReportRequest_ValidationResultType value);
+template<typename T>
+inline const std::string& PolicyValidationReportRequest_ValidationResultType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PolicyValidationReportRequest_ValidationResultType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PolicyValidationReportRequest_ValidationResultType_Name.");
+  return PolicyValidationReportRequest_ValidationResultType_Name(static_cast<PolicyValidationReportRequest_ValidationResultType>(enum_t_value));
+}
+bool PolicyValidationReportRequest_ValidationResultType_Parse(
+    const std::string& name, PolicyValidationReportRequest_ValidationResultType* value);
+enum DeviceAutoEnrollmentRequest_EnrollmentCheckType : int {
+  DeviceAutoEnrollmentRequest_EnrollmentCheckType_ENROLLMENT_CHECK_TYPE_UNSPECIFIED = 0,
+  DeviceAutoEnrollmentRequest_EnrollmentCheckType_ENROLLMENT_CHECK_TYPE_FRE = 1,
+  DeviceAutoEnrollmentRequest_EnrollmentCheckType_ENROLLMENT_CHECK_TYPE_FORCED_ENROLLMENT = 2
+};
+bool DeviceAutoEnrollmentRequest_EnrollmentCheckType_IsValid(int value);
+constexpr DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest_EnrollmentCheckType_EnrollmentCheckType_MIN = DeviceAutoEnrollmentRequest_EnrollmentCheckType_ENROLLMENT_CHECK_TYPE_UNSPECIFIED;
+constexpr DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest_EnrollmentCheckType_EnrollmentCheckType_MAX = DeviceAutoEnrollmentRequest_EnrollmentCheckType_ENROLLMENT_CHECK_TYPE_FORCED_ENROLLMENT;
+constexpr int DeviceAutoEnrollmentRequest_EnrollmentCheckType_EnrollmentCheckType_ARRAYSIZE = DeviceAutoEnrollmentRequest_EnrollmentCheckType_EnrollmentCheckType_MAX + 1;
+
+const std::string& DeviceAutoEnrollmentRequest_EnrollmentCheckType_Name(DeviceAutoEnrollmentRequest_EnrollmentCheckType value);
+template<typename T>
+inline const std::string& DeviceAutoEnrollmentRequest_EnrollmentCheckType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceAutoEnrollmentRequest_EnrollmentCheckType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceAutoEnrollmentRequest_EnrollmentCheckType_Name.");
+  return DeviceAutoEnrollmentRequest_EnrollmentCheckType_Name(static_cast<DeviceAutoEnrollmentRequest_EnrollmentCheckType>(enum_t_value));
+}
+bool DeviceAutoEnrollmentRequest_EnrollmentCheckType_Parse(
+    const std::string& name, DeviceAutoEnrollmentRequest_EnrollmentCheckType* value);
+enum DeviceStateRetrievalResponse_RestoreMode : int {
+  DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_NONE = 0,
+  DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_REENROLLMENT_REQUESTED = 1,
+  DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_REENROLLMENT_ENFORCED = 2,
+  DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_DISABLED = 3,
+  DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_REENROLLMENT_ZERO_TOUCH = 4
+};
+bool DeviceStateRetrievalResponse_RestoreMode_IsValid(int value);
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse_RestoreMode_RestoreMode_MIN = DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_NONE;
+constexpr DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse_RestoreMode_RestoreMode_MAX = DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_REENROLLMENT_ZERO_TOUCH;
+constexpr int DeviceStateRetrievalResponse_RestoreMode_RestoreMode_ARRAYSIZE = DeviceStateRetrievalResponse_RestoreMode_RestoreMode_MAX + 1;
+
+const std::string& DeviceStateRetrievalResponse_RestoreMode_Name(DeviceStateRetrievalResponse_RestoreMode value);
+template<typename T>
+inline const std::string& DeviceStateRetrievalResponse_RestoreMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceStateRetrievalResponse_RestoreMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceStateRetrievalResponse_RestoreMode_Name.");
+  return DeviceStateRetrievalResponse_RestoreMode_Name(static_cast<DeviceStateRetrievalResponse_RestoreMode>(enum_t_value));
+}
+bool DeviceStateRetrievalResponse_RestoreMode_Parse(
+    const std::string& name, DeviceStateRetrievalResponse_RestoreMode* value);
+enum DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode : int {
+  DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_NONE = 0,
+  DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_ENROLLMENT_ENFORCED = 1,
+  DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_ZERO_TOUCH_ENFORCED = 2,
+  DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_DISABLED = 3
+};
+bool DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_IsValid(int value);
+constexpr DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_InitialEnrollmentMode_MIN = DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_NONE;
+constexpr DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_InitialEnrollmentMode_MAX = DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_DISABLED;
+constexpr int DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_InitialEnrollmentMode_ARRAYSIZE = DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_InitialEnrollmentMode_MAX + 1;
+
+const std::string& DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Name(DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode value);
+template<typename T>
+inline const std::string& DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Name.");
+  return DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Name(static_cast<DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode>(enum_t_value));
+}
+bool DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Parse(
+    const std::string& name, DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode* value);
+enum DeviceInitialEnrollmentStateResponse_LicensePackagingSKU : int {
+  DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_NOT_EXIST = 0,
+  DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_CHROME_ENTERPRISE = 1,
+  DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_CHROME_EDUCATION = 2,
+  DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_CHROME_TERMINAL = 3
+};
+bool DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_IsValid(int value);
+constexpr DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_LicensePackagingSKU_MIN = DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_NOT_EXIST;
+constexpr DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_LicensePackagingSKU_MAX = DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_CHROME_TERMINAL;
+constexpr int DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_LicensePackagingSKU_ARRAYSIZE = DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_LicensePackagingSKU_MAX + 1;
+
+const std::string& DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Name(DeviceInitialEnrollmentStateResponse_LicensePackagingSKU value);
+template<typename T>
+inline const std::string& DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceInitialEnrollmentStateResponse_LicensePackagingSKU>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Name.");
+  return DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Name(static_cast<DeviceInitialEnrollmentStateResponse_LicensePackagingSKU>(enum_t_value));
+}
+bool DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Parse(
+    const std::string& name, DeviceInitialEnrollmentStateResponse_LicensePackagingSKU* value);
+enum DevicePairingResponse_StatusCode : int {
+  DevicePairingResponse_StatusCode_SUCCESS = 0,
+  DevicePairingResponse_StatusCode_FAILED = 1,
+  DevicePairingResponse_StatusCode_HOST_DEVICE_NOT_FOUND = 2,
+  DevicePairingResponse_StatusCode_CONTROLLER_DEVICE_NOT_FOUND = 3,
+  DevicePairingResponse_StatusCode_HOST_DEVICE_DEPROVISIONED = 4,
+  DevicePairingResponse_StatusCode_CONTROLLER_DEVICE_DEPROVISIONED = 5
+};
+bool DevicePairingResponse_StatusCode_IsValid(int value);
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse_StatusCode_StatusCode_MIN = DevicePairingResponse_StatusCode_SUCCESS;
+constexpr DevicePairingResponse_StatusCode DevicePairingResponse_StatusCode_StatusCode_MAX = DevicePairingResponse_StatusCode_CONTROLLER_DEVICE_DEPROVISIONED;
+constexpr int DevicePairingResponse_StatusCode_StatusCode_ARRAYSIZE = DevicePairingResponse_StatusCode_StatusCode_MAX + 1;
+
+const std::string& DevicePairingResponse_StatusCode_Name(DevicePairingResponse_StatusCode value);
+template<typename T>
+inline const std::string& DevicePairingResponse_StatusCode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DevicePairingResponse_StatusCode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DevicePairingResponse_StatusCode_Name.");
+  return DevicePairingResponse_StatusCode_Name(static_cast<DevicePairingResponse_StatusCode>(enum_t_value));
+}
+bool DevicePairingResponse_StatusCode_Parse(
+    const std::string& name, DevicePairingResponse_StatusCode* value);
+enum CheckDevicePairingResponse_StatusCode : int {
+  CheckDevicePairingResponse_StatusCode_PAIRED = 0,
+  CheckDevicePairingResponse_StatusCode_NOT_PAIRED = 1,
+  CheckDevicePairingResponse_StatusCode_HOST_DEVICE_NOT_FOUND = 2,
+  CheckDevicePairingResponse_StatusCode_CONTROLLER_DEVICE_NOT_FOUND = 3,
+  CheckDevicePairingResponse_StatusCode_HOST_DEVICE_DEPROVISIONED = 4,
+  CheckDevicePairingResponse_StatusCode_CONTROLLER_DEVICE_DEPROVISIONED = 5,
+  CheckDevicePairingResponse_StatusCode_INVALID_CONTROLLER_DEVICE_IDENTITY = 6
+};
+bool CheckDevicePairingResponse_StatusCode_IsValid(int value);
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse_StatusCode_StatusCode_MIN = CheckDevicePairingResponse_StatusCode_PAIRED;
+constexpr CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse_StatusCode_StatusCode_MAX = CheckDevicePairingResponse_StatusCode_INVALID_CONTROLLER_DEVICE_IDENTITY;
+constexpr int CheckDevicePairingResponse_StatusCode_StatusCode_ARRAYSIZE = CheckDevicePairingResponse_StatusCode_StatusCode_MAX + 1;
+
+const std::string& CheckDevicePairingResponse_StatusCode_Name(CheckDevicePairingResponse_StatusCode value);
+template<typename T>
+inline const std::string& CheckDevicePairingResponse_StatusCode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, CheckDevicePairingResponse_StatusCode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function CheckDevicePairingResponse_StatusCode_Name.");
+  return CheckDevicePairingResponse_StatusCode_Name(static_cast<CheckDevicePairingResponse_StatusCode>(enum_t_value));
+}
+bool CheckDevicePairingResponse_StatusCode_Parse(
+    const std::string& name, CheckDevicePairingResponse_StatusCode* value);
+enum RemoteCommand_Type : int {
+  RemoteCommand_Type_COMMAND_ECHO_TEST = -1,
+  RemoteCommand_Type_DEVICE_REBOOT = 0,
+  RemoteCommand_Type_DEVICE_SCREENSHOT = 1,
+  RemoteCommand_Type_DEVICE_SET_VOLUME = 2,
+  RemoteCommand_Type_DEVICE_FETCH_STATUS = 3,
+  RemoteCommand_Type_USER_ARC_COMMAND = 4,
+  RemoteCommand_Type_DEVICE_WIPE_USERS = 5,
+  RemoteCommand_Type_DEVICE_START_CRD_SESSION = 6,
+  RemoteCommand_Type_DEVICE_REMOTE_POWERWASH = 7,
+  RemoteCommand_Type_DEVICE_REFRESH_ENTERPRISE_MACHINE_CERTIFICATE = 8,
+  RemoteCommand_Type_DEVICE_GET_AVAILABLE_DIAGNOSTIC_ROUTINES = 9,
+  RemoteCommand_Type_DEVICE_RUN_DIAGNOSTIC_ROUTINE = 10,
+  RemoteCommand_Type_DEVICE_GET_DIAGNOSTIC_ROUTINE_UPDATE = 11,
+  RemoteCommand_Type_BROWSER_CLEAR_BROWSING_DATA = 12,
+  RemoteCommand_Type_DEVICE_RESET_EUICC = 13,
+  RemoteCommand_Type_BROWSER_ROTATE_ATTESTATION_CREDENTIAL = 14
+};
+bool RemoteCommand_Type_IsValid(int value);
+constexpr RemoteCommand_Type RemoteCommand_Type_Type_MIN = RemoteCommand_Type_COMMAND_ECHO_TEST;
+constexpr RemoteCommand_Type RemoteCommand_Type_Type_MAX = RemoteCommand_Type_BROWSER_ROTATE_ATTESTATION_CREDENTIAL;
+constexpr int RemoteCommand_Type_Type_ARRAYSIZE = RemoteCommand_Type_Type_MAX + 1;
+
+const std::string& RemoteCommand_Type_Name(RemoteCommand_Type value);
+template<typename T>
+inline const std::string& RemoteCommand_Type_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, RemoteCommand_Type>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function RemoteCommand_Type_Name.");
+  return RemoteCommand_Type_Name(static_cast<RemoteCommand_Type>(enum_t_value));
+}
+bool RemoteCommand_Type_Parse(
+    const std::string& name, RemoteCommand_Type* value);
+enum RemoteCommandResult_ResultType : int {
+  RemoteCommandResult_ResultType_RESULT_IGNORED = 0,
+  RemoteCommandResult_ResultType_RESULT_FAILURE = 1,
+  RemoteCommandResult_ResultType_RESULT_SUCCESS = 2
+};
+bool RemoteCommandResult_ResultType_IsValid(int value);
+constexpr RemoteCommandResult_ResultType RemoteCommandResult_ResultType_ResultType_MIN = RemoteCommandResult_ResultType_RESULT_IGNORED;
+constexpr RemoteCommandResult_ResultType RemoteCommandResult_ResultType_ResultType_MAX = RemoteCommandResult_ResultType_RESULT_SUCCESS;
+constexpr int RemoteCommandResult_ResultType_ResultType_ARRAYSIZE = RemoteCommandResult_ResultType_ResultType_MAX + 1;
+
+const std::string& RemoteCommandResult_ResultType_Name(RemoteCommandResult_ResultType value);
+template<typename T>
+inline const std::string& RemoteCommandResult_ResultType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, RemoteCommandResult_ResultType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function RemoteCommandResult_ResultType_Name.");
+  return RemoteCommandResult_ResultType_Name(static_cast<RemoteCommandResult_ResultType>(enum_t_value));
+}
+bool RemoteCommandResult_ResultType_Parse(
+    const std::string& name, RemoteCommandResult_ResultType* value);
+enum DeviceAttributeUpdatePermissionResponse_ResultType : int {
+  DeviceAttributeUpdatePermissionResponse_ResultType_ATTRIBUTE_UPDATE_DISALLOWED = 0,
+  DeviceAttributeUpdatePermissionResponse_ResultType_ATTRIBUTE_UPDATE_ALLOWED = 1
+};
+bool DeviceAttributeUpdatePermissionResponse_ResultType_IsValid(int value);
+constexpr DeviceAttributeUpdatePermissionResponse_ResultType DeviceAttributeUpdatePermissionResponse_ResultType_ResultType_MIN = DeviceAttributeUpdatePermissionResponse_ResultType_ATTRIBUTE_UPDATE_DISALLOWED;
+constexpr DeviceAttributeUpdatePermissionResponse_ResultType DeviceAttributeUpdatePermissionResponse_ResultType_ResultType_MAX = DeviceAttributeUpdatePermissionResponse_ResultType_ATTRIBUTE_UPDATE_ALLOWED;
+constexpr int DeviceAttributeUpdatePermissionResponse_ResultType_ResultType_ARRAYSIZE = DeviceAttributeUpdatePermissionResponse_ResultType_ResultType_MAX + 1;
+
+const std::string& DeviceAttributeUpdatePermissionResponse_ResultType_Name(DeviceAttributeUpdatePermissionResponse_ResultType value);
+template<typename T>
+inline const std::string& DeviceAttributeUpdatePermissionResponse_ResultType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceAttributeUpdatePermissionResponse_ResultType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceAttributeUpdatePermissionResponse_ResultType_Name.");
+  return DeviceAttributeUpdatePermissionResponse_ResultType_Name(static_cast<DeviceAttributeUpdatePermissionResponse_ResultType>(enum_t_value));
+}
+bool DeviceAttributeUpdatePermissionResponse_ResultType_Parse(
+    const std::string& name, DeviceAttributeUpdatePermissionResponse_ResultType* value);
+enum DeviceAttributeUpdateResponse_ResultType : int {
+  DeviceAttributeUpdateResponse_ResultType_ATTRIBUTE_UPDATE_ERROR = 0,
+  DeviceAttributeUpdateResponse_ResultType_ATTRIBUTE_UPDATE_SUCCESS = 1
+};
+bool DeviceAttributeUpdateResponse_ResultType_IsValid(int value);
+constexpr DeviceAttributeUpdateResponse_ResultType DeviceAttributeUpdateResponse_ResultType_ResultType_MIN = DeviceAttributeUpdateResponse_ResultType_ATTRIBUTE_UPDATE_ERROR;
+constexpr DeviceAttributeUpdateResponse_ResultType DeviceAttributeUpdateResponse_ResultType_ResultType_MAX = DeviceAttributeUpdateResponse_ResultType_ATTRIBUTE_UPDATE_SUCCESS;
+constexpr int DeviceAttributeUpdateResponse_ResultType_ResultType_ARRAYSIZE = DeviceAttributeUpdateResponse_ResultType_ResultType_MAX + 1;
+
+const std::string& DeviceAttributeUpdateResponse_ResultType_Name(DeviceAttributeUpdateResponse_ResultType value);
+template<typename T>
+inline const std::string& DeviceAttributeUpdateResponse_ResultType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceAttributeUpdateResponse_ResultType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceAttributeUpdateResponse_ResultType_Name.");
+  return DeviceAttributeUpdateResponse_ResultType_Name(static_cast<DeviceAttributeUpdateResponse_ResultType>(enum_t_value));
+}
+bool DeviceAttributeUpdateResponse_ResultType_Parse(
+    const std::string& name, DeviceAttributeUpdateResponse_ResultType* value);
+enum CertificateBasedDeviceRegistrationData_CertificateType : int {
+  CertificateBasedDeviceRegistrationData_CertificateType_UNKNOWN = 0,
+  CertificateBasedDeviceRegistrationData_CertificateType_ENTERPRISE_ENROLLMENT_CERTIFICATE = 1
+};
+bool CertificateBasedDeviceRegistrationData_CertificateType_IsValid(int value);
+constexpr CertificateBasedDeviceRegistrationData_CertificateType CertificateBasedDeviceRegistrationData_CertificateType_CertificateType_MIN = CertificateBasedDeviceRegistrationData_CertificateType_UNKNOWN;
+constexpr CertificateBasedDeviceRegistrationData_CertificateType CertificateBasedDeviceRegistrationData_CertificateType_CertificateType_MAX = CertificateBasedDeviceRegistrationData_CertificateType_ENTERPRISE_ENROLLMENT_CERTIFICATE;
+constexpr int CertificateBasedDeviceRegistrationData_CertificateType_CertificateType_ARRAYSIZE = CertificateBasedDeviceRegistrationData_CertificateType_CertificateType_MAX + 1;
+
+const std::string& CertificateBasedDeviceRegistrationData_CertificateType_Name(CertificateBasedDeviceRegistrationData_CertificateType value);
+template<typename T>
+inline const std::string& CertificateBasedDeviceRegistrationData_CertificateType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, CertificateBasedDeviceRegistrationData_CertificateType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function CertificateBasedDeviceRegistrationData_CertificateType_Name.");
+  return CertificateBasedDeviceRegistrationData_CertificateType_Name(static_cast<CertificateBasedDeviceRegistrationData_CertificateType>(enum_t_value));
+}
+bool CertificateBasedDeviceRegistrationData_CertificateType_Parse(
+    const std::string& name, CertificateBasedDeviceRegistrationData_CertificateType* value);
+enum CheckDeviceLicenseResponse_LicenseSelectionMode : int {
+  CheckDeviceLicenseResponse_LicenseSelectionMode_UNDEFINED = 0,
+  CheckDeviceLicenseResponse_LicenseSelectionMode_USER_SELECTION = 1,
+  CheckDeviceLicenseResponse_LicenseSelectionMode_ADMIN_SELECTION = 2
+};
+bool CheckDeviceLicenseResponse_LicenseSelectionMode_IsValid(int value);
+constexpr CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse_LicenseSelectionMode_LicenseSelectionMode_MIN = CheckDeviceLicenseResponse_LicenseSelectionMode_UNDEFINED;
+constexpr CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse_LicenseSelectionMode_LicenseSelectionMode_MAX = CheckDeviceLicenseResponse_LicenseSelectionMode_ADMIN_SELECTION;
+constexpr int CheckDeviceLicenseResponse_LicenseSelectionMode_LicenseSelectionMode_ARRAYSIZE = CheckDeviceLicenseResponse_LicenseSelectionMode_LicenseSelectionMode_MAX + 1;
+
+const std::string& CheckDeviceLicenseResponse_LicenseSelectionMode_Name(CheckDeviceLicenseResponse_LicenseSelectionMode value);
+template<typename T>
+inline const std::string& CheckDeviceLicenseResponse_LicenseSelectionMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, CheckDeviceLicenseResponse_LicenseSelectionMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function CheckDeviceLicenseResponse_LicenseSelectionMode_Name.");
+  return CheckDeviceLicenseResponse_LicenseSelectionMode_Name(static_cast<CheckDeviceLicenseResponse_LicenseSelectionMode>(enum_t_value));
+}
+bool CheckDeviceLicenseResponse_LicenseSelectionMode_Parse(
+    const std::string& name, CheckDeviceLicenseResponse_LicenseSelectionMode* value);
+enum TpmVersionInfo_GscVersion : int {
+  TpmVersionInfo_GscVersion_GSC_VERSION_UNSPECIFIED = 0,
+  TpmVersionInfo_GscVersion_GSC_VERSION_NOT_GSC = 1,
+  TpmVersionInfo_GscVersion_GSC_VERSION_CR50 = 2,
+  TpmVersionInfo_GscVersion_GSC_VERSION_TI50 = 3
+};
+bool TpmVersionInfo_GscVersion_IsValid(int value);
+constexpr TpmVersionInfo_GscVersion TpmVersionInfo_GscVersion_GscVersion_MIN = TpmVersionInfo_GscVersion_GSC_VERSION_UNSPECIFIED;
+constexpr TpmVersionInfo_GscVersion TpmVersionInfo_GscVersion_GscVersion_MAX = TpmVersionInfo_GscVersion_GSC_VERSION_TI50;
+constexpr int TpmVersionInfo_GscVersion_GscVersion_ARRAYSIZE = TpmVersionInfo_GscVersion_GscVersion_MAX + 1;
+
+const std::string& TpmVersionInfo_GscVersion_Name(TpmVersionInfo_GscVersion value);
+template<typename T>
+inline const std::string& TpmVersionInfo_GscVersion_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, TpmVersionInfo_GscVersion>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function TpmVersionInfo_GscVersion_Name.");
+  return TpmVersionInfo_GscVersion_Name(static_cast<TpmVersionInfo_GscVersion>(enum_t_value));
+}
+bool TpmVersionInfo_GscVersion_Parse(
+    const std::string& name, TpmVersionInfo_GscVersion* value);
+enum ExtensionInstallReportLogEvent_EventType : int {
+  ExtensionInstallReportLogEvent_EventType_LOG_EVENT_TYPE_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_EventType_POLICY_REQUEST = 1,
+  ExtensionInstallReportLogEvent_EventType_SUCCESS = 2,
+  ExtensionInstallReportLogEvent_EventType_CANCELED = 3,
+  ExtensionInstallReportLogEvent_EventType_CONNECTIVITY_CHANGE = 4,
+  ExtensionInstallReportLogEvent_EventType_SESSION_STATE_CHANGE = 5,
+  ExtensionInstallReportLogEvent_EventType_INSTALLATION_FAILED = 6
+};
+bool ExtensionInstallReportLogEvent_EventType_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent_EventType_EventType_MIN = ExtensionInstallReportLogEvent_EventType_LOG_EVENT_TYPE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent_EventType_EventType_MAX = ExtensionInstallReportLogEvent_EventType_INSTALLATION_FAILED;
+constexpr int ExtensionInstallReportLogEvent_EventType_EventType_ARRAYSIZE = ExtensionInstallReportLogEvent_EventType_EventType_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_EventType_Name(ExtensionInstallReportLogEvent_EventType value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_EventType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_EventType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_EventType_Name.");
+  return ExtensionInstallReportLogEvent_EventType_Name(static_cast<ExtensionInstallReportLogEvent_EventType>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_EventType_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_EventType* value);
+enum ExtensionInstallReportLogEvent_SessionStateChangeType : int {
+  ExtensionInstallReportLogEvent_SessionStateChangeType_SESSION_STATE_CHANGE_TYPE_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_SessionStateChangeType_LOGIN = 1,
+  ExtensionInstallReportLogEvent_SessionStateChangeType_LOGOUT = 2,
+  ExtensionInstallReportLogEvent_SessionStateChangeType_SUSPEND = 3,
+  ExtensionInstallReportLogEvent_SessionStateChangeType_RESUME = 4
+};
+bool ExtensionInstallReportLogEvent_SessionStateChangeType_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MIN = ExtensionInstallReportLogEvent_SessionStateChangeType_SESSION_STATE_CHANGE_TYPE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MAX = ExtensionInstallReportLogEvent_SessionStateChangeType_RESUME;
+constexpr int ExtensionInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_ARRAYSIZE = ExtensionInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_SessionStateChangeType_Name(ExtensionInstallReportLogEvent_SessionStateChangeType value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_SessionStateChangeType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_SessionStateChangeType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_SessionStateChangeType_Name.");
+  return ExtensionInstallReportLogEvent_SessionStateChangeType_Name(static_cast<ExtensionInstallReportLogEvent_SessionStateChangeType>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_SessionStateChangeType_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_SessionStateChangeType* value);
+enum ExtensionInstallReportLogEvent_FailureReason : int {
+  ExtensionInstallReportLogEvent_FailureReason_FAILURE_REASON_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_FailureReason_INVALID_ID = 1,
+  ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_SETTINGS = 2,
+  ExtensionInstallReportLogEvent_FailureReason_REPLACED_BY_ARC_APP = 3,
+  ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_DICT = 4,
+  ExtensionInstallReportLogEvent_FailureReason_NOT_SUPPORTED_EXTENSION_DICT = 5,
+  ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_DICT_FILE_PATH = 6,
+  ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_DICT_VERSION = 7,
+  ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_DICT_UPDATE_URL = 8,
+  ExtensionInstallReportLogEvent_FailureReason_LOCALE_NOT_SUPPORTED = 9,
+  ExtensionInstallReportLogEvent_FailureReason_NOT_PERFORMING_NEW_INSTALL = 10,
+  ExtensionInstallReportLogEvent_FailureReason_TOO_OLD_PROFILE = 11,
+  ExtensionInstallReportLogEvent_FailureReason_DO_NOT_INSTALL_FOR_ENTERPRISE = 12,
+  ExtensionInstallReportLogEvent_FailureReason_ALREADY_INSTALLED = 13,
+  ExtensionInstallReportLogEvent_FailureReason_CRX_FETCH_FAILED = 14,
+  ExtensionInstallReportLogEvent_FailureReason_MANIFEST_FETCH_FAILED = 15,
+  ExtensionInstallReportLogEvent_FailureReason_MANIFEST_INVALID = 16,
+  ExtensionInstallReportLogEvent_FailureReason_NO_UPDATE = 17,
+  ExtensionInstallReportLogEvent_FailureReason_CRX_INSTALL_ERROR_DECLINED = 18,
+  ExtensionInstallReportLogEvent_FailureReason_CRX_INSTALL_ERROR_SANDBOXED_UNPACKER_FAILURE = 19,
+  ExtensionInstallReportLogEvent_FailureReason_CRX_INSTALL_ERROR_OTHER = 20,
+  ExtensionInstallReportLogEvent_FailureReason_NO_UPDATE_URL = 21,
+  ExtensionInstallReportLogEvent_FailureReason_PENDING_ADD_FAILED = 22,
+  ExtensionInstallReportLogEvent_FailureReason_DOWNLOADER_ADD_FAILED = 23,
+  ExtensionInstallReportLogEvent_FailureReason_IN_PROGRESS = 24,
+  ExtensionInstallReportLogEvent_FailureReason_CRX_FETCH_URL_EMPTY = 25,
+  ExtensionInstallReportLogEvent_FailureReason_CRX_FETCH_URL_INVALID = 26,
+  ExtensionInstallReportLogEvent_FailureReason_OVERRIDDEN_BY_SETTINGS = 27,
+  ExtensionInstallReportLogEvent_FailureReason_REPLACED_BY_SYSTEM_APP = 28
+};
+bool ExtensionInstallReportLogEvent_FailureReason_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent_FailureReason_FailureReason_MIN = ExtensionInstallReportLogEvent_FailureReason_FAILURE_REASON_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent_FailureReason_FailureReason_MAX = ExtensionInstallReportLogEvent_FailureReason_REPLACED_BY_SYSTEM_APP;
+constexpr int ExtensionInstallReportLogEvent_FailureReason_FailureReason_ARRAYSIZE = ExtensionInstallReportLogEvent_FailureReason_FailureReason_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_FailureReason_Name(ExtensionInstallReportLogEvent_FailureReason value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_FailureReason_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_FailureReason>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_FailureReason_Name.");
+  return ExtensionInstallReportLogEvent_FailureReason_Name(static_cast<ExtensionInstallReportLogEvent_FailureReason>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_FailureReason_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_FailureReason* value);
+enum ExtensionInstallReportLogEvent_InstallationStage : int {
+  ExtensionInstallReportLogEvent_InstallationStage_INSTALLATION_STAGE_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_InstallationStage_CREATED = 1,
+  ExtensionInstallReportLogEvent_InstallationStage_PENDING = 2,
+  ExtensionInstallReportLogEvent_InstallationStage_DOWNLOADING = 3,
+  ExtensionInstallReportLogEvent_InstallationStage_INSTALLING = 4,
+  ExtensionInstallReportLogEvent_InstallationStage_COMPLETE = 5
+};
+bool ExtensionInstallReportLogEvent_InstallationStage_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent_InstallationStage_InstallationStage_MIN = ExtensionInstallReportLogEvent_InstallationStage_INSTALLATION_STAGE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent_InstallationStage_InstallationStage_MAX = ExtensionInstallReportLogEvent_InstallationStage_COMPLETE;
+constexpr int ExtensionInstallReportLogEvent_InstallationStage_InstallationStage_ARRAYSIZE = ExtensionInstallReportLogEvent_InstallationStage_InstallationStage_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_InstallationStage_Name(ExtensionInstallReportLogEvent_InstallationStage value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_InstallationStage_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_InstallationStage>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_InstallationStage_Name.");
+  return ExtensionInstallReportLogEvent_InstallationStage_Name(static_cast<ExtensionInstallReportLogEvent_InstallationStage>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_InstallationStage_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_InstallationStage* value);
+enum ExtensionInstallReportLogEvent_UserType : int {
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_REGULAR = 1,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_GUEST = 2,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_PUBLIC_ACCOUNT = 3,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_SUPERVISED_DEPRECATED PROTOBUF_DEPRECATED_ENUM = 4,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_KIOSK_APP = 5,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_CHILD = 6,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_ARC_KIOSK_APP = 7,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_ACTIVE_DIRECTORY = 8,
+  ExtensionInstallReportLogEvent_UserType_USER_TYPE_WEB_KIOSK_APP = 9
+};
+bool ExtensionInstallReportLogEvent_UserType_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent_UserType_UserType_MIN = ExtensionInstallReportLogEvent_UserType_USER_TYPE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent_UserType_UserType_MAX = ExtensionInstallReportLogEvent_UserType_USER_TYPE_WEB_KIOSK_APP;
+constexpr int ExtensionInstallReportLogEvent_UserType_UserType_ARRAYSIZE = ExtensionInstallReportLogEvent_UserType_UserType_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_UserType_Name(ExtensionInstallReportLogEvent_UserType value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_UserType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_UserType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_UserType_Name.");
+  return ExtensionInstallReportLogEvent_UserType_Name(static_cast<ExtensionInstallReportLogEvent_UserType>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_UserType_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_UserType* value);
+enum ExtensionInstallReportLogEvent_DownloadingStage : int {
+  ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_STAGE_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOAD_PENDING = 1,
+  ExtensionInstallReportLogEvent_DownloadingStage_QUEUED_FOR_MANIFEST = 2,
+  ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_MANIFEST = 3,
+  ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_MANIFEST_RETRY = 4,
+  ExtensionInstallReportLogEvent_DownloadingStage_PARSING_MANIFEST = 5,
+  ExtensionInstallReportLogEvent_DownloadingStage_MANIFEST_LOADED = 6,
+  ExtensionInstallReportLogEvent_DownloadingStage_QUEUED_FOR_CRX = 7,
+  ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_CRX = 8,
+  ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_CRX_RETRY = 9,
+  ExtensionInstallReportLogEvent_DownloadingStage_FINISHED = 10
+};
+bool ExtensionInstallReportLogEvent_DownloadingStage_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent_DownloadingStage_DownloadingStage_MIN = ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_STAGE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent_DownloadingStage_DownloadingStage_MAX = ExtensionInstallReportLogEvent_DownloadingStage_FINISHED;
+constexpr int ExtensionInstallReportLogEvent_DownloadingStage_DownloadingStage_ARRAYSIZE = ExtensionInstallReportLogEvent_DownloadingStage_DownloadingStage_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_DownloadingStage_Name(ExtensionInstallReportLogEvent_DownloadingStage value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_DownloadingStage_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_DownloadingStage>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_DownloadingStage_Name.");
+  return ExtensionInstallReportLogEvent_DownloadingStage_Name(static_cast<ExtensionInstallReportLogEvent_DownloadingStage>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_DownloadingStage_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_DownloadingStage* value);
+enum ExtensionInstallReportLogEvent_InstallCreationStage : int {
+  ExtensionInstallReportLogEvent_InstallCreationStage_INSTALL_CREATION_STAGE_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_InstallCreationStage_CREATION_INITIATED = 1,
+  ExtensionInstallReportLogEvent_InstallCreationStage_NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_FORCED = 2,
+  ExtensionInstallReportLogEvent_InstallCreationStage_NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_NOT_FORCED = 3,
+  ExtensionInstallReportLogEvent_InstallCreationStage_NOTIFIED_FROM_MANAGEMENT = 4,
+  ExtensionInstallReportLogEvent_InstallCreationStage_NOTIFIED_FROM_MANAGEMENT_NOT_FORCED = 5,
+  ExtensionInstallReportLogEvent_InstallCreationStage_SEEN_BY_POLICY_LOADER = 6,
+  ExtensionInstallReportLogEvent_InstallCreationStage_SEEN_BY_EXTERNAL_PROVIDER = 7
+};
+bool ExtensionInstallReportLogEvent_InstallCreationStage_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent_InstallCreationStage_InstallCreationStage_MIN = ExtensionInstallReportLogEvent_InstallCreationStage_INSTALL_CREATION_STAGE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent_InstallCreationStage_InstallCreationStage_MAX = ExtensionInstallReportLogEvent_InstallCreationStage_SEEN_BY_EXTERNAL_PROVIDER;
+constexpr int ExtensionInstallReportLogEvent_InstallCreationStage_InstallCreationStage_ARRAYSIZE = ExtensionInstallReportLogEvent_InstallCreationStage_InstallCreationStage_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_InstallCreationStage_Name(ExtensionInstallReportLogEvent_InstallCreationStage value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_InstallCreationStage_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_InstallCreationStage>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_InstallCreationStage_Name.");
+  return ExtensionInstallReportLogEvent_InstallCreationStage_Name(static_cast<ExtensionInstallReportLogEvent_InstallCreationStage>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_InstallCreationStage_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_InstallCreationStage* value);
+enum ExtensionInstallReportLogEvent_DownloadCacheStatus : int {
+  ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_DISABLED = 1,
+  ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_MISS = 2,
+  ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_OUTDATED = 3,
+  ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_HIT = 4,
+  ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_HIT_ON_MANIFEST_FETCH_FAILURE = 5
+};
+bool ExtensionInstallReportLogEvent_DownloadCacheStatus_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent_DownloadCacheStatus_DownloadCacheStatus_MIN = ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent_DownloadCacheStatus_DownloadCacheStatus_MAX = ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_HIT_ON_MANIFEST_FETCH_FAILURE;
+constexpr int ExtensionInstallReportLogEvent_DownloadCacheStatus_DownloadCacheStatus_ARRAYSIZE = ExtensionInstallReportLogEvent_DownloadCacheStatus_DownloadCacheStatus_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_DownloadCacheStatus_Name(ExtensionInstallReportLogEvent_DownloadCacheStatus value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_DownloadCacheStatus_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_DownloadCacheStatus>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_DownloadCacheStatus_Name.");
+  return ExtensionInstallReportLogEvent_DownloadCacheStatus_Name(static_cast<ExtensionInstallReportLogEvent_DownloadCacheStatus>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_DownloadCacheStatus_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_DownloadCacheStatus* value);
+enum ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason : int {
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SANDBOXED_UNPACKER_FAILURE_REASON_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_GET_TEMP_DIRECTORY = 1,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_CREATE_TEMP_DIRECTORY = 2,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_FAILED_TO_COPY_EXTENSION_FILE_TO_TEMP_DIRECTORY = 3,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_GET_SANDBOX_FRIENDLY_PATH = 4,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_LOCALIZE_EXTENSION = 5,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_MANIFEST = 6,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_UNPACKER_CLIENT_FAILED = 7,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_UTILITY_PROCESS_CRASHED_WHILE_TRYING_TO_INSTALL = 8,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_FILE_NOT_READABLE = 9,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_HEADER_INVALID = 10,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_MAGIC_NUMBER_INVALID = 11,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_VERSION_NUMBER_INVALID = 12,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_EXCESSIVELY_LARGE_KEY_OR_SIGNATURE = 13,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_ZERO_KEY_LENGTH = 14,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_ZERO_SIGNATURE_LENGTH = 15,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_PUBLIC_KEY_INVALID = 16,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_SIGNATURE_INVALID = 17,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_SIGNATURE_VERIFICATION_INITIALIZATION_FAILED = 18,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_SIGNATURE_VERIFICATION_FAILED = 19,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SERIALIZING_MANIFEST_JSON = 20,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SAVING_MANIFEST_JSON = 21,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_READ_IMAGE_DATA_FROM_DISK_UNUSED = 22,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_DECODED_IMAGES_DO_NOT_MATCH_THE_MANIFEST_UNUSED = 23,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_PATH_FOR_BROWSER_IMAGE = 24,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_REMOVING_OLD_IMAGE_FILE = 25,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_PATH_FOR_BITMAP_IMAGE = 26,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_RE_ENCODING_THEME_IMAGE = 27,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SAVING_THEME_IMAGE = 28,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_DEPRECATED_ABORTED_DUE_TO_SHUTDOWN = 29,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_READ_CATALOG_DATA_FROM_DISK_UNUSED = 30,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_CATALOG_DATA = 31,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_PATH_FOR_CATALOG_UNUSED = 32,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SERIALIZING_CATALOG = 33,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SAVING_CATALOG = 34,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_HASH_VERIFICATION_FAILED = 35,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_UNZIP_FAILED = 36,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_DIRECTORY_MOVE_FAILED = 37,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_FILE_IS_DELTA_UPDATE = 38,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_EXPECTED_HASH_INVALID = 39,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_DEPRECATED_ERROR_PARSING_DNR_RULESET = 40,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_INDEXING_DNR_RULESET = 41,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_REQUIRED_PROOF_MISSING = 42,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_HEADER_VERIFIED_CONTENTS_UNCOMPRESSING_FAILURE = 43,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_MALFORMED_VERIFIED_CONTENTS = 44,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_CREATE_METADATA_DIRECTORY = 45,
+  ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_WRITE_VERIFIED_CONTENTS_INTO_FILE = 46
+};
+bool ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SandboxedUnpackerFailureReason_MIN = ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SANDBOXED_UNPACKER_FAILURE_REASON_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SandboxedUnpackerFailureReason_MAX = ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_WRITE_VERIFIED_CONTENTS_INTO_FILE;
+constexpr int ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SandboxedUnpackerFailureReason_ARRAYSIZE = ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SandboxedUnpackerFailureReason_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Name(ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Name.");
+  return ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Name(static_cast<ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason* value);
+enum ExtensionInstallReportLogEvent_ManifestInvalidError : int {
+  ExtensionInstallReportLogEvent_ManifestInvalidError_MANIFEST_INVALID_ERROR_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_XML_PARSING_FAILED = 1,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_XLMNS_ON_GUPDATE_TAG = 2,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_MISSING_GUPDATE_TAG = 3,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_PROTOCOL_ON_GUPDATE_TAG = 4,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_MISSING_APP_ID = 5,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_MISSING_UPDATE_CHECK_TAGS = 6,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_MULTIPLE_UPDATE_CHECK_TAGS = 7,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_PRODVERSION_MIN = 8,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_EMPTY_CODEBASE_URL = 9,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_CODEBASE_URL = 10,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_MISSING_VERSION_FOR_UPDATE_CHECK = 11,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_VERSION = 12,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_BAD_UPDATE_SPECIFICATION = 13,
+  ExtensionInstallReportLogEvent_ManifestInvalidError_BAD_APP_STATUS = 14
+};
+bool ExtensionInstallReportLogEvent_ManifestInvalidError_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent_ManifestInvalidError_ManifestInvalidError_MIN = ExtensionInstallReportLogEvent_ManifestInvalidError_MANIFEST_INVALID_ERROR_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent_ManifestInvalidError_ManifestInvalidError_MAX = ExtensionInstallReportLogEvent_ManifestInvalidError_BAD_APP_STATUS;
+constexpr int ExtensionInstallReportLogEvent_ManifestInvalidError_ManifestInvalidError_ARRAYSIZE = ExtensionInstallReportLogEvent_ManifestInvalidError_ManifestInvalidError_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_ManifestInvalidError_Name(ExtensionInstallReportLogEvent_ManifestInvalidError value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_ManifestInvalidError_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_ManifestInvalidError>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_ManifestInvalidError_Name.");
+  return ExtensionInstallReportLogEvent_ManifestInvalidError_Name(static_cast<ExtensionInstallReportLogEvent_ManifestInvalidError>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_ManifestInvalidError_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_ManifestInvalidError* value);
+enum ExtensionInstallReportLogEvent_CrxInstallErrorDetail : int {
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CRX_INSTALL_ERROR_DETAIL_UNKNOWN = 0,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CONVERT_USER_SCRIPT_TO_EXTENSION_FAILED = 1,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UNEXPECTED_ID = 2,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UNEXPECTED_VERSION = 3,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_MISMATCHED_VERSION = 4,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CRX_ERROR_MANIFEST_INVALID = 5,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_INSTALL_NOT_ENABLED = 6,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_OFFSTORE_INSTALL_DISALLOWED = 7,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_INCORRECT_APP_CONTENT_TYPE = 8,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_NOT_INSTALLED_FROM_GALLERY = 9,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_INCORRECT_INSTALL_HOST = 10,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_DEPENDENCY_NOT_SHARED_MODULE = 11,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_DEPENDENCY_OLD_VERSION = 12,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_DEPENDENCY_NOT_ALLOWLISTED = 13,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UNSUPPORTED_REQUIREMENTS = 14,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_EXTENSION_IS_BLOCKLISTED = 15,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_DISALLOWED_BY_POLICY = 16,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_KIOSK_MODE_ONLY = 17,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_OVERLAPPING_WEB_EXTENT = 18,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CANT_DOWNGRADE_VERSION = 19,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_MOVE_DIRECTORY_TO_PROFILE_FAILED = 20,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CANT_LOAD_EXTENSION = 21,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_USER_CANCELED = 22,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_USER_ABORTED = 23,
+  ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UPDATE_NON_EXISTING_EXTENSION = 24
+};
+bool ExtensionInstallReportLogEvent_CrxInstallErrorDetail_IsValid(int value);
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CrxInstallErrorDetail_MIN = ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CRX_INSTALL_ERROR_DETAIL_UNKNOWN;
+constexpr ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CrxInstallErrorDetail_MAX = ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UPDATE_NON_EXISTING_EXTENSION;
+constexpr int ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CrxInstallErrorDetail_ARRAYSIZE = ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CrxInstallErrorDetail_MAX + 1;
+
+const std::string& ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Name(ExtensionInstallReportLogEvent_CrxInstallErrorDetail value);
+template<typename T>
+inline const std::string& ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ExtensionInstallReportLogEvent_CrxInstallErrorDetail>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Name.");
+  return ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Name(static_cast<ExtensionInstallReportLogEvent_CrxInstallErrorDetail>(enum_t_value));
+}
+bool ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Parse(
+    const std::string& name, ExtensionInstallReportLogEvent_CrxInstallErrorDetail* value);
+enum AppInstallReportLogEvent_EventType : int {
+  AppInstallReportLogEvent_EventType_LOG_EVENT_TYPE_UNKNOWN = 0,
+  AppInstallReportLogEvent_EventType_SERVER_REQUEST = 1,
+  AppInstallReportLogEvent_EventType_CLOUDDPC_REQUEST = 2,
+  AppInstallReportLogEvent_EventType_CLOUDDPS_REQUEST = 3,
+  AppInstallReportLogEvent_EventType_CLOUDDPS_RESPONSE = 4,
+  AppInstallReportLogEvent_EventType_PHONESKY_LOG = 5,
+  AppInstallReportLogEvent_EventType_SUCCESS = 6,
+  AppInstallReportLogEvent_EventType_CANCELED = 7,
+  AppInstallReportLogEvent_EventType_CONNECTIVITY_CHANGE = 8,
+  AppInstallReportLogEvent_EventType_SESSION_STATE_CHANGE = 9,
+  AppInstallReportLogEvent_EventType_INSTALLATION_STARTED = 10,
+  AppInstallReportLogEvent_EventType_INSTALLATION_FINISHED = 11,
+  AppInstallReportLogEvent_EventType_INSTALLATION_FAILED = 12,
+  AppInstallReportLogEvent_EventType_DIRECT_INSTALL = 13,
+  AppInstallReportLogEvent_EventType_CLOUDDPC_MAIN_LOOP_FAILED = 14
+};
+bool AppInstallReportLogEvent_EventType_IsValid(int value);
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent_EventType_EventType_MIN = AppInstallReportLogEvent_EventType_LOG_EVENT_TYPE_UNKNOWN;
+constexpr AppInstallReportLogEvent_EventType AppInstallReportLogEvent_EventType_EventType_MAX = AppInstallReportLogEvent_EventType_CLOUDDPC_MAIN_LOOP_FAILED;
+constexpr int AppInstallReportLogEvent_EventType_EventType_ARRAYSIZE = AppInstallReportLogEvent_EventType_EventType_MAX + 1;
+
+const std::string& AppInstallReportLogEvent_EventType_Name(AppInstallReportLogEvent_EventType value);
+template<typename T>
+inline const std::string& AppInstallReportLogEvent_EventType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AppInstallReportLogEvent_EventType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AppInstallReportLogEvent_EventType_Name.");
+  return AppInstallReportLogEvent_EventType_Name(static_cast<AppInstallReportLogEvent_EventType>(enum_t_value));
+}
+bool AppInstallReportLogEvent_EventType_Parse(
+    const std::string& name, AppInstallReportLogEvent_EventType* value);
+enum AppInstallReportLogEvent_SessionStateChangeType : int {
+  AppInstallReportLogEvent_SessionStateChangeType_SESSION_STATE_CHANGE_TYPE_UNKNOWN = 0,
+  AppInstallReportLogEvent_SessionStateChangeType_LOGIN = 1,
+  AppInstallReportLogEvent_SessionStateChangeType_LOGOUT = 2,
+  AppInstallReportLogEvent_SessionStateChangeType_SUSPEND = 3,
+  AppInstallReportLogEvent_SessionStateChangeType_RESUME = 4
+};
+bool AppInstallReportLogEvent_SessionStateChangeType_IsValid(int value);
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MIN = AppInstallReportLogEvent_SessionStateChangeType_SESSION_STATE_CHANGE_TYPE_UNKNOWN;
+constexpr AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MAX = AppInstallReportLogEvent_SessionStateChangeType_RESUME;
+constexpr int AppInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_ARRAYSIZE = AppInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MAX + 1;
+
+const std::string& AppInstallReportLogEvent_SessionStateChangeType_Name(AppInstallReportLogEvent_SessionStateChangeType value);
+template<typename T>
+inline const std::string& AppInstallReportLogEvent_SessionStateChangeType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AppInstallReportLogEvent_SessionStateChangeType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AppInstallReportLogEvent_SessionStateChangeType_Name.");
+  return AppInstallReportLogEvent_SessionStateChangeType_Name(static_cast<AppInstallReportLogEvent_SessionStateChangeType>(enum_t_value));
+}
+bool AppInstallReportLogEvent_SessionStateChangeType_Parse(
+    const std::string& name, AppInstallReportLogEvent_SessionStateChangeType* value);
+enum RefreshAccountRequest_AccountType : int {
+  RefreshAccountRequest_AccountType_ACCOUNT_TYPE_UNSPECIFIED = 0,
+  RefreshAccountRequest_AccountType_CHROME_OS_DEMO_MODE = 1
+};
+bool RefreshAccountRequest_AccountType_IsValid(int value);
+constexpr RefreshAccountRequest_AccountType RefreshAccountRequest_AccountType_AccountType_MIN = RefreshAccountRequest_AccountType_ACCOUNT_TYPE_UNSPECIFIED;
+constexpr RefreshAccountRequest_AccountType RefreshAccountRequest_AccountType_AccountType_MAX = RefreshAccountRequest_AccountType_CHROME_OS_DEMO_MODE;
+constexpr int RefreshAccountRequest_AccountType_AccountType_ARRAYSIZE = RefreshAccountRequest_AccountType_AccountType_MAX + 1;
+
+const std::string& RefreshAccountRequest_AccountType_Name(RefreshAccountRequest_AccountType value);
+template<typename T>
+inline const std::string& RefreshAccountRequest_AccountType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, RefreshAccountRequest_AccountType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function RefreshAccountRequest_AccountType_Name.");
+  return RefreshAccountRequest_AccountType_Name(static_cast<RefreshAccountRequest_AccountType>(enum_t_value));
+}
+bool RefreshAccountRequest_AccountType_Parse(
+    const std::string& name, RefreshAccountRequest_AccountType* value);
+enum PrintJobEvent_PrintSettings_ColorMode : int {
+  PrintJobEvent_PrintSettings_ColorMode_UNKNOWN_COLOR_MODE = 0,
+  PrintJobEvent_PrintSettings_ColorMode_BLACK_AND_WHITE = 1,
+  PrintJobEvent_PrintSettings_ColorMode_COLOR = 2
+};
+bool PrintJobEvent_PrintSettings_ColorMode_IsValid(int value);
+constexpr PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings_ColorMode_ColorMode_MIN = PrintJobEvent_PrintSettings_ColorMode_UNKNOWN_COLOR_MODE;
+constexpr PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings_ColorMode_ColorMode_MAX = PrintJobEvent_PrintSettings_ColorMode_COLOR;
+constexpr int PrintJobEvent_PrintSettings_ColorMode_ColorMode_ARRAYSIZE = PrintJobEvent_PrintSettings_ColorMode_ColorMode_MAX + 1;
+
+const std::string& PrintJobEvent_PrintSettings_ColorMode_Name(PrintJobEvent_PrintSettings_ColorMode value);
+template<typename T>
+inline const std::string& PrintJobEvent_PrintSettings_ColorMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PrintJobEvent_PrintSettings_ColorMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PrintJobEvent_PrintSettings_ColorMode_Name.");
+  return PrintJobEvent_PrintSettings_ColorMode_Name(static_cast<PrintJobEvent_PrintSettings_ColorMode>(enum_t_value));
+}
+bool PrintJobEvent_PrintSettings_ColorMode_Parse(
+    const std::string& name, PrintJobEvent_PrintSettings_ColorMode* value);
+enum PrintJobEvent_PrintSettings_DuplexMode : int {
+  PrintJobEvent_PrintSettings_DuplexMode_UNKNOWN_DUPLEX_MODE = 0,
+  PrintJobEvent_PrintSettings_DuplexMode_ONE_SIDED = 1,
+  PrintJobEvent_PrintSettings_DuplexMode_TWO_SIDED_LONG_EDGE = 2,
+  PrintJobEvent_PrintSettings_DuplexMode_TWO_SIDED_SHORT_EDGE = 3
+};
+bool PrintJobEvent_PrintSettings_DuplexMode_IsValid(int value);
+constexpr PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings_DuplexMode_DuplexMode_MIN = PrintJobEvent_PrintSettings_DuplexMode_UNKNOWN_DUPLEX_MODE;
+constexpr PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings_DuplexMode_DuplexMode_MAX = PrintJobEvent_PrintSettings_DuplexMode_TWO_SIDED_SHORT_EDGE;
+constexpr int PrintJobEvent_PrintSettings_DuplexMode_DuplexMode_ARRAYSIZE = PrintJobEvent_PrintSettings_DuplexMode_DuplexMode_MAX + 1;
+
+const std::string& PrintJobEvent_PrintSettings_DuplexMode_Name(PrintJobEvent_PrintSettings_DuplexMode value);
+template<typename T>
+inline const std::string& PrintJobEvent_PrintSettings_DuplexMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PrintJobEvent_PrintSettings_DuplexMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PrintJobEvent_PrintSettings_DuplexMode_Name.");
+  return PrintJobEvent_PrintSettings_DuplexMode_Name(static_cast<PrintJobEvent_PrintSettings_DuplexMode>(enum_t_value));
+}
+bool PrintJobEvent_PrintSettings_DuplexMode_Parse(
+    const std::string& name, PrintJobEvent_PrintSettings_DuplexMode* value);
+enum PrintJobEvent_UserType : int {
+  PrintJobEvent_UserType_UNKNOWN_USER_TYPE = 0,
+  PrintJobEvent_UserType_REGULAR = 1,
+  PrintJobEvent_UserType_GUEST = 2,
+  PrintJobEvent_UserType_KIOSK = 3
+};
+bool PrintJobEvent_UserType_IsValid(int value);
+constexpr PrintJobEvent_UserType PrintJobEvent_UserType_UserType_MIN = PrintJobEvent_UserType_UNKNOWN_USER_TYPE;
+constexpr PrintJobEvent_UserType PrintJobEvent_UserType_UserType_MAX = PrintJobEvent_UserType_KIOSK;
+constexpr int PrintJobEvent_UserType_UserType_ARRAYSIZE = PrintJobEvent_UserType_UserType_MAX + 1;
+
+const std::string& PrintJobEvent_UserType_Name(PrintJobEvent_UserType value);
+template<typename T>
+inline const std::string& PrintJobEvent_UserType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PrintJobEvent_UserType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PrintJobEvent_UserType_Name.");
+  return PrintJobEvent_UserType_Name(static_cast<PrintJobEvent_UserType>(enum_t_value));
+}
+bool PrintJobEvent_UserType_Parse(
+    const std::string& name, PrintJobEvent_UserType* value);
+enum App_AppType : int {
+  App_AppType_UNKNOWN = 0,
+  App_AppType_ARC = 1,
+  App_AppType_BUILT_IN = 2,
+  App_AppType_CROSTINI = 3,
+  App_AppType_EXTENSION = 4,
+  App_AppType_WEB = 5,
+  App_AppType_PLUGIN_VM = 6,
+  App_AppType_BOREALIS = 7
+};
+bool App_AppType_IsValid(int value);
+constexpr App_AppType App_AppType_AppType_MIN = App_AppType_UNKNOWN;
+constexpr App_AppType App_AppType_AppType_MAX = App_AppType_BOREALIS;
+constexpr int App_AppType_AppType_ARRAYSIZE = App_AppType_AppType_MAX + 1;
+
+const std::string& App_AppType_Name(App_AppType value);
+template<typename T>
+inline const std::string& App_AppType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, App_AppType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function App_AppType_Name.");
+  return App_AppType_Name(static_cast<App_AppType>(enum_t_value));
+}
+bool App_AppType_Parse(
+    const std::string& name, App_AppType* value);
+enum AppActivity_AppState : int {
+  AppActivity_AppState_UNKNOWN = 0,
+  AppActivity_AppState_DEFAULT = 1,
+  AppActivity_AppState_ALWAYS_AVAILABLE = 2,
+  AppActivity_AppState_BLOCKED = 3,
+  AppActivity_AppState_LIMIT_REACHED = 4,
+  AppActivity_AppState_UNINSTALLED = 5
+};
+bool AppActivity_AppState_IsValid(int value);
+constexpr AppActivity_AppState AppActivity_AppState_AppState_MIN = AppActivity_AppState_UNKNOWN;
+constexpr AppActivity_AppState AppActivity_AppState_AppState_MAX = AppActivity_AppState_UNINSTALLED;
+constexpr int AppActivity_AppState_AppState_ARRAYSIZE = AppActivity_AppState_AppState_MAX + 1;
+
+const std::string& AppActivity_AppState_Name(AppActivity_AppState value);
+template<typename T>
+inline const std::string& AppActivity_AppState_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, AppActivity_AppState>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function AppActivity_AppState_Name.");
+  return AppActivity_AppState_Name(static_cast<AppActivity_AppState>(enum_t_value));
+}
+bool AppActivity_AppState_Parse(
+    const std::string& name, AppActivity_AppState* value);
+enum ClientCertificateProvisioningResponse_Error : int {
+  ClientCertificateProvisioningResponse_Error_UNDEFINED = 0,
+  ClientCertificateProvisioningResponse_Error_TIMED_OUT = 1,
+  ClientCertificateProvisioningResponse_Error_IDENTITY_VERIFICATION_ERROR = 2,
+  ClientCertificateProvisioningResponse_Error_CA_ERROR = 3,
+  ClientCertificateProvisioningResponse_Error_INCONSISTENT_DATA = 4,
+  ClientCertificateProvisioningResponse_Error_BAD_PUBLIC_KEY = 5,
+  ClientCertificateProvisioningResponse_Error_BAD_CA_CERTIFICATE_SPECIFIED = 6,
+  ClientCertificateProvisioningResponse_Error_BAD_CLIENT_CERTIFICATE_RECEIVED = 7,
+  ClientCertificateProvisioningResponse_Error_INVALID_CSR_SIGNATURE = 8,
+  ClientCertificateProvisioningResponse_Error_CSR_ALREADY_SENT = 9
+};
+bool ClientCertificateProvisioningResponse_Error_IsValid(int value);
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse_Error_Error_MIN = ClientCertificateProvisioningResponse_Error_UNDEFINED;
+constexpr ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse_Error_Error_MAX = ClientCertificateProvisioningResponse_Error_CSR_ALREADY_SENT;
+constexpr int ClientCertificateProvisioningResponse_Error_Error_ARRAYSIZE = ClientCertificateProvisioningResponse_Error_Error_MAX + 1;
+
+const std::string& ClientCertificateProvisioningResponse_Error_Name(ClientCertificateProvisioningResponse_Error value);
+template<typename T>
+inline const std::string& ClientCertificateProvisioningResponse_Error_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ClientCertificateProvisioningResponse_Error>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ClientCertificateProvisioningResponse_Error_Name.");
+  return ClientCertificateProvisioningResponse_Error_Name(static_cast<ClientCertificateProvisioningResponse_Error>(enum_t_value));
+}
+bool ClientCertificateProvisioningResponse_Error_Parse(
+    const std::string& name, ClientCertificateProvisioningResponse_Error* value);
+enum BrowserPublicKeyUploadRequest_KeyTrustLevel : int {
+  BrowserPublicKeyUploadRequest_KeyTrustLevel_KEY_TRUST_LEVEL_UNSPECIFIED = 0,
+  BrowserPublicKeyUploadRequest_KeyTrustLevel_CHROME_BROWSER_TPM_KEY = 1,
+  BrowserPublicKeyUploadRequest_KeyTrustLevel_CHROME_BROWSER_OS_KEY = 2
+};
+bool BrowserPublicKeyUploadRequest_KeyTrustLevel_IsValid(int value);
+constexpr BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest_KeyTrustLevel_KeyTrustLevel_MIN = BrowserPublicKeyUploadRequest_KeyTrustLevel_KEY_TRUST_LEVEL_UNSPECIFIED;
+constexpr BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest_KeyTrustLevel_KeyTrustLevel_MAX = BrowserPublicKeyUploadRequest_KeyTrustLevel_CHROME_BROWSER_OS_KEY;
+constexpr int BrowserPublicKeyUploadRequest_KeyTrustLevel_KeyTrustLevel_ARRAYSIZE = BrowserPublicKeyUploadRequest_KeyTrustLevel_KeyTrustLevel_MAX + 1;
+
+const std::string& BrowserPublicKeyUploadRequest_KeyTrustLevel_Name(BrowserPublicKeyUploadRequest_KeyTrustLevel value);
+template<typename T>
+inline const std::string& BrowserPublicKeyUploadRequest_KeyTrustLevel_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, BrowserPublicKeyUploadRequest_KeyTrustLevel>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function BrowserPublicKeyUploadRequest_KeyTrustLevel_Name.");
+  return BrowserPublicKeyUploadRequest_KeyTrustLevel_Name(static_cast<BrowserPublicKeyUploadRequest_KeyTrustLevel>(enum_t_value));
+}
+bool BrowserPublicKeyUploadRequest_KeyTrustLevel_Parse(
+    const std::string& name, BrowserPublicKeyUploadRequest_KeyTrustLevel* value);
+enum BrowserPublicKeyUploadRequest_KeyType : int {
+  BrowserPublicKeyUploadRequest_KeyType_KEY_TYPE_UNSPECIFIED = 0,
+  BrowserPublicKeyUploadRequest_KeyType_RSA_KEY = 1,
+  BrowserPublicKeyUploadRequest_KeyType_EC_KEY = 2
+};
+bool BrowserPublicKeyUploadRequest_KeyType_IsValid(int value);
+constexpr BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest_KeyType_KeyType_MIN = BrowserPublicKeyUploadRequest_KeyType_KEY_TYPE_UNSPECIFIED;
+constexpr BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest_KeyType_KeyType_MAX = BrowserPublicKeyUploadRequest_KeyType_EC_KEY;
+constexpr int BrowserPublicKeyUploadRequest_KeyType_KeyType_ARRAYSIZE = BrowserPublicKeyUploadRequest_KeyType_KeyType_MAX + 1;
+
+const std::string& BrowserPublicKeyUploadRequest_KeyType_Name(BrowserPublicKeyUploadRequest_KeyType value);
+template<typename T>
+inline const std::string& BrowserPublicKeyUploadRequest_KeyType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, BrowserPublicKeyUploadRequest_KeyType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function BrowserPublicKeyUploadRequest_KeyType_Name.");
+  return BrowserPublicKeyUploadRequest_KeyType_Name(static_cast<BrowserPublicKeyUploadRequest_KeyType>(enum_t_value));
+}
+bool BrowserPublicKeyUploadRequest_KeyType_Parse(
+    const std::string& name, BrowserPublicKeyUploadRequest_KeyType* value);
+enum BrowserPublicKeyUploadResponse_ResponseCode : int {
+  BrowserPublicKeyUploadResponse_ResponseCode_UNDEFINED = 0,
+  BrowserPublicKeyUploadResponse_ResponseCode_SUCCESS = 1,
+  BrowserPublicKeyUploadResponse_ResponseCode_INVALID_SIGNATURE = 2
+};
+bool BrowserPublicKeyUploadResponse_ResponseCode_IsValid(int value);
+constexpr BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse_ResponseCode_ResponseCode_MIN = BrowserPublicKeyUploadResponse_ResponseCode_UNDEFINED;
+constexpr BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse_ResponseCode_ResponseCode_MAX = BrowserPublicKeyUploadResponse_ResponseCode_INVALID_SIGNATURE;
+constexpr int BrowserPublicKeyUploadResponse_ResponseCode_ResponseCode_ARRAYSIZE = BrowserPublicKeyUploadResponse_ResponseCode_ResponseCode_MAX + 1;
+
+const std::string& BrowserPublicKeyUploadResponse_ResponseCode_Name(BrowserPublicKeyUploadResponse_ResponseCode value);
+template<typename T>
+inline const std::string& BrowserPublicKeyUploadResponse_ResponseCode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, BrowserPublicKeyUploadResponse_ResponseCode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function BrowserPublicKeyUploadResponse_ResponseCode_Name.");
+  return BrowserPublicKeyUploadResponse_ResponseCode_Name(static_cast<BrowserPublicKeyUploadResponse_ResponseCode>(enum_t_value));
+}
+bool BrowserPublicKeyUploadResponse_ResponseCode_Parse(
+    const std::string& name, BrowserPublicKeyUploadResponse_ResponseCode* value);
+enum Channel : int {
+  CHANNEL_UNKNOWN = 0,
+  CHANNEL_CANARY = 1,
+  CHANNEL_DEV = 2,
+  CHANNEL_BETA = 3,
+  CHANNEL_STABLE = 4
+};
+bool Channel_IsValid(int value);
+constexpr Channel Channel_MIN = CHANNEL_UNKNOWN;
+constexpr Channel Channel_MAX = CHANNEL_STABLE;
+constexpr int Channel_ARRAYSIZE = Channel_MAX + 1;
+
+const std::string& Channel_Name(Channel value);
+template<typename T>
+inline const std::string& Channel_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, Channel>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function Channel_Name.");
+  return Channel_Name(static_cast<Channel>(enum_t_value));
+}
+bool Channel_Parse(
+    const std::string& name, Channel* value);
+enum BusDeviceClass : int {
+  DEVICE_CLASS_UNSPECIFIED = 0,
+  DISPLAY_CONTROLLER = 1,
+  ETHERNET_CONTROLLER = 2,
+  WIRELESS_CONTROLLER = 3,
+  BLUETOOTH_ADAPTER = 4,
+  THUNDERBOLT_CONTROLLER = 5
+};
+bool BusDeviceClass_IsValid(int value);
+constexpr BusDeviceClass BusDeviceClass_MIN = DEVICE_CLASS_UNSPECIFIED;
+constexpr BusDeviceClass BusDeviceClass_MAX = THUNDERBOLT_CONTROLLER;
+constexpr int BusDeviceClass_ARRAYSIZE = BusDeviceClass_MAX + 1;
+
+const std::string& BusDeviceClass_Name(BusDeviceClass value);
+template<typename T>
+inline const std::string& BusDeviceClass_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, BusDeviceClass>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function BusDeviceClass_Name.");
+  return BusDeviceClass_Name(static_cast<BusDeviceClass>(enum_t_value));
+}
+bool BusDeviceClass_Parse(
+    const std::string& name, BusDeviceClass* value);
+enum BusType : int {
+  BUS_TYPE_UNSPECIFIED = 0,
+  PCI_BUS = 1,
+  USB_BUS = 2,
+  THUNDERBOLT_BUS = 3
+};
+bool BusType_IsValid(int value);
+constexpr BusType BusType_MIN = BUS_TYPE_UNSPECIFIED;
+constexpr BusType BusType_MAX = THUNDERBOLT_BUS;
+constexpr int BusType_ARRAYSIZE = BusType_MAX + 1;
+
+const std::string& BusType_Name(BusType value);
+template<typename T>
+inline const std::string& BusType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, BusType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function BusType_Name.");
+  return BusType_Name(static_cast<BusType>(enum_t_value));
+}
+bool BusType_Parse(
+    const std::string& name, BusType* value);
+enum PartialReportType : int {
+  UNSPECIFIED = 0,
+  EXTENSION_REQUEST = 1
+};
+bool PartialReportType_IsValid(int value);
+constexpr PartialReportType PartialReportType_MIN = UNSPECIFIED;
+constexpr PartialReportType PartialReportType_MAX = EXTENSION_REQUEST;
+constexpr int PartialReportType_ARRAYSIZE = PartialReportType_MAX + 1;
+
+const std::string& PartialReportType_Name(PartialReportType value);
+template<typename T>
+inline const std::string& PartialReportType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PartialReportType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PartialReportType_Name.");
+  return PartialReportType_Name(static_cast<PartialReportType>(enum_t_value));
+}
+bool PartialReportType_Parse(
+    const std::string& name, PartialReportType* value);
+enum CrostiniAppType : int {
+  CROSTINI_APP_TYPE_TERMINAL = 0,
+  CROSTINI_APP_TYPE_INTERACTIVE = 1,
+  CROSTINI_APP_TYPE_OTHER = 2
+};
+bool CrostiniAppType_IsValid(int value);
+constexpr CrostiniAppType CrostiniAppType_MIN = CROSTINI_APP_TYPE_TERMINAL;
+constexpr CrostiniAppType CrostiniAppType_MAX = CROSTINI_APP_TYPE_OTHER;
+constexpr int CrostiniAppType_ARRAYSIZE = CrostiniAppType_MAX + 1;
+
+const std::string& CrostiniAppType_Name(CrostiniAppType value);
+template<typename T>
+inline const std::string& CrostiniAppType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, CrostiniAppType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function CrostiniAppType_Name.");
+  return CrostiniAppType_Name(static_cast<CrostiniAppType>(enum_t_value));
+}
+bool CrostiniAppType_Parse(
+    const std::string& name, CrostiniAppType* value);
+enum HashingAlgorithm : int {
+  HASHING_ALGORITHM_UNSPECIFIED = 0,
+  SHA1 = 1,
+  SHA256 = 2,
+  NO_HASH = 3
+};
+bool HashingAlgorithm_IsValid(int value);
+constexpr HashingAlgorithm HashingAlgorithm_MIN = HASHING_ALGORITHM_UNSPECIFIED;
+constexpr HashingAlgorithm HashingAlgorithm_MAX = NO_HASH;
+constexpr int HashingAlgorithm_ARRAYSIZE = HashingAlgorithm_MAX + 1;
+
+const std::string& HashingAlgorithm_Name(HashingAlgorithm value);
+template<typename T>
+inline const std::string& HashingAlgorithm_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, HashingAlgorithm>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function HashingAlgorithm_Name.");
+  return HashingAlgorithm_Name(static_cast<HashingAlgorithm>(enum_t_value));
+}
+bool HashingAlgorithm_Parse(
+    const std::string& name, HashingAlgorithm* value);
+enum SigningAlgorithm : int {
+  SIGNING_ALGORITHM_UNSPECIFIED = 0,
+  RSA_PKCS1_V1_5 = 1
+};
+bool SigningAlgorithm_IsValid(int value);
+constexpr SigningAlgorithm SigningAlgorithm_MIN = SIGNING_ALGORITHM_UNSPECIFIED;
+constexpr SigningAlgorithm SigningAlgorithm_MAX = RSA_PKCS1_V1_5;
+constexpr int SigningAlgorithm_ARRAYSIZE = SigningAlgorithm_MAX + 1;
+
+const std::string& SigningAlgorithm_Name(SigningAlgorithm value);
+template<typename T>
+inline const std::string& SigningAlgorithm_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SigningAlgorithm>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SigningAlgorithm_Name.");
+  return SigningAlgorithm_Name(static_cast<SigningAlgorithm>(enum_t_value));
+}
+bool SigningAlgorithm_Parse(
+    const std::string& name, SigningAlgorithm* value);
+enum DeviceManagementErrorDetail : int {
+  NO_ERROR_DETAIL = 0,
+  CBCM_DELETION_POLICY_PREFERENCE_DELETE_TOKEN = 1,
+  CBCM_DELETION_POLICY_PREFERENCE_INVALIDATE_TOKEN = 2
+};
+bool DeviceManagementErrorDetail_IsValid(int value);
+constexpr DeviceManagementErrorDetail DeviceManagementErrorDetail_MIN = NO_ERROR_DETAIL;
+constexpr DeviceManagementErrorDetail DeviceManagementErrorDetail_MAX = CBCM_DELETION_POLICY_PREFERENCE_INVALIDATE_TOKEN;
+constexpr int DeviceManagementErrorDetail_ARRAYSIZE = DeviceManagementErrorDetail_MAX + 1;
+
+const std::string& DeviceManagementErrorDetail_Name(DeviceManagementErrorDetail value);
+template<typename T>
+inline const std::string& DeviceManagementErrorDetail_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, DeviceManagementErrorDetail>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function DeviceManagementErrorDetail_Name.");
+  return DeviceManagementErrorDetail_Name(static_cast<DeviceManagementErrorDetail>(enum_t_value));
+}
+bool DeviceManagementErrorDetail_Parse(
+    const std::string& name, DeviceManagementErrorDetail* value);
+// ===================================================================
+
+class LicenseType :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LicenseType) */ {
+ public:
+  LicenseType();
+  virtual ~LicenseType();
+
+  LicenseType(const LicenseType& from);
+  LicenseType(LicenseType&& from) noexcept
+    : LicenseType() {
+    *this = ::std::move(from);
+  }
+
+  inline LicenseType& operator=(const LicenseType& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LicenseType& operator=(LicenseType&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LicenseType& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LicenseType* internal_default_instance() {
+    return reinterpret_cast<const LicenseType*>(
+               &_LicenseType_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(LicenseType& a, LicenseType& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LicenseType* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LicenseType* New() const final {
+    return CreateMaybeMessage<LicenseType>(nullptr);
+  }
+
+  LicenseType* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LicenseType>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LicenseType& from);
+  void MergeFrom(const LicenseType& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LicenseType* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LicenseType";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef LicenseType_LicenseTypeEnum LicenseTypeEnum;
+  static constexpr LicenseTypeEnum UNDEFINED =
+    LicenseType_LicenseTypeEnum_UNDEFINED;
+  static constexpr LicenseTypeEnum CDM_PERPETUAL =
+    LicenseType_LicenseTypeEnum_CDM_PERPETUAL;
+  static constexpr LicenseTypeEnum CDM_ANNUAL =
+    LicenseType_LicenseTypeEnum_CDM_ANNUAL;
+  static constexpr LicenseTypeEnum KIOSK =
+    LicenseType_LicenseTypeEnum_KIOSK;
+  static inline bool LicenseTypeEnum_IsValid(int value) {
+    return LicenseType_LicenseTypeEnum_IsValid(value);
+  }
+  static constexpr LicenseTypeEnum LicenseTypeEnum_MIN =
+    LicenseType_LicenseTypeEnum_LicenseTypeEnum_MIN;
+  static constexpr LicenseTypeEnum LicenseTypeEnum_MAX =
+    LicenseType_LicenseTypeEnum_LicenseTypeEnum_MAX;
+  static constexpr int LicenseTypeEnum_ARRAYSIZE =
+    LicenseType_LicenseTypeEnum_LicenseTypeEnum_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& LicenseTypeEnum_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, LicenseTypeEnum>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function LicenseTypeEnum_Name.");
+    return LicenseType_LicenseTypeEnum_Name(enum_t_value);
+  }
+  static inline bool LicenseTypeEnum_Parse(const std::string& name,
+      LicenseTypeEnum* value) {
+    return LicenseType_LicenseTypeEnum_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLicenseTypeFieldNumber = 1,
+  };
+  // optional .enterprise_management.LicenseType.LicenseTypeEnum license_type = 1;
+  bool has_license_type() const;
+  private:
+  bool _internal_has_license_type() const;
+  public:
+  void clear_license_type();
+  ::enterprise_management::LicenseType_LicenseTypeEnum license_type() const;
+  void set_license_type(::enterprise_management::LicenseType_LicenseTypeEnum value);
+  private:
+  ::enterprise_management::LicenseType_LicenseTypeEnum _internal_license_type() const;
+  void _internal_set_license_type(::enterprise_management::LicenseType_LicenseTypeEnum value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LicenseType)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int license_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SignedData :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SignedData) */ {
+ public:
+  SignedData();
+  virtual ~SignedData();
+
+  SignedData(const SignedData& from);
+  SignedData(SignedData&& from) noexcept
+    : SignedData() {
+    *this = ::std::move(from);
+  }
+
+  inline SignedData& operator=(const SignedData& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SignedData& operator=(SignedData&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SignedData& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SignedData* internal_default_instance() {
+    return reinterpret_cast<const SignedData*>(
+               &_SignedData_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(SignedData& a, SignedData& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SignedData* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SignedData* New() const final {
+    return CreateMaybeMessage<SignedData>(nullptr);
+  }
+
+  SignedData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SignedData>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SignedData& from);
+  void MergeFrom(const SignedData& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SignedData* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SignedData";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDataFieldNumber = 1,
+    kSignatureFieldNumber = 2,
+    kExtraDataBytesFieldNumber = 3,
+  };
+  // optional bytes data = 1;
+  bool has_data() const;
+  private:
+  bool _internal_has_data() const;
+  public:
+  void clear_data();
+  const std::string& data() const;
+  void set_data(const std::string& value);
+  void set_data(std::string&& value);
+  void set_data(const char* value);
+  void set_data(const void* value, size_t size);
+  std::string* mutable_data();
+  std::string* release_data();
+  void set_allocated_data(std::string* data);
+  private:
+  const std::string& _internal_data() const;
+  void _internal_set_data(const std::string& value);
+  std::string* _internal_mutable_data();
+  public:
+
+  // optional bytes signature = 2;
+  bool has_signature() const;
+  private:
+  bool _internal_has_signature() const;
+  public:
+  void clear_signature();
+  const std::string& signature() const;
+  void set_signature(const std::string& value);
+  void set_signature(std::string&& value);
+  void set_signature(const char* value);
+  void set_signature(const void* value, size_t size);
+  std::string* mutable_signature();
+  std::string* release_signature();
+  void set_allocated_signature(std::string* signature);
+  private:
+  const std::string& _internal_signature() const;
+  void _internal_set_signature(const std::string& value);
+  std::string* _internal_mutable_signature();
+  public:
+
+  // optional int32 extra_data_bytes = 3;
+  bool has_extra_data_bytes() const;
+  private:
+  bool _internal_has_extra_data_bytes() const;
+  public:
+  void clear_extra_data_bytes();
+  ::PROTOBUF_NAMESPACE_ID::int32 extra_data_bytes() const;
+  void set_extra_data_bytes(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_extra_data_bytes() const;
+  void _internal_set_extra_data_bytes(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SignedData)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr data_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr signature_;
+  ::PROTOBUF_NAMESPACE_ID::int32 extra_data_bytes_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CheckUserAccountRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CheckUserAccountRequest) */ {
+ public:
+  CheckUserAccountRequest();
+  virtual ~CheckUserAccountRequest();
+
+  CheckUserAccountRequest(const CheckUserAccountRequest& from);
+  CheckUserAccountRequest(CheckUserAccountRequest&& from) noexcept
+    : CheckUserAccountRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline CheckUserAccountRequest& operator=(const CheckUserAccountRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CheckUserAccountRequest& operator=(CheckUserAccountRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CheckUserAccountRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CheckUserAccountRequest* internal_default_instance() {
+    return reinterpret_cast<const CheckUserAccountRequest*>(
+               &_CheckUserAccountRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    2;
+
+  friend void swap(CheckUserAccountRequest& a, CheckUserAccountRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CheckUserAccountRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CheckUserAccountRequest* New() const final {
+    return CreateMaybeMessage<CheckUserAccountRequest>(nullptr);
+  }
+
+  CheckUserAccountRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CheckUserAccountRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CheckUserAccountRequest& from);
+  void MergeFrom(const CheckUserAccountRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CheckUserAccountRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CheckUserAccountRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUserEmailFieldNumber = 1,
+  };
+  // optional string user_email = 1;
+  bool has_user_email() const;
+  private:
+  bool _internal_has_user_email() const;
+  public:
+  void clear_user_email();
+  const std::string& user_email() const;
+  void set_user_email(const std::string& value);
+  void set_user_email(std::string&& value);
+  void set_user_email(const char* value);
+  void set_user_email(const char* value, size_t size);
+  std::string* mutable_user_email();
+  std::string* release_user_email();
+  void set_allocated_user_email(std::string* user_email);
+  private:
+  const std::string& _internal_user_email() const;
+  void _internal_set_user_email(const std::string& value);
+  std::string* _internal_mutable_user_email();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CheckUserAccountRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr user_email_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceRegisterRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceRegisterRequest) */ {
+ public:
+  DeviceRegisterRequest();
+  virtual ~DeviceRegisterRequest();
+
+  DeviceRegisterRequest(const DeviceRegisterRequest& from);
+  DeviceRegisterRequest(DeviceRegisterRequest&& from) noexcept
+    : DeviceRegisterRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceRegisterRequest& operator=(const DeviceRegisterRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceRegisterRequest& operator=(DeviceRegisterRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceRegisterRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceRegisterRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceRegisterRequest*>(
+               &_DeviceRegisterRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    3;
+
+  friend void swap(DeviceRegisterRequest& a, DeviceRegisterRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceRegisterRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceRegisterRequest* New() const final {
+    return CreateMaybeMessage<DeviceRegisterRequest>(nullptr);
+  }
+
+  DeviceRegisterRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceRegisterRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceRegisterRequest& from);
+  void MergeFrom(const DeviceRegisterRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceRegisterRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceRegisterRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceRegisterRequest_Type Type;
+  static constexpr Type TT =
+    DeviceRegisterRequest_Type_TT;
+  static constexpr Type USER =
+    DeviceRegisterRequest_Type_USER;
+  static constexpr Type DEVICE =
+    DeviceRegisterRequest_Type_DEVICE;
+  static constexpr Type BROWSER =
+    DeviceRegisterRequest_Type_BROWSER;
+  static constexpr Type ANDROID_BROWSER =
+    DeviceRegisterRequest_Type_ANDROID_BROWSER;
+  static constexpr Type IOS_BROWSER =
+    DeviceRegisterRequest_Type_IOS_BROWSER;
+  static inline bool Type_IsValid(int value) {
+    return DeviceRegisterRequest_Type_IsValid(value);
+  }
+  static constexpr Type Type_MIN =
+    DeviceRegisterRequest_Type_Type_MIN;
+  static constexpr Type Type_MAX =
+    DeviceRegisterRequest_Type_Type_MAX;
+  static constexpr int Type_ARRAYSIZE =
+    DeviceRegisterRequest_Type_Type_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Type_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Type>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Type_Name.");
+    return DeviceRegisterRequest_Type_Name(enum_t_value);
+  }
+  static inline bool Type_Parse(const std::string& name,
+      Type* value) {
+    return DeviceRegisterRequest_Type_Parse(name, value);
+  }
+
+  typedef DeviceRegisterRequest_Flavor Flavor;
+  static constexpr Flavor FLAVOR_ENROLLMENT_MANUAL =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_MANUAL;
+  static constexpr Flavor FLAVOR_ENROLLMENT_MANUAL_RENEW =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_MANUAL_RENEW;
+  static constexpr Flavor FLAVOR_ENROLLMENT_LOCAL_FORCED =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_LOCAL_FORCED;
+  static constexpr Flavor FLAVOR_ENROLLMENT_LOCAL_ADVERTISED =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_LOCAL_ADVERTISED;
+  static constexpr Flavor FLAVOR_ENROLLMENT_SERVER_FORCED =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_SERVER_FORCED;
+  static constexpr Flavor FLAVOR_ENROLLMENT_SERVER_ADVERTISED =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_SERVER_ADVERTISED;
+  static constexpr Flavor FLAVOR_ENROLLMENT_RECOVERY =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_RECOVERY;
+  static constexpr Flavor FLAVOR_USER_REGISTRATION =
+    DeviceRegisterRequest_Flavor_FLAVOR_USER_REGISTRATION;
+  static constexpr Flavor FLAVOR_ENROLLMENT_ATTESTATION =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION;
+  static constexpr Flavor FLAVOR_ENROLLMENT_ATTESTATION_LOCAL_FORCED =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_LOCAL_FORCED;
+  static constexpr Flavor FLAVOR_ENROLLMENT_ATTESTATION_SERVER_FORCED =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_SERVER_FORCED;
+  static constexpr Flavor FLAVOR_ENROLLMENT_ATTESTATION_MANUAL_FALLBACK =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_MANUAL_FALLBACK;
+  static constexpr Flavor FLAVOR_ENROLLMENT_INITIAL_SERVER_FORCED =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_INITIAL_SERVER_FORCED;
+  static constexpr Flavor FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_SERVER_FORCED =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_SERVER_FORCED;
+  static constexpr Flavor FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_MANUAL_FALLBACK =
+    DeviceRegisterRequest_Flavor_FLAVOR_ENROLLMENT_ATTESTATION_INITIAL_MANUAL_FALLBACK;
+  static inline bool Flavor_IsValid(int value) {
+    return DeviceRegisterRequest_Flavor_IsValid(value);
+  }
+  static constexpr Flavor Flavor_MIN =
+    DeviceRegisterRequest_Flavor_Flavor_MIN;
+  static constexpr Flavor Flavor_MAX =
+    DeviceRegisterRequest_Flavor_Flavor_MAX;
+  static constexpr int Flavor_ARRAYSIZE =
+    DeviceRegisterRequest_Flavor_Flavor_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Flavor_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Flavor>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Flavor_Name.");
+    return DeviceRegisterRequest_Flavor_Name(enum_t_value);
+  }
+  static inline bool Flavor_Parse(const std::string& name,
+      Flavor* value) {
+    return DeviceRegisterRequest_Flavor_Parse(name, value);
+  }
+
+  typedef DeviceRegisterRequest_Lifetime Lifetime;
+  static constexpr Lifetime LIFETIME_UNDEFINED =
+    DeviceRegisterRequest_Lifetime_LIFETIME_UNDEFINED;
+  static constexpr Lifetime LIFETIME_INDEFINITE =
+    DeviceRegisterRequest_Lifetime_LIFETIME_INDEFINITE;
+  static constexpr Lifetime LIFETIME_EPHEMERAL_USER =
+    DeviceRegisterRequest_Lifetime_LIFETIME_EPHEMERAL_USER;
+  static inline bool Lifetime_IsValid(int value) {
+    return DeviceRegisterRequest_Lifetime_IsValid(value);
+  }
+  static constexpr Lifetime Lifetime_MIN =
+    DeviceRegisterRequest_Lifetime_Lifetime_MIN;
+  static constexpr Lifetime Lifetime_MAX =
+    DeviceRegisterRequest_Lifetime_Lifetime_MAX;
+  static constexpr int Lifetime_ARRAYSIZE =
+    DeviceRegisterRequest_Lifetime_Lifetime_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Lifetime_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Lifetime>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Lifetime_Name.");
+    return DeviceRegisterRequest_Lifetime_Name(enum_t_value);
+  }
+  static inline bool Lifetime_Parse(const std::string& name,
+      Lifetime* value) {
+    return DeviceRegisterRequest_Lifetime_Parse(name, value);
+  }
+
+  typedef DeviceRegisterRequest_PsmExecutionResult PsmExecutionResult;
+  static constexpr PsmExecutionResult PSM_RESULT_UNKNOWN =
+    DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_UNKNOWN;
+  static constexpr PsmExecutionResult PSM_RESULT_SUCCESSFUL_WITH_STATE =
+    DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_SUCCESSFUL_WITH_STATE;
+  static constexpr PsmExecutionResult PSM_RESULT_SUCCESSFUL_WITHOUT_STATE =
+    DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_SUCCESSFUL_WITHOUT_STATE;
+  static constexpr PsmExecutionResult PSM_RESULT_ERROR =
+    DeviceRegisterRequest_PsmExecutionResult_PSM_RESULT_ERROR;
+  static inline bool PsmExecutionResult_IsValid(int value) {
+    return DeviceRegisterRequest_PsmExecutionResult_IsValid(value);
+  }
+  static constexpr PsmExecutionResult PsmExecutionResult_MIN =
+    DeviceRegisterRequest_PsmExecutionResult_PsmExecutionResult_MIN;
+  static constexpr PsmExecutionResult PsmExecutionResult_MAX =
+    DeviceRegisterRequest_PsmExecutionResult_PsmExecutionResult_MAX;
+  static constexpr int PsmExecutionResult_ARRAYSIZE =
+    DeviceRegisterRequest_PsmExecutionResult_PsmExecutionResult_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& PsmExecutionResult_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, PsmExecutionResult>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function PsmExecutionResult_Name.");
+    return DeviceRegisterRequest_PsmExecutionResult_Name(enum_t_value);
+  }
+  static inline bool PsmExecutionResult_Parse(const std::string& name,
+      PsmExecutionResult* value) {
+    return DeviceRegisterRequest_PsmExecutionResult_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMachineIdFieldNumber = 3,
+    kMachineModelFieldNumber = 4,
+    kRequisitionFieldNumber = 6,
+    kServerBackedStateKeyFieldNumber = 7,
+    kBrandCodeFieldNumber = 12,
+    kReregistrationDmTokenFieldNumber = 13,
+    kEthernetMacAddressFieldNumber = 14,
+    kDockMacAddressFieldNumber = 15,
+    kManufactureDateFieldNumber = 16,
+    kExpectedEnrollmentDomainFieldNumber = 17,
+    kLicenseTypeFieldNumber = 9,
+    kDeviceRegisterIdentificationFieldNumber = 18,
+    kReregisterFieldNumber = 1,
+    kTypeFieldNumber = 2,
+    kFlavorFieldNumber = 8,
+    kPsmExecutionResultFieldNumber = 19,
+    kPsmDeterminationTimestampMsFieldNumber = 20,
+    kLifetimeFieldNumber = 11,
+  };
+  // optional string machine_id = 3;
+  bool has_machine_id() const;
+  private:
+  bool _internal_has_machine_id() const;
+  public:
+  void clear_machine_id();
+  const std::string& machine_id() const;
+  void set_machine_id(const std::string& value);
+  void set_machine_id(std::string&& value);
+  void set_machine_id(const char* value);
+  void set_machine_id(const char* value, size_t size);
+  std::string* mutable_machine_id();
+  std::string* release_machine_id();
+  void set_allocated_machine_id(std::string* machine_id);
+  private:
+  const std::string& _internal_machine_id() const;
+  void _internal_set_machine_id(const std::string& value);
+  std::string* _internal_mutable_machine_id();
+  public:
+
+  // optional string machine_model = 4;
+  bool has_machine_model() const;
+  private:
+  bool _internal_has_machine_model() const;
+  public:
+  void clear_machine_model();
+  const std::string& machine_model() const;
+  void set_machine_model(const std::string& value);
+  void set_machine_model(std::string&& value);
+  void set_machine_model(const char* value);
+  void set_machine_model(const char* value, size_t size);
+  std::string* mutable_machine_model();
+  std::string* release_machine_model();
+  void set_allocated_machine_model(std::string* machine_model);
+  private:
+  const std::string& _internal_machine_model() const;
+  void _internal_set_machine_model(const std::string& value);
+  std::string* _internal_mutable_machine_model();
+  public:
+
+  // optional string requisition = 6;
+  bool has_requisition() const;
+  private:
+  bool _internal_has_requisition() const;
+  public:
+  void clear_requisition();
+  const std::string& requisition() const;
+  void set_requisition(const std::string& value);
+  void set_requisition(std::string&& value);
+  void set_requisition(const char* value);
+  void set_requisition(const char* value, size_t size);
+  std::string* mutable_requisition();
+  std::string* release_requisition();
+  void set_allocated_requisition(std::string* requisition);
+  private:
+  const std::string& _internal_requisition() const;
+  void _internal_set_requisition(const std::string& value);
+  std::string* _internal_mutable_requisition();
+  public:
+
+  // optional bytes server_backed_state_key = 7;
+  bool has_server_backed_state_key() const;
+  private:
+  bool _internal_has_server_backed_state_key() const;
+  public:
+  void clear_server_backed_state_key();
+  const std::string& server_backed_state_key() const;
+  void set_server_backed_state_key(const std::string& value);
+  void set_server_backed_state_key(std::string&& value);
+  void set_server_backed_state_key(const char* value);
+  void set_server_backed_state_key(const void* value, size_t size);
+  std::string* mutable_server_backed_state_key();
+  std::string* release_server_backed_state_key();
+  void set_allocated_server_backed_state_key(std::string* server_backed_state_key);
+  private:
+  const std::string& _internal_server_backed_state_key() const;
+  void _internal_set_server_backed_state_key(const std::string& value);
+  std::string* _internal_mutable_server_backed_state_key();
+  public:
+
+  // optional string brand_code = 12;
+  bool has_brand_code() const;
+  private:
+  bool _internal_has_brand_code() const;
+  public:
+  void clear_brand_code();
+  const std::string& brand_code() const;
+  void set_brand_code(const std::string& value);
+  void set_brand_code(std::string&& value);
+  void set_brand_code(const char* value);
+  void set_brand_code(const char* value, size_t size);
+  std::string* mutable_brand_code();
+  std::string* release_brand_code();
+  void set_allocated_brand_code(std::string* brand_code);
+  private:
+  const std::string& _internal_brand_code() const;
+  void _internal_set_brand_code(const std::string& value);
+  std::string* _internal_mutable_brand_code();
+  public:
+
+  // optional string reregistration_dm_token = 13;
+  bool has_reregistration_dm_token() const;
+  private:
+  bool _internal_has_reregistration_dm_token() const;
+  public:
+  void clear_reregistration_dm_token();
+  const std::string& reregistration_dm_token() const;
+  void set_reregistration_dm_token(const std::string& value);
+  void set_reregistration_dm_token(std::string&& value);
+  void set_reregistration_dm_token(const char* value);
+  void set_reregistration_dm_token(const char* value, size_t size);
+  std::string* mutable_reregistration_dm_token();
+  std::string* release_reregistration_dm_token();
+  void set_allocated_reregistration_dm_token(std::string* reregistration_dm_token);
+  private:
+  const std::string& _internal_reregistration_dm_token() const;
+  void _internal_set_reregistration_dm_token(const std::string& value);
+  std::string* _internal_mutable_reregistration_dm_token();
+  public:
+
+  // optional string ethernet_mac_address = 14;
+  bool has_ethernet_mac_address() const;
+  private:
+  bool _internal_has_ethernet_mac_address() const;
+  public:
+  void clear_ethernet_mac_address();
+  const std::string& ethernet_mac_address() const;
+  void set_ethernet_mac_address(const std::string& value);
+  void set_ethernet_mac_address(std::string&& value);
+  void set_ethernet_mac_address(const char* value);
+  void set_ethernet_mac_address(const char* value, size_t size);
+  std::string* mutable_ethernet_mac_address();
+  std::string* release_ethernet_mac_address();
+  void set_allocated_ethernet_mac_address(std::string* ethernet_mac_address);
+  private:
+  const std::string& _internal_ethernet_mac_address() const;
+  void _internal_set_ethernet_mac_address(const std::string& value);
+  std::string* _internal_mutable_ethernet_mac_address();
+  public:
+
+  // optional string dock_mac_address = 15;
+  bool has_dock_mac_address() const;
+  private:
+  bool _internal_has_dock_mac_address() const;
+  public:
+  void clear_dock_mac_address();
+  const std::string& dock_mac_address() const;
+  void set_dock_mac_address(const std::string& value);
+  void set_dock_mac_address(std::string&& value);
+  void set_dock_mac_address(const char* value);
+  void set_dock_mac_address(const char* value, size_t size);
+  std::string* mutable_dock_mac_address();
+  std::string* release_dock_mac_address();
+  void set_allocated_dock_mac_address(std::string* dock_mac_address);
+  private:
+  const std::string& _internal_dock_mac_address() const;
+  void _internal_set_dock_mac_address(const std::string& value);
+  std::string* _internal_mutable_dock_mac_address();
+  public:
+
+  // optional string manufacture_date = 16;
+  bool has_manufacture_date() const;
+  private:
+  bool _internal_has_manufacture_date() const;
+  public:
+  void clear_manufacture_date();
+  const std::string& manufacture_date() const;
+  void set_manufacture_date(const std::string& value);
+  void set_manufacture_date(std::string&& value);
+  void set_manufacture_date(const char* value);
+  void set_manufacture_date(const char* value, size_t size);
+  std::string* mutable_manufacture_date();
+  std::string* release_manufacture_date();
+  void set_allocated_manufacture_date(std::string* manufacture_date);
+  private:
+  const std::string& _internal_manufacture_date() const;
+  void _internal_set_manufacture_date(const std::string& value);
+  std::string* _internal_mutable_manufacture_date();
+  public:
+
+  // optional string expected_enrollment_domain = 17;
+  bool has_expected_enrollment_domain() const;
+  private:
+  bool _internal_has_expected_enrollment_domain() const;
+  public:
+  void clear_expected_enrollment_domain();
+  const std::string& expected_enrollment_domain() const;
+  void set_expected_enrollment_domain(const std::string& value);
+  void set_expected_enrollment_domain(std::string&& value);
+  void set_expected_enrollment_domain(const char* value);
+  void set_expected_enrollment_domain(const char* value, size_t size);
+  std::string* mutable_expected_enrollment_domain();
+  std::string* release_expected_enrollment_domain();
+  void set_allocated_expected_enrollment_domain(std::string* expected_enrollment_domain);
+  private:
+  const std::string& _internal_expected_enrollment_domain() const;
+  void _internal_set_expected_enrollment_domain(const std::string& value);
+  std::string* _internal_mutable_expected_enrollment_domain();
+  public:
+
+  // optional .enterprise_management.LicenseType license_type = 9;
+  bool has_license_type() const;
+  private:
+  bool _internal_has_license_type() const;
+  public:
+  void clear_license_type();
+  const ::enterprise_management::LicenseType& license_type() const;
+  ::enterprise_management::LicenseType* release_license_type();
+  ::enterprise_management::LicenseType* mutable_license_type();
+  void set_allocated_license_type(::enterprise_management::LicenseType* license_type);
+  private:
+  const ::enterprise_management::LicenseType& _internal_license_type() const;
+  ::enterprise_management::LicenseType* _internal_mutable_license_type();
+  public:
+
+  // optional .enterprise_management.DeviceRegisterIdentification device_register_identification = 18;
+  bool has_device_register_identification() const;
+  private:
+  bool _internal_has_device_register_identification() const;
+  public:
+  void clear_device_register_identification();
+  const ::enterprise_management::DeviceRegisterIdentification& device_register_identification() const;
+  ::enterprise_management::DeviceRegisterIdentification* release_device_register_identification();
+  ::enterprise_management::DeviceRegisterIdentification* mutable_device_register_identification();
+  void set_allocated_device_register_identification(::enterprise_management::DeviceRegisterIdentification* device_register_identification);
+  private:
+  const ::enterprise_management::DeviceRegisterIdentification& _internal_device_register_identification() const;
+  ::enterprise_management::DeviceRegisterIdentification* _internal_mutable_device_register_identification();
+  public:
+
+  // optional bool reregister = 1;
+  bool has_reregister() const;
+  private:
+  bool _internal_has_reregister() const;
+  public:
+  void clear_reregister();
+  bool reregister() const;
+  void set_reregister(bool value);
+  private:
+  bool _internal_reregister() const;
+  void _internal_set_reregister(bool value);
+  public:
+
+  // optional .enterprise_management.DeviceRegisterRequest.Type type = 2 [default = TT];
+  bool has_type() const;
+  private:
+  bool _internal_has_type() const;
+  public:
+  void clear_type();
+  ::enterprise_management::DeviceRegisterRequest_Type type() const;
+  void set_type(::enterprise_management::DeviceRegisterRequest_Type value);
+  private:
+  ::enterprise_management::DeviceRegisterRequest_Type _internal_type() const;
+  void _internal_set_type(::enterprise_management::DeviceRegisterRequest_Type value);
+  public:
+
+  // optional .enterprise_management.DeviceRegisterRequest.Flavor flavor = 8;
+  bool has_flavor() const;
+  private:
+  bool _internal_has_flavor() const;
+  public:
+  void clear_flavor();
+  ::enterprise_management::DeviceRegisterRequest_Flavor flavor() const;
+  void set_flavor(::enterprise_management::DeviceRegisterRequest_Flavor value);
+  private:
+  ::enterprise_management::DeviceRegisterRequest_Flavor _internal_flavor() const;
+  void _internal_set_flavor(::enterprise_management::DeviceRegisterRequest_Flavor value);
+  public:
+
+  // optional .enterprise_management.DeviceRegisterRequest.PsmExecutionResult psm_execution_result = 19;
+  bool has_psm_execution_result() const;
+  private:
+  bool _internal_has_psm_execution_result() const;
+  public:
+  void clear_psm_execution_result();
+  ::enterprise_management::DeviceRegisterRequest_PsmExecutionResult psm_execution_result() const;
+  void set_psm_execution_result(::enterprise_management::DeviceRegisterRequest_PsmExecutionResult value);
+  private:
+  ::enterprise_management::DeviceRegisterRequest_PsmExecutionResult _internal_psm_execution_result() const;
+  void _internal_set_psm_execution_result(::enterprise_management::DeviceRegisterRequest_PsmExecutionResult value);
+  public:
+
+  // optional int64 psm_determination_timestamp_ms = 20;
+  bool has_psm_determination_timestamp_ms() const;
+  private:
+  bool _internal_has_psm_determination_timestamp_ms() const;
+  public:
+  void clear_psm_determination_timestamp_ms();
+  ::PROTOBUF_NAMESPACE_ID::int64 psm_determination_timestamp_ms() const;
+  void set_psm_determination_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_psm_determination_timestamp_ms() const;
+  void _internal_set_psm_determination_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.DeviceRegisterRequest.Lifetime lifetime = 11 [default = LIFETIME_INDEFINITE];
+  bool has_lifetime() const;
+  private:
+  bool _internal_has_lifetime() const;
+  public:
+  void clear_lifetime();
+  ::enterprise_management::DeviceRegisterRequest_Lifetime lifetime() const;
+  void set_lifetime(::enterprise_management::DeviceRegisterRequest_Lifetime value);
+  private:
+  ::enterprise_management::DeviceRegisterRequest_Lifetime _internal_lifetime() const;
+  void _internal_set_lifetime(::enterprise_management::DeviceRegisterRequest_Lifetime value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceRegisterRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr machine_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr machine_model_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr requisition_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr server_backed_state_key_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr brand_code_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr reregistration_dm_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr ethernet_mac_address_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr dock_mac_address_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr manufacture_date_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr expected_enrollment_domain_;
+  ::enterprise_management::LicenseType* license_type_;
+  ::enterprise_management::DeviceRegisterIdentification* device_register_identification_;
+  bool reregister_;
+  int type_;
+  int flavor_;
+  int psm_execution_result_;
+  ::PROTOBUF_NAMESPACE_ID::int64 psm_determination_timestamp_ms_;
+  int lifetime_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceRegisterIdentification :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceRegisterIdentification) */ {
+ public:
+  DeviceRegisterIdentification();
+  virtual ~DeviceRegisterIdentification();
+
+  DeviceRegisterIdentification(const DeviceRegisterIdentification& from);
+  DeviceRegisterIdentification(DeviceRegisterIdentification&& from) noexcept
+    : DeviceRegisterIdentification() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceRegisterIdentification& operator=(const DeviceRegisterIdentification& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceRegisterIdentification& operator=(DeviceRegisterIdentification&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceRegisterIdentification& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceRegisterIdentification* internal_default_instance() {
+    return reinterpret_cast<const DeviceRegisterIdentification*>(
+               &_DeviceRegisterIdentification_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    4;
+
+  friend void swap(DeviceRegisterIdentification& a, DeviceRegisterIdentification& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceRegisterIdentification* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceRegisterIdentification* New() const final {
+    return CreateMaybeMessage<DeviceRegisterIdentification>(nullptr);
+  }
+
+  DeviceRegisterIdentification* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceRegisterIdentification>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceRegisterIdentification& from);
+  void MergeFrom(const DeviceRegisterIdentification& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceRegisterIdentification* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceRegisterIdentification";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAttestedDeviceIdFieldNumber = 1,
+  };
+  // optional string attested_device_id = 1;
+  bool has_attested_device_id() const;
+  private:
+  bool _internal_has_attested_device_id() const;
+  public:
+  void clear_attested_device_id();
+  const std::string& attested_device_id() const;
+  void set_attested_device_id(const std::string& value);
+  void set_attested_device_id(std::string&& value);
+  void set_attested_device_id(const char* value);
+  void set_attested_device_id(const char* value, size_t size);
+  std::string* mutable_attested_device_id();
+  std::string* release_attested_device_id();
+  void set_allocated_attested_device_id(std::string* attested_device_id);
+  private:
+  const std::string& _internal_attested_device_id() const;
+  void _internal_set_attested_device_id(const std::string& value);
+  std::string* _internal_mutable_attested_device_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceRegisterIdentification)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr attested_device_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CheckUserAccountResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CheckUserAccountResponse) */ {
+ public:
+  CheckUserAccountResponse();
+  virtual ~CheckUserAccountResponse();
+
+  CheckUserAccountResponse(const CheckUserAccountResponse& from);
+  CheckUserAccountResponse(CheckUserAccountResponse&& from) noexcept
+    : CheckUserAccountResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline CheckUserAccountResponse& operator=(const CheckUserAccountResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CheckUserAccountResponse& operator=(CheckUserAccountResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CheckUserAccountResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CheckUserAccountResponse* internal_default_instance() {
+    return reinterpret_cast<const CheckUserAccountResponse*>(
+               &_CheckUserAccountResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    5;
+
+  friend void swap(CheckUserAccountResponse& a, CheckUserAccountResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CheckUserAccountResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CheckUserAccountResponse* New() const final {
+    return CreateMaybeMessage<CheckUserAccountResponse>(nullptr);
+  }
+
+  CheckUserAccountResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CheckUserAccountResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CheckUserAccountResponse& from);
+  void MergeFrom(const CheckUserAccountResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CheckUserAccountResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CheckUserAccountResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef CheckUserAccountResponse_UserAccountType UserAccountType;
+  static constexpr UserAccountType UNKNOWN_USER_ACCOUNT_TYPE =
+    CheckUserAccountResponse_UserAccountType_UNKNOWN_USER_ACCOUNT_TYPE;
+  static constexpr UserAccountType NOT_EXIST =
+    CheckUserAccountResponse_UserAccountType_NOT_EXIST;
+  static constexpr UserAccountType CONSUMER =
+    CheckUserAccountResponse_UserAccountType_CONSUMER;
+  static constexpr UserAccountType DASHER =
+    CheckUserAccountResponse_UserAccountType_DASHER;
+  static inline bool UserAccountType_IsValid(int value) {
+    return CheckUserAccountResponse_UserAccountType_IsValid(value);
+  }
+  static constexpr UserAccountType UserAccountType_MIN =
+    CheckUserAccountResponse_UserAccountType_UserAccountType_MIN;
+  static constexpr UserAccountType UserAccountType_MAX =
+    CheckUserAccountResponse_UserAccountType_UserAccountType_MAX;
+  static constexpr int UserAccountType_ARRAYSIZE =
+    CheckUserAccountResponse_UserAccountType_UserAccountType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& UserAccountType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, UserAccountType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function UserAccountType_Name.");
+    return CheckUserAccountResponse_UserAccountType_Name(enum_t_value);
+  }
+  static inline bool UserAccountType_Parse(const std::string& name,
+      UserAccountType* value) {
+    return CheckUserAccountResponse_UserAccountType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDomainVerifiedFieldNumber = 1,
+    kUserAccountTypeFieldNumber = 2,
+  };
+  // optional bool domain_verified = 1;
+  bool has_domain_verified() const;
+  private:
+  bool _internal_has_domain_verified() const;
+  public:
+  void clear_domain_verified();
+  bool domain_verified() const;
+  void set_domain_verified(bool value);
+  private:
+  bool _internal_domain_verified() const;
+  void _internal_set_domain_verified(bool value);
+  public:
+
+  // optional .enterprise_management.CheckUserAccountResponse.UserAccountType user_account_type = 2;
+  bool has_user_account_type() const;
+  private:
+  bool _internal_has_user_account_type() const;
+  public:
+  void clear_user_account_type();
+  ::enterprise_management::CheckUserAccountResponse_UserAccountType user_account_type() const;
+  void set_user_account_type(::enterprise_management::CheckUserAccountResponse_UserAccountType value);
+  private:
+  ::enterprise_management::CheckUserAccountResponse_UserAccountType _internal_user_account_type() const;
+  void _internal_set_user_account_type(::enterprise_management::CheckUserAccountResponse_UserAccountType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CheckUserAccountResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool domain_verified_;
+  int user_account_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceRegisterResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceRegisterResponse) */ {
+ public:
+  DeviceRegisterResponse();
+  virtual ~DeviceRegisterResponse();
+
+  DeviceRegisterResponse(const DeviceRegisterResponse& from);
+  DeviceRegisterResponse(DeviceRegisterResponse&& from) noexcept
+    : DeviceRegisterResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceRegisterResponse& operator=(const DeviceRegisterResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceRegisterResponse& operator=(DeviceRegisterResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceRegisterResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceRegisterResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceRegisterResponse*>(
+               &_DeviceRegisterResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    6;
+
+  friend void swap(DeviceRegisterResponse& a, DeviceRegisterResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceRegisterResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceRegisterResponse* New() const final {
+    return CreateMaybeMessage<DeviceRegisterResponse>(nullptr);
+  }
+
+  DeviceRegisterResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceRegisterResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceRegisterResponse& from);
+  void MergeFrom(const DeviceRegisterResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceRegisterResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceRegisterResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceRegisterResponse_DeviceMode DeviceMode;
+  static constexpr DeviceMode ENTERPRISE =
+    DeviceRegisterResponse_DeviceMode_ENTERPRISE;
+  static constexpr DeviceMode RETAIL_DEPRECATED =
+    DeviceRegisterResponse_DeviceMode_RETAIL_DEPRECATED;
+  static constexpr DeviceMode CHROME_AD =
+    DeviceRegisterResponse_DeviceMode_CHROME_AD;
+  static constexpr DeviceMode DEMO =
+    DeviceRegisterResponse_DeviceMode_DEMO;
+  static inline bool DeviceMode_IsValid(int value) {
+    return DeviceRegisterResponse_DeviceMode_IsValid(value);
+  }
+  static constexpr DeviceMode DeviceMode_MIN =
+    DeviceRegisterResponse_DeviceMode_DeviceMode_MIN;
+  static constexpr DeviceMode DeviceMode_MAX =
+    DeviceRegisterResponse_DeviceMode_DeviceMode_MAX;
+  static constexpr int DeviceMode_ARRAYSIZE =
+    DeviceRegisterResponse_DeviceMode_DeviceMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& DeviceMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, DeviceMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function DeviceMode_Name.");
+    return DeviceRegisterResponse_DeviceMode_Name(enum_t_value);
+  }
+  static inline bool DeviceMode_Parse(const std::string& name,
+      DeviceMode* value) {
+    return DeviceRegisterResponse_DeviceMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUserAffiliationIdsFieldNumber = 5,
+    kDeviceManagementTokenFieldNumber = 1,
+    kMachineNameFieldNumber = 2,
+    kConfigurationSeedFieldNumber = 4,
+    kDirectoryApiIdFieldNumber = 6,
+    kEnrollmentTypeFieldNumber = 3,
+  };
+  // repeated string user_affiliation_ids = 5;
+  int user_affiliation_ids_size() const;
+  private:
+  int _internal_user_affiliation_ids_size() const;
+  public:
+  void clear_user_affiliation_ids();
+  const std::string& user_affiliation_ids(int index) const;
+  std::string* mutable_user_affiliation_ids(int index);
+  void set_user_affiliation_ids(int index, const std::string& value);
+  void set_user_affiliation_ids(int index, std::string&& value);
+  void set_user_affiliation_ids(int index, const char* value);
+  void set_user_affiliation_ids(int index, const char* value, size_t size);
+  std::string* add_user_affiliation_ids();
+  void add_user_affiliation_ids(const std::string& value);
+  void add_user_affiliation_ids(std::string&& value);
+  void add_user_affiliation_ids(const char* value);
+  void add_user_affiliation_ids(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& user_affiliation_ids() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_user_affiliation_ids();
+  private:
+  const std::string& _internal_user_affiliation_ids(int index) const;
+  std::string* _internal_add_user_affiliation_ids();
+  public:
+
+  // required string device_management_token = 1;
+  bool has_device_management_token() const;
+  private:
+  bool _internal_has_device_management_token() const;
+  public:
+  void clear_device_management_token();
+  const std::string& device_management_token() const;
+  void set_device_management_token(const std::string& value);
+  void set_device_management_token(std::string&& value);
+  void set_device_management_token(const char* value);
+  void set_device_management_token(const char* value, size_t size);
+  std::string* mutable_device_management_token();
+  std::string* release_device_management_token();
+  void set_allocated_device_management_token(std::string* device_management_token);
+  private:
+  const std::string& _internal_device_management_token() const;
+  void _internal_set_device_management_token(const std::string& value);
+  std::string* _internal_mutable_device_management_token();
+  public:
+
+  // optional string machine_name = 2;
+  bool has_machine_name() const;
+  private:
+  bool _internal_has_machine_name() const;
+  public:
+  void clear_machine_name();
+  const std::string& machine_name() const;
+  void set_machine_name(const std::string& value);
+  void set_machine_name(std::string&& value);
+  void set_machine_name(const char* value);
+  void set_machine_name(const char* value, size_t size);
+  std::string* mutable_machine_name();
+  std::string* release_machine_name();
+  void set_allocated_machine_name(std::string* machine_name);
+  private:
+  const std::string& _internal_machine_name() const;
+  void _internal_set_machine_name(const std::string& value);
+  std::string* _internal_mutable_machine_name();
+  public:
+
+  // optional string configuration_seed = 4;
+  bool has_configuration_seed() const;
+  private:
+  bool _internal_has_configuration_seed() const;
+  public:
+  void clear_configuration_seed();
+  const std::string& configuration_seed() const;
+  void set_configuration_seed(const std::string& value);
+  void set_configuration_seed(std::string&& value);
+  void set_configuration_seed(const char* value);
+  void set_configuration_seed(const char* value, size_t size);
+  std::string* mutable_configuration_seed();
+  std::string* release_configuration_seed();
+  void set_allocated_configuration_seed(std::string* configuration_seed);
+  private:
+  const std::string& _internal_configuration_seed() const;
+  void _internal_set_configuration_seed(const std::string& value);
+  std::string* _internal_mutable_configuration_seed();
+  public:
+
+  // optional string directory_api_id = 6;
+  bool has_directory_api_id() const;
+  private:
+  bool _internal_has_directory_api_id() const;
+  public:
+  void clear_directory_api_id();
+  const std::string& directory_api_id() const;
+  void set_directory_api_id(const std::string& value);
+  void set_directory_api_id(std::string&& value);
+  void set_directory_api_id(const char* value);
+  void set_directory_api_id(const char* value, size_t size);
+  std::string* mutable_directory_api_id();
+  std::string* release_directory_api_id();
+  void set_allocated_directory_api_id(std::string* directory_api_id);
+  private:
+  const std::string& _internal_directory_api_id() const;
+  void _internal_set_directory_api_id(const std::string& value);
+  std::string* _internal_mutable_directory_api_id();
+  public:
+
+  // optional .enterprise_management.DeviceRegisterResponse.DeviceMode enrollment_type = 3 [default = ENTERPRISE];
+  bool has_enrollment_type() const;
+  private:
+  bool _internal_has_enrollment_type() const;
+  public:
+  void clear_enrollment_type();
+  ::enterprise_management::DeviceRegisterResponse_DeviceMode enrollment_type() const;
+  void set_enrollment_type(::enterprise_management::DeviceRegisterResponse_DeviceMode value);
+  private:
+  ::enterprise_management::DeviceRegisterResponse_DeviceMode _internal_enrollment_type() const;
+  void _internal_set_enrollment_type(::enterprise_management::DeviceRegisterResponse_DeviceMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceRegisterResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> user_affiliation_ids_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_management_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr machine_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr configuration_seed_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr directory_api_id_;
+  int enrollment_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceUnregisterRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceUnregisterRequest) */ {
+ public:
+  DeviceUnregisterRequest();
+  virtual ~DeviceUnregisterRequest();
+
+  DeviceUnregisterRequest(const DeviceUnregisterRequest& from);
+  DeviceUnregisterRequest(DeviceUnregisterRequest&& from) noexcept
+    : DeviceUnregisterRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceUnregisterRequest& operator=(const DeviceUnregisterRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceUnregisterRequest& operator=(DeviceUnregisterRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceUnregisterRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceUnregisterRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceUnregisterRequest*>(
+               &_DeviceUnregisterRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    7;
+
+  friend void swap(DeviceUnregisterRequest& a, DeviceUnregisterRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceUnregisterRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceUnregisterRequest* New() const final {
+    return CreateMaybeMessage<DeviceUnregisterRequest>(nullptr);
+  }
+
+  DeviceUnregisterRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceUnregisterRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceUnregisterRequest& from);
+  void MergeFrom(const DeviceUnregisterRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceUnregisterRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceUnregisterRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceUnregisterRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceUnregisterResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceUnregisterResponse) */ {
+ public:
+  DeviceUnregisterResponse();
+  virtual ~DeviceUnregisterResponse();
+
+  DeviceUnregisterResponse(const DeviceUnregisterResponse& from);
+  DeviceUnregisterResponse(DeviceUnregisterResponse&& from) noexcept
+    : DeviceUnregisterResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceUnregisterResponse& operator=(const DeviceUnregisterResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceUnregisterResponse& operator=(DeviceUnregisterResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceUnregisterResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceUnregisterResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceUnregisterResponse*>(
+               &_DeviceUnregisterResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    8;
+
+  friend void swap(DeviceUnregisterResponse& a, DeviceUnregisterResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceUnregisterResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceUnregisterResponse* New() const final {
+    return CreateMaybeMessage<DeviceUnregisterResponse>(nullptr);
+  }
+
+  DeviceUnregisterResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceUnregisterResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceUnregisterResponse& from);
+  void MergeFrom(const DeviceUnregisterResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceUnregisterResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceUnregisterResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceUnregisterResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceCertUploadRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceCertUploadRequest) */ {
+ public:
+  DeviceCertUploadRequest();
+  virtual ~DeviceCertUploadRequest();
+
+  DeviceCertUploadRequest(const DeviceCertUploadRequest& from);
+  DeviceCertUploadRequest(DeviceCertUploadRequest&& from) noexcept
+    : DeviceCertUploadRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceCertUploadRequest& operator=(const DeviceCertUploadRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceCertUploadRequest& operator=(DeviceCertUploadRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceCertUploadRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceCertUploadRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceCertUploadRequest*>(
+               &_DeviceCertUploadRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    9;
+
+  friend void swap(DeviceCertUploadRequest& a, DeviceCertUploadRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceCertUploadRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceCertUploadRequest* New() const final {
+    return CreateMaybeMessage<DeviceCertUploadRequest>(nullptr);
+  }
+
+  DeviceCertUploadRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceCertUploadRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceCertUploadRequest& from);
+  void MergeFrom(const DeviceCertUploadRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceCertUploadRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceCertUploadRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceCertUploadRequest_CertificateType CertificateType;
+  static constexpr CertificateType CERTIFICATE_TYPE_UNSPECIFIED =
+    DeviceCertUploadRequest_CertificateType_CERTIFICATE_TYPE_UNSPECIFIED;
+  static constexpr CertificateType ENTERPRISE_MACHINE_CERTIFICATE =
+    DeviceCertUploadRequest_CertificateType_ENTERPRISE_MACHINE_CERTIFICATE;
+  static constexpr CertificateType ENTERPRISE_ENROLLMENT_CERTIFICATE =
+    DeviceCertUploadRequest_CertificateType_ENTERPRISE_ENROLLMENT_CERTIFICATE;
+  static inline bool CertificateType_IsValid(int value) {
+    return DeviceCertUploadRequest_CertificateType_IsValid(value);
+  }
+  static constexpr CertificateType CertificateType_MIN =
+    DeviceCertUploadRequest_CertificateType_CertificateType_MIN;
+  static constexpr CertificateType CertificateType_MAX =
+    DeviceCertUploadRequest_CertificateType_CertificateType_MAX;
+  static constexpr int CertificateType_ARRAYSIZE =
+    DeviceCertUploadRequest_CertificateType_CertificateType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& CertificateType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, CertificateType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function CertificateType_Name.");
+    return DeviceCertUploadRequest_CertificateType_Name(enum_t_value);
+  }
+  static inline bool CertificateType_Parse(const std::string& name,
+      CertificateType* value) {
+    return DeviceCertUploadRequest_CertificateType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceCertificateFieldNumber = 1,
+    kEnrollmentIdFieldNumber = 3,
+    kCertificateTypeFieldNumber = 2,
+  };
+  // optional bytes device_certificate = 1;
+  bool has_device_certificate() const;
+  private:
+  bool _internal_has_device_certificate() const;
+  public:
+  void clear_device_certificate();
+  const std::string& device_certificate() const;
+  void set_device_certificate(const std::string& value);
+  void set_device_certificate(std::string&& value);
+  void set_device_certificate(const char* value);
+  void set_device_certificate(const void* value, size_t size);
+  std::string* mutable_device_certificate();
+  std::string* release_device_certificate();
+  void set_allocated_device_certificate(std::string* device_certificate);
+  private:
+  const std::string& _internal_device_certificate() const;
+  void _internal_set_device_certificate(const std::string& value);
+  std::string* _internal_mutable_device_certificate();
+  public:
+
+  // optional bytes enrollment_id = 3;
+  bool has_enrollment_id() const;
+  private:
+  bool _internal_has_enrollment_id() const;
+  public:
+  void clear_enrollment_id();
+  const std::string& enrollment_id() const;
+  void set_enrollment_id(const std::string& value);
+  void set_enrollment_id(std::string&& value);
+  void set_enrollment_id(const char* value);
+  void set_enrollment_id(const void* value, size_t size);
+  std::string* mutable_enrollment_id();
+  std::string* release_enrollment_id();
+  void set_allocated_enrollment_id(std::string* enrollment_id);
+  private:
+  const std::string& _internal_enrollment_id() const;
+  void _internal_set_enrollment_id(const std::string& value);
+  std::string* _internal_mutable_enrollment_id();
+  public:
+
+  // optional .enterprise_management.DeviceCertUploadRequest.CertificateType certificate_type = 2;
+  bool has_certificate_type() const;
+  private:
+  bool _internal_has_certificate_type() const;
+  public:
+  void clear_certificate_type();
+  ::enterprise_management::DeviceCertUploadRequest_CertificateType certificate_type() const;
+  void set_certificate_type(::enterprise_management::DeviceCertUploadRequest_CertificateType value);
+  private:
+  ::enterprise_management::DeviceCertUploadRequest_CertificateType _internal_certificate_type() const;
+  void _internal_set_certificate_type(::enterprise_management::DeviceCertUploadRequest_CertificateType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceCertUploadRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_certificate_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr enrollment_id_;
+  int certificate_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceCertUploadResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceCertUploadResponse) */ {
+ public:
+  DeviceCertUploadResponse();
+  virtual ~DeviceCertUploadResponse();
+
+  DeviceCertUploadResponse(const DeviceCertUploadResponse& from);
+  DeviceCertUploadResponse(DeviceCertUploadResponse&& from) noexcept
+    : DeviceCertUploadResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceCertUploadResponse& operator=(const DeviceCertUploadResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceCertUploadResponse& operator=(DeviceCertUploadResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceCertUploadResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceCertUploadResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceCertUploadResponse*>(
+               &_DeviceCertUploadResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    10;
+
+  friend void swap(DeviceCertUploadResponse& a, DeviceCertUploadResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceCertUploadResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceCertUploadResponse* New() const final {
+    return CreateMaybeMessage<DeviceCertUploadResponse>(nullptr);
+  }
+
+  DeviceCertUploadResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceCertUploadResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceCertUploadResponse& from);
+  void MergeFrom(const DeviceCertUploadResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceCertUploadResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceCertUploadResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceCertUploadResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceServiceApiAccessRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceServiceApiAccessRequest) */ {
+ public:
+  DeviceServiceApiAccessRequest();
+  virtual ~DeviceServiceApiAccessRequest();
+
+  DeviceServiceApiAccessRequest(const DeviceServiceApiAccessRequest& from);
+  DeviceServiceApiAccessRequest(DeviceServiceApiAccessRequest&& from) noexcept
+    : DeviceServiceApiAccessRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceServiceApiAccessRequest& operator=(const DeviceServiceApiAccessRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceServiceApiAccessRequest& operator=(DeviceServiceApiAccessRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceServiceApiAccessRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceServiceApiAccessRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceServiceApiAccessRequest*>(
+               &_DeviceServiceApiAccessRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    11;
+
+  friend void swap(DeviceServiceApiAccessRequest& a, DeviceServiceApiAccessRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceServiceApiAccessRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceServiceApiAccessRequest* New() const final {
+    return CreateMaybeMessage<DeviceServiceApiAccessRequest>(nullptr);
+  }
+
+  DeviceServiceApiAccessRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceServiceApiAccessRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceServiceApiAccessRequest& from);
+  void MergeFrom(const DeviceServiceApiAccessRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceServiceApiAccessRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceServiceApiAccessRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceServiceApiAccessRequest_DeviceType DeviceType;
+  static constexpr DeviceType CHROME_OS =
+    DeviceServiceApiAccessRequest_DeviceType_CHROME_OS;
+  static constexpr DeviceType ANDROID_OS =
+    DeviceServiceApiAccessRequest_DeviceType_ANDROID_OS;
+  static constexpr DeviceType CHROME_OS_DEMO_MODE =
+    DeviceServiceApiAccessRequest_DeviceType_CHROME_OS_DEMO_MODE;
+  static constexpr DeviceType CHROME_BROWSER =
+    DeviceServiceApiAccessRequest_DeviceType_CHROME_BROWSER;
+  static inline bool DeviceType_IsValid(int value) {
+    return DeviceServiceApiAccessRequest_DeviceType_IsValid(value);
+  }
+  static constexpr DeviceType DeviceType_MIN =
+    DeviceServiceApiAccessRequest_DeviceType_DeviceType_MIN;
+  static constexpr DeviceType DeviceType_MAX =
+    DeviceServiceApiAccessRequest_DeviceType_DeviceType_MAX;
+  static constexpr int DeviceType_ARRAYSIZE =
+    DeviceServiceApiAccessRequest_DeviceType_DeviceType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& DeviceType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, DeviceType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function DeviceType_Name.");
+    return DeviceServiceApiAccessRequest_DeviceType_Name(enum_t_value);
+  }
+  static inline bool DeviceType_Parse(const std::string& name,
+      DeviceType* value) {
+    return DeviceServiceApiAccessRequest_DeviceType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAuthScopesFieldNumber = 1,
+    kOauth2ClientIdFieldNumber = 2,
+    kDeviceTypeFieldNumber = 3,
+  };
+  // repeated string auth_scopes = 1;
+  int auth_scopes_size() const;
+  private:
+  int _internal_auth_scopes_size() const;
+  public:
+  void clear_auth_scopes();
+  const std::string& auth_scopes(int index) const;
+  std::string* mutable_auth_scopes(int index);
+  void set_auth_scopes(int index, const std::string& value);
+  void set_auth_scopes(int index, std::string&& value);
+  void set_auth_scopes(int index, const char* value);
+  void set_auth_scopes(int index, const char* value, size_t size);
+  std::string* add_auth_scopes();
+  void add_auth_scopes(const std::string& value);
+  void add_auth_scopes(std::string&& value);
+  void add_auth_scopes(const char* value);
+  void add_auth_scopes(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& auth_scopes() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_auth_scopes();
+  private:
+  const std::string& _internal_auth_scopes(int index) const;
+  std::string* _internal_add_auth_scopes();
+  public:
+
+  // optional string oauth2_client_id = 2;
+  bool has_oauth2_client_id() const;
+  private:
+  bool _internal_has_oauth2_client_id() const;
+  public:
+  void clear_oauth2_client_id();
+  const std::string& oauth2_client_id() const;
+  void set_oauth2_client_id(const std::string& value);
+  void set_oauth2_client_id(std::string&& value);
+  void set_oauth2_client_id(const char* value);
+  void set_oauth2_client_id(const char* value, size_t size);
+  std::string* mutable_oauth2_client_id();
+  std::string* release_oauth2_client_id();
+  void set_allocated_oauth2_client_id(std::string* oauth2_client_id);
+  private:
+  const std::string& _internal_oauth2_client_id() const;
+  void _internal_set_oauth2_client_id(const std::string& value);
+  std::string* _internal_mutable_oauth2_client_id();
+  public:
+
+  // optional .enterprise_management.DeviceServiceApiAccessRequest.DeviceType device_type = 3;
+  bool has_device_type() const;
+  private:
+  bool _internal_has_device_type() const;
+  public:
+  void clear_device_type();
+  ::enterprise_management::DeviceServiceApiAccessRequest_DeviceType device_type() const;
+  void set_device_type(::enterprise_management::DeviceServiceApiAccessRequest_DeviceType value);
+  private:
+  ::enterprise_management::DeviceServiceApiAccessRequest_DeviceType _internal_device_type() const;
+  void _internal_set_device_type(::enterprise_management::DeviceServiceApiAccessRequest_DeviceType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceServiceApiAccessRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> auth_scopes_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr oauth2_client_id_;
+  int device_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceServiceApiAccessResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceServiceApiAccessResponse) */ {
+ public:
+  DeviceServiceApiAccessResponse();
+  virtual ~DeviceServiceApiAccessResponse();
+
+  DeviceServiceApiAccessResponse(const DeviceServiceApiAccessResponse& from);
+  DeviceServiceApiAccessResponse(DeviceServiceApiAccessResponse&& from) noexcept
+    : DeviceServiceApiAccessResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceServiceApiAccessResponse& operator=(const DeviceServiceApiAccessResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceServiceApiAccessResponse& operator=(DeviceServiceApiAccessResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceServiceApiAccessResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceServiceApiAccessResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceServiceApiAccessResponse*>(
+               &_DeviceServiceApiAccessResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    12;
+
+  friend void swap(DeviceServiceApiAccessResponse& a, DeviceServiceApiAccessResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceServiceApiAccessResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceServiceApiAccessResponse* New() const final {
+    return CreateMaybeMessage<DeviceServiceApiAccessResponse>(nullptr);
+  }
+
+  DeviceServiceApiAccessResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceServiceApiAccessResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceServiceApiAccessResponse& from);
+  void MergeFrom(const DeviceServiceApiAccessResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceServiceApiAccessResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceServiceApiAccessResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAuthCodeFieldNumber = 1,
+  };
+  // optional string auth_code = 1;
+  bool has_auth_code() const;
+  private:
+  bool _internal_has_auth_code() const;
+  public:
+  void clear_auth_code();
+  const std::string& auth_code() const;
+  void set_auth_code(const std::string& value);
+  void set_auth_code(std::string&& value);
+  void set_auth_code(const char* value);
+  void set_auth_code(const char* value, size_t size);
+  std::string* mutable_auth_code();
+  std::string* release_auth_code();
+  void set_allocated_auth_code(std::string* auth_code);
+  private:
+  const std::string& _internal_auth_code() const;
+  void _internal_set_auth_code(const std::string& value);
+  std::string* _internal_mutable_auth_code();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceServiceApiAccessResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr auth_code_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BrowserDeviceIdentifier :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BrowserDeviceIdentifier) */ {
+ public:
+  BrowserDeviceIdentifier();
+  virtual ~BrowserDeviceIdentifier();
+
+  BrowserDeviceIdentifier(const BrowserDeviceIdentifier& from);
+  BrowserDeviceIdentifier(BrowserDeviceIdentifier&& from) noexcept
+    : BrowserDeviceIdentifier() {
+    *this = ::std::move(from);
+  }
+
+  inline BrowserDeviceIdentifier& operator=(const BrowserDeviceIdentifier& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BrowserDeviceIdentifier& operator=(BrowserDeviceIdentifier&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BrowserDeviceIdentifier& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BrowserDeviceIdentifier* internal_default_instance() {
+    return reinterpret_cast<const BrowserDeviceIdentifier*>(
+               &_BrowserDeviceIdentifier_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    13;
+
+  friend void swap(BrowserDeviceIdentifier& a, BrowserDeviceIdentifier& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BrowserDeviceIdentifier* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BrowserDeviceIdentifier* New() const final {
+    return CreateMaybeMessage<BrowserDeviceIdentifier>(nullptr);
+  }
+
+  BrowserDeviceIdentifier* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BrowserDeviceIdentifier>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BrowserDeviceIdentifier& from);
+  void MergeFrom(const BrowserDeviceIdentifier& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BrowserDeviceIdentifier* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BrowserDeviceIdentifier";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kComputerNameFieldNumber = 1,
+    kSerialNumberFieldNumber = 2,
+  };
+  // optional string computer_name = 1;
+  bool has_computer_name() const;
+  private:
+  bool _internal_has_computer_name() const;
+  public:
+  void clear_computer_name();
+  const std::string& computer_name() const;
+  void set_computer_name(const std::string& value);
+  void set_computer_name(std::string&& value);
+  void set_computer_name(const char* value);
+  void set_computer_name(const char* value, size_t size);
+  std::string* mutable_computer_name();
+  std::string* release_computer_name();
+  void set_allocated_computer_name(std::string* computer_name);
+  private:
+  const std::string& _internal_computer_name() const;
+  void _internal_set_computer_name(const std::string& value);
+  std::string* _internal_mutable_computer_name();
+  public:
+
+  // optional string serial_number = 2;
+  bool has_serial_number() const;
+  private:
+  bool _internal_has_serial_number() const;
+  public:
+  void clear_serial_number();
+  const std::string& serial_number() const;
+  void set_serial_number(const std::string& value);
+  void set_serial_number(std::string&& value);
+  void set_serial_number(const char* value);
+  void set_serial_number(const char* value, size_t size);
+  std::string* mutable_serial_number();
+  std::string* release_serial_number();
+  void set_allocated_serial_number(std::string* serial_number);
+  private:
+  const std::string& _internal_serial_number() const;
+  void _internal_set_serial_number(const std::string& value);
+  std::string* _internal_mutable_serial_number();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BrowserDeviceIdentifier)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr computer_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr serial_number_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PolicyFetchRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PolicyFetchRequest) */ {
+ public:
+  PolicyFetchRequest();
+  virtual ~PolicyFetchRequest();
+
+  PolicyFetchRequest(const PolicyFetchRequest& from);
+  PolicyFetchRequest(PolicyFetchRequest&& from) noexcept
+    : PolicyFetchRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline PolicyFetchRequest& operator=(const PolicyFetchRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PolicyFetchRequest& operator=(PolicyFetchRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PolicyFetchRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PolicyFetchRequest* internal_default_instance() {
+    return reinterpret_cast<const PolicyFetchRequest*>(
+               &_PolicyFetchRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    14;
+
+  friend void swap(PolicyFetchRequest& a, PolicyFetchRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PolicyFetchRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PolicyFetchRequest* New() const final {
+    return CreateMaybeMessage<PolicyFetchRequest>(nullptr);
+  }
+
+  PolicyFetchRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PolicyFetchRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PolicyFetchRequest& from);
+  void MergeFrom(const PolicyFetchRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PolicyFetchRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PolicyFetchRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PolicyFetchRequest_SignatureType SignatureType;
+  static constexpr SignatureType NONE =
+    PolicyFetchRequest_SignatureType_NONE;
+  static constexpr SignatureType SHA1_RSA =
+    PolicyFetchRequest_SignatureType_SHA1_RSA;
+  static constexpr SignatureType SHA256_RSA =
+    PolicyFetchRequest_SignatureType_SHA256_RSA;
+  static inline bool SignatureType_IsValid(int value) {
+    return PolicyFetchRequest_SignatureType_IsValid(value);
+  }
+  static constexpr SignatureType SignatureType_MIN =
+    PolicyFetchRequest_SignatureType_SignatureType_MIN;
+  static constexpr SignatureType SignatureType_MAX =
+    PolicyFetchRequest_SignatureType_SignatureType_MAX;
+  static constexpr int SignatureType_ARRAYSIZE =
+    PolicyFetchRequest_SignatureType_SignatureType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& SignatureType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, SignatureType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function SignatureType_Name.");
+    return PolicyFetchRequest_SignatureType_Name(enum_t_value);
+  }
+  static inline bool SignatureType_Parse(const std::string& name,
+      SignatureType* value) {
+    return PolicyFetchRequest_SignatureType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPolicyTypeFieldNumber = 1,
+    kSettingsEntityIdFieldNumber = 6,
+    kInvalidationPayloadFieldNumber = 8,
+    kVerificationKeyHashFieldNumber = 9,
+    kPolicyInvalidationInfoFieldNumber = 10,
+    kDeviceDmTokenFieldNumber = 12,
+    kBrowserDeviceIdentifierFieldNumber = 13,
+    kTimestampFieldNumber = 2,
+    kSignatureTypeFieldNumber = 3,
+    kPublicKeyVersionFieldNumber = 4,
+    kInvalidationVersionFieldNumber = 7,
+    kInvalidationTopicsOnlyFieldNumber = 11,
+  };
+  // optional string policy_type = 1;
+  bool has_policy_type() const;
+  private:
+  bool _internal_has_policy_type() const;
+  public:
+  void clear_policy_type();
+  const std::string& policy_type() const;
+  void set_policy_type(const std::string& value);
+  void set_policy_type(std::string&& value);
+  void set_policy_type(const char* value);
+  void set_policy_type(const char* value, size_t size);
+  std::string* mutable_policy_type();
+  std::string* release_policy_type();
+  void set_allocated_policy_type(std::string* policy_type);
+  private:
+  const std::string& _internal_policy_type() const;
+  void _internal_set_policy_type(const std::string& value);
+  std::string* _internal_mutable_policy_type();
+  public:
+
+  // optional string settings_entity_id = 6;
+  bool has_settings_entity_id() const;
+  private:
+  bool _internal_has_settings_entity_id() const;
+  public:
+  void clear_settings_entity_id();
+  const std::string& settings_entity_id() const;
+  void set_settings_entity_id(const std::string& value);
+  void set_settings_entity_id(std::string&& value);
+  void set_settings_entity_id(const char* value);
+  void set_settings_entity_id(const char* value, size_t size);
+  std::string* mutable_settings_entity_id();
+  std::string* release_settings_entity_id();
+  void set_allocated_settings_entity_id(std::string* settings_entity_id);
+  private:
+  const std::string& _internal_settings_entity_id() const;
+  void _internal_set_settings_entity_id(const std::string& value);
+  std::string* _internal_mutable_settings_entity_id();
+  public:
+
+  // optional bytes invalidation_payload = 8;
+  bool has_invalidation_payload() const;
+  private:
+  bool _internal_has_invalidation_payload() const;
+  public:
+  void clear_invalidation_payload();
+  const std::string& invalidation_payload() const;
+  void set_invalidation_payload(const std::string& value);
+  void set_invalidation_payload(std::string&& value);
+  void set_invalidation_payload(const char* value);
+  void set_invalidation_payload(const void* value, size_t size);
+  std::string* mutable_invalidation_payload();
+  std::string* release_invalidation_payload();
+  void set_allocated_invalidation_payload(std::string* invalidation_payload);
+  private:
+  const std::string& _internal_invalidation_payload() const;
+  void _internal_set_invalidation_payload(const std::string& value);
+  std::string* _internal_mutable_invalidation_payload();
+  public:
+
+  // optional string verification_key_hash = 9;
+  bool has_verification_key_hash() const;
+  private:
+  bool _internal_has_verification_key_hash() const;
+  public:
+  void clear_verification_key_hash();
+  const std::string& verification_key_hash() const;
+  void set_verification_key_hash(const std::string& value);
+  void set_verification_key_hash(std::string&& value);
+  void set_verification_key_hash(const char* value);
+  void set_verification_key_hash(const char* value, size_t size);
+  std::string* mutable_verification_key_hash();
+  std::string* release_verification_key_hash();
+  void set_allocated_verification_key_hash(std::string* verification_key_hash);
+  private:
+  const std::string& _internal_verification_key_hash() const;
+  void _internal_set_verification_key_hash(const std::string& value);
+  std::string* _internal_mutable_verification_key_hash();
+  public:
+
+  // optional string policy_invalidation_info = 10;
+  bool has_policy_invalidation_info() const;
+  private:
+  bool _internal_has_policy_invalidation_info() const;
+  public:
+  void clear_policy_invalidation_info();
+  const std::string& policy_invalidation_info() const;
+  void set_policy_invalidation_info(const std::string& value);
+  void set_policy_invalidation_info(std::string&& value);
+  void set_policy_invalidation_info(const char* value);
+  void set_policy_invalidation_info(const char* value, size_t size);
+  std::string* mutable_policy_invalidation_info();
+  std::string* release_policy_invalidation_info();
+  void set_allocated_policy_invalidation_info(std::string* policy_invalidation_info);
+  private:
+  const std::string& _internal_policy_invalidation_info() const;
+  void _internal_set_policy_invalidation_info(const std::string& value);
+  std::string* _internal_mutable_policy_invalidation_info();
+  public:
+
+  // optional string device_dm_token = 12;
+  bool has_device_dm_token() const;
+  private:
+  bool _internal_has_device_dm_token() const;
+  public:
+  void clear_device_dm_token();
+  const std::string& device_dm_token() const;
+  void set_device_dm_token(const std::string& value);
+  void set_device_dm_token(std::string&& value);
+  void set_device_dm_token(const char* value);
+  void set_device_dm_token(const char* value, size_t size);
+  std::string* mutable_device_dm_token();
+  std::string* release_device_dm_token();
+  void set_allocated_device_dm_token(std::string* device_dm_token);
+  private:
+  const std::string& _internal_device_dm_token() const;
+  void _internal_set_device_dm_token(const std::string& value);
+  std::string* _internal_mutable_device_dm_token();
+  public:
+
+  // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 13;
+  bool has_browser_device_identifier() const;
+  private:
+  bool _internal_has_browser_device_identifier() const;
+  public:
+  void clear_browser_device_identifier();
+  const ::enterprise_management::BrowserDeviceIdentifier& browser_device_identifier() const;
+  ::enterprise_management::BrowserDeviceIdentifier* release_browser_device_identifier();
+  ::enterprise_management::BrowserDeviceIdentifier* mutable_browser_device_identifier();
+  void set_allocated_browser_device_identifier(::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier);
+  private:
+  const ::enterprise_management::BrowserDeviceIdentifier& _internal_browser_device_identifier() const;
+  ::enterprise_management::BrowserDeviceIdentifier* _internal_mutable_browser_device_identifier();
+  public:
+
+  // optional int64 timestamp = 2;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 3 [default = NONE];
+  bool has_signature_type() const;
+  private:
+  bool _internal_has_signature_type() const;
+  public:
+  void clear_signature_type();
+  ::enterprise_management::PolicyFetchRequest_SignatureType signature_type() const;
+  void set_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value);
+  private:
+  ::enterprise_management::PolicyFetchRequest_SignatureType _internal_signature_type() const;
+  void _internal_set_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value);
+  public:
+
+  // optional int32 public_key_version = 4;
+  bool has_public_key_version() const;
+  private:
+  bool _internal_has_public_key_version() const;
+  public:
+  void clear_public_key_version();
+  ::PROTOBUF_NAMESPACE_ID::int32 public_key_version() const;
+  void set_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_public_key_version() const;
+  void _internal_set_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int64 invalidation_version = 7;
+  bool has_invalidation_version() const;
+  private:
+  bool _internal_has_invalidation_version() const;
+  public:
+  void clear_invalidation_version();
+  ::PROTOBUF_NAMESPACE_ID::int64 invalidation_version() const;
+  void set_invalidation_version(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_invalidation_version() const;
+  void _internal_set_invalidation_version(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional bool invalidation_topics_only = 11;
+  bool has_invalidation_topics_only() const;
+  private:
+  bool _internal_has_invalidation_topics_only() const;
+  public:
+  void clear_invalidation_topics_only();
+  bool invalidation_topics_only() const;
+  void set_invalidation_topics_only(bool value);
+  private:
+  bool _internal_invalidation_topics_only() const;
+  void _internal_set_invalidation_topics_only(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PolicyFetchRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_type_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr settings_entity_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr invalidation_payload_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr verification_key_hash_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_invalidation_info_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_dm_token_;
+  ::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  int signature_type_;
+  ::PROTOBUF_NAMESPACE_ID::int32 public_key_version_;
+  ::PROTOBUF_NAMESPACE_ID::int64 invalidation_version_;
+  bool invalidation_topics_only_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DisabledState :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DisabledState) */ {
+ public:
+  DisabledState();
+  virtual ~DisabledState();
+
+  DisabledState(const DisabledState& from);
+  DisabledState(DisabledState&& from) noexcept
+    : DisabledState() {
+    *this = ::std::move(from);
+  }
+
+  inline DisabledState& operator=(const DisabledState& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DisabledState& operator=(DisabledState&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DisabledState& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DisabledState* internal_default_instance() {
+    return reinterpret_cast<const DisabledState*>(
+               &_DisabledState_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    15;
+
+  friend void swap(DisabledState& a, DisabledState& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DisabledState* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DisabledState* New() const final {
+    return CreateMaybeMessage<DisabledState>(nullptr);
+  }
+
+  DisabledState* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DisabledState>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DisabledState& from);
+  void MergeFrom(const DisabledState& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DisabledState* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DisabledState";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMessageFieldNumber = 1,
+  };
+  // optional string message = 1;
+  bool has_message() const;
+  private:
+  bool _internal_has_message() const;
+  public:
+  void clear_message();
+  const std::string& message() const;
+  void set_message(const std::string& value);
+  void set_message(std::string&& value);
+  void set_message(const char* value);
+  void set_message(const char* value, size_t size);
+  std::string* mutable_message();
+  std::string* release_message();
+  void set_allocated_message(std::string* message);
+  private:
+  const std::string& _internal_message() const;
+  void _internal_set_message(const std::string& value);
+  std::string* _internal_mutable_message();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DisabledState)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr message_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceState :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceState) */ {
+ public:
+  DeviceState();
+  virtual ~DeviceState();
+
+  DeviceState(const DeviceState& from);
+  DeviceState(DeviceState&& from) noexcept
+    : DeviceState() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceState& operator=(const DeviceState& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceState& operator=(DeviceState&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceState& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceState* internal_default_instance() {
+    return reinterpret_cast<const DeviceState*>(
+               &_DeviceState_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    16;
+
+  friend void swap(DeviceState& a, DeviceState& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceState* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceState* New() const final {
+    return CreateMaybeMessage<DeviceState>(nullptr);
+  }
+
+  DeviceState* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceState>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceState& from);
+  void MergeFrom(const DeviceState& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceState* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceState";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceState_DeviceMode DeviceMode;
+  static constexpr DeviceMode DEVICE_MODE_NORMAL =
+    DeviceState_DeviceMode_DEVICE_MODE_NORMAL;
+  static constexpr DeviceMode DEVICE_MODE_DISABLED =
+    DeviceState_DeviceMode_DEVICE_MODE_DISABLED;
+  static inline bool DeviceMode_IsValid(int value) {
+    return DeviceState_DeviceMode_IsValid(value);
+  }
+  static constexpr DeviceMode DeviceMode_MIN =
+    DeviceState_DeviceMode_DeviceMode_MIN;
+  static constexpr DeviceMode DeviceMode_MAX =
+    DeviceState_DeviceMode_DeviceMode_MAX;
+  static constexpr int DeviceMode_ARRAYSIZE =
+    DeviceState_DeviceMode_DeviceMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& DeviceMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, DeviceMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function DeviceMode_Name.");
+    return DeviceState_DeviceMode_Name(enum_t_value);
+  }
+  static inline bool DeviceMode_Parse(const std::string& name,
+      DeviceMode* value) {
+    return DeviceState_DeviceMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDisabledStateFieldNumber = 2,
+    kDeviceModeFieldNumber = 1,
+  };
+  // optional .enterprise_management.DisabledState disabled_state = 2;
+  bool has_disabled_state() const;
+  private:
+  bool _internal_has_disabled_state() const;
+  public:
+  void clear_disabled_state();
+  const ::enterprise_management::DisabledState& disabled_state() const;
+  ::enterprise_management::DisabledState* release_disabled_state();
+  ::enterprise_management::DisabledState* mutable_disabled_state();
+  void set_allocated_disabled_state(::enterprise_management::DisabledState* disabled_state);
+  private:
+  const ::enterprise_management::DisabledState& _internal_disabled_state() const;
+  ::enterprise_management::DisabledState* _internal_mutable_disabled_state();
+  public:
+
+  // optional .enterprise_management.DeviceState.DeviceMode device_mode = 1 [default = DEVICE_MODE_NORMAL];
+  bool has_device_mode() const;
+  private:
+  bool _internal_has_device_mode() const;
+  public:
+  void clear_device_mode();
+  ::enterprise_management::DeviceState_DeviceMode device_mode() const;
+  void set_device_mode(::enterprise_management::DeviceState_DeviceMode value);
+  private:
+  ::enterprise_management::DeviceState_DeviceMode _internal_device_mode() const;
+  void _internal_set_device_mode(::enterprise_management::DeviceState_DeviceMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceState)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::DisabledState* disabled_state_;
+  int device_mode_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CustomerLogo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CustomerLogo) */ {
+ public:
+  CustomerLogo();
+  virtual ~CustomerLogo();
+
+  CustomerLogo(const CustomerLogo& from);
+  CustomerLogo(CustomerLogo&& from) noexcept
+    : CustomerLogo() {
+    *this = ::std::move(from);
+  }
+
+  inline CustomerLogo& operator=(const CustomerLogo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CustomerLogo& operator=(CustomerLogo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CustomerLogo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CustomerLogo* internal_default_instance() {
+    return reinterpret_cast<const CustomerLogo*>(
+               &_CustomerLogo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    17;
+
+  friend void swap(CustomerLogo& a, CustomerLogo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CustomerLogo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CustomerLogo* New() const final {
+    return CreateMaybeMessage<CustomerLogo>(nullptr);
+  }
+
+  CustomerLogo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CustomerLogo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CustomerLogo& from);
+  void MergeFrom(const CustomerLogo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CustomerLogo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CustomerLogo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLogoUrlFieldNumber = 1,
+  };
+  // optional string logo_url = 1;
+  bool has_logo_url() const;
+  private:
+  bool _internal_has_logo_url() const;
+  public:
+  void clear_logo_url();
+  const std::string& logo_url() const;
+  void set_logo_url(const std::string& value);
+  void set_logo_url(std::string&& value);
+  void set_logo_url(const char* value);
+  void set_logo_url(const char* value, size_t size);
+  std::string* mutable_logo_url();
+  std::string* release_logo_url();
+  void set_allocated_logo_url(std::string* logo_url);
+  private:
+  const std::string& _internal_logo_url() const;
+  void _internal_set_logo_url(const std::string& value);
+  std::string* _internal_mutable_logo_url();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CustomerLogo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr logo_url_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PolicyData :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PolicyData) */ {
+ public:
+  PolicyData();
+  virtual ~PolicyData();
+
+  PolicyData(const PolicyData& from);
+  PolicyData(PolicyData&& from) noexcept
+    : PolicyData() {
+    *this = ::std::move(from);
+  }
+
+  inline PolicyData& operator=(const PolicyData& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PolicyData& operator=(PolicyData&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PolicyData& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PolicyData* internal_default_instance() {
+    return reinterpret_cast<const PolicyData*>(
+               &_PolicyData_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    18;
+
+  friend void swap(PolicyData& a, PolicyData& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PolicyData* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PolicyData* New() const final {
+    return CreateMaybeMessage<PolicyData>(nullptr);
+  }
+
+  PolicyData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PolicyData>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PolicyData& from);
+  void MergeFrom(const PolicyData& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PolicyData* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PolicyData";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PolicyData_AssociationState AssociationState;
+  static constexpr AssociationState ACTIVE =
+    PolicyData_AssociationState_ACTIVE;
+  static constexpr AssociationState UNMANAGED =
+    PolicyData_AssociationState_UNMANAGED;
+  static constexpr AssociationState DEPROVISIONED =
+    PolicyData_AssociationState_DEPROVISIONED;
+  static inline bool AssociationState_IsValid(int value) {
+    return PolicyData_AssociationState_IsValid(value);
+  }
+  static constexpr AssociationState AssociationState_MIN =
+    PolicyData_AssociationState_AssociationState_MIN;
+  static constexpr AssociationState AssociationState_MAX =
+    PolicyData_AssociationState_AssociationState_MAX;
+  static constexpr int AssociationState_ARRAYSIZE =
+    PolicyData_AssociationState_AssociationState_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AssociationState_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AssociationState>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AssociationState_Name.");
+    return PolicyData_AssociationState_Name(enum_t_value);
+  }
+  static inline bool AssociationState_Parse(const std::string& name,
+      AssociationState* value) {
+    return PolicyData_AssociationState_Parse(name, value);
+  }
+
+  typedef PolicyData_ManagementMode ManagementMode;
+  static constexpr ManagementMode LOCAL_OWNER =
+    PolicyData_ManagementMode_LOCAL_OWNER;
+  static constexpr ManagementMode ENTERPRISE_MANAGED =
+    PolicyData_ManagementMode_ENTERPRISE_MANAGED;
+  static constexpr ManagementMode OBSOLETE_CONSUMER_MANAGED =
+    PolicyData_ManagementMode_OBSOLETE_CONSUMER_MANAGED;
+  static inline bool ManagementMode_IsValid(int value) {
+    return PolicyData_ManagementMode_IsValid(value);
+  }
+  static constexpr ManagementMode ManagementMode_MIN =
+    PolicyData_ManagementMode_ManagementMode_MIN;
+  static constexpr ManagementMode ManagementMode_MAX =
+    PolicyData_ManagementMode_ManagementMode_MAX;
+  static constexpr int ManagementMode_ARRAYSIZE =
+    PolicyData_ManagementMode_ManagementMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ManagementMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ManagementMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ManagementMode_Name.");
+    return PolicyData_ManagementMode_Name(enum_t_value);
+  }
+  static inline bool ManagementMode_Parse(const std::string& name,
+      ManagementMode* value) {
+    return PolicyData_ManagementMode_Parse(name, value);
+  }
+
+  typedef PolicyData_MarketSegment MarketSegment;
+  static constexpr MarketSegment MARKET_SEGMENT_UNSPECIFIED =
+    PolicyData_MarketSegment_MARKET_SEGMENT_UNSPECIFIED;
+  static constexpr MarketSegment ENROLLED_EDUCATION =
+    PolicyData_MarketSegment_ENROLLED_EDUCATION;
+  static constexpr MarketSegment ENROLLED_ENTERPRISE =
+    PolicyData_MarketSegment_ENROLLED_ENTERPRISE;
+  static inline bool MarketSegment_IsValid(int value) {
+    return PolicyData_MarketSegment_IsValid(value);
+  }
+  static constexpr MarketSegment MarketSegment_MIN =
+    PolicyData_MarketSegment_MarketSegment_MIN;
+  static constexpr MarketSegment MarketSegment_MAX =
+    PolicyData_MarketSegment_MarketSegment_MAX;
+  static constexpr int MarketSegment_ARRAYSIZE =
+    PolicyData_MarketSegment_MarketSegment_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& MarketSegment_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, MarketSegment>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function MarketSegment_Name.");
+    return PolicyData_MarketSegment_Name(enum_t_value);
+  }
+  static inline bool MarketSegment_Parse(const std::string& name,
+      MarketSegment* value) {
+    return PolicyData_MarketSegment_Parse(name, value);
+  }
+
+  typedef PolicyData_MetricsLogSegment MetricsLogSegment;
+  static constexpr MetricsLogSegment UNSPECIFIED =
+    PolicyData_MetricsLogSegment_UNSPECIFIED;
+  static constexpr MetricsLogSegment K12 =
+    PolicyData_MetricsLogSegment_K12;
+  static constexpr MetricsLogSegment UNIVERSITY =
+    PolicyData_MetricsLogSegment_UNIVERSITY;
+  static constexpr MetricsLogSegment NONPROFIT =
+    PolicyData_MetricsLogSegment_NONPROFIT;
+  static constexpr MetricsLogSegment ENTERPRISE =
+    PolicyData_MetricsLogSegment_ENTERPRISE;
+  static inline bool MetricsLogSegment_IsValid(int value) {
+    return PolicyData_MetricsLogSegment_IsValid(value);
+  }
+  static constexpr MetricsLogSegment MetricsLogSegment_MIN =
+    PolicyData_MetricsLogSegment_MetricsLogSegment_MIN;
+  static constexpr MetricsLogSegment MetricsLogSegment_MAX =
+    PolicyData_MetricsLogSegment_MetricsLogSegment_MAX;
+  static constexpr int MetricsLogSegment_ARRAYSIZE =
+    PolicyData_MetricsLogSegment_MetricsLogSegment_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& MetricsLogSegment_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, MetricsLogSegment>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function MetricsLogSegment_Name.");
+    return PolicyData_MetricsLogSegment_Name(enum_t_value);
+  }
+  static inline bool MetricsLogSegment_Parse(const std::string& name,
+      MetricsLogSegment* value) {
+    return PolicyData_MetricsLogSegment_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceAffiliationIdsFieldNumber = 23,
+    kUserAffiliationIdsFieldNumber = 24,
+    kPolicyTypeFieldNumber = 1,
+    kRequestTokenFieldNumber = 3,
+    kPolicyValueFieldNumber = 4,
+    kMachineNameFieldNumber = 5,
+    kUsernameFieldNumber = 7,
+    kDeviceIdFieldNumber = 8,
+    kSettingsEntityIdFieldNumber = 11,
+    kServiceAccountIdentityFieldNumber = 12,
+    kPolicyTokenFieldNumber = 15,
+    kAnnotatedLocationFieldNumber = 20,
+    kAnnotatedAssetIdFieldNumber = 21,
+    kDirectoryApiIdFieldNumber = 22,
+    kDisplayDomainFieldNumber = 25,
+    kPolicyInvalidationTopicFieldNumber = 26,
+    kCommandInvalidationTopicFieldNumber = 27,
+    kGaiaIdFieldNumber = 29,
+    kChangePasswordUriFieldNumber = 32,
+    kObfuscatedCustomerIdFieldNumber = 34,
+    kManagedByFieldNumber = 36,
+    kSsoProfileFieldNumber = 37,
+    kLicenseSkuFieldNumber = 38,
+    kDeviceStateFieldNumber = 17,
+    kCustomerLogoFieldNumber = 31,
+    kClientActionRequiredFieldNumber = 33,
+    kTimestampFieldNumber = 2,
+    kPublicKeyVersionFieldNumber = 6,
+    kStateFieldNumber = 9,
+    kManagementModeFieldNumber = 16,
+    kEnrollmentIdNeededFieldNumber = 28,
+    kMarketSegmentFieldNumber = 30,
+    kMetricsLogSegmentFieldNumber = 35,
+  };
+  // repeated string device_affiliation_ids = 23;
+  int device_affiliation_ids_size() const;
+  private:
+  int _internal_device_affiliation_ids_size() const;
+  public:
+  void clear_device_affiliation_ids();
+  const std::string& device_affiliation_ids(int index) const;
+  std::string* mutable_device_affiliation_ids(int index);
+  void set_device_affiliation_ids(int index, const std::string& value);
+  void set_device_affiliation_ids(int index, std::string&& value);
+  void set_device_affiliation_ids(int index, const char* value);
+  void set_device_affiliation_ids(int index, const char* value, size_t size);
+  std::string* add_device_affiliation_ids();
+  void add_device_affiliation_ids(const std::string& value);
+  void add_device_affiliation_ids(std::string&& value);
+  void add_device_affiliation_ids(const char* value);
+  void add_device_affiliation_ids(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& device_affiliation_ids() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_device_affiliation_ids();
+  private:
+  const std::string& _internal_device_affiliation_ids(int index) const;
+  std::string* _internal_add_device_affiliation_ids();
+  public:
+
+  // repeated string user_affiliation_ids = 24;
+  int user_affiliation_ids_size() const;
+  private:
+  int _internal_user_affiliation_ids_size() const;
+  public:
+  void clear_user_affiliation_ids();
+  const std::string& user_affiliation_ids(int index) const;
+  std::string* mutable_user_affiliation_ids(int index);
+  void set_user_affiliation_ids(int index, const std::string& value);
+  void set_user_affiliation_ids(int index, std::string&& value);
+  void set_user_affiliation_ids(int index, const char* value);
+  void set_user_affiliation_ids(int index, const char* value, size_t size);
+  std::string* add_user_affiliation_ids();
+  void add_user_affiliation_ids(const std::string& value);
+  void add_user_affiliation_ids(std::string&& value);
+  void add_user_affiliation_ids(const char* value);
+  void add_user_affiliation_ids(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& user_affiliation_ids() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_user_affiliation_ids();
+  private:
+  const std::string& _internal_user_affiliation_ids(int index) const;
+  std::string* _internal_add_user_affiliation_ids();
+  public:
+
+  // optional string policy_type = 1;
+  bool has_policy_type() const;
+  private:
+  bool _internal_has_policy_type() const;
+  public:
+  void clear_policy_type();
+  const std::string& policy_type() const;
+  void set_policy_type(const std::string& value);
+  void set_policy_type(std::string&& value);
+  void set_policy_type(const char* value);
+  void set_policy_type(const char* value, size_t size);
+  std::string* mutable_policy_type();
+  std::string* release_policy_type();
+  void set_allocated_policy_type(std::string* policy_type);
+  private:
+  const std::string& _internal_policy_type() const;
+  void _internal_set_policy_type(const std::string& value);
+  std::string* _internal_mutable_policy_type();
+  public:
+
+  // optional string request_token = 3;
+  bool has_request_token() const;
+  private:
+  bool _internal_has_request_token() const;
+  public:
+  void clear_request_token();
+  const std::string& request_token() const;
+  void set_request_token(const std::string& value);
+  void set_request_token(std::string&& value);
+  void set_request_token(const char* value);
+  void set_request_token(const char* value, size_t size);
+  std::string* mutable_request_token();
+  std::string* release_request_token();
+  void set_allocated_request_token(std::string* request_token);
+  private:
+  const std::string& _internal_request_token() const;
+  void _internal_set_request_token(const std::string& value);
+  std::string* _internal_mutable_request_token();
+  public:
+
+  // optional bytes policy_value = 4;
+  bool has_policy_value() const;
+  private:
+  bool _internal_has_policy_value() const;
+  public:
+  void clear_policy_value();
+  const std::string& policy_value() const;
+  void set_policy_value(const std::string& value);
+  void set_policy_value(std::string&& value);
+  void set_policy_value(const char* value);
+  void set_policy_value(const void* value, size_t size);
+  std::string* mutable_policy_value();
+  std::string* release_policy_value();
+  void set_allocated_policy_value(std::string* policy_value);
+  private:
+  const std::string& _internal_policy_value() const;
+  void _internal_set_policy_value(const std::string& value);
+  std::string* _internal_mutable_policy_value();
+  public:
+
+  // optional string machine_name = 5;
+  bool has_machine_name() const;
+  private:
+  bool _internal_has_machine_name() const;
+  public:
+  void clear_machine_name();
+  const std::string& machine_name() const;
+  void set_machine_name(const std::string& value);
+  void set_machine_name(std::string&& value);
+  void set_machine_name(const char* value);
+  void set_machine_name(const char* value, size_t size);
+  std::string* mutable_machine_name();
+  std::string* release_machine_name();
+  void set_allocated_machine_name(std::string* machine_name);
+  private:
+  const std::string& _internal_machine_name() const;
+  void _internal_set_machine_name(const std::string& value);
+  std::string* _internal_mutable_machine_name();
+  public:
+
+  // optional string username = 7;
+  bool has_username() const;
+  private:
+  bool _internal_has_username() const;
+  public:
+  void clear_username();
+  const std::string& username() const;
+  void set_username(const std::string& value);
+  void set_username(std::string&& value);
+  void set_username(const char* value);
+  void set_username(const char* value, size_t size);
+  std::string* mutable_username();
+  std::string* release_username();
+  void set_allocated_username(std::string* username);
+  private:
+  const std::string& _internal_username() const;
+  void _internal_set_username(const std::string& value);
+  std::string* _internal_mutable_username();
+  public:
+
+  // optional string device_id = 8;
+  bool has_device_id() const;
+  private:
+  bool _internal_has_device_id() const;
+  public:
+  void clear_device_id();
+  const std::string& device_id() const;
+  void set_device_id(const std::string& value);
+  void set_device_id(std::string&& value);
+  void set_device_id(const char* value);
+  void set_device_id(const char* value, size_t size);
+  std::string* mutable_device_id();
+  std::string* release_device_id();
+  void set_allocated_device_id(std::string* device_id);
+  private:
+  const std::string& _internal_device_id() const;
+  void _internal_set_device_id(const std::string& value);
+  std::string* _internal_mutable_device_id();
+  public:
+
+  // optional string settings_entity_id = 11;
+  bool has_settings_entity_id() const;
+  private:
+  bool _internal_has_settings_entity_id() const;
+  public:
+  void clear_settings_entity_id();
+  const std::string& settings_entity_id() const;
+  void set_settings_entity_id(const std::string& value);
+  void set_settings_entity_id(std::string&& value);
+  void set_settings_entity_id(const char* value);
+  void set_settings_entity_id(const char* value, size_t size);
+  std::string* mutable_settings_entity_id();
+  std::string* release_settings_entity_id();
+  void set_allocated_settings_entity_id(std::string* settings_entity_id);
+  private:
+  const std::string& _internal_settings_entity_id() const;
+  void _internal_set_settings_entity_id(const std::string& value);
+  std::string* _internal_mutable_settings_entity_id();
+  public:
+
+  // optional string service_account_identity = 12;
+  bool has_service_account_identity() const;
+  private:
+  bool _internal_has_service_account_identity() const;
+  public:
+  void clear_service_account_identity();
+  const std::string& service_account_identity() const;
+  void set_service_account_identity(const std::string& value);
+  void set_service_account_identity(std::string&& value);
+  void set_service_account_identity(const char* value);
+  void set_service_account_identity(const char* value, size_t size);
+  std::string* mutable_service_account_identity();
+  std::string* release_service_account_identity();
+  void set_allocated_service_account_identity(std::string* service_account_identity);
+  private:
+  const std::string& _internal_service_account_identity() const;
+  void _internal_set_service_account_identity(const std::string& value);
+  std::string* _internal_mutable_service_account_identity();
+  public:
+
+  // optional string policy_token = 15;
+  bool has_policy_token() const;
+  private:
+  bool _internal_has_policy_token() const;
+  public:
+  void clear_policy_token();
+  const std::string& policy_token() const;
+  void set_policy_token(const std::string& value);
+  void set_policy_token(std::string&& value);
+  void set_policy_token(const char* value);
+  void set_policy_token(const char* value, size_t size);
+  std::string* mutable_policy_token();
+  std::string* release_policy_token();
+  void set_allocated_policy_token(std::string* policy_token);
+  private:
+  const std::string& _internal_policy_token() const;
+  void _internal_set_policy_token(const std::string& value);
+  std::string* _internal_mutable_policy_token();
+  public:
+
+  // optional string annotated_location = 20;
+  bool has_annotated_location() const;
+  private:
+  bool _internal_has_annotated_location() const;
+  public:
+  void clear_annotated_location();
+  const std::string& annotated_location() const;
+  void set_annotated_location(const std::string& value);
+  void set_annotated_location(std::string&& value);
+  void set_annotated_location(const char* value);
+  void set_annotated_location(const char* value, size_t size);
+  std::string* mutable_annotated_location();
+  std::string* release_annotated_location();
+  void set_allocated_annotated_location(std::string* annotated_location);
+  private:
+  const std::string& _internal_annotated_location() const;
+  void _internal_set_annotated_location(const std::string& value);
+  std::string* _internal_mutable_annotated_location();
+  public:
+
+  // optional string annotated_asset_id = 21;
+  bool has_annotated_asset_id() const;
+  private:
+  bool _internal_has_annotated_asset_id() const;
+  public:
+  void clear_annotated_asset_id();
+  const std::string& annotated_asset_id() const;
+  void set_annotated_asset_id(const std::string& value);
+  void set_annotated_asset_id(std::string&& value);
+  void set_annotated_asset_id(const char* value);
+  void set_annotated_asset_id(const char* value, size_t size);
+  std::string* mutable_annotated_asset_id();
+  std::string* release_annotated_asset_id();
+  void set_allocated_annotated_asset_id(std::string* annotated_asset_id);
+  private:
+  const std::string& _internal_annotated_asset_id() const;
+  void _internal_set_annotated_asset_id(const std::string& value);
+  std::string* _internal_mutable_annotated_asset_id();
+  public:
+
+  // optional string directory_api_id = 22;
+  bool has_directory_api_id() const;
+  private:
+  bool _internal_has_directory_api_id() const;
+  public:
+  void clear_directory_api_id();
+  const std::string& directory_api_id() const;
+  void set_directory_api_id(const std::string& value);
+  void set_directory_api_id(std::string&& value);
+  void set_directory_api_id(const char* value);
+  void set_directory_api_id(const char* value, size_t size);
+  std::string* mutable_directory_api_id();
+  std::string* release_directory_api_id();
+  void set_allocated_directory_api_id(std::string* directory_api_id);
+  private:
+  const std::string& _internal_directory_api_id() const;
+  void _internal_set_directory_api_id(const std::string& value);
+  std::string* _internal_mutable_directory_api_id();
+  public:
+
+  // optional string display_domain = 25;
+  bool has_display_domain() const;
+  private:
+  bool _internal_has_display_domain() const;
+  public:
+  void clear_display_domain();
+  const std::string& display_domain() const;
+  void set_display_domain(const std::string& value);
+  void set_display_domain(std::string&& value);
+  void set_display_domain(const char* value);
+  void set_display_domain(const char* value, size_t size);
+  std::string* mutable_display_domain();
+  std::string* release_display_domain();
+  void set_allocated_display_domain(std::string* display_domain);
+  private:
+  const std::string& _internal_display_domain() const;
+  void _internal_set_display_domain(const std::string& value);
+  std::string* _internal_mutable_display_domain();
+  public:
+
+  // optional string policy_invalidation_topic = 26;
+  bool has_policy_invalidation_topic() const;
+  private:
+  bool _internal_has_policy_invalidation_topic() const;
+  public:
+  void clear_policy_invalidation_topic();
+  const std::string& policy_invalidation_topic() const;
+  void set_policy_invalidation_topic(const std::string& value);
+  void set_policy_invalidation_topic(std::string&& value);
+  void set_policy_invalidation_topic(const char* value);
+  void set_policy_invalidation_topic(const char* value, size_t size);
+  std::string* mutable_policy_invalidation_topic();
+  std::string* release_policy_invalidation_topic();
+  void set_allocated_policy_invalidation_topic(std::string* policy_invalidation_topic);
+  private:
+  const std::string& _internal_policy_invalidation_topic() const;
+  void _internal_set_policy_invalidation_topic(const std::string& value);
+  std::string* _internal_mutable_policy_invalidation_topic();
+  public:
+
+  // optional string command_invalidation_topic = 27;
+  bool has_command_invalidation_topic() const;
+  private:
+  bool _internal_has_command_invalidation_topic() const;
+  public:
+  void clear_command_invalidation_topic();
+  const std::string& command_invalidation_topic() const;
+  void set_command_invalidation_topic(const std::string& value);
+  void set_command_invalidation_topic(std::string&& value);
+  void set_command_invalidation_topic(const char* value);
+  void set_command_invalidation_topic(const char* value, size_t size);
+  std::string* mutable_command_invalidation_topic();
+  std::string* release_command_invalidation_topic();
+  void set_allocated_command_invalidation_topic(std::string* command_invalidation_topic);
+  private:
+  const std::string& _internal_command_invalidation_topic() const;
+  void _internal_set_command_invalidation_topic(const std::string& value);
+  std::string* _internal_mutable_command_invalidation_topic();
+  public:
+
+  // optional string gaia_id = 29;
+  bool has_gaia_id() const;
+  private:
+  bool _internal_has_gaia_id() const;
+  public:
+  void clear_gaia_id();
+  const std::string& gaia_id() const;
+  void set_gaia_id(const std::string& value);
+  void set_gaia_id(std::string&& value);
+  void set_gaia_id(const char* value);
+  void set_gaia_id(const char* value, size_t size);
+  std::string* mutable_gaia_id();
+  std::string* release_gaia_id();
+  void set_allocated_gaia_id(std::string* gaia_id);
+  private:
+  const std::string& _internal_gaia_id() const;
+  void _internal_set_gaia_id(const std::string& value);
+  std::string* _internal_mutable_gaia_id();
+  public:
+
+  // optional string change_password_uri = 32;
+  bool has_change_password_uri() const;
+  private:
+  bool _internal_has_change_password_uri() const;
+  public:
+  void clear_change_password_uri();
+  const std::string& change_password_uri() const;
+  void set_change_password_uri(const std::string& value);
+  void set_change_password_uri(std::string&& value);
+  void set_change_password_uri(const char* value);
+  void set_change_password_uri(const char* value, size_t size);
+  std::string* mutable_change_password_uri();
+  std::string* release_change_password_uri();
+  void set_allocated_change_password_uri(std::string* change_password_uri);
+  private:
+  const std::string& _internal_change_password_uri() const;
+  void _internal_set_change_password_uri(const std::string& value);
+  std::string* _internal_mutable_change_password_uri();
+  public:
+
+  // optional string obfuscated_customer_id = 34;
+  bool has_obfuscated_customer_id() const;
+  private:
+  bool _internal_has_obfuscated_customer_id() const;
+  public:
+  void clear_obfuscated_customer_id();
+  const std::string& obfuscated_customer_id() const;
+  void set_obfuscated_customer_id(const std::string& value);
+  void set_obfuscated_customer_id(std::string&& value);
+  void set_obfuscated_customer_id(const char* value);
+  void set_obfuscated_customer_id(const char* value, size_t size);
+  std::string* mutable_obfuscated_customer_id();
+  std::string* release_obfuscated_customer_id();
+  void set_allocated_obfuscated_customer_id(std::string* obfuscated_customer_id);
+  private:
+  const std::string& _internal_obfuscated_customer_id() const;
+  void _internal_set_obfuscated_customer_id(const std::string& value);
+  std::string* _internal_mutable_obfuscated_customer_id();
+  public:
+
+  // optional string managed_by = 36;
+  bool has_managed_by() const;
+  private:
+  bool _internal_has_managed_by() const;
+  public:
+  void clear_managed_by();
+  const std::string& managed_by() const;
+  void set_managed_by(const std::string& value);
+  void set_managed_by(std::string&& value);
+  void set_managed_by(const char* value);
+  void set_managed_by(const char* value, size_t size);
+  std::string* mutable_managed_by();
+  std::string* release_managed_by();
+  void set_allocated_managed_by(std::string* managed_by);
+  private:
+  const std::string& _internal_managed_by() const;
+  void _internal_set_managed_by(const std::string& value);
+  std::string* _internal_mutable_managed_by();
+  public:
+
+  // optional string sso_profile = 37;
+  bool has_sso_profile() const;
+  private:
+  bool _internal_has_sso_profile() const;
+  public:
+  void clear_sso_profile();
+  const std::string& sso_profile() const;
+  void set_sso_profile(const std::string& value);
+  void set_sso_profile(std::string&& value);
+  void set_sso_profile(const char* value);
+  void set_sso_profile(const char* value, size_t size);
+  std::string* mutable_sso_profile();
+  std::string* release_sso_profile();
+  void set_allocated_sso_profile(std::string* sso_profile);
+  private:
+  const std::string& _internal_sso_profile() const;
+  void _internal_set_sso_profile(const std::string& value);
+  std::string* _internal_mutable_sso_profile();
+  public:
+
+  // optional string license_sku = 38;
+  bool has_license_sku() const;
+  private:
+  bool _internal_has_license_sku() const;
+  public:
+  void clear_license_sku();
+  const std::string& license_sku() const;
+  void set_license_sku(const std::string& value);
+  void set_license_sku(std::string&& value);
+  void set_license_sku(const char* value);
+  void set_license_sku(const char* value, size_t size);
+  std::string* mutable_license_sku();
+  std::string* release_license_sku();
+  void set_allocated_license_sku(std::string* license_sku);
+  private:
+  const std::string& _internal_license_sku() const;
+  void _internal_set_license_sku(const std::string& value);
+  std::string* _internal_mutable_license_sku();
+  public:
+
+  // optional .enterprise_management.DeviceState device_state = 17;
+  bool has_device_state() const;
+  private:
+  bool _internal_has_device_state() const;
+  public:
+  void clear_device_state();
+  const ::enterprise_management::DeviceState& device_state() const;
+  ::enterprise_management::DeviceState* release_device_state();
+  ::enterprise_management::DeviceState* mutable_device_state();
+  void set_allocated_device_state(::enterprise_management::DeviceState* device_state);
+  private:
+  const ::enterprise_management::DeviceState& _internal_device_state() const;
+  ::enterprise_management::DeviceState* _internal_mutable_device_state();
+  public:
+
+  // optional .enterprise_management.CustomerLogo customer_logo = 31;
+  bool has_customer_logo() const;
+  private:
+  bool _internal_has_customer_logo() const;
+  public:
+  void clear_customer_logo();
+  const ::enterprise_management::CustomerLogo& customer_logo() const;
+  ::enterprise_management::CustomerLogo* release_customer_logo();
+  ::enterprise_management::CustomerLogo* mutable_customer_logo();
+  void set_allocated_customer_logo(::enterprise_management::CustomerLogo* customer_logo);
+  private:
+  const ::enterprise_management::CustomerLogo& _internal_customer_logo() const;
+  ::enterprise_management::CustomerLogo* _internal_mutable_customer_logo();
+  public:
+
+  // optional .enterprise_management.ClientActionRequired client_action_required = 33;
+  bool has_client_action_required() const;
+  private:
+  bool _internal_has_client_action_required() const;
+  public:
+  void clear_client_action_required();
+  const ::enterprise_management::ClientActionRequired& client_action_required() const;
+  ::enterprise_management::ClientActionRequired* release_client_action_required();
+  ::enterprise_management::ClientActionRequired* mutable_client_action_required();
+  void set_allocated_client_action_required(::enterprise_management::ClientActionRequired* client_action_required);
+  private:
+  const ::enterprise_management::ClientActionRequired& _internal_client_action_required() const;
+  ::enterprise_management::ClientActionRequired* _internal_mutable_client_action_required();
+  public:
+
+  // optional int64 timestamp = 2;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 public_key_version = 6;
+  bool has_public_key_version() const;
+  private:
+  bool _internal_has_public_key_version() const;
+  public:
+  void clear_public_key_version();
+  ::PROTOBUF_NAMESPACE_ID::int32 public_key_version() const;
+  void set_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_public_key_version() const;
+  void _internal_set_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional .enterprise_management.PolicyData.AssociationState state = 9 [default = ACTIVE];
+  bool has_state() const;
+  private:
+  bool _internal_has_state() const;
+  public:
+  void clear_state();
+  ::enterprise_management::PolicyData_AssociationState state() const;
+  void set_state(::enterprise_management::PolicyData_AssociationState value);
+  private:
+  ::enterprise_management::PolicyData_AssociationState _internal_state() const;
+  void _internal_set_state(::enterprise_management::PolicyData_AssociationState value);
+  public:
+
+  // optional .enterprise_management.PolicyData.ManagementMode management_mode = 16;
+  bool has_management_mode() const;
+  private:
+  bool _internal_has_management_mode() const;
+  public:
+  void clear_management_mode();
+  ::enterprise_management::PolicyData_ManagementMode management_mode() const;
+  void set_management_mode(::enterprise_management::PolicyData_ManagementMode value);
+  private:
+  ::enterprise_management::PolicyData_ManagementMode _internal_management_mode() const;
+  void _internal_set_management_mode(::enterprise_management::PolicyData_ManagementMode value);
+  public:
+
+  // optional bool enrollment_id_needed = 28;
+  bool has_enrollment_id_needed() const;
+  private:
+  bool _internal_has_enrollment_id_needed() const;
+  public:
+  void clear_enrollment_id_needed();
+  bool enrollment_id_needed() const;
+  void set_enrollment_id_needed(bool value);
+  private:
+  bool _internal_enrollment_id_needed() const;
+  void _internal_set_enrollment_id_needed(bool value);
+  public:
+
+  // optional .enterprise_management.PolicyData.MarketSegment market_segment = 30;
+  bool has_market_segment() const;
+  private:
+  bool _internal_has_market_segment() const;
+  public:
+  void clear_market_segment();
+  ::enterprise_management::PolicyData_MarketSegment market_segment() const;
+  void set_market_segment(::enterprise_management::PolicyData_MarketSegment value);
+  private:
+  ::enterprise_management::PolicyData_MarketSegment _internal_market_segment() const;
+  void _internal_set_market_segment(::enterprise_management::PolicyData_MarketSegment value);
+  public:
+
+  // optional .enterprise_management.PolicyData.MetricsLogSegment metrics_log_segment = 35;
+  bool has_metrics_log_segment() const;
+  private:
+  bool _internal_has_metrics_log_segment() const;
+  public:
+  void clear_metrics_log_segment();
+  ::enterprise_management::PolicyData_MetricsLogSegment metrics_log_segment() const;
+  void set_metrics_log_segment(::enterprise_management::PolicyData_MetricsLogSegment value);
+  private:
+  ::enterprise_management::PolicyData_MetricsLogSegment _internal_metrics_log_segment() const;
+  void _internal_set_metrics_log_segment(::enterprise_management::PolicyData_MetricsLogSegment value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PolicyData)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> device_affiliation_ids_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> user_affiliation_ids_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_type_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr request_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_value_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr machine_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr username_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr settings_entity_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr service_account_identity_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr annotated_location_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr annotated_asset_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr directory_api_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr display_domain_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_invalidation_topic_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr command_invalidation_topic_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr gaia_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr change_password_uri_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obfuscated_customer_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr managed_by_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr sso_profile_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr license_sku_;
+  ::enterprise_management::DeviceState* device_state_;
+  ::enterprise_management::CustomerLogo* customer_logo_;
+  ::enterprise_management::ClientActionRequired* client_action_required_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int32 public_key_version_;
+  int state_;
+  int management_mode_;
+  bool enrollment_id_needed_;
+  int market_segment_;
+  int metrics_log_segment_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ClientActionRequired :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ClientActionRequired) */ {
+ public:
+  ClientActionRequired();
+  virtual ~ClientActionRequired();
+
+  ClientActionRequired(const ClientActionRequired& from);
+  ClientActionRequired(ClientActionRequired&& from) noexcept
+    : ClientActionRequired() {
+    *this = ::std::move(from);
+  }
+
+  inline ClientActionRequired& operator=(const ClientActionRequired& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ClientActionRequired& operator=(ClientActionRequired&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ClientActionRequired& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ClientActionRequired* internal_default_instance() {
+    return reinterpret_cast<const ClientActionRequired*>(
+               &_ClientActionRequired_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    19;
+
+  friend void swap(ClientActionRequired& a, ClientActionRequired& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ClientActionRequired* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ClientActionRequired* New() const final {
+    return CreateMaybeMessage<ClientActionRequired>(nullptr);
+  }
+
+  ClientActionRequired* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ClientActionRequired>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ClientActionRequired& from);
+  void MergeFrom(const ClientActionRequired& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ClientActionRequired* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ClientActionRequired";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnrollmentCertificateNeededFieldNumber = 1,
+  };
+  // optional bool enrollment_certificate_needed = 1;
+  bool has_enrollment_certificate_needed() const;
+  private:
+  bool _internal_has_enrollment_certificate_needed() const;
+  public:
+  void clear_enrollment_certificate_needed();
+  bool enrollment_certificate_needed() const;
+  void set_enrollment_certificate_needed(bool value);
+  private:
+  bool _internal_enrollment_certificate_needed() const;
+  void _internal_set_enrollment_certificate_needed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ClientActionRequired)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool enrollment_certificate_needed_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PolicyFetchResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PolicyFetchResponse) */ {
+ public:
+  PolicyFetchResponse();
+  virtual ~PolicyFetchResponse();
+
+  PolicyFetchResponse(const PolicyFetchResponse& from);
+  PolicyFetchResponse(PolicyFetchResponse&& from) noexcept
+    : PolicyFetchResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PolicyFetchResponse& operator=(const PolicyFetchResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PolicyFetchResponse& operator=(PolicyFetchResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PolicyFetchResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PolicyFetchResponse* internal_default_instance() {
+    return reinterpret_cast<const PolicyFetchResponse*>(
+               &_PolicyFetchResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    20;
+
+  friend void swap(PolicyFetchResponse& a, PolicyFetchResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PolicyFetchResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PolicyFetchResponse* New() const final {
+    return CreateMaybeMessage<PolicyFetchResponse>(nullptr);
+  }
+
+  PolicyFetchResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PolicyFetchResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PolicyFetchResponse& from);
+  void MergeFrom(const PolicyFetchResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PolicyFetchResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PolicyFetchResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kErrorMessageFieldNumber = 2,
+    kPolicyDataFieldNumber = 3,
+    kPolicyDataSignatureFieldNumber = 4,
+    kNewPublicKeyFieldNumber = 5,
+    kNewPublicKeySignatureFieldNumber = 6,
+    kNewPublicKeyVerificationSignatureDeprecatedFieldNumber = 7,
+    kNewPublicKeyVerificationDataFieldNumber = 8,
+    kNewPublicKeyVerificationDataSignatureFieldNumber = 9,
+    kPolicyTypeFieldNumber = 10,
+    kErrorCodeFieldNumber = 1,
+    kPolicyDataSignatureTypeFieldNumber = 11,
+  };
+  // optional string error_message = 2;
+  bool has_error_message() const;
+  private:
+  bool _internal_has_error_message() const;
+  public:
+  void clear_error_message();
+  const std::string& error_message() const;
+  void set_error_message(const std::string& value);
+  void set_error_message(std::string&& value);
+  void set_error_message(const char* value);
+  void set_error_message(const char* value, size_t size);
+  std::string* mutable_error_message();
+  std::string* release_error_message();
+  void set_allocated_error_message(std::string* error_message);
+  private:
+  const std::string& _internal_error_message() const;
+  void _internal_set_error_message(const std::string& value);
+  std::string* _internal_mutable_error_message();
+  public:
+
+  // optional bytes policy_data = 3;
+  bool has_policy_data() const;
+  private:
+  bool _internal_has_policy_data() const;
+  public:
+  void clear_policy_data();
+  const std::string& policy_data() const;
+  void set_policy_data(const std::string& value);
+  void set_policy_data(std::string&& value);
+  void set_policy_data(const char* value);
+  void set_policy_data(const void* value, size_t size);
+  std::string* mutable_policy_data();
+  std::string* release_policy_data();
+  void set_allocated_policy_data(std::string* policy_data);
+  private:
+  const std::string& _internal_policy_data() const;
+  void _internal_set_policy_data(const std::string& value);
+  std::string* _internal_mutable_policy_data();
+  public:
+
+  // optional bytes policy_data_signature = 4;
+  bool has_policy_data_signature() const;
+  private:
+  bool _internal_has_policy_data_signature() const;
+  public:
+  void clear_policy_data_signature();
+  const std::string& policy_data_signature() const;
+  void set_policy_data_signature(const std::string& value);
+  void set_policy_data_signature(std::string&& value);
+  void set_policy_data_signature(const char* value);
+  void set_policy_data_signature(const void* value, size_t size);
+  std::string* mutable_policy_data_signature();
+  std::string* release_policy_data_signature();
+  void set_allocated_policy_data_signature(std::string* policy_data_signature);
+  private:
+  const std::string& _internal_policy_data_signature() const;
+  void _internal_set_policy_data_signature(const std::string& value);
+  std::string* _internal_mutable_policy_data_signature();
+  public:
+
+  // optional bytes new_public_key = 5;
+  bool has_new_public_key() const;
+  private:
+  bool _internal_has_new_public_key() const;
+  public:
+  void clear_new_public_key();
+  const std::string& new_public_key() const;
+  void set_new_public_key(const std::string& value);
+  void set_new_public_key(std::string&& value);
+  void set_new_public_key(const char* value);
+  void set_new_public_key(const void* value, size_t size);
+  std::string* mutable_new_public_key();
+  std::string* release_new_public_key();
+  void set_allocated_new_public_key(std::string* new_public_key);
+  private:
+  const std::string& _internal_new_public_key() const;
+  void _internal_set_new_public_key(const std::string& value);
+  std::string* _internal_mutable_new_public_key();
+  public:
+
+  // optional bytes new_public_key_signature = 6;
+  bool has_new_public_key_signature() const;
+  private:
+  bool _internal_has_new_public_key_signature() const;
+  public:
+  void clear_new_public_key_signature();
+  const std::string& new_public_key_signature() const;
+  void set_new_public_key_signature(const std::string& value);
+  void set_new_public_key_signature(std::string&& value);
+  void set_new_public_key_signature(const char* value);
+  void set_new_public_key_signature(const void* value, size_t size);
+  std::string* mutable_new_public_key_signature();
+  std::string* release_new_public_key_signature();
+  void set_allocated_new_public_key_signature(std::string* new_public_key_signature);
+  private:
+  const std::string& _internal_new_public_key_signature() const;
+  void _internal_set_new_public_key_signature(const std::string& value);
+  std::string* _internal_mutable_new_public_key_signature();
+  public:
+
+  // optional bytes new_public_key_verification_signature_deprecated = 7 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_new_public_key_verification_signature_deprecated() const;
+  private:
+  bool _internal_has_new_public_key_verification_signature_deprecated() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_new_public_key_verification_signature_deprecated();
+  PROTOBUF_DEPRECATED const std::string& new_public_key_verification_signature_deprecated() const;
+  PROTOBUF_DEPRECATED void set_new_public_key_verification_signature_deprecated(const std::string& value);
+  PROTOBUF_DEPRECATED void set_new_public_key_verification_signature_deprecated(std::string&& value);
+  PROTOBUF_DEPRECATED void set_new_public_key_verification_signature_deprecated(const char* value);
+  PROTOBUF_DEPRECATED void set_new_public_key_verification_signature_deprecated(const void* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_new_public_key_verification_signature_deprecated();
+  PROTOBUF_DEPRECATED std::string* release_new_public_key_verification_signature_deprecated();
+  PROTOBUF_DEPRECATED void set_allocated_new_public_key_verification_signature_deprecated(std::string* new_public_key_verification_signature_deprecated);
+  private:
+  const std::string& _internal_new_public_key_verification_signature_deprecated() const;
+  void _internal_set_new_public_key_verification_signature_deprecated(const std::string& value);
+  std::string* _internal_mutable_new_public_key_verification_signature_deprecated();
+  public:
+
+  // optional bytes new_public_key_verification_data = 8;
+  bool has_new_public_key_verification_data() const;
+  private:
+  bool _internal_has_new_public_key_verification_data() const;
+  public:
+  void clear_new_public_key_verification_data();
+  const std::string& new_public_key_verification_data() const;
+  void set_new_public_key_verification_data(const std::string& value);
+  void set_new_public_key_verification_data(std::string&& value);
+  void set_new_public_key_verification_data(const char* value);
+  void set_new_public_key_verification_data(const void* value, size_t size);
+  std::string* mutable_new_public_key_verification_data();
+  std::string* release_new_public_key_verification_data();
+  void set_allocated_new_public_key_verification_data(std::string* new_public_key_verification_data);
+  private:
+  const std::string& _internal_new_public_key_verification_data() const;
+  void _internal_set_new_public_key_verification_data(const std::string& value);
+  std::string* _internal_mutable_new_public_key_verification_data();
+  public:
+
+  // optional bytes new_public_key_verification_data_signature = 9;
+  bool has_new_public_key_verification_data_signature() const;
+  private:
+  bool _internal_has_new_public_key_verification_data_signature() const;
+  public:
+  void clear_new_public_key_verification_data_signature();
+  const std::string& new_public_key_verification_data_signature() const;
+  void set_new_public_key_verification_data_signature(const std::string& value);
+  void set_new_public_key_verification_data_signature(std::string&& value);
+  void set_new_public_key_verification_data_signature(const char* value);
+  void set_new_public_key_verification_data_signature(const void* value, size_t size);
+  std::string* mutable_new_public_key_verification_data_signature();
+  std::string* release_new_public_key_verification_data_signature();
+  void set_allocated_new_public_key_verification_data_signature(std::string* new_public_key_verification_data_signature);
+  private:
+  const std::string& _internal_new_public_key_verification_data_signature() const;
+  void _internal_set_new_public_key_verification_data_signature(const std::string& value);
+  std::string* _internal_mutable_new_public_key_verification_data_signature();
+  public:
+
+  // optional string policy_type = 10 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_policy_type() const;
+  private:
+  bool _internal_has_policy_type() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_policy_type();
+  PROTOBUF_DEPRECATED const std::string& policy_type() const;
+  PROTOBUF_DEPRECATED void set_policy_type(const std::string& value);
+  PROTOBUF_DEPRECATED void set_policy_type(std::string&& value);
+  PROTOBUF_DEPRECATED void set_policy_type(const char* value);
+  PROTOBUF_DEPRECATED void set_policy_type(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_policy_type();
+  PROTOBUF_DEPRECATED std::string* release_policy_type();
+  PROTOBUF_DEPRECATED void set_allocated_policy_type(std::string* policy_type);
+  private:
+  const std::string& _internal_policy_type() const;
+  void _internal_set_policy_type(const std::string& value);
+  std::string* _internal_mutable_policy_type();
+  public:
+
+  // optional int32 error_code = 1;
+  bool has_error_code() const;
+  private:
+  bool _internal_has_error_code() const;
+  public:
+  void clear_error_code();
+  ::PROTOBUF_NAMESPACE_ID::int32 error_code() const;
+  void set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_error_code() const;
+  void _internal_set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional .enterprise_management.PolicyFetchRequest.SignatureType policy_data_signature_type = 11;
+  bool has_policy_data_signature_type() const;
+  private:
+  bool _internal_has_policy_data_signature_type() const;
+  public:
+  void clear_policy_data_signature_type();
+  ::enterprise_management::PolicyFetchRequest_SignatureType policy_data_signature_type() const;
+  void set_policy_data_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value);
+  private:
+  ::enterprise_management::PolicyFetchRequest_SignatureType _internal_policy_data_signature_type() const;
+  void _internal_set_policy_data_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PolicyFetchResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr error_message_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_data_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_data_signature_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_public_key_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_public_key_signature_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_public_key_verification_signature_deprecated_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_public_key_verification_data_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_public_key_verification_data_signature_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_type_;
+  ::PROTOBUF_NAMESPACE_ID::int32 error_code_;
+  int policy_data_signature_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DEPRECATEDPolicyPublicKeyAndDomain :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain) */ {
+ public:
+  DEPRECATEDPolicyPublicKeyAndDomain();
+  virtual ~DEPRECATEDPolicyPublicKeyAndDomain();
+
+  DEPRECATEDPolicyPublicKeyAndDomain(const DEPRECATEDPolicyPublicKeyAndDomain& from);
+  DEPRECATEDPolicyPublicKeyAndDomain(DEPRECATEDPolicyPublicKeyAndDomain&& from) noexcept
+    : DEPRECATEDPolicyPublicKeyAndDomain() {
+    *this = ::std::move(from);
+  }
+
+  inline DEPRECATEDPolicyPublicKeyAndDomain& operator=(const DEPRECATEDPolicyPublicKeyAndDomain& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DEPRECATEDPolicyPublicKeyAndDomain& operator=(DEPRECATEDPolicyPublicKeyAndDomain&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DEPRECATEDPolicyPublicKeyAndDomain& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DEPRECATEDPolicyPublicKeyAndDomain* internal_default_instance() {
+    return reinterpret_cast<const DEPRECATEDPolicyPublicKeyAndDomain*>(
+               &_DEPRECATEDPolicyPublicKeyAndDomain_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    21;
+
+  friend void swap(DEPRECATEDPolicyPublicKeyAndDomain& a, DEPRECATEDPolicyPublicKeyAndDomain& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DEPRECATEDPolicyPublicKeyAndDomain* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DEPRECATEDPolicyPublicKeyAndDomain* New() const final {
+    return CreateMaybeMessage<DEPRECATEDPolicyPublicKeyAndDomain>(nullptr);
+  }
+
+  DEPRECATEDPolicyPublicKeyAndDomain* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DEPRECATEDPolicyPublicKeyAndDomain>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DEPRECATEDPolicyPublicKeyAndDomain& from);
+  void MergeFrom(const DEPRECATEDPolicyPublicKeyAndDomain& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DEPRECATEDPolicyPublicKeyAndDomain* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNewPublicKeyFieldNumber = 1,
+    kDomainFieldNumber = 2,
+  };
+  // optional bytes new_public_key = 1;
+  bool has_new_public_key() const;
+  private:
+  bool _internal_has_new_public_key() const;
+  public:
+  void clear_new_public_key();
+  const std::string& new_public_key() const;
+  void set_new_public_key(const std::string& value);
+  void set_new_public_key(std::string&& value);
+  void set_new_public_key(const char* value);
+  void set_new_public_key(const void* value, size_t size);
+  std::string* mutable_new_public_key();
+  std::string* release_new_public_key();
+  void set_allocated_new_public_key(std::string* new_public_key);
+  private:
+  const std::string& _internal_new_public_key() const;
+  void _internal_set_new_public_key(const std::string& value);
+  std::string* _internal_mutable_new_public_key();
+  public:
+
+  // optional string domain = 2;
+  bool has_domain() const;
+  private:
+  bool _internal_has_domain() const;
+  public:
+  void clear_domain();
+  const std::string& domain() const;
+  void set_domain(const std::string& value);
+  void set_domain(std::string&& value);
+  void set_domain(const char* value);
+  void set_domain(const char* value, size_t size);
+  std::string* mutable_domain();
+  std::string* release_domain();
+  void set_allocated_domain(std::string* domain);
+  private:
+  const std::string& _internal_domain() const;
+  void _internal_set_domain(const std::string& value);
+  std::string* _internal_mutable_domain();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_public_key_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr domain_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PublicKeyVerificationData :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PublicKeyVerificationData) */ {
+ public:
+  PublicKeyVerificationData();
+  virtual ~PublicKeyVerificationData();
+
+  PublicKeyVerificationData(const PublicKeyVerificationData& from);
+  PublicKeyVerificationData(PublicKeyVerificationData&& from) noexcept
+    : PublicKeyVerificationData() {
+    *this = ::std::move(from);
+  }
+
+  inline PublicKeyVerificationData& operator=(const PublicKeyVerificationData& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PublicKeyVerificationData& operator=(PublicKeyVerificationData&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PublicKeyVerificationData& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PublicKeyVerificationData* internal_default_instance() {
+    return reinterpret_cast<const PublicKeyVerificationData*>(
+               &_PublicKeyVerificationData_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    22;
+
+  friend void swap(PublicKeyVerificationData& a, PublicKeyVerificationData& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PublicKeyVerificationData* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PublicKeyVerificationData* New() const final {
+    return CreateMaybeMessage<PublicKeyVerificationData>(nullptr);
+  }
+
+  PublicKeyVerificationData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PublicKeyVerificationData>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PublicKeyVerificationData& from);
+  void MergeFrom(const PublicKeyVerificationData& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PublicKeyVerificationData* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PublicKeyVerificationData";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNewPublicKeyFieldNumber = 1,
+    kDomainFieldNumber = 2,
+    kNewPublicKeyVersionFieldNumber = 3,
+  };
+  // optional bytes new_public_key = 1;
+  bool has_new_public_key() const;
+  private:
+  bool _internal_has_new_public_key() const;
+  public:
+  void clear_new_public_key();
+  const std::string& new_public_key() const;
+  void set_new_public_key(const std::string& value);
+  void set_new_public_key(std::string&& value);
+  void set_new_public_key(const char* value);
+  void set_new_public_key(const void* value, size_t size);
+  std::string* mutable_new_public_key();
+  std::string* release_new_public_key();
+  void set_allocated_new_public_key(std::string* new_public_key);
+  private:
+  const std::string& _internal_new_public_key() const;
+  void _internal_set_new_public_key(const std::string& value);
+  std::string* _internal_mutable_new_public_key();
+  public:
+
+  // optional string domain = 2;
+  bool has_domain() const;
+  private:
+  bool _internal_has_domain() const;
+  public:
+  void clear_domain();
+  const std::string& domain() const;
+  void set_domain(const std::string& value);
+  void set_domain(std::string&& value);
+  void set_domain(const char* value);
+  void set_domain(const char* value, size_t size);
+  std::string* mutable_domain();
+  std::string* release_domain();
+  void set_allocated_domain(std::string* domain);
+  private:
+  const std::string& _internal_domain() const;
+  void _internal_set_domain(const std::string& value);
+  std::string* _internal_mutable_domain();
+  public:
+
+  // optional int32 new_public_key_version = 3;
+  bool has_new_public_key_version() const;
+  private:
+  bool _internal_has_new_public_key_version() const;
+  public:
+  void clear_new_public_key_version();
+  ::PROTOBUF_NAMESPACE_ID::int32 new_public_key_version() const;
+  void set_new_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_new_public_key_version() const;
+  void _internal_set_new_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PublicKeyVerificationData)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_public_key_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr domain_;
+  ::PROTOBUF_NAMESPACE_ID::int32 new_public_key_version_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePolicyRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePolicyRequest) */ {
+ public:
+  DevicePolicyRequest();
+  virtual ~DevicePolicyRequest();
+
+  DevicePolicyRequest(const DevicePolicyRequest& from);
+  DevicePolicyRequest(DevicePolicyRequest&& from) noexcept
+    : DevicePolicyRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePolicyRequest& operator=(const DevicePolicyRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePolicyRequest& operator=(DevicePolicyRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePolicyRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePolicyRequest* internal_default_instance() {
+    return reinterpret_cast<const DevicePolicyRequest*>(
+               &_DevicePolicyRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    23;
+
+  friend void swap(DevicePolicyRequest& a, DevicePolicyRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePolicyRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePolicyRequest* New() const final {
+    return CreateMaybeMessage<DevicePolicyRequest>(nullptr);
+  }
+
+  DevicePolicyRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePolicyRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePolicyRequest& from);
+  void MergeFrom(const DevicePolicyRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePolicyRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePolicyRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRequestsFieldNumber = 3,
+  };
+  // repeated .enterprise_management.PolicyFetchRequest requests = 3;
+  int requests_size() const;
+  private:
+  int _internal_requests_size() const;
+  public:
+  void clear_requests();
+  ::enterprise_management::PolicyFetchRequest* mutable_requests(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchRequest >*
+      mutable_requests();
+  private:
+  const ::enterprise_management::PolicyFetchRequest& _internal_requests(int index) const;
+  ::enterprise_management::PolicyFetchRequest* _internal_add_requests();
+  public:
+  const ::enterprise_management::PolicyFetchRequest& requests(int index) const;
+  ::enterprise_management::PolicyFetchRequest* add_requests();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchRequest >&
+      requests() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePolicyRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchRequest > requests_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePolicyResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePolicyResponse) */ {
+ public:
+  DevicePolicyResponse();
+  virtual ~DevicePolicyResponse();
+
+  DevicePolicyResponse(const DevicePolicyResponse& from);
+  DevicePolicyResponse(DevicePolicyResponse&& from) noexcept
+    : DevicePolicyResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePolicyResponse& operator=(const DevicePolicyResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePolicyResponse& operator=(DevicePolicyResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePolicyResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePolicyResponse* internal_default_instance() {
+    return reinterpret_cast<const DevicePolicyResponse*>(
+               &_DevicePolicyResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    24;
+
+  friend void swap(DevicePolicyResponse& a, DevicePolicyResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePolicyResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePolicyResponse* New() const final {
+    return CreateMaybeMessage<DevicePolicyResponse>(nullptr);
+  }
+
+  DevicePolicyResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePolicyResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePolicyResponse& from);
+  void MergeFrom(const DevicePolicyResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePolicyResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePolicyResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kResponsesFieldNumber = 3,
+  };
+  // repeated .enterprise_management.PolicyFetchResponse responses = 3;
+  int responses_size() const;
+  private:
+  int _internal_responses_size() const;
+  public:
+  void clear_responses();
+  ::enterprise_management::PolicyFetchResponse* mutable_responses(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchResponse >*
+      mutable_responses();
+  private:
+  const ::enterprise_management::PolicyFetchResponse& _internal_responses(int index) const;
+  ::enterprise_management::PolicyFetchResponse* _internal_add_responses();
+  public:
+  const ::enterprise_management::PolicyFetchResponse& responses(int index) const;
+  ::enterprise_management::PolicyFetchResponse* add_responses();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchResponse >&
+      responses() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePolicyResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchResponse > responses_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class TimePeriod :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.TimePeriod) */ {
+ public:
+  TimePeriod();
+  virtual ~TimePeriod();
+
+  TimePeriod(const TimePeriod& from);
+  TimePeriod(TimePeriod&& from) noexcept
+    : TimePeriod() {
+    *this = ::std::move(from);
+  }
+
+  inline TimePeriod& operator=(const TimePeriod& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline TimePeriod& operator=(TimePeriod&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const TimePeriod& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const TimePeriod* internal_default_instance() {
+    return reinterpret_cast<const TimePeriod*>(
+               &_TimePeriod_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    25;
+
+  friend void swap(TimePeriod& a, TimePeriod& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(TimePeriod* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline TimePeriod* New() const final {
+    return CreateMaybeMessage<TimePeriod>(nullptr);
+  }
+
+  TimePeriod* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<TimePeriod>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const TimePeriod& from);
+  void MergeFrom(const TimePeriod& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(TimePeriod* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.TimePeriod";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kStartTimestampFieldNumber = 1,
+    kEndTimestampFieldNumber = 2,
+  };
+  // optional int64 start_timestamp = 1;
+  bool has_start_timestamp() const;
+  private:
+  bool _internal_has_start_timestamp() const;
+  public:
+  void clear_start_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 start_timestamp() const;
+  void set_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_start_timestamp() const;
+  void _internal_set_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 end_timestamp = 2;
+  bool has_end_timestamp() const;
+  private:
+  bool _internal_has_end_timestamp() const;
+  public:
+  void clear_end_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 end_timestamp() const;
+  void set_end_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_end_timestamp() const;
+  void _internal_set_end_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.TimePeriod)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 start_timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int64 end_timestamp_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ActiveTimePeriod :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ActiveTimePeriod) */ {
+ public:
+  ActiveTimePeriod();
+  virtual ~ActiveTimePeriod();
+
+  ActiveTimePeriod(const ActiveTimePeriod& from);
+  ActiveTimePeriod(ActiveTimePeriod&& from) noexcept
+    : ActiveTimePeriod() {
+    *this = ::std::move(from);
+  }
+
+  inline ActiveTimePeriod& operator=(const ActiveTimePeriod& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ActiveTimePeriod& operator=(ActiveTimePeriod&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ActiveTimePeriod& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ActiveTimePeriod* internal_default_instance() {
+    return reinterpret_cast<const ActiveTimePeriod*>(
+               &_ActiveTimePeriod_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    26;
+
+  friend void swap(ActiveTimePeriod& a, ActiveTimePeriod& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ActiveTimePeriod* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ActiveTimePeriod* New() const final {
+    return CreateMaybeMessage<ActiveTimePeriod>(nullptr);
+  }
+
+  ActiveTimePeriod* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ActiveTimePeriod>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ActiveTimePeriod& from);
+  void MergeFrom(const ActiveTimePeriod& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ActiveTimePeriod* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ActiveTimePeriod";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef ActiveTimePeriod_SessionType SessionType;
+  static constexpr SessionType SESSION_UNKNOWN =
+    ActiveTimePeriod_SessionType_SESSION_UNKNOWN;
+  static constexpr SessionType SESSION_AFFILIATED_USER =
+    ActiveTimePeriod_SessionType_SESSION_AFFILIATED_USER;
+  static constexpr SessionType SESSION_MANAGED_GUEST =
+    ActiveTimePeriod_SessionType_SESSION_MANAGED_GUEST;
+  static constexpr SessionType SESSION_KIOSK =
+    ActiveTimePeriod_SessionType_SESSION_KIOSK;
+  static constexpr SessionType SESSION_ARC_KIOSK =
+    ActiveTimePeriod_SessionType_SESSION_ARC_KIOSK;
+  static constexpr SessionType SESSION_WEB_KIOSK =
+    ActiveTimePeriod_SessionType_SESSION_WEB_KIOSK;
+  static inline bool SessionType_IsValid(int value) {
+    return ActiveTimePeriod_SessionType_IsValid(value);
+  }
+  static constexpr SessionType SessionType_MIN =
+    ActiveTimePeriod_SessionType_SessionType_MIN;
+  static constexpr SessionType SessionType_MAX =
+    ActiveTimePeriod_SessionType_SessionType_MAX;
+  static constexpr int SessionType_ARRAYSIZE =
+    ActiveTimePeriod_SessionType_SessionType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& SessionType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, SessionType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function SessionType_Name.");
+    return ActiveTimePeriod_SessionType_Name(enum_t_value);
+  }
+  static inline bool SessionType_Parse(const std::string& name,
+      SessionType* value) {
+    return ActiveTimePeriod_SessionType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUserEmailFieldNumber = 3,
+    kTimePeriodFieldNumber = 1,
+    kActiveDurationFieldNumber = 2,
+    kSessionTypeFieldNumber = 4,
+  };
+  // optional string user_email = 3;
+  bool has_user_email() const;
+  private:
+  bool _internal_has_user_email() const;
+  public:
+  void clear_user_email();
+  const std::string& user_email() const;
+  void set_user_email(const std::string& value);
+  void set_user_email(std::string&& value);
+  void set_user_email(const char* value);
+  void set_user_email(const char* value, size_t size);
+  std::string* mutable_user_email();
+  std::string* release_user_email();
+  void set_allocated_user_email(std::string* user_email);
+  private:
+  const std::string& _internal_user_email() const;
+  void _internal_set_user_email(const std::string& value);
+  std::string* _internal_mutable_user_email();
+  public:
+
+  // optional .enterprise_management.TimePeriod time_period = 1;
+  bool has_time_period() const;
+  private:
+  bool _internal_has_time_period() const;
+  public:
+  void clear_time_period();
+  const ::enterprise_management::TimePeriod& time_period() const;
+  ::enterprise_management::TimePeriod* release_time_period();
+  ::enterprise_management::TimePeriod* mutable_time_period();
+  void set_allocated_time_period(::enterprise_management::TimePeriod* time_period);
+  private:
+  const ::enterprise_management::TimePeriod& _internal_time_period() const;
+  ::enterprise_management::TimePeriod* _internal_mutable_time_period();
+  public:
+
+  // optional int32 active_duration = 2;
+  bool has_active_duration() const;
+  private:
+  bool _internal_has_active_duration() const;
+  public:
+  void clear_active_duration();
+  ::PROTOBUF_NAMESPACE_ID::int32 active_duration() const;
+  void set_active_duration(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_active_duration() const;
+  void _internal_set_active_duration(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional .enterprise_management.ActiveTimePeriod.SessionType session_type = 4;
+  bool has_session_type() const;
+  private:
+  bool _internal_has_session_type() const;
+  public:
+  void clear_session_type();
+  ::enterprise_management::ActiveTimePeriod_SessionType session_type() const;
+  void set_session_type(::enterprise_management::ActiveTimePeriod_SessionType value);
+  private:
+  ::enterprise_management::ActiveTimePeriod_SessionType _internal_session_type() const;
+  void _internal_set_session_type(::enterprise_management::ActiveTimePeriod_SessionType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ActiveTimePeriod)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr user_email_;
+  ::enterprise_management::TimePeriod* time_period_;
+  ::PROTOBUF_NAMESPACE_ID::int32 active_duration_;
+  int session_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class NetworkInterface :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.NetworkInterface) */ {
+ public:
+  NetworkInterface();
+  virtual ~NetworkInterface();
+
+  NetworkInterface(const NetworkInterface& from);
+  NetworkInterface(NetworkInterface&& from) noexcept
+    : NetworkInterface() {
+    *this = ::std::move(from);
+  }
+
+  inline NetworkInterface& operator=(const NetworkInterface& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline NetworkInterface& operator=(NetworkInterface&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const NetworkInterface& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const NetworkInterface* internal_default_instance() {
+    return reinterpret_cast<const NetworkInterface*>(
+               &_NetworkInterface_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    27;
+
+  friend void swap(NetworkInterface& a, NetworkInterface& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(NetworkInterface* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline NetworkInterface* New() const final {
+    return CreateMaybeMessage<NetworkInterface>(nullptr);
+  }
+
+  NetworkInterface* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<NetworkInterface>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const NetworkInterface& from);
+  void MergeFrom(const NetworkInterface& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(NetworkInterface* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.NetworkInterface";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef NetworkInterface_NetworkDeviceType NetworkDeviceType;
+  static constexpr NetworkDeviceType TYPE_ETHERNET =
+    NetworkInterface_NetworkDeviceType_TYPE_ETHERNET;
+  static constexpr NetworkDeviceType TYPE_WIFI =
+    NetworkInterface_NetworkDeviceType_TYPE_WIFI;
+  static constexpr NetworkDeviceType TYPE_BLUETOOTH =
+    NetworkInterface_NetworkDeviceType_TYPE_BLUETOOTH;
+  static constexpr NetworkDeviceType TYPE_CELLULAR =
+    NetworkInterface_NetworkDeviceType_TYPE_CELLULAR;
+  static inline bool NetworkDeviceType_IsValid(int value) {
+    return NetworkInterface_NetworkDeviceType_IsValid(value);
+  }
+  static constexpr NetworkDeviceType NetworkDeviceType_MIN =
+    NetworkInterface_NetworkDeviceType_NetworkDeviceType_MIN;
+  static constexpr NetworkDeviceType NetworkDeviceType_MAX =
+    NetworkInterface_NetworkDeviceType_NetworkDeviceType_MAX;
+  static constexpr int NetworkDeviceType_ARRAYSIZE =
+    NetworkInterface_NetworkDeviceType_NetworkDeviceType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& NetworkDeviceType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, NetworkDeviceType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function NetworkDeviceType_Name.");
+    return NetworkInterface_NetworkDeviceType_Name(enum_t_value);
+  }
+  static inline bool NetworkDeviceType_Parse(const std::string& name,
+      NetworkDeviceType* value) {
+    return NetworkInterface_NetworkDeviceType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEidsFieldNumber = 8,
+    kMacAddressFieldNumber = 2,
+    kMeidFieldNumber = 3,
+    kImeiFieldNumber = 4,
+    kDevicePathFieldNumber = 5,
+    kIccidFieldNumber = 6,
+    kMdnFieldNumber = 7,
+    kTypeFieldNumber = 1,
+  };
+  // repeated string eids = 8;
+  int eids_size() const;
+  private:
+  int _internal_eids_size() const;
+  public:
+  void clear_eids();
+  const std::string& eids(int index) const;
+  std::string* mutable_eids(int index);
+  void set_eids(int index, const std::string& value);
+  void set_eids(int index, std::string&& value);
+  void set_eids(int index, const char* value);
+  void set_eids(int index, const char* value, size_t size);
+  std::string* add_eids();
+  void add_eids(const std::string& value);
+  void add_eids(std::string&& value);
+  void add_eids(const char* value);
+  void add_eids(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& eids() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_eids();
+  private:
+  const std::string& _internal_eids(int index) const;
+  std::string* _internal_add_eids();
+  public:
+
+  // optional string mac_address = 2;
+  bool has_mac_address() const;
+  private:
+  bool _internal_has_mac_address() const;
+  public:
+  void clear_mac_address();
+  const std::string& mac_address() const;
+  void set_mac_address(const std::string& value);
+  void set_mac_address(std::string&& value);
+  void set_mac_address(const char* value);
+  void set_mac_address(const char* value, size_t size);
+  std::string* mutable_mac_address();
+  std::string* release_mac_address();
+  void set_allocated_mac_address(std::string* mac_address);
+  private:
+  const std::string& _internal_mac_address() const;
+  void _internal_set_mac_address(const std::string& value);
+  std::string* _internal_mutable_mac_address();
+  public:
+
+  // optional string meid = 3;
+  bool has_meid() const;
+  private:
+  bool _internal_has_meid() const;
+  public:
+  void clear_meid();
+  const std::string& meid() const;
+  void set_meid(const std::string& value);
+  void set_meid(std::string&& value);
+  void set_meid(const char* value);
+  void set_meid(const char* value, size_t size);
+  std::string* mutable_meid();
+  std::string* release_meid();
+  void set_allocated_meid(std::string* meid);
+  private:
+  const std::string& _internal_meid() const;
+  void _internal_set_meid(const std::string& value);
+  std::string* _internal_mutable_meid();
+  public:
+
+  // optional string imei = 4;
+  bool has_imei() const;
+  private:
+  bool _internal_has_imei() const;
+  public:
+  void clear_imei();
+  const std::string& imei() const;
+  void set_imei(const std::string& value);
+  void set_imei(std::string&& value);
+  void set_imei(const char* value);
+  void set_imei(const char* value, size_t size);
+  std::string* mutable_imei();
+  std::string* release_imei();
+  void set_allocated_imei(std::string* imei);
+  private:
+  const std::string& _internal_imei() const;
+  void _internal_set_imei(const std::string& value);
+  std::string* _internal_mutable_imei();
+  public:
+
+  // optional string device_path = 5;
+  bool has_device_path() const;
+  private:
+  bool _internal_has_device_path() const;
+  public:
+  void clear_device_path();
+  const std::string& device_path() const;
+  void set_device_path(const std::string& value);
+  void set_device_path(std::string&& value);
+  void set_device_path(const char* value);
+  void set_device_path(const char* value, size_t size);
+  std::string* mutable_device_path();
+  std::string* release_device_path();
+  void set_allocated_device_path(std::string* device_path);
+  private:
+  const std::string& _internal_device_path() const;
+  void _internal_set_device_path(const std::string& value);
+  std::string* _internal_mutable_device_path();
+  public:
+
+  // optional string iccid = 6;
+  bool has_iccid() const;
+  private:
+  bool _internal_has_iccid() const;
+  public:
+  void clear_iccid();
+  const std::string& iccid() const;
+  void set_iccid(const std::string& value);
+  void set_iccid(std::string&& value);
+  void set_iccid(const char* value);
+  void set_iccid(const char* value, size_t size);
+  std::string* mutable_iccid();
+  std::string* release_iccid();
+  void set_allocated_iccid(std::string* iccid);
+  private:
+  const std::string& _internal_iccid() const;
+  void _internal_set_iccid(const std::string& value);
+  std::string* _internal_mutable_iccid();
+  public:
+
+  // optional string mdn = 7;
+  bool has_mdn() const;
+  private:
+  bool _internal_has_mdn() const;
+  public:
+  void clear_mdn();
+  const std::string& mdn() const;
+  void set_mdn(const std::string& value);
+  void set_mdn(std::string&& value);
+  void set_mdn(const char* value);
+  void set_mdn(const char* value, size_t size);
+  std::string* mutable_mdn();
+  std::string* release_mdn();
+  void set_allocated_mdn(std::string* mdn);
+  private:
+  const std::string& _internal_mdn() const;
+  void _internal_set_mdn(const std::string& value);
+  std::string* _internal_mutable_mdn();
+  public:
+
+  // optional .enterprise_management.NetworkInterface.NetworkDeviceType type = 1;
+  bool has_type() const;
+  private:
+  bool _internal_has_type() const;
+  public:
+  void clear_type();
+  ::enterprise_management::NetworkInterface_NetworkDeviceType type() const;
+  void set_type(::enterprise_management::NetworkInterface_NetworkDeviceType value);
+  private:
+  ::enterprise_management::NetworkInterface_NetworkDeviceType _internal_type() const;
+  void _internal_set_type(::enterprise_management::NetworkInterface_NetworkDeviceType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.NetworkInterface)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> eids_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr mac_address_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr meid_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr imei_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_path_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr iccid_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr mdn_;
+  int type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class NetworkState :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.NetworkState) */ {
+ public:
+  NetworkState();
+  virtual ~NetworkState();
+
+  NetworkState(const NetworkState& from);
+  NetworkState(NetworkState&& from) noexcept
+    : NetworkState() {
+    *this = ::std::move(from);
+  }
+
+  inline NetworkState& operator=(const NetworkState& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline NetworkState& operator=(NetworkState&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const NetworkState& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const NetworkState* internal_default_instance() {
+    return reinterpret_cast<const NetworkState*>(
+               &_NetworkState_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    28;
+
+  friend void swap(NetworkState& a, NetworkState& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(NetworkState* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline NetworkState* New() const final {
+    return CreateMaybeMessage<NetworkState>(nullptr);
+  }
+
+  NetworkState* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<NetworkState>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const NetworkState& from);
+  void MergeFrom(const NetworkState& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(NetworkState* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.NetworkState";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef NetworkState_ConnectionState ConnectionState;
+  static constexpr ConnectionState IDLE =
+    NetworkState_ConnectionState_IDLE;
+  static constexpr ConnectionState CARRIER =
+    NetworkState_ConnectionState_CARRIER;
+  static constexpr ConnectionState ASSOCIATION =
+    NetworkState_ConnectionState_ASSOCIATION;
+  static constexpr ConnectionState CONFIGURATION =
+    NetworkState_ConnectionState_CONFIGURATION;
+  static constexpr ConnectionState READY =
+    NetworkState_ConnectionState_READY;
+  static constexpr ConnectionState PORTAL =
+    NetworkState_ConnectionState_PORTAL;
+  static constexpr ConnectionState OFFLINE =
+    NetworkState_ConnectionState_OFFLINE;
+  static constexpr ConnectionState ONLINE =
+    NetworkState_ConnectionState_ONLINE;
+  static constexpr ConnectionState DISCONNECT =
+    NetworkState_ConnectionState_DISCONNECT;
+  static constexpr ConnectionState FAILURE =
+    NetworkState_ConnectionState_FAILURE;
+  static constexpr ConnectionState ACTIVATION_FAILURE =
+    NetworkState_ConnectionState_ACTIVATION_FAILURE;
+  static constexpr ConnectionState UNKNOWN =
+    NetworkState_ConnectionState_UNKNOWN;
+  static inline bool ConnectionState_IsValid(int value) {
+    return NetworkState_ConnectionState_IsValid(value);
+  }
+  static constexpr ConnectionState ConnectionState_MIN =
+    NetworkState_ConnectionState_ConnectionState_MIN;
+  static constexpr ConnectionState ConnectionState_MAX =
+    NetworkState_ConnectionState_ConnectionState_MAX;
+  static constexpr int ConnectionState_ARRAYSIZE =
+    NetworkState_ConnectionState_ConnectionState_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ConnectionState_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ConnectionState>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ConnectionState_Name.");
+    return NetworkState_ConnectionState_Name(enum_t_value);
+  }
+  static inline bool ConnectionState_Parse(const std::string& name,
+      ConnectionState* value) {
+    return NetworkState_ConnectionState_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDevicePathFieldNumber = 1,
+    kIpAddressFieldNumber = 4,
+    kGatewayFieldNumber = 5,
+    kConnectionStateFieldNumber = 2,
+    kSignalStrengthFieldNumber = 3,
+  };
+  // optional string device_path = 1;
+  bool has_device_path() const;
+  private:
+  bool _internal_has_device_path() const;
+  public:
+  void clear_device_path();
+  const std::string& device_path() const;
+  void set_device_path(const std::string& value);
+  void set_device_path(std::string&& value);
+  void set_device_path(const char* value);
+  void set_device_path(const char* value, size_t size);
+  std::string* mutable_device_path();
+  std::string* release_device_path();
+  void set_allocated_device_path(std::string* device_path);
+  private:
+  const std::string& _internal_device_path() const;
+  void _internal_set_device_path(const std::string& value);
+  std::string* _internal_mutable_device_path();
+  public:
+
+  // optional string ip_address = 4;
+  bool has_ip_address() const;
+  private:
+  bool _internal_has_ip_address() const;
+  public:
+  void clear_ip_address();
+  const std::string& ip_address() const;
+  void set_ip_address(const std::string& value);
+  void set_ip_address(std::string&& value);
+  void set_ip_address(const char* value);
+  void set_ip_address(const char* value, size_t size);
+  std::string* mutable_ip_address();
+  std::string* release_ip_address();
+  void set_allocated_ip_address(std::string* ip_address);
+  private:
+  const std::string& _internal_ip_address() const;
+  void _internal_set_ip_address(const std::string& value);
+  std::string* _internal_mutable_ip_address();
+  public:
+
+  // optional string gateway = 5;
+  bool has_gateway() const;
+  private:
+  bool _internal_has_gateway() const;
+  public:
+  void clear_gateway();
+  const std::string& gateway() const;
+  void set_gateway(const std::string& value);
+  void set_gateway(std::string&& value);
+  void set_gateway(const char* value);
+  void set_gateway(const char* value, size_t size);
+  std::string* mutable_gateway();
+  std::string* release_gateway();
+  void set_allocated_gateway(std::string* gateway);
+  private:
+  const std::string& _internal_gateway() const;
+  void _internal_set_gateway(const std::string& value);
+  std::string* _internal_mutable_gateway();
+  public:
+
+  // optional .enterprise_management.NetworkState.ConnectionState connection_state = 2;
+  bool has_connection_state() const;
+  private:
+  bool _internal_has_connection_state() const;
+  public:
+  void clear_connection_state();
+  ::enterprise_management::NetworkState_ConnectionState connection_state() const;
+  void set_connection_state(::enterprise_management::NetworkState_ConnectionState value);
+  private:
+  ::enterprise_management::NetworkState_ConnectionState _internal_connection_state() const;
+  void _internal_set_connection_state(::enterprise_management::NetworkState_ConnectionState value);
+  public:
+
+  // optional int32 signal_strength = 3;
+  bool has_signal_strength() const;
+  private:
+  bool _internal_has_signal_strength() const;
+  public:
+  void clear_signal_strength();
+  ::PROTOBUF_NAMESPACE_ID::int32 signal_strength() const;
+  void set_signal_strength(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_signal_strength() const;
+  void _internal_set_signal_strength(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.NetworkState)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_path_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr ip_address_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr gateway_;
+  int connection_state_;
+  ::PROTOBUF_NAMESPACE_ID::int32 signal_strength_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceUser :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceUser) */ {
+ public:
+  DeviceUser();
+  virtual ~DeviceUser();
+
+  DeviceUser(const DeviceUser& from);
+  DeviceUser(DeviceUser&& from) noexcept
+    : DeviceUser() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceUser& operator=(const DeviceUser& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceUser& operator=(DeviceUser&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceUser& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceUser* internal_default_instance() {
+    return reinterpret_cast<const DeviceUser*>(
+               &_DeviceUser_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    29;
+
+  friend void swap(DeviceUser& a, DeviceUser& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceUser* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceUser* New() const final {
+    return CreateMaybeMessage<DeviceUser>(nullptr);
+  }
+
+  DeviceUser* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceUser>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceUser& from);
+  void MergeFrom(const DeviceUser& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceUser* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceUser";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceUser_UserType UserType;
+  static constexpr UserType USER_TYPE_MANAGED =
+    DeviceUser_UserType_USER_TYPE_MANAGED;
+  static constexpr UserType USER_TYPE_UNMANAGED =
+    DeviceUser_UserType_USER_TYPE_UNMANAGED;
+  static inline bool UserType_IsValid(int value) {
+    return DeviceUser_UserType_IsValid(value);
+  }
+  static constexpr UserType UserType_MIN =
+    DeviceUser_UserType_UserType_MIN;
+  static constexpr UserType UserType_MAX =
+    DeviceUser_UserType_UserType_MAX;
+  static constexpr int UserType_ARRAYSIZE =
+    DeviceUser_UserType_UserType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& UserType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, UserType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function UserType_Name.");
+    return DeviceUser_UserType_Name(enum_t_value);
+  }
+  static inline bool UserType_Parse(const std::string& name,
+      UserType* value) {
+    return DeviceUser_UserType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEmailFieldNumber = 2,
+    kTypeFieldNumber = 1,
+  };
+  // optional string email = 2;
+  bool has_email() const;
+  private:
+  bool _internal_has_email() const;
+  public:
+  void clear_email();
+  const std::string& email() const;
+  void set_email(const std::string& value);
+  void set_email(std::string&& value);
+  void set_email(const char* value);
+  void set_email(const char* value, size_t size);
+  std::string* mutable_email();
+  std::string* release_email();
+  void set_allocated_email(std::string* email);
+  private:
+  const std::string& _internal_email() const;
+  void _internal_set_email(const std::string& value);
+  std::string* _internal_mutable_email();
+  public:
+
+  // required .enterprise_management.DeviceUser.UserType type = 1;
+  bool has_type() const;
+  private:
+  bool _internal_has_type() const;
+  public:
+  void clear_type();
+  ::enterprise_management::DeviceUser_UserType type() const;
+  void set_type(::enterprise_management::DeviceUser_UserType value);
+  private:
+  ::enterprise_management::DeviceUser_UserType _internal_type() const;
+  void _internal_set_type(::enterprise_management::DeviceUser_UserType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceUser)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr email_;
+  int type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class VolumeInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.VolumeInfo) */ {
+ public:
+  VolumeInfo();
+  virtual ~VolumeInfo();
+
+  VolumeInfo(const VolumeInfo& from);
+  VolumeInfo(VolumeInfo&& from) noexcept
+    : VolumeInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline VolumeInfo& operator=(const VolumeInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline VolumeInfo& operator=(VolumeInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const VolumeInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const VolumeInfo* internal_default_instance() {
+    return reinterpret_cast<const VolumeInfo*>(
+               &_VolumeInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    30;
+
+  friend void swap(VolumeInfo& a, VolumeInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(VolumeInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline VolumeInfo* New() const final {
+    return CreateMaybeMessage<VolumeInfo>(nullptr);
+  }
+
+  VolumeInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<VolumeInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const VolumeInfo& from);
+  void MergeFrom(const VolumeInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(VolumeInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.VolumeInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVolumeIdFieldNumber = 1,
+    kStorageTotalFieldNumber = 2,
+    kStorageFreeFieldNumber = 3,
+  };
+  // optional string volume_id = 1;
+  bool has_volume_id() const;
+  private:
+  bool _internal_has_volume_id() const;
+  public:
+  void clear_volume_id();
+  const std::string& volume_id() const;
+  void set_volume_id(const std::string& value);
+  void set_volume_id(std::string&& value);
+  void set_volume_id(const char* value);
+  void set_volume_id(const char* value, size_t size);
+  std::string* mutable_volume_id();
+  std::string* release_volume_id();
+  void set_allocated_volume_id(std::string* volume_id);
+  private:
+  const std::string& _internal_volume_id() const;
+  void _internal_set_volume_id(const std::string& value);
+  std::string* _internal_mutable_volume_id();
+  public:
+
+  // optional int64 storage_total = 2;
+  bool has_storage_total() const;
+  private:
+  bool _internal_has_storage_total() const;
+  public:
+  void clear_storage_total();
+  ::PROTOBUF_NAMESPACE_ID::int64 storage_total() const;
+  void set_storage_total(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_storage_total() const;
+  void _internal_set_storage_total(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 storage_free = 3;
+  bool has_storage_free() const;
+  private:
+  bool _internal_has_storage_free() const;
+  public:
+  void clear_storage_free();
+  ::PROTOBUF_NAMESPACE_ID::int64 storage_free() const;
+  void set_storage_free(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_storage_free() const;
+  void _internal_set_storage_free(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.VolumeInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr volume_id_;
+  ::PROTOBUF_NAMESPACE_ID::int64 storage_total_;
+  ::PROTOBUF_NAMESPACE_ID::int64 storage_free_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CpuUtilizationInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CpuUtilizationInfo) */ {
+ public:
+  CpuUtilizationInfo();
+  virtual ~CpuUtilizationInfo();
+
+  CpuUtilizationInfo(const CpuUtilizationInfo& from);
+  CpuUtilizationInfo(CpuUtilizationInfo&& from) noexcept
+    : CpuUtilizationInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline CpuUtilizationInfo& operator=(const CpuUtilizationInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CpuUtilizationInfo& operator=(CpuUtilizationInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CpuUtilizationInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CpuUtilizationInfo* internal_default_instance() {
+    return reinterpret_cast<const CpuUtilizationInfo*>(
+               &_CpuUtilizationInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    31;
+
+  friend void swap(CpuUtilizationInfo& a, CpuUtilizationInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CpuUtilizationInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CpuUtilizationInfo* New() const final {
+    return CreateMaybeMessage<CpuUtilizationInfo>(nullptr);
+  }
+
+  CpuUtilizationInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CpuUtilizationInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CpuUtilizationInfo& from);
+  void MergeFrom(const CpuUtilizationInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CpuUtilizationInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CpuUtilizationInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTimestampFieldNumber = 2,
+    kCpuUtilizationPctFieldNumber = 1,
+  };
+  // optional int64 timestamp = 2;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 cpu_utilization_pct = 1;
+  bool has_cpu_utilization_pct() const;
+  private:
+  bool _internal_has_cpu_utilization_pct() const;
+  public:
+  void clear_cpu_utilization_pct();
+  ::PROTOBUF_NAMESPACE_ID::int32 cpu_utilization_pct() const;
+  void set_cpu_utilization_pct(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_cpu_utilization_pct() const;
+  void _internal_set_cpu_utilization_pct(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CpuUtilizationInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int32 cpu_utilization_pct_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemFreeRamInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SystemFreeRamInfo) */ {
+ public:
+  SystemFreeRamInfo();
+  virtual ~SystemFreeRamInfo();
+
+  SystemFreeRamInfo(const SystemFreeRamInfo& from);
+  SystemFreeRamInfo(SystemFreeRamInfo&& from) noexcept
+    : SystemFreeRamInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemFreeRamInfo& operator=(const SystemFreeRamInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemFreeRamInfo& operator=(SystemFreeRamInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemFreeRamInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemFreeRamInfo* internal_default_instance() {
+    return reinterpret_cast<const SystemFreeRamInfo*>(
+               &_SystemFreeRamInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    32;
+
+  friend void swap(SystemFreeRamInfo& a, SystemFreeRamInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemFreeRamInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemFreeRamInfo* New() const final {
+    return CreateMaybeMessage<SystemFreeRamInfo>(nullptr);
+  }
+
+  SystemFreeRamInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemFreeRamInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemFreeRamInfo& from);
+  void MergeFrom(const SystemFreeRamInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemFreeRamInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SystemFreeRamInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSizeInBytesFieldNumber = 1,
+    kTimestampFieldNumber = 2,
+  };
+  // optional int64 size_in_bytes = 1;
+  bool has_size_in_bytes() const;
+  private:
+  bool _internal_has_size_in_bytes() const;
+  public:
+  void clear_size_in_bytes();
+  ::PROTOBUF_NAMESPACE_ID::int64 size_in_bytes() const;
+  void set_size_in_bytes(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_size_in_bytes() const;
+  void _internal_set_size_in_bytes(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 timestamp = 2;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SystemFreeRamInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 size_in_bytes_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CPUTempInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CPUTempInfo) */ {
+ public:
+  CPUTempInfo();
+  virtual ~CPUTempInfo();
+
+  CPUTempInfo(const CPUTempInfo& from);
+  CPUTempInfo(CPUTempInfo&& from) noexcept
+    : CPUTempInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline CPUTempInfo& operator=(const CPUTempInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CPUTempInfo& operator=(CPUTempInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CPUTempInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CPUTempInfo* internal_default_instance() {
+    return reinterpret_cast<const CPUTempInfo*>(
+               &_CPUTempInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    33;
+
+  friend void swap(CPUTempInfo& a, CPUTempInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CPUTempInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CPUTempInfo* New() const final {
+    return CreateMaybeMessage<CPUTempInfo>(nullptr);
+  }
+
+  CPUTempInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CPUTempInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CPUTempInfo& from);
+  void MergeFrom(const CPUTempInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CPUTempInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CPUTempInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCpuLabelFieldNumber = 1,
+    kTimestampFieldNumber = 3,
+    kCpuTempFieldNumber = 2,
+  };
+  // optional string cpu_label = 1;
+  bool has_cpu_label() const;
+  private:
+  bool _internal_has_cpu_label() const;
+  public:
+  void clear_cpu_label();
+  const std::string& cpu_label() const;
+  void set_cpu_label(const std::string& value);
+  void set_cpu_label(std::string&& value);
+  void set_cpu_label(const char* value);
+  void set_cpu_label(const char* value, size_t size);
+  std::string* mutable_cpu_label();
+  std::string* release_cpu_label();
+  void set_allocated_cpu_label(std::string* cpu_label);
+  private:
+  const std::string& _internal_cpu_label() const;
+  void _internal_set_cpu_label(const std::string& value);
+  std::string* _internal_mutable_cpu_label();
+  public:
+
+  // optional int64 timestamp = 3;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 cpu_temp = 2;
+  bool has_cpu_temp() const;
+  private:
+  bool _internal_has_cpu_temp() const;
+  public:
+  void clear_cpu_temp();
+  ::PROTOBUF_NAMESPACE_ID::int32 cpu_temp() const;
+  void set_cpu_temp(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_cpu_temp() const;
+  void _internal_set_cpu_temp(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CPUTempInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cpu_label_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int32 cpu_temp_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class StatefulPartitionInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.StatefulPartitionInfo) */ {
+ public:
+  StatefulPartitionInfo();
+  virtual ~StatefulPartitionInfo();
+
+  StatefulPartitionInfo(const StatefulPartitionInfo& from);
+  StatefulPartitionInfo(StatefulPartitionInfo&& from) noexcept
+    : StatefulPartitionInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline StatefulPartitionInfo& operator=(const StatefulPartitionInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StatefulPartitionInfo& operator=(StatefulPartitionInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StatefulPartitionInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StatefulPartitionInfo* internal_default_instance() {
+    return reinterpret_cast<const StatefulPartitionInfo*>(
+               &_StatefulPartitionInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    34;
+
+  friend void swap(StatefulPartitionInfo& a, StatefulPartitionInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StatefulPartitionInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StatefulPartitionInfo* New() const final {
+    return CreateMaybeMessage<StatefulPartitionInfo>(nullptr);
+  }
+
+  StatefulPartitionInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StatefulPartitionInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StatefulPartitionInfo& from);
+  void MergeFrom(const StatefulPartitionInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StatefulPartitionInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.StatefulPartitionInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kFilesystemFieldNumber = 3,
+    kMountSourceFieldNumber = 4,
+    kAvailableSpaceFieldNumber = 1,
+    kTotalSpaceFieldNumber = 2,
+  };
+  // optional string filesystem = 3;
+  bool has_filesystem() const;
+  private:
+  bool _internal_has_filesystem() const;
+  public:
+  void clear_filesystem();
+  const std::string& filesystem() const;
+  void set_filesystem(const std::string& value);
+  void set_filesystem(std::string&& value);
+  void set_filesystem(const char* value);
+  void set_filesystem(const char* value, size_t size);
+  std::string* mutable_filesystem();
+  std::string* release_filesystem();
+  void set_allocated_filesystem(std::string* filesystem);
+  private:
+  const std::string& _internal_filesystem() const;
+  void _internal_set_filesystem(const std::string& value);
+  std::string* _internal_mutable_filesystem();
+  public:
+
+  // optional string mount_source = 4;
+  bool has_mount_source() const;
+  private:
+  bool _internal_has_mount_source() const;
+  public:
+  void clear_mount_source();
+  const std::string& mount_source() const;
+  void set_mount_source(const std::string& value);
+  void set_mount_source(std::string&& value);
+  void set_mount_source(const char* value);
+  void set_mount_source(const char* value, size_t size);
+  std::string* mutable_mount_source();
+  std::string* release_mount_source();
+  void set_allocated_mount_source(std::string* mount_source);
+  private:
+  const std::string& _internal_mount_source() const;
+  void _internal_set_mount_source(const std::string& value);
+  std::string* _internal_mutable_mount_source();
+  public:
+
+  // optional uint64 available_space = 1;
+  bool has_available_space() const;
+  private:
+  bool _internal_has_available_space() const;
+  public:
+  void clear_available_space();
+  ::PROTOBUF_NAMESPACE_ID::uint64 available_space() const;
+  void set_available_space(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_available_space() const;
+  void _internal_set_available_space(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 total_space = 2;
+  bool has_total_space() const;
+  private:
+  bool _internal_has_total_space() const;
+  public:
+  void clear_total_space();
+  ::PROTOBUF_NAMESPACE_ID::uint64 total_space() const;
+  void set_total_space(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_total_space() const;
+  void _internal_set_total_space(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.StatefulPartitionInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr filesystem_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr mount_source_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 available_space_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 total_space_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BatterySample :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BatterySample) */ {
+ public:
+  BatterySample();
+  virtual ~BatterySample();
+
+  BatterySample(const BatterySample& from);
+  BatterySample(BatterySample&& from) noexcept
+    : BatterySample() {
+    *this = ::std::move(from);
+  }
+
+  inline BatterySample& operator=(const BatterySample& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BatterySample& operator=(BatterySample&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BatterySample& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BatterySample* internal_default_instance() {
+    return reinterpret_cast<const BatterySample*>(
+               &_BatterySample_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    35;
+
+  friend void swap(BatterySample& a, BatterySample& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BatterySample* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BatterySample* New() const final {
+    return CreateMaybeMessage<BatterySample>(nullptr);
+  }
+
+  BatterySample* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BatterySample>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BatterySample& from);
+  void MergeFrom(const BatterySample& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BatterySample* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BatterySample";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kStatusFieldNumber = 8,
+    kTimestampFieldNumber = 1,
+    kVoltageFieldNumber = 2,
+    kRemainingCapacityFieldNumber = 3,
+    kTemperatureFieldNumber = 4,
+    kDischargeRateFieldNumber = 5,
+    kCurrentFieldNumber = 7,
+    kChargeRateFieldNumber = 6,
+  };
+  // optional string status = 8;
+  bool has_status() const;
+  private:
+  bool _internal_has_status() const;
+  public:
+  void clear_status();
+  const std::string& status() const;
+  void set_status(const std::string& value);
+  void set_status(std::string&& value);
+  void set_status(const char* value);
+  void set_status(const char* value, size_t size);
+  std::string* mutable_status();
+  std::string* release_status();
+  void set_allocated_status(std::string* status);
+  private:
+  const std::string& _internal_status() const;
+  void _internal_set_status(const std::string& value);
+  std::string* _internal_mutable_status();
+  public:
+
+  // optional int64 timestamp = 1;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 voltage = 2;
+  bool has_voltage() const;
+  private:
+  bool _internal_has_voltage() const;
+  public:
+  void clear_voltage();
+  ::PROTOBUF_NAMESPACE_ID::int64 voltage() const;
+  void set_voltage(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_voltage() const;
+  void _internal_set_voltage(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 remaining_capacity = 3;
+  bool has_remaining_capacity() const;
+  private:
+  bool _internal_has_remaining_capacity() const;
+  public:
+  void clear_remaining_capacity();
+  ::PROTOBUF_NAMESPACE_ID::int64 remaining_capacity() const;
+  void set_remaining_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_remaining_capacity() const;
+  void _internal_set_remaining_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 temperature = 4;
+  bool has_temperature() const;
+  private:
+  bool _internal_has_temperature() const;
+  public:
+  void clear_temperature();
+  ::PROTOBUF_NAMESPACE_ID::int32 temperature() const;
+  void set_temperature(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_temperature() const;
+  void _internal_set_temperature(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 discharge_rate = 5;
+  bool has_discharge_rate() const;
+  private:
+  bool _internal_has_discharge_rate() const;
+  public:
+  void clear_discharge_rate();
+  ::PROTOBUF_NAMESPACE_ID::int32 discharge_rate() const;
+  void set_discharge_rate(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_discharge_rate() const;
+  void _internal_set_discharge_rate(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int64 current = 7;
+  bool has_current() const;
+  private:
+  bool _internal_has_current() const;
+  public:
+  void clear_current();
+  ::PROTOBUF_NAMESPACE_ID::int64 current() const;
+  void set_current(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_current() const;
+  void _internal_set_current(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 charge_rate = 6;
+  bool has_charge_rate() const;
+  private:
+  bool _internal_has_charge_rate() const;
+  public:
+  void clear_charge_rate();
+  ::PROTOBUF_NAMESPACE_ID::int32 charge_rate() const;
+  void set_charge_rate(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_charge_rate() const;
+  void _internal_set_charge_rate(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BatterySample)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr status_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int64 voltage_;
+  ::PROTOBUF_NAMESPACE_ID::int64 remaining_capacity_;
+  ::PROTOBUF_NAMESPACE_ID::int32 temperature_;
+  ::PROTOBUF_NAMESPACE_ID::int32 discharge_rate_;
+  ::PROTOBUF_NAMESPACE_ID::int64 current_;
+  ::PROTOBUF_NAMESPACE_ID::int32 charge_rate_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BatteryInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BatteryInfo) */ {
+ public:
+  BatteryInfo();
+  virtual ~BatteryInfo();
+
+  BatteryInfo(const BatteryInfo& from);
+  BatteryInfo(BatteryInfo&& from) noexcept
+    : BatteryInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline BatteryInfo& operator=(const BatteryInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BatteryInfo& operator=(BatteryInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BatteryInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BatteryInfo* internal_default_instance() {
+    return reinterpret_cast<const BatteryInfo*>(
+               &_BatteryInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    36;
+
+  friend void swap(BatteryInfo& a, BatteryInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BatteryInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BatteryInfo* New() const final {
+    return CreateMaybeMessage<BatteryInfo>(nullptr);
+  }
+
+  BatteryInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BatteryInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BatteryInfo& from);
+  void MergeFrom(const BatteryInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BatteryInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BatteryInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSamplesFieldNumber = 7,
+    kSerialFieldNumber = 1,
+    kManufacturerFieldNumber = 2,
+    kBatteryHealthFieldNumber = 3,
+    kManufactureDateFieldNumber = 10,
+    kTechnologyFieldNumber = 11,
+    kDesignCapacityFieldNumber = 4,
+    kFullChargeCapacityFieldNumber = 5,
+    kCycleCountFieldNumber = 6,
+    kDesignMinVoltageFieldNumber = 9,
+  };
+  // repeated .enterprise_management.BatterySample samples = 7;
+  int samples_size() const;
+  private:
+  int _internal_samples_size() const;
+  public:
+  void clear_samples();
+  ::enterprise_management::BatterySample* mutable_samples(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatterySample >*
+      mutable_samples();
+  private:
+  const ::enterprise_management::BatterySample& _internal_samples(int index) const;
+  ::enterprise_management::BatterySample* _internal_add_samples();
+  public:
+  const ::enterprise_management::BatterySample& samples(int index) const;
+  ::enterprise_management::BatterySample* add_samples();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatterySample >&
+      samples() const;
+
+  // optional string serial = 1;
+  bool has_serial() const;
+  private:
+  bool _internal_has_serial() const;
+  public:
+  void clear_serial();
+  const std::string& serial() const;
+  void set_serial(const std::string& value);
+  void set_serial(std::string&& value);
+  void set_serial(const char* value);
+  void set_serial(const char* value, size_t size);
+  std::string* mutable_serial();
+  std::string* release_serial();
+  void set_allocated_serial(std::string* serial);
+  private:
+  const std::string& _internal_serial() const;
+  void _internal_set_serial(const std::string& value);
+  std::string* _internal_mutable_serial();
+  public:
+
+  // optional string manufacturer = 2;
+  bool has_manufacturer() const;
+  private:
+  bool _internal_has_manufacturer() const;
+  public:
+  void clear_manufacturer();
+  const std::string& manufacturer() const;
+  void set_manufacturer(const std::string& value);
+  void set_manufacturer(std::string&& value);
+  void set_manufacturer(const char* value);
+  void set_manufacturer(const char* value, size_t size);
+  std::string* mutable_manufacturer();
+  std::string* release_manufacturer();
+  void set_allocated_manufacturer(std::string* manufacturer);
+  private:
+  const std::string& _internal_manufacturer() const;
+  void _internal_set_manufacturer(const std::string& value);
+  std::string* _internal_mutable_manufacturer();
+  public:
+
+  // optional string battery_health = 3;
+  bool has_battery_health() const;
+  private:
+  bool _internal_has_battery_health() const;
+  public:
+  void clear_battery_health();
+  const std::string& battery_health() const;
+  void set_battery_health(const std::string& value);
+  void set_battery_health(std::string&& value);
+  void set_battery_health(const char* value);
+  void set_battery_health(const char* value, size_t size);
+  std::string* mutable_battery_health();
+  std::string* release_battery_health();
+  void set_allocated_battery_health(std::string* battery_health);
+  private:
+  const std::string& _internal_battery_health() const;
+  void _internal_set_battery_health(const std::string& value);
+  std::string* _internal_mutable_battery_health();
+  public:
+
+  // optional string manufacture_date = 10;
+  bool has_manufacture_date() const;
+  private:
+  bool _internal_has_manufacture_date() const;
+  public:
+  void clear_manufacture_date();
+  const std::string& manufacture_date() const;
+  void set_manufacture_date(const std::string& value);
+  void set_manufacture_date(std::string&& value);
+  void set_manufacture_date(const char* value);
+  void set_manufacture_date(const char* value, size_t size);
+  std::string* mutable_manufacture_date();
+  std::string* release_manufacture_date();
+  void set_allocated_manufacture_date(std::string* manufacture_date);
+  private:
+  const std::string& _internal_manufacture_date() const;
+  void _internal_set_manufacture_date(const std::string& value);
+  std::string* _internal_mutable_manufacture_date();
+  public:
+
+  // optional string technology = 11;
+  bool has_technology() const;
+  private:
+  bool _internal_has_technology() const;
+  public:
+  void clear_technology();
+  const std::string& technology() const;
+  void set_technology(const std::string& value);
+  void set_technology(std::string&& value);
+  void set_technology(const char* value);
+  void set_technology(const char* value, size_t size);
+  std::string* mutable_technology();
+  std::string* release_technology();
+  void set_allocated_technology(std::string* technology);
+  private:
+  const std::string& _internal_technology() const;
+  void _internal_set_technology(const std::string& value);
+  std::string* _internal_mutable_technology();
+  public:
+
+  // optional int64 design_capacity = 4;
+  bool has_design_capacity() const;
+  private:
+  bool _internal_has_design_capacity() const;
+  public:
+  void clear_design_capacity();
+  ::PROTOBUF_NAMESPACE_ID::int64 design_capacity() const;
+  void set_design_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_design_capacity() const;
+  void _internal_set_design_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 full_charge_capacity = 5;
+  bool has_full_charge_capacity() const;
+  private:
+  bool _internal_has_full_charge_capacity() const;
+  public:
+  void clear_full_charge_capacity();
+  ::PROTOBUF_NAMESPACE_ID::int64 full_charge_capacity() const;
+  void set_full_charge_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_full_charge_capacity() const;
+  void _internal_set_full_charge_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 cycle_count = 6;
+  bool has_cycle_count() const;
+  private:
+  bool _internal_has_cycle_count() const;
+  public:
+  void clear_cycle_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 cycle_count() const;
+  void set_cycle_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_cycle_count() const;
+  void _internal_set_cycle_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 design_min_voltage = 9;
+  bool has_design_min_voltage() const;
+  private:
+  bool _internal_has_design_min_voltage() const;
+  public:
+  void clear_design_min_voltage();
+  ::PROTOBUF_NAMESPACE_ID::int32 design_min_voltage() const;
+  void set_design_min_voltage(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_design_min_voltage() const;
+  void _internal_set_design_min_voltage(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BatteryInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatterySample > samples_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr serial_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr manufacturer_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr battery_health_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr manufacture_date_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr technology_;
+  ::PROTOBUF_NAMESPACE_ID::int64 design_capacity_;
+  ::PROTOBUF_NAMESPACE_ID::int64 full_charge_capacity_;
+  ::PROTOBUF_NAMESPACE_ID::int32 cycle_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 design_min_voltage_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PowerStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PowerStatus) */ {
+ public:
+  PowerStatus();
+  virtual ~PowerStatus();
+
+  PowerStatus(const PowerStatus& from);
+  PowerStatus(PowerStatus&& from) noexcept
+    : PowerStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline PowerStatus& operator=(const PowerStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PowerStatus& operator=(PowerStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PowerStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PowerStatus* internal_default_instance() {
+    return reinterpret_cast<const PowerStatus*>(
+               &_PowerStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    37;
+
+  friend void swap(PowerStatus& a, PowerStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PowerStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PowerStatus* New() const final {
+    return CreateMaybeMessage<PowerStatus>(nullptr);
+  }
+
+  PowerStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PowerStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PowerStatus& from);
+  void MergeFrom(const PowerStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PowerStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PowerStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PowerStatus_PowerSource PowerSource;
+  static constexpr PowerSource POWER_UNKNOWN =
+    PowerStatus_PowerSource_POWER_UNKNOWN;
+  static constexpr PowerSource POWER_AC =
+    PowerStatus_PowerSource_POWER_AC;
+  static constexpr PowerSource POWER_BATTERY =
+    PowerStatus_PowerSource_POWER_BATTERY;
+  static inline bool PowerSource_IsValid(int value) {
+    return PowerStatus_PowerSource_IsValid(value);
+  }
+  static constexpr PowerSource PowerSource_MIN =
+    PowerStatus_PowerSource_PowerSource_MIN;
+  static constexpr PowerSource PowerSource_MAX =
+    PowerStatus_PowerSource_PowerSource_MAX;
+  static constexpr int PowerSource_ARRAYSIZE =
+    PowerStatus_PowerSource_PowerSource_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& PowerSource_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, PowerSource>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function PowerSource_Name.");
+    return PowerStatus_PowerSource_Name(enum_t_value);
+  }
+  static inline bool PowerSource_Parse(const std::string& name,
+      PowerSource* value) {
+    return PowerStatus_PowerSource_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBatteriesFieldNumber = 2,
+    kPowerSourceFieldNumber = 1,
+  };
+  // repeated .enterprise_management.BatteryInfo batteries = 2;
+  int batteries_size() const;
+  private:
+  int _internal_batteries_size() const;
+  public:
+  void clear_batteries();
+  ::enterprise_management::BatteryInfo* mutable_batteries(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatteryInfo >*
+      mutable_batteries();
+  private:
+  const ::enterprise_management::BatteryInfo& _internal_batteries(int index) const;
+  ::enterprise_management::BatteryInfo* _internal_add_batteries();
+  public:
+  const ::enterprise_management::BatteryInfo& batteries(int index) const;
+  ::enterprise_management::BatteryInfo* add_batteries();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatteryInfo >&
+      batteries() const;
+
+  // optional .enterprise_management.PowerStatus.PowerSource power_source = 1;
+  bool has_power_source() const;
+  private:
+  bool _internal_has_power_source() const;
+  public:
+  void clear_power_source();
+  ::enterprise_management::PowerStatus_PowerSource power_source() const;
+  void set_power_source(::enterprise_management::PowerStatus_PowerSource value);
+  private:
+  ::enterprise_management::PowerStatus_PowerSource _internal_power_source() const;
+  void _internal_set_power_source(::enterprise_management::PowerStatus_PowerSource value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PowerStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatteryInfo > batteries_;
+  int power_source_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DiskLifetimeEstimation :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DiskLifetimeEstimation) */ {
+ public:
+  DiskLifetimeEstimation();
+  virtual ~DiskLifetimeEstimation();
+
+  DiskLifetimeEstimation(const DiskLifetimeEstimation& from);
+  DiskLifetimeEstimation(DiskLifetimeEstimation&& from) noexcept
+    : DiskLifetimeEstimation() {
+    *this = ::std::move(from);
+  }
+
+  inline DiskLifetimeEstimation& operator=(const DiskLifetimeEstimation& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DiskLifetimeEstimation& operator=(DiskLifetimeEstimation&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DiskLifetimeEstimation& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DiskLifetimeEstimation* internal_default_instance() {
+    return reinterpret_cast<const DiskLifetimeEstimation*>(
+               &_DiskLifetimeEstimation_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    38;
+
+  friend void swap(DiskLifetimeEstimation& a, DiskLifetimeEstimation& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DiskLifetimeEstimation* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DiskLifetimeEstimation* New() const final {
+    return CreateMaybeMessage<DiskLifetimeEstimation>(nullptr);
+  }
+
+  DiskLifetimeEstimation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DiskLifetimeEstimation>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DiskLifetimeEstimation& from);
+  void MergeFrom(const DiskLifetimeEstimation& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DiskLifetimeEstimation* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DiskLifetimeEstimation";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSlcFieldNumber = 1,
+    kMlcFieldNumber = 2,
+  };
+  // optional int32 slc = 1;
+  bool has_slc() const;
+  private:
+  bool _internal_has_slc() const;
+  public:
+  void clear_slc();
+  ::PROTOBUF_NAMESPACE_ID::int32 slc() const;
+  void set_slc(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_slc() const;
+  void _internal_set_slc(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 mlc = 2;
+  bool has_mlc() const;
+  private:
+  bool _internal_has_mlc() const;
+  public:
+  void clear_mlc();
+  ::PROTOBUF_NAMESPACE_ID::int32 mlc() const;
+  void set_mlc(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_mlc() const;
+  void _internal_set_mlc(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DiskLifetimeEstimation)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int32 slc_;
+  ::PROTOBUF_NAMESPACE_ID::int32 mlc_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DiskInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DiskInfo) */ {
+ public:
+  DiskInfo();
+  virtual ~DiskInfo();
+
+  DiskInfo(const DiskInfo& from);
+  DiskInfo(DiskInfo&& from) noexcept
+    : DiskInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline DiskInfo& operator=(const DiskInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DiskInfo& operator=(DiskInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DiskInfo& default_instance();
+
+  enum VendorIdCase {
+    kNvmeSubsystemVendor = 14,
+    kEmmcOemid = 15,
+    kOtherVendor = 16,
+    VENDOR_ID_NOT_SET = 0,
+  };
+
+  enum ProductIdCase {
+    kNvmeSubsystemDevice = 17,
+    kEmmcPnm = 18,
+    kOtherProduct = 19,
+    PRODUCT_ID_NOT_SET = 0,
+  };
+
+  enum HardwareRevisionCase {
+    kNvmeHardwareRev = 20,
+    kEmmcHardwareRev = 21,
+    kOtherHardwareRev = 22,
+    HARDWARE_REVISION_NOT_SET = 0,
+  };
+
+  enum FirmwareRevisionCase {
+    kNvmeFirmwareRev = 23,
+    kEmmcFirmwareRev = 24,
+    kOtherFirmwareRev = 25,
+    FIRMWARE_REVISION_NOT_SET = 0,
+  };
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DiskInfo* internal_default_instance() {
+    return reinterpret_cast<const DiskInfo*>(
+               &_DiskInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    39;
+
+  friend void swap(DiskInfo& a, DiskInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DiskInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DiskInfo* New() const final {
+    return CreateMaybeMessage<DiskInfo>(nullptr);
+  }
+
+  DiskInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DiskInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DiskInfo& from);
+  void MergeFrom(const DiskInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DiskInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DiskInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DiskInfo_DevicePurpose DevicePurpose;
+  static constexpr DevicePurpose PURPOSE_UNKNOWN =
+    DiskInfo_DevicePurpose_PURPOSE_UNKNOWN;
+  static constexpr DevicePurpose PURPOSE_BOOT =
+    DiskInfo_DevicePurpose_PURPOSE_BOOT;
+  static constexpr DevicePurpose PURPOSE_SWAP =
+    DiskInfo_DevicePurpose_PURPOSE_SWAP;
+  static inline bool DevicePurpose_IsValid(int value) {
+    return DiskInfo_DevicePurpose_IsValid(value);
+  }
+  static constexpr DevicePurpose DevicePurpose_MIN =
+    DiskInfo_DevicePurpose_DevicePurpose_MIN;
+  static constexpr DevicePurpose DevicePurpose_MAX =
+    DiskInfo_DevicePurpose_DevicePurpose_MAX;
+  static constexpr int DevicePurpose_ARRAYSIZE =
+    DiskInfo_DevicePurpose_DevicePurpose_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& DevicePurpose_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, DevicePurpose>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function DevicePurpose_Name.");
+    return DiskInfo_DevicePurpose_Name(enum_t_value);
+  }
+  static inline bool DevicePurpose_Parse(const std::string& name,
+      DevicePurpose* value) {
+    return DiskInfo_DevicePurpose_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVolumesFieldNumber = 7,
+    kSerialFieldNumber = 1,
+    kManufacturerFieldNumber = 2,
+    kModelFieldNumber = 3,
+    kTypeFieldNumber = 5,
+    kHealthFieldNumber = 6,
+    kSizeFieldNumber = 4,
+    kBytesReadSinceLastBootFieldNumber = 8,
+    kBytesWrittenSinceLastBootFieldNumber = 9,
+    kReadTimeSecondsSinceLastBootFieldNumber = 10,
+    kWriteTimeSecondsSinceLastBootFieldNumber = 11,
+    kIoTimeSecondsSinceLastBootFieldNumber = 12,
+    kDiscardTimeSecondsSinceLastBootFieldNumber = 13,
+    kPurposeFieldNumber = 26,
+    kNvmeSubsystemVendorFieldNumber = 14,
+    kEmmcOemidFieldNumber = 15,
+    kOtherVendorFieldNumber = 16,
+    kNvmeSubsystemDeviceFieldNumber = 17,
+    kEmmcPnmFieldNumber = 18,
+    kOtherProductFieldNumber = 19,
+    kNvmeHardwareRevFieldNumber = 20,
+    kEmmcHardwareRevFieldNumber = 21,
+    kOtherHardwareRevFieldNumber = 22,
+    kNvmeFirmwareRevFieldNumber = 23,
+    kEmmcFirmwareRevFieldNumber = 24,
+    kOtherFirmwareRevFieldNumber = 25,
+  };
+  // repeated string volumes = 7;
+  int volumes_size() const;
+  private:
+  int _internal_volumes_size() const;
+  public:
+  void clear_volumes();
+  const std::string& volumes(int index) const;
+  std::string* mutable_volumes(int index);
+  void set_volumes(int index, const std::string& value);
+  void set_volumes(int index, std::string&& value);
+  void set_volumes(int index, const char* value);
+  void set_volumes(int index, const char* value, size_t size);
+  std::string* add_volumes();
+  void add_volumes(const std::string& value);
+  void add_volumes(std::string&& value);
+  void add_volumes(const char* value);
+  void add_volumes(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& volumes() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_volumes();
+  private:
+  const std::string& _internal_volumes(int index) const;
+  std::string* _internal_add_volumes();
+  public:
+
+  // optional string serial = 1;
+  bool has_serial() const;
+  private:
+  bool _internal_has_serial() const;
+  public:
+  void clear_serial();
+  const std::string& serial() const;
+  void set_serial(const std::string& value);
+  void set_serial(std::string&& value);
+  void set_serial(const char* value);
+  void set_serial(const char* value, size_t size);
+  std::string* mutable_serial();
+  std::string* release_serial();
+  void set_allocated_serial(std::string* serial);
+  private:
+  const std::string& _internal_serial() const;
+  void _internal_set_serial(const std::string& value);
+  std::string* _internal_mutable_serial();
+  public:
+
+  // optional string manufacturer = 2;
+  bool has_manufacturer() const;
+  private:
+  bool _internal_has_manufacturer() const;
+  public:
+  void clear_manufacturer();
+  const std::string& manufacturer() const;
+  void set_manufacturer(const std::string& value);
+  void set_manufacturer(std::string&& value);
+  void set_manufacturer(const char* value);
+  void set_manufacturer(const char* value, size_t size);
+  std::string* mutable_manufacturer();
+  std::string* release_manufacturer();
+  void set_allocated_manufacturer(std::string* manufacturer);
+  private:
+  const std::string& _internal_manufacturer() const;
+  void _internal_set_manufacturer(const std::string& value);
+  std::string* _internal_mutable_manufacturer();
+  public:
+
+  // optional string model = 3;
+  bool has_model() const;
+  private:
+  bool _internal_has_model() const;
+  public:
+  void clear_model();
+  const std::string& model() const;
+  void set_model(const std::string& value);
+  void set_model(std::string&& value);
+  void set_model(const char* value);
+  void set_model(const char* value, size_t size);
+  std::string* mutable_model();
+  std::string* release_model();
+  void set_allocated_model(std::string* model);
+  private:
+  const std::string& _internal_model() const;
+  void _internal_set_model(const std::string& value);
+  std::string* _internal_mutable_model();
+  public:
+
+  // optional string type = 5;
+  bool has_type() const;
+  private:
+  bool _internal_has_type() const;
+  public:
+  void clear_type();
+  const std::string& type() const;
+  void set_type(const std::string& value);
+  void set_type(std::string&& value);
+  void set_type(const char* value);
+  void set_type(const char* value, size_t size);
+  std::string* mutable_type();
+  std::string* release_type();
+  void set_allocated_type(std::string* type);
+  private:
+  const std::string& _internal_type() const;
+  void _internal_set_type(const std::string& value);
+  std::string* _internal_mutable_type();
+  public:
+
+  // optional string health = 6;
+  bool has_health() const;
+  private:
+  bool _internal_has_health() const;
+  public:
+  void clear_health();
+  const std::string& health() const;
+  void set_health(const std::string& value);
+  void set_health(std::string&& value);
+  void set_health(const char* value);
+  void set_health(const char* value, size_t size);
+  std::string* mutable_health();
+  std::string* release_health();
+  void set_allocated_health(std::string* health);
+  private:
+  const std::string& _internal_health() const;
+  void _internal_set_health(const std::string& value);
+  std::string* _internal_mutable_health();
+  public:
+
+  // optional int64 size = 4;
+  bool has_size() const;
+  private:
+  bool _internal_has_size() const;
+  public:
+  void clear_size();
+  ::PROTOBUF_NAMESPACE_ID::int64 size() const;
+  void set_size(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_size() const;
+  void _internal_set_size(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional uint64 bytes_read_since_last_boot = 8;
+  bool has_bytes_read_since_last_boot() const;
+  private:
+  bool _internal_has_bytes_read_since_last_boot() const;
+  public:
+  void clear_bytes_read_since_last_boot();
+  ::PROTOBUF_NAMESPACE_ID::uint64 bytes_read_since_last_boot() const;
+  void set_bytes_read_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_bytes_read_since_last_boot() const;
+  void _internal_set_bytes_read_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 bytes_written_since_last_boot = 9;
+  bool has_bytes_written_since_last_boot() const;
+  private:
+  bool _internal_has_bytes_written_since_last_boot() const;
+  public:
+  void clear_bytes_written_since_last_boot();
+  ::PROTOBUF_NAMESPACE_ID::uint64 bytes_written_since_last_boot() const;
+  void set_bytes_written_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_bytes_written_since_last_boot() const;
+  void _internal_set_bytes_written_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 read_time_seconds_since_last_boot = 10;
+  bool has_read_time_seconds_since_last_boot() const;
+  private:
+  bool _internal_has_read_time_seconds_since_last_boot() const;
+  public:
+  void clear_read_time_seconds_since_last_boot();
+  ::PROTOBUF_NAMESPACE_ID::uint64 read_time_seconds_since_last_boot() const;
+  void set_read_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_read_time_seconds_since_last_boot() const;
+  void _internal_set_read_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 write_time_seconds_since_last_boot = 11;
+  bool has_write_time_seconds_since_last_boot() const;
+  private:
+  bool _internal_has_write_time_seconds_since_last_boot() const;
+  public:
+  void clear_write_time_seconds_since_last_boot();
+  ::PROTOBUF_NAMESPACE_ID::uint64 write_time_seconds_since_last_boot() const;
+  void set_write_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_write_time_seconds_since_last_boot() const;
+  void _internal_set_write_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 io_time_seconds_since_last_boot = 12;
+  bool has_io_time_seconds_since_last_boot() const;
+  private:
+  bool _internal_has_io_time_seconds_since_last_boot() const;
+  public:
+  void clear_io_time_seconds_since_last_boot();
+  ::PROTOBUF_NAMESPACE_ID::uint64 io_time_seconds_since_last_boot() const;
+  void set_io_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_io_time_seconds_since_last_boot() const;
+  void _internal_set_io_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 discard_time_seconds_since_last_boot = 13;
+  bool has_discard_time_seconds_since_last_boot() const;
+  private:
+  bool _internal_has_discard_time_seconds_since_last_boot() const;
+  public:
+  void clear_discard_time_seconds_since_last_boot();
+  ::PROTOBUF_NAMESPACE_ID::uint64 discard_time_seconds_since_last_boot() const;
+  void set_discard_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_discard_time_seconds_since_last_boot() const;
+  void _internal_set_discard_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional .enterprise_management.DiskInfo.DevicePurpose purpose = 26;
+  bool has_purpose() const;
+  private:
+  bool _internal_has_purpose() const;
+  public:
+  void clear_purpose();
+  ::enterprise_management::DiskInfo_DevicePurpose purpose() const;
+  void set_purpose(::enterprise_management::DiskInfo_DevicePurpose value);
+  private:
+  ::enterprise_management::DiskInfo_DevicePurpose _internal_purpose() const;
+  void _internal_set_purpose(::enterprise_management::DiskInfo_DevicePurpose value);
+  public:
+
+  // optional uint32 nvme_subsystem_vendor = 14;
+  bool has_nvme_subsystem_vendor() const;
+  private:
+  bool _internal_has_nvme_subsystem_vendor() const;
+  public:
+  void clear_nvme_subsystem_vendor();
+  ::PROTOBUF_NAMESPACE_ID::uint32 nvme_subsystem_vendor() const;
+  void set_nvme_subsystem_vendor(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_nvme_subsystem_vendor() const;
+  void _internal_set_nvme_subsystem_vendor(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 emmc_oemid = 15;
+  bool has_emmc_oemid() const;
+  private:
+  bool _internal_has_emmc_oemid() const;
+  public:
+  void clear_emmc_oemid();
+  ::PROTOBUF_NAMESPACE_ID::uint32 emmc_oemid() const;
+  void set_emmc_oemid(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_emmc_oemid() const;
+  void _internal_set_emmc_oemid(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 other_vendor = 16;
+  bool has_other_vendor() const;
+  private:
+  bool _internal_has_other_vendor() const;
+  public:
+  void clear_other_vendor();
+  ::PROTOBUF_NAMESPACE_ID::uint32 other_vendor() const;
+  void set_other_vendor(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_other_vendor() const;
+  void _internal_set_other_vendor(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 nvme_subsystem_device = 17;
+  bool has_nvme_subsystem_device() const;
+  private:
+  bool _internal_has_nvme_subsystem_device() const;
+  public:
+  void clear_nvme_subsystem_device();
+  ::PROTOBUF_NAMESPACE_ID::uint32 nvme_subsystem_device() const;
+  void set_nvme_subsystem_device(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_nvme_subsystem_device() const;
+  void _internal_set_nvme_subsystem_device(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 emmc_pnm = 18;
+  bool has_emmc_pnm() const;
+  private:
+  bool _internal_has_emmc_pnm() const;
+  public:
+  void clear_emmc_pnm();
+  ::PROTOBUF_NAMESPACE_ID::uint32 emmc_pnm() const;
+  void set_emmc_pnm(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_emmc_pnm() const;
+  void _internal_set_emmc_pnm(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 other_product = 19;
+  bool has_other_product() const;
+  private:
+  bool _internal_has_other_product() const;
+  public:
+  void clear_other_product();
+  ::PROTOBUF_NAMESPACE_ID::uint32 other_product() const;
+  void set_other_product(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_other_product() const;
+  void _internal_set_other_product(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 nvme_hardware_rev = 20;
+  bool has_nvme_hardware_rev() const;
+  private:
+  bool _internal_has_nvme_hardware_rev() const;
+  public:
+  void clear_nvme_hardware_rev();
+  ::PROTOBUF_NAMESPACE_ID::uint32 nvme_hardware_rev() const;
+  void set_nvme_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_nvme_hardware_rev() const;
+  void _internal_set_nvme_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 emmc_hardware_rev = 21;
+  bool has_emmc_hardware_rev() const;
+  private:
+  bool _internal_has_emmc_hardware_rev() const;
+  public:
+  void clear_emmc_hardware_rev();
+  ::PROTOBUF_NAMESPACE_ID::uint32 emmc_hardware_rev() const;
+  void set_emmc_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_emmc_hardware_rev() const;
+  void _internal_set_emmc_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 other_hardware_rev = 22;
+  bool has_other_hardware_rev() const;
+  private:
+  bool _internal_has_other_hardware_rev() const;
+  public:
+  void clear_other_hardware_rev();
+  ::PROTOBUF_NAMESPACE_ID::uint32 other_hardware_rev() const;
+  void set_other_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_other_hardware_rev() const;
+  void _internal_set_other_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint64 nvme_firmware_rev = 23;
+  bool has_nvme_firmware_rev() const;
+  private:
+  bool _internal_has_nvme_firmware_rev() const;
+  public:
+  void clear_nvme_firmware_rev();
+  ::PROTOBUF_NAMESPACE_ID::uint64 nvme_firmware_rev() const;
+  void set_nvme_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_nvme_firmware_rev() const;
+  void _internal_set_nvme_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 emmc_firmware_rev = 24;
+  bool has_emmc_firmware_rev() const;
+  private:
+  bool _internal_has_emmc_firmware_rev() const;
+  public:
+  void clear_emmc_firmware_rev();
+  ::PROTOBUF_NAMESPACE_ID::uint64 emmc_firmware_rev() const;
+  void set_emmc_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_emmc_firmware_rev() const;
+  void _internal_set_emmc_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint32 other_firmware_rev = 25;
+  bool has_other_firmware_rev() const;
+  private:
+  bool _internal_has_other_firmware_rev() const;
+  public:
+  void clear_other_firmware_rev();
+  ::PROTOBUF_NAMESPACE_ID::uint32 other_firmware_rev() const;
+  void set_other_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_other_firmware_rev() const;
+  void _internal_set_other_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  void clear_vendor_id();
+  VendorIdCase vendor_id_case() const;
+  void clear_product_id();
+  ProductIdCase product_id_case() const;
+  void clear_hardware_revision();
+  HardwareRevisionCase hardware_revision_case() const;
+  void clear_firmware_revision();
+  FirmwareRevisionCase firmware_revision_case() const;
+  // @@protoc_insertion_point(class_scope:enterprise_management.DiskInfo)
+ private:
+  class _Internal;
+  void set_has_nvme_subsystem_vendor();
+  void set_has_emmc_oemid();
+  void set_has_other_vendor();
+  void set_has_nvme_subsystem_device();
+  void set_has_emmc_pnm();
+  void set_has_other_product();
+  void set_has_nvme_hardware_rev();
+  void set_has_emmc_hardware_rev();
+  void set_has_other_hardware_rev();
+  void set_has_nvme_firmware_rev();
+  void set_has_emmc_firmware_rev();
+  void set_has_other_firmware_rev();
+
+  inline bool has_vendor_id() const;
+  inline void clear_has_vendor_id();
+
+  inline bool has_product_id() const;
+  inline void clear_has_product_id();
+
+  inline bool has_hardware_revision() const;
+  inline void clear_has_hardware_revision();
+
+  inline bool has_firmware_revision() const;
+  inline void clear_has_firmware_revision();
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> volumes_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr serial_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr manufacturer_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr model_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr type_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr health_;
+  ::PROTOBUF_NAMESPACE_ID::int64 size_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 bytes_read_since_last_boot_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 bytes_written_since_last_boot_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 read_time_seconds_since_last_boot_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 write_time_seconds_since_last_boot_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 io_time_seconds_since_last_boot_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 discard_time_seconds_since_last_boot_;
+  int purpose_;
+  union VendorIdUnion {
+    VendorIdUnion() {}
+    ::PROTOBUF_NAMESPACE_ID::uint32 nvme_subsystem_vendor_;
+    ::PROTOBUF_NAMESPACE_ID::uint32 emmc_oemid_;
+    ::PROTOBUF_NAMESPACE_ID::uint32 other_vendor_;
+  } vendor_id_;
+  union ProductIdUnion {
+    ProductIdUnion() {}
+    ::PROTOBUF_NAMESPACE_ID::uint32 nvme_subsystem_device_;
+    ::PROTOBUF_NAMESPACE_ID::uint32 emmc_pnm_;
+    ::PROTOBUF_NAMESPACE_ID::uint32 other_product_;
+  } product_id_;
+  union HardwareRevisionUnion {
+    HardwareRevisionUnion() {}
+    ::PROTOBUF_NAMESPACE_ID::uint32 nvme_hardware_rev_;
+    ::PROTOBUF_NAMESPACE_ID::uint32 emmc_hardware_rev_;
+    ::PROTOBUF_NAMESPACE_ID::uint32 other_hardware_rev_;
+  } hardware_revision_;
+  union FirmwareRevisionUnion {
+    FirmwareRevisionUnion() {}
+    ::PROTOBUF_NAMESPACE_ID::uint64 nvme_firmware_rev_;
+    ::PROTOBUF_NAMESPACE_ID::uint64 emmc_firmware_rev_;
+    ::PROTOBUF_NAMESPACE_ID::uint32 other_firmware_rev_;
+  } firmware_revision_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[4];
+
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class StorageStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.StorageStatus) */ {
+ public:
+  StorageStatus();
+  virtual ~StorageStatus();
+
+  StorageStatus(const StorageStatus& from);
+  StorageStatus(StorageStatus&& from) noexcept
+    : StorageStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline StorageStatus& operator=(const StorageStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StorageStatus& operator=(StorageStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StorageStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StorageStatus* internal_default_instance() {
+    return reinterpret_cast<const StorageStatus*>(
+               &_StorageStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    40;
+
+  friend void swap(StorageStatus& a, StorageStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StorageStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StorageStatus* New() const final {
+    return CreateMaybeMessage<StorageStatus>(nullptr);
+  }
+
+  StorageStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StorageStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StorageStatus& from);
+  void MergeFrom(const StorageStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StorageStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.StorageStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDisksFieldNumber = 1,
+    kLifetimeEstimationFieldNumber = 2,
+  };
+  // repeated .enterprise_management.DiskInfo disks = 1;
+  int disks_size() const;
+  private:
+  int _internal_disks_size() const;
+  public:
+  void clear_disks();
+  ::enterprise_management::DiskInfo* mutable_disks(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DiskInfo >*
+      mutable_disks();
+  private:
+  const ::enterprise_management::DiskInfo& _internal_disks(int index) const;
+  ::enterprise_management::DiskInfo* _internal_add_disks();
+  public:
+  const ::enterprise_management::DiskInfo& disks(int index) const;
+  ::enterprise_management::DiskInfo* add_disks();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DiskInfo >&
+      disks() const;
+
+  // optional .enterprise_management.DiskLifetimeEstimation lifetime_estimation = 2;
+  bool has_lifetime_estimation() const;
+  private:
+  bool _internal_has_lifetime_estimation() const;
+  public:
+  void clear_lifetime_estimation();
+  const ::enterprise_management::DiskLifetimeEstimation& lifetime_estimation() const;
+  ::enterprise_management::DiskLifetimeEstimation* release_lifetime_estimation();
+  ::enterprise_management::DiskLifetimeEstimation* mutable_lifetime_estimation();
+  void set_allocated_lifetime_estimation(::enterprise_management::DiskLifetimeEstimation* lifetime_estimation);
+  private:
+  const ::enterprise_management::DiskLifetimeEstimation& _internal_lifetime_estimation() const;
+  ::enterprise_management::DiskLifetimeEstimation* _internal_mutable_lifetime_estimation();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.StorageStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DiskInfo > disks_;
+  ::enterprise_management::DiskLifetimeEstimation* lifetime_estimation_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ThermalSample :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ThermalSample) */ {
+ public:
+  ThermalSample();
+  virtual ~ThermalSample();
+
+  ThermalSample(const ThermalSample& from);
+  ThermalSample(ThermalSample&& from) noexcept
+    : ThermalSample() {
+    *this = ::std::move(from);
+  }
+
+  inline ThermalSample& operator=(const ThermalSample& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ThermalSample& operator=(ThermalSample&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ThermalSample& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ThermalSample* internal_default_instance() {
+    return reinterpret_cast<const ThermalSample*>(
+               &_ThermalSample_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    41;
+
+  friend void swap(ThermalSample& a, ThermalSample& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ThermalSample* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ThermalSample* New() const final {
+    return CreateMaybeMessage<ThermalSample>(nullptr);
+  }
+
+  ThermalSample* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ThermalSample>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ThermalSample& from);
+  void MergeFrom(const ThermalSample& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ThermalSample* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ThermalSample";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTimestampFieldNumber = 1,
+    kTemperatureFieldNumber = 2,
+  };
+  // optional int64 timestamp = 1;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 temperature = 2;
+  bool has_temperature() const;
+  private:
+  bool _internal_has_temperature() const;
+  public:
+  void clear_temperature();
+  ::PROTOBUF_NAMESPACE_ID::int32 temperature() const;
+  void set_temperature(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_temperature() const;
+  void _internal_set_temperature(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ThermalSample)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int32 temperature_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ThermalInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ThermalInfo) */ {
+ public:
+  ThermalInfo();
+  virtual ~ThermalInfo();
+
+  ThermalInfo(const ThermalInfo& from);
+  ThermalInfo(ThermalInfo&& from) noexcept
+    : ThermalInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline ThermalInfo& operator=(const ThermalInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ThermalInfo& operator=(ThermalInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ThermalInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ThermalInfo* internal_default_instance() {
+    return reinterpret_cast<const ThermalInfo*>(
+               &_ThermalInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    42;
+
+  friend void swap(ThermalInfo& a, ThermalInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ThermalInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ThermalInfo* New() const final {
+    return CreateMaybeMessage<ThermalInfo>(nullptr);
+  }
+
+  ThermalInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ThermalInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ThermalInfo& from);
+  void MergeFrom(const ThermalInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ThermalInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ThermalInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSamplesFieldNumber = 3,
+    kLabelFieldNumber = 1,
+  };
+  // repeated .enterprise_management.ThermalSample samples = 3;
+  int samples_size() const;
+  private:
+  int _internal_samples_size() const;
+  public:
+  void clear_samples();
+  ::enterprise_management::ThermalSample* mutable_samples(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalSample >*
+      mutable_samples();
+  private:
+  const ::enterprise_management::ThermalSample& _internal_samples(int index) const;
+  ::enterprise_management::ThermalSample* _internal_add_samples();
+  public:
+  const ::enterprise_management::ThermalSample& samples(int index) const;
+  ::enterprise_management::ThermalSample* add_samples();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalSample >&
+      samples() const;
+
+  // optional string label = 1;
+  bool has_label() const;
+  private:
+  bool _internal_has_label() const;
+  public:
+  void clear_label();
+  const std::string& label() const;
+  void set_label(const std::string& value);
+  void set_label(std::string&& value);
+  void set_label(const char* value);
+  void set_label(const char* value, size_t size);
+  std::string* mutable_label();
+  std::string* release_label();
+  void set_allocated_label(std::string* label);
+  private:
+  const std::string& _internal_label() const;
+  void _internal_set_label(const std::string& value);
+  std::string* _internal_mutable_label();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ThermalInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalSample > samples_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr label_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BoardStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BoardStatus) */ {
+ public:
+  BoardStatus();
+  virtual ~BoardStatus();
+
+  BoardStatus(const BoardStatus& from);
+  BoardStatus(BoardStatus&& from) noexcept
+    : BoardStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline BoardStatus& operator=(const BoardStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BoardStatus& operator=(BoardStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BoardStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BoardStatus* internal_default_instance() {
+    return reinterpret_cast<const BoardStatus*>(
+               &_BoardStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    43;
+
+  friend void swap(BoardStatus& a, BoardStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BoardStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BoardStatus* New() const final {
+    return CreateMaybeMessage<BoardStatus>(nullptr);
+  }
+
+  BoardStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BoardStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BoardStatus& from);
+  void MergeFrom(const BoardStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BoardStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BoardStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kThermalInfosFieldNumber = 1,
+  };
+  // repeated .enterprise_management.ThermalInfo thermal_infos = 1;
+  int thermal_infos_size() const;
+  private:
+  int _internal_thermal_infos_size() const;
+  public:
+  void clear_thermal_infos();
+  ::enterprise_management::ThermalInfo* mutable_thermal_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalInfo >*
+      mutable_thermal_infos();
+  private:
+  const ::enterprise_management::ThermalInfo& _internal_thermal_infos(int index) const;
+  ::enterprise_management::ThermalInfo* _internal_add_thermal_infos();
+  public:
+  const ::enterprise_management::ThermalInfo& thermal_infos(int index) const;
+  ::enterprise_management::ThermalInfo* add_thermal_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalInfo >&
+      thermal_infos() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BoardStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalInfo > thermal_infos_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SystemStatus) */ {
+ public:
+  SystemStatus();
+  virtual ~SystemStatus();
+
+  SystemStatus(const SystemStatus& from);
+  SystemStatus(SystemStatus&& from) noexcept
+    : SystemStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemStatus& operator=(const SystemStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemStatus& operator=(SystemStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemStatus* internal_default_instance() {
+    return reinterpret_cast<const SystemStatus*>(
+               &_SystemStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    44;
+
+  friend void swap(SystemStatus& a, SystemStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemStatus* New() const final {
+    return CreateMaybeMessage<SystemStatus>(nullptr);
+  }
+
+  SystemStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemStatus& from);
+  void MergeFrom(const SystemStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SystemStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVpdSkuNumberFieldNumber = 1,
+    kFirstPowerDateFieldNumber = 2,
+    kManufactureDateFieldNumber = 3,
+    kMarketingNameFieldNumber = 4,
+    kBiosVersionFieldNumber = 5,
+    kBoardNameFieldNumber = 6,
+    kBoardVersionFieldNumber = 7,
+    kProductNameFieldNumber = 9,
+    kVpdSerialNumberFieldNumber = 10,
+    kChassisTypeFieldNumber = 8,
+  };
+  // optional string vpd_sku_number = 1;
+  bool has_vpd_sku_number() const;
+  private:
+  bool _internal_has_vpd_sku_number() const;
+  public:
+  void clear_vpd_sku_number();
+  const std::string& vpd_sku_number() const;
+  void set_vpd_sku_number(const std::string& value);
+  void set_vpd_sku_number(std::string&& value);
+  void set_vpd_sku_number(const char* value);
+  void set_vpd_sku_number(const char* value, size_t size);
+  std::string* mutable_vpd_sku_number();
+  std::string* release_vpd_sku_number();
+  void set_allocated_vpd_sku_number(std::string* vpd_sku_number);
+  private:
+  const std::string& _internal_vpd_sku_number() const;
+  void _internal_set_vpd_sku_number(const std::string& value);
+  std::string* _internal_mutable_vpd_sku_number();
+  public:
+
+  // optional string first_power_date = 2;
+  bool has_first_power_date() const;
+  private:
+  bool _internal_has_first_power_date() const;
+  public:
+  void clear_first_power_date();
+  const std::string& first_power_date() const;
+  void set_first_power_date(const std::string& value);
+  void set_first_power_date(std::string&& value);
+  void set_first_power_date(const char* value);
+  void set_first_power_date(const char* value, size_t size);
+  std::string* mutable_first_power_date();
+  std::string* release_first_power_date();
+  void set_allocated_first_power_date(std::string* first_power_date);
+  private:
+  const std::string& _internal_first_power_date() const;
+  void _internal_set_first_power_date(const std::string& value);
+  std::string* _internal_mutable_first_power_date();
+  public:
+
+  // optional string manufacture_date = 3;
+  bool has_manufacture_date() const;
+  private:
+  bool _internal_has_manufacture_date() const;
+  public:
+  void clear_manufacture_date();
+  const std::string& manufacture_date() const;
+  void set_manufacture_date(const std::string& value);
+  void set_manufacture_date(std::string&& value);
+  void set_manufacture_date(const char* value);
+  void set_manufacture_date(const char* value, size_t size);
+  std::string* mutable_manufacture_date();
+  std::string* release_manufacture_date();
+  void set_allocated_manufacture_date(std::string* manufacture_date);
+  private:
+  const std::string& _internal_manufacture_date() const;
+  void _internal_set_manufacture_date(const std::string& value);
+  std::string* _internal_mutable_manufacture_date();
+  public:
+
+  // optional string marketing_name = 4;
+  bool has_marketing_name() const;
+  private:
+  bool _internal_has_marketing_name() const;
+  public:
+  void clear_marketing_name();
+  const std::string& marketing_name() const;
+  void set_marketing_name(const std::string& value);
+  void set_marketing_name(std::string&& value);
+  void set_marketing_name(const char* value);
+  void set_marketing_name(const char* value, size_t size);
+  std::string* mutable_marketing_name();
+  std::string* release_marketing_name();
+  void set_allocated_marketing_name(std::string* marketing_name);
+  private:
+  const std::string& _internal_marketing_name() const;
+  void _internal_set_marketing_name(const std::string& value);
+  std::string* _internal_mutable_marketing_name();
+  public:
+
+  // optional string bios_version = 5;
+  bool has_bios_version() const;
+  private:
+  bool _internal_has_bios_version() const;
+  public:
+  void clear_bios_version();
+  const std::string& bios_version() const;
+  void set_bios_version(const std::string& value);
+  void set_bios_version(std::string&& value);
+  void set_bios_version(const char* value);
+  void set_bios_version(const char* value, size_t size);
+  std::string* mutable_bios_version();
+  std::string* release_bios_version();
+  void set_allocated_bios_version(std::string* bios_version);
+  private:
+  const std::string& _internal_bios_version() const;
+  void _internal_set_bios_version(const std::string& value);
+  std::string* _internal_mutable_bios_version();
+  public:
+
+  // optional string board_name = 6;
+  bool has_board_name() const;
+  private:
+  bool _internal_has_board_name() const;
+  public:
+  void clear_board_name();
+  const std::string& board_name() const;
+  void set_board_name(const std::string& value);
+  void set_board_name(std::string&& value);
+  void set_board_name(const char* value);
+  void set_board_name(const char* value, size_t size);
+  std::string* mutable_board_name();
+  std::string* release_board_name();
+  void set_allocated_board_name(std::string* board_name);
+  private:
+  const std::string& _internal_board_name() const;
+  void _internal_set_board_name(const std::string& value);
+  std::string* _internal_mutable_board_name();
+  public:
+
+  // optional string board_version = 7;
+  bool has_board_version() const;
+  private:
+  bool _internal_has_board_version() const;
+  public:
+  void clear_board_version();
+  const std::string& board_version() const;
+  void set_board_version(const std::string& value);
+  void set_board_version(std::string&& value);
+  void set_board_version(const char* value);
+  void set_board_version(const char* value, size_t size);
+  std::string* mutable_board_version();
+  std::string* release_board_version();
+  void set_allocated_board_version(std::string* board_version);
+  private:
+  const std::string& _internal_board_version() const;
+  void _internal_set_board_version(const std::string& value);
+  std::string* _internal_mutable_board_version();
+  public:
+
+  // optional string product_name = 9;
+  bool has_product_name() const;
+  private:
+  bool _internal_has_product_name() const;
+  public:
+  void clear_product_name();
+  const std::string& product_name() const;
+  void set_product_name(const std::string& value);
+  void set_product_name(std::string&& value);
+  void set_product_name(const char* value);
+  void set_product_name(const char* value, size_t size);
+  std::string* mutable_product_name();
+  std::string* release_product_name();
+  void set_allocated_product_name(std::string* product_name);
+  private:
+  const std::string& _internal_product_name() const;
+  void _internal_set_product_name(const std::string& value);
+  std::string* _internal_mutable_product_name();
+  public:
+
+  // optional string vpd_serial_number = 10;
+  bool has_vpd_serial_number() const;
+  private:
+  bool _internal_has_vpd_serial_number() const;
+  public:
+  void clear_vpd_serial_number();
+  const std::string& vpd_serial_number() const;
+  void set_vpd_serial_number(const std::string& value);
+  void set_vpd_serial_number(std::string&& value);
+  void set_vpd_serial_number(const char* value);
+  void set_vpd_serial_number(const char* value, size_t size);
+  std::string* mutable_vpd_serial_number();
+  std::string* release_vpd_serial_number();
+  void set_allocated_vpd_serial_number(std::string* vpd_serial_number);
+  private:
+  const std::string& _internal_vpd_serial_number() const;
+  void _internal_set_vpd_serial_number(const std::string& value);
+  std::string* _internal_mutable_vpd_serial_number();
+  public:
+
+  // optional uint64 chassis_type = 8;
+  bool has_chassis_type() const;
+  private:
+  bool _internal_has_chassis_type() const;
+  public:
+  void clear_chassis_type();
+  ::PROTOBUF_NAMESPACE_ID::uint64 chassis_type() const;
+  void set_chassis_type(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_chassis_type() const;
+  void _internal_set_chassis_type(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SystemStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr vpd_sku_number_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr first_power_date_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr manufacture_date_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr marketing_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr bios_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr board_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr board_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr product_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr vpd_serial_number_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 chassis_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CpuCStateInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CpuCStateInfo) */ {
+ public:
+  CpuCStateInfo();
+  virtual ~CpuCStateInfo();
+
+  CpuCStateInfo(const CpuCStateInfo& from);
+  CpuCStateInfo(CpuCStateInfo&& from) noexcept
+    : CpuCStateInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline CpuCStateInfo& operator=(const CpuCStateInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CpuCStateInfo& operator=(CpuCStateInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CpuCStateInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CpuCStateInfo* internal_default_instance() {
+    return reinterpret_cast<const CpuCStateInfo*>(
+               &_CpuCStateInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    45;
+
+  friend void swap(CpuCStateInfo& a, CpuCStateInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CpuCStateInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CpuCStateInfo* New() const final {
+    return CreateMaybeMessage<CpuCStateInfo>(nullptr);
+  }
+
+  CpuCStateInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CpuCStateInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CpuCStateInfo& from);
+  void MergeFrom(const CpuCStateInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CpuCStateInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CpuCStateInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kTimeInStateSinceLastBootUsFieldNumber = 2,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional uint64 time_in_state_since_last_boot_us = 2;
+  bool has_time_in_state_since_last_boot_us() const;
+  private:
+  bool _internal_has_time_in_state_since_last_boot_us() const;
+  public:
+  void clear_time_in_state_since_last_boot_us();
+  ::PROTOBUF_NAMESPACE_ID::uint64 time_in_state_since_last_boot_us() const;
+  void set_time_in_state_since_last_boot_us(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_time_in_state_since_last_boot_us() const;
+  void _internal_set_time_in_state_since_last_boot_us(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CpuCStateInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 time_in_state_since_last_boot_us_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LogicalCpuInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LogicalCpuInfo) */ {
+ public:
+  LogicalCpuInfo();
+  virtual ~LogicalCpuInfo();
+
+  LogicalCpuInfo(const LogicalCpuInfo& from);
+  LogicalCpuInfo(LogicalCpuInfo&& from) noexcept
+    : LogicalCpuInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline LogicalCpuInfo& operator=(const LogicalCpuInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LogicalCpuInfo& operator=(LogicalCpuInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LogicalCpuInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LogicalCpuInfo* internal_default_instance() {
+    return reinterpret_cast<const LogicalCpuInfo*>(
+               &_LogicalCpuInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    46;
+
+  friend void swap(LogicalCpuInfo& a, LogicalCpuInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LogicalCpuInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LogicalCpuInfo* New() const final {
+    return CreateMaybeMessage<LogicalCpuInfo>(nullptr);
+  }
+
+  LogicalCpuInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LogicalCpuInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LogicalCpuInfo& from);
+  void MergeFrom(const LogicalCpuInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LogicalCpuInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LogicalCpuInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCStatesFieldNumber = 4,
+    kScalingMaxFrequencyKhzFieldNumber = 1,
+    kScalingCurrentFrequencyKhzFieldNumber = 2,
+    kIdleTimeSecondsFieldNumber = 3,
+  };
+  // repeated .enterprise_management.CpuCStateInfo c_states = 4;
+  int c_states_size() const;
+  private:
+  int _internal_c_states_size() const;
+  public:
+  void clear_c_states();
+  ::enterprise_management::CpuCStateInfo* mutable_c_states(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuCStateInfo >*
+      mutable_c_states();
+  private:
+  const ::enterprise_management::CpuCStateInfo& _internal_c_states(int index) const;
+  ::enterprise_management::CpuCStateInfo* _internal_add_c_states();
+  public:
+  const ::enterprise_management::CpuCStateInfo& c_states(int index) const;
+  ::enterprise_management::CpuCStateInfo* add_c_states();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuCStateInfo >&
+      c_states() const;
+
+  // optional uint32 scaling_max_frequency_khz = 1;
+  bool has_scaling_max_frequency_khz() const;
+  private:
+  bool _internal_has_scaling_max_frequency_khz() const;
+  public:
+  void clear_scaling_max_frequency_khz();
+  ::PROTOBUF_NAMESPACE_ID::uint32 scaling_max_frequency_khz() const;
+  void set_scaling_max_frequency_khz(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_scaling_max_frequency_khz() const;
+  void _internal_set_scaling_max_frequency_khz(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 scaling_current_frequency_khz = 2;
+  bool has_scaling_current_frequency_khz() const;
+  private:
+  bool _internal_has_scaling_current_frequency_khz() const;
+  public:
+  void clear_scaling_current_frequency_khz();
+  ::PROTOBUF_NAMESPACE_ID::uint32 scaling_current_frequency_khz() const;
+  void set_scaling_current_frequency_khz(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_scaling_current_frequency_khz() const;
+  void _internal_set_scaling_current_frequency_khz(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint64 idle_time_seconds = 3;
+  bool has_idle_time_seconds() const;
+  private:
+  bool _internal_has_idle_time_seconds() const;
+  public:
+  void clear_idle_time_seconds();
+  ::PROTOBUF_NAMESPACE_ID::uint64 idle_time_seconds() const;
+  void set_idle_time_seconds(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_idle_time_seconds() const;
+  void _internal_set_idle_time_seconds(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LogicalCpuInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuCStateInfo > c_states_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 scaling_max_frequency_khz_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 scaling_current_frequency_khz_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 idle_time_seconds_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CpuInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CpuInfo) */ {
+ public:
+  CpuInfo();
+  virtual ~CpuInfo();
+
+  CpuInfo(const CpuInfo& from);
+  CpuInfo(CpuInfo&& from) noexcept
+    : CpuInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline CpuInfo& operator=(const CpuInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CpuInfo& operator=(CpuInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CpuInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CpuInfo* internal_default_instance() {
+    return reinterpret_cast<const CpuInfo*>(
+               &_CpuInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    47;
+
+  friend void swap(CpuInfo& a, CpuInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CpuInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CpuInfo* New() const final {
+    return CreateMaybeMessage<CpuInfo>(nullptr);
+  }
+
+  CpuInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CpuInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CpuInfo& from);
+  void MergeFrom(const CpuInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CpuInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CpuInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef CpuInfo_Architecture Architecture;
+  static constexpr Architecture ARCHITECTURE_UNSPECIFIED =
+    CpuInfo_Architecture_ARCHITECTURE_UNSPECIFIED;
+  static constexpr Architecture X86_64 =
+    CpuInfo_Architecture_X86_64;
+  static constexpr Architecture AARCH64 =
+    CpuInfo_Architecture_AARCH64;
+  static constexpr Architecture ARMV7L =
+    CpuInfo_Architecture_ARMV7L;
+  static inline bool Architecture_IsValid(int value) {
+    return CpuInfo_Architecture_IsValid(value);
+  }
+  static constexpr Architecture Architecture_MIN =
+    CpuInfo_Architecture_Architecture_MIN;
+  static constexpr Architecture Architecture_MAX =
+    CpuInfo_Architecture_Architecture_MAX;
+  static constexpr int Architecture_ARRAYSIZE =
+    CpuInfo_Architecture_Architecture_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Architecture_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Architecture>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Architecture_Name.");
+    return CpuInfo_Architecture_Name(enum_t_value);
+  }
+  static inline bool Architecture_Parse(const std::string& name,
+      Architecture* value) {
+    return CpuInfo_Architecture_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLogicalCpusFieldNumber = 4,
+    kModelNameFieldNumber = 1,
+    kArchitectureFieldNumber = 2,
+    kMaxClockSpeedKhzFieldNumber = 3,
+  };
+  // repeated .enterprise_management.LogicalCpuInfo logical_cpus = 4;
+  int logical_cpus_size() const;
+  private:
+  int _internal_logical_cpus_size() const;
+  public:
+  void clear_logical_cpus();
+  ::enterprise_management::LogicalCpuInfo* mutable_logical_cpus(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LogicalCpuInfo >*
+      mutable_logical_cpus();
+  private:
+  const ::enterprise_management::LogicalCpuInfo& _internal_logical_cpus(int index) const;
+  ::enterprise_management::LogicalCpuInfo* _internal_add_logical_cpus();
+  public:
+  const ::enterprise_management::LogicalCpuInfo& logical_cpus(int index) const;
+  ::enterprise_management::LogicalCpuInfo* add_logical_cpus();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LogicalCpuInfo >&
+      logical_cpus() const;
+
+  // optional string model_name = 1;
+  bool has_model_name() const;
+  private:
+  bool _internal_has_model_name() const;
+  public:
+  void clear_model_name();
+  const std::string& model_name() const;
+  void set_model_name(const std::string& value);
+  void set_model_name(std::string&& value);
+  void set_model_name(const char* value);
+  void set_model_name(const char* value, size_t size);
+  std::string* mutable_model_name();
+  std::string* release_model_name();
+  void set_allocated_model_name(std::string* model_name);
+  private:
+  const std::string& _internal_model_name() const;
+  void _internal_set_model_name(const std::string& value);
+  std::string* _internal_mutable_model_name();
+  public:
+
+  // optional .enterprise_management.CpuInfo.Architecture architecture = 2;
+  bool has_architecture() const;
+  private:
+  bool _internal_has_architecture() const;
+  public:
+  void clear_architecture();
+  ::enterprise_management::CpuInfo_Architecture architecture() const;
+  void set_architecture(::enterprise_management::CpuInfo_Architecture value);
+  private:
+  ::enterprise_management::CpuInfo_Architecture _internal_architecture() const;
+  void _internal_set_architecture(::enterprise_management::CpuInfo_Architecture value);
+  public:
+
+  // optional uint32 max_clock_speed_khz = 3;
+  bool has_max_clock_speed_khz() const;
+  private:
+  bool _internal_has_max_clock_speed_khz() const;
+  public:
+  void clear_max_clock_speed_khz();
+  ::PROTOBUF_NAMESPACE_ID::uint32 max_clock_speed_khz() const;
+  void set_max_clock_speed_khz(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_max_clock_speed_khz() const;
+  void _internal_set_max_clock_speed_khz(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CpuInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LogicalCpuInfo > logical_cpus_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr model_name_;
+  int architecture_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 max_clock_speed_khz_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class GlobalCpuInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.GlobalCpuInfo) */ {
+ public:
+  GlobalCpuInfo();
+  virtual ~GlobalCpuInfo();
+
+  GlobalCpuInfo(const GlobalCpuInfo& from);
+  GlobalCpuInfo(GlobalCpuInfo&& from) noexcept
+    : GlobalCpuInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline GlobalCpuInfo& operator=(const GlobalCpuInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline GlobalCpuInfo& operator=(GlobalCpuInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const GlobalCpuInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const GlobalCpuInfo* internal_default_instance() {
+    return reinterpret_cast<const GlobalCpuInfo*>(
+               &_GlobalCpuInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    48;
+
+  friend void swap(GlobalCpuInfo& a, GlobalCpuInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(GlobalCpuInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline GlobalCpuInfo* New() const final {
+    return CreateMaybeMessage<GlobalCpuInfo>(nullptr);
+  }
+
+  GlobalCpuInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<GlobalCpuInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const GlobalCpuInfo& from);
+  void MergeFrom(const GlobalCpuInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(GlobalCpuInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.GlobalCpuInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNumTotalThreadsFieldNumber = 1,
+  };
+  // optional uint32 num_total_threads = 1;
+  bool has_num_total_threads() const;
+  private:
+  bool _internal_has_num_total_threads() const;
+  public:
+  void clear_num_total_threads();
+  ::PROTOBUF_NAMESPACE_ID::uint32 num_total_threads() const;
+  void set_num_total_threads(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_num_total_threads() const;
+  void _internal_set_num_total_threads(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.GlobalCpuInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 num_total_threads_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DisplayInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DisplayInfo) */ {
+ public:
+  DisplayInfo();
+  virtual ~DisplayInfo();
+
+  DisplayInfo(const DisplayInfo& from);
+  DisplayInfo(DisplayInfo&& from) noexcept
+    : DisplayInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline DisplayInfo& operator=(const DisplayInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DisplayInfo& operator=(DisplayInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DisplayInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DisplayInfo* internal_default_instance() {
+    return reinterpret_cast<const DisplayInfo*>(
+               &_DisplayInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    49;
+
+  friend void swap(DisplayInfo& a, DisplayInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DisplayInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DisplayInfo* New() const final {
+    return CreateMaybeMessage<DisplayInfo>(nullptr);
+  }
+
+  DisplayInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DisplayInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DisplayInfo& from);
+  void MergeFrom(const DisplayInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DisplayInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DisplayInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kResolutionWidthFieldNumber = 1,
+    kResolutionHeightFieldNumber = 2,
+    kRefreshRateFieldNumber = 3,
+    kIsInternalFieldNumber = 4,
+  };
+  // optional uint32 resolution_width = 1;
+  bool has_resolution_width() const;
+  private:
+  bool _internal_has_resolution_width() const;
+  public:
+  void clear_resolution_width();
+  ::PROTOBUF_NAMESPACE_ID::uint32 resolution_width() const;
+  void set_resolution_width(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_resolution_width() const;
+  void _internal_set_resolution_width(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 resolution_height = 2;
+  bool has_resolution_height() const;
+  private:
+  bool _internal_has_resolution_height() const;
+  public:
+  void clear_resolution_height();
+  ::PROTOBUF_NAMESPACE_ID::uint32 resolution_height() const;
+  void set_resolution_height(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_resolution_height() const;
+  void _internal_set_resolution_height(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 refresh_rate = 3;
+  bool has_refresh_rate() const;
+  private:
+  bool _internal_has_refresh_rate() const;
+  public:
+  void clear_refresh_rate();
+  ::PROTOBUF_NAMESPACE_ID::uint32 refresh_rate() const;
+  void set_refresh_rate(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_refresh_rate() const;
+  void _internal_set_refresh_rate(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional bool is_internal = 4;
+  bool has_is_internal() const;
+  private:
+  bool _internal_has_is_internal() const;
+  public:
+  void clear_is_internal();
+  bool is_internal() const;
+  void set_is_internal(bool value);
+  private:
+  bool _internal_is_internal() const;
+  void _internal_set_is_internal(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DisplayInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 resolution_width_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 resolution_height_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 refresh_rate_;
+  bool is_internal_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class GraphicsAdapterInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.GraphicsAdapterInfo) */ {
+ public:
+  GraphicsAdapterInfo();
+  virtual ~GraphicsAdapterInfo();
+
+  GraphicsAdapterInfo(const GraphicsAdapterInfo& from);
+  GraphicsAdapterInfo(GraphicsAdapterInfo&& from) noexcept
+    : GraphicsAdapterInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline GraphicsAdapterInfo& operator=(const GraphicsAdapterInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline GraphicsAdapterInfo& operator=(GraphicsAdapterInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const GraphicsAdapterInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const GraphicsAdapterInfo* internal_default_instance() {
+    return reinterpret_cast<const GraphicsAdapterInfo*>(
+               &_GraphicsAdapterInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    50;
+
+  friend void swap(GraphicsAdapterInfo& a, GraphicsAdapterInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(GraphicsAdapterInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline GraphicsAdapterInfo* New() const final {
+    return CreateMaybeMessage<GraphicsAdapterInfo>(nullptr);
+  }
+
+  GraphicsAdapterInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<GraphicsAdapterInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const GraphicsAdapterInfo& from);
+  void MergeFrom(const GraphicsAdapterInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(GraphicsAdapterInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.GraphicsAdapterInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kDriverVersionFieldNumber = 2,
+    kDeviceIdFieldNumber = 3,
+    kSystemRamUsageFieldNumber = 4,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string driver_version = 2;
+  bool has_driver_version() const;
+  private:
+  bool _internal_has_driver_version() const;
+  public:
+  void clear_driver_version();
+  const std::string& driver_version() const;
+  void set_driver_version(const std::string& value);
+  void set_driver_version(std::string&& value);
+  void set_driver_version(const char* value);
+  void set_driver_version(const char* value, size_t size);
+  std::string* mutable_driver_version();
+  std::string* release_driver_version();
+  void set_allocated_driver_version(std::string* driver_version);
+  private:
+  const std::string& _internal_driver_version() const;
+  void _internal_set_driver_version(const std::string& value);
+  std::string* _internal_mutable_driver_version();
+  public:
+
+  // optional uint64 device_id = 3;
+  bool has_device_id() const;
+  private:
+  bool _internal_has_device_id() const;
+  public:
+  void clear_device_id();
+  ::PROTOBUF_NAMESPACE_ID::uint64 device_id() const;
+  void set_device_id(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_device_id() const;
+  void _internal_set_device_id(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 system_ram_usage = 4;
+  bool has_system_ram_usage() const;
+  private:
+  bool _internal_has_system_ram_usage() const;
+  public:
+  void clear_system_ram_usage();
+  ::PROTOBUF_NAMESPACE_ID::uint64 system_ram_usage() const;
+  void set_system_ram_usage(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_system_ram_usage() const;
+  void _internal_set_system_ram_usage(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.GraphicsAdapterInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr driver_version_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 device_id_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 system_ram_usage_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class GraphicsStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.GraphicsStatus) */ {
+ public:
+  GraphicsStatus();
+  virtual ~GraphicsStatus();
+
+  GraphicsStatus(const GraphicsStatus& from);
+  GraphicsStatus(GraphicsStatus&& from) noexcept
+    : GraphicsStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline GraphicsStatus& operator=(const GraphicsStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline GraphicsStatus& operator=(GraphicsStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const GraphicsStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const GraphicsStatus* internal_default_instance() {
+    return reinterpret_cast<const GraphicsStatus*>(
+               &_GraphicsStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    51;
+
+  friend void swap(GraphicsStatus& a, GraphicsStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(GraphicsStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline GraphicsStatus* New() const final {
+    return CreateMaybeMessage<GraphicsStatus>(nullptr);
+  }
+
+  GraphicsStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<GraphicsStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const GraphicsStatus& from);
+  void MergeFrom(const GraphicsStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(GraphicsStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.GraphicsStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDisplaysFieldNumber = 2,
+    kAdapterFieldNumber = 1,
+  };
+  // repeated .enterprise_management.DisplayInfo displays = 2;
+  int displays_size() const;
+  private:
+  int _internal_displays_size() const;
+  public:
+  void clear_displays();
+  ::enterprise_management::DisplayInfo* mutable_displays(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DisplayInfo >*
+      mutable_displays();
+  private:
+  const ::enterprise_management::DisplayInfo& _internal_displays(int index) const;
+  ::enterprise_management::DisplayInfo* _internal_add_displays();
+  public:
+  const ::enterprise_management::DisplayInfo& displays(int index) const;
+  ::enterprise_management::DisplayInfo* add_displays();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DisplayInfo >&
+      displays() const;
+
+  // optional .enterprise_management.GraphicsAdapterInfo adapter = 1;
+  bool has_adapter() const;
+  private:
+  bool _internal_has_adapter() const;
+  public:
+  void clear_adapter();
+  const ::enterprise_management::GraphicsAdapterInfo& adapter() const;
+  ::enterprise_management::GraphicsAdapterInfo* release_adapter();
+  ::enterprise_management::GraphicsAdapterInfo* mutable_adapter();
+  void set_allocated_adapter(::enterprise_management::GraphicsAdapterInfo* adapter);
+  private:
+  const ::enterprise_management::GraphicsAdapterInfo& _internal_adapter() const;
+  ::enterprise_management::GraphicsAdapterInfo* _internal_mutable_adapter();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.GraphicsStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DisplayInfo > displays_;
+  ::enterprise_management::GraphicsAdapterInfo* adapter_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CrashReportInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CrashReportInfo) */ {
+ public:
+  CrashReportInfo();
+  virtual ~CrashReportInfo();
+
+  CrashReportInfo(const CrashReportInfo& from);
+  CrashReportInfo(CrashReportInfo&& from) noexcept
+    : CrashReportInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline CrashReportInfo& operator=(const CrashReportInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CrashReportInfo& operator=(CrashReportInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CrashReportInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CrashReportInfo* internal_default_instance() {
+    return reinterpret_cast<const CrashReportInfo*>(
+               &_CrashReportInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    52;
+
+  friend void swap(CrashReportInfo& a, CrashReportInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CrashReportInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CrashReportInfo* New() const final {
+    return CreateMaybeMessage<CrashReportInfo>(nullptr);
+  }
+
+  CrashReportInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CrashReportInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CrashReportInfo& from);
+  void MergeFrom(const CrashReportInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CrashReportInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CrashReportInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef CrashReportInfo_CrashReportUploadStatus CrashReportUploadStatus;
+  static constexpr CrashReportUploadStatus UPLOAD_STATUS_UNKNOWN =
+    CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_UNKNOWN;
+  static constexpr CrashReportUploadStatus UPLOAD_STATUS_NOT_UPLOADED =
+    CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_NOT_UPLOADED;
+  static constexpr CrashReportUploadStatus UPLOAD_STATUS_PENDING =
+    CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_PENDING;
+  static constexpr CrashReportUploadStatus UPLOAD_STATUS_PENDING_USER_REQUESTED =
+    CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_PENDING_USER_REQUESTED;
+  static constexpr CrashReportUploadStatus UPLOAD_STATUS_UPLOADED =
+    CrashReportInfo_CrashReportUploadStatus_UPLOAD_STATUS_UPLOADED;
+  static inline bool CrashReportUploadStatus_IsValid(int value) {
+    return CrashReportInfo_CrashReportUploadStatus_IsValid(value);
+  }
+  static constexpr CrashReportUploadStatus CrashReportUploadStatus_MIN =
+    CrashReportInfo_CrashReportUploadStatus_CrashReportUploadStatus_MIN;
+  static constexpr CrashReportUploadStatus CrashReportUploadStatus_MAX =
+    CrashReportInfo_CrashReportUploadStatus_CrashReportUploadStatus_MAX;
+  static constexpr int CrashReportUploadStatus_ARRAYSIZE =
+    CrashReportInfo_CrashReportUploadStatus_CrashReportUploadStatus_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& CrashReportUploadStatus_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, CrashReportUploadStatus>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function CrashReportUploadStatus_Name.");
+    return CrashReportInfo_CrashReportUploadStatus_Name(enum_t_value);
+  }
+  static inline bool CrashReportUploadStatus_Parse(const std::string& name,
+      CrashReportUploadStatus* value) {
+    return CrashReportInfo_CrashReportUploadStatus_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRemoteIdFieldNumber = 1,
+    kCauseFieldNumber = 3,
+    kCaptureTimestampFieldNumber = 2,
+    kUploadStatusFieldNumber = 4,
+  };
+  // optional string remote_id = 1;
+  bool has_remote_id() const;
+  private:
+  bool _internal_has_remote_id() const;
+  public:
+  void clear_remote_id();
+  const std::string& remote_id() const;
+  void set_remote_id(const std::string& value);
+  void set_remote_id(std::string&& value);
+  void set_remote_id(const char* value);
+  void set_remote_id(const char* value, size_t size);
+  std::string* mutable_remote_id();
+  std::string* release_remote_id();
+  void set_allocated_remote_id(std::string* remote_id);
+  private:
+  const std::string& _internal_remote_id() const;
+  void _internal_set_remote_id(const std::string& value);
+  std::string* _internal_mutable_remote_id();
+  public:
+
+  // optional string cause = 3;
+  bool has_cause() const;
+  private:
+  bool _internal_has_cause() const;
+  public:
+  void clear_cause();
+  const std::string& cause() const;
+  void set_cause(const std::string& value);
+  void set_cause(std::string&& value);
+  void set_cause(const char* value);
+  void set_cause(const char* value, size_t size);
+  std::string* mutable_cause();
+  std::string* release_cause();
+  void set_allocated_cause(std::string* cause);
+  private:
+  const std::string& _internal_cause() const;
+  void _internal_set_cause(const std::string& value);
+  std::string* _internal_mutable_cause();
+  public:
+
+  // optional int64 capture_timestamp = 2;
+  bool has_capture_timestamp() const;
+  private:
+  bool _internal_has_capture_timestamp() const;
+  public:
+  void clear_capture_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 capture_timestamp() const;
+  void set_capture_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_capture_timestamp() const;
+  void _internal_set_capture_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.CrashReportInfo.CrashReportUploadStatus upload_status = 4;
+  bool has_upload_status() const;
+  private:
+  bool _internal_has_upload_status() const;
+  public:
+  void clear_upload_status();
+  ::enterprise_management::CrashReportInfo_CrashReportUploadStatus upload_status() const;
+  void set_upload_status(::enterprise_management::CrashReportInfo_CrashReportUploadStatus value);
+  private:
+  ::enterprise_management::CrashReportInfo_CrashReportUploadStatus _internal_upload_status() const;
+  void _internal_set_upload_status(::enterprise_management::CrashReportInfo_CrashReportUploadStatus value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CrashReportInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr remote_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cause_;
+  ::PROTOBUF_NAMESPACE_ID::int64 capture_timestamp_;
+  int upload_status_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class TimezoneInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.TimezoneInfo) */ {
+ public:
+  TimezoneInfo();
+  virtual ~TimezoneInfo();
+
+  TimezoneInfo(const TimezoneInfo& from);
+  TimezoneInfo(TimezoneInfo&& from) noexcept
+    : TimezoneInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline TimezoneInfo& operator=(const TimezoneInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline TimezoneInfo& operator=(TimezoneInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const TimezoneInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const TimezoneInfo* internal_default_instance() {
+    return reinterpret_cast<const TimezoneInfo*>(
+               &_TimezoneInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    53;
+
+  friend void swap(TimezoneInfo& a, TimezoneInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(TimezoneInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline TimezoneInfo* New() const final {
+    return CreateMaybeMessage<TimezoneInfo>(nullptr);
+  }
+
+  TimezoneInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<TimezoneInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const TimezoneInfo& from);
+  void MergeFrom(const TimezoneInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(TimezoneInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.TimezoneInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPosixFieldNumber = 1,
+    kRegionFieldNumber = 2,
+  };
+  // optional string posix = 1;
+  bool has_posix() const;
+  private:
+  bool _internal_has_posix() const;
+  public:
+  void clear_posix();
+  const std::string& posix() const;
+  void set_posix(const std::string& value);
+  void set_posix(std::string&& value);
+  void set_posix(const char* value);
+  void set_posix(const char* value, size_t size);
+  std::string* mutable_posix();
+  std::string* release_posix();
+  void set_allocated_posix(std::string* posix);
+  private:
+  const std::string& _internal_posix() const;
+  void _internal_set_posix(const std::string& value);
+  std::string* _internal_mutable_posix();
+  public:
+
+  // optional string region = 2;
+  bool has_region() const;
+  private:
+  bool _internal_has_region() const;
+  public:
+  void clear_region();
+  const std::string& region() const;
+  void set_region(const std::string& value);
+  void set_region(std::string&& value);
+  void set_region(const char* value);
+  void set_region(const char* value, size_t size);
+  std::string* mutable_region();
+  std::string* release_region();
+  void set_allocated_region(std::string* region);
+  private:
+  const std::string& _internal_region() const;
+  void _internal_set_region(const std::string& value);
+  std::string* _internal_mutable_region();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.TimezoneInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr posix_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr region_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class MemoryInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.MemoryInfo) */ {
+ public:
+  MemoryInfo();
+  virtual ~MemoryInfo();
+
+  MemoryInfo(const MemoryInfo& from);
+  MemoryInfo(MemoryInfo&& from) noexcept
+    : MemoryInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline MemoryInfo& operator=(const MemoryInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline MemoryInfo& operator=(MemoryInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const MemoryInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const MemoryInfo* internal_default_instance() {
+    return reinterpret_cast<const MemoryInfo*>(
+               &_MemoryInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    54;
+
+  friend void swap(MemoryInfo& a, MemoryInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(MemoryInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline MemoryInfo* New() const final {
+    return CreateMaybeMessage<MemoryInfo>(nullptr);
+  }
+
+  MemoryInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<MemoryInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const MemoryInfo& from);
+  void MergeFrom(const MemoryInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(MemoryInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.MemoryInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTotalMemoryKibFieldNumber = 1,
+    kFreeMemoryKibFieldNumber = 2,
+    kPageFaultsSinceLastBootFieldNumber = 4,
+    kAvailableMemoryKibFieldNumber = 3,
+  };
+  // optional uint32 total_memory_kib = 1;
+  bool has_total_memory_kib() const;
+  private:
+  bool _internal_has_total_memory_kib() const;
+  public:
+  void clear_total_memory_kib();
+  ::PROTOBUF_NAMESPACE_ID::uint32 total_memory_kib() const;
+  void set_total_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_total_memory_kib() const;
+  void _internal_set_total_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 free_memory_kib = 2;
+  bool has_free_memory_kib() const;
+  private:
+  bool _internal_has_free_memory_kib() const;
+  public:
+  void clear_free_memory_kib();
+  ::PROTOBUF_NAMESPACE_ID::uint32 free_memory_kib() const;
+  void set_free_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_free_memory_kib() const;
+  void _internal_set_free_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint64 page_faults_since_last_boot = 4;
+  bool has_page_faults_since_last_boot() const;
+  private:
+  bool _internal_has_page_faults_since_last_boot() const;
+  public:
+  void clear_page_faults_since_last_boot();
+  ::PROTOBUF_NAMESPACE_ID::uint64 page_faults_since_last_boot() const;
+  void set_page_faults_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_page_faults_since_last_boot() const;
+  void _internal_set_page_faults_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint32 available_memory_kib = 3;
+  bool has_available_memory_kib() const;
+  private:
+  bool _internal_has_available_memory_kib() const;
+  public:
+  void clear_available_memory_kib();
+  ::PROTOBUF_NAMESPACE_ID::uint32 available_memory_kib() const;
+  void set_available_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_available_memory_kib() const;
+  void _internal_set_available_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.MemoryInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 total_memory_kib_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 free_memory_kib_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 page_faults_since_last_boot_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 available_memory_kib_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BacklightInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BacklightInfo) */ {
+ public:
+  BacklightInfo();
+  virtual ~BacklightInfo();
+
+  BacklightInfo(const BacklightInfo& from);
+  BacklightInfo(BacklightInfo&& from) noexcept
+    : BacklightInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline BacklightInfo& operator=(const BacklightInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BacklightInfo& operator=(BacklightInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BacklightInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BacklightInfo* internal_default_instance() {
+    return reinterpret_cast<const BacklightInfo*>(
+               &_BacklightInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    55;
+
+  friend void swap(BacklightInfo& a, BacklightInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BacklightInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BacklightInfo* New() const final {
+    return CreateMaybeMessage<BacklightInfo>(nullptr);
+  }
+
+  BacklightInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BacklightInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BacklightInfo& from);
+  void MergeFrom(const BacklightInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BacklightInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BacklightInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPathFieldNumber = 1,
+    kMaxBrightnessFieldNumber = 2,
+    kBrightnessFieldNumber = 3,
+  };
+  // optional string path = 1;
+  bool has_path() const;
+  private:
+  bool _internal_has_path() const;
+  public:
+  void clear_path();
+  const std::string& path() const;
+  void set_path(const std::string& value);
+  void set_path(std::string&& value);
+  void set_path(const char* value);
+  void set_path(const char* value, size_t size);
+  std::string* mutable_path();
+  std::string* release_path();
+  void set_allocated_path(std::string* path);
+  private:
+  const std::string& _internal_path() const;
+  void _internal_set_path(const std::string& value);
+  std::string* _internal_mutable_path();
+  public:
+
+  // optional uint32 max_brightness = 2;
+  bool has_max_brightness() const;
+  private:
+  bool _internal_has_max_brightness() const;
+  public:
+  void clear_max_brightness();
+  ::PROTOBUF_NAMESPACE_ID::uint32 max_brightness() const;
+  void set_max_brightness(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_max_brightness() const;
+  void _internal_set_max_brightness(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 brightness = 3;
+  bool has_brightness() const;
+  private:
+  bool _internal_has_brightness() const;
+  public:
+  void clear_brightness();
+  ::PROTOBUF_NAMESPACE_ID::uint32 brightness() const;
+  void set_brightness(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_brightness() const;
+  void _internal_set_brightness(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BacklightInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr path_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 max_brightness_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 brightness_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class FanInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.FanInfo) */ {
+ public:
+  FanInfo();
+  virtual ~FanInfo();
+
+  FanInfo(const FanInfo& from);
+  FanInfo(FanInfo&& from) noexcept
+    : FanInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline FanInfo& operator=(const FanInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline FanInfo& operator=(FanInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const FanInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const FanInfo* internal_default_instance() {
+    return reinterpret_cast<const FanInfo*>(
+               &_FanInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    56;
+
+  friend void swap(FanInfo& a, FanInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(FanInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline FanInfo* New() const final {
+    return CreateMaybeMessage<FanInfo>(nullptr);
+  }
+
+  FanInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<FanInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const FanInfo& from);
+  void MergeFrom(const FanInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(FanInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.FanInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSpeedRpmFieldNumber = 1,
+  };
+  // optional uint32 speed_rpm = 1;
+  bool has_speed_rpm() const;
+  private:
+  bool _internal_has_speed_rpm() const;
+  public:
+  void clear_speed_rpm();
+  ::PROTOBUF_NAMESPACE_ID::uint32 speed_rpm() const;
+  void set_speed_rpm(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_speed_rpm() const;
+  void _internal_set_speed_rpm(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.FanInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 speed_rpm_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BluetoothAdapterInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BluetoothAdapterInfo) */ {
+ public:
+  BluetoothAdapterInfo();
+  virtual ~BluetoothAdapterInfo();
+
+  BluetoothAdapterInfo(const BluetoothAdapterInfo& from);
+  BluetoothAdapterInfo(BluetoothAdapterInfo&& from) noexcept
+    : BluetoothAdapterInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline BluetoothAdapterInfo& operator=(const BluetoothAdapterInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BluetoothAdapterInfo& operator=(BluetoothAdapterInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BluetoothAdapterInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BluetoothAdapterInfo* internal_default_instance() {
+    return reinterpret_cast<const BluetoothAdapterInfo*>(
+               &_BluetoothAdapterInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    57;
+
+  friend void swap(BluetoothAdapterInfo& a, BluetoothAdapterInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BluetoothAdapterInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BluetoothAdapterInfo* New() const final {
+    return CreateMaybeMessage<BluetoothAdapterInfo>(nullptr);
+  }
+
+  BluetoothAdapterInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BluetoothAdapterInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BluetoothAdapterInfo& from);
+  void MergeFrom(const BluetoothAdapterInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BluetoothAdapterInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BluetoothAdapterInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kAddressFieldNumber = 2,
+    kPoweredFieldNumber = 3,
+    kNumConnectedDevicesFieldNumber = 4,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string address = 2;
+  bool has_address() const;
+  private:
+  bool _internal_has_address() const;
+  public:
+  void clear_address();
+  const std::string& address() const;
+  void set_address(const std::string& value);
+  void set_address(std::string&& value);
+  void set_address(const char* value);
+  void set_address(const char* value, size_t size);
+  std::string* mutable_address();
+  std::string* release_address();
+  void set_allocated_address(std::string* address);
+  private:
+  const std::string& _internal_address() const;
+  void _internal_set_address(const std::string& value);
+  std::string* _internal_mutable_address();
+  public:
+
+  // optional bool powered = 3;
+  bool has_powered() const;
+  private:
+  bool _internal_has_powered() const;
+  public:
+  void clear_powered();
+  bool powered() const;
+  void set_powered(bool value);
+  private:
+  bool _internal_powered() const;
+  void _internal_set_powered(bool value);
+  public:
+
+  // optional uint32 num_connected_devices = 4;
+  bool has_num_connected_devices() const;
+  private:
+  bool _internal_has_num_connected_devices() const;
+  public:
+  void clear_num_connected_devices();
+  ::PROTOBUF_NAMESPACE_ID::uint32 num_connected_devices() const;
+  void set_num_connected_devices(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_num_connected_devices() const;
+  void _internal_set_num_connected_devices(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BluetoothAdapterInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr address_;
+  bool powered_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 num_connected_devices_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SmbiosInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SmbiosInfo) */ {
+ public:
+  SmbiosInfo();
+  virtual ~SmbiosInfo();
+
+  SmbiosInfo(const SmbiosInfo& from);
+  SmbiosInfo(SmbiosInfo&& from) noexcept
+    : SmbiosInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline SmbiosInfo& operator=(const SmbiosInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SmbiosInfo& operator=(SmbiosInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SmbiosInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SmbiosInfo* internal_default_instance() {
+    return reinterpret_cast<const SmbiosInfo*>(
+               &_SmbiosInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    58;
+
+  friend void swap(SmbiosInfo& a, SmbiosInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SmbiosInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SmbiosInfo* New() const final {
+    return CreateMaybeMessage<SmbiosInfo>(nullptr);
+  }
+
+  SmbiosInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SmbiosInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SmbiosInfo& from);
+  void MergeFrom(const SmbiosInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SmbiosInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SmbiosInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSysVendorFieldNumber = 1,
+    kProductNameFieldNumber = 2,
+    kProductVersionFieldNumber = 3,
+    kBiosVersionFieldNumber = 4,
+  };
+  // optional string sys_vendor = 1;
+  bool has_sys_vendor() const;
+  private:
+  bool _internal_has_sys_vendor() const;
+  public:
+  void clear_sys_vendor();
+  const std::string& sys_vendor() const;
+  void set_sys_vendor(const std::string& value);
+  void set_sys_vendor(std::string&& value);
+  void set_sys_vendor(const char* value);
+  void set_sys_vendor(const char* value, size_t size);
+  std::string* mutable_sys_vendor();
+  std::string* release_sys_vendor();
+  void set_allocated_sys_vendor(std::string* sys_vendor);
+  private:
+  const std::string& _internal_sys_vendor() const;
+  void _internal_set_sys_vendor(const std::string& value);
+  std::string* _internal_mutable_sys_vendor();
+  public:
+
+  // optional string product_name = 2;
+  bool has_product_name() const;
+  private:
+  bool _internal_has_product_name() const;
+  public:
+  void clear_product_name();
+  const std::string& product_name() const;
+  void set_product_name(const std::string& value);
+  void set_product_name(std::string&& value);
+  void set_product_name(const char* value);
+  void set_product_name(const char* value, size_t size);
+  std::string* mutable_product_name();
+  std::string* release_product_name();
+  void set_allocated_product_name(std::string* product_name);
+  private:
+  const std::string& _internal_product_name() const;
+  void _internal_set_product_name(const std::string& value);
+  std::string* _internal_mutable_product_name();
+  public:
+
+  // optional string product_version = 3;
+  bool has_product_version() const;
+  private:
+  bool _internal_has_product_version() const;
+  public:
+  void clear_product_version();
+  const std::string& product_version() const;
+  void set_product_version(const std::string& value);
+  void set_product_version(std::string&& value);
+  void set_product_version(const char* value);
+  void set_product_version(const char* value, size_t size);
+  std::string* mutable_product_version();
+  std::string* release_product_version();
+  void set_allocated_product_version(std::string* product_version);
+  private:
+  const std::string& _internal_product_version() const;
+  void _internal_set_product_version(const std::string& value);
+  std::string* _internal_mutable_product_version();
+  public:
+
+  // optional string bios_version = 4;
+  bool has_bios_version() const;
+  private:
+  bool _internal_has_bios_version() const;
+  public:
+  void clear_bios_version();
+  const std::string& bios_version() const;
+  void set_bios_version(const std::string& value);
+  void set_bios_version(std::string&& value);
+  void set_bios_version(const char* value);
+  void set_bios_version(const char* value, size_t size);
+  std::string* mutable_bios_version();
+  std::string* release_bios_version();
+  void set_allocated_bios_version(std::string* bios_version);
+  private:
+  const std::string& _internal_bios_version() const;
+  void _internal_set_bios_version(const std::string& value);
+  std::string* _internal_mutable_bios_version();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SmbiosInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr sys_vendor_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr product_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr product_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr bios_version_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class KernelParameters :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.KernelParameters) */ {
+ public:
+  KernelParameters();
+  virtual ~KernelParameters();
+
+  KernelParameters(const KernelParameters& from);
+  KernelParameters(KernelParameters&& from) noexcept
+    : KernelParameters() {
+    *this = ::std::move(from);
+  }
+
+  inline KernelParameters& operator=(const KernelParameters& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline KernelParameters& operator=(KernelParameters&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const KernelParameters& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const KernelParameters* internal_default_instance() {
+    return reinterpret_cast<const KernelParameters*>(
+               &_KernelParameters_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    59;
+
+  friend void swap(KernelParameters& a, KernelParameters& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(KernelParameters* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline KernelParameters* New() const final {
+    return CreateMaybeMessage<KernelParameters>(nullptr);
+  }
+
+  KernelParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<KernelParameters>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const KernelParameters& from);
+  void MergeFrom(const KernelParameters& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(KernelParameters* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.KernelParameters";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCrosEfiFieldNumber = 1,
+  };
+  // optional bool cros_efi = 1;
+  bool has_cros_efi() const;
+  private:
+  bool _internal_has_cros_efi() const;
+  public:
+  void clear_cros_efi();
+  bool cros_efi() const;
+  void set_cros_efi(bool value);
+  private:
+  bool _internal_cros_efi() const;
+  void _internal_set_cros_efi(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.KernelParameters)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool cros_efi_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class EFIVars :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.EFIVars) */ {
+ public:
+  EFIVars();
+  virtual ~EFIVars();
+
+  EFIVars(const EFIVars& from);
+  EFIVars(EFIVars&& from) noexcept
+    : EFIVars() {
+    *this = ::std::move(from);
+  }
+
+  inline EFIVars& operator=(const EFIVars& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline EFIVars& operator=(EFIVars&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const EFIVars& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const EFIVars* internal_default_instance() {
+    return reinterpret_cast<const EFIVars*>(
+               &_EFIVars_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    60;
+
+  friend void swap(EFIVars& a, EFIVars& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(EFIVars* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline EFIVars* New() const final {
+    return CreateMaybeMessage<EFIVars>(nullptr);
+  }
+
+  EFIVars* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<EFIVars>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const EFIVars& from);
+  void MergeFrom(const EFIVars& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(EFIVars* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.EFIVars";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSecureBootFieldNumber = 1,
+  };
+  // optional bool secure_boot = 1;
+  bool has_secure_boot() const;
+  private:
+  bool _internal_has_secure_boot() const;
+  public:
+  void clear_secure_boot();
+  bool secure_boot() const;
+  void set_secure_boot(bool value);
+  private:
+  bool _internal_secure_boot() const;
+  void _internal_set_secure_boot(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.EFIVars)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool secure_boot_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BootInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BootInfo) */ {
+ public:
+  BootInfo();
+  virtual ~BootInfo();
+
+  BootInfo(const BootInfo& from);
+  BootInfo(BootInfo&& from) noexcept
+    : BootInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline BootInfo& operator=(const BootInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BootInfo& operator=(BootInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BootInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BootInfo* internal_default_instance() {
+    return reinterpret_cast<const BootInfo*>(
+               &_BootInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    61;
+
+  friend void swap(BootInfo& a, BootInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BootInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BootInfo* New() const final {
+    return CreateMaybeMessage<BootInfo>(nullptr);
+  }
+
+  BootInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BootInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BootInfo& from);
+  void MergeFrom(const BootInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BootInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BootInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef BootInfo_BootMethod BootMethod;
+  static constexpr BootMethod UNKNOWN =
+    BootInfo_BootMethod_UNKNOWN;
+  static constexpr BootMethod CROS_SECURE =
+    BootInfo_BootMethod_CROS_SECURE;
+  static constexpr BootMethod CROS_UEFI =
+    BootInfo_BootMethod_CROS_UEFI;
+  static constexpr BootMethod CROS_LEGACY =
+    BootInfo_BootMethod_CROS_LEGACY;
+  static constexpr BootMethod CROS_EFI_SECURE =
+    BootInfo_BootMethod_CROS_EFI_SECURE;
+  static inline bool BootMethod_IsValid(int value) {
+    return BootInfo_BootMethod_IsValid(value);
+  }
+  static constexpr BootMethod BootMethod_MIN =
+    BootInfo_BootMethod_BootMethod_MIN;
+  static constexpr BootMethod BootMethod_MAX =
+    BootInfo_BootMethod_BootMethod_MAX;
+  static constexpr int BootMethod_ARRAYSIZE =
+    BootInfo_BootMethod_BootMethod_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& BootMethod_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, BootMethod>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function BootMethod_Name.");
+    return BootInfo_BootMethod_Name(enum_t_value);
+  }
+  static inline bool BootMethod_Parse(const std::string& name,
+      BootMethod* value) {
+    return BootInfo_BootMethod_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBootMethodFieldNumber = 1,
+    kSecureBootFieldNumber = 2,
+  };
+  // optional .enterprise_management.BootInfo.BootMethod boot_method = 1;
+  bool has_boot_method() const;
+  private:
+  bool _internal_has_boot_method() const;
+  public:
+  void clear_boot_method();
+  ::enterprise_management::BootInfo_BootMethod boot_method() const;
+  void set_boot_method(::enterprise_management::BootInfo_BootMethod value);
+  private:
+  ::enterprise_management::BootInfo_BootMethod _internal_boot_method() const;
+  void _internal_set_boot_method(::enterprise_management::BootInfo_BootMethod value);
+  public:
+
+  // optional bool secure_boot = 2 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_secure_boot() const;
+  private:
+  bool _internal_has_secure_boot() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_secure_boot();
+  PROTOBUF_DEPRECATED bool secure_boot() const;
+  PROTOBUF_DEPRECATED void set_secure_boot(bool value);
+  private:
+  bool _internal_secure_boot() const;
+  void _internal_set_secure_boot(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BootInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int boot_method_;
+  bool secure_boot_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class NetworkAdapterInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.NetworkAdapterInfo) */ {
+ public:
+  NetworkAdapterInfo();
+  virtual ~NetworkAdapterInfo();
+
+  NetworkAdapterInfo(const NetworkAdapterInfo& from);
+  NetworkAdapterInfo(NetworkAdapterInfo&& from) noexcept
+    : NetworkAdapterInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline NetworkAdapterInfo& operator=(const NetworkAdapterInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline NetworkAdapterInfo& operator=(NetworkAdapterInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const NetworkAdapterInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const NetworkAdapterInfo* internal_default_instance() {
+    return reinterpret_cast<const NetworkAdapterInfo*>(
+               &_NetworkAdapterInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    62;
+
+  friend void swap(NetworkAdapterInfo& a, NetworkAdapterInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(NetworkAdapterInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline NetworkAdapterInfo* New() const final {
+    return CreateMaybeMessage<NetworkAdapterInfo>(nullptr);
+  }
+
+  NetworkAdapterInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<NetworkAdapterInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const NetworkAdapterInfo& from);
+  void MergeFrom(const NetworkAdapterInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(NetworkAdapterInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.NetworkAdapterInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDriverFieldNumber = 7,
+    kVendorNameFieldNumber = 4,
+    kDeviceNameFieldNumber = 6,
+    kDeviceClassFieldNumber = 1,
+    kBusTypeFieldNumber = 2,
+    kVendorIdFieldNumber = 3,
+    kDeviceIdFieldNumber = 5,
+  };
+  // repeated string driver = 7;
+  int driver_size() const;
+  private:
+  int _internal_driver_size() const;
+  public:
+  void clear_driver();
+  const std::string& driver(int index) const;
+  std::string* mutable_driver(int index);
+  void set_driver(int index, const std::string& value);
+  void set_driver(int index, std::string&& value);
+  void set_driver(int index, const char* value);
+  void set_driver(int index, const char* value, size_t size);
+  std::string* add_driver();
+  void add_driver(const std::string& value);
+  void add_driver(std::string&& value);
+  void add_driver(const char* value);
+  void add_driver(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& driver() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_driver();
+  private:
+  const std::string& _internal_driver(int index) const;
+  std::string* _internal_add_driver();
+  public:
+
+  // optional string vendor_name = 4;
+  bool has_vendor_name() const;
+  private:
+  bool _internal_has_vendor_name() const;
+  public:
+  void clear_vendor_name();
+  const std::string& vendor_name() const;
+  void set_vendor_name(const std::string& value);
+  void set_vendor_name(std::string&& value);
+  void set_vendor_name(const char* value);
+  void set_vendor_name(const char* value, size_t size);
+  std::string* mutable_vendor_name();
+  std::string* release_vendor_name();
+  void set_allocated_vendor_name(std::string* vendor_name);
+  private:
+  const std::string& _internal_vendor_name() const;
+  void _internal_set_vendor_name(const std::string& value);
+  std::string* _internal_mutable_vendor_name();
+  public:
+
+  // optional string device_name = 6;
+  bool has_device_name() const;
+  private:
+  bool _internal_has_device_name() const;
+  public:
+  void clear_device_name();
+  const std::string& device_name() const;
+  void set_device_name(const std::string& value);
+  void set_device_name(std::string&& value);
+  void set_device_name(const char* value);
+  void set_device_name(const char* value, size_t size);
+  std::string* mutable_device_name();
+  std::string* release_device_name();
+  void set_allocated_device_name(std::string* device_name);
+  private:
+  const std::string& _internal_device_name() const;
+  void _internal_set_device_name(const std::string& value);
+  std::string* _internal_mutable_device_name();
+  public:
+
+  // optional .enterprise_management.BusDeviceClass device_class = 1;
+  bool has_device_class() const;
+  private:
+  bool _internal_has_device_class() const;
+  public:
+  void clear_device_class();
+  ::enterprise_management::BusDeviceClass device_class() const;
+  void set_device_class(::enterprise_management::BusDeviceClass value);
+  private:
+  ::enterprise_management::BusDeviceClass _internal_device_class() const;
+  void _internal_set_device_class(::enterprise_management::BusDeviceClass value);
+  public:
+
+  // optional .enterprise_management.BusType bus_type = 2;
+  bool has_bus_type() const;
+  private:
+  bool _internal_has_bus_type() const;
+  public:
+  void clear_bus_type();
+  ::enterprise_management::BusType bus_type() const;
+  void set_bus_type(::enterprise_management::BusType value);
+  private:
+  ::enterprise_management::BusType _internal_bus_type() const;
+  void _internal_set_bus_type(::enterprise_management::BusType value);
+  public:
+
+  // optional int32 vendor_id = 3;
+  bool has_vendor_id() const;
+  private:
+  bool _internal_has_vendor_id() const;
+  public:
+  void clear_vendor_id();
+  ::PROTOBUF_NAMESPACE_ID::int32 vendor_id() const;
+  void set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vendor_id() const;
+  void _internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 device_id = 5;
+  bool has_device_id() const;
+  private:
+  bool _internal_has_device_id() const;
+  public:
+  void clear_device_id();
+  ::PROTOBUF_NAMESPACE_ID::int32 device_id() const;
+  void set_device_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_device_id() const;
+  void _internal_set_device_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.NetworkAdapterInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> driver_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr vendor_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_name_;
+  int device_class_;
+  int bus_type_;
+  ::PROTOBUF_NAMESPACE_ID::int32 vendor_id_;
+  ::PROTOBUF_NAMESPACE_ID::int32 device_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LaCrOsBrowserReport :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LaCrOsBrowserReport) */ {
+ public:
+  LaCrOsBrowserReport();
+  virtual ~LaCrOsBrowserReport();
+
+  LaCrOsBrowserReport(const LaCrOsBrowserReport& from);
+  LaCrOsBrowserReport(LaCrOsBrowserReport&& from) noexcept
+    : LaCrOsBrowserReport() {
+    *this = ::std::move(from);
+  }
+
+  inline LaCrOsBrowserReport& operator=(const LaCrOsBrowserReport& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LaCrOsBrowserReport& operator=(LaCrOsBrowserReport&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LaCrOsBrowserReport& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LaCrOsBrowserReport* internal_default_instance() {
+    return reinterpret_cast<const LaCrOsBrowserReport*>(
+               &_LaCrOsBrowserReport_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    63;
+
+  friend void swap(LaCrOsBrowserReport& a, LaCrOsBrowserReport& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LaCrOsBrowserReport* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LaCrOsBrowserReport* New() const final {
+    return CreateMaybeMessage<LaCrOsBrowserReport>(nullptr);
+  }
+
+  LaCrOsBrowserReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LaCrOsBrowserReport>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LaCrOsBrowserReport& from);
+  void MergeFrom(const LaCrOsBrowserReport& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LaCrOsBrowserReport* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LaCrOsBrowserReport";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceUserFieldNumber = 1,
+    kBrowserReportFieldNumber = 2,
+  };
+  // optional .enterprise_management.DeviceUser device_user = 1;
+  bool has_device_user() const;
+  private:
+  bool _internal_has_device_user() const;
+  public:
+  void clear_device_user();
+  const ::enterprise_management::DeviceUser& device_user() const;
+  ::enterprise_management::DeviceUser* release_device_user();
+  ::enterprise_management::DeviceUser* mutable_device_user();
+  void set_allocated_device_user(::enterprise_management::DeviceUser* device_user);
+  private:
+  const ::enterprise_management::DeviceUser& _internal_device_user() const;
+  ::enterprise_management::DeviceUser* _internal_mutable_device_user();
+  public:
+
+  // optional .enterprise_management.BrowserReport browser_report = 2;
+  bool has_browser_report() const;
+  private:
+  bool _internal_has_browser_report() const;
+  public:
+  void clear_browser_report();
+  const ::enterprise_management::BrowserReport& browser_report() const;
+  ::enterprise_management::BrowserReport* release_browser_report();
+  ::enterprise_management::BrowserReport* mutable_browser_report();
+  void set_allocated_browser_report(::enterprise_management::BrowserReport* browser_report);
+  private:
+  const ::enterprise_management::BrowserReport& _internal_browser_report() const;
+  ::enterprise_management::BrowserReport* _internal_mutable_browser_report();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LaCrOsBrowserReport)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::DeviceUser* device_user_;
+  ::enterprise_management::BrowserReport* browser_report_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceStatusReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceStatusReportRequest) */ {
+ public:
+  DeviceStatusReportRequest();
+  virtual ~DeviceStatusReportRequest();
+
+  DeviceStatusReportRequest(const DeviceStatusReportRequest& from);
+  DeviceStatusReportRequest(DeviceStatusReportRequest&& from) noexcept
+    : DeviceStatusReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceStatusReportRequest& operator=(const DeviceStatusReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceStatusReportRequest& operator=(DeviceStatusReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceStatusReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceStatusReportRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceStatusReportRequest*>(
+               &_DeviceStatusReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    64;
+
+  friend void swap(DeviceStatusReportRequest& a, DeviceStatusReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceStatusReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceStatusReportRequest* New() const final {
+    return CreateMaybeMessage<DeviceStatusReportRequest>(nullptr);
+  }
+
+  DeviceStatusReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceStatusReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceStatusReportRequest& from);
+  void MergeFrom(const DeviceStatusReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceStatusReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceStatusReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kActivePeriodsFieldNumber = 6,
+    kNetworkInterfacesFieldNumber = 8,
+    kUsersFieldNumber = 9,
+    kVolumeInfosFieldNumber = 10,
+    kNetworkStatesFieldNumber = 11,
+    kCpuUtilizationPctSamplesFieldNumber = 12,
+    kSystemRamFreeSamplesFieldNumber = 15,
+    kCpuTempInfosFieldNumber = 16,
+    kCpuUtilizationInfosFieldNumber = 30,
+    kSystemRamFreeInfosFieldNumber = 31,
+    kCpuInfoFieldNumber = 32,
+    kCrashReportInfosFieldNumber = 34,
+    kBacklightInfoFieldNumber = 37,
+    kFanInfoFieldNumber = 38,
+    kBluetoothAdapterInfoFieldNumber = 40,
+    kNetworkAdapterInfoFieldNumber = 45,
+    kLacrosBrowserReportFieldNumber = 46,
+    kOsVersionFieldNumber = 1,
+    kFirmwareVersionFieldNumber = 2,
+    kBootModeFieldNumber = 3,
+    kBrowserVersionFieldNumber = 5,
+    kOsUpdateStatusFieldNumber = 17,
+    kRunningKioskAppFieldNumber = 18,
+    kTpmVersionInfoFieldNumber = 21,
+    kTpmStatusInfoFieldNumber = 23,
+    kPowerStatusFieldNumber = 25,
+    kStorageStatusFieldNumber = 26,
+    kBoardStatusFieldNumber = 27,
+    kSystemStatusFieldNumber = 28,
+    kStatefulPartitionInfoFieldNumber = 29,
+    kGraphicsStatusFieldNumber = 33,
+    kTimezoneInfoFieldNumber = 35,
+    kMemoryInfoFieldNumber = 36,
+    kGlobalCpuInfoFieldNumber = 39,
+    kSmbiosInfoFieldNumber = 41,
+    kKernelParametersFieldNumber = 42,
+    kEfiVarsFieldNumber = 43,
+    kBootInfoFieldNumber = 44,
+    kSystemRamTotalFieldNumber = 14,
+    kSoundVolumeFieldNumber = 19,
+    kChannelFieldNumber = 22,
+    kWriteProtectSwitchFieldNumber = 24,
+  };
+  // repeated .enterprise_management.ActiveTimePeriod active_periods = 6;
+  int active_periods_size() const;
+  private:
+  int _internal_active_periods_size() const;
+  public:
+  void clear_active_periods();
+  ::enterprise_management::ActiveTimePeriod* mutable_active_periods(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ActiveTimePeriod >*
+      mutable_active_periods();
+  private:
+  const ::enterprise_management::ActiveTimePeriod& _internal_active_periods(int index) const;
+  ::enterprise_management::ActiveTimePeriod* _internal_add_active_periods();
+  public:
+  const ::enterprise_management::ActiveTimePeriod& active_periods(int index) const;
+  ::enterprise_management::ActiveTimePeriod* add_active_periods();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ActiveTimePeriod >&
+      active_periods() const;
+
+  // repeated .enterprise_management.NetworkInterface network_interfaces = 8;
+  int network_interfaces_size() const;
+  private:
+  int _internal_network_interfaces_size() const;
+  public:
+  void clear_network_interfaces();
+  ::enterprise_management::NetworkInterface* mutable_network_interfaces(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkInterface >*
+      mutable_network_interfaces();
+  private:
+  const ::enterprise_management::NetworkInterface& _internal_network_interfaces(int index) const;
+  ::enterprise_management::NetworkInterface* _internal_add_network_interfaces();
+  public:
+  const ::enterprise_management::NetworkInterface& network_interfaces(int index) const;
+  ::enterprise_management::NetworkInterface* add_network_interfaces();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkInterface >&
+      network_interfaces() const;
+
+  // repeated .enterprise_management.DeviceUser users = 9;
+  int users_size() const;
+  private:
+  int _internal_users_size() const;
+  public:
+  void clear_users();
+  ::enterprise_management::DeviceUser* mutable_users(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceUser >*
+      mutable_users();
+  private:
+  const ::enterprise_management::DeviceUser& _internal_users(int index) const;
+  ::enterprise_management::DeviceUser* _internal_add_users();
+  public:
+  const ::enterprise_management::DeviceUser& users(int index) const;
+  ::enterprise_management::DeviceUser* add_users();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceUser >&
+      users() const;
+
+  // repeated .enterprise_management.VolumeInfo volume_infos = 10;
+  int volume_infos_size() const;
+  private:
+  int _internal_volume_infos_size() const;
+  public:
+  void clear_volume_infos();
+  ::enterprise_management::VolumeInfo* mutable_volume_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo >*
+      mutable_volume_infos();
+  private:
+  const ::enterprise_management::VolumeInfo& _internal_volume_infos(int index) const;
+  ::enterprise_management::VolumeInfo* _internal_add_volume_infos();
+  public:
+  const ::enterprise_management::VolumeInfo& volume_infos(int index) const;
+  ::enterprise_management::VolumeInfo* add_volume_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo >&
+      volume_infos() const;
+
+  // repeated .enterprise_management.NetworkState network_states = 11;
+  int network_states_size() const;
+  private:
+  int _internal_network_states_size() const;
+  public:
+  void clear_network_states();
+  ::enterprise_management::NetworkState* mutable_network_states(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkState >*
+      mutable_network_states();
+  private:
+  const ::enterprise_management::NetworkState& _internal_network_states(int index) const;
+  ::enterprise_management::NetworkState* _internal_add_network_states();
+  public:
+  const ::enterprise_management::NetworkState& network_states(int index) const;
+  ::enterprise_management::NetworkState* add_network_states();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkState >&
+      network_states() const;
+
+  // repeated int32 cpu_utilization_pct_samples = 12 [deprecated = true];
+  PROTOBUF_DEPRECATED int cpu_utilization_pct_samples_size() const;
+  private:
+  int _internal_cpu_utilization_pct_samples_size() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_cpu_utilization_pct_samples();
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_cpu_utilization_pct_samples(int index) const;
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+      _internal_cpu_utilization_pct_samples() const;
+  void _internal_add_cpu_utilization_pct_samples(::PROTOBUF_NAMESPACE_ID::int32 value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+      _internal_mutable_cpu_utilization_pct_samples();
+  public:
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::int32 cpu_utilization_pct_samples(int index) const;
+  PROTOBUF_DEPRECATED void set_cpu_utilization_pct_samples(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
+  PROTOBUF_DEPRECATED void add_cpu_utilization_pct_samples(::PROTOBUF_NAMESPACE_ID::int32 value);
+  PROTOBUF_DEPRECATED const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+      cpu_utilization_pct_samples() const;
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+      mutable_cpu_utilization_pct_samples();
+
+  // repeated int64 system_ram_free_samples = 15 [deprecated = true];
+  PROTOBUF_DEPRECATED int system_ram_free_samples_size() const;
+  private:
+  int _internal_system_ram_free_samples_size() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_system_ram_free_samples();
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_system_ram_free_samples(int index) const;
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
+      _internal_system_ram_free_samples() const;
+  void _internal_add_system_ram_free_samples(::PROTOBUF_NAMESPACE_ID::int64 value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
+      _internal_mutable_system_ram_free_samples();
+  public:
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::int64 system_ram_free_samples(int index) const;
+  PROTOBUF_DEPRECATED void set_system_ram_free_samples(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
+  PROTOBUF_DEPRECATED void add_system_ram_free_samples(::PROTOBUF_NAMESPACE_ID::int64 value);
+  PROTOBUF_DEPRECATED const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
+      system_ram_free_samples() const;
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
+      mutable_system_ram_free_samples();
+
+  // repeated .enterprise_management.CPUTempInfo cpu_temp_infos = 16;
+  int cpu_temp_infos_size() const;
+  private:
+  int _internal_cpu_temp_infos_size() const;
+  public:
+  void clear_cpu_temp_infos();
+  ::enterprise_management::CPUTempInfo* mutable_cpu_temp_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CPUTempInfo >*
+      mutable_cpu_temp_infos();
+  private:
+  const ::enterprise_management::CPUTempInfo& _internal_cpu_temp_infos(int index) const;
+  ::enterprise_management::CPUTempInfo* _internal_add_cpu_temp_infos();
+  public:
+  const ::enterprise_management::CPUTempInfo& cpu_temp_infos(int index) const;
+  ::enterprise_management::CPUTempInfo* add_cpu_temp_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CPUTempInfo >&
+      cpu_temp_infos() const;
+
+  // repeated .enterprise_management.CpuUtilizationInfo cpu_utilization_infos = 30;
+  int cpu_utilization_infos_size() const;
+  private:
+  int _internal_cpu_utilization_infos_size() const;
+  public:
+  void clear_cpu_utilization_infos();
+  ::enterprise_management::CpuUtilizationInfo* mutable_cpu_utilization_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuUtilizationInfo >*
+      mutable_cpu_utilization_infos();
+  private:
+  const ::enterprise_management::CpuUtilizationInfo& _internal_cpu_utilization_infos(int index) const;
+  ::enterprise_management::CpuUtilizationInfo* _internal_add_cpu_utilization_infos();
+  public:
+  const ::enterprise_management::CpuUtilizationInfo& cpu_utilization_infos(int index) const;
+  ::enterprise_management::CpuUtilizationInfo* add_cpu_utilization_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuUtilizationInfo >&
+      cpu_utilization_infos() const;
+
+  // repeated .enterprise_management.SystemFreeRamInfo system_ram_free_infos = 31;
+  int system_ram_free_infos_size() const;
+  private:
+  int _internal_system_ram_free_infos_size() const;
+  public:
+  void clear_system_ram_free_infos();
+  ::enterprise_management::SystemFreeRamInfo* mutable_system_ram_free_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SystemFreeRamInfo >*
+      mutable_system_ram_free_infos();
+  private:
+  const ::enterprise_management::SystemFreeRamInfo& _internal_system_ram_free_infos(int index) const;
+  ::enterprise_management::SystemFreeRamInfo* _internal_add_system_ram_free_infos();
+  public:
+  const ::enterprise_management::SystemFreeRamInfo& system_ram_free_infos(int index) const;
+  ::enterprise_management::SystemFreeRamInfo* add_system_ram_free_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SystemFreeRamInfo >&
+      system_ram_free_infos() const;
+
+  // repeated .enterprise_management.CpuInfo cpu_info = 32;
+  int cpu_info_size() const;
+  private:
+  int _internal_cpu_info_size() const;
+  public:
+  void clear_cpu_info();
+  ::enterprise_management::CpuInfo* mutable_cpu_info(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuInfo >*
+      mutable_cpu_info();
+  private:
+  const ::enterprise_management::CpuInfo& _internal_cpu_info(int index) const;
+  ::enterprise_management::CpuInfo* _internal_add_cpu_info();
+  public:
+  const ::enterprise_management::CpuInfo& cpu_info(int index) const;
+  ::enterprise_management::CpuInfo* add_cpu_info();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuInfo >&
+      cpu_info() const;
+
+  // repeated .enterprise_management.CrashReportInfo crash_report_infos = 34;
+  int crash_report_infos_size() const;
+  private:
+  int _internal_crash_report_infos_size() const;
+  public:
+  void clear_crash_report_infos();
+  ::enterprise_management::CrashReportInfo* mutable_crash_report_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrashReportInfo >*
+      mutable_crash_report_infos();
+  private:
+  const ::enterprise_management::CrashReportInfo& _internal_crash_report_infos(int index) const;
+  ::enterprise_management::CrashReportInfo* _internal_add_crash_report_infos();
+  public:
+  const ::enterprise_management::CrashReportInfo& crash_report_infos(int index) const;
+  ::enterprise_management::CrashReportInfo* add_crash_report_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrashReportInfo >&
+      crash_report_infos() const;
+
+  // repeated .enterprise_management.BacklightInfo backlight_info = 37;
+  int backlight_info_size() const;
+  private:
+  int _internal_backlight_info_size() const;
+  public:
+  void clear_backlight_info();
+  ::enterprise_management::BacklightInfo* mutable_backlight_info(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BacklightInfo >*
+      mutable_backlight_info();
+  private:
+  const ::enterprise_management::BacklightInfo& _internal_backlight_info(int index) const;
+  ::enterprise_management::BacklightInfo* _internal_add_backlight_info();
+  public:
+  const ::enterprise_management::BacklightInfo& backlight_info(int index) const;
+  ::enterprise_management::BacklightInfo* add_backlight_info();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BacklightInfo >&
+      backlight_info() const;
+
+  // repeated .enterprise_management.FanInfo fan_info = 38;
+  int fan_info_size() const;
+  private:
+  int _internal_fan_info_size() const;
+  public:
+  void clear_fan_info();
+  ::enterprise_management::FanInfo* mutable_fan_info(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::FanInfo >*
+      mutable_fan_info();
+  private:
+  const ::enterprise_management::FanInfo& _internal_fan_info(int index) const;
+  ::enterprise_management::FanInfo* _internal_add_fan_info();
+  public:
+  const ::enterprise_management::FanInfo& fan_info(int index) const;
+  ::enterprise_management::FanInfo* add_fan_info();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::FanInfo >&
+      fan_info() const;
+
+  // repeated .enterprise_management.BluetoothAdapterInfo bluetooth_adapter_info = 40;
+  int bluetooth_adapter_info_size() const;
+  private:
+  int _internal_bluetooth_adapter_info_size() const;
+  public:
+  void clear_bluetooth_adapter_info();
+  ::enterprise_management::BluetoothAdapterInfo* mutable_bluetooth_adapter_info(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BluetoothAdapterInfo >*
+      mutable_bluetooth_adapter_info();
+  private:
+  const ::enterprise_management::BluetoothAdapterInfo& _internal_bluetooth_adapter_info(int index) const;
+  ::enterprise_management::BluetoothAdapterInfo* _internal_add_bluetooth_adapter_info();
+  public:
+  const ::enterprise_management::BluetoothAdapterInfo& bluetooth_adapter_info(int index) const;
+  ::enterprise_management::BluetoothAdapterInfo* add_bluetooth_adapter_info();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BluetoothAdapterInfo >&
+      bluetooth_adapter_info() const;
+
+  // repeated .enterprise_management.NetworkAdapterInfo network_adapter_info = 45;
+  int network_adapter_info_size() const;
+  private:
+  int _internal_network_adapter_info_size() const;
+  public:
+  void clear_network_adapter_info();
+  ::enterprise_management::NetworkAdapterInfo* mutable_network_adapter_info(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkAdapterInfo >*
+      mutable_network_adapter_info();
+  private:
+  const ::enterprise_management::NetworkAdapterInfo& _internal_network_adapter_info(int index) const;
+  ::enterprise_management::NetworkAdapterInfo* _internal_add_network_adapter_info();
+  public:
+  const ::enterprise_management::NetworkAdapterInfo& network_adapter_info(int index) const;
+  ::enterprise_management::NetworkAdapterInfo* add_network_adapter_info();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkAdapterInfo >&
+      network_adapter_info() const;
+
+  // repeated .enterprise_management.LaCrOsBrowserReport lacros_browser_report = 46;
+  int lacros_browser_report_size() const;
+  private:
+  int _internal_lacros_browser_report_size() const;
+  public:
+  void clear_lacros_browser_report();
+  ::enterprise_management::LaCrOsBrowserReport* mutable_lacros_browser_report(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LaCrOsBrowserReport >*
+      mutable_lacros_browser_report();
+  private:
+  const ::enterprise_management::LaCrOsBrowserReport& _internal_lacros_browser_report(int index) const;
+  ::enterprise_management::LaCrOsBrowserReport* _internal_add_lacros_browser_report();
+  public:
+  const ::enterprise_management::LaCrOsBrowserReport& lacros_browser_report(int index) const;
+  ::enterprise_management::LaCrOsBrowserReport* add_lacros_browser_report();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LaCrOsBrowserReport >&
+      lacros_browser_report() const;
+
+  // optional string os_version = 1;
+  bool has_os_version() const;
+  private:
+  bool _internal_has_os_version() const;
+  public:
+  void clear_os_version();
+  const std::string& os_version() const;
+  void set_os_version(const std::string& value);
+  void set_os_version(std::string&& value);
+  void set_os_version(const char* value);
+  void set_os_version(const char* value, size_t size);
+  std::string* mutable_os_version();
+  std::string* release_os_version();
+  void set_allocated_os_version(std::string* os_version);
+  private:
+  const std::string& _internal_os_version() const;
+  void _internal_set_os_version(const std::string& value);
+  std::string* _internal_mutable_os_version();
+  public:
+
+  // optional string firmware_version = 2;
+  bool has_firmware_version() const;
+  private:
+  bool _internal_has_firmware_version() const;
+  public:
+  void clear_firmware_version();
+  const std::string& firmware_version() const;
+  void set_firmware_version(const std::string& value);
+  void set_firmware_version(std::string&& value);
+  void set_firmware_version(const char* value);
+  void set_firmware_version(const char* value, size_t size);
+  std::string* mutable_firmware_version();
+  std::string* release_firmware_version();
+  void set_allocated_firmware_version(std::string* firmware_version);
+  private:
+  const std::string& _internal_firmware_version() const;
+  void _internal_set_firmware_version(const std::string& value);
+  std::string* _internal_mutable_firmware_version();
+  public:
+
+  // optional string boot_mode = 3;
+  bool has_boot_mode() const;
+  private:
+  bool _internal_has_boot_mode() const;
+  public:
+  void clear_boot_mode();
+  const std::string& boot_mode() const;
+  void set_boot_mode(const std::string& value);
+  void set_boot_mode(std::string&& value);
+  void set_boot_mode(const char* value);
+  void set_boot_mode(const char* value, size_t size);
+  std::string* mutable_boot_mode();
+  std::string* release_boot_mode();
+  void set_allocated_boot_mode(std::string* boot_mode);
+  private:
+  const std::string& _internal_boot_mode() const;
+  void _internal_set_boot_mode(const std::string& value);
+  std::string* _internal_mutable_boot_mode();
+  public:
+
+  // optional string browser_version = 5;
+  bool has_browser_version() const;
+  private:
+  bool _internal_has_browser_version() const;
+  public:
+  void clear_browser_version();
+  const std::string& browser_version() const;
+  void set_browser_version(const std::string& value);
+  void set_browser_version(std::string&& value);
+  void set_browser_version(const char* value);
+  void set_browser_version(const char* value, size_t size);
+  std::string* mutable_browser_version();
+  std::string* release_browser_version();
+  void set_allocated_browser_version(std::string* browser_version);
+  private:
+  const std::string& _internal_browser_version() const;
+  void _internal_set_browser_version(const std::string& value);
+  std::string* _internal_mutable_browser_version();
+  public:
+
+  // optional .enterprise_management.OsUpdateStatus os_update_status = 17;
+  bool has_os_update_status() const;
+  private:
+  bool _internal_has_os_update_status() const;
+  public:
+  void clear_os_update_status();
+  const ::enterprise_management::OsUpdateStatus& os_update_status() const;
+  ::enterprise_management::OsUpdateStatus* release_os_update_status();
+  ::enterprise_management::OsUpdateStatus* mutable_os_update_status();
+  void set_allocated_os_update_status(::enterprise_management::OsUpdateStatus* os_update_status);
+  private:
+  const ::enterprise_management::OsUpdateStatus& _internal_os_update_status() const;
+  ::enterprise_management::OsUpdateStatus* _internal_mutable_os_update_status();
+  public:
+
+  // optional .enterprise_management.AppStatus running_kiosk_app = 18;
+  bool has_running_kiosk_app() const;
+  private:
+  bool _internal_has_running_kiosk_app() const;
+  public:
+  void clear_running_kiosk_app();
+  const ::enterprise_management::AppStatus& running_kiosk_app() const;
+  ::enterprise_management::AppStatus* release_running_kiosk_app();
+  ::enterprise_management::AppStatus* mutable_running_kiosk_app();
+  void set_allocated_running_kiosk_app(::enterprise_management::AppStatus* running_kiosk_app);
+  private:
+  const ::enterprise_management::AppStatus& _internal_running_kiosk_app() const;
+  ::enterprise_management::AppStatus* _internal_mutable_running_kiosk_app();
+  public:
+
+  // optional .enterprise_management.TpmVersionInfo tpm_version_info = 21;
+  bool has_tpm_version_info() const;
+  private:
+  bool _internal_has_tpm_version_info() const;
+  public:
+  void clear_tpm_version_info();
+  const ::enterprise_management::TpmVersionInfo& tpm_version_info() const;
+  ::enterprise_management::TpmVersionInfo* release_tpm_version_info();
+  ::enterprise_management::TpmVersionInfo* mutable_tpm_version_info();
+  void set_allocated_tpm_version_info(::enterprise_management::TpmVersionInfo* tpm_version_info);
+  private:
+  const ::enterprise_management::TpmVersionInfo& _internal_tpm_version_info() const;
+  ::enterprise_management::TpmVersionInfo* _internal_mutable_tpm_version_info();
+  public:
+
+  // optional .enterprise_management.TpmStatusInfo tpm_status_info = 23;
+  bool has_tpm_status_info() const;
+  private:
+  bool _internal_has_tpm_status_info() const;
+  public:
+  void clear_tpm_status_info();
+  const ::enterprise_management::TpmStatusInfo& tpm_status_info() const;
+  ::enterprise_management::TpmStatusInfo* release_tpm_status_info();
+  ::enterprise_management::TpmStatusInfo* mutable_tpm_status_info();
+  void set_allocated_tpm_status_info(::enterprise_management::TpmStatusInfo* tpm_status_info);
+  private:
+  const ::enterprise_management::TpmStatusInfo& _internal_tpm_status_info() const;
+  ::enterprise_management::TpmStatusInfo* _internal_mutable_tpm_status_info();
+  public:
+
+  // optional .enterprise_management.PowerStatus power_status = 25;
+  bool has_power_status() const;
+  private:
+  bool _internal_has_power_status() const;
+  public:
+  void clear_power_status();
+  const ::enterprise_management::PowerStatus& power_status() const;
+  ::enterprise_management::PowerStatus* release_power_status();
+  ::enterprise_management::PowerStatus* mutable_power_status();
+  void set_allocated_power_status(::enterprise_management::PowerStatus* power_status);
+  private:
+  const ::enterprise_management::PowerStatus& _internal_power_status() const;
+  ::enterprise_management::PowerStatus* _internal_mutable_power_status();
+  public:
+
+  // optional .enterprise_management.StorageStatus storage_status = 26;
+  bool has_storage_status() const;
+  private:
+  bool _internal_has_storage_status() const;
+  public:
+  void clear_storage_status();
+  const ::enterprise_management::StorageStatus& storage_status() const;
+  ::enterprise_management::StorageStatus* release_storage_status();
+  ::enterprise_management::StorageStatus* mutable_storage_status();
+  void set_allocated_storage_status(::enterprise_management::StorageStatus* storage_status);
+  private:
+  const ::enterprise_management::StorageStatus& _internal_storage_status() const;
+  ::enterprise_management::StorageStatus* _internal_mutable_storage_status();
+  public:
+
+  // optional .enterprise_management.BoardStatus board_status = 27;
+  bool has_board_status() const;
+  private:
+  bool _internal_has_board_status() const;
+  public:
+  void clear_board_status();
+  const ::enterprise_management::BoardStatus& board_status() const;
+  ::enterprise_management::BoardStatus* release_board_status();
+  ::enterprise_management::BoardStatus* mutable_board_status();
+  void set_allocated_board_status(::enterprise_management::BoardStatus* board_status);
+  private:
+  const ::enterprise_management::BoardStatus& _internal_board_status() const;
+  ::enterprise_management::BoardStatus* _internal_mutable_board_status();
+  public:
+
+  // optional .enterprise_management.SystemStatus system_status = 28;
+  bool has_system_status() const;
+  private:
+  bool _internal_has_system_status() const;
+  public:
+  void clear_system_status();
+  const ::enterprise_management::SystemStatus& system_status() const;
+  ::enterprise_management::SystemStatus* release_system_status();
+  ::enterprise_management::SystemStatus* mutable_system_status();
+  void set_allocated_system_status(::enterprise_management::SystemStatus* system_status);
+  private:
+  const ::enterprise_management::SystemStatus& _internal_system_status() const;
+  ::enterprise_management::SystemStatus* _internal_mutable_system_status();
+  public:
+
+  // optional .enterprise_management.StatefulPartitionInfo stateful_partition_info = 29;
+  bool has_stateful_partition_info() const;
+  private:
+  bool _internal_has_stateful_partition_info() const;
+  public:
+  void clear_stateful_partition_info();
+  const ::enterprise_management::StatefulPartitionInfo& stateful_partition_info() const;
+  ::enterprise_management::StatefulPartitionInfo* release_stateful_partition_info();
+  ::enterprise_management::StatefulPartitionInfo* mutable_stateful_partition_info();
+  void set_allocated_stateful_partition_info(::enterprise_management::StatefulPartitionInfo* stateful_partition_info);
+  private:
+  const ::enterprise_management::StatefulPartitionInfo& _internal_stateful_partition_info() const;
+  ::enterprise_management::StatefulPartitionInfo* _internal_mutable_stateful_partition_info();
+  public:
+
+  // optional .enterprise_management.GraphicsStatus graphics_status = 33;
+  bool has_graphics_status() const;
+  private:
+  bool _internal_has_graphics_status() const;
+  public:
+  void clear_graphics_status();
+  const ::enterprise_management::GraphicsStatus& graphics_status() const;
+  ::enterprise_management::GraphicsStatus* release_graphics_status();
+  ::enterprise_management::GraphicsStatus* mutable_graphics_status();
+  void set_allocated_graphics_status(::enterprise_management::GraphicsStatus* graphics_status);
+  private:
+  const ::enterprise_management::GraphicsStatus& _internal_graphics_status() const;
+  ::enterprise_management::GraphicsStatus* _internal_mutable_graphics_status();
+  public:
+
+  // optional .enterprise_management.TimezoneInfo timezone_info = 35;
+  bool has_timezone_info() const;
+  private:
+  bool _internal_has_timezone_info() const;
+  public:
+  void clear_timezone_info();
+  const ::enterprise_management::TimezoneInfo& timezone_info() const;
+  ::enterprise_management::TimezoneInfo* release_timezone_info();
+  ::enterprise_management::TimezoneInfo* mutable_timezone_info();
+  void set_allocated_timezone_info(::enterprise_management::TimezoneInfo* timezone_info);
+  private:
+  const ::enterprise_management::TimezoneInfo& _internal_timezone_info() const;
+  ::enterprise_management::TimezoneInfo* _internal_mutable_timezone_info();
+  public:
+
+  // optional .enterprise_management.MemoryInfo memory_info = 36;
+  bool has_memory_info() const;
+  private:
+  bool _internal_has_memory_info() const;
+  public:
+  void clear_memory_info();
+  const ::enterprise_management::MemoryInfo& memory_info() const;
+  ::enterprise_management::MemoryInfo* release_memory_info();
+  ::enterprise_management::MemoryInfo* mutable_memory_info();
+  void set_allocated_memory_info(::enterprise_management::MemoryInfo* memory_info);
+  private:
+  const ::enterprise_management::MemoryInfo& _internal_memory_info() const;
+  ::enterprise_management::MemoryInfo* _internal_mutable_memory_info();
+  public:
+
+  // optional .enterprise_management.GlobalCpuInfo global_cpu_info = 39;
+  bool has_global_cpu_info() const;
+  private:
+  bool _internal_has_global_cpu_info() const;
+  public:
+  void clear_global_cpu_info();
+  const ::enterprise_management::GlobalCpuInfo& global_cpu_info() const;
+  ::enterprise_management::GlobalCpuInfo* release_global_cpu_info();
+  ::enterprise_management::GlobalCpuInfo* mutable_global_cpu_info();
+  void set_allocated_global_cpu_info(::enterprise_management::GlobalCpuInfo* global_cpu_info);
+  private:
+  const ::enterprise_management::GlobalCpuInfo& _internal_global_cpu_info() const;
+  ::enterprise_management::GlobalCpuInfo* _internal_mutable_global_cpu_info();
+  public:
+
+  // optional .enterprise_management.SmbiosInfo smbios_info = 41;
+  bool has_smbios_info() const;
+  private:
+  bool _internal_has_smbios_info() const;
+  public:
+  void clear_smbios_info();
+  const ::enterprise_management::SmbiosInfo& smbios_info() const;
+  ::enterprise_management::SmbiosInfo* release_smbios_info();
+  ::enterprise_management::SmbiosInfo* mutable_smbios_info();
+  void set_allocated_smbios_info(::enterprise_management::SmbiosInfo* smbios_info);
+  private:
+  const ::enterprise_management::SmbiosInfo& _internal_smbios_info() const;
+  ::enterprise_management::SmbiosInfo* _internal_mutable_smbios_info();
+  public:
+
+  // optional .enterprise_management.KernelParameters kernel_parameters = 42;
+  bool has_kernel_parameters() const;
+  private:
+  bool _internal_has_kernel_parameters() const;
+  public:
+  void clear_kernel_parameters();
+  const ::enterprise_management::KernelParameters& kernel_parameters() const;
+  ::enterprise_management::KernelParameters* release_kernel_parameters();
+  ::enterprise_management::KernelParameters* mutable_kernel_parameters();
+  void set_allocated_kernel_parameters(::enterprise_management::KernelParameters* kernel_parameters);
+  private:
+  const ::enterprise_management::KernelParameters& _internal_kernel_parameters() const;
+  ::enterprise_management::KernelParameters* _internal_mutable_kernel_parameters();
+  public:
+
+  // optional .enterprise_management.EFIVars efi_vars = 43;
+  bool has_efi_vars() const;
+  private:
+  bool _internal_has_efi_vars() const;
+  public:
+  void clear_efi_vars();
+  const ::enterprise_management::EFIVars& efi_vars() const;
+  ::enterprise_management::EFIVars* release_efi_vars();
+  ::enterprise_management::EFIVars* mutable_efi_vars();
+  void set_allocated_efi_vars(::enterprise_management::EFIVars* efi_vars);
+  private:
+  const ::enterprise_management::EFIVars& _internal_efi_vars() const;
+  ::enterprise_management::EFIVars* _internal_mutable_efi_vars();
+  public:
+
+  // optional .enterprise_management.BootInfo boot_info = 44;
+  bool has_boot_info() const;
+  private:
+  bool _internal_has_boot_info() const;
+  public:
+  void clear_boot_info();
+  const ::enterprise_management::BootInfo& boot_info() const;
+  ::enterprise_management::BootInfo* release_boot_info();
+  ::enterprise_management::BootInfo* mutable_boot_info();
+  void set_allocated_boot_info(::enterprise_management::BootInfo* boot_info);
+  private:
+  const ::enterprise_management::BootInfo& _internal_boot_info() const;
+  ::enterprise_management::BootInfo* _internal_mutable_boot_info();
+  public:
+
+  // optional int64 system_ram_total = 14;
+  bool has_system_ram_total() const;
+  private:
+  bool _internal_has_system_ram_total() const;
+  public:
+  void clear_system_ram_total();
+  ::PROTOBUF_NAMESPACE_ID::int64 system_ram_total() const;
+  void set_system_ram_total(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_system_ram_total() const;
+  void _internal_set_system_ram_total(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 sound_volume = 19;
+  bool has_sound_volume() const;
+  private:
+  bool _internal_has_sound_volume() const;
+  public:
+  void clear_sound_volume();
+  ::PROTOBUF_NAMESPACE_ID::int32 sound_volume() const;
+  void set_sound_volume(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_sound_volume() const;
+  void _internal_set_sound_volume(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional .enterprise_management.Channel channel = 22;
+  bool has_channel() const;
+  private:
+  bool _internal_has_channel() const;
+  public:
+  void clear_channel();
+  ::enterprise_management::Channel channel() const;
+  void set_channel(::enterprise_management::Channel value);
+  private:
+  ::enterprise_management::Channel _internal_channel() const;
+  void _internal_set_channel(::enterprise_management::Channel value);
+  public:
+
+  // optional bool write_protect_switch = 24;
+  bool has_write_protect_switch() const;
+  private:
+  bool _internal_has_write_protect_switch() const;
+  public:
+  void clear_write_protect_switch();
+  bool write_protect_switch() const;
+  void set_write_protect_switch(bool value);
+  private:
+  bool _internal_write_protect_switch() const;
+  void _internal_set_write_protect_switch(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceStatusReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ActiveTimePeriod > active_periods_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkInterface > network_interfaces_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceUser > users_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo > volume_infos_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkState > network_states_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > cpu_utilization_pct_samples_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > system_ram_free_samples_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CPUTempInfo > cpu_temp_infos_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuUtilizationInfo > cpu_utilization_infos_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SystemFreeRamInfo > system_ram_free_infos_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuInfo > cpu_info_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrashReportInfo > crash_report_infos_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BacklightInfo > backlight_info_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::FanInfo > fan_info_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BluetoothAdapterInfo > bluetooth_adapter_info_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkAdapterInfo > network_adapter_info_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LaCrOsBrowserReport > lacros_browser_report_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr os_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr firmware_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr boot_mode_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr browser_version_;
+  ::enterprise_management::OsUpdateStatus* os_update_status_;
+  ::enterprise_management::AppStatus* running_kiosk_app_;
+  ::enterprise_management::TpmVersionInfo* tpm_version_info_;
+  ::enterprise_management::TpmStatusInfo* tpm_status_info_;
+  ::enterprise_management::PowerStatus* power_status_;
+  ::enterprise_management::StorageStatus* storage_status_;
+  ::enterprise_management::BoardStatus* board_status_;
+  ::enterprise_management::SystemStatus* system_status_;
+  ::enterprise_management::StatefulPartitionInfo* stateful_partition_info_;
+  ::enterprise_management::GraphicsStatus* graphics_status_;
+  ::enterprise_management::TimezoneInfo* timezone_info_;
+  ::enterprise_management::MemoryInfo* memory_info_;
+  ::enterprise_management::GlobalCpuInfo* global_cpu_info_;
+  ::enterprise_management::SmbiosInfo* smbios_info_;
+  ::enterprise_management::KernelParameters* kernel_parameters_;
+  ::enterprise_management::EFIVars* efi_vars_;
+  ::enterprise_management::BootInfo* boot_info_;
+  ::PROTOBUF_NAMESPACE_ID::int64 system_ram_total_;
+  ::PROTOBUF_NAMESPACE_ID::int32 sound_volume_;
+  int channel_;
+  bool write_protect_switch_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OsUpdateStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OsUpdateStatus) */ {
+ public:
+  OsUpdateStatus();
+  virtual ~OsUpdateStatus();
+
+  OsUpdateStatus(const OsUpdateStatus& from);
+  OsUpdateStatus(OsUpdateStatus&& from) noexcept
+    : OsUpdateStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline OsUpdateStatus& operator=(const OsUpdateStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OsUpdateStatus& operator=(OsUpdateStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OsUpdateStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OsUpdateStatus* internal_default_instance() {
+    return reinterpret_cast<const OsUpdateStatus*>(
+               &_OsUpdateStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    65;
+
+  friend void swap(OsUpdateStatus& a, OsUpdateStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OsUpdateStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OsUpdateStatus* New() const final {
+    return CreateMaybeMessage<OsUpdateStatus>(nullptr);
+  }
+
+  OsUpdateStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OsUpdateStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OsUpdateStatus& from);
+  void MergeFrom(const OsUpdateStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OsUpdateStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OsUpdateStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef OsUpdateStatus_UpdateStatus UpdateStatus;
+  static constexpr UpdateStatus OS_UP_TO_DATE =
+    OsUpdateStatus_UpdateStatus_OS_UP_TO_DATE;
+  static constexpr UpdateStatus OS_IMAGE_DOWNLOAD_NOT_STARTED =
+    OsUpdateStatus_UpdateStatus_OS_IMAGE_DOWNLOAD_NOT_STARTED;
+  static constexpr UpdateStatus OS_IMAGE_DOWNLOAD_IN_PROGRESS =
+    OsUpdateStatus_UpdateStatus_OS_IMAGE_DOWNLOAD_IN_PROGRESS;
+  static constexpr UpdateStatus OS_UPDATE_NEED_REBOOT =
+    OsUpdateStatus_UpdateStatus_OS_UPDATE_NEED_REBOOT;
+  static inline bool UpdateStatus_IsValid(int value) {
+    return OsUpdateStatus_UpdateStatus_IsValid(value);
+  }
+  static constexpr UpdateStatus UpdateStatus_MIN =
+    OsUpdateStatus_UpdateStatus_UpdateStatus_MIN;
+  static constexpr UpdateStatus UpdateStatus_MAX =
+    OsUpdateStatus_UpdateStatus_UpdateStatus_MAX;
+  static constexpr int UpdateStatus_ARRAYSIZE =
+    OsUpdateStatus_UpdateStatus_UpdateStatus_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& UpdateStatus_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, UpdateStatus>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function UpdateStatus_Name.");
+    return OsUpdateStatus_UpdateStatus_Name(enum_t_value);
+  }
+  static inline bool UpdateStatus_Parse(const std::string& name,
+      UpdateStatus* value) {
+    return OsUpdateStatus_UpdateStatus_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNewPlatformVersionFieldNumber = 2,
+    kNewRequiredPlatformVersionFieldNumber = 3,
+    kLastCheckedTimestampFieldNumber = 4,
+    kLastRebootTimestampFieldNumber = 5,
+    kUpdateStatusFieldNumber = 1,
+  };
+  // optional string new_platform_version = 2;
+  bool has_new_platform_version() const;
+  private:
+  bool _internal_has_new_platform_version() const;
+  public:
+  void clear_new_platform_version();
+  const std::string& new_platform_version() const;
+  void set_new_platform_version(const std::string& value);
+  void set_new_platform_version(std::string&& value);
+  void set_new_platform_version(const char* value);
+  void set_new_platform_version(const char* value, size_t size);
+  std::string* mutable_new_platform_version();
+  std::string* release_new_platform_version();
+  void set_allocated_new_platform_version(std::string* new_platform_version);
+  private:
+  const std::string& _internal_new_platform_version() const;
+  void _internal_set_new_platform_version(const std::string& value);
+  std::string* _internal_mutable_new_platform_version();
+  public:
+
+  // optional string new_required_platform_version = 3;
+  bool has_new_required_platform_version() const;
+  private:
+  bool _internal_has_new_required_platform_version() const;
+  public:
+  void clear_new_required_platform_version();
+  const std::string& new_required_platform_version() const;
+  void set_new_required_platform_version(const std::string& value);
+  void set_new_required_platform_version(std::string&& value);
+  void set_new_required_platform_version(const char* value);
+  void set_new_required_platform_version(const char* value, size_t size);
+  std::string* mutable_new_required_platform_version();
+  std::string* release_new_required_platform_version();
+  void set_allocated_new_required_platform_version(std::string* new_required_platform_version);
+  private:
+  const std::string& _internal_new_required_platform_version() const;
+  void _internal_set_new_required_platform_version(const std::string& value);
+  std::string* _internal_mutable_new_required_platform_version();
+  public:
+
+  // optional int64 last_checked_timestamp = 4;
+  bool has_last_checked_timestamp() const;
+  private:
+  bool _internal_has_last_checked_timestamp() const;
+  public:
+  void clear_last_checked_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_checked_timestamp() const;
+  void set_last_checked_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_checked_timestamp() const;
+  void _internal_set_last_checked_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 last_reboot_timestamp = 5;
+  bool has_last_reboot_timestamp() const;
+  private:
+  bool _internal_has_last_reboot_timestamp() const;
+  public:
+  void clear_last_reboot_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_reboot_timestamp() const;
+  void set_last_reboot_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_reboot_timestamp() const;
+  void _internal_set_last_reboot_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.OsUpdateStatus.UpdateStatus update_status = 1;
+  bool has_update_status() const;
+  private:
+  bool _internal_has_update_status() const;
+  public:
+  void clear_update_status();
+  ::enterprise_management::OsUpdateStatus_UpdateStatus update_status() const;
+  void set_update_status(::enterprise_management::OsUpdateStatus_UpdateStatus value);
+  private:
+  ::enterprise_management::OsUpdateStatus_UpdateStatus _internal_update_status() const;
+  void _internal_set_update_status(::enterprise_management::OsUpdateStatus_UpdateStatus value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OsUpdateStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_platform_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr new_required_platform_version_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_checked_timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_reboot_timestamp_;
+  int update_status_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AppStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AppStatus) */ {
+ public:
+  AppStatus();
+  virtual ~AppStatus();
+
+  AppStatus(const AppStatus& from);
+  AppStatus(AppStatus&& from) noexcept
+    : AppStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline AppStatus& operator=(const AppStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AppStatus& operator=(AppStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AppStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AppStatus* internal_default_instance() {
+    return reinterpret_cast<const AppStatus*>(
+               &_AppStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    66;
+
+  friend void swap(AppStatus& a, AppStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AppStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AppStatus* New() const final {
+    return CreateMaybeMessage<AppStatus>(nullptr);
+  }
+
+  AppStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AppStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AppStatus& from);
+  void MergeFrom(const AppStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AppStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AppStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAppIdFieldNumber = 1,
+    kExtensionVersionFieldNumber = 2,
+    kStatusFieldNumber = 3,
+    kRequiredPlatformVersionFieldNumber = 5,
+    kErrorFieldNumber = 4,
+  };
+  // optional string app_id = 1;
+  bool has_app_id() const;
+  private:
+  bool _internal_has_app_id() const;
+  public:
+  void clear_app_id();
+  const std::string& app_id() const;
+  void set_app_id(const std::string& value);
+  void set_app_id(std::string&& value);
+  void set_app_id(const char* value);
+  void set_app_id(const char* value, size_t size);
+  std::string* mutable_app_id();
+  std::string* release_app_id();
+  void set_allocated_app_id(std::string* app_id);
+  private:
+  const std::string& _internal_app_id() const;
+  void _internal_set_app_id(const std::string& value);
+  std::string* _internal_mutable_app_id();
+  public:
+
+  // optional string extension_version = 2;
+  bool has_extension_version() const;
+  private:
+  bool _internal_has_extension_version() const;
+  public:
+  void clear_extension_version();
+  const std::string& extension_version() const;
+  void set_extension_version(const std::string& value);
+  void set_extension_version(std::string&& value);
+  void set_extension_version(const char* value);
+  void set_extension_version(const char* value, size_t size);
+  std::string* mutable_extension_version();
+  std::string* release_extension_version();
+  void set_allocated_extension_version(std::string* extension_version);
+  private:
+  const std::string& _internal_extension_version() const;
+  void _internal_set_extension_version(const std::string& value);
+  std::string* _internal_mutable_extension_version();
+  public:
+
+  // optional string status = 3;
+  bool has_status() const;
+  private:
+  bool _internal_has_status() const;
+  public:
+  void clear_status();
+  const std::string& status() const;
+  void set_status(const std::string& value);
+  void set_status(std::string&& value);
+  void set_status(const char* value);
+  void set_status(const char* value, size_t size);
+  std::string* mutable_status();
+  std::string* release_status();
+  void set_allocated_status(std::string* status);
+  private:
+  const std::string& _internal_status() const;
+  void _internal_set_status(const std::string& value);
+  std::string* _internal_mutable_status();
+  public:
+
+  // optional string required_platform_version = 5;
+  bool has_required_platform_version() const;
+  private:
+  bool _internal_has_required_platform_version() const;
+  public:
+  void clear_required_platform_version();
+  const std::string& required_platform_version() const;
+  void set_required_platform_version(const std::string& value);
+  void set_required_platform_version(std::string&& value);
+  void set_required_platform_version(const char* value);
+  void set_required_platform_version(const char* value, size_t size);
+  std::string* mutable_required_platform_version();
+  std::string* release_required_platform_version();
+  void set_allocated_required_platform_version(std::string* required_platform_version);
+  private:
+  const std::string& _internal_required_platform_version() const;
+  void _internal_set_required_platform_version(const std::string& value);
+  std::string* _internal_mutable_required_platform_version();
+  public:
+
+  // optional bool error = 4;
+  bool has_error() const;
+  private:
+  bool _internal_has_error() const;
+  public:
+  void clear_error();
+  bool error() const;
+  void set_error(bool value);
+  private:
+  bool _internal_error() const;
+  void _internal_set_error(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AppStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr extension_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr status_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr required_platform_version_;
+  bool error_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AppInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AppInfo) */ {
+ public:
+  AppInfo();
+  virtual ~AppInfo();
+
+  AppInfo(const AppInfo& from);
+  AppInfo(AppInfo&& from) noexcept
+    : AppInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline AppInfo& operator=(const AppInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AppInfo& operator=(AppInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AppInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AppInfo* internal_default_instance() {
+    return reinterpret_cast<const AppInfo*>(
+               &_AppInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    67;
+
+  friend void swap(AppInfo& a, AppInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AppInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AppInfo* New() const final {
+    return CreateMaybeMessage<AppInfo>(nullptr);
+  }
+
+  AppInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AppInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AppInfo& from);
+  void MergeFrom(const AppInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AppInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AppInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef AppInfo_AppType AppType;
+  static constexpr AppType TYPE_UNKNOWN =
+    AppInfo_AppType_TYPE_UNKNOWN;
+  static constexpr AppType TYPE_ARC =
+    AppInfo_AppType_TYPE_ARC;
+  static constexpr AppType TYPE_BUILTIN =
+    AppInfo_AppType_TYPE_BUILTIN;
+  static constexpr AppType TYPE_CROSTINI =
+    AppInfo_AppType_TYPE_CROSTINI;
+  static constexpr AppType TYPE_EXTENSION =
+    AppInfo_AppType_TYPE_EXTENSION;
+  static constexpr AppType TYPE_WEB =
+    AppInfo_AppType_TYPE_WEB;
+  static constexpr AppType TYPE_PLUGINVM =
+    AppInfo_AppType_TYPE_PLUGINVM;
+  static constexpr AppType TYPE_BOREALIS =
+    AppInfo_AppType_TYPE_BOREALIS;
+  static inline bool AppType_IsValid(int value) {
+    return AppInfo_AppType_IsValid(value);
+  }
+  static constexpr AppType AppType_MIN =
+    AppInfo_AppType_AppType_MIN;
+  static constexpr AppType AppType_MAX =
+    AppInfo_AppType_AppType_MAX;
+  static constexpr int AppType_ARRAYSIZE =
+    AppInfo_AppType_AppType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AppType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AppType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AppType_Name.");
+    return AppInfo_AppType_Name(enum_t_value);
+  }
+  static inline bool AppType_Parse(const std::string& name,
+      AppType* value) {
+    return AppInfo_AppType_Parse(name, value);
+  }
+
+  typedef AppInfo_Status Status;
+  static constexpr Status STATUS_UNKNOWN =
+    AppInfo_Status_STATUS_UNKNOWN;
+  static constexpr Status STATUS_INSTALLED =
+    AppInfo_Status_STATUS_INSTALLED;
+  static constexpr Status STATUS_DISABLED =
+    AppInfo_Status_STATUS_DISABLED;
+  static constexpr Status STATUS_UNINSTALLED =
+    AppInfo_Status_STATUS_UNINSTALLED;
+  static inline bool Status_IsValid(int value) {
+    return AppInfo_Status_IsValid(value);
+  }
+  static constexpr Status Status_MIN =
+    AppInfo_Status_Status_MIN;
+  static constexpr Status Status_MAX =
+    AppInfo_Status_Status_MAX;
+  static constexpr int Status_ARRAYSIZE =
+    AppInfo_Status_Status_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Status_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Status>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Status_Name.");
+    return AppInfo_Status_Name(enum_t_value);
+  }
+  static inline bool Status_Parse(const std::string& name,
+      Status* value) {
+    return AppInfo_Status_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kActiveTimePeriodsFieldNumber = 8,
+    kAppIdFieldNumber = 1,
+    kAppNameFieldNumber = 3,
+    kVersionFieldNumber = 7,
+    kAppTypeFieldNumber = 2,
+    kStatusFieldNumber = 4,
+    kInstallTimeFieldNumber = 5,
+  };
+  // repeated .enterprise_management.TimePeriod active_time_periods = 8;
+  int active_time_periods_size() const;
+  private:
+  int _internal_active_time_periods_size() const;
+  public:
+  void clear_active_time_periods();
+  ::enterprise_management::TimePeriod* mutable_active_time_periods(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod >*
+      mutable_active_time_periods();
+  private:
+  const ::enterprise_management::TimePeriod& _internal_active_time_periods(int index) const;
+  ::enterprise_management::TimePeriod* _internal_add_active_time_periods();
+  public:
+  const ::enterprise_management::TimePeriod& active_time_periods(int index) const;
+  ::enterprise_management::TimePeriod* add_active_time_periods();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod >&
+      active_time_periods() const;
+
+  // optional string app_id = 1;
+  bool has_app_id() const;
+  private:
+  bool _internal_has_app_id() const;
+  public:
+  void clear_app_id();
+  const std::string& app_id() const;
+  void set_app_id(const std::string& value);
+  void set_app_id(std::string&& value);
+  void set_app_id(const char* value);
+  void set_app_id(const char* value, size_t size);
+  std::string* mutable_app_id();
+  std::string* release_app_id();
+  void set_allocated_app_id(std::string* app_id);
+  private:
+  const std::string& _internal_app_id() const;
+  void _internal_set_app_id(const std::string& value);
+  std::string* _internal_mutable_app_id();
+  public:
+
+  // optional string app_name = 3;
+  bool has_app_name() const;
+  private:
+  bool _internal_has_app_name() const;
+  public:
+  void clear_app_name();
+  const std::string& app_name() const;
+  void set_app_name(const std::string& value);
+  void set_app_name(std::string&& value);
+  void set_app_name(const char* value);
+  void set_app_name(const char* value, size_t size);
+  std::string* mutable_app_name();
+  std::string* release_app_name();
+  void set_allocated_app_name(std::string* app_name);
+  private:
+  const std::string& _internal_app_name() const;
+  void _internal_set_app_name(const std::string& value);
+  std::string* _internal_mutable_app_name();
+  public:
+
+  // optional string version = 7;
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  const std::string& version() const;
+  void set_version(const std::string& value);
+  void set_version(std::string&& value);
+  void set_version(const char* value);
+  void set_version(const char* value, size_t size);
+  std::string* mutable_version();
+  std::string* release_version();
+  void set_allocated_version(std::string* version);
+  private:
+  const std::string& _internal_version() const;
+  void _internal_set_version(const std::string& value);
+  std::string* _internal_mutable_version();
+  public:
+
+  // optional .enterprise_management.AppInfo.AppType app_type = 2;
+  bool has_app_type() const;
+  private:
+  bool _internal_has_app_type() const;
+  public:
+  void clear_app_type();
+  ::enterprise_management::AppInfo_AppType app_type() const;
+  void set_app_type(::enterprise_management::AppInfo_AppType value);
+  private:
+  ::enterprise_management::AppInfo_AppType _internal_app_type() const;
+  void _internal_set_app_type(::enterprise_management::AppInfo_AppType value);
+  public:
+
+  // optional .enterprise_management.AppInfo.Status status = 4;
+  bool has_status() const;
+  private:
+  bool _internal_has_status() const;
+  public:
+  void clear_status();
+  ::enterprise_management::AppInfo_Status status() const;
+  void set_status(::enterprise_management::AppInfo_Status value);
+  private:
+  ::enterprise_management::AppInfo_Status _internal_status() const;
+  void _internal_set_status(::enterprise_management::AppInfo_Status value);
+  public:
+
+  // optional int64 install_time = 5;
+  bool has_install_time() const;
+  private:
+  bool _internal_has_install_time() const;
+  public:
+  void clear_install_time();
+  ::PROTOBUF_NAMESPACE_ID::int64 install_time() const;
+  void set_install_time(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_install_time() const;
+  void _internal_set_install_time(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AppInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod > active_time_periods_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_;
+  int app_type_;
+  int status_;
+  ::PROTOBUF_NAMESPACE_ID::int64 install_time_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AndroidAppPermission :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AndroidAppPermission) */ {
+ public:
+  AndroidAppPermission();
+  virtual ~AndroidAppPermission();
+
+  AndroidAppPermission(const AndroidAppPermission& from);
+  AndroidAppPermission(AndroidAppPermission&& from) noexcept
+    : AndroidAppPermission() {
+    *this = ::std::move(from);
+  }
+
+  inline AndroidAppPermission& operator=(const AndroidAppPermission& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AndroidAppPermission& operator=(AndroidAppPermission&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AndroidAppPermission& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AndroidAppPermission* internal_default_instance() {
+    return reinterpret_cast<const AndroidAppPermission*>(
+               &_AndroidAppPermission_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    68;
+
+  friend void swap(AndroidAppPermission& a, AndroidAppPermission& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AndroidAppPermission* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AndroidAppPermission* New() const final {
+    return CreateMaybeMessage<AndroidAppPermission>(nullptr);
+  }
+
+  AndroidAppPermission* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AndroidAppPermission>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AndroidAppPermission& from);
+  void MergeFrom(const AndroidAppPermission& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AndroidAppPermission* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AndroidAppPermission";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kGrantedFieldNumber = 2,
+    kManagedFieldNumber = 3,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional bool granted = 2;
+  bool has_granted() const;
+  private:
+  bool _internal_has_granted() const;
+  public:
+  void clear_granted();
+  bool granted() const;
+  void set_granted(bool value);
+  private:
+  bool _internal_granted() const;
+  void _internal_set_granted(bool value);
+  public:
+
+  // optional bool managed = 3;
+  bool has_managed() const;
+  private:
+  bool _internal_has_managed() const;
+  public:
+  void clear_managed();
+  bool managed() const;
+  void set_managed(bool value);
+  private:
+  bool _internal_managed() const;
+  void _internal_set_managed(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AndroidAppPermission)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  bool granted_;
+  bool managed_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AndroidAppInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AndroidAppInfo) */ {
+ public:
+  AndroidAppInfo();
+  virtual ~AndroidAppInfo();
+
+  AndroidAppInfo(const AndroidAppInfo& from);
+  AndroidAppInfo(AndroidAppInfo&& from) noexcept
+    : AndroidAppInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline AndroidAppInfo& operator=(const AndroidAppInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AndroidAppInfo& operator=(AndroidAppInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AndroidAppInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AndroidAppInfo* internal_default_instance() {
+    return reinterpret_cast<const AndroidAppInfo*>(
+               &_AndroidAppInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    69;
+
+  friend void swap(AndroidAppInfo& a, AndroidAppInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AndroidAppInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AndroidAppInfo* New() const final {
+    return CreateMaybeMessage<AndroidAppInfo>(nullptr);
+  }
+
+  AndroidAppInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AndroidAppInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AndroidAppInfo& from);
+  void MergeFrom(const AndroidAppInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AndroidAppInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AndroidAppInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef AndroidAppInfo_AndroidAppStatus AndroidAppStatus;
+  static constexpr AndroidAppStatus STATUS_UNKNOWN =
+    AndroidAppInfo_AndroidAppStatus_STATUS_UNKNOWN;
+  static constexpr AndroidAppStatus STATUS_ENABLED =
+    AndroidAppInfo_AndroidAppStatus_STATUS_ENABLED;
+  static constexpr AndroidAppStatus STATUS_SUSPENDED =
+    AndroidAppInfo_AndroidAppStatus_STATUS_SUSPENDED;
+  static constexpr AndroidAppStatus STATUS_DISABLED =
+    AndroidAppInfo_AndroidAppStatus_STATUS_DISABLED;
+  static inline bool AndroidAppStatus_IsValid(int value) {
+    return AndroidAppInfo_AndroidAppStatus_IsValid(value);
+  }
+  static constexpr AndroidAppStatus AndroidAppStatus_MIN =
+    AndroidAppInfo_AndroidAppStatus_AndroidAppStatus_MIN;
+  static constexpr AndroidAppStatus AndroidAppStatus_MAX =
+    AndroidAppInfo_AndroidAppStatus_AndroidAppStatus_MAX;
+  static constexpr int AndroidAppStatus_ARRAYSIZE =
+    AndroidAppInfo_AndroidAppStatus_AndroidAppStatus_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AndroidAppStatus_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AndroidAppStatus>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AndroidAppStatus_Name.");
+    return AndroidAppInfo_AndroidAppStatus_Name(enum_t_value);
+  }
+  static inline bool AndroidAppStatus_Parse(const std::string& name,
+      AndroidAppStatus* value) {
+    return AndroidAppInfo_AndroidAppStatus_Parse(name, value);
+  }
+
+  typedef AndroidAppInfo_InstalledSource InstalledSource;
+  static constexpr InstalledSource SOURCE_UNKNOWN =
+    AndroidAppInfo_InstalledSource_SOURCE_UNKNOWN;
+  static constexpr InstalledSource SOURCE_BY_ADMIN =
+    AndroidAppInfo_InstalledSource_SOURCE_BY_ADMIN;
+  static constexpr InstalledSource SOURCE_BY_USER =
+    AndroidAppInfo_InstalledSource_SOURCE_BY_USER;
+  static constexpr InstalledSource SOURCE_NOT_INSTALLED =
+    AndroidAppInfo_InstalledSource_SOURCE_NOT_INSTALLED;
+  static inline bool InstalledSource_IsValid(int value) {
+    return AndroidAppInfo_InstalledSource_IsValid(value);
+  }
+  static constexpr InstalledSource InstalledSource_MIN =
+    AndroidAppInfo_InstalledSource_InstalledSource_MIN;
+  static constexpr InstalledSource InstalledSource_MAX =
+    AndroidAppInfo_InstalledSource_InstalledSource_MAX;
+  static constexpr int InstalledSource_ARRAYSIZE =
+    AndroidAppInfo_InstalledSource_InstalledSource_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& InstalledSource_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, InstalledSource>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function InstalledSource_Name.");
+    return AndroidAppInfo_InstalledSource_Name(enum_t_value);
+  }
+  static inline bool InstalledSource_Parse(const std::string& name,
+      InstalledSource* value) {
+    return AndroidAppInfo_InstalledSource_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPermissionsFieldNumber = 7,
+    kAppIdFieldNumber = 1,
+    kAppNameFieldNumber = 2,
+    kPackageNameFieldNumber = 3,
+    kStatusFieldNumber = 4,
+    kInstalledSourceFieldNumber = 5,
+    kVersionFieldNumber = 6,
+  };
+  // repeated .enterprise_management.AndroidAppPermission permissions = 7;
+  int permissions_size() const;
+  private:
+  int _internal_permissions_size() const;
+  public:
+  void clear_permissions();
+  ::enterprise_management::AndroidAppPermission* mutable_permissions(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppPermission >*
+      mutable_permissions();
+  private:
+  const ::enterprise_management::AndroidAppPermission& _internal_permissions(int index) const;
+  ::enterprise_management::AndroidAppPermission* _internal_add_permissions();
+  public:
+  const ::enterprise_management::AndroidAppPermission& permissions(int index) const;
+  ::enterprise_management::AndroidAppPermission* add_permissions();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppPermission >&
+      permissions() const;
+
+  // optional string app_id = 1;
+  bool has_app_id() const;
+  private:
+  bool _internal_has_app_id() const;
+  public:
+  void clear_app_id();
+  const std::string& app_id() const;
+  void set_app_id(const std::string& value);
+  void set_app_id(std::string&& value);
+  void set_app_id(const char* value);
+  void set_app_id(const char* value, size_t size);
+  std::string* mutable_app_id();
+  std::string* release_app_id();
+  void set_allocated_app_id(std::string* app_id);
+  private:
+  const std::string& _internal_app_id() const;
+  void _internal_set_app_id(const std::string& value);
+  std::string* _internal_mutable_app_id();
+  public:
+
+  // optional string app_name = 2;
+  bool has_app_name() const;
+  private:
+  bool _internal_has_app_name() const;
+  public:
+  void clear_app_name();
+  const std::string& app_name() const;
+  void set_app_name(const std::string& value);
+  void set_app_name(std::string&& value);
+  void set_app_name(const char* value);
+  void set_app_name(const char* value, size_t size);
+  std::string* mutable_app_name();
+  std::string* release_app_name();
+  void set_allocated_app_name(std::string* app_name);
+  private:
+  const std::string& _internal_app_name() const;
+  void _internal_set_app_name(const std::string& value);
+  std::string* _internal_mutable_app_name();
+  public:
+
+  // optional string package_name = 3;
+  bool has_package_name() const;
+  private:
+  bool _internal_has_package_name() const;
+  public:
+  void clear_package_name();
+  const std::string& package_name() const;
+  void set_package_name(const std::string& value);
+  void set_package_name(std::string&& value);
+  void set_package_name(const char* value);
+  void set_package_name(const char* value, size_t size);
+  std::string* mutable_package_name();
+  std::string* release_package_name();
+  void set_allocated_package_name(std::string* package_name);
+  private:
+  const std::string& _internal_package_name() const;
+  void _internal_set_package_name(const std::string& value);
+  std::string* _internal_mutable_package_name();
+  public:
+
+  // optional .enterprise_management.AndroidAppInfo.AndroidAppStatus status = 4;
+  bool has_status() const;
+  private:
+  bool _internal_has_status() const;
+  public:
+  void clear_status();
+  ::enterprise_management::AndroidAppInfo_AndroidAppStatus status() const;
+  void set_status(::enterprise_management::AndroidAppInfo_AndroidAppStatus value);
+  private:
+  ::enterprise_management::AndroidAppInfo_AndroidAppStatus _internal_status() const;
+  void _internal_set_status(::enterprise_management::AndroidAppInfo_AndroidAppStatus value);
+  public:
+
+  // optional .enterprise_management.AndroidAppInfo.InstalledSource installed_source = 5;
+  bool has_installed_source() const;
+  private:
+  bool _internal_has_installed_source() const;
+  public:
+  void clear_installed_source();
+  ::enterprise_management::AndroidAppInfo_InstalledSource installed_source() const;
+  void set_installed_source(::enterprise_management::AndroidAppInfo_InstalledSource value);
+  private:
+  ::enterprise_management::AndroidAppInfo_InstalledSource _internal_installed_source() const;
+  void _internal_set_installed_source(::enterprise_management::AndroidAppInfo_InstalledSource value);
+  public:
+
+  // optional int32 version = 6;
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  ::PROTOBUF_NAMESPACE_ID::int32 version() const;
+  void set_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_version() const;
+  void _internal_set_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AndroidAppInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppPermission > permissions_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr package_name_;
+  int status_;
+  int installed_source_;
+  ::PROTOBUF_NAMESPACE_ID::int32 version_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeUserProfileReport :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeUserProfileReport) */ {
+ public:
+  ChromeUserProfileReport();
+  virtual ~ChromeUserProfileReport();
+
+  ChromeUserProfileReport(const ChromeUserProfileReport& from);
+  ChromeUserProfileReport(ChromeUserProfileReport&& from) noexcept
+    : ChromeUserProfileReport() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeUserProfileReport& operator=(const ChromeUserProfileReport& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeUserProfileReport& operator=(ChromeUserProfileReport&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeUserProfileReport& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeUserProfileReport* internal_default_instance() {
+    return reinterpret_cast<const ChromeUserProfileReport*>(
+               &_ChromeUserProfileReport_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    70;
+
+  friend void swap(ChromeUserProfileReport& a, ChromeUserProfileReport& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeUserProfileReport* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeUserProfileReport* New() const final {
+    return CreateMaybeMessage<ChromeUserProfileReport>(nullptr);
+  }
+
+  ChromeUserProfileReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeUserProfileReport>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeUserProfileReport& from);
+  void MergeFrom(const ChromeUserProfileReport& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeUserProfileReport* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeUserProfileReport";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kExtensionRequestsFieldNumber = 10,
+    kIdFieldNumber = 1,
+    kChromeSignedInUserFieldNumber = 2,
+    kExtensionDataFieldNumber = 3,
+    kPluginsFieldNumber = 4,
+    kPolicyDataFieldNumber = 5,
+    kNameFieldNumber = 9,
+    kPolicyFetchedTimestampFieldNumber = 6,
+    kSafeBrowsingWarningsFieldNumber = 7,
+    kSafeBrowsingWarningsClickThroughFieldNumber = 8,
+  };
+  // repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+  int extension_requests_size() const;
+  private:
+  int _internal_extension_requests_size() const;
+  public:
+  void clear_extension_requests();
+  ::enterprise_management::ExtensionRequest* mutable_extension_requests(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest >*
+      mutable_extension_requests();
+  private:
+  const ::enterprise_management::ExtensionRequest& _internal_extension_requests(int index) const;
+  ::enterprise_management::ExtensionRequest* _internal_add_extension_requests();
+  public:
+  const ::enterprise_management::ExtensionRequest& extension_requests(int index) const;
+  ::enterprise_management::ExtensionRequest* add_extension_requests();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest >&
+      extension_requests() const;
+
+  // optional string id = 1;
+  bool has_id() const;
+  private:
+  bool _internal_has_id() const;
+  public:
+  void clear_id();
+  const std::string& id() const;
+  void set_id(const std::string& value);
+  void set_id(std::string&& value);
+  void set_id(const char* value);
+  void set_id(const char* value, size_t size);
+  std::string* mutable_id();
+  std::string* release_id();
+  void set_allocated_id(std::string* id);
+  private:
+  const std::string& _internal_id() const;
+  void _internal_set_id(const std::string& value);
+  std::string* _internal_mutable_id();
+  public:
+
+  // optional string chrome_signed_in_user = 2;
+  bool has_chrome_signed_in_user() const;
+  private:
+  bool _internal_has_chrome_signed_in_user() const;
+  public:
+  void clear_chrome_signed_in_user();
+  const std::string& chrome_signed_in_user() const;
+  void set_chrome_signed_in_user(const std::string& value);
+  void set_chrome_signed_in_user(std::string&& value);
+  void set_chrome_signed_in_user(const char* value);
+  void set_chrome_signed_in_user(const char* value, size_t size);
+  std::string* mutable_chrome_signed_in_user();
+  std::string* release_chrome_signed_in_user();
+  void set_allocated_chrome_signed_in_user(std::string* chrome_signed_in_user);
+  private:
+  const std::string& _internal_chrome_signed_in_user() const;
+  void _internal_set_chrome_signed_in_user(const std::string& value);
+  std::string* _internal_mutable_chrome_signed_in_user();
+  public:
+
+  // optional string extension_data = 3;
+  bool has_extension_data() const;
+  private:
+  bool _internal_has_extension_data() const;
+  public:
+  void clear_extension_data();
+  const std::string& extension_data() const;
+  void set_extension_data(const std::string& value);
+  void set_extension_data(std::string&& value);
+  void set_extension_data(const char* value);
+  void set_extension_data(const char* value, size_t size);
+  std::string* mutable_extension_data();
+  std::string* release_extension_data();
+  void set_allocated_extension_data(std::string* extension_data);
+  private:
+  const std::string& _internal_extension_data() const;
+  void _internal_set_extension_data(const std::string& value);
+  std::string* _internal_mutable_extension_data();
+  public:
+
+  // optional string plugins = 4;
+  bool has_plugins() const;
+  private:
+  bool _internal_has_plugins() const;
+  public:
+  void clear_plugins();
+  const std::string& plugins() const;
+  void set_plugins(const std::string& value);
+  void set_plugins(std::string&& value);
+  void set_plugins(const char* value);
+  void set_plugins(const char* value, size_t size);
+  std::string* mutable_plugins();
+  std::string* release_plugins();
+  void set_allocated_plugins(std::string* plugins);
+  private:
+  const std::string& _internal_plugins() const;
+  void _internal_set_plugins(const std::string& value);
+  std::string* _internal_mutable_plugins();
+  public:
+
+  // optional string policy_data = 5;
+  bool has_policy_data() const;
+  private:
+  bool _internal_has_policy_data() const;
+  public:
+  void clear_policy_data();
+  const std::string& policy_data() const;
+  void set_policy_data(const std::string& value);
+  void set_policy_data(std::string&& value);
+  void set_policy_data(const char* value);
+  void set_policy_data(const char* value, size_t size);
+  std::string* mutable_policy_data();
+  std::string* release_policy_data();
+  void set_allocated_policy_data(std::string* policy_data);
+  private:
+  const std::string& _internal_policy_data() const;
+  void _internal_set_policy_data(const std::string& value);
+  std::string* _internal_mutable_policy_data();
+  public:
+
+  // optional string name = 9;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional int64 policy_fetched_timestamp = 6;
+  bool has_policy_fetched_timestamp() const;
+  private:
+  bool _internal_has_policy_fetched_timestamp() const;
+  public:
+  void clear_policy_fetched_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 policy_fetched_timestamp() const;
+  void set_policy_fetched_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_policy_fetched_timestamp() const;
+  void _internal_set_policy_fetched_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional uint64 safe_browsing_warnings = 7;
+  bool has_safe_browsing_warnings() const;
+  private:
+  bool _internal_has_safe_browsing_warnings() const;
+  public:
+  void clear_safe_browsing_warnings();
+  ::PROTOBUF_NAMESPACE_ID::uint64 safe_browsing_warnings() const;
+  void set_safe_browsing_warnings(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_safe_browsing_warnings() const;
+  void _internal_set_safe_browsing_warnings(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint64 safe_browsing_warnings_click_through = 8;
+  bool has_safe_browsing_warnings_click_through() const;
+  private:
+  bool _internal_has_safe_browsing_warnings_click_through() const;
+  public:
+  void clear_safe_browsing_warnings_click_through();
+  ::PROTOBUF_NAMESPACE_ID::uint64 safe_browsing_warnings_click_through() const;
+  void set_safe_browsing_warnings_click_through(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_safe_browsing_warnings_click_through() const;
+  void _internal_set_safe_browsing_warnings_click_through(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeUserProfileReport)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest > extension_requests_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr chrome_signed_in_user_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr extension_data_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr plugins_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_data_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::int64 policy_fetched_timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 safe_browsing_warnings_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 safe_browsing_warnings_click_through_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeSignedInUser :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeSignedInUser) */ {
+ public:
+  ChromeSignedInUser();
+  virtual ~ChromeSignedInUser();
+
+  ChromeSignedInUser(const ChromeSignedInUser& from);
+  ChromeSignedInUser(ChromeSignedInUser&& from) noexcept
+    : ChromeSignedInUser() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeSignedInUser& operator=(const ChromeSignedInUser& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeSignedInUser& operator=(ChromeSignedInUser&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeSignedInUser& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeSignedInUser* internal_default_instance() {
+    return reinterpret_cast<const ChromeSignedInUser*>(
+               &_ChromeSignedInUser_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    71;
+
+  friend void swap(ChromeSignedInUser& a, ChromeSignedInUser& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeSignedInUser* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeSignedInUser* New() const final {
+    return CreateMaybeMessage<ChromeSignedInUser>(nullptr);
+  }
+
+  ChromeSignedInUser* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeSignedInUser>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeSignedInUser& from);
+  void MergeFrom(const ChromeSignedInUser& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeSignedInUser* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeSignedInUser";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEmailFieldNumber = 1,
+    kObfuscatedGaiaIdFieldNumber = 2,
+  };
+  // optional string email = 1;
+  bool has_email() const;
+  private:
+  bool _internal_has_email() const;
+  public:
+  void clear_email();
+  const std::string& email() const;
+  void set_email(const std::string& value);
+  void set_email(std::string&& value);
+  void set_email(const char* value);
+  void set_email(const char* value, size_t size);
+  std::string* mutable_email();
+  std::string* release_email();
+  void set_allocated_email(std::string* email);
+  private:
+  const std::string& _internal_email() const;
+  void _internal_set_email(const std::string& value);
+  std::string* _internal_mutable_email();
+  public:
+
+  // optional string obfuscated_gaia_id = 2;
+  bool has_obfuscated_gaia_id() const;
+  private:
+  bool _internal_has_obfuscated_gaia_id() const;
+  public:
+  void clear_obfuscated_gaia_id();
+  const std::string& obfuscated_gaia_id() const;
+  void set_obfuscated_gaia_id(const std::string& value);
+  void set_obfuscated_gaia_id(std::string&& value);
+  void set_obfuscated_gaia_id(const char* value);
+  void set_obfuscated_gaia_id(const char* value, size_t size);
+  std::string* mutable_obfuscated_gaia_id();
+  std::string* release_obfuscated_gaia_id();
+  void set_allocated_obfuscated_gaia_id(std::string* obfuscated_gaia_id);
+  private:
+  const std::string& _internal_obfuscated_gaia_id() const;
+  void _internal_set_obfuscated_gaia_id(const std::string& value);
+  std::string* _internal_mutable_obfuscated_gaia_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeSignedInUser)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr email_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr obfuscated_gaia_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ExtensionRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ExtensionRequest) */ {
+ public:
+  ExtensionRequest();
+  virtual ~ExtensionRequest();
+
+  ExtensionRequest(const ExtensionRequest& from);
+  ExtensionRequest(ExtensionRequest&& from) noexcept
+    : ExtensionRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ExtensionRequest& operator=(const ExtensionRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ExtensionRequest& operator=(ExtensionRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ExtensionRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ExtensionRequest* internal_default_instance() {
+    return reinterpret_cast<const ExtensionRequest*>(
+               &_ExtensionRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    72;
+
+  friend void swap(ExtensionRequest& a, ExtensionRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ExtensionRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ExtensionRequest* New() const final {
+    return CreateMaybeMessage<ExtensionRequest>(nullptr);
+  }
+
+  ExtensionRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ExtensionRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ExtensionRequest& from);
+  void MergeFrom(const ExtensionRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ExtensionRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ExtensionRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kIdFieldNumber = 1,
+    kJustificationFieldNumber = 3,
+    kRequestTimestampFieldNumber = 2,
+  };
+  // optional string id = 1;
+  bool has_id() const;
+  private:
+  bool _internal_has_id() const;
+  public:
+  void clear_id();
+  const std::string& id() const;
+  void set_id(const std::string& value);
+  void set_id(std::string&& value);
+  void set_id(const char* value);
+  void set_id(const char* value, size_t size);
+  std::string* mutable_id();
+  std::string* release_id();
+  void set_allocated_id(std::string* id);
+  private:
+  const std::string& _internal_id() const;
+  void _internal_set_id(const std::string& value);
+  std::string* _internal_mutable_id();
+  public:
+
+  // optional string justification = 3;
+  bool has_justification() const;
+  private:
+  bool _internal_has_justification() const;
+  public:
+  void clear_justification();
+  const std::string& justification() const;
+  void set_justification(const std::string& value);
+  void set_justification(std::string&& value);
+  void set_justification(const char* value);
+  void set_justification(const char* value, size_t size);
+  std::string* mutable_justification();
+  std::string* release_justification();
+  void set_allocated_justification(std::string* justification);
+  private:
+  const std::string& _internal_justification() const;
+  void _internal_set_justification(const std::string& value);
+  std::string* _internal_mutable_justification();
+  public:
+
+  // optional int64 request_timestamp = 2;
+  bool has_request_timestamp() const;
+  private:
+  bool _internal_has_request_timestamp() const;
+  public:
+  void clear_request_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 request_timestamp() const;
+  void set_request_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_request_timestamp() const;
+  void _internal_set_request_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ExtensionRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr justification_;
+  ::PROTOBUF_NAMESPACE_ID::int64 request_timestamp_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class Extension :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.Extension) */ {
+ public:
+  Extension();
+  virtual ~Extension();
+
+  Extension(const Extension& from);
+  Extension(Extension&& from) noexcept
+    : Extension() {
+    *this = ::std::move(from);
+  }
+
+  inline Extension& operator=(const Extension& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline Extension& operator=(Extension&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const Extension& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const Extension* internal_default_instance() {
+    return reinterpret_cast<const Extension*>(
+               &_Extension_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    73;
+
+  friend void swap(Extension& a, Extension& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(Extension* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline Extension* New() const final {
+    return CreateMaybeMessage<Extension>(nullptr);
+  }
+
+  Extension* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<Extension>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const Extension& from);
+  void MergeFrom(const Extension& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(Extension* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.Extension";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef Extension_ExtensionType ExtensionType;
+  static constexpr ExtensionType TYPE_UNKNOWN =
+    Extension_ExtensionType_TYPE_UNKNOWN;
+  static constexpr ExtensionType TYPE_EXTENSION =
+    Extension_ExtensionType_TYPE_EXTENSION;
+  static constexpr ExtensionType TYPE_HOSTED_APP =
+    Extension_ExtensionType_TYPE_HOSTED_APP;
+  static constexpr ExtensionType TYPE_PACKAGED_APP =
+    Extension_ExtensionType_TYPE_PACKAGED_APP;
+  static constexpr ExtensionType TYPE_LEGACY_PACKAGED_APP =
+    Extension_ExtensionType_TYPE_LEGACY_PACKAGED_APP;
+  static constexpr ExtensionType TYPE_THEME =
+    Extension_ExtensionType_TYPE_THEME;
+  static constexpr ExtensionType TYPE_USER_SCRIPT =
+    Extension_ExtensionType_TYPE_USER_SCRIPT;
+  static constexpr ExtensionType TYPE_PLATFORM_APP =
+    Extension_ExtensionType_TYPE_PLATFORM_APP;
+  static constexpr ExtensionType TYPE_LOGIN_SCREEN_EXTENSION =
+    Extension_ExtensionType_TYPE_LOGIN_SCREEN_EXTENSION;
+  static constexpr ExtensionType TYPE_CHROMEOS_SYSTEM_EXTENSION =
+    Extension_ExtensionType_TYPE_CHROMEOS_SYSTEM_EXTENSION;
+  static inline bool ExtensionType_IsValid(int value) {
+    return Extension_ExtensionType_IsValid(value);
+  }
+  static constexpr ExtensionType ExtensionType_MIN =
+    Extension_ExtensionType_ExtensionType_MIN;
+  static constexpr ExtensionType ExtensionType_MAX =
+    Extension_ExtensionType_ExtensionType_MAX;
+  static constexpr int ExtensionType_ARRAYSIZE =
+    Extension_ExtensionType_ExtensionType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ExtensionType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ExtensionType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ExtensionType_Name.");
+    return Extension_ExtensionType_Name(enum_t_value);
+  }
+  static inline bool ExtensionType_Parse(const std::string& name,
+      ExtensionType* value) {
+    return Extension_ExtensionType_Parse(name, value);
+  }
+
+  typedef Extension_InstallType InstallType;
+  static constexpr InstallType TYPE_NORMAL =
+    Extension_InstallType_TYPE_NORMAL;
+  static constexpr InstallType TYPE_DEVELOPMENT =
+    Extension_InstallType_TYPE_DEVELOPMENT;
+  static constexpr InstallType TYPE_SIDELOAD =
+    Extension_InstallType_TYPE_SIDELOAD;
+  static constexpr InstallType TYPE_ADMIN =
+    Extension_InstallType_TYPE_ADMIN;
+  static constexpr InstallType TYPE_OTHER =
+    Extension_InstallType_TYPE_OTHER;
+  static inline bool InstallType_IsValid(int value) {
+    return Extension_InstallType_IsValid(value);
+  }
+  static constexpr InstallType InstallType_MIN =
+    Extension_InstallType_InstallType_MIN;
+  static constexpr InstallType InstallType_MAX =
+    Extension_InstallType_InstallType_MAX;
+  static constexpr int InstallType_ARRAYSIZE =
+    Extension_InstallType_InstallType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& InstallType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, InstallType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function InstallType_Name.");
+    return Extension_InstallType_Name(enum_t_value);
+  }
+  static inline bool InstallType_Parse(const std::string& name,
+      InstallType* value) {
+    return Extension_InstallType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPermissionsFieldNumber = 10,
+    kHostPermissionsFieldNumber = 11,
+    kIdFieldNumber = 1,
+    kVersionFieldNumber = 2,
+    kNameFieldNumber = 3,
+    kDescriptionFieldNumber = 4,
+    kHomepageUrlFieldNumber = 6,
+    kAppTypeFieldNumber = 5,
+    kInstallTypeFieldNumber = 8,
+    kEnabledFieldNumber = 9,
+    kFromWebstoreFieldNumber = 13,
+    kManifestVersionFieldNumber = 14,
+  };
+  // repeated string permissions = 10;
+  int permissions_size() const;
+  private:
+  int _internal_permissions_size() const;
+  public:
+  void clear_permissions();
+  const std::string& permissions(int index) const;
+  std::string* mutable_permissions(int index);
+  void set_permissions(int index, const std::string& value);
+  void set_permissions(int index, std::string&& value);
+  void set_permissions(int index, const char* value);
+  void set_permissions(int index, const char* value, size_t size);
+  std::string* add_permissions();
+  void add_permissions(const std::string& value);
+  void add_permissions(std::string&& value);
+  void add_permissions(const char* value);
+  void add_permissions(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& permissions() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_permissions();
+  private:
+  const std::string& _internal_permissions(int index) const;
+  std::string* _internal_add_permissions();
+  public:
+
+  // repeated string host_permissions = 11;
+  int host_permissions_size() const;
+  private:
+  int _internal_host_permissions_size() const;
+  public:
+  void clear_host_permissions();
+  const std::string& host_permissions(int index) const;
+  std::string* mutable_host_permissions(int index);
+  void set_host_permissions(int index, const std::string& value);
+  void set_host_permissions(int index, std::string&& value);
+  void set_host_permissions(int index, const char* value);
+  void set_host_permissions(int index, const char* value, size_t size);
+  std::string* add_host_permissions();
+  void add_host_permissions(const std::string& value);
+  void add_host_permissions(std::string&& value);
+  void add_host_permissions(const char* value);
+  void add_host_permissions(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& host_permissions() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_host_permissions();
+  private:
+  const std::string& _internal_host_permissions(int index) const;
+  std::string* _internal_add_host_permissions();
+  public:
+
+  // optional string id = 1;
+  bool has_id() const;
+  private:
+  bool _internal_has_id() const;
+  public:
+  void clear_id();
+  const std::string& id() const;
+  void set_id(const std::string& value);
+  void set_id(std::string&& value);
+  void set_id(const char* value);
+  void set_id(const char* value, size_t size);
+  std::string* mutable_id();
+  std::string* release_id();
+  void set_allocated_id(std::string* id);
+  private:
+  const std::string& _internal_id() const;
+  void _internal_set_id(const std::string& value);
+  std::string* _internal_mutable_id();
+  public:
+
+  // optional string version = 2;
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  const std::string& version() const;
+  void set_version(const std::string& value);
+  void set_version(std::string&& value);
+  void set_version(const char* value);
+  void set_version(const char* value, size_t size);
+  std::string* mutable_version();
+  std::string* release_version();
+  void set_allocated_version(std::string* version);
+  private:
+  const std::string& _internal_version() const;
+  void _internal_set_version(const std::string& value);
+  std::string* _internal_mutable_version();
+  public:
+
+  // optional string name = 3;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string description = 4;
+  bool has_description() const;
+  private:
+  bool _internal_has_description() const;
+  public:
+  void clear_description();
+  const std::string& description() const;
+  void set_description(const std::string& value);
+  void set_description(std::string&& value);
+  void set_description(const char* value);
+  void set_description(const char* value, size_t size);
+  std::string* mutable_description();
+  std::string* release_description();
+  void set_allocated_description(std::string* description);
+  private:
+  const std::string& _internal_description() const;
+  void _internal_set_description(const std::string& value);
+  std::string* _internal_mutable_description();
+  public:
+
+  // optional string homepage_url = 6;
+  bool has_homepage_url() const;
+  private:
+  bool _internal_has_homepage_url() const;
+  public:
+  void clear_homepage_url();
+  const std::string& homepage_url() const;
+  void set_homepage_url(const std::string& value);
+  void set_homepage_url(std::string&& value);
+  void set_homepage_url(const char* value);
+  void set_homepage_url(const char* value, size_t size);
+  std::string* mutable_homepage_url();
+  std::string* release_homepage_url();
+  void set_allocated_homepage_url(std::string* homepage_url);
+  private:
+  const std::string& _internal_homepage_url() const;
+  void _internal_set_homepage_url(const std::string& value);
+  std::string* _internal_mutable_homepage_url();
+  public:
+
+  // optional .enterprise_management.Extension.ExtensionType app_type = 5;
+  bool has_app_type() const;
+  private:
+  bool _internal_has_app_type() const;
+  public:
+  void clear_app_type();
+  ::enterprise_management::Extension_ExtensionType app_type() const;
+  void set_app_type(::enterprise_management::Extension_ExtensionType value);
+  private:
+  ::enterprise_management::Extension_ExtensionType _internal_app_type() const;
+  void _internal_set_app_type(::enterprise_management::Extension_ExtensionType value);
+  public:
+
+  // optional .enterprise_management.Extension.InstallType install_type = 8;
+  bool has_install_type() const;
+  private:
+  bool _internal_has_install_type() const;
+  public:
+  void clear_install_type();
+  ::enterprise_management::Extension_InstallType install_type() const;
+  void set_install_type(::enterprise_management::Extension_InstallType value);
+  private:
+  ::enterprise_management::Extension_InstallType _internal_install_type() const;
+  void _internal_set_install_type(::enterprise_management::Extension_InstallType value);
+  public:
+
+  // optional bool enabled = 9;
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // optional bool from_webstore = 13;
+  bool has_from_webstore() const;
+  private:
+  bool _internal_has_from_webstore() const;
+  public:
+  void clear_from_webstore();
+  bool from_webstore() const;
+  void set_from_webstore(bool value);
+  private:
+  bool _internal_from_webstore() const;
+  void _internal_set_from_webstore(bool value);
+  public:
+
+  // optional int32 manifest_version = 14;
+  bool has_manifest_version() const;
+  private:
+  bool _internal_has_manifest_version() const;
+  public:
+  void clear_manifest_version();
+  ::PROTOBUF_NAMESPACE_ID::int32 manifest_version() const;
+  void set_manifest_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_manifest_version() const;
+  void _internal_set_manifest_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.Extension)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> permissions_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> host_permissions_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr description_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr homepage_url_;
+  int app_type_;
+  int install_type_;
+  bool enabled_;
+  bool from_webstore_;
+  ::PROTOBUF_NAMESPACE_ID::int32 manifest_version_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class Plugin :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.Plugin) */ {
+ public:
+  Plugin();
+  virtual ~Plugin();
+
+  Plugin(const Plugin& from);
+  Plugin(Plugin&& from) noexcept
+    : Plugin() {
+    *this = ::std::move(from);
+  }
+
+  inline Plugin& operator=(const Plugin& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline Plugin& operator=(Plugin&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const Plugin& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const Plugin* internal_default_instance() {
+    return reinterpret_cast<const Plugin*>(
+               &_Plugin_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    74;
+
+  friend void swap(Plugin& a, Plugin& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(Plugin* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline Plugin* New() const final {
+    return CreateMaybeMessage<Plugin>(nullptr);
+  }
+
+  Plugin* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<Plugin>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const Plugin& from);
+  void MergeFrom(const Plugin& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(Plugin* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.Plugin";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kVersionFieldNumber = 2,
+    kFilenameFieldNumber = 3,
+    kDescriptionFieldNumber = 4,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string version = 2;
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  const std::string& version() const;
+  void set_version(const std::string& value);
+  void set_version(std::string&& value);
+  void set_version(const char* value);
+  void set_version(const char* value, size_t size);
+  std::string* mutable_version();
+  std::string* release_version();
+  void set_allocated_version(std::string* version);
+  private:
+  const std::string& _internal_version() const;
+  void _internal_set_version(const std::string& value);
+  std::string* _internal_mutable_version();
+  public:
+
+  // optional string filename = 3;
+  bool has_filename() const;
+  private:
+  bool _internal_has_filename() const;
+  public:
+  void clear_filename();
+  const std::string& filename() const;
+  void set_filename(const std::string& value);
+  void set_filename(std::string&& value);
+  void set_filename(const char* value);
+  void set_filename(const char* value, size_t size);
+  std::string* mutable_filename();
+  std::string* release_filename();
+  void set_allocated_filename(std::string* filename);
+  private:
+  const std::string& _internal_filename() const;
+  void _internal_set_filename(const std::string& value);
+  std::string* _internal_mutable_filename();
+  public:
+
+  // optional string description = 4;
+  bool has_description() const;
+  private:
+  bool _internal_has_description() const;
+  public:
+  void clear_description();
+  const std::string& description() const;
+  void set_description(const std::string& value);
+  void set_description(std::string&& value);
+  void set_description(const char* value);
+  void set_description(const char* value, size_t size);
+  std::string* mutable_description();
+  std::string* release_description();
+  void set_allocated_description(std::string* description);
+  private:
+  const std::string& _internal_description() const;
+  void _internal_set_description(const std::string& value);
+  std::string* _internal_mutable_description();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.Plugin)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr filename_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr description_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class Policy :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.Policy) */ {
+ public:
+  Policy();
+  virtual ~Policy();
+
+  Policy(const Policy& from);
+  Policy(Policy&& from) noexcept
+    : Policy() {
+    *this = ::std::move(from);
+  }
+
+  inline Policy& operator=(const Policy& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline Policy& operator=(Policy&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const Policy& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const Policy* internal_default_instance() {
+    return reinterpret_cast<const Policy*>(
+               &_Policy_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    75;
+
+  friend void swap(Policy& a, Policy& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(Policy* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline Policy* New() const final {
+    return CreateMaybeMessage<Policy>(nullptr);
+  }
+
+  Policy* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<Policy>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const Policy& from);
+  void MergeFrom(const Policy& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(Policy* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.Policy";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef Policy_PolicyLevel PolicyLevel;
+  static constexpr PolicyLevel LEVEL_UNKNOWN =
+    Policy_PolicyLevel_LEVEL_UNKNOWN;
+  static constexpr PolicyLevel LEVEL_RECOMMENDED =
+    Policy_PolicyLevel_LEVEL_RECOMMENDED;
+  static constexpr PolicyLevel LEVEL_MANDATORY =
+    Policy_PolicyLevel_LEVEL_MANDATORY;
+  static inline bool PolicyLevel_IsValid(int value) {
+    return Policy_PolicyLevel_IsValid(value);
+  }
+  static constexpr PolicyLevel PolicyLevel_MIN =
+    Policy_PolicyLevel_PolicyLevel_MIN;
+  static constexpr PolicyLevel PolicyLevel_MAX =
+    Policy_PolicyLevel_PolicyLevel_MAX;
+  static constexpr int PolicyLevel_ARRAYSIZE =
+    Policy_PolicyLevel_PolicyLevel_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& PolicyLevel_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, PolicyLevel>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function PolicyLevel_Name.");
+    return Policy_PolicyLevel_Name(enum_t_value);
+  }
+  static inline bool PolicyLevel_Parse(const std::string& name,
+      PolicyLevel* value) {
+    return Policy_PolicyLevel_Parse(name, value);
+  }
+
+  typedef Policy_PolicyScope PolicyScope;
+  static constexpr PolicyScope SCOPE_UNKNOWN =
+    Policy_PolicyScope_SCOPE_UNKNOWN;
+  static constexpr PolicyScope SCOPE_USER =
+    Policy_PolicyScope_SCOPE_USER;
+  static constexpr PolicyScope SCOPE_MACHINE =
+    Policy_PolicyScope_SCOPE_MACHINE;
+  static inline bool PolicyScope_IsValid(int value) {
+    return Policy_PolicyScope_IsValid(value);
+  }
+  static constexpr PolicyScope PolicyScope_MIN =
+    Policy_PolicyScope_PolicyScope_MIN;
+  static constexpr PolicyScope PolicyScope_MAX =
+    Policy_PolicyScope_PolicyScope_MAX;
+  static constexpr int PolicyScope_ARRAYSIZE =
+    Policy_PolicyScope_PolicyScope_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& PolicyScope_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, PolicyScope>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function PolicyScope_Name.");
+    return Policy_PolicyScope_Name(enum_t_value);
+  }
+  static inline bool PolicyScope_Parse(const std::string& name,
+      PolicyScope* value) {
+    return Policy_PolicyScope_Parse(name, value);
+  }
+
+  typedef Policy_PolicySource PolicySource;
+  static constexpr PolicySource SOURCE_UNKNOWN =
+    Policy_PolicySource_SOURCE_UNKNOWN;
+  static constexpr PolicySource SOURCE_ENTERPRISE_DEFAULT =
+    Policy_PolicySource_SOURCE_ENTERPRISE_DEFAULT;
+  static constexpr PolicySource SOURCE_CLOUD =
+    Policy_PolicySource_SOURCE_CLOUD;
+  static constexpr PolicySource SOURCE_ACTIVE_DIRECTORY =
+    Policy_PolicySource_SOURCE_ACTIVE_DIRECTORY;
+  static constexpr PolicySource SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE_DEPRECATED =
+    Policy_PolicySource_SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE_DEPRECATED;
+  static constexpr PolicySource SOURCE_PLATFORM =
+    Policy_PolicySource_SOURCE_PLATFORM;
+  static constexpr PolicySource SOURCE_PRIORITY_CLOUD_DEPRECATED =
+    Policy_PolicySource_SOURCE_PRIORITY_CLOUD_DEPRECATED;
+  static constexpr PolicySource SOURCE_MERGED =
+    Policy_PolicySource_SOURCE_MERGED;
+  static constexpr PolicySource SOURCE_COMMAND_LINE =
+    Policy_PolicySource_SOURCE_COMMAND_LINE;
+  static constexpr PolicySource SOURCE_CLOUD_FROM_ASH =
+    Policy_PolicySource_SOURCE_CLOUD_FROM_ASH;
+  static constexpr PolicySource SOURCE_RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE =
+    Policy_PolicySource_SOURCE_RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE;
+  static inline bool PolicySource_IsValid(int value) {
+    return Policy_PolicySource_IsValid(value);
+  }
+  static constexpr PolicySource PolicySource_MIN =
+    Policy_PolicySource_PolicySource_MIN;
+  static constexpr PolicySource PolicySource_MAX =
+    Policy_PolicySource_PolicySource_MAX;
+  static constexpr int PolicySource_ARRAYSIZE =
+    Policy_PolicySource_PolicySource_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& PolicySource_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, PolicySource>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function PolicySource_Name.");
+    return Policy_PolicySource_Name(enum_t_value);
+  }
+  static inline bool PolicySource_Parse(const std::string& name,
+      PolicySource* value) {
+    return Policy_PolicySource_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kValueFieldNumber = 5,
+    kErrorFieldNumber = 6,
+    kLevelFieldNumber = 2,
+    kScopeFieldNumber = 3,
+    kSourceFieldNumber = 4,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string value = 5;
+  bool has_value() const;
+  private:
+  bool _internal_has_value() const;
+  public:
+  void clear_value();
+  const std::string& value() const;
+  void set_value(const std::string& value);
+  void set_value(std::string&& value);
+  void set_value(const char* value);
+  void set_value(const char* value, size_t size);
+  std::string* mutable_value();
+  std::string* release_value();
+  void set_allocated_value(std::string* value);
+  private:
+  const std::string& _internal_value() const;
+  void _internal_set_value(const std::string& value);
+  std::string* _internal_mutable_value();
+  public:
+
+  // optional string error = 6;
+  bool has_error() const;
+  private:
+  bool _internal_has_error() const;
+  public:
+  void clear_error();
+  const std::string& error() const;
+  void set_error(const std::string& value);
+  void set_error(std::string&& value);
+  void set_error(const char* value);
+  void set_error(const char* value, size_t size);
+  std::string* mutable_error();
+  std::string* release_error();
+  void set_allocated_error(std::string* error);
+  private:
+  const std::string& _internal_error() const;
+  void _internal_set_error(const std::string& value);
+  std::string* _internal_mutable_error();
+  public:
+
+  // optional .enterprise_management.Policy.PolicyLevel level = 2;
+  bool has_level() const;
+  private:
+  bool _internal_has_level() const;
+  public:
+  void clear_level();
+  ::enterprise_management::Policy_PolicyLevel level() const;
+  void set_level(::enterprise_management::Policy_PolicyLevel value);
+  private:
+  ::enterprise_management::Policy_PolicyLevel _internal_level() const;
+  void _internal_set_level(::enterprise_management::Policy_PolicyLevel value);
+  public:
+
+  // optional .enterprise_management.Policy.PolicyScope scope = 3;
+  bool has_scope() const;
+  private:
+  bool _internal_has_scope() const;
+  public:
+  void clear_scope();
+  ::enterprise_management::Policy_PolicyScope scope() const;
+  void set_scope(::enterprise_management::Policy_PolicyScope value);
+  private:
+  ::enterprise_management::Policy_PolicyScope _internal_scope() const;
+  void _internal_set_scope(::enterprise_management::Policy_PolicyScope value);
+  public:
+
+  // optional .enterprise_management.Policy.PolicySource source = 4;
+  bool has_source() const;
+  private:
+  bool _internal_has_source() const;
+  public:
+  void clear_source();
+  ::enterprise_management::Policy_PolicySource source() const;
+  void set_source(::enterprise_management::Policy_PolicySource value);
+  private:
+  ::enterprise_management::Policy_PolicySource _internal_source() const;
+  void _internal_set_source(::enterprise_management::Policy_PolicySource value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.Policy)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr error_;
+  int level_;
+  int scope_;
+  int source_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ExtensionPolicy :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ExtensionPolicy) */ {
+ public:
+  ExtensionPolicy();
+  virtual ~ExtensionPolicy();
+
+  ExtensionPolicy(const ExtensionPolicy& from);
+  ExtensionPolicy(ExtensionPolicy&& from) noexcept
+    : ExtensionPolicy() {
+    *this = ::std::move(from);
+  }
+
+  inline ExtensionPolicy& operator=(const ExtensionPolicy& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ExtensionPolicy& operator=(ExtensionPolicy&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ExtensionPolicy& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ExtensionPolicy* internal_default_instance() {
+    return reinterpret_cast<const ExtensionPolicy*>(
+               &_ExtensionPolicy_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    76;
+
+  friend void swap(ExtensionPolicy& a, ExtensionPolicy& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ExtensionPolicy* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ExtensionPolicy* New() const final {
+    return CreateMaybeMessage<ExtensionPolicy>(nullptr);
+  }
+
+  ExtensionPolicy* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ExtensionPolicy>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ExtensionPolicy& from);
+  void MergeFrom(const ExtensionPolicy& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ExtensionPolicy* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ExtensionPolicy";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPoliciesFieldNumber = 2,
+    kExtensionIdFieldNumber = 1,
+  };
+  // repeated .enterprise_management.Policy policies = 2;
+  int policies_size() const;
+  private:
+  int _internal_policies_size() const;
+  public:
+  void clear_policies();
+  ::enterprise_management::Policy* mutable_policies(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy >*
+      mutable_policies();
+  private:
+  const ::enterprise_management::Policy& _internal_policies(int index) const;
+  ::enterprise_management::Policy* _internal_add_policies();
+  public:
+  const ::enterprise_management::Policy& policies(int index) const;
+  ::enterprise_management::Policy* add_policies();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy >&
+      policies() const;
+
+  // optional string extension_id = 1;
+  bool has_extension_id() const;
+  private:
+  bool _internal_has_extension_id() const;
+  public:
+  void clear_extension_id();
+  const std::string& extension_id() const;
+  void set_extension_id(const std::string& value);
+  void set_extension_id(std::string&& value);
+  void set_extension_id(const char* value);
+  void set_extension_id(const char* value, size_t size);
+  std::string* mutable_extension_id();
+  std::string* release_extension_id();
+  void set_allocated_extension_id(std::string* extension_id);
+  private:
+  const std::string& _internal_extension_id() const;
+  void _internal_set_extension_id(const std::string& value);
+  std::string* _internal_mutable_extension_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ExtensionPolicy)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy > policies_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr extension_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PolicyFetchTimestamp :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PolicyFetchTimestamp) */ {
+ public:
+  PolicyFetchTimestamp();
+  virtual ~PolicyFetchTimestamp();
+
+  PolicyFetchTimestamp(const PolicyFetchTimestamp& from);
+  PolicyFetchTimestamp(PolicyFetchTimestamp&& from) noexcept
+    : PolicyFetchTimestamp() {
+    *this = ::std::move(from);
+  }
+
+  inline PolicyFetchTimestamp& operator=(const PolicyFetchTimestamp& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PolicyFetchTimestamp& operator=(PolicyFetchTimestamp&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PolicyFetchTimestamp& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PolicyFetchTimestamp* internal_default_instance() {
+    return reinterpret_cast<const PolicyFetchTimestamp*>(
+               &_PolicyFetchTimestamp_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    77;
+
+  friend void swap(PolicyFetchTimestamp& a, PolicyFetchTimestamp& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PolicyFetchTimestamp* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PolicyFetchTimestamp* New() const final {
+    return CreateMaybeMessage<PolicyFetchTimestamp>(nullptr);
+  }
+
+  PolicyFetchTimestamp* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PolicyFetchTimestamp>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PolicyFetchTimestamp& from);
+  void MergeFrom(const PolicyFetchTimestamp& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PolicyFetchTimestamp* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PolicyFetchTimestamp";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTypeFieldNumber = 1,
+    kTimestampFieldNumber = 2,
+  };
+  // optional string type = 1;
+  bool has_type() const;
+  private:
+  bool _internal_has_type() const;
+  public:
+  void clear_type();
+  const std::string& type() const;
+  void set_type(const std::string& value);
+  void set_type(std::string&& value);
+  void set_type(const char* value);
+  void set_type(const char* value, size_t size);
+  std::string* mutable_type();
+  std::string* release_type();
+  void set_allocated_type(std::string* type);
+  private:
+  const std::string& _internal_type() const;
+  void _internal_set_type(const std::string& value);
+  std::string* _internal_mutable_type();
+  public:
+
+  // optional int64 timestamp = 2;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PolicyFetchTimestamp)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr type_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeUserProfileInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeUserProfileInfo) */ {
+ public:
+  ChromeUserProfileInfo();
+  virtual ~ChromeUserProfileInfo();
+
+  ChromeUserProfileInfo(const ChromeUserProfileInfo& from);
+  ChromeUserProfileInfo(ChromeUserProfileInfo&& from) noexcept
+    : ChromeUserProfileInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeUserProfileInfo& operator=(const ChromeUserProfileInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeUserProfileInfo& operator=(ChromeUserProfileInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeUserProfileInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeUserProfileInfo* internal_default_instance() {
+    return reinterpret_cast<const ChromeUserProfileInfo*>(
+               &_ChromeUserProfileInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    78;
+
+  friend void swap(ChromeUserProfileInfo& a, ChromeUserProfileInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeUserProfileInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeUserProfileInfo* New() const final {
+    return CreateMaybeMessage<ChromeUserProfileInfo>(nullptr);
+  }
+
+  ChromeUserProfileInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeUserProfileInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeUserProfileInfo& from);
+  void MergeFrom(const ChromeUserProfileInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeUserProfileInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeUserProfileInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kExtensionsFieldNumber = 5,
+    kChromePoliciesFieldNumber = 7,
+    kExtensionPoliciesFieldNumber = 8,
+    kPolicyFetchedTimestampsFieldNumber = 9,
+    kExtensionRequestsFieldNumber = 10,
+    kIdFieldNumber = 1,
+    kNameFieldNumber = 2,
+    kChromeSignedInUserFieldNumber = 4,
+    kIsDetailAvailableFieldNumber = 3,
+  };
+  // repeated .enterprise_management.Extension extensions = 5;
+  int extensions_size() const;
+  private:
+  int _internal_extensions_size() const;
+  public:
+  void clear_extensions();
+  ::enterprise_management::Extension* mutable_extensions(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Extension >*
+      mutable_extensions();
+  private:
+  const ::enterprise_management::Extension& _internal_extensions(int index) const;
+  ::enterprise_management::Extension* _internal_add_extensions();
+  public:
+  const ::enterprise_management::Extension& extensions(int index) const;
+  ::enterprise_management::Extension* add_extensions();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Extension >&
+      extensions() const;
+
+  // repeated .enterprise_management.Policy chrome_policies = 7;
+  int chrome_policies_size() const;
+  private:
+  int _internal_chrome_policies_size() const;
+  public:
+  void clear_chrome_policies();
+  ::enterprise_management::Policy* mutable_chrome_policies(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy >*
+      mutable_chrome_policies();
+  private:
+  const ::enterprise_management::Policy& _internal_chrome_policies(int index) const;
+  ::enterprise_management::Policy* _internal_add_chrome_policies();
+  public:
+  const ::enterprise_management::Policy& chrome_policies(int index) const;
+  ::enterprise_management::Policy* add_chrome_policies();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy >&
+      chrome_policies() const;
+
+  // repeated .enterprise_management.ExtensionPolicy extension_policies = 8;
+  int extension_policies_size() const;
+  private:
+  int _internal_extension_policies_size() const;
+  public:
+  void clear_extension_policies();
+  ::enterprise_management::ExtensionPolicy* mutable_extension_policies(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionPolicy >*
+      mutable_extension_policies();
+  private:
+  const ::enterprise_management::ExtensionPolicy& _internal_extension_policies(int index) const;
+  ::enterprise_management::ExtensionPolicy* _internal_add_extension_policies();
+  public:
+  const ::enterprise_management::ExtensionPolicy& extension_policies(int index) const;
+  ::enterprise_management::ExtensionPolicy* add_extension_policies();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionPolicy >&
+      extension_policies() const;
+
+  // repeated .enterprise_management.PolicyFetchTimestamp policy_fetched_timestamps = 9;
+  int policy_fetched_timestamps_size() const;
+  private:
+  int _internal_policy_fetched_timestamps_size() const;
+  public:
+  void clear_policy_fetched_timestamps();
+  ::enterprise_management::PolicyFetchTimestamp* mutable_policy_fetched_timestamps(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchTimestamp >*
+      mutable_policy_fetched_timestamps();
+  private:
+  const ::enterprise_management::PolicyFetchTimestamp& _internal_policy_fetched_timestamps(int index) const;
+  ::enterprise_management::PolicyFetchTimestamp* _internal_add_policy_fetched_timestamps();
+  public:
+  const ::enterprise_management::PolicyFetchTimestamp& policy_fetched_timestamps(int index) const;
+  ::enterprise_management::PolicyFetchTimestamp* add_policy_fetched_timestamps();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchTimestamp >&
+      policy_fetched_timestamps() const;
+
+  // repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+  int extension_requests_size() const;
+  private:
+  int _internal_extension_requests_size() const;
+  public:
+  void clear_extension_requests();
+  ::enterprise_management::ExtensionRequest* mutable_extension_requests(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest >*
+      mutable_extension_requests();
+  private:
+  const ::enterprise_management::ExtensionRequest& _internal_extension_requests(int index) const;
+  ::enterprise_management::ExtensionRequest* _internal_add_extension_requests();
+  public:
+  const ::enterprise_management::ExtensionRequest& extension_requests(int index) const;
+  ::enterprise_management::ExtensionRequest* add_extension_requests();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest >&
+      extension_requests() const;
+
+  // optional string id = 1;
+  bool has_id() const;
+  private:
+  bool _internal_has_id() const;
+  public:
+  void clear_id();
+  const std::string& id() const;
+  void set_id(const std::string& value);
+  void set_id(std::string&& value);
+  void set_id(const char* value);
+  void set_id(const char* value, size_t size);
+  std::string* mutable_id();
+  std::string* release_id();
+  void set_allocated_id(std::string* id);
+  private:
+  const std::string& _internal_id() const;
+  void _internal_set_id(const std::string& value);
+  std::string* _internal_mutable_id();
+  public:
+
+  // optional string name = 2;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional .enterprise_management.ChromeSignedInUser chrome_signed_in_user = 4;
+  bool has_chrome_signed_in_user() const;
+  private:
+  bool _internal_has_chrome_signed_in_user() const;
+  public:
+  void clear_chrome_signed_in_user();
+  const ::enterprise_management::ChromeSignedInUser& chrome_signed_in_user() const;
+  ::enterprise_management::ChromeSignedInUser* release_chrome_signed_in_user();
+  ::enterprise_management::ChromeSignedInUser* mutable_chrome_signed_in_user();
+  void set_allocated_chrome_signed_in_user(::enterprise_management::ChromeSignedInUser* chrome_signed_in_user);
+  private:
+  const ::enterprise_management::ChromeSignedInUser& _internal_chrome_signed_in_user() const;
+  ::enterprise_management::ChromeSignedInUser* _internal_mutable_chrome_signed_in_user();
+  public:
+
+  // optional bool is_detail_available = 3;
+  bool has_is_detail_available() const;
+  private:
+  bool _internal_has_is_detail_available() const;
+  public:
+  void clear_is_detail_available();
+  bool is_detail_available() const;
+  void set_is_detail_available(bool value);
+  private:
+  bool _internal_is_detail_available() const;
+  void _internal_set_is_detail_available(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeUserProfileInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Extension > extensions_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy > chrome_policies_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionPolicy > extension_policies_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchTimestamp > policy_fetched_timestamps_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest > extension_requests_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::enterprise_management::ChromeSignedInUser* chrome_signed_in_user_;
+  bool is_detail_available_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BrowserReport :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BrowserReport) */ {
+ public:
+  BrowserReport();
+  virtual ~BrowserReport();
+
+  BrowserReport(const BrowserReport& from);
+  BrowserReport(BrowserReport&& from) noexcept
+    : BrowserReport() {
+    *this = ::std::move(from);
+  }
+
+  inline BrowserReport& operator=(const BrowserReport& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BrowserReport& operator=(BrowserReport&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BrowserReport& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BrowserReport* internal_default_instance() {
+    return reinterpret_cast<const BrowserReport*>(
+               &_BrowserReport_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    79;
+
+  friend void swap(BrowserReport& a, BrowserReport& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BrowserReport* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BrowserReport* New() const final {
+    return CreateMaybeMessage<BrowserReport>(nullptr);
+  }
+
+  BrowserReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BrowserReport>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BrowserReport& from);
+  void MergeFrom(const BrowserReport& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BrowserReport* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BrowserReport";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kChromeUserProfileReportsFieldNumber = 4,
+    kChromeUserProfileInfosFieldNumber = 6,
+    kPluginsFieldNumber = 7,
+    kBrowserVersionFieldNumber = 1,
+    kExecutablePathFieldNumber = 3,
+    kInstalledBrowserVersionFieldNumber = 8,
+    kChannelFieldNumber = 2,
+    kIsExtendedStableChannelFieldNumber = 9,
+  };
+  // repeated .enterprise_management.ChromeUserProfileReport chrome_user_profile_reports = 4;
+  int chrome_user_profile_reports_size() const;
+  private:
+  int _internal_chrome_user_profile_reports_size() const;
+  public:
+  void clear_chrome_user_profile_reports();
+  ::enterprise_management::ChromeUserProfileReport* mutable_chrome_user_profile_reports(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileReport >*
+      mutable_chrome_user_profile_reports();
+  private:
+  const ::enterprise_management::ChromeUserProfileReport& _internal_chrome_user_profile_reports(int index) const;
+  ::enterprise_management::ChromeUserProfileReport* _internal_add_chrome_user_profile_reports();
+  public:
+  const ::enterprise_management::ChromeUserProfileReport& chrome_user_profile_reports(int index) const;
+  ::enterprise_management::ChromeUserProfileReport* add_chrome_user_profile_reports();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileReport >&
+      chrome_user_profile_reports() const;
+
+  // repeated .enterprise_management.ChromeUserProfileInfo chrome_user_profile_infos = 6;
+  int chrome_user_profile_infos_size() const;
+  private:
+  int _internal_chrome_user_profile_infos_size() const;
+  public:
+  void clear_chrome_user_profile_infos();
+  ::enterprise_management::ChromeUserProfileInfo* mutable_chrome_user_profile_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileInfo >*
+      mutable_chrome_user_profile_infos();
+  private:
+  const ::enterprise_management::ChromeUserProfileInfo& _internal_chrome_user_profile_infos(int index) const;
+  ::enterprise_management::ChromeUserProfileInfo* _internal_add_chrome_user_profile_infos();
+  public:
+  const ::enterprise_management::ChromeUserProfileInfo& chrome_user_profile_infos(int index) const;
+  ::enterprise_management::ChromeUserProfileInfo* add_chrome_user_profile_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileInfo >&
+      chrome_user_profile_infos() const;
+
+  // repeated .enterprise_management.Plugin plugins = 7;
+  int plugins_size() const;
+  private:
+  int _internal_plugins_size() const;
+  public:
+  void clear_plugins();
+  ::enterprise_management::Plugin* mutable_plugins(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Plugin >*
+      mutable_plugins();
+  private:
+  const ::enterprise_management::Plugin& _internal_plugins(int index) const;
+  ::enterprise_management::Plugin* _internal_add_plugins();
+  public:
+  const ::enterprise_management::Plugin& plugins(int index) const;
+  ::enterprise_management::Plugin* add_plugins();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Plugin >&
+      plugins() const;
+
+  // optional string browser_version = 1;
+  bool has_browser_version() const;
+  private:
+  bool _internal_has_browser_version() const;
+  public:
+  void clear_browser_version();
+  const std::string& browser_version() const;
+  void set_browser_version(const std::string& value);
+  void set_browser_version(std::string&& value);
+  void set_browser_version(const char* value);
+  void set_browser_version(const char* value, size_t size);
+  std::string* mutable_browser_version();
+  std::string* release_browser_version();
+  void set_allocated_browser_version(std::string* browser_version);
+  private:
+  const std::string& _internal_browser_version() const;
+  void _internal_set_browser_version(const std::string& value);
+  std::string* _internal_mutable_browser_version();
+  public:
+
+  // optional string executable_path = 3;
+  bool has_executable_path() const;
+  private:
+  bool _internal_has_executable_path() const;
+  public:
+  void clear_executable_path();
+  const std::string& executable_path() const;
+  void set_executable_path(const std::string& value);
+  void set_executable_path(std::string&& value);
+  void set_executable_path(const char* value);
+  void set_executable_path(const char* value, size_t size);
+  std::string* mutable_executable_path();
+  std::string* release_executable_path();
+  void set_allocated_executable_path(std::string* executable_path);
+  private:
+  const std::string& _internal_executable_path() const;
+  void _internal_set_executable_path(const std::string& value);
+  std::string* _internal_mutable_executable_path();
+  public:
+
+  // optional string installed_browser_version = 8;
+  bool has_installed_browser_version() const;
+  private:
+  bool _internal_has_installed_browser_version() const;
+  public:
+  void clear_installed_browser_version();
+  const std::string& installed_browser_version() const;
+  void set_installed_browser_version(const std::string& value);
+  void set_installed_browser_version(std::string&& value);
+  void set_installed_browser_version(const char* value);
+  void set_installed_browser_version(const char* value, size_t size);
+  std::string* mutable_installed_browser_version();
+  std::string* release_installed_browser_version();
+  void set_allocated_installed_browser_version(std::string* installed_browser_version);
+  private:
+  const std::string& _internal_installed_browser_version() const;
+  void _internal_set_installed_browser_version(const std::string& value);
+  std::string* _internal_mutable_installed_browser_version();
+  public:
+
+  // optional .enterprise_management.Channel channel = 2;
+  bool has_channel() const;
+  private:
+  bool _internal_has_channel() const;
+  public:
+  void clear_channel();
+  ::enterprise_management::Channel channel() const;
+  void set_channel(::enterprise_management::Channel value);
+  private:
+  ::enterprise_management::Channel _internal_channel() const;
+  void _internal_set_channel(::enterprise_management::Channel value);
+  public:
+
+  // optional bool is_extended_stable_channel = 9 [default = false];
+  bool has_is_extended_stable_channel() const;
+  private:
+  bool _internal_has_is_extended_stable_channel() const;
+  public:
+  void clear_is_extended_stable_channel();
+  bool is_extended_stable_channel() const;
+  void set_is_extended_stable_channel(bool value);
+  private:
+  bool _internal_is_extended_stable_channel() const;
+  void _internal_set_is_extended_stable_channel(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BrowserReport)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileReport > chrome_user_profile_reports_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileInfo > chrome_user_profile_infos_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Plugin > plugins_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr browser_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr executable_path_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr installed_browser_version_;
+  int channel_;
+  bool is_extended_stable_channel_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class OSReport :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.OSReport) */ {
+ public:
+  OSReport();
+  virtual ~OSReport();
+
+  OSReport(const OSReport& from);
+  OSReport(OSReport&& from) noexcept
+    : OSReport() {
+    *this = ::std::move(from);
+  }
+
+  inline OSReport& operator=(const OSReport& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline OSReport& operator=(OSReport&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const OSReport& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const OSReport* internal_default_instance() {
+    return reinterpret_cast<const OSReport*>(
+               &_OSReport_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    80;
+
+  friend void swap(OSReport& a, OSReport& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(OSReport* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline OSReport* New() const final {
+    return CreateMaybeMessage<OSReport>(nullptr);
+  }
+
+  OSReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<OSReport>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const OSReport& from);
+  void MergeFrom(const OSReport& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(OSReport* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.OSReport";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kArchFieldNumber = 2,
+    kVersionFieldNumber = 3,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string arch = 2;
+  bool has_arch() const;
+  private:
+  bool _internal_has_arch() const;
+  public:
+  void clear_arch();
+  const std::string& arch() const;
+  void set_arch(const std::string& value);
+  void set_arch(std::string&& value);
+  void set_arch(const char* value);
+  void set_arch(const char* value, size_t size);
+  std::string* mutable_arch();
+  std::string* release_arch();
+  void set_allocated_arch(std::string* arch);
+  private:
+  const std::string& _internal_arch() const;
+  void _internal_set_arch(const std::string& value);
+  std::string* _internal_mutable_arch();
+  public:
+
+  // optional string version = 3;
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  const std::string& version() const;
+  void set_version(const std::string& value);
+  void set_version(std::string&& value);
+  void set_version(const char* value);
+  void set_version(const char* value, size_t size);
+  std::string* mutable_version();
+  std::string* release_version();
+  void set_allocated_version(std::string* version);
+  private:
+  const std::string& _internal_version() const;
+  void _internal_set_version(const std::string& value);
+  std::string* _internal_mutable_version();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.OSReport)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr arch_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeDesktopReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeDesktopReportRequest) */ {
+ public:
+  ChromeDesktopReportRequest();
+  virtual ~ChromeDesktopReportRequest();
+
+  ChromeDesktopReportRequest(const ChromeDesktopReportRequest& from);
+  ChromeDesktopReportRequest(ChromeDesktopReportRequest&& from) noexcept
+    : ChromeDesktopReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeDesktopReportRequest& operator=(const ChromeDesktopReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeDesktopReportRequest& operator=(ChromeDesktopReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeDesktopReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeDesktopReportRequest* internal_default_instance() {
+    return reinterpret_cast<const ChromeDesktopReportRequest*>(
+               &_ChromeDesktopReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    81;
+
+  friend void swap(ChromeDesktopReportRequest& a, ChromeDesktopReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeDesktopReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeDesktopReportRequest* New() const final {
+    return CreateMaybeMessage<ChromeDesktopReportRequest>(nullptr);
+  }
+
+  ChromeDesktopReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeDesktopReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeDesktopReportRequest& from);
+  void MergeFrom(const ChromeDesktopReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeDesktopReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeDesktopReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPartialReportTypesFieldNumber = 10,
+    kMachineNameFieldNumber = 1,
+    kOsInfoFieldNumber = 2,
+    kOsUserFieldNumber = 3,
+    kSerialNumberFieldNumber = 5,
+    kComputerNameFieldNumber = 6,
+    kOsUserNameFieldNumber = 8,
+    kMachineAttestationKeyFieldNumber = 11,
+    kDeviceModelFieldNumber = 12,
+    kBrandNameFieldNumber = 13,
+    kBrowserReportFieldNumber = 4,
+    kOsReportFieldNumber = 7,
+    kBrowserDeviceIdentifierFieldNumber = 9,
+  };
+  // repeated .enterprise_management.PartialReportType partial_report_types = 10;
+  int partial_report_types_size() const;
+  private:
+  int _internal_partial_report_types_size() const;
+  public:
+  void clear_partial_report_types();
+  private:
+  ::enterprise_management::PartialReportType _internal_partial_report_types(int index) const;
+  void _internal_add_partial_report_types(::enterprise_management::PartialReportType value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_partial_report_types();
+  public:
+  ::enterprise_management::PartialReportType partial_report_types(int index) const;
+  void set_partial_report_types(int index, ::enterprise_management::PartialReportType value);
+  void add_partial_report_types(::enterprise_management::PartialReportType value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& partial_report_types() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_partial_report_types();
+
+  // optional string machine_name = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_machine_name() const;
+  private:
+  bool _internal_has_machine_name() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_machine_name();
+  PROTOBUF_DEPRECATED const std::string& machine_name() const;
+  PROTOBUF_DEPRECATED void set_machine_name(const std::string& value);
+  PROTOBUF_DEPRECATED void set_machine_name(std::string&& value);
+  PROTOBUF_DEPRECATED void set_machine_name(const char* value);
+  PROTOBUF_DEPRECATED void set_machine_name(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_machine_name();
+  PROTOBUF_DEPRECATED std::string* release_machine_name();
+  PROTOBUF_DEPRECATED void set_allocated_machine_name(std::string* machine_name);
+  private:
+  const std::string& _internal_machine_name() const;
+  void _internal_set_machine_name(const std::string& value);
+  std::string* _internal_mutable_machine_name();
+  public:
+
+  // optional string os_info = 2;
+  bool has_os_info() const;
+  private:
+  bool _internal_has_os_info() const;
+  public:
+  void clear_os_info();
+  const std::string& os_info() const;
+  void set_os_info(const std::string& value);
+  void set_os_info(std::string&& value);
+  void set_os_info(const char* value);
+  void set_os_info(const char* value, size_t size);
+  std::string* mutable_os_info();
+  std::string* release_os_info();
+  void set_allocated_os_info(std::string* os_info);
+  private:
+  const std::string& _internal_os_info() const;
+  void _internal_set_os_info(const std::string& value);
+  std::string* _internal_mutable_os_info();
+  public:
+
+  // optional string os_user = 3;
+  bool has_os_user() const;
+  private:
+  bool _internal_has_os_user() const;
+  public:
+  void clear_os_user();
+  const std::string& os_user() const;
+  void set_os_user(const std::string& value);
+  void set_os_user(std::string&& value);
+  void set_os_user(const char* value);
+  void set_os_user(const char* value, size_t size);
+  std::string* mutable_os_user();
+  std::string* release_os_user();
+  void set_allocated_os_user(std::string* os_user);
+  private:
+  const std::string& _internal_os_user() const;
+  void _internal_set_os_user(const std::string& value);
+  std::string* _internal_mutable_os_user();
+  public:
+
+  // optional string serial_number = 5 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_serial_number() const;
+  private:
+  bool _internal_has_serial_number() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_serial_number();
+  PROTOBUF_DEPRECATED const std::string& serial_number() const;
+  PROTOBUF_DEPRECATED void set_serial_number(const std::string& value);
+  PROTOBUF_DEPRECATED void set_serial_number(std::string&& value);
+  PROTOBUF_DEPRECATED void set_serial_number(const char* value);
+  PROTOBUF_DEPRECATED void set_serial_number(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_serial_number();
+  PROTOBUF_DEPRECATED std::string* release_serial_number();
+  PROTOBUF_DEPRECATED void set_allocated_serial_number(std::string* serial_number);
+  private:
+  const std::string& _internal_serial_number() const;
+  void _internal_set_serial_number(const std::string& value);
+  std::string* _internal_mutable_serial_number();
+  public:
+
+  // optional string computer_name = 6 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_computer_name() const;
+  private:
+  bool _internal_has_computer_name() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_computer_name();
+  PROTOBUF_DEPRECATED const std::string& computer_name() const;
+  PROTOBUF_DEPRECATED void set_computer_name(const std::string& value);
+  PROTOBUF_DEPRECATED void set_computer_name(std::string&& value);
+  PROTOBUF_DEPRECATED void set_computer_name(const char* value);
+  PROTOBUF_DEPRECATED void set_computer_name(const char* value, size_t size);
+  PROTOBUF_DEPRECATED std::string* mutable_computer_name();
+  PROTOBUF_DEPRECATED std::string* release_computer_name();
+  PROTOBUF_DEPRECATED void set_allocated_computer_name(std::string* computer_name);
+  private:
+  const std::string& _internal_computer_name() const;
+  void _internal_set_computer_name(const std::string& value);
+  std::string* _internal_mutable_computer_name();
+  public:
+
+  // optional string os_user_name = 8;
+  bool has_os_user_name() const;
+  private:
+  bool _internal_has_os_user_name() const;
+  public:
+  void clear_os_user_name();
+  const std::string& os_user_name() const;
+  void set_os_user_name(const std::string& value);
+  void set_os_user_name(std::string&& value);
+  void set_os_user_name(const char* value);
+  void set_os_user_name(const char* value, size_t size);
+  std::string* mutable_os_user_name();
+  std::string* release_os_user_name();
+  void set_allocated_os_user_name(std::string* os_user_name);
+  private:
+  const std::string& _internal_os_user_name() const;
+  void _internal_set_os_user_name(const std::string& value);
+  std::string* _internal_mutable_os_user_name();
+  public:
+
+  // optional string machine_attestation_key = 11;
+  bool has_machine_attestation_key() const;
+  private:
+  bool _internal_has_machine_attestation_key() const;
+  public:
+  void clear_machine_attestation_key();
+  const std::string& machine_attestation_key() const;
+  void set_machine_attestation_key(const std::string& value);
+  void set_machine_attestation_key(std::string&& value);
+  void set_machine_attestation_key(const char* value);
+  void set_machine_attestation_key(const char* value, size_t size);
+  std::string* mutable_machine_attestation_key();
+  std::string* release_machine_attestation_key();
+  void set_allocated_machine_attestation_key(std::string* machine_attestation_key);
+  private:
+  const std::string& _internal_machine_attestation_key() const;
+  void _internal_set_machine_attestation_key(const std::string& value);
+  std::string* _internal_mutable_machine_attestation_key();
+  public:
+
+  // optional string device_model = 12;
+  bool has_device_model() const;
+  private:
+  bool _internal_has_device_model() const;
+  public:
+  void clear_device_model();
+  const std::string& device_model() const;
+  void set_device_model(const std::string& value);
+  void set_device_model(std::string&& value);
+  void set_device_model(const char* value);
+  void set_device_model(const char* value, size_t size);
+  std::string* mutable_device_model();
+  std::string* release_device_model();
+  void set_allocated_device_model(std::string* device_model);
+  private:
+  const std::string& _internal_device_model() const;
+  void _internal_set_device_model(const std::string& value);
+  std::string* _internal_mutable_device_model();
+  public:
+
+  // optional string brand_name = 13;
+  bool has_brand_name() const;
+  private:
+  bool _internal_has_brand_name() const;
+  public:
+  void clear_brand_name();
+  const std::string& brand_name() const;
+  void set_brand_name(const std::string& value);
+  void set_brand_name(std::string&& value);
+  void set_brand_name(const char* value);
+  void set_brand_name(const char* value, size_t size);
+  std::string* mutable_brand_name();
+  std::string* release_brand_name();
+  void set_allocated_brand_name(std::string* brand_name);
+  private:
+  const std::string& _internal_brand_name() const;
+  void _internal_set_brand_name(const std::string& value);
+  std::string* _internal_mutable_brand_name();
+  public:
+
+  // optional .enterprise_management.BrowserReport browser_report = 4;
+  bool has_browser_report() const;
+  private:
+  bool _internal_has_browser_report() const;
+  public:
+  void clear_browser_report();
+  const ::enterprise_management::BrowserReport& browser_report() const;
+  ::enterprise_management::BrowserReport* release_browser_report();
+  ::enterprise_management::BrowserReport* mutable_browser_report();
+  void set_allocated_browser_report(::enterprise_management::BrowserReport* browser_report);
+  private:
+  const ::enterprise_management::BrowserReport& _internal_browser_report() const;
+  ::enterprise_management::BrowserReport* _internal_mutable_browser_report();
+  public:
+
+  // optional .enterprise_management.OSReport os_report = 7;
+  bool has_os_report() const;
+  private:
+  bool _internal_has_os_report() const;
+  public:
+  void clear_os_report();
+  const ::enterprise_management::OSReport& os_report() const;
+  ::enterprise_management::OSReport* release_os_report();
+  ::enterprise_management::OSReport* mutable_os_report();
+  void set_allocated_os_report(::enterprise_management::OSReport* os_report);
+  private:
+  const ::enterprise_management::OSReport& _internal_os_report() const;
+  ::enterprise_management::OSReport* _internal_mutable_os_report();
+  public:
+
+  // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 9;
+  bool has_browser_device_identifier() const;
+  private:
+  bool _internal_has_browser_device_identifier() const;
+  public:
+  void clear_browser_device_identifier();
+  const ::enterprise_management::BrowserDeviceIdentifier& browser_device_identifier() const;
+  ::enterprise_management::BrowserDeviceIdentifier* release_browser_device_identifier();
+  ::enterprise_management::BrowserDeviceIdentifier* mutable_browser_device_identifier();
+  void set_allocated_browser_device_identifier(::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier);
+  private:
+  const ::enterprise_management::BrowserDeviceIdentifier& _internal_browser_device_identifier() const;
+  ::enterprise_management::BrowserDeviceIdentifier* _internal_mutable_browser_device_identifier();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeDesktopReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> partial_report_types_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr machine_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr os_info_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr os_user_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr serial_number_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr computer_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr os_user_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr machine_attestation_key_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_model_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr brand_name_;
+  ::enterprise_management::BrowserReport* browser_report_;
+  ::enterprise_management::OSReport* os_report_;
+  ::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeOsUserReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeOsUserReportRequest) */ {
+ public:
+  ChromeOsUserReportRequest();
+  virtual ~ChromeOsUserReportRequest();
+
+  ChromeOsUserReportRequest(const ChromeOsUserReportRequest& from);
+  ChromeOsUserReportRequest(ChromeOsUserReportRequest&& from) noexcept
+    : ChromeOsUserReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeOsUserReportRequest& operator=(const ChromeOsUserReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeOsUserReportRequest& operator=(ChromeOsUserReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeOsUserReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeOsUserReportRequest* internal_default_instance() {
+    return reinterpret_cast<const ChromeOsUserReportRequest*>(
+               &_ChromeOsUserReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    82;
+
+  friend void swap(ChromeOsUserReportRequest& a, ChromeOsUserReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeOsUserReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeOsUserReportRequest* New() const final {
+    return CreateMaybeMessage<ChromeOsUserReportRequest>(nullptr);
+  }
+
+  ChromeOsUserReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeOsUserReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeOsUserReportRequest& from);
+  void MergeFrom(const ChromeOsUserReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeOsUserReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeOsUserReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAndroidAppInfosFieldNumber = 2,
+    kPartialReportTypesFieldNumber = 3,
+    kBrowserReportFieldNumber = 1,
+  };
+  // repeated .enterprise_management.AndroidAppInfo android_app_infos = 2;
+  int android_app_infos_size() const;
+  private:
+  int _internal_android_app_infos_size() const;
+  public:
+  void clear_android_app_infos();
+  ::enterprise_management::AndroidAppInfo* mutable_android_app_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppInfo >*
+      mutable_android_app_infos();
+  private:
+  const ::enterprise_management::AndroidAppInfo& _internal_android_app_infos(int index) const;
+  ::enterprise_management::AndroidAppInfo* _internal_add_android_app_infos();
+  public:
+  const ::enterprise_management::AndroidAppInfo& android_app_infos(int index) const;
+  ::enterprise_management::AndroidAppInfo* add_android_app_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppInfo >&
+      android_app_infos() const;
+
+  // repeated .enterprise_management.PartialReportType partial_report_types = 3;
+  int partial_report_types_size() const;
+  private:
+  int _internal_partial_report_types_size() const;
+  public:
+  void clear_partial_report_types();
+  private:
+  ::enterprise_management::PartialReportType _internal_partial_report_types(int index) const;
+  void _internal_add_partial_report_types(::enterprise_management::PartialReportType value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_partial_report_types();
+  public:
+  ::enterprise_management::PartialReportType partial_report_types(int index) const;
+  void set_partial_report_types(int index, ::enterprise_management::PartialReportType value);
+  void add_partial_report_types(::enterprise_management::PartialReportType value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& partial_report_types() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_partial_report_types();
+
+  // optional .enterprise_management.BrowserReport browser_report = 1;
+  bool has_browser_report() const;
+  private:
+  bool _internal_has_browser_report() const;
+  public:
+  void clear_browser_report();
+  const ::enterprise_management::BrowserReport& browser_report() const;
+  ::enterprise_management::BrowserReport* release_browser_report();
+  ::enterprise_management::BrowserReport* mutable_browser_report();
+  void set_allocated_browser_report(::enterprise_management::BrowserReport* browser_report);
+  private:
+  const ::enterprise_management::BrowserReport& _internal_browser_report() const;
+  ::enterprise_management::BrowserReport* _internal_mutable_browser_report();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeOsUserReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppInfo > android_app_infos_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> partial_report_types_;
+  ::enterprise_management::BrowserReport* browser_report_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeProfileReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeProfileReportRequest) */ {
+ public:
+  ChromeProfileReportRequest();
+  virtual ~ChromeProfileReportRequest();
+
+  ChromeProfileReportRequest(const ChromeProfileReportRequest& from);
+  ChromeProfileReportRequest(ChromeProfileReportRequest&& from) noexcept
+    : ChromeProfileReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeProfileReportRequest& operator=(const ChromeProfileReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeProfileReportRequest& operator=(ChromeProfileReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeProfileReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeProfileReportRequest* internal_default_instance() {
+    return reinterpret_cast<const ChromeProfileReportRequest*>(
+               &_ChromeProfileReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    83;
+
+  friend void swap(ChromeProfileReportRequest& a, ChromeProfileReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeProfileReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeProfileReportRequest* New() const final {
+    return CreateMaybeMessage<ChromeProfileReportRequest>(nullptr);
+  }
+
+  ChromeProfileReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeProfileReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeProfileReportRequest& from);
+  void MergeFrom(const ChromeProfileReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeProfileReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeProfileReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBrowserReportFieldNumber = 1,
+    kOsReportFieldNumber = 2,
+  };
+  // optional .enterprise_management.BrowserReport browser_report = 1;
+  bool has_browser_report() const;
+  private:
+  bool _internal_has_browser_report() const;
+  public:
+  void clear_browser_report();
+  const ::enterprise_management::BrowserReport& browser_report() const;
+  ::enterprise_management::BrowserReport* release_browser_report();
+  ::enterprise_management::BrowserReport* mutable_browser_report();
+  void set_allocated_browser_report(::enterprise_management::BrowserReport* browser_report);
+  private:
+  const ::enterprise_management::BrowserReport& _internal_browser_report() const;
+  ::enterprise_management::BrowserReport* _internal_mutable_browser_report();
+  public:
+
+  // optional .enterprise_management.OSReport os_report = 2;
+  bool has_os_report() const;
+  private:
+  bool _internal_has_os_report() const;
+  public:
+  void clear_os_report();
+  const ::enterprise_management::OSReport& os_report() const;
+  ::enterprise_management::OSReport* release_os_report();
+  ::enterprise_management::OSReport* mutable_os_report();
+  void set_allocated_os_report(::enterprise_management::OSReport* os_report);
+  private:
+  const ::enterprise_management::OSReport& _internal_os_report() const;
+  ::enterprise_management::OSReport* _internal_mutable_os_report();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeProfileReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::BrowserReport* browser_report_;
+  ::enterprise_management::OSReport* os_report_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PolicyValueValidationIssue :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PolicyValueValidationIssue) */ {
+ public:
+  PolicyValueValidationIssue();
+  virtual ~PolicyValueValidationIssue();
+
+  PolicyValueValidationIssue(const PolicyValueValidationIssue& from);
+  PolicyValueValidationIssue(PolicyValueValidationIssue&& from) noexcept
+    : PolicyValueValidationIssue() {
+    *this = ::std::move(from);
+  }
+
+  inline PolicyValueValidationIssue& operator=(const PolicyValueValidationIssue& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PolicyValueValidationIssue& operator=(PolicyValueValidationIssue&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PolicyValueValidationIssue& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PolicyValueValidationIssue* internal_default_instance() {
+    return reinterpret_cast<const PolicyValueValidationIssue*>(
+               &_PolicyValueValidationIssue_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    84;
+
+  friend void swap(PolicyValueValidationIssue& a, PolicyValueValidationIssue& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PolicyValueValidationIssue* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PolicyValueValidationIssue* New() const final {
+    return CreateMaybeMessage<PolicyValueValidationIssue>(nullptr);
+  }
+
+  PolicyValueValidationIssue* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PolicyValueValidationIssue>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PolicyValueValidationIssue& from);
+  void MergeFrom(const PolicyValueValidationIssue& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PolicyValueValidationIssue* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PolicyValueValidationIssue";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PolicyValueValidationIssue_ValueValidationIssueSeverity ValueValidationIssueSeverity;
+  static constexpr ValueValidationIssueSeverity VALUE_VALIDATION_ISSUE_SEVERITY_UNSPECIFIED =
+    PolicyValueValidationIssue_ValueValidationIssueSeverity_VALUE_VALIDATION_ISSUE_SEVERITY_UNSPECIFIED;
+  static constexpr ValueValidationIssueSeverity VALUE_VALIDATION_ISSUE_SEVERITY_WARNING =
+    PolicyValueValidationIssue_ValueValidationIssueSeverity_VALUE_VALIDATION_ISSUE_SEVERITY_WARNING;
+  static constexpr ValueValidationIssueSeverity VALUE_VALIDATION_ISSUE_SEVERITY_ERROR =
+    PolicyValueValidationIssue_ValueValidationIssueSeverity_VALUE_VALIDATION_ISSUE_SEVERITY_ERROR;
+  static inline bool ValueValidationIssueSeverity_IsValid(int value) {
+    return PolicyValueValidationIssue_ValueValidationIssueSeverity_IsValid(value);
+  }
+  static constexpr ValueValidationIssueSeverity ValueValidationIssueSeverity_MIN =
+    PolicyValueValidationIssue_ValueValidationIssueSeverity_ValueValidationIssueSeverity_MIN;
+  static constexpr ValueValidationIssueSeverity ValueValidationIssueSeverity_MAX =
+    PolicyValueValidationIssue_ValueValidationIssueSeverity_ValueValidationIssueSeverity_MAX;
+  static constexpr int ValueValidationIssueSeverity_ARRAYSIZE =
+    PolicyValueValidationIssue_ValueValidationIssueSeverity_ValueValidationIssueSeverity_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ValueValidationIssueSeverity_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ValueValidationIssueSeverity>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ValueValidationIssueSeverity_Name.");
+    return PolicyValueValidationIssue_ValueValidationIssueSeverity_Name(enum_t_value);
+  }
+  static inline bool ValueValidationIssueSeverity_Parse(const std::string& name,
+      ValueValidationIssueSeverity* value) {
+    return PolicyValueValidationIssue_ValueValidationIssueSeverity_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPolicyNameFieldNumber = 1,
+    kDebugMessageFieldNumber = 3,
+    kSeverityFieldNumber = 2,
+  };
+  // optional string policy_name = 1;
+  bool has_policy_name() const;
+  private:
+  bool _internal_has_policy_name() const;
+  public:
+  void clear_policy_name();
+  const std::string& policy_name() const;
+  void set_policy_name(const std::string& value);
+  void set_policy_name(std::string&& value);
+  void set_policy_name(const char* value);
+  void set_policy_name(const char* value, size_t size);
+  std::string* mutable_policy_name();
+  std::string* release_policy_name();
+  void set_allocated_policy_name(std::string* policy_name);
+  private:
+  const std::string& _internal_policy_name() const;
+  void _internal_set_policy_name(const std::string& value);
+  std::string* _internal_mutable_policy_name();
+  public:
+
+  // optional string debug_message = 3;
+  bool has_debug_message() const;
+  private:
+  bool _internal_has_debug_message() const;
+  public:
+  void clear_debug_message();
+  const std::string& debug_message() const;
+  void set_debug_message(const std::string& value);
+  void set_debug_message(std::string&& value);
+  void set_debug_message(const char* value);
+  void set_debug_message(const char* value, size_t size);
+  std::string* mutable_debug_message();
+  std::string* release_debug_message();
+  void set_allocated_debug_message(std::string* debug_message);
+  private:
+  const std::string& _internal_debug_message() const;
+  void _internal_set_debug_message(const std::string& value);
+  std::string* _internal_mutable_debug_message();
+  public:
+
+  // optional .enterprise_management.PolicyValueValidationIssue.ValueValidationIssueSeverity severity = 2;
+  bool has_severity() const;
+  private:
+  bool _internal_has_severity() const;
+  public:
+  void clear_severity();
+  ::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity severity() const;
+  void set_severity(::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity value);
+  private:
+  ::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity _internal_severity() const;
+  void _internal_set_severity(::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PolicyValueValidationIssue)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr debug_message_;
+  int severity_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PolicyValidationReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PolicyValidationReportRequest) */ {
+ public:
+  PolicyValidationReportRequest();
+  virtual ~PolicyValidationReportRequest();
+
+  PolicyValidationReportRequest(const PolicyValidationReportRequest& from);
+  PolicyValidationReportRequest(PolicyValidationReportRequest&& from) noexcept
+    : PolicyValidationReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline PolicyValidationReportRequest& operator=(const PolicyValidationReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PolicyValidationReportRequest& operator=(PolicyValidationReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PolicyValidationReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PolicyValidationReportRequest* internal_default_instance() {
+    return reinterpret_cast<const PolicyValidationReportRequest*>(
+               &_PolicyValidationReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    85;
+
+  friend void swap(PolicyValidationReportRequest& a, PolicyValidationReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PolicyValidationReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PolicyValidationReportRequest* New() const final {
+    return CreateMaybeMessage<PolicyValidationReportRequest>(nullptr);
+  }
+
+  PolicyValidationReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PolicyValidationReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PolicyValidationReportRequest& from);
+  void MergeFrom(const PolicyValidationReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PolicyValidationReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PolicyValidationReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PolicyValidationReportRequest_ValidationResultType ValidationResultType;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_ERROR_UNSPECIFIED =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_ERROR_UNSPECIFIED;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_SUCCESS =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_SUCCESS;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_BAD_INITIAL_SIGNATURE =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_INITIAL_SIGNATURE;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_BAD_SIGNATURE =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_SIGNATURE;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_ERROR_CODE_PRESENT =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_ERROR_CODE_PRESENT;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_PAYLOAD_PARSE_ERROR =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_PAYLOAD_PARSE_ERROR;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_WRONG_POLICY_TYPE =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_WRONG_POLICY_TYPE;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_WRONG_SETTINGS_ENTITY_ID =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_WRONG_SETTINGS_ENTITY_ID;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_BAD_TIMESTAMP =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_TIMESTAMP;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_BAD_DM_TOKEN =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_DM_TOKEN;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_BAD_DEVICE_ID =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_DEVICE_ID;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_BAD_USER =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_USER;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_POLICY_PARSE_ERROR =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_POLICY_PARSE_ERROR;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_BAD_KEY_VERIFICATION_SIGNATURE =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_BAD_KEY_VERIFICATION_SIGNATURE;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_VALUE_WARNING =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_VALUE_WARNING;
+  static constexpr ValidationResultType VALIDATION_RESULT_TYPE_VALUE_ERROR =
+    PolicyValidationReportRequest_ValidationResultType_VALIDATION_RESULT_TYPE_VALUE_ERROR;
+  static inline bool ValidationResultType_IsValid(int value) {
+    return PolicyValidationReportRequest_ValidationResultType_IsValid(value);
+  }
+  static constexpr ValidationResultType ValidationResultType_MIN =
+    PolicyValidationReportRequest_ValidationResultType_ValidationResultType_MIN;
+  static constexpr ValidationResultType ValidationResultType_MAX =
+    PolicyValidationReportRequest_ValidationResultType_ValidationResultType_MAX;
+  static constexpr int ValidationResultType_ARRAYSIZE =
+    PolicyValidationReportRequest_ValidationResultType_ValidationResultType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ValidationResultType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ValidationResultType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ValidationResultType_Name.");
+    return PolicyValidationReportRequest_ValidationResultType_Name(enum_t_value);
+  }
+  static inline bool ValidationResultType_Parse(const std::string& name,
+      ValidationResultType* value) {
+    return PolicyValidationReportRequest_ValidationResultType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPolicyValueValidationIssuesFieldNumber = 4,
+    kPolicyTypeFieldNumber = 1,
+    kPolicyTokenFieldNumber = 2,
+    kValidationResultTypeFieldNumber = 3,
+  };
+  // repeated .enterprise_management.PolicyValueValidationIssue policy_value_validation_issues = 4;
+  int policy_value_validation_issues_size() const;
+  private:
+  int _internal_policy_value_validation_issues_size() const;
+  public:
+  void clear_policy_value_validation_issues();
+  ::enterprise_management::PolicyValueValidationIssue* mutable_policy_value_validation_issues(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyValueValidationIssue >*
+      mutable_policy_value_validation_issues();
+  private:
+  const ::enterprise_management::PolicyValueValidationIssue& _internal_policy_value_validation_issues(int index) const;
+  ::enterprise_management::PolicyValueValidationIssue* _internal_add_policy_value_validation_issues();
+  public:
+  const ::enterprise_management::PolicyValueValidationIssue& policy_value_validation_issues(int index) const;
+  ::enterprise_management::PolicyValueValidationIssue* add_policy_value_validation_issues();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyValueValidationIssue >&
+      policy_value_validation_issues() const;
+
+  // optional string policy_type = 1;
+  bool has_policy_type() const;
+  private:
+  bool _internal_has_policy_type() const;
+  public:
+  void clear_policy_type();
+  const std::string& policy_type() const;
+  void set_policy_type(const std::string& value);
+  void set_policy_type(std::string&& value);
+  void set_policy_type(const char* value);
+  void set_policy_type(const char* value, size_t size);
+  std::string* mutable_policy_type();
+  std::string* release_policy_type();
+  void set_allocated_policy_type(std::string* policy_type);
+  private:
+  const std::string& _internal_policy_type() const;
+  void _internal_set_policy_type(const std::string& value);
+  std::string* _internal_mutable_policy_type();
+  public:
+
+  // optional string policy_token = 2;
+  bool has_policy_token() const;
+  private:
+  bool _internal_has_policy_token() const;
+  public:
+  void clear_policy_token();
+  const std::string& policy_token() const;
+  void set_policy_token(const std::string& value);
+  void set_policy_token(std::string&& value);
+  void set_policy_token(const char* value);
+  void set_policy_token(const char* value, size_t size);
+  std::string* mutable_policy_token();
+  std::string* release_policy_token();
+  void set_allocated_policy_token(std::string* policy_token);
+  private:
+  const std::string& _internal_policy_token() const;
+  void _internal_set_policy_token(const std::string& value);
+  std::string* _internal_mutable_policy_token();
+  public:
+
+  // optional .enterprise_management.PolicyValidationReportRequest.ValidationResultType validation_result_type = 3;
+  bool has_validation_result_type() const;
+  private:
+  bool _internal_has_validation_result_type() const;
+  public:
+  void clear_validation_result_type();
+  ::enterprise_management::PolicyValidationReportRequest_ValidationResultType validation_result_type() const;
+  void set_validation_result_type(::enterprise_management::PolicyValidationReportRequest_ValidationResultType value);
+  private:
+  ::enterprise_management::PolicyValidationReportRequest_ValidationResultType _internal_validation_result_type() const;
+  void _internal_set_validation_result_type(::enterprise_management::PolicyValidationReportRequest_ValidationResultType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PolicyValidationReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyValueValidationIssue > policy_value_validation_issues_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_type_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_token_;
+  int validation_result_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PolicyValidationReportResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PolicyValidationReportResponse) */ {
+ public:
+  PolicyValidationReportResponse();
+  virtual ~PolicyValidationReportResponse();
+
+  PolicyValidationReportResponse(const PolicyValidationReportResponse& from);
+  PolicyValidationReportResponse(PolicyValidationReportResponse&& from) noexcept
+    : PolicyValidationReportResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PolicyValidationReportResponse& operator=(const PolicyValidationReportResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PolicyValidationReportResponse& operator=(PolicyValidationReportResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PolicyValidationReportResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PolicyValidationReportResponse* internal_default_instance() {
+    return reinterpret_cast<const PolicyValidationReportResponse*>(
+               &_PolicyValidationReportResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    86;
+
+  friend void swap(PolicyValidationReportResponse& a, PolicyValidationReportResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PolicyValidationReportResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PolicyValidationReportResponse* New() const final {
+    return CreateMaybeMessage<PolicyValidationReportResponse>(nullptr);
+  }
+
+  PolicyValidationReportResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PolicyValidationReportResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PolicyValidationReportResponse& from);
+  void MergeFrom(const PolicyValidationReportResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PolicyValidationReportResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PolicyValidationReportResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PolicyValidationReportResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AndroidStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AndroidStatus) */ {
+ public:
+  AndroidStatus();
+  virtual ~AndroidStatus();
+
+  AndroidStatus(const AndroidStatus& from);
+  AndroidStatus(AndroidStatus&& from) noexcept
+    : AndroidStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline AndroidStatus& operator=(const AndroidStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AndroidStatus& operator=(AndroidStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AndroidStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AndroidStatus* internal_default_instance() {
+    return reinterpret_cast<const AndroidStatus*>(
+               &_AndroidStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    87;
+
+  friend void swap(AndroidStatus& a, AndroidStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AndroidStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AndroidStatus* New() const final {
+    return CreateMaybeMessage<AndroidStatus>(nullptr);
+  }
+
+  AndroidStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AndroidStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AndroidStatus& from);
+  void MergeFrom(const AndroidStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AndroidStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AndroidStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kStatusPayloadFieldNumber = 1,
+    kDroidGuardInfoFieldNumber = 2,
+  };
+  // optional string status_payload = 1;
+  bool has_status_payload() const;
+  private:
+  bool _internal_has_status_payload() const;
+  public:
+  void clear_status_payload();
+  const std::string& status_payload() const;
+  void set_status_payload(const std::string& value);
+  void set_status_payload(std::string&& value);
+  void set_status_payload(const char* value);
+  void set_status_payload(const char* value, size_t size);
+  std::string* mutable_status_payload();
+  std::string* release_status_payload();
+  void set_allocated_status_payload(std::string* status_payload);
+  private:
+  const std::string& _internal_status_payload() const;
+  void _internal_set_status_payload(const std::string& value);
+  std::string* _internal_mutable_status_payload();
+  public:
+
+  // optional string droid_guard_info = 2;
+  bool has_droid_guard_info() const;
+  private:
+  bool _internal_has_droid_guard_info() const;
+  public:
+  void clear_droid_guard_info();
+  const std::string& droid_guard_info() const;
+  void set_droid_guard_info(const std::string& value);
+  void set_droid_guard_info(std::string&& value);
+  void set_droid_guard_info(const char* value);
+  void set_droid_guard_info(const char* value, size_t size);
+  std::string* mutable_droid_guard_info();
+  std::string* release_droid_guard_info();
+  void set_allocated_droid_guard_info(std::string* droid_guard_info);
+  private:
+  const std::string& _internal_droid_guard_info() const;
+  void _internal_set_droid_guard_info(const std::string& value);
+  std::string* _internal_mutable_droid_guard_info();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AndroidStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr status_payload_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr droid_guard_info_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CrostiniApp :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CrostiniApp) */ {
+ public:
+  CrostiniApp();
+  virtual ~CrostiniApp();
+
+  CrostiniApp(const CrostiniApp& from);
+  CrostiniApp(CrostiniApp&& from) noexcept
+    : CrostiniApp() {
+    *this = ::std::move(from);
+  }
+
+  inline CrostiniApp& operator=(const CrostiniApp& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CrostiniApp& operator=(CrostiniApp&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CrostiniApp& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CrostiniApp* internal_default_instance() {
+    return reinterpret_cast<const CrostiniApp*>(
+               &_CrostiniApp_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    88;
+
+  friend void swap(CrostiniApp& a, CrostiniApp& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CrostiniApp* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CrostiniApp* New() const final {
+    return CreateMaybeMessage<CrostiniApp>(nullptr);
+  }
+
+  CrostiniApp* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CrostiniApp>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CrostiniApp& from);
+  void MergeFrom(const CrostiniApp& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CrostiniApp* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CrostiniApp";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAppNameFieldNumber = 1,
+    kPackageNameFieldNumber = 4,
+    kPackageVersionFieldNumber = 5,
+    kPackageHashFieldNumber = 6,
+    kLastLaunchTimeWindowStartTimestampFieldNumber = 3,
+    kAppTypeFieldNumber = 2,
+  };
+  // optional string app_name = 1;
+  bool has_app_name() const;
+  private:
+  bool _internal_has_app_name() const;
+  public:
+  void clear_app_name();
+  const std::string& app_name() const;
+  void set_app_name(const std::string& value);
+  void set_app_name(std::string&& value);
+  void set_app_name(const char* value);
+  void set_app_name(const char* value, size_t size);
+  std::string* mutable_app_name();
+  std::string* release_app_name();
+  void set_allocated_app_name(std::string* app_name);
+  private:
+  const std::string& _internal_app_name() const;
+  void _internal_set_app_name(const std::string& value);
+  std::string* _internal_mutable_app_name();
+  public:
+
+  // optional string package_name = 4;
+  bool has_package_name() const;
+  private:
+  bool _internal_has_package_name() const;
+  public:
+  void clear_package_name();
+  const std::string& package_name() const;
+  void set_package_name(const std::string& value);
+  void set_package_name(std::string&& value);
+  void set_package_name(const char* value);
+  void set_package_name(const char* value, size_t size);
+  std::string* mutable_package_name();
+  std::string* release_package_name();
+  void set_allocated_package_name(std::string* package_name);
+  private:
+  const std::string& _internal_package_name() const;
+  void _internal_set_package_name(const std::string& value);
+  std::string* _internal_mutable_package_name();
+  public:
+
+  // optional string package_version = 5;
+  bool has_package_version() const;
+  private:
+  bool _internal_has_package_version() const;
+  public:
+  void clear_package_version();
+  const std::string& package_version() const;
+  void set_package_version(const std::string& value);
+  void set_package_version(std::string&& value);
+  void set_package_version(const char* value);
+  void set_package_version(const char* value, size_t size);
+  std::string* mutable_package_version();
+  std::string* release_package_version();
+  void set_allocated_package_version(std::string* package_version);
+  private:
+  const std::string& _internal_package_version() const;
+  void _internal_set_package_version(const std::string& value);
+  std::string* _internal_mutable_package_version();
+  public:
+
+  // optional string package_hash = 6;
+  bool has_package_hash() const;
+  private:
+  bool _internal_has_package_hash() const;
+  public:
+  void clear_package_hash();
+  const std::string& package_hash() const;
+  void set_package_hash(const std::string& value);
+  void set_package_hash(std::string&& value);
+  void set_package_hash(const char* value);
+  void set_package_hash(const char* value, size_t size);
+  std::string* mutable_package_hash();
+  std::string* release_package_hash();
+  void set_allocated_package_hash(std::string* package_hash);
+  private:
+  const std::string& _internal_package_hash() const;
+  void _internal_set_package_hash(const std::string& value);
+  std::string* _internal_mutable_package_hash();
+  public:
+
+  // optional int64 last_launch_time_window_start_timestamp = 3;
+  bool has_last_launch_time_window_start_timestamp() const;
+  private:
+  bool _internal_has_last_launch_time_window_start_timestamp() const;
+  public:
+  void clear_last_launch_time_window_start_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_launch_time_window_start_timestamp() const;
+  void set_last_launch_time_window_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_launch_time_window_start_timestamp() const;
+  void _internal_set_last_launch_time_window_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.CrostiniAppType app_type = 2;
+  bool has_app_type() const;
+  private:
+  bool _internal_has_app_type() const;
+  public:
+  void clear_app_type();
+  ::enterprise_management::CrostiniAppType app_type() const;
+  void set_app_type(::enterprise_management::CrostiniAppType value);
+  private:
+  ::enterprise_management::CrostiniAppType _internal_app_type() const;
+  void _internal_set_app_type(::enterprise_management::CrostiniAppType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CrostiniApp)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr package_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr package_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr package_hash_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_launch_time_window_start_timestamp_;
+  int app_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CrostiniStatus :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CrostiniStatus) */ {
+ public:
+  CrostiniStatus();
+  virtual ~CrostiniStatus();
+
+  CrostiniStatus(const CrostiniStatus& from);
+  CrostiniStatus(CrostiniStatus&& from) noexcept
+    : CrostiniStatus() {
+    *this = ::std::move(from);
+  }
+
+  inline CrostiniStatus& operator=(const CrostiniStatus& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CrostiniStatus& operator=(CrostiniStatus&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CrostiniStatus& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CrostiniStatus* internal_default_instance() {
+    return reinterpret_cast<const CrostiniStatus*>(
+               &_CrostiniStatus_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    89;
+
+  friend void swap(CrostiniStatus& a, CrostiniStatus& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CrostiniStatus* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CrostiniStatus* New() const final {
+    return CreateMaybeMessage<CrostiniStatus>(nullptr);
+  }
+
+  CrostiniStatus* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CrostiniStatus>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CrostiniStatus& from);
+  void MergeFrom(const CrostiniStatus& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CrostiniStatus* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CrostiniStatus";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kInstalledAppsFieldNumber = 4,
+    kLastLaunchVmImageVersionFieldNumber = 2,
+    kLastLaunchVmKernelVersionFieldNumber = 3,
+    kLastLaunchTimeWindowStartTimestampFieldNumber = 1,
+  };
+  // repeated .enterprise_management.CrostiniApp installed_apps = 4;
+  int installed_apps_size() const;
+  private:
+  int _internal_installed_apps_size() const;
+  public:
+  void clear_installed_apps();
+  ::enterprise_management::CrostiniApp* mutable_installed_apps(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrostiniApp >*
+      mutable_installed_apps();
+  private:
+  const ::enterprise_management::CrostiniApp& _internal_installed_apps(int index) const;
+  ::enterprise_management::CrostiniApp* _internal_add_installed_apps();
+  public:
+  const ::enterprise_management::CrostiniApp& installed_apps(int index) const;
+  ::enterprise_management::CrostiniApp* add_installed_apps();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrostiniApp >&
+      installed_apps() const;
+
+  // optional string last_launch_vm_image_version = 2;
+  bool has_last_launch_vm_image_version() const;
+  private:
+  bool _internal_has_last_launch_vm_image_version() const;
+  public:
+  void clear_last_launch_vm_image_version();
+  const std::string& last_launch_vm_image_version() const;
+  void set_last_launch_vm_image_version(const std::string& value);
+  void set_last_launch_vm_image_version(std::string&& value);
+  void set_last_launch_vm_image_version(const char* value);
+  void set_last_launch_vm_image_version(const char* value, size_t size);
+  std::string* mutable_last_launch_vm_image_version();
+  std::string* release_last_launch_vm_image_version();
+  void set_allocated_last_launch_vm_image_version(std::string* last_launch_vm_image_version);
+  private:
+  const std::string& _internal_last_launch_vm_image_version() const;
+  void _internal_set_last_launch_vm_image_version(const std::string& value);
+  std::string* _internal_mutable_last_launch_vm_image_version();
+  public:
+
+  // optional string last_launch_vm_kernel_version = 3;
+  bool has_last_launch_vm_kernel_version() const;
+  private:
+  bool _internal_has_last_launch_vm_kernel_version() const;
+  public:
+  void clear_last_launch_vm_kernel_version();
+  const std::string& last_launch_vm_kernel_version() const;
+  void set_last_launch_vm_kernel_version(const std::string& value);
+  void set_last_launch_vm_kernel_version(std::string&& value);
+  void set_last_launch_vm_kernel_version(const char* value);
+  void set_last_launch_vm_kernel_version(const char* value, size_t size);
+  std::string* mutable_last_launch_vm_kernel_version();
+  std::string* release_last_launch_vm_kernel_version();
+  void set_allocated_last_launch_vm_kernel_version(std::string* last_launch_vm_kernel_version);
+  private:
+  const std::string& _internal_last_launch_vm_kernel_version() const;
+  void _internal_set_last_launch_vm_kernel_version(const std::string& value);
+  std::string* _internal_mutable_last_launch_vm_kernel_version();
+  public:
+
+  // optional int64 last_launch_time_window_start_timestamp = 1;
+  bool has_last_launch_time_window_start_timestamp() const;
+  private:
+  bool _internal_has_last_launch_time_window_start_timestamp() const;
+  public:
+  void clear_last_launch_time_window_start_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_launch_time_window_start_timestamp() const;
+  void set_last_launch_time_window_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_launch_time_window_start_timestamp() const;
+  void _internal_set_last_launch_time_window_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CrostiniStatus)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrostiniApp > installed_apps_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr last_launch_vm_image_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr last_launch_vm_kernel_version_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_launch_time_window_start_timestamp_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SessionStatusReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SessionStatusReportRequest) */ {
+ public:
+  SessionStatusReportRequest();
+  virtual ~SessionStatusReportRequest();
+
+  SessionStatusReportRequest(const SessionStatusReportRequest& from);
+  SessionStatusReportRequest(SessionStatusReportRequest&& from) noexcept
+    : SessionStatusReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline SessionStatusReportRequest& operator=(const SessionStatusReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SessionStatusReportRequest& operator=(SessionStatusReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SessionStatusReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SessionStatusReportRequest* internal_default_instance() {
+    return reinterpret_cast<const SessionStatusReportRequest*>(
+               &_SessionStatusReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    90;
+
+  friend void swap(SessionStatusReportRequest& a, SessionStatusReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SessionStatusReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SessionStatusReportRequest* New() const final {
+    return CreateMaybeMessage<SessionStatusReportRequest>(nullptr);
+  }
+
+  SessionStatusReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SessionStatusReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SessionStatusReportRequest& from);
+  void MergeFrom(const SessionStatusReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SessionStatusReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SessionStatusReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kInstalledAppsFieldNumber = 5,
+    kAppInfosFieldNumber = 11,
+    kDeviceLocalAccountIdFieldNumber = 4,
+    kUserDmTokenFieldNumber = 8,
+    kTimeZoneFieldNumber = 9,
+    kAndroidStatusFieldNumber = 7,
+    kCrostiniStatusFieldNumber = 10,
+  };
+  // repeated .enterprise_management.AppStatus installed_apps = 5;
+  int installed_apps_size() const;
+  private:
+  int _internal_installed_apps_size() const;
+  public:
+  void clear_installed_apps();
+  ::enterprise_management::AppStatus* mutable_installed_apps(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppStatus >*
+      mutable_installed_apps();
+  private:
+  const ::enterprise_management::AppStatus& _internal_installed_apps(int index) const;
+  ::enterprise_management::AppStatus* _internal_add_installed_apps();
+  public:
+  const ::enterprise_management::AppStatus& installed_apps(int index) const;
+  ::enterprise_management::AppStatus* add_installed_apps();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppStatus >&
+      installed_apps() const;
+
+  // repeated .enterprise_management.AppInfo app_infos = 11;
+  int app_infos_size() const;
+  private:
+  int _internal_app_infos_size() const;
+  public:
+  void clear_app_infos();
+  ::enterprise_management::AppInfo* mutable_app_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInfo >*
+      mutable_app_infos();
+  private:
+  const ::enterprise_management::AppInfo& _internal_app_infos(int index) const;
+  ::enterprise_management::AppInfo* _internal_add_app_infos();
+  public:
+  const ::enterprise_management::AppInfo& app_infos(int index) const;
+  ::enterprise_management::AppInfo* add_app_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInfo >&
+      app_infos() const;
+
+  // optional string device_local_account_id = 4;
+  bool has_device_local_account_id() const;
+  private:
+  bool _internal_has_device_local_account_id() const;
+  public:
+  void clear_device_local_account_id();
+  const std::string& device_local_account_id() const;
+  void set_device_local_account_id(const std::string& value);
+  void set_device_local_account_id(std::string&& value);
+  void set_device_local_account_id(const char* value);
+  void set_device_local_account_id(const char* value, size_t size);
+  std::string* mutable_device_local_account_id();
+  std::string* release_device_local_account_id();
+  void set_allocated_device_local_account_id(std::string* device_local_account_id);
+  private:
+  const std::string& _internal_device_local_account_id() const;
+  void _internal_set_device_local_account_id(const std::string& value);
+  std::string* _internal_mutable_device_local_account_id();
+  public:
+
+  // optional string user_dm_token = 8;
+  bool has_user_dm_token() const;
+  private:
+  bool _internal_has_user_dm_token() const;
+  public:
+  void clear_user_dm_token();
+  const std::string& user_dm_token() const;
+  void set_user_dm_token(const std::string& value);
+  void set_user_dm_token(std::string&& value);
+  void set_user_dm_token(const char* value);
+  void set_user_dm_token(const char* value, size_t size);
+  std::string* mutable_user_dm_token();
+  std::string* release_user_dm_token();
+  void set_allocated_user_dm_token(std::string* user_dm_token);
+  private:
+  const std::string& _internal_user_dm_token() const;
+  void _internal_set_user_dm_token(const std::string& value);
+  std::string* _internal_mutable_user_dm_token();
+  public:
+
+  // optional string time_zone = 9;
+  bool has_time_zone() const;
+  private:
+  bool _internal_has_time_zone() const;
+  public:
+  void clear_time_zone();
+  const std::string& time_zone() const;
+  void set_time_zone(const std::string& value);
+  void set_time_zone(std::string&& value);
+  void set_time_zone(const char* value);
+  void set_time_zone(const char* value, size_t size);
+  std::string* mutable_time_zone();
+  std::string* release_time_zone();
+  void set_allocated_time_zone(std::string* time_zone);
+  private:
+  const std::string& _internal_time_zone() const;
+  void _internal_set_time_zone(const std::string& value);
+  std::string* _internal_mutable_time_zone();
+  public:
+
+  // optional .enterprise_management.AndroidStatus android_status = 7;
+  bool has_android_status() const;
+  private:
+  bool _internal_has_android_status() const;
+  public:
+  void clear_android_status();
+  const ::enterprise_management::AndroidStatus& android_status() const;
+  ::enterprise_management::AndroidStatus* release_android_status();
+  ::enterprise_management::AndroidStatus* mutable_android_status();
+  void set_allocated_android_status(::enterprise_management::AndroidStatus* android_status);
+  private:
+  const ::enterprise_management::AndroidStatus& _internal_android_status() const;
+  ::enterprise_management::AndroidStatus* _internal_mutable_android_status();
+  public:
+
+  // optional .enterprise_management.CrostiniStatus crostini_status = 10;
+  bool has_crostini_status() const;
+  private:
+  bool _internal_has_crostini_status() const;
+  public:
+  void clear_crostini_status();
+  const ::enterprise_management::CrostiniStatus& crostini_status() const;
+  ::enterprise_management::CrostiniStatus* release_crostini_status();
+  ::enterprise_management::CrostiniStatus* mutable_crostini_status();
+  void set_allocated_crostini_status(::enterprise_management::CrostiniStatus* crostini_status);
+  private:
+  const ::enterprise_management::CrostiniStatus& _internal_crostini_status() const;
+  ::enterprise_management::CrostiniStatus* _internal_mutable_crostini_status();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SessionStatusReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppStatus > installed_apps_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInfo > app_infos_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_local_account_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr user_dm_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr time_zone_;
+  ::enterprise_management::AndroidStatus* android_status_;
+  ::enterprise_management::CrostiniStatus* crostini_status_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceStatusReportResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceStatusReportResponse) */ {
+ public:
+  DeviceStatusReportResponse();
+  virtual ~DeviceStatusReportResponse();
+
+  DeviceStatusReportResponse(const DeviceStatusReportResponse& from);
+  DeviceStatusReportResponse(DeviceStatusReportResponse&& from) noexcept
+    : DeviceStatusReportResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceStatusReportResponse& operator=(const DeviceStatusReportResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceStatusReportResponse& operator=(DeviceStatusReportResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceStatusReportResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceStatusReportResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceStatusReportResponse*>(
+               &_DeviceStatusReportResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    91;
+
+  friend void swap(DeviceStatusReportResponse& a, DeviceStatusReportResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceStatusReportResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceStatusReportResponse* New() const final {
+    return CreateMaybeMessage<DeviceStatusReportResponse>(nullptr);
+  }
+
+  DeviceStatusReportResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceStatusReportResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceStatusReportResponse& from);
+  void MergeFrom(const DeviceStatusReportResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceStatusReportResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceStatusReportResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kErrorMessageFieldNumber = 2,
+    kErrorCodeFieldNumber = 1,
+  };
+  // optional string error_message = 2;
+  bool has_error_message() const;
+  private:
+  bool _internal_has_error_message() const;
+  public:
+  void clear_error_message();
+  const std::string& error_message() const;
+  void set_error_message(const std::string& value);
+  void set_error_message(std::string&& value);
+  void set_error_message(const char* value);
+  void set_error_message(const char* value, size_t size);
+  std::string* mutable_error_message();
+  std::string* release_error_message();
+  void set_allocated_error_message(std::string* error_message);
+  private:
+  const std::string& _internal_error_message() const;
+  void _internal_set_error_message(const std::string& value);
+  std::string* _internal_mutable_error_message();
+  public:
+
+  // optional int32 error_code = 1;
+  bool has_error_code() const;
+  private:
+  bool _internal_has_error_code() const;
+  public:
+  void clear_error_code();
+  ::PROTOBUF_NAMESPACE_ID::int32 error_code() const;
+  void set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_error_code() const;
+  void _internal_set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceStatusReportResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr error_message_;
+  ::PROTOBUF_NAMESPACE_ID::int32 error_code_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeDesktopReportResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeDesktopReportResponse) */ {
+ public:
+  ChromeDesktopReportResponse();
+  virtual ~ChromeDesktopReportResponse();
+
+  ChromeDesktopReportResponse(const ChromeDesktopReportResponse& from);
+  ChromeDesktopReportResponse(ChromeDesktopReportResponse&& from) noexcept
+    : ChromeDesktopReportResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeDesktopReportResponse& operator=(const ChromeDesktopReportResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeDesktopReportResponse& operator=(ChromeDesktopReportResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeDesktopReportResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeDesktopReportResponse* internal_default_instance() {
+    return reinterpret_cast<const ChromeDesktopReportResponse*>(
+               &_ChromeDesktopReportResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    92;
+
+  friend void swap(ChromeDesktopReportResponse& a, ChromeDesktopReportResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeDesktopReportResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeDesktopReportResponse* New() const final {
+    return CreateMaybeMessage<ChromeDesktopReportResponse>(nullptr);
+  }
+
+  ChromeDesktopReportResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeDesktopReportResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeDesktopReportResponse& from);
+  void MergeFrom(const ChromeDesktopReportResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeDesktopReportResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeDesktopReportResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeDesktopReportResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeOsUserReportResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeOsUserReportResponse) */ {
+ public:
+  ChromeOsUserReportResponse();
+  virtual ~ChromeOsUserReportResponse();
+
+  ChromeOsUserReportResponse(const ChromeOsUserReportResponse& from);
+  ChromeOsUserReportResponse(ChromeOsUserReportResponse&& from) noexcept
+    : ChromeOsUserReportResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeOsUserReportResponse& operator=(const ChromeOsUserReportResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeOsUserReportResponse& operator=(ChromeOsUserReportResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeOsUserReportResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeOsUserReportResponse* internal_default_instance() {
+    return reinterpret_cast<const ChromeOsUserReportResponse*>(
+               &_ChromeOsUserReportResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    93;
+
+  friend void swap(ChromeOsUserReportResponse& a, ChromeOsUserReportResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeOsUserReportResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeOsUserReportResponse* New() const final {
+    return CreateMaybeMessage<ChromeOsUserReportResponse>(nullptr);
+  }
+
+  ChromeOsUserReportResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeOsUserReportResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeOsUserReportResponse& from);
+  void MergeFrom(const ChromeOsUserReportResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeOsUserReportResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeOsUserReportResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeOsUserReportResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChromeProfileReportResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChromeProfileReportResponse) */ {
+ public:
+  ChromeProfileReportResponse();
+  virtual ~ChromeProfileReportResponse();
+
+  ChromeProfileReportResponse(const ChromeProfileReportResponse& from);
+  ChromeProfileReportResponse(ChromeProfileReportResponse&& from) noexcept
+    : ChromeProfileReportResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeProfileReportResponse& operator=(const ChromeProfileReportResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeProfileReportResponse& operator=(ChromeProfileReportResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeProfileReportResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeProfileReportResponse* internal_default_instance() {
+    return reinterpret_cast<const ChromeProfileReportResponse*>(
+               &_ChromeProfileReportResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    94;
+
+  friend void swap(ChromeProfileReportResponse& a, ChromeProfileReportResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeProfileReportResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeProfileReportResponse* New() const final {
+    return CreateMaybeMessage<ChromeProfileReportResponse>(nullptr);
+  }
+
+  ChromeProfileReportResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeProfileReportResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeProfileReportResponse& from);
+  void MergeFrom(const ChromeProfileReportResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeProfileReportResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChromeProfileReportResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChromeProfileReportResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SessionStatusReportResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SessionStatusReportResponse) */ {
+ public:
+  SessionStatusReportResponse();
+  virtual ~SessionStatusReportResponse();
+
+  SessionStatusReportResponse(const SessionStatusReportResponse& from);
+  SessionStatusReportResponse(SessionStatusReportResponse&& from) noexcept
+    : SessionStatusReportResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline SessionStatusReportResponse& operator=(const SessionStatusReportResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SessionStatusReportResponse& operator=(SessionStatusReportResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SessionStatusReportResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SessionStatusReportResponse* internal_default_instance() {
+    return reinterpret_cast<const SessionStatusReportResponse*>(
+               &_SessionStatusReportResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    95;
+
+  friend void swap(SessionStatusReportResponse& a, SessionStatusReportResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SessionStatusReportResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SessionStatusReportResponse* New() const final {
+    return CreateMaybeMessage<SessionStatusReportResponse>(nullptr);
+  }
+
+  SessionStatusReportResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SessionStatusReportResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SessionStatusReportResponse& from);
+  void MergeFrom(const SessionStatusReportResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SessionStatusReportResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SessionStatusReportResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kErrorMessageFieldNumber = 2,
+    kErrorCodeFieldNumber = 1,
+  };
+  // optional string error_message = 2;
+  bool has_error_message() const;
+  private:
+  bool _internal_has_error_message() const;
+  public:
+  void clear_error_message();
+  const std::string& error_message() const;
+  void set_error_message(const std::string& value);
+  void set_error_message(std::string&& value);
+  void set_error_message(const char* value);
+  void set_error_message(const char* value, size_t size);
+  std::string* mutable_error_message();
+  std::string* release_error_message();
+  void set_allocated_error_message(std::string* error_message);
+  private:
+  const std::string& _internal_error_message() const;
+  void _internal_set_error_message(const std::string& value);
+  std::string* _internal_mutable_error_message();
+  public:
+
+  // optional int32 error_code = 1;
+  bool has_error_code() const;
+  private:
+  bool _internal_has_error_code() const;
+  public:
+  void clear_error_code();
+  ::PROTOBUF_NAMESPACE_ID::int32 error_code() const;
+  void set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_error_code() const;
+  void _internal_set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SessionStatusReportResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr error_message_;
+  ::PROTOBUF_NAMESPACE_ID::int32 error_code_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateSetMembershipRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrivateSetMembershipRequest) */ {
+ public:
+  PrivateSetMembershipRequest();
+  virtual ~PrivateSetMembershipRequest();
+
+  PrivateSetMembershipRequest(const PrivateSetMembershipRequest& from);
+  PrivateSetMembershipRequest(PrivateSetMembershipRequest&& from) noexcept
+    : PrivateSetMembershipRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateSetMembershipRequest& operator=(const PrivateSetMembershipRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateSetMembershipRequest& operator=(PrivateSetMembershipRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrivateSetMembershipRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateSetMembershipRequest* internal_default_instance() {
+    return reinterpret_cast<const PrivateSetMembershipRequest*>(
+               &_PrivateSetMembershipRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    96;
+
+  friend void swap(PrivateSetMembershipRequest& a, PrivateSetMembershipRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateSetMembershipRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateSetMembershipRequest* New() const final {
+    return CreateMaybeMessage<PrivateSetMembershipRequest>(nullptr);
+  }
+
+  PrivateSetMembershipRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateSetMembershipRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateSetMembershipRequest& from);
+  void MergeFrom(const PrivateSetMembershipRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateSetMembershipRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrivateSetMembershipRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRlweRequestFieldNumber = 1,
+  };
+  // optional .enterprise_management.PrivateSetMembershipRlweRequest rlwe_request = 1;
+  bool has_rlwe_request() const;
+  private:
+  bool _internal_has_rlwe_request() const;
+  public:
+  void clear_rlwe_request();
+  const ::enterprise_management::PrivateSetMembershipRlweRequest& rlwe_request() const;
+  ::enterprise_management::PrivateSetMembershipRlweRequest* release_rlwe_request();
+  ::enterprise_management::PrivateSetMembershipRlweRequest* mutable_rlwe_request();
+  void set_allocated_rlwe_request(::enterprise_management::PrivateSetMembershipRlweRequest* rlwe_request);
+  private:
+  const ::enterprise_management::PrivateSetMembershipRlweRequest& _internal_rlwe_request() const;
+  ::enterprise_management::PrivateSetMembershipRlweRequest* _internal_mutable_rlwe_request();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrivateSetMembershipRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::PrivateSetMembershipRlweRequest* rlwe_request_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateSetMembershipResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrivateSetMembershipResponse) */ {
+ public:
+  PrivateSetMembershipResponse();
+  virtual ~PrivateSetMembershipResponse();
+
+  PrivateSetMembershipResponse(const PrivateSetMembershipResponse& from);
+  PrivateSetMembershipResponse(PrivateSetMembershipResponse&& from) noexcept
+    : PrivateSetMembershipResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateSetMembershipResponse& operator=(const PrivateSetMembershipResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateSetMembershipResponse& operator=(PrivateSetMembershipResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrivateSetMembershipResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateSetMembershipResponse* internal_default_instance() {
+    return reinterpret_cast<const PrivateSetMembershipResponse*>(
+               &_PrivateSetMembershipResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    97;
+
+  friend void swap(PrivateSetMembershipResponse& a, PrivateSetMembershipResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateSetMembershipResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateSetMembershipResponse* New() const final {
+    return CreateMaybeMessage<PrivateSetMembershipResponse>(nullptr);
+  }
+
+  PrivateSetMembershipResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateSetMembershipResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateSetMembershipResponse& from);
+  void MergeFrom(const PrivateSetMembershipResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateSetMembershipResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrivateSetMembershipResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRlweResponseFieldNumber = 1,
+  };
+  // optional .enterprise_management.PrivateSetMembershipRlweResponse rlwe_response = 1;
+  bool has_rlwe_response() const;
+  private:
+  bool _internal_has_rlwe_response() const;
+  public:
+  void clear_rlwe_response();
+  const ::enterprise_management::PrivateSetMembershipRlweResponse& rlwe_response() const;
+  ::enterprise_management::PrivateSetMembershipRlweResponse* release_rlwe_response();
+  ::enterprise_management::PrivateSetMembershipRlweResponse* mutable_rlwe_response();
+  void set_allocated_rlwe_response(::enterprise_management::PrivateSetMembershipRlweResponse* rlwe_response);
+  private:
+  const ::enterprise_management::PrivateSetMembershipRlweResponse& _internal_rlwe_response() const;
+  ::enterprise_management::PrivateSetMembershipRlweResponse* _internal_mutable_rlwe_response();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrivateSetMembershipResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::PrivateSetMembershipRlweResponse* rlwe_response_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateSetMembershipRlweRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrivateSetMembershipRlweRequest) */ {
+ public:
+  PrivateSetMembershipRlweRequest();
+  virtual ~PrivateSetMembershipRlweRequest();
+
+  PrivateSetMembershipRlweRequest(const PrivateSetMembershipRlweRequest& from);
+  PrivateSetMembershipRlweRequest(PrivateSetMembershipRlweRequest&& from) noexcept
+    : PrivateSetMembershipRlweRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateSetMembershipRlweRequest& operator=(const PrivateSetMembershipRlweRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateSetMembershipRlweRequest& operator=(PrivateSetMembershipRlweRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrivateSetMembershipRlweRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateSetMembershipRlweRequest* internal_default_instance() {
+    return reinterpret_cast<const PrivateSetMembershipRlweRequest*>(
+               &_PrivateSetMembershipRlweRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    98;
+
+  friend void swap(PrivateSetMembershipRlweRequest& a, PrivateSetMembershipRlweRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateSetMembershipRlweRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateSetMembershipRlweRequest* New() const final {
+    return CreateMaybeMessage<PrivateSetMembershipRlweRequest>(nullptr);
+  }
+
+  PrivateSetMembershipRlweRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateSetMembershipRlweRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateSetMembershipRlweRequest& from);
+  void MergeFrom(const PrivateSetMembershipRlweRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateSetMembershipRlweRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrivateSetMembershipRlweRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOprfRequestFieldNumber = 1,
+    kQueryRequestFieldNumber = 2,
+  };
+  // optional .private_membership.rlwe.PrivateMembershipRlweOprfRequest oprf_request = 1;
+  bool has_oprf_request() const;
+  private:
+  bool _internal_has_oprf_request() const;
+  public:
+  void clear_oprf_request();
+  const ::private_membership::rlwe::PrivateMembershipRlweOprfRequest& oprf_request() const;
+  ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* release_oprf_request();
+  ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* mutable_oprf_request();
+  void set_allocated_oprf_request(::private_membership::rlwe::PrivateMembershipRlweOprfRequest* oprf_request);
+  private:
+  const ::private_membership::rlwe::PrivateMembershipRlweOprfRequest& _internal_oprf_request() const;
+  ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* _internal_mutable_oprf_request();
+  public:
+
+  // optional .private_membership.rlwe.PrivateMembershipRlweQueryRequest query_request = 2;
+  bool has_query_request() const;
+  private:
+  bool _internal_has_query_request() const;
+  public:
+  void clear_query_request();
+  const ::private_membership::rlwe::PrivateMembershipRlweQueryRequest& query_request() const;
+  ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* release_query_request();
+  ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* mutable_query_request();
+  void set_allocated_query_request(::private_membership::rlwe::PrivateMembershipRlweQueryRequest* query_request);
+  private:
+  const ::private_membership::rlwe::PrivateMembershipRlweQueryRequest& _internal_query_request() const;
+  ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* _internal_mutable_query_request();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrivateSetMembershipRlweRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* oprf_request_;
+  ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* query_request_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateSetMembershipRlweResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrivateSetMembershipRlweResponse) */ {
+ public:
+  PrivateSetMembershipRlweResponse();
+  virtual ~PrivateSetMembershipRlweResponse();
+
+  PrivateSetMembershipRlweResponse(const PrivateSetMembershipRlweResponse& from);
+  PrivateSetMembershipRlweResponse(PrivateSetMembershipRlweResponse&& from) noexcept
+    : PrivateSetMembershipRlweResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateSetMembershipRlweResponse& operator=(const PrivateSetMembershipRlweResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateSetMembershipRlweResponse& operator=(PrivateSetMembershipRlweResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrivateSetMembershipRlweResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateSetMembershipRlweResponse* internal_default_instance() {
+    return reinterpret_cast<const PrivateSetMembershipRlweResponse*>(
+               &_PrivateSetMembershipRlweResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    99;
+
+  friend void swap(PrivateSetMembershipRlweResponse& a, PrivateSetMembershipRlweResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateSetMembershipRlweResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateSetMembershipRlweResponse* New() const final {
+    return CreateMaybeMessage<PrivateSetMembershipRlweResponse>(nullptr);
+  }
+
+  PrivateSetMembershipRlweResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateSetMembershipRlweResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateSetMembershipRlweResponse& from);
+  void MergeFrom(const PrivateSetMembershipRlweResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateSetMembershipRlweResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrivateSetMembershipRlweResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOprfResponseFieldNumber = 1,
+    kQueryResponseFieldNumber = 2,
+  };
+  // optional .private_membership.rlwe.PrivateMembershipRlweOprfResponse oprf_response = 1;
+  bool has_oprf_response() const;
+  private:
+  bool _internal_has_oprf_response() const;
+  public:
+  void clear_oprf_response();
+  const ::private_membership::rlwe::PrivateMembershipRlweOprfResponse& oprf_response() const;
+  ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* release_oprf_response();
+  ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* mutable_oprf_response();
+  void set_allocated_oprf_response(::private_membership::rlwe::PrivateMembershipRlweOprfResponse* oprf_response);
+  private:
+  const ::private_membership::rlwe::PrivateMembershipRlweOprfResponse& _internal_oprf_response() const;
+  ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* _internal_mutable_oprf_response();
+  public:
+
+  // optional .private_membership.rlwe.PrivateMembershipRlweQueryResponse query_response = 2;
+  bool has_query_response() const;
+  private:
+  bool _internal_has_query_response() const;
+  public:
+  void clear_query_response();
+  const ::private_membership::rlwe::PrivateMembershipRlweQueryResponse& query_response() const;
+  ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* release_query_response();
+  ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* mutable_query_response();
+  void set_allocated_query_response(::private_membership::rlwe::PrivateMembershipRlweQueryResponse* query_response);
+  private:
+  const ::private_membership::rlwe::PrivateMembershipRlweQueryResponse& _internal_query_response() const;
+  ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* _internal_mutable_query_response();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrivateSetMembershipRlweResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* oprf_response_;
+  ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* query_response_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAutoEnrollmentRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAutoEnrollmentRequest) */ {
+ public:
+  DeviceAutoEnrollmentRequest();
+  virtual ~DeviceAutoEnrollmentRequest();
+
+  DeviceAutoEnrollmentRequest(const DeviceAutoEnrollmentRequest& from);
+  DeviceAutoEnrollmentRequest(DeviceAutoEnrollmentRequest&& from) noexcept
+    : DeviceAutoEnrollmentRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAutoEnrollmentRequest& operator=(const DeviceAutoEnrollmentRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAutoEnrollmentRequest& operator=(DeviceAutoEnrollmentRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAutoEnrollmentRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAutoEnrollmentRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceAutoEnrollmentRequest*>(
+               &_DeviceAutoEnrollmentRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    100;
+
+  friend void swap(DeviceAutoEnrollmentRequest& a, DeviceAutoEnrollmentRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAutoEnrollmentRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAutoEnrollmentRequest* New() const final {
+    return CreateMaybeMessage<DeviceAutoEnrollmentRequest>(nullptr);
+  }
+
+  DeviceAutoEnrollmentRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAutoEnrollmentRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAutoEnrollmentRequest& from);
+  void MergeFrom(const DeviceAutoEnrollmentRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAutoEnrollmentRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAutoEnrollmentRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceAutoEnrollmentRequest_EnrollmentCheckType EnrollmentCheckType;
+  static constexpr EnrollmentCheckType ENROLLMENT_CHECK_TYPE_UNSPECIFIED =
+    DeviceAutoEnrollmentRequest_EnrollmentCheckType_ENROLLMENT_CHECK_TYPE_UNSPECIFIED;
+  static constexpr EnrollmentCheckType ENROLLMENT_CHECK_TYPE_FRE =
+    DeviceAutoEnrollmentRequest_EnrollmentCheckType_ENROLLMENT_CHECK_TYPE_FRE;
+  static constexpr EnrollmentCheckType ENROLLMENT_CHECK_TYPE_FORCED_ENROLLMENT =
+    DeviceAutoEnrollmentRequest_EnrollmentCheckType_ENROLLMENT_CHECK_TYPE_FORCED_ENROLLMENT;
+  static inline bool EnrollmentCheckType_IsValid(int value) {
+    return DeviceAutoEnrollmentRequest_EnrollmentCheckType_IsValid(value);
+  }
+  static constexpr EnrollmentCheckType EnrollmentCheckType_MIN =
+    DeviceAutoEnrollmentRequest_EnrollmentCheckType_EnrollmentCheckType_MIN;
+  static constexpr EnrollmentCheckType EnrollmentCheckType_MAX =
+    DeviceAutoEnrollmentRequest_EnrollmentCheckType_EnrollmentCheckType_MAX;
+  static constexpr int EnrollmentCheckType_ARRAYSIZE =
+    DeviceAutoEnrollmentRequest_EnrollmentCheckType_EnrollmentCheckType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& EnrollmentCheckType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, EnrollmentCheckType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function EnrollmentCheckType_Name.");
+    return DeviceAutoEnrollmentRequest_EnrollmentCheckType_Name(enum_t_value);
+  }
+  static inline bool EnrollmentCheckType_Parse(const std::string& name,
+      EnrollmentCheckType* value) {
+    return DeviceAutoEnrollmentRequest_EnrollmentCheckType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRemainderFieldNumber = 1,
+    kModulusFieldNumber = 2,
+    kEnrollmentCheckTypeFieldNumber = 3,
+  };
+  // optional int64 remainder = 1;
+  bool has_remainder() const;
+  private:
+  bool _internal_has_remainder() const;
+  public:
+  void clear_remainder();
+  ::PROTOBUF_NAMESPACE_ID::int64 remainder() const;
+  void set_remainder(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_remainder() const;
+  void _internal_set_remainder(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 modulus = 2;
+  bool has_modulus() const;
+  private:
+  bool _internal_has_modulus() const;
+  public:
+  void clear_modulus();
+  ::PROTOBUF_NAMESPACE_ID::int64 modulus() const;
+  void set_modulus(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_modulus() const;
+  void _internal_set_modulus(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.DeviceAutoEnrollmentRequest.EnrollmentCheckType enrollment_check_type = 3 [default = ENROLLMENT_CHECK_TYPE_FRE];
+  bool has_enrollment_check_type() const;
+  private:
+  bool _internal_has_enrollment_check_type() const;
+  public:
+  void clear_enrollment_check_type();
+  ::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType enrollment_check_type() const;
+  void set_enrollment_check_type(::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType value);
+  private:
+  ::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType _internal_enrollment_check_type() const;
+  void _internal_set_enrollment_check_type(::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAutoEnrollmentRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 remainder_;
+  ::PROTOBUF_NAMESPACE_ID::int64 modulus_;
+  int enrollment_check_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAutoEnrollmentResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAutoEnrollmentResponse) */ {
+ public:
+  DeviceAutoEnrollmentResponse();
+  virtual ~DeviceAutoEnrollmentResponse();
+
+  DeviceAutoEnrollmentResponse(const DeviceAutoEnrollmentResponse& from);
+  DeviceAutoEnrollmentResponse(DeviceAutoEnrollmentResponse&& from) noexcept
+    : DeviceAutoEnrollmentResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAutoEnrollmentResponse& operator=(const DeviceAutoEnrollmentResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAutoEnrollmentResponse& operator=(DeviceAutoEnrollmentResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAutoEnrollmentResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAutoEnrollmentResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceAutoEnrollmentResponse*>(
+               &_DeviceAutoEnrollmentResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    101;
+
+  friend void swap(DeviceAutoEnrollmentResponse& a, DeviceAutoEnrollmentResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAutoEnrollmentResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAutoEnrollmentResponse* New() const final {
+    return CreateMaybeMessage<DeviceAutoEnrollmentResponse>(nullptr);
+  }
+
+  DeviceAutoEnrollmentResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAutoEnrollmentResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAutoEnrollmentResponse& from);
+  void MergeFrom(const DeviceAutoEnrollmentResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAutoEnrollmentResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAutoEnrollmentResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHashesFieldNumber = 2,
+    kExpectedModulusFieldNumber = 1,
+  };
+  // repeated bytes hashes = 2;
+  int hashes_size() const;
+  private:
+  int _internal_hashes_size() const;
+  public:
+  void clear_hashes();
+  const std::string& hashes(int index) const;
+  std::string* mutable_hashes(int index);
+  void set_hashes(int index, const std::string& value);
+  void set_hashes(int index, std::string&& value);
+  void set_hashes(int index, const char* value);
+  void set_hashes(int index, const void* value, size_t size);
+  std::string* add_hashes();
+  void add_hashes(const std::string& value);
+  void add_hashes(std::string&& value);
+  void add_hashes(const char* value);
+  void add_hashes(const void* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& hashes() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_hashes();
+  private:
+  const std::string& _internal_hashes(int index) const;
+  std::string* _internal_add_hashes();
+  public:
+
+  // optional int64 expected_modulus = 1;
+  bool has_expected_modulus() const;
+  private:
+  bool _internal_has_expected_modulus() const;
+  public:
+  void clear_expected_modulus();
+  ::PROTOBUF_NAMESPACE_ID::int64 expected_modulus() const;
+  void set_expected_modulus(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_expected_modulus() const;
+  void _internal_set_expected_modulus(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAutoEnrollmentResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> hashes_;
+  ::PROTOBUF_NAMESPACE_ID::int64 expected_modulus_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceStateRetrievalRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceStateRetrievalRequest) */ {
+ public:
+  DeviceStateRetrievalRequest();
+  virtual ~DeviceStateRetrievalRequest();
+
+  DeviceStateRetrievalRequest(const DeviceStateRetrievalRequest& from);
+  DeviceStateRetrievalRequest(DeviceStateRetrievalRequest&& from) noexcept
+    : DeviceStateRetrievalRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceStateRetrievalRequest& operator=(const DeviceStateRetrievalRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceStateRetrievalRequest& operator=(DeviceStateRetrievalRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceStateRetrievalRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceStateRetrievalRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceStateRetrievalRequest*>(
+               &_DeviceStateRetrievalRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    102;
+
+  friend void swap(DeviceStateRetrievalRequest& a, DeviceStateRetrievalRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceStateRetrievalRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceStateRetrievalRequest* New() const final {
+    return CreateMaybeMessage<DeviceStateRetrievalRequest>(nullptr);
+  }
+
+  DeviceStateRetrievalRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceStateRetrievalRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceStateRetrievalRequest& from);
+  void MergeFrom(const DeviceStateRetrievalRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceStateRetrievalRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceStateRetrievalRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kServerBackedStateKeyFieldNumber = 1,
+  };
+  // optional bytes server_backed_state_key = 1;
+  bool has_server_backed_state_key() const;
+  private:
+  bool _internal_has_server_backed_state_key() const;
+  public:
+  void clear_server_backed_state_key();
+  const std::string& server_backed_state_key() const;
+  void set_server_backed_state_key(const std::string& value);
+  void set_server_backed_state_key(std::string&& value);
+  void set_server_backed_state_key(const char* value);
+  void set_server_backed_state_key(const void* value, size_t size);
+  std::string* mutable_server_backed_state_key();
+  std::string* release_server_backed_state_key();
+  void set_allocated_server_backed_state_key(std::string* server_backed_state_key);
+  private:
+  const std::string& _internal_server_backed_state_key() const;
+  void _internal_set_server_backed_state_key(const std::string& value);
+  std::string* _internal_mutable_server_backed_state_key();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceStateRetrievalRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr server_backed_state_key_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceStateKeyUpdateRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceStateKeyUpdateRequest) */ {
+ public:
+  DeviceStateKeyUpdateRequest();
+  virtual ~DeviceStateKeyUpdateRequest();
+
+  DeviceStateKeyUpdateRequest(const DeviceStateKeyUpdateRequest& from);
+  DeviceStateKeyUpdateRequest(DeviceStateKeyUpdateRequest&& from) noexcept
+    : DeviceStateKeyUpdateRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceStateKeyUpdateRequest& operator=(const DeviceStateKeyUpdateRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceStateKeyUpdateRequest& operator=(DeviceStateKeyUpdateRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceStateKeyUpdateRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceStateKeyUpdateRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceStateKeyUpdateRequest*>(
+               &_DeviceStateKeyUpdateRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    103;
+
+  friend void swap(DeviceStateKeyUpdateRequest& a, DeviceStateKeyUpdateRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceStateKeyUpdateRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceStateKeyUpdateRequest* New() const final {
+    return CreateMaybeMessage<DeviceStateKeyUpdateRequest>(nullptr);
+  }
+
+  DeviceStateKeyUpdateRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceStateKeyUpdateRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceStateKeyUpdateRequest& from);
+  void MergeFrom(const DeviceStateKeyUpdateRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceStateKeyUpdateRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceStateKeyUpdateRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kServerBackedStateKeysFieldNumber = 1,
+  };
+  // repeated bytes server_backed_state_keys = 1;
+  int server_backed_state_keys_size() const;
+  private:
+  int _internal_server_backed_state_keys_size() const;
+  public:
+  void clear_server_backed_state_keys();
+  const std::string& server_backed_state_keys(int index) const;
+  std::string* mutable_server_backed_state_keys(int index);
+  void set_server_backed_state_keys(int index, const std::string& value);
+  void set_server_backed_state_keys(int index, std::string&& value);
+  void set_server_backed_state_keys(int index, const char* value);
+  void set_server_backed_state_keys(int index, const void* value, size_t size);
+  std::string* add_server_backed_state_keys();
+  void add_server_backed_state_keys(const std::string& value);
+  void add_server_backed_state_keys(std::string&& value);
+  void add_server_backed_state_keys(const char* value);
+  void add_server_backed_state_keys(const void* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& server_backed_state_keys() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_server_backed_state_keys();
+  private:
+  const std::string& _internal_server_backed_state_keys(int index) const;
+  std::string* _internal_add_server_backed_state_keys();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceStateKeyUpdateRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> server_backed_state_keys_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceStateRetrievalResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceStateRetrievalResponse) */ {
+ public:
+  DeviceStateRetrievalResponse();
+  virtual ~DeviceStateRetrievalResponse();
+
+  DeviceStateRetrievalResponse(const DeviceStateRetrievalResponse& from);
+  DeviceStateRetrievalResponse(DeviceStateRetrievalResponse&& from) noexcept
+    : DeviceStateRetrievalResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceStateRetrievalResponse& operator=(const DeviceStateRetrievalResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceStateRetrievalResponse& operator=(DeviceStateRetrievalResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceStateRetrievalResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceStateRetrievalResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceStateRetrievalResponse*>(
+               &_DeviceStateRetrievalResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    104;
+
+  friend void swap(DeviceStateRetrievalResponse& a, DeviceStateRetrievalResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceStateRetrievalResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceStateRetrievalResponse* New() const final {
+    return CreateMaybeMessage<DeviceStateRetrievalResponse>(nullptr);
+  }
+
+  DeviceStateRetrievalResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceStateRetrievalResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceStateRetrievalResponse& from);
+  void MergeFrom(const DeviceStateRetrievalResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceStateRetrievalResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceStateRetrievalResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceStateRetrievalResponse_RestoreMode RestoreMode;
+  static constexpr RestoreMode RESTORE_MODE_NONE =
+    DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_NONE;
+  static constexpr RestoreMode RESTORE_MODE_REENROLLMENT_REQUESTED =
+    DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_REENROLLMENT_REQUESTED;
+  static constexpr RestoreMode RESTORE_MODE_REENROLLMENT_ENFORCED =
+    DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_REENROLLMENT_ENFORCED;
+  static constexpr RestoreMode RESTORE_MODE_DISABLED =
+    DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_DISABLED;
+  static constexpr RestoreMode RESTORE_MODE_REENROLLMENT_ZERO_TOUCH =
+    DeviceStateRetrievalResponse_RestoreMode_RESTORE_MODE_REENROLLMENT_ZERO_TOUCH;
+  static inline bool RestoreMode_IsValid(int value) {
+    return DeviceStateRetrievalResponse_RestoreMode_IsValid(value);
+  }
+  static constexpr RestoreMode RestoreMode_MIN =
+    DeviceStateRetrievalResponse_RestoreMode_RestoreMode_MIN;
+  static constexpr RestoreMode RestoreMode_MAX =
+    DeviceStateRetrievalResponse_RestoreMode_RestoreMode_MAX;
+  static constexpr int RestoreMode_ARRAYSIZE =
+    DeviceStateRetrievalResponse_RestoreMode_RestoreMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& RestoreMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, RestoreMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function RestoreMode_Name.");
+    return DeviceStateRetrievalResponse_RestoreMode_Name(enum_t_value);
+  }
+  static inline bool RestoreMode_Parse(const std::string& name,
+      RestoreMode* value) {
+    return DeviceStateRetrievalResponse_RestoreMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kManagementDomainFieldNumber = 2,
+    kDisabledStateFieldNumber = 3,
+    kInitialStateResponseFieldNumber = 4,
+    kRestoreModeFieldNumber = 1,
+  };
+  // optional string management_domain = 2;
+  bool has_management_domain() const;
+  private:
+  bool _internal_has_management_domain() const;
+  public:
+  void clear_management_domain();
+  const std::string& management_domain() const;
+  void set_management_domain(const std::string& value);
+  void set_management_domain(std::string&& value);
+  void set_management_domain(const char* value);
+  void set_management_domain(const char* value, size_t size);
+  std::string* mutable_management_domain();
+  std::string* release_management_domain();
+  void set_allocated_management_domain(std::string* management_domain);
+  private:
+  const std::string& _internal_management_domain() const;
+  void _internal_set_management_domain(const std::string& value);
+  std::string* _internal_mutable_management_domain();
+  public:
+
+  // optional .enterprise_management.DisabledState disabled_state = 3;
+  bool has_disabled_state() const;
+  private:
+  bool _internal_has_disabled_state() const;
+  public:
+  void clear_disabled_state();
+  const ::enterprise_management::DisabledState& disabled_state() const;
+  ::enterprise_management::DisabledState* release_disabled_state();
+  ::enterprise_management::DisabledState* mutable_disabled_state();
+  void set_allocated_disabled_state(::enterprise_management::DisabledState* disabled_state);
+  private:
+  const ::enterprise_management::DisabledState& _internal_disabled_state() const;
+  ::enterprise_management::DisabledState* _internal_mutable_disabled_state();
+  public:
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateResponse initial_state_response = 4;
+  bool has_initial_state_response() const;
+  private:
+  bool _internal_has_initial_state_response() const;
+  public:
+  void clear_initial_state_response();
+  const ::enterprise_management::DeviceInitialEnrollmentStateResponse& initial_state_response() const;
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* release_initial_state_response();
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* mutable_initial_state_response();
+  void set_allocated_initial_state_response(::enterprise_management::DeviceInitialEnrollmentStateResponse* initial_state_response);
+  private:
+  const ::enterprise_management::DeviceInitialEnrollmentStateResponse& _internal_initial_state_response() const;
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* _internal_mutable_initial_state_response();
+  public:
+
+  // optional .enterprise_management.DeviceStateRetrievalResponse.RestoreMode restore_mode = 1 [default = RESTORE_MODE_NONE];
+  bool has_restore_mode() const;
+  private:
+  bool _internal_has_restore_mode() const;
+  public:
+  void clear_restore_mode();
+  ::enterprise_management::DeviceStateRetrievalResponse_RestoreMode restore_mode() const;
+  void set_restore_mode(::enterprise_management::DeviceStateRetrievalResponse_RestoreMode value);
+  private:
+  ::enterprise_management::DeviceStateRetrievalResponse_RestoreMode _internal_restore_mode() const;
+  void _internal_set_restore_mode(::enterprise_management::DeviceStateRetrievalResponse_RestoreMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceStateRetrievalResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr management_domain_;
+  ::enterprise_management::DisabledState* disabled_state_;
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* initial_state_response_;
+  int restore_mode_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceInitialEnrollmentStateRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceInitialEnrollmentStateRequest) */ {
+ public:
+  DeviceInitialEnrollmentStateRequest();
+  virtual ~DeviceInitialEnrollmentStateRequest();
+
+  DeviceInitialEnrollmentStateRequest(const DeviceInitialEnrollmentStateRequest& from);
+  DeviceInitialEnrollmentStateRequest(DeviceInitialEnrollmentStateRequest&& from) noexcept
+    : DeviceInitialEnrollmentStateRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceInitialEnrollmentStateRequest& operator=(const DeviceInitialEnrollmentStateRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceInitialEnrollmentStateRequest& operator=(DeviceInitialEnrollmentStateRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceInitialEnrollmentStateRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceInitialEnrollmentStateRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceInitialEnrollmentStateRequest*>(
+               &_DeviceInitialEnrollmentStateRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    105;
+
+  friend void swap(DeviceInitialEnrollmentStateRequest& a, DeviceInitialEnrollmentStateRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceInitialEnrollmentStateRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceInitialEnrollmentStateRequest* New() const final {
+    return CreateMaybeMessage<DeviceInitialEnrollmentStateRequest>(nullptr);
+  }
+
+  DeviceInitialEnrollmentStateRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceInitialEnrollmentStateRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceInitialEnrollmentStateRequest& from);
+  void MergeFrom(const DeviceInitialEnrollmentStateRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceInitialEnrollmentStateRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceInitialEnrollmentStateRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSerialNumberFieldNumber = 1,
+    kBrandCodeFieldNumber = 2,
+  };
+  // optional string serial_number = 1;
+  bool has_serial_number() const;
+  private:
+  bool _internal_has_serial_number() const;
+  public:
+  void clear_serial_number();
+  const std::string& serial_number() const;
+  void set_serial_number(const std::string& value);
+  void set_serial_number(std::string&& value);
+  void set_serial_number(const char* value);
+  void set_serial_number(const char* value, size_t size);
+  std::string* mutable_serial_number();
+  std::string* release_serial_number();
+  void set_allocated_serial_number(std::string* serial_number);
+  private:
+  const std::string& _internal_serial_number() const;
+  void _internal_set_serial_number(const std::string& value);
+  std::string* _internal_mutable_serial_number();
+  public:
+
+  // optional string brand_code = 2;
+  bool has_brand_code() const;
+  private:
+  bool _internal_has_brand_code() const;
+  public:
+  void clear_brand_code();
+  const std::string& brand_code() const;
+  void set_brand_code(const std::string& value);
+  void set_brand_code(std::string&& value);
+  void set_brand_code(const char* value);
+  void set_brand_code(const char* value, size_t size);
+  std::string* mutable_brand_code();
+  std::string* release_brand_code();
+  void set_allocated_brand_code(std::string* brand_code);
+  private:
+  const std::string& _internal_brand_code() const;
+  void _internal_set_brand_code(const std::string& value);
+  std::string* _internal_mutable_brand_code();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceInitialEnrollmentStateRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr serial_number_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr brand_code_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceInitialEnrollmentStateResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceInitialEnrollmentStateResponse) */ {
+ public:
+  DeviceInitialEnrollmentStateResponse();
+  virtual ~DeviceInitialEnrollmentStateResponse();
+
+  DeviceInitialEnrollmentStateResponse(const DeviceInitialEnrollmentStateResponse& from);
+  DeviceInitialEnrollmentStateResponse(DeviceInitialEnrollmentStateResponse&& from) noexcept
+    : DeviceInitialEnrollmentStateResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceInitialEnrollmentStateResponse& operator=(const DeviceInitialEnrollmentStateResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceInitialEnrollmentStateResponse& operator=(DeviceInitialEnrollmentStateResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceInitialEnrollmentStateResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceInitialEnrollmentStateResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceInitialEnrollmentStateResponse*>(
+               &_DeviceInitialEnrollmentStateResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    106;
+
+  friend void swap(DeviceInitialEnrollmentStateResponse& a, DeviceInitialEnrollmentStateResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceInitialEnrollmentStateResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceInitialEnrollmentStateResponse* New() const final {
+    return CreateMaybeMessage<DeviceInitialEnrollmentStateResponse>(nullptr);
+  }
+
+  DeviceInitialEnrollmentStateResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceInitialEnrollmentStateResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceInitialEnrollmentStateResponse& from);
+  void MergeFrom(const DeviceInitialEnrollmentStateResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceInitialEnrollmentStateResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceInitialEnrollmentStateResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode InitialEnrollmentMode;
+  static constexpr InitialEnrollmentMode INITIAL_ENROLLMENT_MODE_NONE =
+    DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_NONE;
+  static constexpr InitialEnrollmentMode INITIAL_ENROLLMENT_MODE_ENROLLMENT_ENFORCED =
+    DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_ENROLLMENT_ENFORCED;
+  static constexpr InitialEnrollmentMode INITIAL_ENROLLMENT_MODE_ZERO_TOUCH_ENFORCED =
+    DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_ZERO_TOUCH_ENFORCED;
+  static constexpr InitialEnrollmentMode INITIAL_ENROLLMENT_MODE_DISABLED =
+    DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_INITIAL_ENROLLMENT_MODE_DISABLED;
+  static inline bool InitialEnrollmentMode_IsValid(int value) {
+    return DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_IsValid(value);
+  }
+  static constexpr InitialEnrollmentMode InitialEnrollmentMode_MIN =
+    DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_InitialEnrollmentMode_MIN;
+  static constexpr InitialEnrollmentMode InitialEnrollmentMode_MAX =
+    DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_InitialEnrollmentMode_MAX;
+  static constexpr int InitialEnrollmentMode_ARRAYSIZE =
+    DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_InitialEnrollmentMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& InitialEnrollmentMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, InitialEnrollmentMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function InitialEnrollmentMode_Name.");
+    return DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Name(enum_t_value);
+  }
+  static inline bool InitialEnrollmentMode_Parse(const std::string& name,
+      InitialEnrollmentMode* value) {
+    return DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_Parse(name, value);
+  }
+
+  typedef DeviceInitialEnrollmentStateResponse_LicensePackagingSKU LicensePackagingSKU;
+  static constexpr LicensePackagingSKU NOT_EXIST =
+    DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_NOT_EXIST;
+  static constexpr LicensePackagingSKU CHROME_ENTERPRISE =
+    DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_CHROME_ENTERPRISE;
+  static constexpr LicensePackagingSKU CHROME_EDUCATION =
+    DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_CHROME_EDUCATION;
+  static constexpr LicensePackagingSKU CHROME_TERMINAL =
+    DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_CHROME_TERMINAL;
+  static inline bool LicensePackagingSKU_IsValid(int value) {
+    return DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_IsValid(value);
+  }
+  static constexpr LicensePackagingSKU LicensePackagingSKU_MIN =
+    DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_LicensePackagingSKU_MIN;
+  static constexpr LicensePackagingSKU LicensePackagingSKU_MAX =
+    DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_LicensePackagingSKU_MAX;
+  static constexpr int LicensePackagingSKU_ARRAYSIZE =
+    DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_LicensePackagingSKU_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& LicensePackagingSKU_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, LicensePackagingSKU>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function LicensePackagingSKU_Name.");
+    return DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Name(enum_t_value);
+  }
+  static inline bool LicensePackagingSKU_Parse(const std::string& name,
+      LicensePackagingSKU* value) {
+    return DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kManagementDomainFieldNumber = 2,
+    kDisabledStateFieldNumber = 4,
+    kInitialEnrollmentModeFieldNumber = 1,
+    kIsLicensePackagedWithDeviceFieldNumber = 3,
+    kLicensePackagingSkuFieldNumber = 5,
+  };
+  // optional string management_domain = 2;
+  bool has_management_domain() const;
+  private:
+  bool _internal_has_management_domain() const;
+  public:
+  void clear_management_domain();
+  const std::string& management_domain() const;
+  void set_management_domain(const std::string& value);
+  void set_management_domain(std::string&& value);
+  void set_management_domain(const char* value);
+  void set_management_domain(const char* value, size_t size);
+  std::string* mutable_management_domain();
+  std::string* release_management_domain();
+  void set_allocated_management_domain(std::string* management_domain);
+  private:
+  const std::string& _internal_management_domain() const;
+  void _internal_set_management_domain(const std::string& value);
+  std::string* _internal_mutable_management_domain();
+  public:
+
+  // optional .enterprise_management.DisabledState disabled_state = 4;
+  bool has_disabled_state() const;
+  private:
+  bool _internal_has_disabled_state() const;
+  public:
+  void clear_disabled_state();
+  const ::enterprise_management::DisabledState& disabled_state() const;
+  ::enterprise_management::DisabledState* release_disabled_state();
+  ::enterprise_management::DisabledState* mutable_disabled_state();
+  void set_allocated_disabled_state(::enterprise_management::DisabledState* disabled_state);
+  private:
+  const ::enterprise_management::DisabledState& _internal_disabled_state() const;
+  ::enterprise_management::DisabledState* _internal_mutable_disabled_state();
+  public:
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateResponse.InitialEnrollmentMode initial_enrollment_mode = 1 [default = INITIAL_ENROLLMENT_MODE_NONE];
+  bool has_initial_enrollment_mode() const;
+  private:
+  bool _internal_has_initial_enrollment_mode() const;
+  public:
+  void clear_initial_enrollment_mode();
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode initial_enrollment_mode() const;
+  void set_initial_enrollment_mode(::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode value);
+  private:
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode _internal_initial_enrollment_mode() const;
+  void _internal_set_initial_enrollment_mode(::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode value);
+  public:
+
+  // optional bool is_license_packaged_with_device = 3;
+  bool has_is_license_packaged_with_device() const;
+  private:
+  bool _internal_has_is_license_packaged_with_device() const;
+  public:
+  void clear_is_license_packaged_with_device();
+  bool is_license_packaged_with_device() const;
+  void set_is_license_packaged_with_device(bool value);
+  private:
+  bool _internal_is_license_packaged_with_device() const;
+  void _internal_set_is_license_packaged_with_device(bool value);
+  public:
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateResponse.LicensePackagingSKU license_packaging_sku = 5;
+  bool has_license_packaging_sku() const;
+  private:
+  bool _internal_has_license_packaging_sku() const;
+  public:
+  void clear_license_packaging_sku();
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU license_packaging_sku() const;
+  void set_license_packaging_sku(::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU value);
+  private:
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU _internal_license_packaging_sku() const;
+  void _internal_set_license_packaging_sku(::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceInitialEnrollmentStateResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr management_domain_;
+  ::enterprise_management::DisabledState* disabled_state_;
+  int initial_enrollment_mode_;
+  bool is_license_packaged_with_device_;
+  int license_packaging_sku_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePairingRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePairingRequest) */ {
+ public:
+  DevicePairingRequest();
+  virtual ~DevicePairingRequest();
+
+  DevicePairingRequest(const DevicePairingRequest& from);
+  DevicePairingRequest(DevicePairingRequest&& from) noexcept
+    : DevicePairingRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePairingRequest& operator=(const DevicePairingRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePairingRequest& operator=(DevicePairingRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePairingRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePairingRequest* internal_default_instance() {
+    return reinterpret_cast<const DevicePairingRequest*>(
+               &_DevicePairingRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    107;
+
+  friend void swap(DevicePairingRequest& a, DevicePairingRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePairingRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePairingRequest* New() const final {
+    return CreateMaybeMessage<DevicePairingRequest>(nullptr);
+  }
+
+  DevicePairingRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePairingRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePairingRequest& from);
+  void MergeFrom(const DevicePairingRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePairingRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePairingRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHostDeviceIdFieldNumber = 1,
+    kControllerDeviceIdFieldNumber = 2,
+  };
+  // optional string host_device_id = 1;
+  bool has_host_device_id() const;
+  private:
+  bool _internal_has_host_device_id() const;
+  public:
+  void clear_host_device_id();
+  const std::string& host_device_id() const;
+  void set_host_device_id(const std::string& value);
+  void set_host_device_id(std::string&& value);
+  void set_host_device_id(const char* value);
+  void set_host_device_id(const char* value, size_t size);
+  std::string* mutable_host_device_id();
+  std::string* release_host_device_id();
+  void set_allocated_host_device_id(std::string* host_device_id);
+  private:
+  const std::string& _internal_host_device_id() const;
+  void _internal_set_host_device_id(const std::string& value);
+  std::string* _internal_mutable_host_device_id();
+  public:
+
+  // optional string controller_device_id = 2;
+  bool has_controller_device_id() const;
+  private:
+  bool _internal_has_controller_device_id() const;
+  public:
+  void clear_controller_device_id();
+  const std::string& controller_device_id() const;
+  void set_controller_device_id(const std::string& value);
+  void set_controller_device_id(std::string&& value);
+  void set_controller_device_id(const char* value);
+  void set_controller_device_id(const char* value, size_t size);
+  std::string* mutable_controller_device_id();
+  std::string* release_controller_device_id();
+  void set_allocated_controller_device_id(std::string* controller_device_id);
+  private:
+  const std::string& _internal_controller_device_id() const;
+  void _internal_set_controller_device_id(const std::string& value);
+  std::string* _internal_mutable_controller_device_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePairingRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr host_device_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr controller_device_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DevicePairingResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DevicePairingResponse) */ {
+ public:
+  DevicePairingResponse();
+  virtual ~DevicePairingResponse();
+
+  DevicePairingResponse(const DevicePairingResponse& from);
+  DevicePairingResponse(DevicePairingResponse&& from) noexcept
+    : DevicePairingResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DevicePairingResponse& operator=(const DevicePairingResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DevicePairingResponse& operator=(DevicePairingResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DevicePairingResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DevicePairingResponse* internal_default_instance() {
+    return reinterpret_cast<const DevicePairingResponse*>(
+               &_DevicePairingResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    108;
+
+  friend void swap(DevicePairingResponse& a, DevicePairingResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DevicePairingResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DevicePairingResponse* New() const final {
+    return CreateMaybeMessage<DevicePairingResponse>(nullptr);
+  }
+
+  DevicePairingResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DevicePairingResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DevicePairingResponse& from);
+  void MergeFrom(const DevicePairingResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DevicePairingResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DevicePairingResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DevicePairingResponse_StatusCode StatusCode;
+  static constexpr StatusCode SUCCESS =
+    DevicePairingResponse_StatusCode_SUCCESS;
+  static constexpr StatusCode FAILED =
+    DevicePairingResponse_StatusCode_FAILED;
+  static constexpr StatusCode HOST_DEVICE_NOT_FOUND =
+    DevicePairingResponse_StatusCode_HOST_DEVICE_NOT_FOUND;
+  static constexpr StatusCode CONTROLLER_DEVICE_NOT_FOUND =
+    DevicePairingResponse_StatusCode_CONTROLLER_DEVICE_NOT_FOUND;
+  static constexpr StatusCode HOST_DEVICE_DEPROVISIONED =
+    DevicePairingResponse_StatusCode_HOST_DEVICE_DEPROVISIONED;
+  static constexpr StatusCode CONTROLLER_DEVICE_DEPROVISIONED =
+    DevicePairingResponse_StatusCode_CONTROLLER_DEVICE_DEPROVISIONED;
+  static inline bool StatusCode_IsValid(int value) {
+    return DevicePairingResponse_StatusCode_IsValid(value);
+  }
+  static constexpr StatusCode StatusCode_MIN =
+    DevicePairingResponse_StatusCode_StatusCode_MIN;
+  static constexpr StatusCode StatusCode_MAX =
+    DevicePairingResponse_StatusCode_StatusCode_MAX;
+  static constexpr int StatusCode_ARRAYSIZE =
+    DevicePairingResponse_StatusCode_StatusCode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& StatusCode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, StatusCode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function StatusCode_Name.");
+    return DevicePairingResponse_StatusCode_Name(enum_t_value);
+  }
+  static inline bool StatusCode_Parse(const std::string& name,
+      StatusCode* value) {
+    return DevicePairingResponse_StatusCode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kStatusCodeFieldNumber = 1,
+  };
+  // optional .enterprise_management.DevicePairingResponse.StatusCode status_code = 1 [default = FAILED];
+  bool has_status_code() const;
+  private:
+  bool _internal_has_status_code() const;
+  public:
+  void clear_status_code();
+  ::enterprise_management::DevicePairingResponse_StatusCode status_code() const;
+  void set_status_code(::enterprise_management::DevicePairingResponse_StatusCode value);
+  private:
+  ::enterprise_management::DevicePairingResponse_StatusCode _internal_status_code() const;
+  void _internal_set_status_code(::enterprise_management::DevicePairingResponse_StatusCode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DevicePairingResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int status_code_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CheckDevicePairingRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CheckDevicePairingRequest) */ {
+ public:
+  CheckDevicePairingRequest();
+  virtual ~CheckDevicePairingRequest();
+
+  CheckDevicePairingRequest(const CheckDevicePairingRequest& from);
+  CheckDevicePairingRequest(CheckDevicePairingRequest&& from) noexcept
+    : CheckDevicePairingRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline CheckDevicePairingRequest& operator=(const CheckDevicePairingRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CheckDevicePairingRequest& operator=(CheckDevicePairingRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CheckDevicePairingRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CheckDevicePairingRequest* internal_default_instance() {
+    return reinterpret_cast<const CheckDevicePairingRequest*>(
+               &_CheckDevicePairingRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    109;
+
+  friend void swap(CheckDevicePairingRequest& a, CheckDevicePairingRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CheckDevicePairingRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CheckDevicePairingRequest* New() const final {
+    return CreateMaybeMessage<CheckDevicePairingRequest>(nullptr);
+  }
+
+  CheckDevicePairingRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CheckDevicePairingRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CheckDevicePairingRequest& from);
+  void MergeFrom(const CheckDevicePairingRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CheckDevicePairingRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CheckDevicePairingRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHostDeviceIdFieldNumber = 1,
+    kControllerDeviceIdFieldNumber = 2,
+  };
+  // optional string host_device_id = 1;
+  bool has_host_device_id() const;
+  private:
+  bool _internal_has_host_device_id() const;
+  public:
+  void clear_host_device_id();
+  const std::string& host_device_id() const;
+  void set_host_device_id(const std::string& value);
+  void set_host_device_id(std::string&& value);
+  void set_host_device_id(const char* value);
+  void set_host_device_id(const char* value, size_t size);
+  std::string* mutable_host_device_id();
+  std::string* release_host_device_id();
+  void set_allocated_host_device_id(std::string* host_device_id);
+  private:
+  const std::string& _internal_host_device_id() const;
+  void _internal_set_host_device_id(const std::string& value);
+  std::string* _internal_mutable_host_device_id();
+  public:
+
+  // optional string controller_device_id = 2;
+  bool has_controller_device_id() const;
+  private:
+  bool _internal_has_controller_device_id() const;
+  public:
+  void clear_controller_device_id();
+  const std::string& controller_device_id() const;
+  void set_controller_device_id(const std::string& value);
+  void set_controller_device_id(std::string&& value);
+  void set_controller_device_id(const char* value);
+  void set_controller_device_id(const char* value, size_t size);
+  std::string* mutable_controller_device_id();
+  std::string* release_controller_device_id();
+  void set_allocated_controller_device_id(std::string* controller_device_id);
+  private:
+  const std::string& _internal_controller_device_id() const;
+  void _internal_set_controller_device_id(const std::string& value);
+  std::string* _internal_mutable_controller_device_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CheckDevicePairingRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr host_device_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr controller_device_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CheckDevicePairingResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CheckDevicePairingResponse) */ {
+ public:
+  CheckDevicePairingResponse();
+  virtual ~CheckDevicePairingResponse();
+
+  CheckDevicePairingResponse(const CheckDevicePairingResponse& from);
+  CheckDevicePairingResponse(CheckDevicePairingResponse&& from) noexcept
+    : CheckDevicePairingResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline CheckDevicePairingResponse& operator=(const CheckDevicePairingResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CheckDevicePairingResponse& operator=(CheckDevicePairingResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CheckDevicePairingResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CheckDevicePairingResponse* internal_default_instance() {
+    return reinterpret_cast<const CheckDevicePairingResponse*>(
+               &_CheckDevicePairingResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    110;
+
+  friend void swap(CheckDevicePairingResponse& a, CheckDevicePairingResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CheckDevicePairingResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CheckDevicePairingResponse* New() const final {
+    return CreateMaybeMessage<CheckDevicePairingResponse>(nullptr);
+  }
+
+  CheckDevicePairingResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CheckDevicePairingResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CheckDevicePairingResponse& from);
+  void MergeFrom(const CheckDevicePairingResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CheckDevicePairingResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CheckDevicePairingResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef CheckDevicePairingResponse_StatusCode StatusCode;
+  static constexpr StatusCode PAIRED =
+    CheckDevicePairingResponse_StatusCode_PAIRED;
+  static constexpr StatusCode NOT_PAIRED =
+    CheckDevicePairingResponse_StatusCode_NOT_PAIRED;
+  static constexpr StatusCode HOST_DEVICE_NOT_FOUND =
+    CheckDevicePairingResponse_StatusCode_HOST_DEVICE_NOT_FOUND;
+  static constexpr StatusCode CONTROLLER_DEVICE_NOT_FOUND =
+    CheckDevicePairingResponse_StatusCode_CONTROLLER_DEVICE_NOT_FOUND;
+  static constexpr StatusCode HOST_DEVICE_DEPROVISIONED =
+    CheckDevicePairingResponse_StatusCode_HOST_DEVICE_DEPROVISIONED;
+  static constexpr StatusCode CONTROLLER_DEVICE_DEPROVISIONED =
+    CheckDevicePairingResponse_StatusCode_CONTROLLER_DEVICE_DEPROVISIONED;
+  static constexpr StatusCode INVALID_CONTROLLER_DEVICE_IDENTITY =
+    CheckDevicePairingResponse_StatusCode_INVALID_CONTROLLER_DEVICE_IDENTITY;
+  static inline bool StatusCode_IsValid(int value) {
+    return CheckDevicePairingResponse_StatusCode_IsValid(value);
+  }
+  static constexpr StatusCode StatusCode_MIN =
+    CheckDevicePairingResponse_StatusCode_StatusCode_MIN;
+  static constexpr StatusCode StatusCode_MAX =
+    CheckDevicePairingResponse_StatusCode_StatusCode_MAX;
+  static constexpr int StatusCode_ARRAYSIZE =
+    CheckDevicePairingResponse_StatusCode_StatusCode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& StatusCode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, StatusCode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function StatusCode_Name.");
+    return CheckDevicePairingResponse_StatusCode_Name(enum_t_value);
+  }
+  static inline bool StatusCode_Parse(const std::string& name,
+      StatusCode* value) {
+    return CheckDevicePairingResponse_StatusCode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kStatusCodeFieldNumber = 1,
+  };
+  // optional .enterprise_management.CheckDevicePairingResponse.StatusCode status_code = 1 [default = NOT_PAIRED];
+  bool has_status_code() const;
+  private:
+  bool _internal_has_status_code() const;
+  public:
+  void clear_status_code();
+  ::enterprise_management::CheckDevicePairingResponse_StatusCode status_code() const;
+  void set_status_code(::enterprise_management::CheckDevicePairingResponse_StatusCode value);
+  private:
+  ::enterprise_management::CheckDevicePairingResponse_StatusCode _internal_status_code() const;
+  void _internal_set_status_code(::enterprise_management::CheckDevicePairingResponse_StatusCode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CheckDevicePairingResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int status_code_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RemoteCommand :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RemoteCommand) */ {
+ public:
+  RemoteCommand();
+  virtual ~RemoteCommand();
+
+  RemoteCommand(const RemoteCommand& from);
+  RemoteCommand(RemoteCommand&& from) noexcept
+    : RemoteCommand() {
+    *this = ::std::move(from);
+  }
+
+  inline RemoteCommand& operator=(const RemoteCommand& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RemoteCommand& operator=(RemoteCommand&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RemoteCommand& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RemoteCommand* internal_default_instance() {
+    return reinterpret_cast<const RemoteCommand*>(
+               &_RemoteCommand_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    111;
+
+  friend void swap(RemoteCommand& a, RemoteCommand& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RemoteCommand* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RemoteCommand* New() const final {
+    return CreateMaybeMessage<RemoteCommand>(nullptr);
+  }
+
+  RemoteCommand* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RemoteCommand>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RemoteCommand& from);
+  void MergeFrom(const RemoteCommand& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RemoteCommand* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RemoteCommand";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef RemoteCommand_Type Type;
+  static constexpr Type COMMAND_ECHO_TEST =
+    RemoteCommand_Type_COMMAND_ECHO_TEST;
+  static constexpr Type DEVICE_REBOOT =
+    RemoteCommand_Type_DEVICE_REBOOT;
+  static constexpr Type DEVICE_SCREENSHOT =
+    RemoteCommand_Type_DEVICE_SCREENSHOT;
+  static constexpr Type DEVICE_SET_VOLUME =
+    RemoteCommand_Type_DEVICE_SET_VOLUME;
+  static constexpr Type DEVICE_FETCH_STATUS =
+    RemoteCommand_Type_DEVICE_FETCH_STATUS;
+  static constexpr Type USER_ARC_COMMAND =
+    RemoteCommand_Type_USER_ARC_COMMAND;
+  static constexpr Type DEVICE_WIPE_USERS =
+    RemoteCommand_Type_DEVICE_WIPE_USERS;
+  static constexpr Type DEVICE_START_CRD_SESSION =
+    RemoteCommand_Type_DEVICE_START_CRD_SESSION;
+  static constexpr Type DEVICE_REMOTE_POWERWASH =
+    RemoteCommand_Type_DEVICE_REMOTE_POWERWASH;
+  static constexpr Type DEVICE_REFRESH_ENTERPRISE_MACHINE_CERTIFICATE =
+    RemoteCommand_Type_DEVICE_REFRESH_ENTERPRISE_MACHINE_CERTIFICATE;
+  static constexpr Type DEVICE_GET_AVAILABLE_DIAGNOSTIC_ROUTINES =
+    RemoteCommand_Type_DEVICE_GET_AVAILABLE_DIAGNOSTIC_ROUTINES;
+  static constexpr Type DEVICE_RUN_DIAGNOSTIC_ROUTINE =
+    RemoteCommand_Type_DEVICE_RUN_DIAGNOSTIC_ROUTINE;
+  static constexpr Type DEVICE_GET_DIAGNOSTIC_ROUTINE_UPDATE =
+    RemoteCommand_Type_DEVICE_GET_DIAGNOSTIC_ROUTINE_UPDATE;
+  static constexpr Type BROWSER_CLEAR_BROWSING_DATA =
+    RemoteCommand_Type_BROWSER_CLEAR_BROWSING_DATA;
+  static constexpr Type DEVICE_RESET_EUICC =
+    RemoteCommand_Type_DEVICE_RESET_EUICC;
+  static constexpr Type BROWSER_ROTATE_ATTESTATION_CREDENTIAL =
+    RemoteCommand_Type_BROWSER_ROTATE_ATTESTATION_CREDENTIAL;
+  static inline bool Type_IsValid(int value) {
+    return RemoteCommand_Type_IsValid(value);
+  }
+  static constexpr Type Type_MIN =
+    RemoteCommand_Type_Type_MIN;
+  static constexpr Type Type_MAX =
+    RemoteCommand_Type_Type_MAX;
+  static constexpr int Type_ARRAYSIZE =
+    RemoteCommand_Type_Type_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Type_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Type>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Type_Name.");
+    return RemoteCommand_Type_Name(enum_t_value);
+  }
+  static inline bool Type_Parse(const std::string& name,
+      Type* value) {
+    return RemoteCommand_Type_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPayloadFieldNumber = 4,
+    kTargetDeviceIdFieldNumber = 5,
+    kCommandIdFieldNumber = 2,
+    kAgeOfCommandFieldNumber = 3,
+    kTypeFieldNumber = 1,
+  };
+  // optional string payload = 4;
+  bool has_payload() const;
+  private:
+  bool _internal_has_payload() const;
+  public:
+  void clear_payload();
+  const std::string& payload() const;
+  void set_payload(const std::string& value);
+  void set_payload(std::string&& value);
+  void set_payload(const char* value);
+  void set_payload(const char* value, size_t size);
+  std::string* mutable_payload();
+  std::string* release_payload();
+  void set_allocated_payload(std::string* payload);
+  private:
+  const std::string& _internal_payload() const;
+  void _internal_set_payload(const std::string& value);
+  std::string* _internal_mutable_payload();
+  public:
+
+  // optional string target_device_id = 5;
+  bool has_target_device_id() const;
+  private:
+  bool _internal_has_target_device_id() const;
+  public:
+  void clear_target_device_id();
+  const std::string& target_device_id() const;
+  void set_target_device_id(const std::string& value);
+  void set_target_device_id(std::string&& value);
+  void set_target_device_id(const char* value);
+  void set_target_device_id(const char* value, size_t size);
+  std::string* mutable_target_device_id();
+  std::string* release_target_device_id();
+  void set_allocated_target_device_id(std::string* target_device_id);
+  private:
+  const std::string& _internal_target_device_id() const;
+  void _internal_set_target_device_id(const std::string& value);
+  std::string* _internal_mutable_target_device_id();
+  public:
+
+  // optional int64 command_id = 2;
+  bool has_command_id() const;
+  private:
+  bool _internal_has_command_id() const;
+  public:
+  void clear_command_id();
+  ::PROTOBUF_NAMESPACE_ID::int64 command_id() const;
+  void set_command_id(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_command_id() const;
+  void _internal_set_command_id(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 age_of_command = 3;
+  bool has_age_of_command() const;
+  private:
+  bool _internal_has_age_of_command() const;
+  public:
+  void clear_age_of_command();
+  ::PROTOBUF_NAMESPACE_ID::int64 age_of_command() const;
+  void set_age_of_command(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_age_of_command() const;
+  void _internal_set_age_of_command(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.RemoteCommand.Type type = 1;
+  bool has_type() const;
+  private:
+  bool _internal_has_type() const;
+  public:
+  void clear_type();
+  ::enterprise_management::RemoteCommand_Type type() const;
+  void set_type(::enterprise_management::RemoteCommand_Type value);
+  private:
+  ::enterprise_management::RemoteCommand_Type _internal_type() const;
+  void _internal_set_type(::enterprise_management::RemoteCommand_Type value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RemoteCommand)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr payload_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr target_device_id_;
+  ::PROTOBUF_NAMESPACE_ID::int64 command_id_;
+  ::PROTOBUF_NAMESPACE_ID::int64 age_of_command_;
+  int type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RemoteCommandResult :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RemoteCommandResult) */ {
+ public:
+  RemoteCommandResult();
+  virtual ~RemoteCommandResult();
+
+  RemoteCommandResult(const RemoteCommandResult& from);
+  RemoteCommandResult(RemoteCommandResult&& from) noexcept
+    : RemoteCommandResult() {
+    *this = ::std::move(from);
+  }
+
+  inline RemoteCommandResult& operator=(const RemoteCommandResult& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RemoteCommandResult& operator=(RemoteCommandResult&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RemoteCommandResult& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RemoteCommandResult* internal_default_instance() {
+    return reinterpret_cast<const RemoteCommandResult*>(
+               &_RemoteCommandResult_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    112;
+
+  friend void swap(RemoteCommandResult& a, RemoteCommandResult& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RemoteCommandResult* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RemoteCommandResult* New() const final {
+    return CreateMaybeMessage<RemoteCommandResult>(nullptr);
+  }
+
+  RemoteCommandResult* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RemoteCommandResult>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RemoteCommandResult& from);
+  void MergeFrom(const RemoteCommandResult& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RemoteCommandResult* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RemoteCommandResult";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef RemoteCommandResult_ResultType ResultType;
+  static constexpr ResultType RESULT_IGNORED =
+    RemoteCommandResult_ResultType_RESULT_IGNORED;
+  static constexpr ResultType RESULT_FAILURE =
+    RemoteCommandResult_ResultType_RESULT_FAILURE;
+  static constexpr ResultType RESULT_SUCCESS =
+    RemoteCommandResult_ResultType_RESULT_SUCCESS;
+  static inline bool ResultType_IsValid(int value) {
+    return RemoteCommandResult_ResultType_IsValid(value);
+  }
+  static constexpr ResultType ResultType_MIN =
+    RemoteCommandResult_ResultType_ResultType_MIN;
+  static constexpr ResultType ResultType_MAX =
+    RemoteCommandResult_ResultType_ResultType_MAX;
+  static constexpr int ResultType_ARRAYSIZE =
+    RemoteCommandResult_ResultType_ResultType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ResultType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ResultType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ResultType_Name.");
+    return RemoteCommandResult_ResultType_Name(enum_t_value);
+  }
+  static inline bool ResultType_Parse(const std::string& name,
+      ResultType* value) {
+    return RemoteCommandResult_ResultType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPayloadFieldNumber = 4,
+    kCommandIdFieldNumber = 2,
+    kTimestampFieldNumber = 3,
+    kResultFieldNumber = 1,
+  };
+  // optional string payload = 4;
+  bool has_payload() const;
+  private:
+  bool _internal_has_payload() const;
+  public:
+  void clear_payload();
+  const std::string& payload() const;
+  void set_payload(const std::string& value);
+  void set_payload(std::string&& value);
+  void set_payload(const char* value);
+  void set_payload(const char* value, size_t size);
+  std::string* mutable_payload();
+  std::string* release_payload();
+  void set_allocated_payload(std::string* payload);
+  private:
+  const std::string& _internal_payload() const;
+  void _internal_set_payload(const std::string& value);
+  std::string* _internal_mutable_payload();
+  public:
+
+  // optional int64 command_id = 2;
+  bool has_command_id() const;
+  private:
+  bool _internal_has_command_id() const;
+  public:
+  void clear_command_id();
+  ::PROTOBUF_NAMESPACE_ID::int64 command_id() const;
+  void set_command_id(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_command_id() const;
+  void _internal_set_command_id(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 timestamp = 3;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.RemoteCommandResult.ResultType result = 1;
+  bool has_result() const;
+  private:
+  bool _internal_has_result() const;
+  public:
+  void clear_result();
+  ::enterprise_management::RemoteCommandResult_ResultType result() const;
+  void set_result(::enterprise_management::RemoteCommandResult_ResultType value);
+  private:
+  ::enterprise_management::RemoteCommandResult_ResultType _internal_result() const;
+  void _internal_set_result(::enterprise_management::RemoteCommandResult_ResultType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RemoteCommandResult)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr payload_;
+  ::PROTOBUF_NAMESPACE_ID::int64 command_id_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  int result_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceRemoteCommandRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceRemoteCommandRequest) */ {
+ public:
+  DeviceRemoteCommandRequest();
+  virtual ~DeviceRemoteCommandRequest();
+
+  DeviceRemoteCommandRequest(const DeviceRemoteCommandRequest& from);
+  DeviceRemoteCommandRequest(DeviceRemoteCommandRequest&& from) noexcept
+    : DeviceRemoteCommandRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceRemoteCommandRequest& operator=(const DeviceRemoteCommandRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceRemoteCommandRequest& operator=(DeviceRemoteCommandRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceRemoteCommandRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceRemoteCommandRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceRemoteCommandRequest*>(
+               &_DeviceRemoteCommandRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    113;
+
+  friend void swap(DeviceRemoteCommandRequest& a, DeviceRemoteCommandRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceRemoteCommandRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceRemoteCommandRequest* New() const final {
+    return CreateMaybeMessage<DeviceRemoteCommandRequest>(nullptr);
+  }
+
+  DeviceRemoteCommandRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceRemoteCommandRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceRemoteCommandRequest& from);
+  void MergeFrom(const DeviceRemoteCommandRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceRemoteCommandRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceRemoteCommandRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCommandResultsFieldNumber = 2,
+    kLastCommandUniqueIdFieldNumber = 1,
+    kSendSecureCommandsFieldNumber = 3,
+    kSignatureTypeFieldNumber = 4,
+  };
+  // repeated .enterprise_management.RemoteCommandResult command_results = 2;
+  int command_results_size() const;
+  private:
+  int _internal_command_results_size() const;
+  public:
+  void clear_command_results();
+  ::enterprise_management::RemoteCommandResult* mutable_command_results(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommandResult >*
+      mutable_command_results();
+  private:
+  const ::enterprise_management::RemoteCommandResult& _internal_command_results(int index) const;
+  ::enterprise_management::RemoteCommandResult* _internal_add_command_results();
+  public:
+  const ::enterprise_management::RemoteCommandResult& command_results(int index) const;
+  ::enterprise_management::RemoteCommandResult* add_command_results();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommandResult >&
+      command_results() const;
+
+  // optional int64 last_command_unique_id = 1;
+  bool has_last_command_unique_id() const;
+  private:
+  bool _internal_has_last_command_unique_id() const;
+  public:
+  void clear_last_command_unique_id();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_command_unique_id() const;
+  void set_last_command_unique_id(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_command_unique_id() const;
+  void _internal_set_last_command_unique_id(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional bool send_secure_commands = 3;
+  bool has_send_secure_commands() const;
+  private:
+  bool _internal_has_send_secure_commands() const;
+  public:
+  void clear_send_secure_commands();
+  bool send_secure_commands() const;
+  void set_send_secure_commands(bool value);
+  private:
+  bool _internal_send_secure_commands() const;
+  void _internal_set_send_secure_commands(bool value);
+  public:
+
+  // optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 4;
+  bool has_signature_type() const;
+  private:
+  bool _internal_has_signature_type() const;
+  public:
+  void clear_signature_type();
+  ::enterprise_management::PolicyFetchRequest_SignatureType signature_type() const;
+  void set_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value);
+  private:
+  ::enterprise_management::PolicyFetchRequest_SignatureType _internal_signature_type() const;
+  void _internal_set_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceRemoteCommandRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommandResult > command_results_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_command_unique_id_;
+  bool send_secure_commands_;
+  int signature_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceRemoteCommandResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceRemoteCommandResponse) */ {
+ public:
+  DeviceRemoteCommandResponse();
+  virtual ~DeviceRemoteCommandResponse();
+
+  DeviceRemoteCommandResponse(const DeviceRemoteCommandResponse& from);
+  DeviceRemoteCommandResponse(DeviceRemoteCommandResponse&& from) noexcept
+    : DeviceRemoteCommandResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceRemoteCommandResponse& operator=(const DeviceRemoteCommandResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceRemoteCommandResponse& operator=(DeviceRemoteCommandResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceRemoteCommandResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceRemoteCommandResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceRemoteCommandResponse*>(
+               &_DeviceRemoteCommandResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    114;
+
+  friend void swap(DeviceRemoteCommandResponse& a, DeviceRemoteCommandResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceRemoteCommandResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceRemoteCommandResponse* New() const final {
+    return CreateMaybeMessage<DeviceRemoteCommandResponse>(nullptr);
+  }
+
+  DeviceRemoteCommandResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceRemoteCommandResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceRemoteCommandResponse& from);
+  void MergeFrom(const DeviceRemoteCommandResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceRemoteCommandResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceRemoteCommandResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCommandsFieldNumber = 1,
+    kSecureCommandsFieldNumber = 2,
+  };
+  // repeated .enterprise_management.RemoteCommand commands = 1;
+  int commands_size() const;
+  private:
+  int _internal_commands_size() const;
+  public:
+  void clear_commands();
+  ::enterprise_management::RemoteCommand* mutable_commands(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommand >*
+      mutable_commands();
+  private:
+  const ::enterprise_management::RemoteCommand& _internal_commands(int index) const;
+  ::enterprise_management::RemoteCommand* _internal_add_commands();
+  public:
+  const ::enterprise_management::RemoteCommand& commands(int index) const;
+  ::enterprise_management::RemoteCommand* add_commands();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommand >&
+      commands() const;
+
+  // repeated .enterprise_management.SignedData secure_commands = 2;
+  int secure_commands_size() const;
+  private:
+  int _internal_secure_commands_size() const;
+  public:
+  void clear_secure_commands();
+  ::enterprise_management::SignedData* mutable_secure_commands(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SignedData >*
+      mutable_secure_commands();
+  private:
+  const ::enterprise_management::SignedData& _internal_secure_commands(int index) const;
+  ::enterprise_management::SignedData* _internal_add_secure_commands();
+  public:
+  const ::enterprise_management::SignedData& secure_commands(int index) const;
+  ::enterprise_management::SignedData* add_secure_commands();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SignedData >&
+      secure_commands() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceRemoteCommandResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommand > commands_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SignedData > secure_commands_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAttributeUpdatePermissionRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAttributeUpdatePermissionRequest) */ {
+ public:
+  DeviceAttributeUpdatePermissionRequest();
+  virtual ~DeviceAttributeUpdatePermissionRequest();
+
+  DeviceAttributeUpdatePermissionRequest(const DeviceAttributeUpdatePermissionRequest& from);
+  DeviceAttributeUpdatePermissionRequest(DeviceAttributeUpdatePermissionRequest&& from) noexcept
+    : DeviceAttributeUpdatePermissionRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAttributeUpdatePermissionRequest& operator=(const DeviceAttributeUpdatePermissionRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAttributeUpdatePermissionRequest& operator=(DeviceAttributeUpdatePermissionRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAttributeUpdatePermissionRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAttributeUpdatePermissionRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceAttributeUpdatePermissionRequest*>(
+               &_DeviceAttributeUpdatePermissionRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    115;
+
+  friend void swap(DeviceAttributeUpdatePermissionRequest& a, DeviceAttributeUpdatePermissionRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAttributeUpdatePermissionRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAttributeUpdatePermissionRequest* New() const final {
+    return CreateMaybeMessage<DeviceAttributeUpdatePermissionRequest>(nullptr);
+  }
+
+  DeviceAttributeUpdatePermissionRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAttributeUpdatePermissionRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAttributeUpdatePermissionRequest& from);
+  void MergeFrom(const DeviceAttributeUpdatePermissionRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAttributeUpdatePermissionRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAttributeUpdatePermissionRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAttributeUpdatePermissionRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAttributeUpdatePermissionResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAttributeUpdatePermissionResponse) */ {
+ public:
+  DeviceAttributeUpdatePermissionResponse();
+  virtual ~DeviceAttributeUpdatePermissionResponse();
+
+  DeviceAttributeUpdatePermissionResponse(const DeviceAttributeUpdatePermissionResponse& from);
+  DeviceAttributeUpdatePermissionResponse(DeviceAttributeUpdatePermissionResponse&& from) noexcept
+    : DeviceAttributeUpdatePermissionResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAttributeUpdatePermissionResponse& operator=(const DeviceAttributeUpdatePermissionResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAttributeUpdatePermissionResponse& operator=(DeviceAttributeUpdatePermissionResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAttributeUpdatePermissionResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAttributeUpdatePermissionResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceAttributeUpdatePermissionResponse*>(
+               &_DeviceAttributeUpdatePermissionResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    116;
+
+  friend void swap(DeviceAttributeUpdatePermissionResponse& a, DeviceAttributeUpdatePermissionResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAttributeUpdatePermissionResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAttributeUpdatePermissionResponse* New() const final {
+    return CreateMaybeMessage<DeviceAttributeUpdatePermissionResponse>(nullptr);
+  }
+
+  DeviceAttributeUpdatePermissionResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAttributeUpdatePermissionResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAttributeUpdatePermissionResponse& from);
+  void MergeFrom(const DeviceAttributeUpdatePermissionResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAttributeUpdatePermissionResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAttributeUpdatePermissionResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceAttributeUpdatePermissionResponse_ResultType ResultType;
+  static constexpr ResultType ATTRIBUTE_UPDATE_DISALLOWED =
+    DeviceAttributeUpdatePermissionResponse_ResultType_ATTRIBUTE_UPDATE_DISALLOWED;
+  static constexpr ResultType ATTRIBUTE_UPDATE_ALLOWED =
+    DeviceAttributeUpdatePermissionResponse_ResultType_ATTRIBUTE_UPDATE_ALLOWED;
+  static inline bool ResultType_IsValid(int value) {
+    return DeviceAttributeUpdatePermissionResponse_ResultType_IsValid(value);
+  }
+  static constexpr ResultType ResultType_MIN =
+    DeviceAttributeUpdatePermissionResponse_ResultType_ResultType_MIN;
+  static constexpr ResultType ResultType_MAX =
+    DeviceAttributeUpdatePermissionResponse_ResultType_ResultType_MAX;
+  static constexpr int ResultType_ARRAYSIZE =
+    DeviceAttributeUpdatePermissionResponse_ResultType_ResultType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ResultType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ResultType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ResultType_Name.");
+    return DeviceAttributeUpdatePermissionResponse_ResultType_Name(enum_t_value);
+  }
+  static inline bool ResultType_Parse(const std::string& name,
+      ResultType* value) {
+    return DeviceAttributeUpdatePermissionResponse_ResultType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kResultFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceAttributeUpdatePermissionResponse.ResultType result = 1;
+  bool has_result() const;
+  private:
+  bool _internal_has_result() const;
+  public:
+  void clear_result();
+  ::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType result() const;
+  void set_result(::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType value);
+  private:
+  ::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType _internal_result() const;
+  void _internal_set_result(::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAttributeUpdatePermissionResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int result_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAttributeUpdateRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAttributeUpdateRequest) */ {
+ public:
+  DeviceAttributeUpdateRequest();
+  virtual ~DeviceAttributeUpdateRequest();
+
+  DeviceAttributeUpdateRequest(const DeviceAttributeUpdateRequest& from);
+  DeviceAttributeUpdateRequest(DeviceAttributeUpdateRequest&& from) noexcept
+    : DeviceAttributeUpdateRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAttributeUpdateRequest& operator=(const DeviceAttributeUpdateRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAttributeUpdateRequest& operator=(DeviceAttributeUpdateRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAttributeUpdateRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAttributeUpdateRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceAttributeUpdateRequest*>(
+               &_DeviceAttributeUpdateRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    117;
+
+  friend void swap(DeviceAttributeUpdateRequest& a, DeviceAttributeUpdateRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAttributeUpdateRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAttributeUpdateRequest* New() const final {
+    return CreateMaybeMessage<DeviceAttributeUpdateRequest>(nullptr);
+  }
+
+  DeviceAttributeUpdateRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAttributeUpdateRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAttributeUpdateRequest& from);
+  void MergeFrom(const DeviceAttributeUpdateRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAttributeUpdateRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAttributeUpdateRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAssetIdFieldNumber = 1,
+    kLocationFieldNumber = 2,
+  };
+  // optional string asset_id = 1;
+  bool has_asset_id() const;
+  private:
+  bool _internal_has_asset_id() const;
+  public:
+  void clear_asset_id();
+  const std::string& asset_id() const;
+  void set_asset_id(const std::string& value);
+  void set_asset_id(std::string&& value);
+  void set_asset_id(const char* value);
+  void set_asset_id(const char* value, size_t size);
+  std::string* mutable_asset_id();
+  std::string* release_asset_id();
+  void set_allocated_asset_id(std::string* asset_id);
+  private:
+  const std::string& _internal_asset_id() const;
+  void _internal_set_asset_id(const std::string& value);
+  std::string* _internal_mutable_asset_id();
+  public:
+
+  // optional string location = 2;
+  bool has_location() const;
+  private:
+  bool _internal_has_location() const;
+  public:
+  void clear_location();
+  const std::string& location() const;
+  void set_location(const std::string& value);
+  void set_location(std::string&& value);
+  void set_location(const char* value);
+  void set_location(const char* value, size_t size);
+  std::string* mutable_location();
+  std::string* release_location();
+  void set_allocated_location(std::string* location);
+  private:
+  const std::string& _internal_location() const;
+  void _internal_set_location(const std::string& value);
+  std::string* _internal_mutable_location();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAttributeUpdateRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr asset_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr location_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceAttributeUpdateResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceAttributeUpdateResponse) */ {
+ public:
+  DeviceAttributeUpdateResponse();
+  virtual ~DeviceAttributeUpdateResponse();
+
+  DeviceAttributeUpdateResponse(const DeviceAttributeUpdateResponse& from);
+  DeviceAttributeUpdateResponse(DeviceAttributeUpdateResponse&& from) noexcept
+    : DeviceAttributeUpdateResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceAttributeUpdateResponse& operator=(const DeviceAttributeUpdateResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceAttributeUpdateResponse& operator=(DeviceAttributeUpdateResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceAttributeUpdateResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceAttributeUpdateResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceAttributeUpdateResponse*>(
+               &_DeviceAttributeUpdateResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    118;
+
+  friend void swap(DeviceAttributeUpdateResponse& a, DeviceAttributeUpdateResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceAttributeUpdateResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceAttributeUpdateResponse* New() const final {
+    return CreateMaybeMessage<DeviceAttributeUpdateResponse>(nullptr);
+  }
+
+  DeviceAttributeUpdateResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceAttributeUpdateResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceAttributeUpdateResponse& from);
+  void MergeFrom(const DeviceAttributeUpdateResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceAttributeUpdateResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceAttributeUpdateResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef DeviceAttributeUpdateResponse_ResultType ResultType;
+  static constexpr ResultType ATTRIBUTE_UPDATE_ERROR =
+    DeviceAttributeUpdateResponse_ResultType_ATTRIBUTE_UPDATE_ERROR;
+  static constexpr ResultType ATTRIBUTE_UPDATE_SUCCESS =
+    DeviceAttributeUpdateResponse_ResultType_ATTRIBUTE_UPDATE_SUCCESS;
+  static inline bool ResultType_IsValid(int value) {
+    return DeviceAttributeUpdateResponse_ResultType_IsValid(value);
+  }
+  static constexpr ResultType ResultType_MIN =
+    DeviceAttributeUpdateResponse_ResultType_ResultType_MIN;
+  static constexpr ResultType ResultType_MAX =
+    DeviceAttributeUpdateResponse_ResultType_ResultType_MAX;
+  static constexpr int ResultType_ARRAYSIZE =
+    DeviceAttributeUpdateResponse_ResultType_ResultType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ResultType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ResultType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ResultType_Name.");
+    return DeviceAttributeUpdateResponse_ResultType_Name(enum_t_value);
+  }
+  static inline bool ResultType_Parse(const std::string& name,
+      ResultType* value) {
+    return DeviceAttributeUpdateResponse_ResultType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kResultFieldNumber = 1,
+  };
+  // optional .enterprise_management.DeviceAttributeUpdateResponse.ResultType result = 1;
+  bool has_result() const;
+  private:
+  bool _internal_has_result() const;
+  public:
+  void clear_result();
+  ::enterprise_management::DeviceAttributeUpdateResponse_ResultType result() const;
+  void set_result(::enterprise_management::DeviceAttributeUpdateResponse_ResultType value);
+  private:
+  ::enterprise_management::DeviceAttributeUpdateResponse_ResultType _internal_result() const;
+  void _internal_set_result(::enterprise_management::DeviceAttributeUpdateResponse_ResultType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceAttributeUpdateResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int result_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class GcmIdUpdateRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.GcmIdUpdateRequest) */ {
+ public:
+  GcmIdUpdateRequest();
+  virtual ~GcmIdUpdateRequest();
+
+  GcmIdUpdateRequest(const GcmIdUpdateRequest& from);
+  GcmIdUpdateRequest(GcmIdUpdateRequest&& from) noexcept
+    : GcmIdUpdateRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline GcmIdUpdateRequest& operator=(const GcmIdUpdateRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline GcmIdUpdateRequest& operator=(GcmIdUpdateRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const GcmIdUpdateRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const GcmIdUpdateRequest* internal_default_instance() {
+    return reinterpret_cast<const GcmIdUpdateRequest*>(
+               &_GcmIdUpdateRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    119;
+
+  friend void swap(GcmIdUpdateRequest& a, GcmIdUpdateRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(GcmIdUpdateRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline GcmIdUpdateRequest* New() const final {
+    return CreateMaybeMessage<GcmIdUpdateRequest>(nullptr);
+  }
+
+  GcmIdUpdateRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<GcmIdUpdateRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const GcmIdUpdateRequest& from);
+  void MergeFrom(const GcmIdUpdateRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(GcmIdUpdateRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.GcmIdUpdateRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kGcmIdFieldNumber = 1,
+  };
+  // optional string gcm_id = 1;
+  bool has_gcm_id() const;
+  private:
+  bool _internal_has_gcm_id() const;
+  public:
+  void clear_gcm_id();
+  const std::string& gcm_id() const;
+  void set_gcm_id(const std::string& value);
+  void set_gcm_id(std::string&& value);
+  void set_gcm_id(const char* value);
+  void set_gcm_id(const char* value, size_t size);
+  std::string* mutable_gcm_id();
+  std::string* release_gcm_id();
+  void set_allocated_gcm_id(std::string* gcm_id);
+  private:
+  const std::string& _internal_gcm_id() const;
+  void _internal_set_gcm_id(const std::string& value);
+  std::string* _internal_mutable_gcm_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.GcmIdUpdateRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr gcm_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class GcmIdUpdateResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.GcmIdUpdateResponse) */ {
+ public:
+  GcmIdUpdateResponse();
+  virtual ~GcmIdUpdateResponse();
+
+  GcmIdUpdateResponse(const GcmIdUpdateResponse& from);
+  GcmIdUpdateResponse(GcmIdUpdateResponse&& from) noexcept
+    : GcmIdUpdateResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline GcmIdUpdateResponse& operator=(const GcmIdUpdateResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline GcmIdUpdateResponse& operator=(GcmIdUpdateResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const GcmIdUpdateResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const GcmIdUpdateResponse* internal_default_instance() {
+    return reinterpret_cast<const GcmIdUpdateResponse*>(
+               &_GcmIdUpdateResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    120;
+
+  friend void swap(GcmIdUpdateResponse& a, GcmIdUpdateResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(GcmIdUpdateResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline GcmIdUpdateResponse* New() const final {
+    return CreateMaybeMessage<GcmIdUpdateResponse>(nullptr);
+  }
+
+  GcmIdUpdateResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<GcmIdUpdateResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const GcmIdUpdateResponse& from);
+  void MergeFrom(const GcmIdUpdateResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(GcmIdUpdateResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.GcmIdUpdateResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.GcmIdUpdateResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CheckAndroidManagementRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CheckAndroidManagementRequest) */ {
+ public:
+  CheckAndroidManagementRequest();
+  virtual ~CheckAndroidManagementRequest();
+
+  CheckAndroidManagementRequest(const CheckAndroidManagementRequest& from);
+  CheckAndroidManagementRequest(CheckAndroidManagementRequest&& from) noexcept
+    : CheckAndroidManagementRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline CheckAndroidManagementRequest& operator=(const CheckAndroidManagementRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CheckAndroidManagementRequest& operator=(CheckAndroidManagementRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CheckAndroidManagementRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CheckAndroidManagementRequest* internal_default_instance() {
+    return reinterpret_cast<const CheckAndroidManagementRequest*>(
+               &_CheckAndroidManagementRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    121;
+
+  friend void swap(CheckAndroidManagementRequest& a, CheckAndroidManagementRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CheckAndroidManagementRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CheckAndroidManagementRequest* New() const final {
+    return CreateMaybeMessage<CheckAndroidManagementRequest>(nullptr);
+  }
+
+  CheckAndroidManagementRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CheckAndroidManagementRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CheckAndroidManagementRequest& from);
+  void MergeFrom(const CheckAndroidManagementRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CheckAndroidManagementRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CheckAndroidManagementRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CheckAndroidManagementRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CheckAndroidManagementResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CheckAndroidManagementResponse) */ {
+ public:
+  CheckAndroidManagementResponse();
+  virtual ~CheckAndroidManagementResponse();
+
+  CheckAndroidManagementResponse(const CheckAndroidManagementResponse& from);
+  CheckAndroidManagementResponse(CheckAndroidManagementResponse&& from) noexcept
+    : CheckAndroidManagementResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline CheckAndroidManagementResponse& operator=(const CheckAndroidManagementResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CheckAndroidManagementResponse& operator=(CheckAndroidManagementResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CheckAndroidManagementResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CheckAndroidManagementResponse* internal_default_instance() {
+    return reinterpret_cast<const CheckAndroidManagementResponse*>(
+               &_CheckAndroidManagementResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    122;
+
+  friend void swap(CheckAndroidManagementResponse& a, CheckAndroidManagementResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CheckAndroidManagementResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CheckAndroidManagementResponse* New() const final {
+    return CreateMaybeMessage<CheckAndroidManagementResponse>(nullptr);
+  }
+
+  CheckAndroidManagementResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CheckAndroidManagementResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CheckAndroidManagementResponse& from);
+  void MergeFrom(const CheckAndroidManagementResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CheckAndroidManagementResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CheckAndroidManagementResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CheckAndroidManagementResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CertificateBasedDeviceRegisterRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CertificateBasedDeviceRegisterRequest) */ {
+ public:
+  CertificateBasedDeviceRegisterRequest();
+  virtual ~CertificateBasedDeviceRegisterRequest();
+
+  CertificateBasedDeviceRegisterRequest(const CertificateBasedDeviceRegisterRequest& from);
+  CertificateBasedDeviceRegisterRequest(CertificateBasedDeviceRegisterRequest&& from) noexcept
+    : CertificateBasedDeviceRegisterRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline CertificateBasedDeviceRegisterRequest& operator=(const CertificateBasedDeviceRegisterRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CertificateBasedDeviceRegisterRequest& operator=(CertificateBasedDeviceRegisterRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CertificateBasedDeviceRegisterRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CertificateBasedDeviceRegisterRequest* internal_default_instance() {
+    return reinterpret_cast<const CertificateBasedDeviceRegisterRequest*>(
+               &_CertificateBasedDeviceRegisterRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    123;
+
+  friend void swap(CertificateBasedDeviceRegisterRequest& a, CertificateBasedDeviceRegisterRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CertificateBasedDeviceRegisterRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CertificateBasedDeviceRegisterRequest* New() const final {
+    return CreateMaybeMessage<CertificateBasedDeviceRegisterRequest>(nullptr);
+  }
+
+  CertificateBasedDeviceRegisterRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CertificateBasedDeviceRegisterRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CertificateBasedDeviceRegisterRequest& from);
+  void MergeFrom(const CertificateBasedDeviceRegisterRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CertificateBasedDeviceRegisterRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CertificateBasedDeviceRegisterRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSignedRequestFieldNumber = 1,
+  };
+  // optional .enterprise_management.SignedData signed_request = 1;
+  bool has_signed_request() const;
+  private:
+  bool _internal_has_signed_request() const;
+  public:
+  void clear_signed_request();
+  const ::enterprise_management::SignedData& signed_request() const;
+  ::enterprise_management::SignedData* release_signed_request();
+  ::enterprise_management::SignedData* mutable_signed_request();
+  void set_allocated_signed_request(::enterprise_management::SignedData* signed_request);
+  private:
+  const ::enterprise_management::SignedData& _internal_signed_request() const;
+  ::enterprise_management::SignedData* _internal_mutable_signed_request();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CertificateBasedDeviceRegisterRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::SignedData* signed_request_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceRegisterConfiguration :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceRegisterConfiguration) */ {
+ public:
+  DeviceRegisterConfiguration();
+  virtual ~DeviceRegisterConfiguration();
+
+  DeviceRegisterConfiguration(const DeviceRegisterConfiguration& from);
+  DeviceRegisterConfiguration(DeviceRegisterConfiguration&& from) noexcept
+    : DeviceRegisterConfiguration() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceRegisterConfiguration& operator=(const DeviceRegisterConfiguration& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceRegisterConfiguration& operator=(DeviceRegisterConfiguration&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceRegisterConfiguration& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceRegisterConfiguration* internal_default_instance() {
+    return reinterpret_cast<const DeviceRegisterConfiguration*>(
+               &_DeviceRegisterConfiguration_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    124;
+
+  friend void swap(DeviceRegisterConfiguration& a, DeviceRegisterConfiguration& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceRegisterConfiguration* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceRegisterConfiguration* New() const final {
+    return CreateMaybeMessage<DeviceRegisterConfiguration>(nullptr);
+  }
+
+  DeviceRegisterConfiguration* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceRegisterConfiguration>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceRegisterConfiguration& from);
+  void MergeFrom(const DeviceRegisterConfiguration& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceRegisterConfiguration* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceRegisterConfiguration";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceOwnerFieldNumber = 1,
+  };
+  // optional string device_owner = 1;
+  bool has_device_owner() const;
+  private:
+  bool _internal_has_device_owner() const;
+  public:
+  void clear_device_owner();
+  const std::string& device_owner() const;
+  void set_device_owner(const std::string& value);
+  void set_device_owner(std::string&& value);
+  void set_device_owner(const char* value);
+  void set_device_owner(const char* value, size_t size);
+  std::string* mutable_device_owner();
+  std::string* release_device_owner();
+  void set_allocated_device_owner(std::string* device_owner);
+  private:
+  const std::string& _internal_device_owner() const;
+  void _internal_set_device_owner(const std::string& value);
+  std::string* _internal_mutable_device_owner();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceRegisterConfiguration)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_owner_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CertificateBasedDeviceRegistrationData :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CertificateBasedDeviceRegistrationData) */ {
+ public:
+  CertificateBasedDeviceRegistrationData();
+  virtual ~CertificateBasedDeviceRegistrationData();
+
+  CertificateBasedDeviceRegistrationData(const CertificateBasedDeviceRegistrationData& from);
+  CertificateBasedDeviceRegistrationData(CertificateBasedDeviceRegistrationData&& from) noexcept
+    : CertificateBasedDeviceRegistrationData() {
+    *this = ::std::move(from);
+  }
+
+  inline CertificateBasedDeviceRegistrationData& operator=(const CertificateBasedDeviceRegistrationData& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CertificateBasedDeviceRegistrationData& operator=(CertificateBasedDeviceRegistrationData&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CertificateBasedDeviceRegistrationData& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CertificateBasedDeviceRegistrationData* internal_default_instance() {
+    return reinterpret_cast<const CertificateBasedDeviceRegistrationData*>(
+               &_CertificateBasedDeviceRegistrationData_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    125;
+
+  friend void swap(CertificateBasedDeviceRegistrationData& a, CertificateBasedDeviceRegistrationData& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CertificateBasedDeviceRegistrationData* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CertificateBasedDeviceRegistrationData* New() const final {
+    return CreateMaybeMessage<CertificateBasedDeviceRegistrationData>(nullptr);
+  }
+
+  CertificateBasedDeviceRegistrationData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CertificateBasedDeviceRegistrationData>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CertificateBasedDeviceRegistrationData& from);
+  void MergeFrom(const CertificateBasedDeviceRegistrationData& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CertificateBasedDeviceRegistrationData* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CertificateBasedDeviceRegistrationData";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef CertificateBasedDeviceRegistrationData_CertificateType CertificateType;
+  static constexpr CertificateType UNKNOWN =
+    CertificateBasedDeviceRegistrationData_CertificateType_UNKNOWN;
+  static constexpr CertificateType ENTERPRISE_ENROLLMENT_CERTIFICATE =
+    CertificateBasedDeviceRegistrationData_CertificateType_ENTERPRISE_ENROLLMENT_CERTIFICATE;
+  static inline bool CertificateType_IsValid(int value) {
+    return CertificateBasedDeviceRegistrationData_CertificateType_IsValid(value);
+  }
+  static constexpr CertificateType CertificateType_MIN =
+    CertificateBasedDeviceRegistrationData_CertificateType_CertificateType_MIN;
+  static constexpr CertificateType CertificateType_MAX =
+    CertificateBasedDeviceRegistrationData_CertificateType_CertificateType_MAX;
+  static constexpr int CertificateType_ARRAYSIZE =
+    CertificateBasedDeviceRegistrationData_CertificateType_CertificateType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& CertificateType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, CertificateType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function CertificateType_Name.");
+    return CertificateBasedDeviceRegistrationData_CertificateType_Name(enum_t_value);
+  }
+  static inline bool CertificateType_Parse(const std::string& name,
+      CertificateType* value) {
+    return CertificateBasedDeviceRegistrationData_CertificateType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDeviceCertificateFieldNumber = 2,
+    kDeviceRegisterRequestFieldNumber = 3,
+    kDeviceRegisterConfigurationFieldNumber = 4,
+    kCertificateTypeFieldNumber = 1,
+  };
+  // optional bytes device_certificate = 2;
+  bool has_device_certificate() const;
+  private:
+  bool _internal_has_device_certificate() const;
+  public:
+  void clear_device_certificate();
+  const std::string& device_certificate() const;
+  void set_device_certificate(const std::string& value);
+  void set_device_certificate(std::string&& value);
+  void set_device_certificate(const char* value);
+  void set_device_certificate(const void* value, size_t size);
+  std::string* mutable_device_certificate();
+  std::string* release_device_certificate();
+  void set_allocated_device_certificate(std::string* device_certificate);
+  private:
+  const std::string& _internal_device_certificate() const;
+  void _internal_set_device_certificate(const std::string& value);
+  std::string* _internal_mutable_device_certificate();
+  public:
+
+  // optional .enterprise_management.DeviceRegisterRequest device_register_request = 3;
+  bool has_device_register_request() const;
+  private:
+  bool _internal_has_device_register_request() const;
+  public:
+  void clear_device_register_request();
+  const ::enterprise_management::DeviceRegisterRequest& device_register_request() const;
+  ::enterprise_management::DeviceRegisterRequest* release_device_register_request();
+  ::enterprise_management::DeviceRegisterRequest* mutable_device_register_request();
+  void set_allocated_device_register_request(::enterprise_management::DeviceRegisterRequest* device_register_request);
+  private:
+  const ::enterprise_management::DeviceRegisterRequest& _internal_device_register_request() const;
+  ::enterprise_management::DeviceRegisterRequest* _internal_mutable_device_register_request();
+  public:
+
+  // optional .enterprise_management.DeviceRegisterConfiguration device_register_configuration = 4;
+  bool has_device_register_configuration() const;
+  private:
+  bool _internal_has_device_register_configuration() const;
+  public:
+  void clear_device_register_configuration();
+  const ::enterprise_management::DeviceRegisterConfiguration& device_register_configuration() const;
+  ::enterprise_management::DeviceRegisterConfiguration* release_device_register_configuration();
+  ::enterprise_management::DeviceRegisterConfiguration* mutable_device_register_configuration();
+  void set_allocated_device_register_configuration(::enterprise_management::DeviceRegisterConfiguration* device_register_configuration);
+  private:
+  const ::enterprise_management::DeviceRegisterConfiguration& _internal_device_register_configuration() const;
+  ::enterprise_management::DeviceRegisterConfiguration* _internal_mutable_device_register_configuration();
+  public:
+
+  // optional .enterprise_management.CertificateBasedDeviceRegistrationData.CertificateType certificate_type = 1;
+  bool has_certificate_type() const;
+  private:
+  bool _internal_has_certificate_type() const;
+  public:
+  void clear_certificate_type();
+  ::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType certificate_type() const;
+  void set_certificate_type(::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType value);
+  private:
+  ::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType _internal_certificate_type() const;
+  void _internal_set_certificate_type(::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CertificateBasedDeviceRegistrationData)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_certificate_;
+  ::enterprise_management::DeviceRegisterRequest* device_register_request_;
+  ::enterprise_management::DeviceRegisterConfiguration* device_register_configuration_;
+  int certificate_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RegisterBrowserRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RegisterBrowserRequest) */ {
+ public:
+  RegisterBrowserRequest();
+  virtual ~RegisterBrowserRequest();
+
+  RegisterBrowserRequest(const RegisterBrowserRequest& from);
+  RegisterBrowserRequest(RegisterBrowserRequest&& from) noexcept
+    : RegisterBrowserRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline RegisterBrowserRequest& operator=(const RegisterBrowserRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RegisterBrowserRequest& operator=(RegisterBrowserRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RegisterBrowserRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RegisterBrowserRequest* internal_default_instance() {
+    return reinterpret_cast<const RegisterBrowserRequest*>(
+               &_RegisterBrowserRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    126;
+
+  friend void swap(RegisterBrowserRequest& a, RegisterBrowserRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RegisterBrowserRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RegisterBrowserRequest* New() const final {
+    return CreateMaybeMessage<RegisterBrowserRequest>(nullptr);
+  }
+
+  RegisterBrowserRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RegisterBrowserRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RegisterBrowserRequest& from);
+  void MergeFrom(const RegisterBrowserRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RegisterBrowserRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RegisterBrowserRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMachineNameFieldNumber = 1,
+    kOsPlatformFieldNumber = 2,
+    kOsVersionFieldNumber = 3,
+    kDeviceModelFieldNumber = 5,
+    kBrandNameFieldNumber = 6,
+    kBrowserDeviceIdentifierFieldNumber = 4,
+  };
+  // optional string machine_name = 1;
+  bool has_machine_name() const;
+  private:
+  bool _internal_has_machine_name() const;
+  public:
+  void clear_machine_name();
+  const std::string& machine_name() const;
+  void set_machine_name(const std::string& value);
+  void set_machine_name(std::string&& value);
+  void set_machine_name(const char* value);
+  void set_machine_name(const char* value, size_t size);
+  std::string* mutable_machine_name();
+  std::string* release_machine_name();
+  void set_allocated_machine_name(std::string* machine_name);
+  private:
+  const std::string& _internal_machine_name() const;
+  void _internal_set_machine_name(const std::string& value);
+  std::string* _internal_mutable_machine_name();
+  public:
+
+  // optional string os_platform = 2;
+  bool has_os_platform() const;
+  private:
+  bool _internal_has_os_platform() const;
+  public:
+  void clear_os_platform();
+  const std::string& os_platform() const;
+  void set_os_platform(const std::string& value);
+  void set_os_platform(std::string&& value);
+  void set_os_platform(const char* value);
+  void set_os_platform(const char* value, size_t size);
+  std::string* mutable_os_platform();
+  std::string* release_os_platform();
+  void set_allocated_os_platform(std::string* os_platform);
+  private:
+  const std::string& _internal_os_platform() const;
+  void _internal_set_os_platform(const std::string& value);
+  std::string* _internal_mutable_os_platform();
+  public:
+
+  // optional string os_version = 3;
+  bool has_os_version() const;
+  private:
+  bool _internal_has_os_version() const;
+  public:
+  void clear_os_version();
+  const std::string& os_version() const;
+  void set_os_version(const std::string& value);
+  void set_os_version(std::string&& value);
+  void set_os_version(const char* value);
+  void set_os_version(const char* value, size_t size);
+  std::string* mutable_os_version();
+  std::string* release_os_version();
+  void set_allocated_os_version(std::string* os_version);
+  private:
+  const std::string& _internal_os_version() const;
+  void _internal_set_os_version(const std::string& value);
+  std::string* _internal_mutable_os_version();
+  public:
+
+  // optional string device_model = 5;
+  bool has_device_model() const;
+  private:
+  bool _internal_has_device_model() const;
+  public:
+  void clear_device_model();
+  const std::string& device_model() const;
+  void set_device_model(const std::string& value);
+  void set_device_model(std::string&& value);
+  void set_device_model(const char* value);
+  void set_device_model(const char* value, size_t size);
+  std::string* mutable_device_model();
+  std::string* release_device_model();
+  void set_allocated_device_model(std::string* device_model);
+  private:
+  const std::string& _internal_device_model() const;
+  void _internal_set_device_model(const std::string& value);
+  std::string* _internal_mutable_device_model();
+  public:
+
+  // optional string brand_name = 6;
+  bool has_brand_name() const;
+  private:
+  bool _internal_has_brand_name() const;
+  public:
+  void clear_brand_name();
+  const std::string& brand_name() const;
+  void set_brand_name(const std::string& value);
+  void set_brand_name(std::string&& value);
+  void set_brand_name(const char* value);
+  void set_brand_name(const char* value, size_t size);
+  std::string* mutable_brand_name();
+  std::string* release_brand_name();
+  void set_allocated_brand_name(std::string* brand_name);
+  private:
+  const std::string& _internal_brand_name() const;
+  void _internal_set_brand_name(const std::string& value);
+  std::string* _internal_mutable_brand_name();
+  public:
+
+  // optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 4;
+  bool has_browser_device_identifier() const;
+  private:
+  bool _internal_has_browser_device_identifier() const;
+  public:
+  void clear_browser_device_identifier();
+  const ::enterprise_management::BrowserDeviceIdentifier& browser_device_identifier() const;
+  ::enterprise_management::BrowserDeviceIdentifier* release_browser_device_identifier();
+  ::enterprise_management::BrowserDeviceIdentifier* mutable_browser_device_identifier();
+  void set_allocated_browser_device_identifier(::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier);
+  private:
+  const ::enterprise_management::BrowserDeviceIdentifier& _internal_browser_device_identifier() const;
+  ::enterprise_management::BrowserDeviceIdentifier* _internal_mutable_browser_device_identifier();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RegisterBrowserRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr machine_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr os_platform_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr os_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_model_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr brand_name_;
+  ::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ActiveDirectoryEnrollPlayUserRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ActiveDirectoryEnrollPlayUserRequest) */ {
+ public:
+  ActiveDirectoryEnrollPlayUserRequest();
+  virtual ~ActiveDirectoryEnrollPlayUserRequest();
+
+  ActiveDirectoryEnrollPlayUserRequest(const ActiveDirectoryEnrollPlayUserRequest& from);
+  ActiveDirectoryEnrollPlayUserRequest(ActiveDirectoryEnrollPlayUserRequest&& from) noexcept
+    : ActiveDirectoryEnrollPlayUserRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ActiveDirectoryEnrollPlayUserRequest& operator=(const ActiveDirectoryEnrollPlayUserRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ActiveDirectoryEnrollPlayUserRequest& operator=(ActiveDirectoryEnrollPlayUserRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ActiveDirectoryEnrollPlayUserRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ActiveDirectoryEnrollPlayUserRequest* internal_default_instance() {
+    return reinterpret_cast<const ActiveDirectoryEnrollPlayUserRequest*>(
+               &_ActiveDirectoryEnrollPlayUserRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    127;
+
+  friend void swap(ActiveDirectoryEnrollPlayUserRequest& a, ActiveDirectoryEnrollPlayUserRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ActiveDirectoryEnrollPlayUserRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ActiveDirectoryEnrollPlayUserRequest* New() const final {
+    return CreateMaybeMessage<ActiveDirectoryEnrollPlayUserRequest>(nullptr);
+  }
+
+  ActiveDirectoryEnrollPlayUserRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ActiveDirectoryEnrollPlayUserRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ActiveDirectoryEnrollPlayUserRequest& from);
+  void MergeFrom(const ActiveDirectoryEnrollPlayUserRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ActiveDirectoryEnrollPlayUserRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ActiveDirectoryEnrollPlayUserRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAuthSessionIdFieldNumber = 1,
+  };
+  // optional string auth_session_id = 1;
+  bool has_auth_session_id() const;
+  private:
+  bool _internal_has_auth_session_id() const;
+  public:
+  void clear_auth_session_id();
+  const std::string& auth_session_id() const;
+  void set_auth_session_id(const std::string& value);
+  void set_auth_session_id(std::string&& value);
+  void set_auth_session_id(const char* value);
+  void set_auth_session_id(const char* value, size_t size);
+  std::string* mutable_auth_session_id();
+  std::string* release_auth_session_id();
+  void set_allocated_auth_session_id(std::string* auth_session_id);
+  private:
+  const std::string& _internal_auth_session_id() const;
+  void _internal_set_auth_session_id(const std::string& value);
+  std::string* _internal_mutable_auth_session_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ActiveDirectoryEnrollPlayUserRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr auth_session_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ActiveDirectoryEnrollPlayUserResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ActiveDirectoryEnrollPlayUserResponse) */ {
+ public:
+  ActiveDirectoryEnrollPlayUserResponse();
+  virtual ~ActiveDirectoryEnrollPlayUserResponse();
+
+  ActiveDirectoryEnrollPlayUserResponse(const ActiveDirectoryEnrollPlayUserResponse& from);
+  ActiveDirectoryEnrollPlayUserResponse(ActiveDirectoryEnrollPlayUserResponse&& from) noexcept
+    : ActiveDirectoryEnrollPlayUserResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline ActiveDirectoryEnrollPlayUserResponse& operator=(const ActiveDirectoryEnrollPlayUserResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ActiveDirectoryEnrollPlayUserResponse& operator=(ActiveDirectoryEnrollPlayUserResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ActiveDirectoryEnrollPlayUserResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ActiveDirectoryEnrollPlayUserResponse* internal_default_instance() {
+    return reinterpret_cast<const ActiveDirectoryEnrollPlayUserResponse*>(
+               &_ActiveDirectoryEnrollPlayUserResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    128;
+
+  friend void swap(ActiveDirectoryEnrollPlayUserResponse& a, ActiveDirectoryEnrollPlayUserResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ActiveDirectoryEnrollPlayUserResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ActiveDirectoryEnrollPlayUserResponse* New() const final {
+    return CreateMaybeMessage<ActiveDirectoryEnrollPlayUserResponse>(nullptr);
+  }
+
+  ActiveDirectoryEnrollPlayUserResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ActiveDirectoryEnrollPlayUserResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ActiveDirectoryEnrollPlayUserResponse& from);
+  void MergeFrom(const ActiveDirectoryEnrollPlayUserResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ActiveDirectoryEnrollPlayUserResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ActiveDirectoryEnrollPlayUserResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEnrollmentTokenFieldNumber = 1,
+    kUserIdFieldNumber = 2,
+    kSamlParametersFieldNumber = 3,
+  };
+  // optional string enrollment_token = 1;
+  bool has_enrollment_token() const;
+  private:
+  bool _internal_has_enrollment_token() const;
+  public:
+  void clear_enrollment_token();
+  const std::string& enrollment_token() const;
+  void set_enrollment_token(const std::string& value);
+  void set_enrollment_token(std::string&& value);
+  void set_enrollment_token(const char* value);
+  void set_enrollment_token(const char* value, size_t size);
+  std::string* mutable_enrollment_token();
+  std::string* release_enrollment_token();
+  void set_allocated_enrollment_token(std::string* enrollment_token);
+  private:
+  const std::string& _internal_enrollment_token() const;
+  void _internal_set_enrollment_token(const std::string& value);
+  std::string* _internal_mutable_enrollment_token();
+  public:
+
+  // optional string user_id = 2;
+  bool has_user_id() const;
+  private:
+  bool _internal_has_user_id() const;
+  public:
+  void clear_user_id();
+  const std::string& user_id() const;
+  void set_user_id(const std::string& value);
+  void set_user_id(std::string&& value);
+  void set_user_id(const char* value);
+  void set_user_id(const char* value, size_t size);
+  std::string* mutable_user_id();
+  std::string* release_user_id();
+  void set_allocated_user_id(std::string* user_id);
+  private:
+  const std::string& _internal_user_id() const;
+  void _internal_set_user_id(const std::string& value);
+  std::string* _internal_mutable_user_id();
+  public:
+
+  // optional .enterprise_management.SamlParametersProto saml_parameters = 3;
+  bool has_saml_parameters() const;
+  private:
+  bool _internal_has_saml_parameters() const;
+  public:
+  void clear_saml_parameters();
+  const ::enterprise_management::SamlParametersProto& saml_parameters() const;
+  ::enterprise_management::SamlParametersProto* release_saml_parameters();
+  ::enterprise_management::SamlParametersProto* mutable_saml_parameters();
+  void set_allocated_saml_parameters(::enterprise_management::SamlParametersProto* saml_parameters);
+  private:
+  const ::enterprise_management::SamlParametersProto& _internal_saml_parameters() const;
+  ::enterprise_management::SamlParametersProto* _internal_mutable_saml_parameters();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ActiveDirectoryEnrollPlayUserResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr enrollment_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr user_id_;
+  ::enterprise_management::SamlParametersProto* saml_parameters_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SamlParametersProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SamlParametersProto) */ {
+ public:
+  SamlParametersProto();
+  virtual ~SamlParametersProto();
+
+  SamlParametersProto(const SamlParametersProto& from);
+  SamlParametersProto(SamlParametersProto&& from) noexcept
+    : SamlParametersProto() {
+    *this = ::std::move(from);
+  }
+
+  inline SamlParametersProto& operator=(const SamlParametersProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SamlParametersProto& operator=(SamlParametersProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SamlParametersProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SamlParametersProto* internal_default_instance() {
+    return reinterpret_cast<const SamlParametersProto*>(
+               &_SamlParametersProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    129;
+
+  friend void swap(SamlParametersProto& a, SamlParametersProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SamlParametersProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SamlParametersProto* New() const final {
+    return CreateMaybeMessage<SamlParametersProto>(nullptr);
+  }
+
+  SamlParametersProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SamlParametersProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SamlParametersProto& from);
+  void MergeFrom(const SamlParametersProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SamlParametersProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SamlParametersProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAuthRedirectUrlFieldNumber = 1,
+    kAuthSessionIdFieldNumber = 2,
+  };
+  // optional string auth_redirect_url = 1;
+  bool has_auth_redirect_url() const;
+  private:
+  bool _internal_has_auth_redirect_url() const;
+  public:
+  void clear_auth_redirect_url();
+  const std::string& auth_redirect_url() const;
+  void set_auth_redirect_url(const std::string& value);
+  void set_auth_redirect_url(std::string&& value);
+  void set_auth_redirect_url(const char* value);
+  void set_auth_redirect_url(const char* value, size_t size);
+  std::string* mutable_auth_redirect_url();
+  std::string* release_auth_redirect_url();
+  void set_allocated_auth_redirect_url(std::string* auth_redirect_url);
+  private:
+  const std::string& _internal_auth_redirect_url() const;
+  void _internal_set_auth_redirect_url(const std::string& value);
+  std::string* _internal_mutable_auth_redirect_url();
+  public:
+
+  // optional string auth_session_id = 2;
+  bool has_auth_session_id() const;
+  private:
+  bool _internal_has_auth_session_id() const;
+  public:
+  void clear_auth_session_id();
+  const std::string& auth_session_id() const;
+  void set_auth_session_id(const std::string& value);
+  void set_auth_session_id(std::string&& value);
+  void set_auth_session_id(const char* value);
+  void set_auth_session_id(const char* value, size_t size);
+  std::string* mutable_auth_session_id();
+  std::string* release_auth_session_id();
+  void set_allocated_auth_session_id(std::string* auth_session_id);
+  private:
+  const std::string& _internal_auth_session_id() const;
+  void _internal_set_auth_session_id(const std::string& value);
+  std::string* _internal_mutable_auth_session_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SamlParametersProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr auth_redirect_url_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr auth_session_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PublicSamlUserRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PublicSamlUserRequest) */ {
+ public:
+  PublicSamlUserRequest();
+  virtual ~PublicSamlUserRequest();
+
+  PublicSamlUserRequest(const PublicSamlUserRequest& from);
+  PublicSamlUserRequest(PublicSamlUserRequest&& from) noexcept
+    : PublicSamlUserRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline PublicSamlUserRequest& operator=(const PublicSamlUserRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PublicSamlUserRequest& operator=(PublicSamlUserRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PublicSamlUserRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PublicSamlUserRequest* internal_default_instance() {
+    return reinterpret_cast<const PublicSamlUserRequest*>(
+               &_PublicSamlUserRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    130;
+
+  friend void swap(PublicSamlUserRequest& a, PublicSamlUserRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PublicSamlUserRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PublicSamlUserRequest* New() const final {
+    return CreateMaybeMessage<PublicSamlUserRequest>(nullptr);
+  }
+
+  PublicSamlUserRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PublicSamlUserRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PublicSamlUserRequest& from);
+  void MergeFrom(const PublicSamlUserRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PublicSamlUserRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PublicSamlUserRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAccountIdFieldNumber = 1,
+  };
+  // optional string account_id = 1;
+  bool has_account_id() const;
+  private:
+  bool _internal_has_account_id() const;
+  public:
+  void clear_account_id();
+  const std::string& account_id() const;
+  void set_account_id(const std::string& value);
+  void set_account_id(std::string&& value);
+  void set_account_id(const char* value);
+  void set_account_id(const char* value, size_t size);
+  std::string* mutable_account_id();
+  std::string* release_account_id();
+  void set_allocated_account_id(std::string* account_id);
+  private:
+  const std::string& _internal_account_id() const;
+  void _internal_set_account_id(const std::string& value);
+  std::string* _internal_mutable_account_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PublicSamlUserRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr account_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PublicSamlUserResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PublicSamlUserResponse) */ {
+ public:
+  PublicSamlUserResponse();
+  virtual ~PublicSamlUserResponse();
+
+  PublicSamlUserResponse(const PublicSamlUserResponse& from);
+  PublicSamlUserResponse(PublicSamlUserResponse&& from) noexcept
+    : PublicSamlUserResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PublicSamlUserResponse& operator=(const PublicSamlUserResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PublicSamlUserResponse& operator=(PublicSamlUserResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PublicSamlUserResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PublicSamlUserResponse* internal_default_instance() {
+    return reinterpret_cast<const PublicSamlUserResponse*>(
+               &_PublicSamlUserResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    131;
+
+  friend void swap(PublicSamlUserResponse& a, PublicSamlUserResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PublicSamlUserResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PublicSamlUserResponse* New() const final {
+    return CreateMaybeMessage<PublicSamlUserResponse>(nullptr);
+  }
+
+  PublicSamlUserResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PublicSamlUserResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PublicSamlUserResponse& from);
+  void MergeFrom(const PublicSamlUserResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PublicSamlUserResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PublicSamlUserResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSamlParametersFieldNumber = 1,
+  };
+  // optional .enterprise_management.SamlParametersProto saml_parameters = 1;
+  bool has_saml_parameters() const;
+  private:
+  bool _internal_has_saml_parameters() const;
+  public:
+  void clear_saml_parameters();
+  const ::enterprise_management::SamlParametersProto& saml_parameters() const;
+  ::enterprise_management::SamlParametersProto* release_saml_parameters();
+  ::enterprise_management::SamlParametersProto* mutable_saml_parameters();
+  void set_allocated_saml_parameters(::enterprise_management::SamlParametersProto* saml_parameters);
+  private:
+  const ::enterprise_management::SamlParametersProto& _internal_saml_parameters() const;
+  ::enterprise_management::SamlParametersProto* _internal_mutable_saml_parameters();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PublicSamlUserResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::SamlParametersProto* saml_parameters_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ActiveDirectoryPlayActivityRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ActiveDirectoryPlayActivityRequest) */ {
+ public:
+  ActiveDirectoryPlayActivityRequest();
+  virtual ~ActiveDirectoryPlayActivityRequest();
+
+  ActiveDirectoryPlayActivityRequest(const ActiveDirectoryPlayActivityRequest& from);
+  ActiveDirectoryPlayActivityRequest(ActiveDirectoryPlayActivityRequest&& from) noexcept
+    : ActiveDirectoryPlayActivityRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ActiveDirectoryPlayActivityRequest& operator=(const ActiveDirectoryPlayActivityRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ActiveDirectoryPlayActivityRequest& operator=(ActiveDirectoryPlayActivityRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ActiveDirectoryPlayActivityRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ActiveDirectoryPlayActivityRequest* internal_default_instance() {
+    return reinterpret_cast<const ActiveDirectoryPlayActivityRequest*>(
+               &_ActiveDirectoryPlayActivityRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    132;
+
+  friend void swap(ActiveDirectoryPlayActivityRequest& a, ActiveDirectoryPlayActivityRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ActiveDirectoryPlayActivityRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ActiveDirectoryPlayActivityRequest* New() const final {
+    return CreateMaybeMessage<ActiveDirectoryPlayActivityRequest>(nullptr);
+  }
+
+  ActiveDirectoryPlayActivityRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ActiveDirectoryPlayActivityRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ActiveDirectoryPlayActivityRequest& from);
+  void MergeFrom(const ActiveDirectoryPlayActivityRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ActiveDirectoryPlayActivityRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ActiveDirectoryPlayActivityRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUserIdFieldNumber = 1,
+  };
+  // optional string user_id = 1;
+  bool has_user_id() const;
+  private:
+  bool _internal_has_user_id() const;
+  public:
+  void clear_user_id();
+  const std::string& user_id() const;
+  void set_user_id(const std::string& value);
+  void set_user_id(std::string&& value);
+  void set_user_id(const char* value);
+  void set_user_id(const char* value, size_t size);
+  std::string* mutable_user_id();
+  std::string* release_user_id();
+  void set_allocated_user_id(std::string* user_id);
+  private:
+  const std::string& _internal_user_id() const;
+  void _internal_set_user_id(const std::string& value);
+  std::string* _internal_mutable_user_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ActiveDirectoryPlayActivityRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr user_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ActiveDirectoryPlayActivityResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ActiveDirectoryPlayActivityResponse) */ {
+ public:
+  ActiveDirectoryPlayActivityResponse();
+  virtual ~ActiveDirectoryPlayActivityResponse();
+
+  ActiveDirectoryPlayActivityResponse(const ActiveDirectoryPlayActivityResponse& from);
+  ActiveDirectoryPlayActivityResponse(ActiveDirectoryPlayActivityResponse&& from) noexcept
+    : ActiveDirectoryPlayActivityResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline ActiveDirectoryPlayActivityResponse& operator=(const ActiveDirectoryPlayActivityResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ActiveDirectoryPlayActivityResponse& operator=(ActiveDirectoryPlayActivityResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ActiveDirectoryPlayActivityResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ActiveDirectoryPlayActivityResponse* internal_default_instance() {
+    return reinterpret_cast<const ActiveDirectoryPlayActivityResponse*>(
+               &_ActiveDirectoryPlayActivityResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    133;
+
+  friend void swap(ActiveDirectoryPlayActivityResponse& a, ActiveDirectoryPlayActivityResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ActiveDirectoryPlayActivityResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ActiveDirectoryPlayActivityResponse* New() const final {
+    return CreateMaybeMessage<ActiveDirectoryPlayActivityResponse>(nullptr);
+  }
+
+  ActiveDirectoryPlayActivityResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ActiveDirectoryPlayActivityResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ActiveDirectoryPlayActivityResponse& from);
+  void MergeFrom(const ActiveDirectoryPlayActivityResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ActiveDirectoryPlayActivityResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ActiveDirectoryPlayActivityResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ActiveDirectoryPlayActivityResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CheckDeviceLicenseRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CheckDeviceLicenseRequest) */ {
+ public:
+  CheckDeviceLicenseRequest();
+  virtual ~CheckDeviceLicenseRequest();
+
+  CheckDeviceLicenseRequest(const CheckDeviceLicenseRequest& from);
+  CheckDeviceLicenseRequest(CheckDeviceLicenseRequest&& from) noexcept
+    : CheckDeviceLicenseRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline CheckDeviceLicenseRequest& operator=(const CheckDeviceLicenseRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CheckDeviceLicenseRequest& operator=(CheckDeviceLicenseRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CheckDeviceLicenseRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CheckDeviceLicenseRequest* internal_default_instance() {
+    return reinterpret_cast<const CheckDeviceLicenseRequest*>(
+               &_CheckDeviceLicenseRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    134;
+
+  friend void swap(CheckDeviceLicenseRequest& a, CheckDeviceLicenseRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CheckDeviceLicenseRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CheckDeviceLicenseRequest* New() const final {
+    return CreateMaybeMessage<CheckDeviceLicenseRequest>(nullptr);
+  }
+
+  CheckDeviceLicenseRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CheckDeviceLicenseRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CheckDeviceLicenseRequest& from);
+  void MergeFrom(const CheckDeviceLicenseRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CheckDeviceLicenseRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CheckDeviceLicenseRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CheckDeviceLicenseRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class LicenseAvailability :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.LicenseAvailability) */ {
+ public:
+  LicenseAvailability();
+  virtual ~LicenseAvailability();
+
+  LicenseAvailability(const LicenseAvailability& from);
+  LicenseAvailability(LicenseAvailability&& from) noexcept
+    : LicenseAvailability() {
+    *this = ::std::move(from);
+  }
+
+  inline LicenseAvailability& operator=(const LicenseAvailability& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline LicenseAvailability& operator=(LicenseAvailability&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const LicenseAvailability& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const LicenseAvailability* internal_default_instance() {
+    return reinterpret_cast<const LicenseAvailability*>(
+               &_LicenseAvailability_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    135;
+
+  friend void swap(LicenseAvailability& a, LicenseAvailability& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(LicenseAvailability* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline LicenseAvailability* New() const final {
+    return CreateMaybeMessage<LicenseAvailability>(nullptr);
+  }
+
+  LicenseAvailability* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<LicenseAvailability>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const LicenseAvailability& from);
+  void MergeFrom(const LicenseAvailability& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(LicenseAvailability* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.LicenseAvailability";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLicenseTypeDeprecatedFieldNumber = 1,
+    kAvailableLicensesDeprecatedFieldNumber = 2,
+  };
+  // optional .enterprise_management.LicenseType license_type_deprecated = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_license_type_deprecated() const;
+  private:
+  bool _internal_has_license_type_deprecated() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_license_type_deprecated();
+  PROTOBUF_DEPRECATED const ::enterprise_management::LicenseType& license_type_deprecated() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::LicenseType* release_license_type_deprecated();
+  PROTOBUF_DEPRECATED ::enterprise_management::LicenseType* mutable_license_type_deprecated();
+  PROTOBUF_DEPRECATED void set_allocated_license_type_deprecated(::enterprise_management::LicenseType* license_type_deprecated);
+  private:
+  const ::enterprise_management::LicenseType& _internal_license_type_deprecated() const;
+  ::enterprise_management::LicenseType* _internal_mutable_license_type_deprecated();
+  public:
+
+  // optional int32 available_licenses_deprecated = 2 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_available_licenses_deprecated() const;
+  private:
+  bool _internal_has_available_licenses_deprecated() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_available_licenses_deprecated();
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::int32 available_licenses_deprecated() const;
+  PROTOBUF_DEPRECATED void set_available_licenses_deprecated(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_available_licenses_deprecated() const;
+  void _internal_set_available_licenses_deprecated(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.LicenseAvailability)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::LicenseType* license_type_deprecated_;
+  ::PROTOBUF_NAMESPACE_ID::int32 available_licenses_deprecated_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class CheckDeviceLicenseResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.CheckDeviceLicenseResponse) */ {
+ public:
+  CheckDeviceLicenseResponse();
+  virtual ~CheckDeviceLicenseResponse();
+
+  CheckDeviceLicenseResponse(const CheckDeviceLicenseResponse& from);
+  CheckDeviceLicenseResponse(CheckDeviceLicenseResponse&& from) noexcept
+    : CheckDeviceLicenseResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline CheckDeviceLicenseResponse& operator=(const CheckDeviceLicenseResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline CheckDeviceLicenseResponse& operator=(CheckDeviceLicenseResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const CheckDeviceLicenseResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const CheckDeviceLicenseResponse* internal_default_instance() {
+    return reinterpret_cast<const CheckDeviceLicenseResponse*>(
+               &_CheckDeviceLicenseResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    136;
+
+  friend void swap(CheckDeviceLicenseResponse& a, CheckDeviceLicenseResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(CheckDeviceLicenseResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline CheckDeviceLicenseResponse* New() const final {
+    return CreateMaybeMessage<CheckDeviceLicenseResponse>(nullptr);
+  }
+
+  CheckDeviceLicenseResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<CheckDeviceLicenseResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const CheckDeviceLicenseResponse& from);
+  void MergeFrom(const CheckDeviceLicenseResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(CheckDeviceLicenseResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.CheckDeviceLicenseResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef CheckDeviceLicenseResponse_LicenseSelectionMode LicenseSelectionMode;
+  static constexpr LicenseSelectionMode UNDEFINED =
+    CheckDeviceLicenseResponse_LicenseSelectionMode_UNDEFINED;
+  static constexpr LicenseSelectionMode USER_SELECTION =
+    CheckDeviceLicenseResponse_LicenseSelectionMode_USER_SELECTION;
+  static constexpr LicenseSelectionMode ADMIN_SELECTION =
+    CheckDeviceLicenseResponse_LicenseSelectionMode_ADMIN_SELECTION;
+  static inline bool LicenseSelectionMode_IsValid(int value) {
+    return CheckDeviceLicenseResponse_LicenseSelectionMode_IsValid(value);
+  }
+  static constexpr LicenseSelectionMode LicenseSelectionMode_MIN =
+    CheckDeviceLicenseResponse_LicenseSelectionMode_LicenseSelectionMode_MIN;
+  static constexpr LicenseSelectionMode LicenseSelectionMode_MAX =
+    CheckDeviceLicenseResponse_LicenseSelectionMode_LicenseSelectionMode_MAX;
+  static constexpr int LicenseSelectionMode_ARRAYSIZE =
+    CheckDeviceLicenseResponse_LicenseSelectionMode_LicenseSelectionMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& LicenseSelectionMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, LicenseSelectionMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function LicenseSelectionMode_Name.");
+    return CheckDeviceLicenseResponse_LicenseSelectionMode_Name(enum_t_value);
+  }
+  static inline bool LicenseSelectionMode_Parse(const std::string& name,
+      LicenseSelectionMode* value) {
+    return CheckDeviceLicenseResponse_LicenseSelectionMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLicenseAvailabilitiesDeprecatedFieldNumber = 2,
+    kLicenseSelectionModeDeprecatedFieldNumber = 1,
+  };
+  // repeated .enterprise_management.LicenseAvailability license_availabilities_deprecated = 2 [deprecated = true];
+  PROTOBUF_DEPRECATED int license_availabilities_deprecated_size() const;
+  private:
+  int _internal_license_availabilities_deprecated_size() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_license_availabilities_deprecated();
+  PROTOBUF_DEPRECATED ::enterprise_management::LicenseAvailability* mutable_license_availabilities_deprecated(int index);
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LicenseAvailability >*
+      mutable_license_availabilities_deprecated();
+  private:
+  const ::enterprise_management::LicenseAvailability& _internal_license_availabilities_deprecated(int index) const;
+  ::enterprise_management::LicenseAvailability* _internal_add_license_availabilities_deprecated();
+  public:
+  PROTOBUF_DEPRECATED const ::enterprise_management::LicenseAvailability& license_availabilities_deprecated(int index) const;
+  PROTOBUF_DEPRECATED ::enterprise_management::LicenseAvailability* add_license_availabilities_deprecated();
+  PROTOBUF_DEPRECATED const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LicenseAvailability >&
+      license_availabilities_deprecated() const;
+
+  // optional .enterprise_management.CheckDeviceLicenseResponse.LicenseSelectionMode license_selection_mode_deprecated = 1 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_license_selection_mode_deprecated() const;
+  private:
+  bool _internal_has_license_selection_mode_deprecated() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_license_selection_mode_deprecated();
+  PROTOBUF_DEPRECATED ::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode license_selection_mode_deprecated() const;
+  PROTOBUF_DEPRECATED void set_license_selection_mode_deprecated(::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode value);
+  private:
+  ::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode _internal_license_selection_mode_deprecated() const;
+  void _internal_set_license_selection_mode_deprecated(::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.CheckDeviceLicenseResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LicenseAvailability > license_availabilities_deprecated_;
+  int license_selection_mode_deprecated_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ActiveDirectoryUserSigninRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ActiveDirectoryUserSigninRequest) */ {
+ public:
+  ActiveDirectoryUserSigninRequest();
+  virtual ~ActiveDirectoryUserSigninRequest();
+
+  ActiveDirectoryUserSigninRequest(const ActiveDirectoryUserSigninRequest& from);
+  ActiveDirectoryUserSigninRequest(ActiveDirectoryUserSigninRequest&& from) noexcept
+    : ActiveDirectoryUserSigninRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ActiveDirectoryUserSigninRequest& operator=(const ActiveDirectoryUserSigninRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ActiveDirectoryUserSigninRequest& operator=(ActiveDirectoryUserSigninRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ActiveDirectoryUserSigninRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ActiveDirectoryUserSigninRequest* internal_default_instance() {
+    return reinterpret_cast<const ActiveDirectoryUserSigninRequest*>(
+               &_ActiveDirectoryUserSigninRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    137;
+
+  friend void swap(ActiveDirectoryUserSigninRequest& a, ActiveDirectoryUserSigninRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ActiveDirectoryUserSigninRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ActiveDirectoryUserSigninRequest* New() const final {
+    return CreateMaybeMessage<ActiveDirectoryUserSigninRequest>(nullptr);
+  }
+
+  ActiveDirectoryUserSigninRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ActiveDirectoryUserSigninRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ActiveDirectoryUserSigninRequest& from);
+  void MergeFrom(const ActiveDirectoryUserSigninRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ActiveDirectoryUserSigninRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ActiveDirectoryUserSigninRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ActiveDirectoryUserSigninRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ActiveDirectoryUserSigninResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ActiveDirectoryUserSigninResponse) */ {
+ public:
+  ActiveDirectoryUserSigninResponse();
+  virtual ~ActiveDirectoryUserSigninResponse();
+
+  ActiveDirectoryUserSigninResponse(const ActiveDirectoryUserSigninResponse& from);
+  ActiveDirectoryUserSigninResponse(ActiveDirectoryUserSigninResponse&& from) noexcept
+    : ActiveDirectoryUserSigninResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline ActiveDirectoryUserSigninResponse& operator=(const ActiveDirectoryUserSigninResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ActiveDirectoryUserSigninResponse& operator=(ActiveDirectoryUserSigninResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ActiveDirectoryUserSigninResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ActiveDirectoryUserSigninResponse* internal_default_instance() {
+    return reinterpret_cast<const ActiveDirectoryUserSigninResponse*>(
+               &_ActiveDirectoryUserSigninResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    138;
+
+  friend void swap(ActiveDirectoryUserSigninResponse& a, ActiveDirectoryUserSigninResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ActiveDirectoryUserSigninResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ActiveDirectoryUserSigninResponse* New() const final {
+    return CreateMaybeMessage<ActiveDirectoryUserSigninResponse>(nullptr);
+  }
+
+  ActiveDirectoryUserSigninResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ActiveDirectoryUserSigninResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ActiveDirectoryUserSigninResponse& from);
+  void MergeFrom(const ActiveDirectoryUserSigninResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ActiveDirectoryUserSigninResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ActiveDirectoryUserSigninResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAuthRedirectUrlFieldNumber = 1,
+  };
+  // optional string auth_redirect_url = 1;
+  bool has_auth_redirect_url() const;
+  private:
+  bool _internal_has_auth_redirect_url() const;
+  public:
+  void clear_auth_redirect_url();
+  const std::string& auth_redirect_url() const;
+  void set_auth_redirect_url(const std::string& value);
+  void set_auth_redirect_url(std::string&& value);
+  void set_auth_redirect_url(const char* value);
+  void set_auth_redirect_url(const char* value, size_t size);
+  std::string* mutable_auth_redirect_url();
+  std::string* release_auth_redirect_url();
+  void set_allocated_auth_redirect_url(std::string* auth_redirect_url);
+  private:
+  const std::string& _internal_auth_redirect_url() const;
+  void _internal_set_auth_redirect_url(const std::string& value);
+  std::string* _internal_mutable_auth_redirect_url();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ActiveDirectoryUserSigninResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr auth_redirect_url_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class TpmVersionInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.TpmVersionInfo) */ {
+ public:
+  TpmVersionInfo();
+  virtual ~TpmVersionInfo();
+
+  TpmVersionInfo(const TpmVersionInfo& from);
+  TpmVersionInfo(TpmVersionInfo&& from) noexcept
+    : TpmVersionInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline TpmVersionInfo& operator=(const TpmVersionInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline TpmVersionInfo& operator=(TpmVersionInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const TpmVersionInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const TpmVersionInfo* internal_default_instance() {
+    return reinterpret_cast<const TpmVersionInfo*>(
+               &_TpmVersionInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    139;
+
+  friend void swap(TpmVersionInfo& a, TpmVersionInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(TpmVersionInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline TpmVersionInfo* New() const final {
+    return CreateMaybeMessage<TpmVersionInfo>(nullptr);
+  }
+
+  TpmVersionInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<TpmVersionInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const TpmVersionInfo& from);
+  void MergeFrom(const TpmVersionInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(TpmVersionInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.TpmVersionInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef TpmVersionInfo_GscVersion GscVersion;
+  static constexpr GscVersion GSC_VERSION_UNSPECIFIED =
+    TpmVersionInfo_GscVersion_GSC_VERSION_UNSPECIFIED;
+  static constexpr GscVersion GSC_VERSION_NOT_GSC =
+    TpmVersionInfo_GscVersion_GSC_VERSION_NOT_GSC;
+  static constexpr GscVersion GSC_VERSION_CR50 =
+    TpmVersionInfo_GscVersion_GSC_VERSION_CR50;
+  static constexpr GscVersion GSC_VERSION_TI50 =
+    TpmVersionInfo_GscVersion_GSC_VERSION_TI50;
+  static inline bool GscVersion_IsValid(int value) {
+    return TpmVersionInfo_GscVersion_IsValid(value);
+  }
+  static constexpr GscVersion GscVersion_MIN =
+    TpmVersionInfo_GscVersion_GscVersion_MIN;
+  static constexpr GscVersion GscVersion_MAX =
+    TpmVersionInfo_GscVersion_GscVersion_MAX;
+  static constexpr int GscVersion_ARRAYSIZE =
+    TpmVersionInfo_GscVersion_GscVersion_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& GscVersion_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, GscVersion>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function GscVersion_Name.");
+    return TpmVersionInfo_GscVersion_Name(enum_t_value);
+  }
+  static inline bool GscVersion_Parse(const std::string& name,
+      GscVersion* value) {
+    return TpmVersionInfo_GscVersion_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVendorSpecificFieldNumber = 6,
+    kDidVidFieldNumber = 8,
+    kSpecLevelFieldNumber = 2,
+    kFamilyFieldNumber = 1,
+    kManufacturerFieldNumber = 3,
+    kFirmwareVersionFieldNumber = 5,
+    kTpmModelFieldNumber = 4,
+    kGscVersionFieldNumber = 7,
+  };
+  // optional string vendor_specific = 6;
+  bool has_vendor_specific() const;
+  private:
+  bool _internal_has_vendor_specific() const;
+  public:
+  void clear_vendor_specific();
+  const std::string& vendor_specific() const;
+  void set_vendor_specific(const std::string& value);
+  void set_vendor_specific(std::string&& value);
+  void set_vendor_specific(const char* value);
+  void set_vendor_specific(const char* value, size_t size);
+  std::string* mutable_vendor_specific();
+  std::string* release_vendor_specific();
+  void set_allocated_vendor_specific(std::string* vendor_specific);
+  private:
+  const std::string& _internal_vendor_specific() const;
+  void _internal_set_vendor_specific(const std::string& value);
+  std::string* _internal_mutable_vendor_specific();
+  public:
+
+  // optional string did_vid = 8;
+  bool has_did_vid() const;
+  private:
+  bool _internal_has_did_vid() const;
+  public:
+  void clear_did_vid();
+  const std::string& did_vid() const;
+  void set_did_vid(const std::string& value);
+  void set_did_vid(std::string&& value);
+  void set_did_vid(const char* value);
+  void set_did_vid(const char* value, size_t size);
+  std::string* mutable_did_vid();
+  std::string* release_did_vid();
+  void set_allocated_did_vid(std::string* did_vid);
+  private:
+  const std::string& _internal_did_vid() const;
+  void _internal_set_did_vid(const std::string& value);
+  std::string* _internal_mutable_did_vid();
+  public:
+
+  // optional uint64 spec_level = 2;
+  bool has_spec_level() const;
+  private:
+  bool _internal_has_spec_level() const;
+  public:
+  void clear_spec_level();
+  ::PROTOBUF_NAMESPACE_ID::uint64 spec_level() const;
+  void set_spec_level(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_spec_level() const;
+  void _internal_set_spec_level(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint32 family = 1;
+  bool has_family() const;
+  private:
+  bool _internal_has_family() const;
+  public:
+  void clear_family();
+  ::PROTOBUF_NAMESPACE_ID::uint32 family() const;
+  void set_family(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_family() const;
+  void _internal_set_family(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 manufacturer = 3;
+  bool has_manufacturer() const;
+  private:
+  bool _internal_has_manufacturer() const;
+  public:
+  void clear_manufacturer();
+  ::PROTOBUF_NAMESPACE_ID::uint32 manufacturer() const;
+  void set_manufacturer(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_manufacturer() const;
+  void _internal_set_manufacturer(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint64 firmware_version = 5;
+  bool has_firmware_version() const;
+  private:
+  bool _internal_has_firmware_version() const;
+  public:
+  void clear_firmware_version();
+  ::PROTOBUF_NAMESPACE_ID::uint64 firmware_version() const;
+  void set_firmware_version(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_firmware_version() const;
+  void _internal_set_firmware_version(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional uint32 tpm_model = 4;
+  bool has_tpm_model() const;
+  private:
+  bool _internal_has_tpm_model() const;
+  public:
+  void clear_tpm_model();
+  ::PROTOBUF_NAMESPACE_ID::uint32 tpm_model() const;
+  void set_tpm_model(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_tpm_model() const;
+  void _internal_set_tpm_model(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional .enterprise_management.TpmVersionInfo.GscVersion gsc_version = 7;
+  bool has_gsc_version() const;
+  private:
+  bool _internal_has_gsc_version() const;
+  public:
+  void clear_gsc_version();
+  ::enterprise_management::TpmVersionInfo_GscVersion gsc_version() const;
+  void set_gsc_version(::enterprise_management::TpmVersionInfo_GscVersion value);
+  private:
+  ::enterprise_management::TpmVersionInfo_GscVersion _internal_gsc_version() const;
+  void _internal_set_gsc_version(::enterprise_management::TpmVersionInfo_GscVersion value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.TpmVersionInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr vendor_specific_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr did_vid_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 spec_level_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 family_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 manufacturer_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 firmware_version_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 tpm_model_;
+  int gsc_version_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class TpmStatusInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.TpmStatusInfo) */ {
+ public:
+  TpmStatusInfo();
+  virtual ~TpmStatusInfo();
+
+  TpmStatusInfo(const TpmStatusInfo& from);
+  TpmStatusInfo(TpmStatusInfo&& from) noexcept
+    : TpmStatusInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline TpmStatusInfo& operator=(const TpmStatusInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline TpmStatusInfo& operator=(TpmStatusInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const TpmStatusInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const TpmStatusInfo* internal_default_instance() {
+    return reinterpret_cast<const TpmStatusInfo*>(
+               &_TpmStatusInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    140;
+
+  friend void swap(TpmStatusInfo& a, TpmStatusInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(TpmStatusInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline TpmStatusInfo* New() const final {
+    return CreateMaybeMessage<TpmStatusInfo>(nullptr);
+  }
+
+  TpmStatusInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<TpmStatusInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const TpmStatusInfo& from);
+  void MergeFrom(const TpmStatusInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(TpmStatusInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.TpmStatusInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTpmSupportedFeaturesFieldNumber = 12,
+    kEnabledFieldNumber = 1,
+    kOwnedFieldNumber = 2,
+    kTpmInitializedFieldNumber = 3,
+    kAttestationPreparedFieldNumber = 4,
+    kDictionaryAttackCounterFieldNumber = 6,
+    kDictionaryAttackThresholdFieldNumber = 7,
+    kAttestationEnrolledFieldNumber = 5,
+    kDictionaryAttackLockoutInEffectFieldNumber = 8,
+    kBootLockboxFinalizedFieldNumber = 10,
+    kOwnerPasswordIsPresentFieldNumber = 11,
+    kDictionaryAttackLockoutSecondsRemainingFieldNumber = 9,
+  };
+  // optional .enterprise_management.TpmSupportedFeatures tpm_supported_features = 12;
+  bool has_tpm_supported_features() const;
+  private:
+  bool _internal_has_tpm_supported_features() const;
+  public:
+  void clear_tpm_supported_features();
+  const ::enterprise_management::TpmSupportedFeatures& tpm_supported_features() const;
+  ::enterprise_management::TpmSupportedFeatures* release_tpm_supported_features();
+  ::enterprise_management::TpmSupportedFeatures* mutable_tpm_supported_features();
+  void set_allocated_tpm_supported_features(::enterprise_management::TpmSupportedFeatures* tpm_supported_features);
+  private:
+  const ::enterprise_management::TpmSupportedFeatures& _internal_tpm_supported_features() const;
+  ::enterprise_management::TpmSupportedFeatures* _internal_mutable_tpm_supported_features();
+  public:
+
+  // optional bool enabled = 1;
+  bool has_enabled() const;
+  private:
+  bool _internal_has_enabled() const;
+  public:
+  void clear_enabled();
+  bool enabled() const;
+  void set_enabled(bool value);
+  private:
+  bool _internal_enabled() const;
+  void _internal_set_enabled(bool value);
+  public:
+
+  // optional bool owned = 2;
+  bool has_owned() const;
+  private:
+  bool _internal_has_owned() const;
+  public:
+  void clear_owned();
+  bool owned() const;
+  void set_owned(bool value);
+  private:
+  bool _internal_owned() const;
+  void _internal_set_owned(bool value);
+  public:
+
+  // optional bool tpm_initialized = 3;
+  bool has_tpm_initialized() const;
+  private:
+  bool _internal_has_tpm_initialized() const;
+  public:
+  void clear_tpm_initialized();
+  bool tpm_initialized() const;
+  void set_tpm_initialized(bool value);
+  private:
+  bool _internal_tpm_initialized() const;
+  void _internal_set_tpm_initialized(bool value);
+  public:
+
+  // optional bool attestation_prepared = 4;
+  bool has_attestation_prepared() const;
+  private:
+  bool _internal_has_attestation_prepared() const;
+  public:
+  void clear_attestation_prepared();
+  bool attestation_prepared() const;
+  void set_attestation_prepared(bool value);
+  private:
+  bool _internal_attestation_prepared() const;
+  void _internal_set_attestation_prepared(bool value);
+  public:
+
+  // optional int32 dictionary_attack_counter = 6;
+  bool has_dictionary_attack_counter() const;
+  private:
+  bool _internal_has_dictionary_attack_counter() const;
+  public:
+  void clear_dictionary_attack_counter();
+  ::PROTOBUF_NAMESPACE_ID::int32 dictionary_attack_counter() const;
+  void set_dictionary_attack_counter(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_dictionary_attack_counter() const;
+  void _internal_set_dictionary_attack_counter(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 dictionary_attack_threshold = 7;
+  bool has_dictionary_attack_threshold() const;
+  private:
+  bool _internal_has_dictionary_attack_threshold() const;
+  public:
+  void clear_dictionary_attack_threshold();
+  ::PROTOBUF_NAMESPACE_ID::int32 dictionary_attack_threshold() const;
+  void set_dictionary_attack_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_dictionary_attack_threshold() const;
+  void _internal_set_dictionary_attack_threshold(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional bool attestation_enrolled = 5;
+  bool has_attestation_enrolled() const;
+  private:
+  bool _internal_has_attestation_enrolled() const;
+  public:
+  void clear_attestation_enrolled();
+  bool attestation_enrolled() const;
+  void set_attestation_enrolled(bool value);
+  private:
+  bool _internal_attestation_enrolled() const;
+  void _internal_set_attestation_enrolled(bool value);
+  public:
+
+  // optional bool dictionary_attack_lockout_in_effect = 8;
+  bool has_dictionary_attack_lockout_in_effect() const;
+  private:
+  bool _internal_has_dictionary_attack_lockout_in_effect() const;
+  public:
+  void clear_dictionary_attack_lockout_in_effect();
+  bool dictionary_attack_lockout_in_effect() const;
+  void set_dictionary_attack_lockout_in_effect(bool value);
+  private:
+  bool _internal_dictionary_attack_lockout_in_effect() const;
+  void _internal_set_dictionary_attack_lockout_in_effect(bool value);
+  public:
+
+  // optional bool boot_lockbox_finalized = 10 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_boot_lockbox_finalized() const;
+  private:
+  bool _internal_has_boot_lockbox_finalized() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_boot_lockbox_finalized();
+  PROTOBUF_DEPRECATED bool boot_lockbox_finalized() const;
+  PROTOBUF_DEPRECATED void set_boot_lockbox_finalized(bool value);
+  private:
+  bool _internal_boot_lockbox_finalized() const;
+  void _internal_set_boot_lockbox_finalized(bool value);
+  public:
+
+  // optional bool owner_password_is_present = 11;
+  bool has_owner_password_is_present() const;
+  private:
+  bool _internal_has_owner_password_is_present() const;
+  public:
+  void clear_owner_password_is_present();
+  bool owner_password_is_present() const;
+  void set_owner_password_is_present(bool value);
+  private:
+  bool _internal_owner_password_is_present() const;
+  void _internal_set_owner_password_is_present(bool value);
+  public:
+
+  // optional int32 dictionary_attack_lockout_seconds_remaining = 9;
+  bool has_dictionary_attack_lockout_seconds_remaining() const;
+  private:
+  bool _internal_has_dictionary_attack_lockout_seconds_remaining() const;
+  public:
+  void clear_dictionary_attack_lockout_seconds_remaining();
+  ::PROTOBUF_NAMESPACE_ID::int32 dictionary_attack_lockout_seconds_remaining() const;
+  void set_dictionary_attack_lockout_seconds_remaining(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_dictionary_attack_lockout_seconds_remaining() const;
+  void _internal_set_dictionary_attack_lockout_seconds_remaining(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.TpmStatusInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::TpmSupportedFeatures* tpm_supported_features_;
+  bool enabled_;
+  bool owned_;
+  bool tpm_initialized_;
+  bool attestation_prepared_;
+  ::PROTOBUF_NAMESPACE_ID::int32 dictionary_attack_counter_;
+  ::PROTOBUF_NAMESPACE_ID::int32 dictionary_attack_threshold_;
+  bool attestation_enrolled_;
+  bool dictionary_attack_lockout_in_effect_;
+  bool boot_lockbox_finalized_;
+  bool owner_password_is_present_;
+  ::PROTOBUF_NAMESPACE_ID::int32 dictionary_attack_lockout_seconds_remaining_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class TpmSupportedFeatures :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.TpmSupportedFeatures) */ {
+ public:
+  TpmSupportedFeatures();
+  virtual ~TpmSupportedFeatures();
+
+  TpmSupportedFeatures(const TpmSupportedFeatures& from);
+  TpmSupportedFeatures(TpmSupportedFeatures&& from) noexcept
+    : TpmSupportedFeatures() {
+    *this = ::std::move(from);
+  }
+
+  inline TpmSupportedFeatures& operator=(const TpmSupportedFeatures& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline TpmSupportedFeatures& operator=(TpmSupportedFeatures&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const TpmSupportedFeatures& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const TpmSupportedFeatures* internal_default_instance() {
+    return reinterpret_cast<const TpmSupportedFeatures*>(
+               &_TpmSupportedFeatures_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    141;
+
+  friend void swap(TpmSupportedFeatures& a, TpmSupportedFeatures& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(TpmSupportedFeatures* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline TpmSupportedFeatures* New() const final {
+    return CreateMaybeMessage<TpmSupportedFeatures>(nullptr);
+  }
+
+  TpmSupportedFeatures* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<TpmSupportedFeatures>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const TpmSupportedFeatures& from);
+  void MergeFrom(const TpmSupportedFeatures& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(TpmSupportedFeatures* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.TpmSupportedFeatures";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kIsAllowedFieldNumber = 1,
+    kSupportPinweaverFieldNumber = 2,
+    kSupportRuntimeSelectionFieldNumber = 3,
+    kSupportU2FFieldNumber = 4,
+  };
+  // optional bool is_allowed = 1;
+  bool has_is_allowed() const;
+  private:
+  bool _internal_has_is_allowed() const;
+  public:
+  void clear_is_allowed();
+  bool is_allowed() const;
+  void set_is_allowed(bool value);
+  private:
+  bool _internal_is_allowed() const;
+  void _internal_set_is_allowed(bool value);
+  public:
+
+  // optional bool support_pinweaver = 2;
+  bool has_support_pinweaver() const;
+  private:
+  bool _internal_has_support_pinweaver() const;
+  public:
+  void clear_support_pinweaver();
+  bool support_pinweaver() const;
+  void set_support_pinweaver(bool value);
+  private:
+  bool _internal_support_pinweaver() const;
+  void _internal_set_support_pinweaver(bool value);
+  public:
+
+  // optional bool support_runtime_selection = 3;
+  bool has_support_runtime_selection() const;
+  private:
+  bool _internal_has_support_runtime_selection() const;
+  public:
+  void clear_support_runtime_selection();
+  bool support_runtime_selection() const;
+  void set_support_runtime_selection(bool value);
+  private:
+  bool _internal_support_runtime_selection() const;
+  void _internal_set_support_runtime_selection(bool value);
+  public:
+
+  // optional bool support_u2f = 4;
+  bool has_support_u2f() const;
+  private:
+  bool _internal_has_support_u2f() const;
+  public:
+  void clear_support_u2f();
+  bool support_u2f() const;
+  void set_support_u2f(bool value);
+  private:
+  bool _internal_support_u2f() const;
+  void _internal_set_support_u2f(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.TpmSupportedFeatures)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool is_allowed_;
+  bool support_pinweaver_;
+  bool support_runtime_selection_;
+  bool support_u2f_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemState :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.SystemState) */ {
+ public:
+  SystemState();
+  virtual ~SystemState();
+
+  SystemState(const SystemState& from);
+  SystemState(SystemState&& from) noexcept
+    : SystemState() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemState& operator=(const SystemState& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemState& operator=(SystemState&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemState& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemState* internal_default_instance() {
+    return reinterpret_cast<const SystemState*>(
+               &_SystemState_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    142;
+
+  friend void swap(SystemState& a, SystemState& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemState* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemState* New() const final {
+    return CreateMaybeMessage<SystemState>(nullptr);
+  }
+
+  SystemState* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemState>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemState& from);
+  void MergeFrom(const SystemState& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemState* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.SystemState";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVolumeInfosFieldNumber = 1,
+  };
+  // repeated .enterprise_management.VolumeInfo volume_infos = 1;
+  int volume_infos_size() const;
+  private:
+  int _internal_volume_infos_size() const;
+  public:
+  void clear_volume_infos();
+  ::enterprise_management::VolumeInfo* mutable_volume_infos(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo >*
+      mutable_volume_infos();
+  private:
+  const ::enterprise_management::VolumeInfo& _internal_volume_infos(int index) const;
+  ::enterprise_management::VolumeInfo* _internal_add_volume_infos();
+  public:
+  const ::enterprise_management::VolumeInfo& volume_infos(int index) const;
+  ::enterprise_management::VolumeInfo* add_volume_infos();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo >&
+      volume_infos() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.SystemState)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo > volume_infos_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ExtensionInstallReportLogEvent :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ExtensionInstallReportLogEvent) */ {
+ public:
+  ExtensionInstallReportLogEvent();
+  virtual ~ExtensionInstallReportLogEvent();
+
+  ExtensionInstallReportLogEvent(const ExtensionInstallReportLogEvent& from);
+  ExtensionInstallReportLogEvent(ExtensionInstallReportLogEvent&& from) noexcept
+    : ExtensionInstallReportLogEvent() {
+    *this = ::std::move(from);
+  }
+
+  inline ExtensionInstallReportLogEvent& operator=(const ExtensionInstallReportLogEvent& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ExtensionInstallReportLogEvent& operator=(ExtensionInstallReportLogEvent&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ExtensionInstallReportLogEvent& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ExtensionInstallReportLogEvent* internal_default_instance() {
+    return reinterpret_cast<const ExtensionInstallReportLogEvent*>(
+               &_ExtensionInstallReportLogEvent_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    143;
+
+  friend void swap(ExtensionInstallReportLogEvent& a, ExtensionInstallReportLogEvent& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ExtensionInstallReportLogEvent* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ExtensionInstallReportLogEvent* New() const final {
+    return CreateMaybeMessage<ExtensionInstallReportLogEvent>(nullptr);
+  }
+
+  ExtensionInstallReportLogEvent* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ExtensionInstallReportLogEvent>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ExtensionInstallReportLogEvent& from);
+  void MergeFrom(const ExtensionInstallReportLogEvent& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ExtensionInstallReportLogEvent* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ExtensionInstallReportLogEvent";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef ExtensionInstallReportLogEvent_EventType EventType;
+  static constexpr EventType LOG_EVENT_TYPE_UNKNOWN =
+    ExtensionInstallReportLogEvent_EventType_LOG_EVENT_TYPE_UNKNOWN;
+  static constexpr EventType POLICY_REQUEST =
+    ExtensionInstallReportLogEvent_EventType_POLICY_REQUEST;
+  static constexpr EventType SUCCESS =
+    ExtensionInstallReportLogEvent_EventType_SUCCESS;
+  static constexpr EventType CANCELED =
+    ExtensionInstallReportLogEvent_EventType_CANCELED;
+  static constexpr EventType CONNECTIVITY_CHANGE =
+    ExtensionInstallReportLogEvent_EventType_CONNECTIVITY_CHANGE;
+  static constexpr EventType SESSION_STATE_CHANGE =
+    ExtensionInstallReportLogEvent_EventType_SESSION_STATE_CHANGE;
+  static constexpr EventType INSTALLATION_FAILED =
+    ExtensionInstallReportLogEvent_EventType_INSTALLATION_FAILED;
+  static inline bool EventType_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_EventType_IsValid(value);
+  }
+  static constexpr EventType EventType_MIN =
+    ExtensionInstallReportLogEvent_EventType_EventType_MIN;
+  static constexpr EventType EventType_MAX =
+    ExtensionInstallReportLogEvent_EventType_EventType_MAX;
+  static constexpr int EventType_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_EventType_EventType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& EventType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, EventType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function EventType_Name.");
+    return ExtensionInstallReportLogEvent_EventType_Name(enum_t_value);
+  }
+  static inline bool EventType_Parse(const std::string& name,
+      EventType* value) {
+    return ExtensionInstallReportLogEvent_EventType_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_SessionStateChangeType SessionStateChangeType;
+  static constexpr SessionStateChangeType SESSION_STATE_CHANGE_TYPE_UNKNOWN =
+    ExtensionInstallReportLogEvent_SessionStateChangeType_SESSION_STATE_CHANGE_TYPE_UNKNOWN;
+  static constexpr SessionStateChangeType LOGIN =
+    ExtensionInstallReportLogEvent_SessionStateChangeType_LOGIN;
+  static constexpr SessionStateChangeType LOGOUT =
+    ExtensionInstallReportLogEvent_SessionStateChangeType_LOGOUT;
+  static constexpr SessionStateChangeType SUSPEND =
+    ExtensionInstallReportLogEvent_SessionStateChangeType_SUSPEND;
+  static constexpr SessionStateChangeType RESUME =
+    ExtensionInstallReportLogEvent_SessionStateChangeType_RESUME;
+  static inline bool SessionStateChangeType_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_SessionStateChangeType_IsValid(value);
+  }
+  static constexpr SessionStateChangeType SessionStateChangeType_MIN =
+    ExtensionInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MIN;
+  static constexpr SessionStateChangeType SessionStateChangeType_MAX =
+    ExtensionInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MAX;
+  static constexpr int SessionStateChangeType_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& SessionStateChangeType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, SessionStateChangeType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function SessionStateChangeType_Name.");
+    return ExtensionInstallReportLogEvent_SessionStateChangeType_Name(enum_t_value);
+  }
+  static inline bool SessionStateChangeType_Parse(const std::string& name,
+      SessionStateChangeType* value) {
+    return ExtensionInstallReportLogEvent_SessionStateChangeType_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_FailureReason FailureReason;
+  static constexpr FailureReason FAILURE_REASON_UNKNOWN =
+    ExtensionInstallReportLogEvent_FailureReason_FAILURE_REASON_UNKNOWN;
+  static constexpr FailureReason INVALID_ID =
+    ExtensionInstallReportLogEvent_FailureReason_INVALID_ID;
+  static constexpr FailureReason MALFORMED_EXTENSION_SETTINGS =
+    ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_SETTINGS;
+  static constexpr FailureReason REPLACED_BY_ARC_APP =
+    ExtensionInstallReportLogEvent_FailureReason_REPLACED_BY_ARC_APP;
+  static constexpr FailureReason MALFORMED_EXTENSION_DICT =
+    ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_DICT;
+  static constexpr FailureReason NOT_SUPPORTED_EXTENSION_DICT =
+    ExtensionInstallReportLogEvent_FailureReason_NOT_SUPPORTED_EXTENSION_DICT;
+  static constexpr FailureReason MALFORMED_EXTENSION_DICT_FILE_PATH =
+    ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_DICT_FILE_PATH;
+  static constexpr FailureReason MALFORMED_EXTENSION_DICT_VERSION =
+    ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_DICT_VERSION;
+  static constexpr FailureReason MALFORMED_EXTENSION_DICT_UPDATE_URL =
+    ExtensionInstallReportLogEvent_FailureReason_MALFORMED_EXTENSION_DICT_UPDATE_URL;
+  static constexpr FailureReason LOCALE_NOT_SUPPORTED =
+    ExtensionInstallReportLogEvent_FailureReason_LOCALE_NOT_SUPPORTED;
+  static constexpr FailureReason NOT_PERFORMING_NEW_INSTALL =
+    ExtensionInstallReportLogEvent_FailureReason_NOT_PERFORMING_NEW_INSTALL;
+  static constexpr FailureReason TOO_OLD_PROFILE =
+    ExtensionInstallReportLogEvent_FailureReason_TOO_OLD_PROFILE;
+  static constexpr FailureReason DO_NOT_INSTALL_FOR_ENTERPRISE =
+    ExtensionInstallReportLogEvent_FailureReason_DO_NOT_INSTALL_FOR_ENTERPRISE;
+  static constexpr FailureReason ALREADY_INSTALLED =
+    ExtensionInstallReportLogEvent_FailureReason_ALREADY_INSTALLED;
+  static constexpr FailureReason CRX_FETCH_FAILED =
+    ExtensionInstallReportLogEvent_FailureReason_CRX_FETCH_FAILED;
+  static constexpr FailureReason MANIFEST_FETCH_FAILED =
+    ExtensionInstallReportLogEvent_FailureReason_MANIFEST_FETCH_FAILED;
+  static constexpr FailureReason MANIFEST_INVALID =
+    ExtensionInstallReportLogEvent_FailureReason_MANIFEST_INVALID;
+  static constexpr FailureReason NO_UPDATE =
+    ExtensionInstallReportLogEvent_FailureReason_NO_UPDATE;
+  static constexpr FailureReason CRX_INSTALL_ERROR_DECLINED =
+    ExtensionInstallReportLogEvent_FailureReason_CRX_INSTALL_ERROR_DECLINED;
+  static constexpr FailureReason CRX_INSTALL_ERROR_SANDBOXED_UNPACKER_FAILURE =
+    ExtensionInstallReportLogEvent_FailureReason_CRX_INSTALL_ERROR_SANDBOXED_UNPACKER_FAILURE;
+  static constexpr FailureReason CRX_INSTALL_ERROR_OTHER =
+    ExtensionInstallReportLogEvent_FailureReason_CRX_INSTALL_ERROR_OTHER;
+  static constexpr FailureReason NO_UPDATE_URL =
+    ExtensionInstallReportLogEvent_FailureReason_NO_UPDATE_URL;
+  static constexpr FailureReason PENDING_ADD_FAILED =
+    ExtensionInstallReportLogEvent_FailureReason_PENDING_ADD_FAILED;
+  static constexpr FailureReason DOWNLOADER_ADD_FAILED =
+    ExtensionInstallReportLogEvent_FailureReason_DOWNLOADER_ADD_FAILED;
+  static constexpr FailureReason IN_PROGRESS =
+    ExtensionInstallReportLogEvent_FailureReason_IN_PROGRESS;
+  static constexpr FailureReason CRX_FETCH_URL_EMPTY =
+    ExtensionInstallReportLogEvent_FailureReason_CRX_FETCH_URL_EMPTY;
+  static constexpr FailureReason CRX_FETCH_URL_INVALID =
+    ExtensionInstallReportLogEvent_FailureReason_CRX_FETCH_URL_INVALID;
+  static constexpr FailureReason OVERRIDDEN_BY_SETTINGS =
+    ExtensionInstallReportLogEvent_FailureReason_OVERRIDDEN_BY_SETTINGS;
+  static constexpr FailureReason REPLACED_BY_SYSTEM_APP =
+    ExtensionInstallReportLogEvent_FailureReason_REPLACED_BY_SYSTEM_APP;
+  static inline bool FailureReason_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_FailureReason_IsValid(value);
+  }
+  static constexpr FailureReason FailureReason_MIN =
+    ExtensionInstallReportLogEvent_FailureReason_FailureReason_MIN;
+  static constexpr FailureReason FailureReason_MAX =
+    ExtensionInstallReportLogEvent_FailureReason_FailureReason_MAX;
+  static constexpr int FailureReason_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_FailureReason_FailureReason_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& FailureReason_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, FailureReason>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function FailureReason_Name.");
+    return ExtensionInstallReportLogEvent_FailureReason_Name(enum_t_value);
+  }
+  static inline bool FailureReason_Parse(const std::string& name,
+      FailureReason* value) {
+    return ExtensionInstallReportLogEvent_FailureReason_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_InstallationStage InstallationStage;
+  static constexpr InstallationStage INSTALLATION_STAGE_UNKNOWN =
+    ExtensionInstallReportLogEvent_InstallationStage_INSTALLATION_STAGE_UNKNOWN;
+  static constexpr InstallationStage CREATED =
+    ExtensionInstallReportLogEvent_InstallationStage_CREATED;
+  static constexpr InstallationStage PENDING =
+    ExtensionInstallReportLogEvent_InstallationStage_PENDING;
+  static constexpr InstallationStage DOWNLOADING =
+    ExtensionInstallReportLogEvent_InstallationStage_DOWNLOADING;
+  static constexpr InstallationStage INSTALLING =
+    ExtensionInstallReportLogEvent_InstallationStage_INSTALLING;
+  static constexpr InstallationStage COMPLETE =
+    ExtensionInstallReportLogEvent_InstallationStage_COMPLETE;
+  static inline bool InstallationStage_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_InstallationStage_IsValid(value);
+  }
+  static constexpr InstallationStage InstallationStage_MIN =
+    ExtensionInstallReportLogEvent_InstallationStage_InstallationStage_MIN;
+  static constexpr InstallationStage InstallationStage_MAX =
+    ExtensionInstallReportLogEvent_InstallationStage_InstallationStage_MAX;
+  static constexpr int InstallationStage_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_InstallationStage_InstallationStage_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& InstallationStage_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, InstallationStage>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function InstallationStage_Name.");
+    return ExtensionInstallReportLogEvent_InstallationStage_Name(enum_t_value);
+  }
+  static inline bool InstallationStage_Parse(const std::string& name,
+      InstallationStage* value) {
+    return ExtensionInstallReportLogEvent_InstallationStage_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_UserType UserType;
+  static constexpr UserType USER_TYPE_UNKNOWN =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_UNKNOWN;
+  static constexpr UserType USER_TYPE_REGULAR =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_REGULAR;
+  static constexpr UserType USER_TYPE_GUEST =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_GUEST;
+  static constexpr UserType USER_TYPE_PUBLIC_ACCOUNT =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_PUBLIC_ACCOUNT;
+  PROTOBUF_DEPRECATED_ENUM static constexpr UserType USER_TYPE_SUPERVISED_DEPRECATED =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_SUPERVISED_DEPRECATED;
+  static constexpr UserType USER_TYPE_KIOSK_APP =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_KIOSK_APP;
+  static constexpr UserType USER_TYPE_CHILD =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_CHILD;
+  static constexpr UserType USER_TYPE_ARC_KIOSK_APP =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_ARC_KIOSK_APP;
+  static constexpr UserType USER_TYPE_ACTIVE_DIRECTORY =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_ACTIVE_DIRECTORY;
+  static constexpr UserType USER_TYPE_WEB_KIOSK_APP =
+    ExtensionInstallReportLogEvent_UserType_USER_TYPE_WEB_KIOSK_APP;
+  static inline bool UserType_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_UserType_IsValid(value);
+  }
+  static constexpr UserType UserType_MIN =
+    ExtensionInstallReportLogEvent_UserType_UserType_MIN;
+  static constexpr UserType UserType_MAX =
+    ExtensionInstallReportLogEvent_UserType_UserType_MAX;
+  static constexpr int UserType_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_UserType_UserType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& UserType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, UserType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function UserType_Name.");
+    return ExtensionInstallReportLogEvent_UserType_Name(enum_t_value);
+  }
+  static inline bool UserType_Parse(const std::string& name,
+      UserType* value) {
+    return ExtensionInstallReportLogEvent_UserType_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_DownloadingStage DownloadingStage;
+  static constexpr DownloadingStage DOWNLOADING_STAGE_UNKNOWN =
+    ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_STAGE_UNKNOWN;
+  static constexpr DownloadingStage DOWNLOAD_PENDING =
+    ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOAD_PENDING;
+  static constexpr DownloadingStage QUEUED_FOR_MANIFEST =
+    ExtensionInstallReportLogEvent_DownloadingStage_QUEUED_FOR_MANIFEST;
+  static constexpr DownloadingStage DOWNLOADING_MANIFEST =
+    ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_MANIFEST;
+  static constexpr DownloadingStage DOWNLOADING_MANIFEST_RETRY =
+    ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_MANIFEST_RETRY;
+  static constexpr DownloadingStage PARSING_MANIFEST =
+    ExtensionInstallReportLogEvent_DownloadingStage_PARSING_MANIFEST;
+  static constexpr DownloadingStage MANIFEST_LOADED =
+    ExtensionInstallReportLogEvent_DownloadingStage_MANIFEST_LOADED;
+  static constexpr DownloadingStage QUEUED_FOR_CRX =
+    ExtensionInstallReportLogEvent_DownloadingStage_QUEUED_FOR_CRX;
+  static constexpr DownloadingStage DOWNLOADING_CRX =
+    ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_CRX;
+  static constexpr DownloadingStage DOWNLOADING_CRX_RETRY =
+    ExtensionInstallReportLogEvent_DownloadingStage_DOWNLOADING_CRX_RETRY;
+  static constexpr DownloadingStage FINISHED =
+    ExtensionInstallReportLogEvent_DownloadingStage_FINISHED;
+  static inline bool DownloadingStage_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_DownloadingStage_IsValid(value);
+  }
+  static constexpr DownloadingStage DownloadingStage_MIN =
+    ExtensionInstallReportLogEvent_DownloadingStage_DownloadingStage_MIN;
+  static constexpr DownloadingStage DownloadingStage_MAX =
+    ExtensionInstallReportLogEvent_DownloadingStage_DownloadingStage_MAX;
+  static constexpr int DownloadingStage_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_DownloadingStage_DownloadingStage_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& DownloadingStage_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, DownloadingStage>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function DownloadingStage_Name.");
+    return ExtensionInstallReportLogEvent_DownloadingStage_Name(enum_t_value);
+  }
+  static inline bool DownloadingStage_Parse(const std::string& name,
+      DownloadingStage* value) {
+    return ExtensionInstallReportLogEvent_DownloadingStage_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_InstallCreationStage InstallCreationStage;
+  static constexpr InstallCreationStage INSTALL_CREATION_STAGE_UNKNOWN =
+    ExtensionInstallReportLogEvent_InstallCreationStage_INSTALL_CREATION_STAGE_UNKNOWN;
+  static constexpr InstallCreationStage CREATION_INITIATED =
+    ExtensionInstallReportLogEvent_InstallCreationStage_CREATION_INITIATED;
+  static constexpr InstallCreationStage NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_FORCED =
+    ExtensionInstallReportLogEvent_InstallCreationStage_NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_FORCED;
+  static constexpr InstallCreationStage NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_NOT_FORCED =
+    ExtensionInstallReportLogEvent_InstallCreationStage_NOTIFIED_FROM_MANAGEMENT_INITIAL_CREATION_NOT_FORCED;
+  static constexpr InstallCreationStage NOTIFIED_FROM_MANAGEMENT =
+    ExtensionInstallReportLogEvent_InstallCreationStage_NOTIFIED_FROM_MANAGEMENT;
+  static constexpr InstallCreationStage NOTIFIED_FROM_MANAGEMENT_NOT_FORCED =
+    ExtensionInstallReportLogEvent_InstallCreationStage_NOTIFIED_FROM_MANAGEMENT_NOT_FORCED;
+  static constexpr InstallCreationStage SEEN_BY_POLICY_LOADER =
+    ExtensionInstallReportLogEvent_InstallCreationStage_SEEN_BY_POLICY_LOADER;
+  static constexpr InstallCreationStage SEEN_BY_EXTERNAL_PROVIDER =
+    ExtensionInstallReportLogEvent_InstallCreationStage_SEEN_BY_EXTERNAL_PROVIDER;
+  static inline bool InstallCreationStage_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_InstallCreationStage_IsValid(value);
+  }
+  static constexpr InstallCreationStage InstallCreationStage_MIN =
+    ExtensionInstallReportLogEvent_InstallCreationStage_InstallCreationStage_MIN;
+  static constexpr InstallCreationStage InstallCreationStage_MAX =
+    ExtensionInstallReportLogEvent_InstallCreationStage_InstallCreationStage_MAX;
+  static constexpr int InstallCreationStage_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_InstallCreationStage_InstallCreationStage_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& InstallCreationStage_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, InstallCreationStage>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function InstallCreationStage_Name.");
+    return ExtensionInstallReportLogEvent_InstallCreationStage_Name(enum_t_value);
+  }
+  static inline bool InstallCreationStage_Parse(const std::string& name,
+      InstallCreationStage* value) {
+    return ExtensionInstallReportLogEvent_InstallCreationStage_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_DownloadCacheStatus DownloadCacheStatus;
+  static constexpr DownloadCacheStatus CACHE_UNKNOWN =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_UNKNOWN;
+  static constexpr DownloadCacheStatus CACHE_DISABLED =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_DISABLED;
+  static constexpr DownloadCacheStatus CACHE_MISS =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_MISS;
+  static constexpr DownloadCacheStatus CACHE_OUTDATED =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_OUTDATED;
+  static constexpr DownloadCacheStatus CACHE_HIT =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_HIT;
+  static constexpr DownloadCacheStatus CACHE_HIT_ON_MANIFEST_FETCH_FAILURE =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_CACHE_HIT_ON_MANIFEST_FETCH_FAILURE;
+  static inline bool DownloadCacheStatus_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_DownloadCacheStatus_IsValid(value);
+  }
+  static constexpr DownloadCacheStatus DownloadCacheStatus_MIN =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_DownloadCacheStatus_MIN;
+  static constexpr DownloadCacheStatus DownloadCacheStatus_MAX =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_DownloadCacheStatus_MAX;
+  static constexpr int DownloadCacheStatus_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_DownloadCacheStatus_DownloadCacheStatus_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& DownloadCacheStatus_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, DownloadCacheStatus>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function DownloadCacheStatus_Name.");
+    return ExtensionInstallReportLogEvent_DownloadCacheStatus_Name(enum_t_value);
+  }
+  static inline bool DownloadCacheStatus_Parse(const std::string& name,
+      DownloadCacheStatus* value) {
+    return ExtensionInstallReportLogEvent_DownloadCacheStatus_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason SandboxedUnpackerFailureReason;
+  static constexpr SandboxedUnpackerFailureReason SANDBOXED_UNPACKER_FAILURE_REASON_UNKNOWN =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SANDBOXED_UNPACKER_FAILURE_REASON_UNKNOWN;
+  static constexpr SandboxedUnpackerFailureReason COULD_NOT_GET_TEMP_DIRECTORY =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_GET_TEMP_DIRECTORY;
+  static constexpr SandboxedUnpackerFailureReason COULD_NOT_CREATE_TEMP_DIRECTORY =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_CREATE_TEMP_DIRECTORY;
+  static constexpr SandboxedUnpackerFailureReason FAILED_TO_COPY_EXTENSION_FILE_TO_TEMP_DIRECTORY =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_FAILED_TO_COPY_EXTENSION_FILE_TO_TEMP_DIRECTORY;
+  static constexpr SandboxedUnpackerFailureReason COULD_NOT_GET_SANDBOX_FRIENDLY_PATH =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_GET_SANDBOX_FRIENDLY_PATH;
+  static constexpr SandboxedUnpackerFailureReason COULD_NOT_LOCALIZE_EXTENSION =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_LOCALIZE_EXTENSION;
+  static constexpr SandboxedUnpackerFailureReason INVALID_MANIFEST =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_MANIFEST;
+  static constexpr SandboxedUnpackerFailureReason UNPACKER_CLIENT_FAILED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_UNPACKER_CLIENT_FAILED;
+  static constexpr SandboxedUnpackerFailureReason UTILITY_PROCESS_CRASHED_WHILE_TRYING_TO_INSTALL =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_UTILITY_PROCESS_CRASHED_WHILE_TRYING_TO_INSTALL;
+  static constexpr SandboxedUnpackerFailureReason CRX_FILE_NOT_READABLE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_FILE_NOT_READABLE;
+  static constexpr SandboxedUnpackerFailureReason CRX_HEADER_INVALID =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_HEADER_INVALID;
+  static constexpr SandboxedUnpackerFailureReason CRX_MAGIC_NUMBER_INVALID =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_MAGIC_NUMBER_INVALID;
+  static constexpr SandboxedUnpackerFailureReason CRX_VERSION_NUMBER_INVALID =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_VERSION_NUMBER_INVALID;
+  static constexpr SandboxedUnpackerFailureReason CRX_EXCESSIVELY_LARGE_KEY_OR_SIGNATURE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_EXCESSIVELY_LARGE_KEY_OR_SIGNATURE;
+  static constexpr SandboxedUnpackerFailureReason CRX_ZERO_KEY_LENGTH =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_ZERO_KEY_LENGTH;
+  static constexpr SandboxedUnpackerFailureReason CRX_ZERO_SIGNATURE_LENGTH =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_ZERO_SIGNATURE_LENGTH;
+  static constexpr SandboxedUnpackerFailureReason CRX_PUBLIC_KEY_INVALID =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_PUBLIC_KEY_INVALID;
+  static constexpr SandboxedUnpackerFailureReason CRX_SIGNATURE_INVALID =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_SIGNATURE_INVALID;
+  static constexpr SandboxedUnpackerFailureReason CRX_SIGNATURE_VERIFICATION_INITIALIZATION_FAILED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_SIGNATURE_VERIFICATION_INITIALIZATION_FAILED;
+  static constexpr SandboxedUnpackerFailureReason CRX_SIGNATURE_VERIFICATION_FAILED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_SIGNATURE_VERIFICATION_FAILED;
+  static constexpr SandboxedUnpackerFailureReason ERROR_SERIALIZING_MANIFEST_JSON =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SERIALIZING_MANIFEST_JSON;
+  static constexpr SandboxedUnpackerFailureReason ERROR_SAVING_MANIFEST_JSON =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SAVING_MANIFEST_JSON;
+  static constexpr SandboxedUnpackerFailureReason COULD_NOT_READ_IMAGE_DATA_FROM_DISK_UNUSED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_READ_IMAGE_DATA_FROM_DISK_UNUSED;
+  static constexpr SandboxedUnpackerFailureReason DECODED_IMAGES_DO_NOT_MATCH_THE_MANIFEST_UNUSED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_DECODED_IMAGES_DO_NOT_MATCH_THE_MANIFEST_UNUSED;
+  static constexpr SandboxedUnpackerFailureReason INVALID_PATH_FOR_BROWSER_IMAGE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_PATH_FOR_BROWSER_IMAGE;
+  static constexpr SandboxedUnpackerFailureReason ERROR_REMOVING_OLD_IMAGE_FILE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_REMOVING_OLD_IMAGE_FILE;
+  static constexpr SandboxedUnpackerFailureReason INVALID_PATH_FOR_BITMAP_IMAGE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_PATH_FOR_BITMAP_IMAGE;
+  static constexpr SandboxedUnpackerFailureReason ERROR_RE_ENCODING_THEME_IMAGE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_RE_ENCODING_THEME_IMAGE;
+  static constexpr SandboxedUnpackerFailureReason ERROR_SAVING_THEME_IMAGE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SAVING_THEME_IMAGE;
+  static constexpr SandboxedUnpackerFailureReason DEPRECATED_ABORTED_DUE_TO_SHUTDOWN =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_DEPRECATED_ABORTED_DUE_TO_SHUTDOWN;
+  static constexpr SandboxedUnpackerFailureReason COULD_NOT_READ_CATALOG_DATA_FROM_DISK_UNUSED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_READ_CATALOG_DATA_FROM_DISK_UNUSED;
+  static constexpr SandboxedUnpackerFailureReason INVALID_CATALOG_DATA =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_CATALOG_DATA;
+  static constexpr SandboxedUnpackerFailureReason INVALID_PATH_FOR_CATALOG_UNUSED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_INVALID_PATH_FOR_CATALOG_UNUSED;
+  static constexpr SandboxedUnpackerFailureReason ERROR_SERIALIZING_CATALOG =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SERIALIZING_CATALOG;
+  static constexpr SandboxedUnpackerFailureReason ERROR_SAVING_CATALOG =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_SAVING_CATALOG;
+  static constexpr SandboxedUnpackerFailureReason CRX_HASH_VERIFICATION_FAILED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_HASH_VERIFICATION_FAILED;
+  static constexpr SandboxedUnpackerFailureReason UNZIP_FAILED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_UNZIP_FAILED;
+  static constexpr SandboxedUnpackerFailureReason DIRECTORY_MOVE_FAILED =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_DIRECTORY_MOVE_FAILED;
+  static constexpr SandboxedUnpackerFailureReason CRX_FILE_IS_DELTA_UPDATE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_FILE_IS_DELTA_UPDATE;
+  static constexpr SandboxedUnpackerFailureReason CRX_EXPECTED_HASH_INVALID =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_EXPECTED_HASH_INVALID;
+  static constexpr SandboxedUnpackerFailureReason DEPRECATED_ERROR_PARSING_DNR_RULESET =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_DEPRECATED_ERROR_PARSING_DNR_RULESET;
+  static constexpr SandboxedUnpackerFailureReason ERROR_INDEXING_DNR_RULESET =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_ERROR_INDEXING_DNR_RULESET;
+  static constexpr SandboxedUnpackerFailureReason CRX_REQUIRED_PROOF_MISSING =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_REQUIRED_PROOF_MISSING;
+  static constexpr SandboxedUnpackerFailureReason CRX_HEADER_VERIFIED_CONTENTS_UNCOMPRESSING_FAILURE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_CRX_HEADER_VERIFIED_CONTENTS_UNCOMPRESSING_FAILURE;
+  static constexpr SandboxedUnpackerFailureReason MALFORMED_VERIFIED_CONTENTS =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_MALFORMED_VERIFIED_CONTENTS;
+  static constexpr SandboxedUnpackerFailureReason COULD_NOT_CREATE_METADATA_DIRECTORY =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_CREATE_METADATA_DIRECTORY;
+  static constexpr SandboxedUnpackerFailureReason COULD_NOT_WRITE_VERIFIED_CONTENTS_INTO_FILE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_COULD_NOT_WRITE_VERIFIED_CONTENTS_INTO_FILE;
+  static inline bool SandboxedUnpackerFailureReason_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_IsValid(value);
+  }
+  static constexpr SandboxedUnpackerFailureReason SandboxedUnpackerFailureReason_MIN =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SandboxedUnpackerFailureReason_MIN;
+  static constexpr SandboxedUnpackerFailureReason SandboxedUnpackerFailureReason_MAX =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SandboxedUnpackerFailureReason_MAX;
+  static constexpr int SandboxedUnpackerFailureReason_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_SandboxedUnpackerFailureReason_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& SandboxedUnpackerFailureReason_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, SandboxedUnpackerFailureReason>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function SandboxedUnpackerFailureReason_Name.");
+    return ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Name(enum_t_value);
+  }
+  static inline bool SandboxedUnpackerFailureReason_Parse(const std::string& name,
+      SandboxedUnpackerFailureReason* value) {
+    return ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_ManifestInvalidError ManifestInvalidError;
+  static constexpr ManifestInvalidError MANIFEST_INVALID_ERROR_UNKNOWN =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_MANIFEST_INVALID_ERROR_UNKNOWN;
+  static constexpr ManifestInvalidError XML_PARSING_FAILED =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_XML_PARSING_FAILED;
+  static constexpr ManifestInvalidError INVALID_XLMNS_ON_GUPDATE_TAG =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_XLMNS_ON_GUPDATE_TAG;
+  static constexpr ManifestInvalidError MISSING_GUPDATE_TAG =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_MISSING_GUPDATE_TAG;
+  static constexpr ManifestInvalidError INVALID_PROTOCOL_ON_GUPDATE_TAG =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_PROTOCOL_ON_GUPDATE_TAG;
+  static constexpr ManifestInvalidError MISSING_APP_ID =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_MISSING_APP_ID;
+  static constexpr ManifestInvalidError MISSING_UPDATE_CHECK_TAGS =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_MISSING_UPDATE_CHECK_TAGS;
+  static constexpr ManifestInvalidError MULTIPLE_UPDATE_CHECK_TAGS =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_MULTIPLE_UPDATE_CHECK_TAGS;
+  static constexpr ManifestInvalidError INVALID_PRODVERSION_MIN =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_PRODVERSION_MIN;
+  static constexpr ManifestInvalidError EMPTY_CODEBASE_URL =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_EMPTY_CODEBASE_URL;
+  static constexpr ManifestInvalidError INVALID_CODEBASE_URL =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_CODEBASE_URL;
+  static constexpr ManifestInvalidError MISSING_VERSION_FOR_UPDATE_CHECK =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_MISSING_VERSION_FOR_UPDATE_CHECK;
+  static constexpr ManifestInvalidError INVALID_VERSION =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_INVALID_VERSION;
+  static constexpr ManifestInvalidError BAD_UPDATE_SPECIFICATION =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_BAD_UPDATE_SPECIFICATION;
+  static constexpr ManifestInvalidError BAD_APP_STATUS =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_BAD_APP_STATUS;
+  static inline bool ManifestInvalidError_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_ManifestInvalidError_IsValid(value);
+  }
+  static constexpr ManifestInvalidError ManifestInvalidError_MIN =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_ManifestInvalidError_MIN;
+  static constexpr ManifestInvalidError ManifestInvalidError_MAX =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_ManifestInvalidError_MAX;
+  static constexpr int ManifestInvalidError_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_ManifestInvalidError_ManifestInvalidError_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ManifestInvalidError_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ManifestInvalidError>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ManifestInvalidError_Name.");
+    return ExtensionInstallReportLogEvent_ManifestInvalidError_Name(enum_t_value);
+  }
+  static inline bool ManifestInvalidError_Parse(const std::string& name,
+      ManifestInvalidError* value) {
+    return ExtensionInstallReportLogEvent_ManifestInvalidError_Parse(name, value);
+  }
+
+  typedef ExtensionInstallReportLogEvent_CrxInstallErrorDetail CrxInstallErrorDetail;
+  static constexpr CrxInstallErrorDetail CRX_INSTALL_ERROR_DETAIL_UNKNOWN =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CRX_INSTALL_ERROR_DETAIL_UNKNOWN;
+  static constexpr CrxInstallErrorDetail CONVERT_USER_SCRIPT_TO_EXTENSION_FAILED =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CONVERT_USER_SCRIPT_TO_EXTENSION_FAILED;
+  static constexpr CrxInstallErrorDetail UNEXPECTED_ID =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UNEXPECTED_ID;
+  static constexpr CrxInstallErrorDetail UNEXPECTED_VERSION =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UNEXPECTED_VERSION;
+  static constexpr CrxInstallErrorDetail MISMATCHED_VERSION =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_MISMATCHED_VERSION;
+  static constexpr CrxInstallErrorDetail CRX_ERROR_MANIFEST_INVALID =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CRX_ERROR_MANIFEST_INVALID;
+  static constexpr CrxInstallErrorDetail INSTALL_NOT_ENABLED =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_INSTALL_NOT_ENABLED;
+  static constexpr CrxInstallErrorDetail OFFSTORE_INSTALL_DISALLOWED =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_OFFSTORE_INSTALL_DISALLOWED;
+  static constexpr CrxInstallErrorDetail INCORRECT_APP_CONTENT_TYPE =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_INCORRECT_APP_CONTENT_TYPE;
+  static constexpr CrxInstallErrorDetail NOT_INSTALLED_FROM_GALLERY =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_NOT_INSTALLED_FROM_GALLERY;
+  static constexpr CrxInstallErrorDetail INCORRECT_INSTALL_HOST =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_INCORRECT_INSTALL_HOST;
+  static constexpr CrxInstallErrorDetail DEPENDENCY_NOT_SHARED_MODULE =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_DEPENDENCY_NOT_SHARED_MODULE;
+  static constexpr CrxInstallErrorDetail DEPENDENCY_OLD_VERSION =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_DEPENDENCY_OLD_VERSION;
+  static constexpr CrxInstallErrorDetail DEPENDENCY_NOT_ALLOWLISTED =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_DEPENDENCY_NOT_ALLOWLISTED;
+  static constexpr CrxInstallErrorDetail UNSUPPORTED_REQUIREMENTS =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UNSUPPORTED_REQUIREMENTS;
+  static constexpr CrxInstallErrorDetail EXTENSION_IS_BLOCKLISTED =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_EXTENSION_IS_BLOCKLISTED;
+  static constexpr CrxInstallErrorDetail DISALLOWED_BY_POLICY =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_DISALLOWED_BY_POLICY;
+  static constexpr CrxInstallErrorDetail KIOSK_MODE_ONLY =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_KIOSK_MODE_ONLY;
+  static constexpr CrxInstallErrorDetail OVERLAPPING_WEB_EXTENT =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_OVERLAPPING_WEB_EXTENT;
+  static constexpr CrxInstallErrorDetail CANT_DOWNGRADE_VERSION =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CANT_DOWNGRADE_VERSION;
+  static constexpr CrxInstallErrorDetail MOVE_DIRECTORY_TO_PROFILE_FAILED =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_MOVE_DIRECTORY_TO_PROFILE_FAILED;
+  static constexpr CrxInstallErrorDetail CANT_LOAD_EXTENSION =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CANT_LOAD_EXTENSION;
+  static constexpr CrxInstallErrorDetail USER_CANCELED =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_USER_CANCELED;
+  static constexpr CrxInstallErrorDetail USER_ABORTED =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_USER_ABORTED;
+  static constexpr CrxInstallErrorDetail UPDATE_NON_EXISTING_EXTENSION =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_UPDATE_NON_EXISTING_EXTENSION;
+  static inline bool CrxInstallErrorDetail_IsValid(int value) {
+    return ExtensionInstallReportLogEvent_CrxInstallErrorDetail_IsValid(value);
+  }
+  static constexpr CrxInstallErrorDetail CrxInstallErrorDetail_MIN =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CrxInstallErrorDetail_MIN;
+  static constexpr CrxInstallErrorDetail CrxInstallErrorDetail_MAX =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CrxInstallErrorDetail_MAX;
+  static constexpr int CrxInstallErrorDetail_ARRAYSIZE =
+    ExtensionInstallReportLogEvent_CrxInstallErrorDetail_CrxInstallErrorDetail_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& CrxInstallErrorDetail_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, CrxInstallErrorDetail>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function CrxInstallErrorDetail_Name.");
+    return ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Name(enum_t_value);
+  }
+  static inline bool CrxInstallErrorDetail_Parse(const std::string& name,
+      CrxInstallErrorDetail* value) {
+    return ExtensionInstallReportLogEvent_CrxInstallErrorDetail_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTimestampFieldNumber = 1,
+    kStatefulTotalFieldNumber = 3,
+    kStatefulFreeFieldNumber = 4,
+    kEventTypeFieldNumber = 2,
+    kSessionStateChangeTypeFieldNumber = 6,
+    kFailureReasonFieldNumber = 7,
+    kInstallationStageFieldNumber = 8,
+    kDownloadingStageFieldNumber = 9,
+    kExtensionTypeFieldNumber = 10,
+    kOnlineFieldNumber = 5,
+    kIsNewUserFieldNumber = 12,
+    kIsMisconfigurationFailureFieldNumber = 13,
+    kUserTypeFieldNumber = 11,
+    kInstallCreationStageFieldNumber = 14,
+    kDownloadCacheStatusFieldNumber = 15,
+    kUnpackerFailureReasonFieldNumber = 16,
+    kManifestInvalidErrorFieldNumber = 17,
+    kCrxInstallErrorDetailFieldNumber = 18,
+    kFetchErrorCodeFieldNumber = 19,
+    kFetchTriesFieldNumber = 20,
+  };
+  // optional int64 timestamp = 1;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 stateful_total = 3;
+  bool has_stateful_total() const;
+  private:
+  bool _internal_has_stateful_total() const;
+  public:
+  void clear_stateful_total();
+  ::PROTOBUF_NAMESPACE_ID::int64 stateful_total() const;
+  void set_stateful_total(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_stateful_total() const;
+  void _internal_set_stateful_total(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 stateful_free = 4;
+  bool has_stateful_free() const;
+  private:
+  bool _internal_has_stateful_free() const;
+  public:
+  void clear_stateful_free();
+  ::PROTOBUF_NAMESPACE_ID::int64 stateful_free() const;
+  void set_stateful_free(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_stateful_free() const;
+  void _internal_set_stateful_free(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.EventType event_type = 2;
+  bool has_event_type() const;
+  private:
+  bool _internal_has_event_type() const;
+  public:
+  void clear_event_type();
+  ::enterprise_management::ExtensionInstallReportLogEvent_EventType event_type() const;
+  void set_event_type(::enterprise_management::ExtensionInstallReportLogEvent_EventType value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_EventType _internal_event_type() const;
+  void _internal_set_event_type(::enterprise_management::ExtensionInstallReportLogEvent_EventType value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.SessionStateChangeType session_state_change_type = 6;
+  bool has_session_state_change_type() const;
+  private:
+  bool _internal_has_session_state_change_type() const;
+  public:
+  void clear_session_state_change_type();
+  ::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType session_state_change_type() const;
+  void set_session_state_change_type(::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType _internal_session_state_change_type() const;
+  void _internal_set_session_state_change_type(::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.FailureReason failure_reason = 7;
+  bool has_failure_reason() const;
+  private:
+  bool _internal_has_failure_reason() const;
+  public:
+  void clear_failure_reason();
+  ::enterprise_management::ExtensionInstallReportLogEvent_FailureReason failure_reason() const;
+  void set_failure_reason(::enterprise_management::ExtensionInstallReportLogEvent_FailureReason value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_FailureReason _internal_failure_reason() const;
+  void _internal_set_failure_reason(::enterprise_management::ExtensionInstallReportLogEvent_FailureReason value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.InstallationStage installation_stage = 8;
+  bool has_installation_stage() const;
+  private:
+  bool _internal_has_installation_stage() const;
+  public:
+  void clear_installation_stage();
+  ::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage installation_stage() const;
+  void set_installation_stage(::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage _internal_installation_stage() const;
+  void _internal_set_installation_stage(::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadingStage downloading_stage = 9;
+  bool has_downloading_stage() const;
+  private:
+  bool _internal_has_downloading_stage() const;
+  public:
+  void clear_downloading_stage();
+  ::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage downloading_stage() const;
+  void set_downloading_stage(::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage _internal_downloading_stage() const;
+  void _internal_set_downloading_stage(::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage value);
+  public:
+
+  // optional .enterprise_management.Extension.ExtensionType extension_type = 10;
+  bool has_extension_type() const;
+  private:
+  bool _internal_has_extension_type() const;
+  public:
+  void clear_extension_type();
+  ::enterprise_management::Extension_ExtensionType extension_type() const;
+  void set_extension_type(::enterprise_management::Extension_ExtensionType value);
+  private:
+  ::enterprise_management::Extension_ExtensionType _internal_extension_type() const;
+  void _internal_set_extension_type(::enterprise_management::Extension_ExtensionType value);
+  public:
+
+  // optional bool online = 5;
+  bool has_online() const;
+  private:
+  bool _internal_has_online() const;
+  public:
+  void clear_online();
+  bool online() const;
+  void set_online(bool value);
+  private:
+  bool _internal_online() const;
+  void _internal_set_online(bool value);
+  public:
+
+  // optional bool is_new_user = 12;
+  bool has_is_new_user() const;
+  private:
+  bool _internal_has_is_new_user() const;
+  public:
+  void clear_is_new_user();
+  bool is_new_user() const;
+  void set_is_new_user(bool value);
+  private:
+  bool _internal_is_new_user() const;
+  void _internal_set_is_new_user(bool value);
+  public:
+
+  // optional bool is_misconfiguration_failure = 13;
+  bool has_is_misconfiguration_failure() const;
+  private:
+  bool _internal_has_is_misconfiguration_failure() const;
+  public:
+  void clear_is_misconfiguration_failure();
+  bool is_misconfiguration_failure() const;
+  void set_is_misconfiguration_failure(bool value);
+  private:
+  bool _internal_is_misconfiguration_failure() const;
+  void _internal_set_is_misconfiguration_failure(bool value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.UserType user_type = 11;
+  bool has_user_type() const;
+  private:
+  bool _internal_has_user_type() const;
+  public:
+  void clear_user_type();
+  ::enterprise_management::ExtensionInstallReportLogEvent_UserType user_type() const;
+  void set_user_type(::enterprise_management::ExtensionInstallReportLogEvent_UserType value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_UserType _internal_user_type() const;
+  void _internal_set_user_type(::enterprise_management::ExtensionInstallReportLogEvent_UserType value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.InstallCreationStage install_creation_stage = 14;
+  bool has_install_creation_stage() const;
+  private:
+  bool _internal_has_install_creation_stage() const;
+  public:
+  void clear_install_creation_stage();
+  ::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage install_creation_stage() const;
+  void set_install_creation_stage(::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage _internal_install_creation_stage() const;
+  void _internal_set_install_creation_stage(::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadCacheStatus download_cache_status = 15;
+  bool has_download_cache_status() const;
+  private:
+  bool _internal_has_download_cache_status() const;
+  public:
+  void clear_download_cache_status();
+  ::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus download_cache_status() const;
+  void set_download_cache_status(::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus _internal_download_cache_status() const;
+  void _internal_set_download_cache_status(::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.SandboxedUnpackerFailureReason unpacker_failure_reason = 16;
+  bool has_unpacker_failure_reason() const;
+  private:
+  bool _internal_has_unpacker_failure_reason() const;
+  public:
+  void clear_unpacker_failure_reason();
+  ::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason unpacker_failure_reason() const;
+  void set_unpacker_failure_reason(::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason _internal_unpacker_failure_reason() const;
+  void _internal_set_unpacker_failure_reason(::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.ManifestInvalidError manifest_invalid_error = 17;
+  bool has_manifest_invalid_error() const;
+  private:
+  bool _internal_has_manifest_invalid_error() const;
+  public:
+  void clear_manifest_invalid_error();
+  ::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError manifest_invalid_error() const;
+  void set_manifest_invalid_error(::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError _internal_manifest_invalid_error() const;
+  void _internal_set_manifest_invalid_error(::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError value);
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportLogEvent.CrxInstallErrorDetail crx_install_error_detail = 18;
+  bool has_crx_install_error_detail() const;
+  private:
+  bool _internal_has_crx_install_error_detail() const;
+  public:
+  void clear_crx_install_error_detail();
+  ::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail crx_install_error_detail() const;
+  void set_crx_install_error_detail(::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail value);
+  private:
+  ::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail _internal_crx_install_error_detail() const;
+  void _internal_set_crx_install_error_detail(::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail value);
+  public:
+
+  // optional int32 fetch_error_code = 19;
+  bool has_fetch_error_code() const;
+  private:
+  bool _internal_has_fetch_error_code() const;
+  public:
+  void clear_fetch_error_code();
+  ::PROTOBUF_NAMESPACE_ID::int32 fetch_error_code() const;
+  void set_fetch_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_fetch_error_code() const;
+  void _internal_set_fetch_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 fetch_tries = 20;
+  bool has_fetch_tries() const;
+  private:
+  bool _internal_has_fetch_tries() const;
+  public:
+  void clear_fetch_tries();
+  ::PROTOBUF_NAMESPACE_ID::int32 fetch_tries() const;
+  void set_fetch_tries(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_fetch_tries() const;
+  void _internal_set_fetch_tries(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ExtensionInstallReportLogEvent)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int64 stateful_total_;
+  ::PROTOBUF_NAMESPACE_ID::int64 stateful_free_;
+  int event_type_;
+  int session_state_change_type_;
+  int failure_reason_;
+  int installation_stage_;
+  int downloading_stage_;
+  int extension_type_;
+  bool online_;
+  bool is_new_user_;
+  bool is_misconfiguration_failure_;
+  int user_type_;
+  int install_creation_stage_;
+  int download_cache_status_;
+  int unpacker_failure_reason_;
+  int manifest_invalid_error_;
+  int crx_install_error_detail_;
+  ::PROTOBUF_NAMESPACE_ID::int32 fetch_error_code_;
+  ::PROTOBUF_NAMESPACE_ID::int32 fetch_tries_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AppInstallReportLogEvent :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AppInstallReportLogEvent) */ {
+ public:
+  AppInstallReportLogEvent();
+  virtual ~AppInstallReportLogEvent();
+
+  AppInstallReportLogEvent(const AppInstallReportLogEvent& from);
+  AppInstallReportLogEvent(AppInstallReportLogEvent&& from) noexcept
+    : AppInstallReportLogEvent() {
+    *this = ::std::move(from);
+  }
+
+  inline AppInstallReportLogEvent& operator=(const AppInstallReportLogEvent& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AppInstallReportLogEvent& operator=(AppInstallReportLogEvent&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AppInstallReportLogEvent& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AppInstallReportLogEvent* internal_default_instance() {
+    return reinterpret_cast<const AppInstallReportLogEvent*>(
+               &_AppInstallReportLogEvent_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    144;
+
+  friend void swap(AppInstallReportLogEvent& a, AppInstallReportLogEvent& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AppInstallReportLogEvent* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AppInstallReportLogEvent* New() const final {
+    return CreateMaybeMessage<AppInstallReportLogEvent>(nullptr);
+  }
+
+  AppInstallReportLogEvent* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AppInstallReportLogEvent>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AppInstallReportLogEvent& from);
+  void MergeFrom(const AppInstallReportLogEvent& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AppInstallReportLogEvent* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AppInstallReportLogEvent";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef AppInstallReportLogEvent_EventType EventType;
+  static constexpr EventType LOG_EVENT_TYPE_UNKNOWN =
+    AppInstallReportLogEvent_EventType_LOG_EVENT_TYPE_UNKNOWN;
+  static constexpr EventType SERVER_REQUEST =
+    AppInstallReportLogEvent_EventType_SERVER_REQUEST;
+  static constexpr EventType CLOUDDPC_REQUEST =
+    AppInstallReportLogEvent_EventType_CLOUDDPC_REQUEST;
+  static constexpr EventType CLOUDDPS_REQUEST =
+    AppInstallReportLogEvent_EventType_CLOUDDPS_REQUEST;
+  static constexpr EventType CLOUDDPS_RESPONSE =
+    AppInstallReportLogEvent_EventType_CLOUDDPS_RESPONSE;
+  static constexpr EventType PHONESKY_LOG =
+    AppInstallReportLogEvent_EventType_PHONESKY_LOG;
+  static constexpr EventType SUCCESS =
+    AppInstallReportLogEvent_EventType_SUCCESS;
+  static constexpr EventType CANCELED =
+    AppInstallReportLogEvent_EventType_CANCELED;
+  static constexpr EventType CONNECTIVITY_CHANGE =
+    AppInstallReportLogEvent_EventType_CONNECTIVITY_CHANGE;
+  static constexpr EventType SESSION_STATE_CHANGE =
+    AppInstallReportLogEvent_EventType_SESSION_STATE_CHANGE;
+  static constexpr EventType INSTALLATION_STARTED =
+    AppInstallReportLogEvent_EventType_INSTALLATION_STARTED;
+  static constexpr EventType INSTALLATION_FINISHED =
+    AppInstallReportLogEvent_EventType_INSTALLATION_FINISHED;
+  static constexpr EventType INSTALLATION_FAILED =
+    AppInstallReportLogEvent_EventType_INSTALLATION_FAILED;
+  static constexpr EventType DIRECT_INSTALL =
+    AppInstallReportLogEvent_EventType_DIRECT_INSTALL;
+  static constexpr EventType CLOUDDPC_MAIN_LOOP_FAILED =
+    AppInstallReportLogEvent_EventType_CLOUDDPC_MAIN_LOOP_FAILED;
+  static inline bool EventType_IsValid(int value) {
+    return AppInstallReportLogEvent_EventType_IsValid(value);
+  }
+  static constexpr EventType EventType_MIN =
+    AppInstallReportLogEvent_EventType_EventType_MIN;
+  static constexpr EventType EventType_MAX =
+    AppInstallReportLogEvent_EventType_EventType_MAX;
+  static constexpr int EventType_ARRAYSIZE =
+    AppInstallReportLogEvent_EventType_EventType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& EventType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, EventType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function EventType_Name.");
+    return AppInstallReportLogEvent_EventType_Name(enum_t_value);
+  }
+  static inline bool EventType_Parse(const std::string& name,
+      EventType* value) {
+    return AppInstallReportLogEvent_EventType_Parse(name, value);
+  }
+
+  typedef AppInstallReportLogEvent_SessionStateChangeType SessionStateChangeType;
+  static constexpr SessionStateChangeType SESSION_STATE_CHANGE_TYPE_UNKNOWN =
+    AppInstallReportLogEvent_SessionStateChangeType_SESSION_STATE_CHANGE_TYPE_UNKNOWN;
+  static constexpr SessionStateChangeType LOGIN =
+    AppInstallReportLogEvent_SessionStateChangeType_LOGIN;
+  static constexpr SessionStateChangeType LOGOUT =
+    AppInstallReportLogEvent_SessionStateChangeType_LOGOUT;
+  static constexpr SessionStateChangeType SUSPEND =
+    AppInstallReportLogEvent_SessionStateChangeType_SUSPEND;
+  static constexpr SessionStateChangeType RESUME =
+    AppInstallReportLogEvent_SessionStateChangeType_RESUME;
+  static inline bool SessionStateChangeType_IsValid(int value) {
+    return AppInstallReportLogEvent_SessionStateChangeType_IsValid(value);
+  }
+  static constexpr SessionStateChangeType SessionStateChangeType_MIN =
+    AppInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MIN;
+  static constexpr SessionStateChangeType SessionStateChangeType_MAX =
+    AppInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_MAX;
+  static constexpr int SessionStateChangeType_ARRAYSIZE =
+    AppInstallReportLogEvent_SessionStateChangeType_SessionStateChangeType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& SessionStateChangeType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, SessionStateChangeType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function SessionStateChangeType_Name.");
+    return AppInstallReportLogEvent_SessionStateChangeType_Name(enum_t_value);
+  }
+  static inline bool SessionStateChangeType_Parse(const std::string& name,
+      SessionStateChangeType* value) {
+    return AppInstallReportLogEvent_SessionStateChangeType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPhoneskyLogFieldNumber = 6,
+    kTimestampFieldNumber = 1,
+    kStatefulTotalFieldNumber = 3,
+    kEventTypeFieldNumber = 2,
+    kClouddpsResponseFieldNumber = 5,
+    kStatefulFreeFieldNumber = 4,
+    kOnlineFieldNumber = 7,
+    kSessionStateChangeTypeFieldNumber = 8,
+    kAndroidIdFieldNumber = 9,
+  };
+  // optional string phonesky_log = 6;
+  bool has_phonesky_log() const;
+  private:
+  bool _internal_has_phonesky_log() const;
+  public:
+  void clear_phonesky_log();
+  const std::string& phonesky_log() const;
+  void set_phonesky_log(const std::string& value);
+  void set_phonesky_log(std::string&& value);
+  void set_phonesky_log(const char* value);
+  void set_phonesky_log(const char* value, size_t size);
+  std::string* mutable_phonesky_log();
+  std::string* release_phonesky_log();
+  void set_allocated_phonesky_log(std::string* phonesky_log);
+  private:
+  const std::string& _internal_phonesky_log() const;
+  void _internal_set_phonesky_log(const std::string& value);
+  std::string* _internal_mutable_phonesky_log();
+  public:
+
+  // optional int64 timestamp = 1;
+  bool has_timestamp() const;
+  private:
+  bool _internal_has_timestamp() const;
+  public:
+  void clear_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp() const;
+  void set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp() const;
+  void _internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 stateful_total = 3;
+  bool has_stateful_total() const;
+  private:
+  bool _internal_has_stateful_total() const;
+  public:
+  void clear_stateful_total();
+  ::PROTOBUF_NAMESPACE_ID::int64 stateful_total() const;
+  void set_stateful_total(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_stateful_total() const;
+  void _internal_set_stateful_total(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.AppInstallReportLogEvent.EventType event_type = 2;
+  bool has_event_type() const;
+  private:
+  bool _internal_has_event_type() const;
+  public:
+  void clear_event_type();
+  ::enterprise_management::AppInstallReportLogEvent_EventType event_type() const;
+  void set_event_type(::enterprise_management::AppInstallReportLogEvent_EventType value);
+  private:
+  ::enterprise_management::AppInstallReportLogEvent_EventType _internal_event_type() const;
+  void _internal_set_event_type(::enterprise_management::AppInstallReportLogEvent_EventType value);
+  public:
+
+  // optional int32 clouddps_response = 5;
+  bool has_clouddps_response() const;
+  private:
+  bool _internal_has_clouddps_response() const;
+  public:
+  void clear_clouddps_response();
+  ::PROTOBUF_NAMESPACE_ID::int32 clouddps_response() const;
+  void set_clouddps_response(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_clouddps_response() const;
+  void _internal_set_clouddps_response(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int64 stateful_free = 4;
+  bool has_stateful_free() const;
+  private:
+  bool _internal_has_stateful_free() const;
+  public:
+  void clear_stateful_free();
+  ::PROTOBUF_NAMESPACE_ID::int64 stateful_free() const;
+  void set_stateful_free(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_stateful_free() const;
+  void _internal_set_stateful_free(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional bool online = 7;
+  bool has_online() const;
+  private:
+  bool _internal_has_online() const;
+  public:
+  void clear_online();
+  bool online() const;
+  void set_online(bool value);
+  private:
+  bool _internal_online() const;
+  void _internal_set_online(bool value);
+  public:
+
+  // optional .enterprise_management.AppInstallReportLogEvent.SessionStateChangeType session_state_change_type = 8;
+  bool has_session_state_change_type() const;
+  private:
+  bool _internal_has_session_state_change_type() const;
+  public:
+  void clear_session_state_change_type();
+  ::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType session_state_change_type() const;
+  void set_session_state_change_type(::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType value);
+  private:
+  ::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType _internal_session_state_change_type() const;
+  void _internal_set_session_state_change_type(::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType value);
+  public:
+
+  // optional int64 android_id = 9;
+  bool has_android_id() const;
+  private:
+  bool _internal_has_android_id() const;
+  public:
+  void clear_android_id();
+  ::PROTOBUF_NAMESPACE_ID::int64 android_id() const;
+  void set_android_id(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_android_id() const;
+  void _internal_set_android_id(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AppInstallReportLogEvent)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr phonesky_log_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int64 stateful_total_;
+  int event_type_;
+  ::PROTOBUF_NAMESPACE_ID::int32 clouddps_response_;
+  ::PROTOBUF_NAMESPACE_ID::int64 stateful_free_;
+  bool online_;
+  int session_state_change_type_;
+  ::PROTOBUF_NAMESPACE_ID::int64 android_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ExtensionInstallReport :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ExtensionInstallReport) */ {
+ public:
+  ExtensionInstallReport();
+  virtual ~ExtensionInstallReport();
+
+  ExtensionInstallReport(const ExtensionInstallReport& from);
+  ExtensionInstallReport(ExtensionInstallReport&& from) noexcept
+    : ExtensionInstallReport() {
+    *this = ::std::move(from);
+  }
+
+  inline ExtensionInstallReport& operator=(const ExtensionInstallReport& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ExtensionInstallReport& operator=(ExtensionInstallReport&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ExtensionInstallReport& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ExtensionInstallReport* internal_default_instance() {
+    return reinterpret_cast<const ExtensionInstallReport*>(
+               &_ExtensionInstallReport_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    145;
+
+  friend void swap(ExtensionInstallReport& a, ExtensionInstallReport& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ExtensionInstallReport* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ExtensionInstallReport* New() const final {
+    return CreateMaybeMessage<ExtensionInstallReport>(nullptr);
+  }
+
+  ExtensionInstallReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ExtensionInstallReport>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ExtensionInstallReport& from);
+  void MergeFrom(const ExtensionInstallReport& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ExtensionInstallReport* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ExtensionInstallReport";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLogsFieldNumber = 3,
+    kExtensionIdFieldNumber = 1,
+    kIncompleteFieldNumber = 2,
+  };
+  // repeated .enterprise_management.ExtensionInstallReportLogEvent logs = 3;
+  int logs_size() const;
+  private:
+  int _internal_logs_size() const;
+  public:
+  void clear_logs();
+  ::enterprise_management::ExtensionInstallReportLogEvent* mutable_logs(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReportLogEvent >*
+      mutable_logs();
+  private:
+  const ::enterprise_management::ExtensionInstallReportLogEvent& _internal_logs(int index) const;
+  ::enterprise_management::ExtensionInstallReportLogEvent* _internal_add_logs();
+  public:
+  const ::enterprise_management::ExtensionInstallReportLogEvent& logs(int index) const;
+  ::enterprise_management::ExtensionInstallReportLogEvent* add_logs();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReportLogEvent >&
+      logs() const;
+
+  // optional string extension_id = 1;
+  bool has_extension_id() const;
+  private:
+  bool _internal_has_extension_id() const;
+  public:
+  void clear_extension_id();
+  const std::string& extension_id() const;
+  void set_extension_id(const std::string& value);
+  void set_extension_id(std::string&& value);
+  void set_extension_id(const char* value);
+  void set_extension_id(const char* value, size_t size);
+  std::string* mutable_extension_id();
+  std::string* release_extension_id();
+  void set_allocated_extension_id(std::string* extension_id);
+  private:
+  const std::string& _internal_extension_id() const;
+  void _internal_set_extension_id(const std::string& value);
+  std::string* _internal_mutable_extension_id();
+  public:
+
+  // optional bool incomplete = 2;
+  bool has_incomplete() const;
+  private:
+  bool _internal_has_incomplete() const;
+  public:
+  void clear_incomplete();
+  bool incomplete() const;
+  void set_incomplete(bool value);
+  private:
+  bool _internal_incomplete() const;
+  void _internal_set_incomplete(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ExtensionInstallReport)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReportLogEvent > logs_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr extension_id_;
+  bool incomplete_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AppInstallReport :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AppInstallReport) */ {
+ public:
+  AppInstallReport();
+  virtual ~AppInstallReport();
+
+  AppInstallReport(const AppInstallReport& from);
+  AppInstallReport(AppInstallReport&& from) noexcept
+    : AppInstallReport() {
+    *this = ::std::move(from);
+  }
+
+  inline AppInstallReport& operator=(const AppInstallReport& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AppInstallReport& operator=(AppInstallReport&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AppInstallReport& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AppInstallReport* internal_default_instance() {
+    return reinterpret_cast<const AppInstallReport*>(
+               &_AppInstallReport_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    146;
+
+  friend void swap(AppInstallReport& a, AppInstallReport& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AppInstallReport* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AppInstallReport* New() const final {
+    return CreateMaybeMessage<AppInstallReport>(nullptr);
+  }
+
+  AppInstallReport* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AppInstallReport>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AppInstallReport& from);
+  void MergeFrom(const AppInstallReport& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AppInstallReport* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AppInstallReport";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLogsFieldNumber = 3,
+    kPackageFieldNumber = 1,
+    kIncompleteFieldNumber = 2,
+  };
+  // repeated .enterprise_management.AppInstallReportLogEvent logs = 3;
+  int logs_size() const;
+  private:
+  int _internal_logs_size() const;
+  public:
+  void clear_logs();
+  ::enterprise_management::AppInstallReportLogEvent* mutable_logs(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReportLogEvent >*
+      mutable_logs();
+  private:
+  const ::enterprise_management::AppInstallReportLogEvent& _internal_logs(int index) const;
+  ::enterprise_management::AppInstallReportLogEvent* _internal_add_logs();
+  public:
+  const ::enterprise_management::AppInstallReportLogEvent& logs(int index) const;
+  ::enterprise_management::AppInstallReportLogEvent* add_logs();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReportLogEvent >&
+      logs() const;
+
+  // optional string package = 1;
+  bool has_package() const;
+  private:
+  bool _internal_has_package() const;
+  public:
+  void clear_package();
+  const std::string& package() const;
+  void set_package(const std::string& value);
+  void set_package(std::string&& value);
+  void set_package(const char* value);
+  void set_package(const char* value, size_t size);
+  std::string* mutable_package();
+  std::string* release_package();
+  void set_allocated_package(std::string* package);
+  private:
+  const std::string& _internal_package() const;
+  void _internal_set_package(const std::string& value);
+  std::string* _internal_mutable_package();
+  public:
+
+  // optional bool incomplete = 2;
+  bool has_incomplete() const;
+  private:
+  bool _internal_has_incomplete() const;
+  public:
+  void clear_incomplete();
+  bool incomplete() const;
+  void set_incomplete(bool value);
+  private:
+  bool _internal_incomplete() const;
+  void _internal_set_incomplete(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AppInstallReport)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReportLogEvent > logs_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr package_;
+  bool incomplete_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AppInstallReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AppInstallReportRequest) */ {
+ public:
+  AppInstallReportRequest();
+  virtual ~AppInstallReportRequest();
+
+  AppInstallReportRequest(const AppInstallReportRequest& from);
+  AppInstallReportRequest(AppInstallReportRequest&& from) noexcept
+    : AppInstallReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline AppInstallReportRequest& operator=(const AppInstallReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AppInstallReportRequest& operator=(AppInstallReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AppInstallReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AppInstallReportRequest* internal_default_instance() {
+    return reinterpret_cast<const AppInstallReportRequest*>(
+               &_AppInstallReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    147;
+
+  friend void swap(AppInstallReportRequest& a, AppInstallReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AppInstallReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AppInstallReportRequest* New() const final {
+    return CreateMaybeMessage<AppInstallReportRequest>(nullptr);
+  }
+
+  AppInstallReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AppInstallReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AppInstallReportRequest& from);
+  void MergeFrom(const AppInstallReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AppInstallReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AppInstallReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAppInstallReportsFieldNumber = 1,
+  };
+  // repeated .enterprise_management.AppInstallReport app_install_reports = 1;
+  int app_install_reports_size() const;
+  private:
+  int _internal_app_install_reports_size() const;
+  public:
+  void clear_app_install_reports();
+  ::enterprise_management::AppInstallReport* mutable_app_install_reports(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReport >*
+      mutable_app_install_reports();
+  private:
+  const ::enterprise_management::AppInstallReport& _internal_app_install_reports(int index) const;
+  ::enterprise_management::AppInstallReport* _internal_add_app_install_reports();
+  public:
+  const ::enterprise_management::AppInstallReport& app_install_reports(int index) const;
+  ::enterprise_management::AppInstallReport* add_app_install_reports();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReport >&
+      app_install_reports() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AppInstallReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReport > app_install_reports_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ExtensionInstallReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ExtensionInstallReportRequest) */ {
+ public:
+  ExtensionInstallReportRequest();
+  virtual ~ExtensionInstallReportRequest();
+
+  ExtensionInstallReportRequest(const ExtensionInstallReportRequest& from);
+  ExtensionInstallReportRequest(ExtensionInstallReportRequest&& from) noexcept
+    : ExtensionInstallReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ExtensionInstallReportRequest& operator=(const ExtensionInstallReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ExtensionInstallReportRequest& operator=(ExtensionInstallReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ExtensionInstallReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ExtensionInstallReportRequest* internal_default_instance() {
+    return reinterpret_cast<const ExtensionInstallReportRequest*>(
+               &_ExtensionInstallReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    148;
+
+  friend void swap(ExtensionInstallReportRequest& a, ExtensionInstallReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ExtensionInstallReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ExtensionInstallReportRequest* New() const final {
+    return CreateMaybeMessage<ExtensionInstallReportRequest>(nullptr);
+  }
+
+  ExtensionInstallReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ExtensionInstallReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ExtensionInstallReportRequest& from);
+  void MergeFrom(const ExtensionInstallReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ExtensionInstallReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ExtensionInstallReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kExtensionInstallReportsFieldNumber = 1,
+  };
+  // repeated .enterprise_management.ExtensionInstallReport extension_install_reports = 1;
+  int extension_install_reports_size() const;
+  private:
+  int _internal_extension_install_reports_size() const;
+  public:
+  void clear_extension_install_reports();
+  ::enterprise_management::ExtensionInstallReport* mutable_extension_install_reports(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReport >*
+      mutable_extension_install_reports();
+  private:
+  const ::enterprise_management::ExtensionInstallReport& _internal_extension_install_reports(int index) const;
+  ::enterprise_management::ExtensionInstallReport* _internal_add_extension_install_reports();
+  public:
+  const ::enterprise_management::ExtensionInstallReport& extension_install_reports(int index) const;
+  ::enterprise_management::ExtensionInstallReport* add_extension_install_reports();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReport >&
+      extension_install_reports() const;
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ExtensionInstallReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReport > extension_install_reports_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AppInstallReportResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AppInstallReportResponse) */ {
+ public:
+  AppInstallReportResponse();
+  virtual ~AppInstallReportResponse();
+
+  AppInstallReportResponse(const AppInstallReportResponse& from);
+  AppInstallReportResponse(AppInstallReportResponse&& from) noexcept
+    : AppInstallReportResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline AppInstallReportResponse& operator=(const AppInstallReportResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AppInstallReportResponse& operator=(AppInstallReportResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AppInstallReportResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AppInstallReportResponse* internal_default_instance() {
+    return reinterpret_cast<const AppInstallReportResponse*>(
+               &_AppInstallReportResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    149;
+
+  friend void swap(AppInstallReportResponse& a, AppInstallReportResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AppInstallReportResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AppInstallReportResponse* New() const final {
+    return CreateMaybeMessage<AppInstallReportResponse>(nullptr);
+  }
+
+  AppInstallReportResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AppInstallReportResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AppInstallReportResponse& from);
+  void MergeFrom(const AppInstallReportResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AppInstallReportResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AppInstallReportResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AppInstallReportResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RefreshAccountRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RefreshAccountRequest) */ {
+ public:
+  RefreshAccountRequest();
+  virtual ~RefreshAccountRequest();
+
+  RefreshAccountRequest(const RefreshAccountRequest& from);
+  RefreshAccountRequest(RefreshAccountRequest&& from) noexcept
+    : RefreshAccountRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline RefreshAccountRequest& operator=(const RefreshAccountRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RefreshAccountRequest& operator=(RefreshAccountRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RefreshAccountRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RefreshAccountRequest* internal_default_instance() {
+    return reinterpret_cast<const RefreshAccountRequest*>(
+               &_RefreshAccountRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    150;
+
+  friend void swap(RefreshAccountRequest& a, RefreshAccountRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RefreshAccountRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RefreshAccountRequest* New() const final {
+    return CreateMaybeMessage<RefreshAccountRequest>(nullptr);
+  }
+
+  RefreshAccountRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RefreshAccountRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RefreshAccountRequest& from);
+  void MergeFrom(const RefreshAccountRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RefreshAccountRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RefreshAccountRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef RefreshAccountRequest_AccountType AccountType;
+  static constexpr AccountType ACCOUNT_TYPE_UNSPECIFIED =
+    RefreshAccountRequest_AccountType_ACCOUNT_TYPE_UNSPECIFIED;
+  static constexpr AccountType CHROME_OS_DEMO_MODE =
+    RefreshAccountRequest_AccountType_CHROME_OS_DEMO_MODE;
+  static inline bool AccountType_IsValid(int value) {
+    return RefreshAccountRequest_AccountType_IsValid(value);
+  }
+  static constexpr AccountType AccountType_MIN =
+    RefreshAccountRequest_AccountType_AccountType_MIN;
+  static constexpr AccountType AccountType_MAX =
+    RefreshAccountRequest_AccountType_AccountType_MAX;
+  static constexpr int AccountType_ARRAYSIZE =
+    RefreshAccountRequest_AccountType_AccountType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AccountType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AccountType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AccountType_Name.");
+    return RefreshAccountRequest_AccountType_Name(enum_t_value);
+  }
+  static inline bool AccountType_Parse(const std::string& name,
+      AccountType* value) {
+    return RefreshAccountRequest_AccountType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAccountTypeFieldNumber = 1,
+  };
+  // optional .enterprise_management.RefreshAccountRequest.AccountType account_type = 1;
+  bool has_account_type() const;
+  private:
+  bool _internal_has_account_type() const;
+  public:
+  void clear_account_type();
+  ::enterprise_management::RefreshAccountRequest_AccountType account_type() const;
+  void set_account_type(::enterprise_management::RefreshAccountRequest_AccountType value);
+  private:
+  ::enterprise_management::RefreshAccountRequest_AccountType _internal_account_type() const;
+  void _internal_set_account_type(::enterprise_management::RefreshAccountRequest_AccountType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RefreshAccountRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int account_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RefreshAccountResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RefreshAccountResponse) */ {
+ public:
+  RefreshAccountResponse();
+  virtual ~RefreshAccountResponse();
+
+  RefreshAccountResponse(const RefreshAccountResponse& from);
+  RefreshAccountResponse(RefreshAccountResponse&& from) noexcept
+    : RefreshAccountResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline RefreshAccountResponse& operator=(const RefreshAccountResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RefreshAccountResponse& operator=(RefreshAccountResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RefreshAccountResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RefreshAccountResponse* internal_default_instance() {
+    return reinterpret_cast<const RefreshAccountResponse*>(
+               &_RefreshAccountResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    151;
+
+  friend void swap(RefreshAccountResponse& a, RefreshAccountResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RefreshAccountResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RefreshAccountResponse* New() const final {
+    return CreateMaybeMessage<RefreshAccountResponse>(nullptr);
+  }
+
+  RefreshAccountResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RefreshAccountResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RefreshAccountResponse& from);
+  void MergeFrom(const RefreshAccountResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RefreshAccountResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RefreshAccountResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RefreshAccountResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RsuLookupKeyUploadRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RsuLookupKeyUploadRequest) */ {
+ public:
+  RsuLookupKeyUploadRequest();
+  virtual ~RsuLookupKeyUploadRequest();
+
+  RsuLookupKeyUploadRequest(const RsuLookupKeyUploadRequest& from);
+  RsuLookupKeyUploadRequest(RsuLookupKeyUploadRequest&& from) noexcept
+    : RsuLookupKeyUploadRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline RsuLookupKeyUploadRequest& operator=(const RsuLookupKeyUploadRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RsuLookupKeyUploadRequest& operator=(RsuLookupKeyUploadRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RsuLookupKeyUploadRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RsuLookupKeyUploadRequest* internal_default_instance() {
+    return reinterpret_cast<const RsuLookupKeyUploadRequest*>(
+               &_RsuLookupKeyUploadRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    152;
+
+  friend void swap(RsuLookupKeyUploadRequest& a, RsuLookupKeyUploadRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RsuLookupKeyUploadRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RsuLookupKeyUploadRequest* New() const final {
+    return CreateMaybeMessage<RsuLookupKeyUploadRequest>(nullptr);
+  }
+
+  RsuLookupKeyUploadRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RsuLookupKeyUploadRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RsuLookupKeyUploadRequest& from);
+  void MergeFrom(const RsuLookupKeyUploadRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RsuLookupKeyUploadRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RsuLookupKeyUploadRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBoardIdFieldNumber = 1,
+    kCr50HashedDeviceIdFieldNumber = 2,
+  };
+  // optional bytes board_id = 1;
+  bool has_board_id() const;
+  private:
+  bool _internal_has_board_id() const;
+  public:
+  void clear_board_id();
+  const std::string& board_id() const;
+  void set_board_id(const std::string& value);
+  void set_board_id(std::string&& value);
+  void set_board_id(const char* value);
+  void set_board_id(const void* value, size_t size);
+  std::string* mutable_board_id();
+  std::string* release_board_id();
+  void set_allocated_board_id(std::string* board_id);
+  private:
+  const std::string& _internal_board_id() const;
+  void _internal_set_board_id(const std::string& value);
+  std::string* _internal_mutable_board_id();
+  public:
+
+  // optional bytes cr50_hashed_device_id = 2;
+  bool has_cr50_hashed_device_id() const;
+  private:
+  bool _internal_has_cr50_hashed_device_id() const;
+  public:
+  void clear_cr50_hashed_device_id();
+  const std::string& cr50_hashed_device_id() const;
+  void set_cr50_hashed_device_id(const std::string& value);
+  void set_cr50_hashed_device_id(std::string&& value);
+  void set_cr50_hashed_device_id(const char* value);
+  void set_cr50_hashed_device_id(const void* value, size_t size);
+  std::string* mutable_cr50_hashed_device_id();
+  std::string* release_cr50_hashed_device_id();
+  void set_allocated_cr50_hashed_device_id(std::string* cr50_hashed_device_id);
+  private:
+  const std::string& _internal_cr50_hashed_device_id() const;
+  void _internal_set_cr50_hashed_device_id(const std::string& value);
+  std::string* _internal_mutable_cr50_hashed_device_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RsuLookupKeyUploadRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr board_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cr50_hashed_device_id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RsuLookupKeyUploadResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.RsuLookupKeyUploadResponse) */ {
+ public:
+  RsuLookupKeyUploadResponse();
+  virtual ~RsuLookupKeyUploadResponse();
+
+  RsuLookupKeyUploadResponse(const RsuLookupKeyUploadResponse& from);
+  RsuLookupKeyUploadResponse(RsuLookupKeyUploadResponse&& from) noexcept
+    : RsuLookupKeyUploadResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline RsuLookupKeyUploadResponse& operator=(const RsuLookupKeyUploadResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RsuLookupKeyUploadResponse& operator=(RsuLookupKeyUploadResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const RsuLookupKeyUploadResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RsuLookupKeyUploadResponse* internal_default_instance() {
+    return reinterpret_cast<const RsuLookupKeyUploadResponse*>(
+               &_RsuLookupKeyUploadResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    153;
+
+  friend void swap(RsuLookupKeyUploadResponse& a, RsuLookupKeyUploadResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RsuLookupKeyUploadResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RsuLookupKeyUploadResponse* New() const final {
+    return CreateMaybeMessage<RsuLookupKeyUploadResponse>(nullptr);
+  }
+
+  RsuLookupKeyUploadResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RsuLookupKeyUploadResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RsuLookupKeyUploadResponse& from);
+  void MergeFrom(const RsuLookupKeyUploadResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RsuLookupKeyUploadResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.RsuLookupKeyUploadResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRsuLookupKeyUpdatedFieldNumber = 1,
+  };
+  // optional bool rsu_lookup_key_updated = 1;
+  bool has_rsu_lookup_key_updated() const;
+  private:
+  bool _internal_has_rsu_lookup_key_updated() const;
+  public:
+  void clear_rsu_lookup_key_updated();
+  bool rsu_lookup_key_updated() const;
+  void set_rsu_lookup_key_updated(bool value);
+  private:
+  bool _internal_rsu_lookup_key_updated() const;
+  void _internal_set_rsu_lookup_key_updated(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.RsuLookupKeyUploadResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool rsu_lookup_key_updated_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ESimProfileInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ESimProfileInfo) */ {
+ public:
+  ESimProfileInfo();
+  virtual ~ESimProfileInfo();
+
+  ESimProfileInfo(const ESimProfileInfo& from);
+  ESimProfileInfo(ESimProfileInfo&& from) noexcept
+    : ESimProfileInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline ESimProfileInfo& operator=(const ESimProfileInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ESimProfileInfo& operator=(ESimProfileInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ESimProfileInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ESimProfileInfo* internal_default_instance() {
+    return reinterpret_cast<const ESimProfileInfo*>(
+               &_ESimProfileInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    154;
+
+  friend void swap(ESimProfileInfo& a, ESimProfileInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ESimProfileInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ESimProfileInfo* New() const final {
+    return CreateMaybeMessage<ESimProfileInfo>(nullptr);
+  }
+
+  ESimProfileInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ESimProfileInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ESimProfileInfo& from);
+  void MergeFrom(const ESimProfileInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ESimProfileInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ESimProfileInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kIccidFieldNumber = 1,
+    kSmdpAddressFieldNumber = 2,
+  };
+  // optional string iccid = 1;
+  bool has_iccid() const;
+  private:
+  bool _internal_has_iccid() const;
+  public:
+  void clear_iccid();
+  const std::string& iccid() const;
+  void set_iccid(const std::string& value);
+  void set_iccid(std::string&& value);
+  void set_iccid(const char* value);
+  void set_iccid(const char* value, size_t size);
+  std::string* mutable_iccid();
+  std::string* release_iccid();
+  void set_allocated_iccid(std::string* iccid);
+  private:
+  const std::string& _internal_iccid() const;
+  void _internal_set_iccid(const std::string& value);
+  std::string* _internal_mutable_iccid();
+  public:
+
+  // optional string smdp_address = 2;
+  bool has_smdp_address() const;
+  private:
+  bool _internal_has_smdp_address() const;
+  public:
+  void clear_smdp_address();
+  const std::string& smdp_address() const;
+  void set_smdp_address(const std::string& value);
+  void set_smdp_address(std::string&& value);
+  void set_smdp_address(const char* value);
+  void set_smdp_address(const char* value, size_t size);
+  std::string* mutable_smdp_address();
+  std::string* release_smdp_address();
+  void set_allocated_smdp_address(std::string* smdp_address);
+  private:
+  const std::string& _internal_smdp_address() const;
+  void _internal_set_smdp_address(const std::string& value);
+  std::string* _internal_mutable_smdp_address();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ESimProfileInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr iccid_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr smdp_address_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UploadEuiccInfoRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UploadEuiccInfoRequest) */ {
+ public:
+  UploadEuiccInfoRequest();
+  virtual ~UploadEuiccInfoRequest();
+
+  UploadEuiccInfoRequest(const UploadEuiccInfoRequest& from);
+  UploadEuiccInfoRequest(UploadEuiccInfoRequest&& from) noexcept
+    : UploadEuiccInfoRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline UploadEuiccInfoRequest& operator=(const UploadEuiccInfoRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UploadEuiccInfoRequest& operator=(UploadEuiccInfoRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UploadEuiccInfoRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UploadEuiccInfoRequest* internal_default_instance() {
+    return reinterpret_cast<const UploadEuiccInfoRequest*>(
+               &_UploadEuiccInfoRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    155;
+
+  friend void swap(UploadEuiccInfoRequest& a, UploadEuiccInfoRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UploadEuiccInfoRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UploadEuiccInfoRequest* New() const final {
+    return CreateMaybeMessage<UploadEuiccInfoRequest>(nullptr);
+  }
+
+  UploadEuiccInfoRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UploadEuiccInfoRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UploadEuiccInfoRequest& from);
+  void MergeFrom(const UploadEuiccInfoRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UploadEuiccInfoRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UploadEuiccInfoRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEsimProfilesFieldNumber = 2,
+    kEuiccCountFieldNumber = 1,
+    kClearProfileListFieldNumber = 3,
+  };
+  // repeated .enterprise_management.ESimProfileInfo esim_profiles = 2;
+  int esim_profiles_size() const;
+  private:
+  int _internal_esim_profiles_size() const;
+  public:
+  void clear_esim_profiles();
+  ::enterprise_management::ESimProfileInfo* mutable_esim_profiles(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ESimProfileInfo >*
+      mutable_esim_profiles();
+  private:
+  const ::enterprise_management::ESimProfileInfo& _internal_esim_profiles(int index) const;
+  ::enterprise_management::ESimProfileInfo* _internal_add_esim_profiles();
+  public:
+  const ::enterprise_management::ESimProfileInfo& esim_profiles(int index) const;
+  ::enterprise_management::ESimProfileInfo* add_esim_profiles();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ESimProfileInfo >&
+      esim_profiles() const;
+
+  // optional uint32 euicc_count = 1;
+  bool has_euicc_count() const;
+  private:
+  bool _internal_has_euicc_count() const;
+  public:
+  void clear_euicc_count();
+  ::PROTOBUF_NAMESPACE_ID::uint32 euicc_count() const;
+  void set_euicc_count(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_euicc_count() const;
+  void _internal_set_euicc_count(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional bool clear_profile_list = 3;
+  bool has_clear_profile_list() const;
+  private:
+  bool _internal_has_clear_profile_list() const;
+  public:
+  void clear_clear_profile_list();
+  bool clear_profile_list() const;
+  void set_clear_profile_list(bool value);
+  private:
+  bool _internal_clear_profile_list() const;
+  void _internal_set_clear_profile_list(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UploadEuiccInfoRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ESimProfileInfo > esim_profiles_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 euicc_count_;
+  bool clear_profile_list_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class UploadEuiccInfoResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.UploadEuiccInfoResponse) */ {
+ public:
+  UploadEuiccInfoResponse();
+  virtual ~UploadEuiccInfoResponse();
+
+  UploadEuiccInfoResponse(const UploadEuiccInfoResponse& from);
+  UploadEuiccInfoResponse(UploadEuiccInfoResponse&& from) noexcept
+    : UploadEuiccInfoResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline UploadEuiccInfoResponse& operator=(const UploadEuiccInfoResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UploadEuiccInfoResponse& operator=(UploadEuiccInfoResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UploadEuiccInfoResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UploadEuiccInfoResponse* internal_default_instance() {
+    return reinterpret_cast<const UploadEuiccInfoResponse*>(
+               &_UploadEuiccInfoResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    156;
+
+  friend void swap(UploadEuiccInfoResponse& a, UploadEuiccInfoResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UploadEuiccInfoResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UploadEuiccInfoResponse* New() const final {
+    return CreateMaybeMessage<UploadEuiccInfoResponse>(nullptr);
+  }
+
+  UploadEuiccInfoResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UploadEuiccInfoResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UploadEuiccInfoResponse& from);
+  void MergeFrom(const UploadEuiccInfoResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UploadEuiccInfoResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.UploadEuiccInfoResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.UploadEuiccInfoResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrintJobEvent_PrintJobConfiguration :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrintJobEvent.PrintJobConfiguration) */ {
+ public:
+  PrintJobEvent_PrintJobConfiguration();
+  virtual ~PrintJobEvent_PrintJobConfiguration();
+
+  PrintJobEvent_PrintJobConfiguration(const PrintJobEvent_PrintJobConfiguration& from);
+  PrintJobEvent_PrintJobConfiguration(PrintJobEvent_PrintJobConfiguration&& from) noexcept
+    : PrintJobEvent_PrintJobConfiguration() {
+    *this = ::std::move(from);
+  }
+
+  inline PrintJobEvent_PrintJobConfiguration& operator=(const PrintJobEvent_PrintJobConfiguration& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrintJobEvent_PrintJobConfiguration& operator=(PrintJobEvent_PrintJobConfiguration&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrintJobEvent_PrintJobConfiguration& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrintJobEvent_PrintJobConfiguration* internal_default_instance() {
+    return reinterpret_cast<const PrintJobEvent_PrintJobConfiguration*>(
+               &_PrintJobEvent_PrintJobConfiguration_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    157;
+
+  friend void swap(PrintJobEvent_PrintJobConfiguration& a, PrintJobEvent_PrintJobConfiguration& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrintJobEvent_PrintJobConfiguration* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrintJobEvent_PrintJobConfiguration* New() const final {
+    return CreateMaybeMessage<PrintJobEvent_PrintJobConfiguration>(nullptr);
+  }
+
+  PrintJobEvent_PrintJobConfiguration* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrintJobEvent_PrintJobConfiguration>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrintJobEvent_PrintJobConfiguration& from);
+  void MergeFrom(const PrintJobEvent_PrintJobConfiguration& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrintJobEvent_PrintJobConfiguration* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrintJobEvent.PrintJobConfiguration";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kIdFieldNumber = 1,
+    kTitleFieldNumber = 2,
+    kSettingsFieldNumber = 7,
+    kCreationTimestampMsFieldNumber = 4,
+    kStatusFieldNumber = 3,
+    kNumberOfPagesFieldNumber = 6,
+    kCompletionTimestampMsFieldNumber = 5,
+  };
+  // optional string id = 1;
+  bool has_id() const;
+  private:
+  bool _internal_has_id() const;
+  public:
+  void clear_id();
+  const std::string& id() const;
+  void set_id(const std::string& value);
+  void set_id(std::string&& value);
+  void set_id(const char* value);
+  void set_id(const char* value, size_t size);
+  std::string* mutable_id();
+  std::string* release_id();
+  void set_allocated_id(std::string* id);
+  private:
+  const std::string& _internal_id() const;
+  void _internal_set_id(const std::string& value);
+  std::string* _internal_mutable_id();
+  public:
+
+  // optional string title = 2;
+  bool has_title() const;
+  private:
+  bool _internal_has_title() const;
+  public:
+  void clear_title();
+  const std::string& title() const;
+  void set_title(const std::string& value);
+  void set_title(std::string&& value);
+  void set_title(const char* value);
+  void set_title(const char* value, size_t size);
+  std::string* mutable_title();
+  std::string* release_title();
+  void set_allocated_title(std::string* title);
+  private:
+  const std::string& _internal_title() const;
+  void _internal_set_title(const std::string& value);
+  std::string* _internal_mutable_title();
+  public:
+
+  // optional .enterprise_management.PrintJobEvent.PrintSettings settings = 7;
+  bool has_settings() const;
+  private:
+  bool _internal_has_settings() const;
+  public:
+  void clear_settings();
+  const ::enterprise_management::PrintJobEvent_PrintSettings& settings() const;
+  ::enterprise_management::PrintJobEvent_PrintSettings* release_settings();
+  ::enterprise_management::PrintJobEvent_PrintSettings* mutable_settings();
+  void set_allocated_settings(::enterprise_management::PrintJobEvent_PrintSettings* settings);
+  private:
+  const ::enterprise_management::PrintJobEvent_PrintSettings& _internal_settings() const;
+  ::enterprise_management::PrintJobEvent_PrintSettings* _internal_mutable_settings();
+  public:
+
+  // optional int64 creation_timestamp_ms = 4;
+  bool has_creation_timestamp_ms() const;
+  private:
+  bool _internal_has_creation_timestamp_ms() const;
+  public:
+  void clear_creation_timestamp_ms();
+  ::PROTOBUF_NAMESPACE_ID::int64 creation_timestamp_ms() const;
+  void set_creation_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_creation_timestamp_ms() const;
+  void _internal_set_creation_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 status = 3;
+  bool has_status() const;
+  private:
+  bool _internal_has_status() const;
+  public:
+  void clear_status();
+  ::PROTOBUF_NAMESPACE_ID::int32 status() const;
+  void set_status(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_status() const;
+  void _internal_set_status(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 number_of_pages = 6;
+  bool has_number_of_pages() const;
+  private:
+  bool _internal_has_number_of_pages() const;
+  public:
+  void clear_number_of_pages();
+  ::PROTOBUF_NAMESPACE_ID::int32 number_of_pages() const;
+  void set_number_of_pages(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_number_of_pages() const;
+  void _internal_set_number_of_pages(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int64 completion_timestamp_ms = 5;
+  bool has_completion_timestamp_ms() const;
+  private:
+  bool _internal_has_completion_timestamp_ms() const;
+  public:
+  void clear_completion_timestamp_ms();
+  ::PROTOBUF_NAMESPACE_ID::int64 completion_timestamp_ms() const;
+  void set_completion_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_completion_timestamp_ms() const;
+  void _internal_set_completion_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrintJobEvent.PrintJobConfiguration)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr title_;
+  ::enterprise_management::PrintJobEvent_PrintSettings* settings_;
+  ::PROTOBUF_NAMESPACE_ID::int64 creation_timestamp_ms_;
+  ::PROTOBUF_NAMESPACE_ID::int32 status_;
+  ::PROTOBUF_NAMESPACE_ID::int32 number_of_pages_;
+  ::PROTOBUF_NAMESPACE_ID::int64 completion_timestamp_ms_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrintJobEvent_Printer :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrintJobEvent.Printer) */ {
+ public:
+  PrintJobEvent_Printer();
+  virtual ~PrintJobEvent_Printer();
+
+  PrintJobEvent_Printer(const PrintJobEvent_Printer& from);
+  PrintJobEvent_Printer(PrintJobEvent_Printer&& from) noexcept
+    : PrintJobEvent_Printer() {
+    *this = ::std::move(from);
+  }
+
+  inline PrintJobEvent_Printer& operator=(const PrintJobEvent_Printer& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrintJobEvent_Printer& operator=(PrintJobEvent_Printer&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrintJobEvent_Printer& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrintJobEvent_Printer* internal_default_instance() {
+    return reinterpret_cast<const PrintJobEvent_Printer*>(
+               &_PrintJobEvent_Printer_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    158;
+
+  friend void swap(PrintJobEvent_Printer& a, PrintJobEvent_Printer& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrintJobEvent_Printer* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrintJobEvent_Printer* New() const final {
+    return CreateMaybeMessage<PrintJobEvent_Printer>(nullptr);
+  }
+
+  PrintJobEvent_Printer* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrintJobEvent_Printer>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrintJobEvent_Printer& from);
+  void MergeFrom(const PrintJobEvent_Printer& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrintJobEvent_Printer* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrintJobEvent.Printer";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kUriFieldNumber = 2,
+    kIdFieldNumber = 3,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string uri = 2;
+  bool has_uri() const;
+  private:
+  bool _internal_has_uri() const;
+  public:
+  void clear_uri();
+  const std::string& uri() const;
+  void set_uri(const std::string& value);
+  void set_uri(std::string&& value);
+  void set_uri(const char* value);
+  void set_uri(const char* value, size_t size);
+  std::string* mutable_uri();
+  std::string* release_uri();
+  void set_allocated_uri(std::string* uri);
+  private:
+  const std::string& _internal_uri() const;
+  void _internal_set_uri(const std::string& value);
+  std::string* _internal_mutable_uri();
+  public:
+
+  // optional string id = 3;
+  bool has_id() const;
+  private:
+  bool _internal_has_id() const;
+  public:
+  void clear_id();
+  const std::string& id() const;
+  void set_id(const std::string& value);
+  void set_id(std::string&& value);
+  void set_id(const char* value);
+  void set_id(const char* value, size_t size);
+  std::string* mutable_id();
+  std::string* release_id();
+  void set_allocated_id(std::string* id);
+  private:
+  const std::string& _internal_id() const;
+  void _internal_set_id(const std::string& value);
+  std::string* _internal_mutable_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrintJobEvent.Printer)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr uri_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr id_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrintJobEvent_PrintSettings_MediaSize :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrintJobEvent.PrintSettings.MediaSize) */ {
+ public:
+  PrintJobEvent_PrintSettings_MediaSize();
+  virtual ~PrintJobEvent_PrintSettings_MediaSize();
+
+  PrintJobEvent_PrintSettings_MediaSize(const PrintJobEvent_PrintSettings_MediaSize& from);
+  PrintJobEvent_PrintSettings_MediaSize(PrintJobEvent_PrintSettings_MediaSize&& from) noexcept
+    : PrintJobEvent_PrintSettings_MediaSize() {
+    *this = ::std::move(from);
+  }
+
+  inline PrintJobEvent_PrintSettings_MediaSize& operator=(const PrintJobEvent_PrintSettings_MediaSize& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrintJobEvent_PrintSettings_MediaSize& operator=(PrintJobEvent_PrintSettings_MediaSize&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrintJobEvent_PrintSettings_MediaSize& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrintJobEvent_PrintSettings_MediaSize* internal_default_instance() {
+    return reinterpret_cast<const PrintJobEvent_PrintSettings_MediaSize*>(
+               &_PrintJobEvent_PrintSettings_MediaSize_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    159;
+
+  friend void swap(PrintJobEvent_PrintSettings_MediaSize& a, PrintJobEvent_PrintSettings_MediaSize& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrintJobEvent_PrintSettings_MediaSize* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrintJobEvent_PrintSettings_MediaSize* New() const final {
+    return CreateMaybeMessage<PrintJobEvent_PrintSettings_MediaSize>(nullptr);
+  }
+
+  PrintJobEvent_PrintSettings_MediaSize* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrintJobEvent_PrintSettings_MediaSize>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrintJobEvent_PrintSettings_MediaSize& from);
+  void MergeFrom(const PrintJobEvent_PrintSettings_MediaSize& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrintJobEvent_PrintSettings_MediaSize* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrintJobEvent.PrintSettings.MediaSize";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVendorIdFieldNumber = 3,
+    kWidthFieldNumber = 1,
+    kHeightFieldNumber = 2,
+  };
+  // optional string vendor_id = 3;
+  bool has_vendor_id() const;
+  private:
+  bool _internal_has_vendor_id() const;
+  public:
+  void clear_vendor_id();
+  const std::string& vendor_id() const;
+  void set_vendor_id(const std::string& value);
+  void set_vendor_id(std::string&& value);
+  void set_vendor_id(const char* value);
+  void set_vendor_id(const char* value, size_t size);
+  std::string* mutable_vendor_id();
+  std::string* release_vendor_id();
+  void set_allocated_vendor_id(std::string* vendor_id);
+  private:
+  const std::string& _internal_vendor_id() const;
+  void _internal_set_vendor_id(const std::string& value);
+  std::string* _internal_mutable_vendor_id();
+  public:
+
+  // optional int32 width = 1;
+  bool has_width() const;
+  private:
+  bool _internal_has_width() const;
+  public:
+  void clear_width();
+  ::PROTOBUF_NAMESPACE_ID::int32 width() const;
+  void set_width(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_width() const;
+  void _internal_set_width(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 height = 2;
+  bool has_height() const;
+  private:
+  bool _internal_has_height() const;
+  public:
+  void clear_height();
+  ::PROTOBUF_NAMESPACE_ID::int32 height() const;
+  void set_height(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_height() const;
+  void _internal_set_height(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrintJobEvent.PrintSettings.MediaSize)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr vendor_id_;
+  ::PROTOBUF_NAMESPACE_ID::int32 width_;
+  ::PROTOBUF_NAMESPACE_ID::int32 height_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrintJobEvent_PrintSettings :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrintJobEvent.PrintSettings) */ {
+ public:
+  PrintJobEvent_PrintSettings();
+  virtual ~PrintJobEvent_PrintSettings();
+
+  PrintJobEvent_PrintSettings(const PrintJobEvent_PrintSettings& from);
+  PrintJobEvent_PrintSettings(PrintJobEvent_PrintSettings&& from) noexcept
+    : PrintJobEvent_PrintSettings() {
+    *this = ::std::move(from);
+  }
+
+  inline PrintJobEvent_PrintSettings& operator=(const PrintJobEvent_PrintSettings& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrintJobEvent_PrintSettings& operator=(PrintJobEvent_PrintSettings&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrintJobEvent_PrintSettings& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrintJobEvent_PrintSettings* internal_default_instance() {
+    return reinterpret_cast<const PrintJobEvent_PrintSettings*>(
+               &_PrintJobEvent_PrintSettings_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    160;
+
+  friend void swap(PrintJobEvent_PrintSettings& a, PrintJobEvent_PrintSettings& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrintJobEvent_PrintSettings* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrintJobEvent_PrintSettings* New() const final {
+    return CreateMaybeMessage<PrintJobEvent_PrintSettings>(nullptr);
+  }
+
+  PrintJobEvent_PrintSettings* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrintJobEvent_PrintSettings>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrintJobEvent_PrintSettings& from);
+  void MergeFrom(const PrintJobEvent_PrintSettings& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrintJobEvent_PrintSettings* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrintJobEvent.PrintSettings";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PrintJobEvent_PrintSettings_MediaSize MediaSize;
+
+  typedef PrintJobEvent_PrintSettings_ColorMode ColorMode;
+  static constexpr ColorMode UNKNOWN_COLOR_MODE =
+    PrintJobEvent_PrintSettings_ColorMode_UNKNOWN_COLOR_MODE;
+  static constexpr ColorMode BLACK_AND_WHITE =
+    PrintJobEvent_PrintSettings_ColorMode_BLACK_AND_WHITE;
+  static constexpr ColorMode COLOR =
+    PrintJobEvent_PrintSettings_ColorMode_COLOR;
+  static inline bool ColorMode_IsValid(int value) {
+    return PrintJobEvent_PrintSettings_ColorMode_IsValid(value);
+  }
+  static constexpr ColorMode ColorMode_MIN =
+    PrintJobEvent_PrintSettings_ColorMode_ColorMode_MIN;
+  static constexpr ColorMode ColorMode_MAX =
+    PrintJobEvent_PrintSettings_ColorMode_ColorMode_MAX;
+  static constexpr int ColorMode_ARRAYSIZE =
+    PrintJobEvent_PrintSettings_ColorMode_ColorMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ColorMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ColorMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ColorMode_Name.");
+    return PrintJobEvent_PrintSettings_ColorMode_Name(enum_t_value);
+  }
+  static inline bool ColorMode_Parse(const std::string& name,
+      ColorMode* value) {
+    return PrintJobEvent_PrintSettings_ColorMode_Parse(name, value);
+  }
+
+  typedef PrintJobEvent_PrintSettings_DuplexMode DuplexMode;
+  static constexpr DuplexMode UNKNOWN_DUPLEX_MODE =
+    PrintJobEvent_PrintSettings_DuplexMode_UNKNOWN_DUPLEX_MODE;
+  static constexpr DuplexMode ONE_SIDED =
+    PrintJobEvent_PrintSettings_DuplexMode_ONE_SIDED;
+  static constexpr DuplexMode TWO_SIDED_LONG_EDGE =
+    PrintJobEvent_PrintSettings_DuplexMode_TWO_SIDED_LONG_EDGE;
+  static constexpr DuplexMode TWO_SIDED_SHORT_EDGE =
+    PrintJobEvent_PrintSettings_DuplexMode_TWO_SIDED_SHORT_EDGE;
+  static inline bool DuplexMode_IsValid(int value) {
+    return PrintJobEvent_PrintSettings_DuplexMode_IsValid(value);
+  }
+  static constexpr DuplexMode DuplexMode_MIN =
+    PrintJobEvent_PrintSettings_DuplexMode_DuplexMode_MIN;
+  static constexpr DuplexMode DuplexMode_MAX =
+    PrintJobEvent_PrintSettings_DuplexMode_DuplexMode_MAX;
+  static constexpr int DuplexMode_ARRAYSIZE =
+    PrintJobEvent_PrintSettings_DuplexMode_DuplexMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& DuplexMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, DuplexMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function DuplexMode_Name.");
+    return PrintJobEvent_PrintSettings_DuplexMode_Name(enum_t_value);
+  }
+  static inline bool DuplexMode_Parse(const std::string& name,
+      DuplexMode* value) {
+    return PrintJobEvent_PrintSettings_DuplexMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMediaSizeFieldNumber = 3,
+    kColorFieldNumber = 1,
+    kDuplexFieldNumber = 2,
+    kCopiesFieldNumber = 4,
+  };
+  // optional .enterprise_management.PrintJobEvent.PrintSettings.MediaSize media_size = 3;
+  bool has_media_size() const;
+  private:
+  bool _internal_has_media_size() const;
+  public:
+  void clear_media_size();
+  const ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize& media_size() const;
+  ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* release_media_size();
+  ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* mutable_media_size();
+  void set_allocated_media_size(::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* media_size);
+  private:
+  const ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize& _internal_media_size() const;
+  ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* _internal_mutable_media_size();
+  public:
+
+  // optional .enterprise_management.PrintJobEvent.PrintSettings.ColorMode color = 1;
+  bool has_color() const;
+  private:
+  bool _internal_has_color() const;
+  public:
+  void clear_color();
+  ::enterprise_management::PrintJobEvent_PrintSettings_ColorMode color() const;
+  void set_color(::enterprise_management::PrintJobEvent_PrintSettings_ColorMode value);
+  private:
+  ::enterprise_management::PrintJobEvent_PrintSettings_ColorMode _internal_color() const;
+  void _internal_set_color(::enterprise_management::PrintJobEvent_PrintSettings_ColorMode value);
+  public:
+
+  // optional .enterprise_management.PrintJobEvent.PrintSettings.DuplexMode duplex = 2;
+  bool has_duplex() const;
+  private:
+  bool _internal_has_duplex() const;
+  public:
+  void clear_duplex();
+  ::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode duplex() const;
+  void set_duplex(::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode value);
+  private:
+  ::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode _internal_duplex() const;
+  void _internal_set_duplex(::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode value);
+  public:
+
+  // optional int32 copies = 4;
+  bool has_copies() const;
+  private:
+  bool _internal_has_copies() const;
+  public:
+  void clear_copies();
+  ::PROTOBUF_NAMESPACE_ID::int32 copies() const;
+  void set_copies(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_copies() const;
+  void _internal_set_copies(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrintJobEvent.PrintSettings)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* media_size_;
+  int color_;
+  int duplex_;
+  ::PROTOBUF_NAMESPACE_ID::int32 copies_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrintJobEvent :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PrintJobEvent) */ {
+ public:
+  PrintJobEvent();
+  virtual ~PrintJobEvent();
+
+  PrintJobEvent(const PrintJobEvent& from);
+  PrintJobEvent(PrintJobEvent&& from) noexcept
+    : PrintJobEvent() {
+    *this = ::std::move(from);
+  }
+
+  inline PrintJobEvent& operator=(const PrintJobEvent& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrintJobEvent& operator=(PrintJobEvent&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PrintJobEvent& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrintJobEvent* internal_default_instance() {
+    return reinterpret_cast<const PrintJobEvent*>(
+               &_PrintJobEvent_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    161;
+
+  friend void swap(PrintJobEvent& a, PrintJobEvent& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrintJobEvent* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrintJobEvent* New() const final {
+    return CreateMaybeMessage<PrintJobEvent>(nullptr);
+  }
+
+  PrintJobEvent* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrintJobEvent>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrintJobEvent& from);
+  void MergeFrom(const PrintJobEvent& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrintJobEvent* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PrintJobEvent";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PrintJobEvent_PrintJobConfiguration PrintJobConfiguration;
+  typedef PrintJobEvent_Printer Printer;
+  typedef PrintJobEvent_PrintSettings PrintSettings;
+
+  typedef PrintJobEvent_UserType UserType;
+  static constexpr UserType UNKNOWN_USER_TYPE =
+    PrintJobEvent_UserType_UNKNOWN_USER_TYPE;
+  static constexpr UserType REGULAR =
+    PrintJobEvent_UserType_REGULAR;
+  static constexpr UserType GUEST =
+    PrintJobEvent_UserType_GUEST;
+  static constexpr UserType KIOSK =
+    PrintJobEvent_UserType_KIOSK;
+  static inline bool UserType_IsValid(int value) {
+    return PrintJobEvent_UserType_IsValid(value);
+  }
+  static constexpr UserType UserType_MIN =
+    PrintJobEvent_UserType_UserType_MIN;
+  static constexpr UserType UserType_MAX =
+    PrintJobEvent_UserType_UserType_MAX;
+  static constexpr int UserType_ARRAYSIZE =
+    PrintJobEvent_UserType_UserType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& UserType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, UserType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function UserType_Name.");
+    return PrintJobEvent_UserType_Name(enum_t_value);
+  }
+  static inline bool UserType_Parse(const std::string& name,
+      UserType* value) {
+    return PrintJobEvent_UserType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kJobConfigurationFieldNumber = 1,
+    kPrinterFieldNumber = 3,
+    kUserTypeFieldNumber = 2,
+  };
+  // optional .enterprise_management.PrintJobEvent.PrintJobConfiguration job_configuration = 1;
+  bool has_job_configuration() const;
+  private:
+  bool _internal_has_job_configuration() const;
+  public:
+  void clear_job_configuration();
+  const ::enterprise_management::PrintJobEvent_PrintJobConfiguration& job_configuration() const;
+  ::enterprise_management::PrintJobEvent_PrintJobConfiguration* release_job_configuration();
+  ::enterprise_management::PrintJobEvent_PrintJobConfiguration* mutable_job_configuration();
+  void set_allocated_job_configuration(::enterprise_management::PrintJobEvent_PrintJobConfiguration* job_configuration);
+  private:
+  const ::enterprise_management::PrintJobEvent_PrintJobConfiguration& _internal_job_configuration() const;
+  ::enterprise_management::PrintJobEvent_PrintJobConfiguration* _internal_mutable_job_configuration();
+  public:
+
+  // optional .enterprise_management.PrintJobEvent.Printer printer = 3;
+  bool has_printer() const;
+  private:
+  bool _internal_has_printer() const;
+  public:
+  void clear_printer();
+  const ::enterprise_management::PrintJobEvent_Printer& printer() const;
+  ::enterprise_management::PrintJobEvent_Printer* release_printer();
+  ::enterprise_management::PrintJobEvent_Printer* mutable_printer();
+  void set_allocated_printer(::enterprise_management::PrintJobEvent_Printer* printer);
+  private:
+  const ::enterprise_management::PrintJobEvent_Printer& _internal_printer() const;
+  ::enterprise_management::PrintJobEvent_Printer* _internal_mutable_printer();
+  public:
+
+  // optional .enterprise_management.PrintJobEvent.UserType user_type = 2;
+  bool has_user_type() const;
+  private:
+  bool _internal_has_user_type() const;
+  public:
+  void clear_user_type();
+  ::enterprise_management::PrintJobEvent_UserType user_type() const;
+  void set_user_type(::enterprise_management::PrintJobEvent_UserType value);
+  private:
+  ::enterprise_management::PrintJobEvent_UserType _internal_user_type() const;
+  void _internal_set_user_type(::enterprise_management::PrintJobEvent_UserType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PrintJobEvent)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::PrintJobEvent_PrintJobConfiguration* job_configuration_;
+  ::enterprise_management::PrintJobEvent_Printer* printer_;
+  int user_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class App :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.App) */ {
+ public:
+  App();
+  virtual ~App();
+
+  App(const App& from);
+  App(App&& from) noexcept
+    : App() {
+    *this = ::std::move(from);
+  }
+
+  inline App& operator=(const App& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline App& operator=(App&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const App& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const App* internal_default_instance() {
+    return reinterpret_cast<const App*>(
+               &_App_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    162;
+
+  friend void swap(App& a, App& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(App* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline App* New() const final {
+    return CreateMaybeMessage<App>(nullptr);
+  }
+
+  App* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<App>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const App& from);
+  void MergeFrom(const App& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(App* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.App";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef App_AppType AppType;
+  static constexpr AppType UNKNOWN =
+    App_AppType_UNKNOWN;
+  static constexpr AppType ARC =
+    App_AppType_ARC;
+  static constexpr AppType BUILT_IN =
+    App_AppType_BUILT_IN;
+  static constexpr AppType CROSTINI =
+    App_AppType_CROSTINI;
+  static constexpr AppType EXTENSION =
+    App_AppType_EXTENSION;
+  static constexpr AppType WEB =
+    App_AppType_WEB;
+  static constexpr AppType PLUGIN_VM =
+    App_AppType_PLUGIN_VM;
+  static constexpr AppType BOREALIS =
+    App_AppType_BOREALIS;
+  static inline bool AppType_IsValid(int value) {
+    return App_AppType_IsValid(value);
+  }
+  static constexpr AppType AppType_MIN =
+    App_AppType_AppType_MIN;
+  static constexpr AppType AppType_MAX =
+    App_AppType_AppType_MAX;
+  static constexpr int AppType_ARRAYSIZE =
+    App_AppType_AppType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AppType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AppType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AppType_Name.");
+    return App_AppType_Name(enum_t_value);
+  }
+  static inline bool AppType_Parse(const std::string& name,
+      AppType* value) {
+    return App_AppType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAdditionalAppIdFieldNumber = 3,
+    kAppIdFieldNumber = 1,
+    kAppTypeFieldNumber = 2,
+  };
+  // repeated string additional_app_id = 3;
+  int additional_app_id_size() const;
+  private:
+  int _internal_additional_app_id_size() const;
+  public:
+  void clear_additional_app_id();
+  const std::string& additional_app_id(int index) const;
+  std::string* mutable_additional_app_id(int index);
+  void set_additional_app_id(int index, const std::string& value);
+  void set_additional_app_id(int index, std::string&& value);
+  void set_additional_app_id(int index, const char* value);
+  void set_additional_app_id(int index, const char* value, size_t size);
+  std::string* add_additional_app_id();
+  void add_additional_app_id(const std::string& value);
+  void add_additional_app_id(std::string&& value);
+  void add_additional_app_id(const char* value);
+  void add_additional_app_id(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& additional_app_id() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_additional_app_id();
+  private:
+  const std::string& _internal_additional_app_id(int index) const;
+  std::string* _internal_add_additional_app_id();
+  public:
+
+  // optional string app_id = 1;
+  bool has_app_id() const;
+  private:
+  bool _internal_has_app_id() const;
+  public:
+  void clear_app_id();
+  const std::string& app_id() const;
+  void set_app_id(const std::string& value);
+  void set_app_id(std::string&& value);
+  void set_app_id(const char* value);
+  void set_app_id(const char* value, size_t size);
+  std::string* mutable_app_id();
+  std::string* release_app_id();
+  void set_allocated_app_id(std::string* app_id);
+  private:
+  const std::string& _internal_app_id() const;
+  void _internal_set_app_id(const std::string& value);
+  std::string* _internal_mutable_app_id();
+  public:
+
+  // optional .enterprise_management.App.AppType app_type = 2;
+  bool has_app_type() const;
+  private:
+  bool _internal_has_app_type() const;
+  public:
+  void clear_app_type();
+  ::enterprise_management::App_AppType app_type() const;
+  void set_app_type(::enterprise_management::App_AppType value);
+  private:
+  ::enterprise_management::App_AppType _internal_app_type() const;
+  void _internal_set_app_type(::enterprise_management::App_AppType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.App)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> additional_app_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_id_;
+  int app_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class AppActivity :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.AppActivity) */ {
+ public:
+  AppActivity();
+  virtual ~AppActivity();
+
+  AppActivity(const AppActivity& from);
+  AppActivity(AppActivity&& from) noexcept
+    : AppActivity() {
+    *this = ::std::move(from);
+  }
+
+  inline AppActivity& operator=(const AppActivity& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline AppActivity& operator=(AppActivity&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const AppActivity& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const AppActivity* internal_default_instance() {
+    return reinterpret_cast<const AppActivity*>(
+               &_AppActivity_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    163;
+
+  friend void swap(AppActivity& a, AppActivity& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(AppActivity* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline AppActivity* New() const final {
+    return CreateMaybeMessage<AppActivity>(nullptr);
+  }
+
+  AppActivity* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<AppActivity>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const AppActivity& from);
+  void MergeFrom(const AppActivity& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(AppActivity* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.AppActivity";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef AppActivity_AppState AppState;
+  static constexpr AppState UNKNOWN =
+    AppActivity_AppState_UNKNOWN;
+  static constexpr AppState DEFAULT =
+    AppActivity_AppState_DEFAULT;
+  static constexpr AppState ALWAYS_AVAILABLE =
+    AppActivity_AppState_ALWAYS_AVAILABLE;
+  static constexpr AppState BLOCKED =
+    AppActivity_AppState_BLOCKED;
+  static constexpr AppState LIMIT_REACHED =
+    AppActivity_AppState_LIMIT_REACHED;
+  static constexpr AppState UNINSTALLED =
+    AppActivity_AppState_UNINSTALLED;
+  static inline bool AppState_IsValid(int value) {
+    return AppActivity_AppState_IsValid(value);
+  }
+  static constexpr AppState AppState_MIN =
+    AppActivity_AppState_AppState_MIN;
+  static constexpr AppState AppState_MAX =
+    AppActivity_AppState_AppState_MAX;
+  static constexpr int AppState_ARRAYSIZE =
+    AppActivity_AppState_AppState_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AppState_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AppState>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AppState_Name.");
+    return AppActivity_AppState_Name(enum_t_value);
+  }
+  static inline bool AppState_Parse(const std::string& name,
+      AppState* value) {
+    return AppActivity_AppState_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kActiveTimePeriodsFieldNumber = 2,
+    kAppInfoFieldNumber = 1,
+    kPopulatedAtFieldNumber = 3,
+    kAppStateFieldNumber = 4,
+  };
+  // repeated .enterprise_management.TimePeriod active_time_periods = 2;
+  int active_time_periods_size() const;
+  private:
+  int _internal_active_time_periods_size() const;
+  public:
+  void clear_active_time_periods();
+  ::enterprise_management::TimePeriod* mutable_active_time_periods(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod >*
+      mutable_active_time_periods();
+  private:
+  const ::enterprise_management::TimePeriod& _internal_active_time_periods(int index) const;
+  ::enterprise_management::TimePeriod* _internal_add_active_time_periods();
+  public:
+  const ::enterprise_management::TimePeriod& active_time_periods(int index) const;
+  ::enterprise_management::TimePeriod* add_active_time_periods();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod >&
+      active_time_periods() const;
+
+  // optional .enterprise_management.App app_info = 1;
+  bool has_app_info() const;
+  private:
+  bool _internal_has_app_info() const;
+  public:
+  void clear_app_info();
+  const ::enterprise_management::App& app_info() const;
+  ::enterprise_management::App* release_app_info();
+  ::enterprise_management::App* mutable_app_info();
+  void set_allocated_app_info(::enterprise_management::App* app_info);
+  private:
+  const ::enterprise_management::App& _internal_app_info() const;
+  ::enterprise_management::App* _internal_mutable_app_info();
+  public:
+
+  // optional int64 populated_at = 3;
+  bool has_populated_at() const;
+  private:
+  bool _internal_has_populated_at() const;
+  public:
+  void clear_populated_at();
+  ::PROTOBUF_NAMESPACE_ID::int64 populated_at() const;
+  void set_populated_at(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_populated_at() const;
+  void _internal_set_populated_at(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.AppActivity.AppState app_state = 4;
+  bool has_app_state() const;
+  private:
+  bool _internal_has_app_state() const;
+  public:
+  void clear_app_state();
+  ::enterprise_management::AppActivity_AppState app_state() const;
+  void set_app_state(::enterprise_management::AppActivity_AppState value);
+  private:
+  ::enterprise_management::AppActivity_AppState _internal_app_state() const;
+  void _internal_set_app_state(::enterprise_management::AppActivity_AppState value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.AppActivity)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod > active_time_periods_;
+  ::enterprise_management::App* app_info_;
+  ::PROTOBUF_NAMESPACE_ID::int64 populated_at_;
+  int app_state_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ScreenTimeSpan :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ScreenTimeSpan) */ {
+ public:
+  ScreenTimeSpan();
+  virtual ~ScreenTimeSpan();
+
+  ScreenTimeSpan(const ScreenTimeSpan& from);
+  ScreenTimeSpan(ScreenTimeSpan&& from) noexcept
+    : ScreenTimeSpan() {
+    *this = ::std::move(from);
+  }
+
+  inline ScreenTimeSpan& operator=(const ScreenTimeSpan& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ScreenTimeSpan& operator=(ScreenTimeSpan&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ScreenTimeSpan& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ScreenTimeSpan* internal_default_instance() {
+    return reinterpret_cast<const ScreenTimeSpan*>(
+               &_ScreenTimeSpan_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    164;
+
+  friend void swap(ScreenTimeSpan& a, ScreenTimeSpan& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ScreenTimeSpan* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ScreenTimeSpan* New() const final {
+    return CreateMaybeMessage<ScreenTimeSpan>(nullptr);
+  }
+
+  ScreenTimeSpan* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ScreenTimeSpan>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ScreenTimeSpan& from);
+  void MergeFrom(const ScreenTimeSpan& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ScreenTimeSpan* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ScreenTimeSpan";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTimePeriodFieldNumber = 1,
+    kActiveDurationMsFieldNumber = 2,
+  };
+  // optional .enterprise_management.TimePeriod time_period = 1;
+  bool has_time_period() const;
+  private:
+  bool _internal_has_time_period() const;
+  public:
+  void clear_time_period();
+  const ::enterprise_management::TimePeriod& time_period() const;
+  ::enterprise_management::TimePeriod* release_time_period();
+  ::enterprise_management::TimePeriod* mutable_time_period();
+  void set_allocated_time_period(::enterprise_management::TimePeriod* time_period);
+  private:
+  const ::enterprise_management::TimePeriod& _internal_time_period() const;
+  ::enterprise_management::TimePeriod* _internal_mutable_time_period();
+  public:
+
+  // optional int64 active_duration_ms = 2;
+  bool has_active_duration_ms() const;
+  private:
+  bool _internal_has_active_duration_ms() const;
+  public:
+  void clear_active_duration_ms();
+  ::PROTOBUF_NAMESPACE_ID::int64 active_duration_ms() const;
+  void set_active_duration_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_active_duration_ms() const;
+  void _internal_set_active_duration_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ScreenTimeSpan)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::TimePeriod* time_period_;
+  ::PROTOBUF_NAMESPACE_ID::int64 active_duration_ms_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChildStatusReportRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChildStatusReportRequest) */ {
+ public:
+  ChildStatusReportRequest();
+  virtual ~ChildStatusReportRequest();
+
+  ChildStatusReportRequest(const ChildStatusReportRequest& from);
+  ChildStatusReportRequest(ChildStatusReportRequest&& from) noexcept
+    : ChildStatusReportRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ChildStatusReportRequest& operator=(const ChildStatusReportRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChildStatusReportRequest& operator=(ChildStatusReportRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChildStatusReportRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChildStatusReportRequest* internal_default_instance() {
+    return reinterpret_cast<const ChildStatusReportRequest*>(
+               &_ChildStatusReportRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    165;
+
+  friend void swap(ChildStatusReportRequest& a, ChildStatusReportRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChildStatusReportRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChildStatusReportRequest* New() const final {
+    return CreateMaybeMessage<ChildStatusReportRequest>(nullptr);
+  }
+
+  ChildStatusReportRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChildStatusReportRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChildStatusReportRequest& from);
+  void MergeFrom(const ChildStatusReportRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChildStatusReportRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChildStatusReportRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kScreenTimeSpanFieldNumber = 4,
+    kAppActivityFieldNumber = 8,
+    kHiddenAppFieldNumber = 9,
+    kUserDmTokenFieldNumber = 1,
+    kTimeZoneFieldNumber = 3,
+    kOsVersionFieldNumber = 6,
+    kBootModeFieldNumber = 7,
+    kAndroidStatusFieldNumber = 5,
+    kTimestampMsFieldNumber = 2,
+  };
+  // repeated .enterprise_management.ScreenTimeSpan screen_time_span = 4;
+  int screen_time_span_size() const;
+  private:
+  int _internal_screen_time_span_size() const;
+  public:
+  void clear_screen_time_span();
+  ::enterprise_management::ScreenTimeSpan* mutable_screen_time_span(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ScreenTimeSpan >*
+      mutable_screen_time_span();
+  private:
+  const ::enterprise_management::ScreenTimeSpan& _internal_screen_time_span(int index) const;
+  ::enterprise_management::ScreenTimeSpan* _internal_add_screen_time_span();
+  public:
+  const ::enterprise_management::ScreenTimeSpan& screen_time_span(int index) const;
+  ::enterprise_management::ScreenTimeSpan* add_screen_time_span();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ScreenTimeSpan >&
+      screen_time_span() const;
+
+  // repeated .enterprise_management.AppActivity app_activity = 8;
+  int app_activity_size() const;
+  private:
+  int _internal_app_activity_size() const;
+  public:
+  void clear_app_activity();
+  ::enterprise_management::AppActivity* mutable_app_activity(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppActivity >*
+      mutable_app_activity();
+  private:
+  const ::enterprise_management::AppActivity& _internal_app_activity(int index) const;
+  ::enterprise_management::AppActivity* _internal_add_app_activity();
+  public:
+  const ::enterprise_management::AppActivity& app_activity(int index) const;
+  ::enterprise_management::AppActivity* add_app_activity();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppActivity >&
+      app_activity() const;
+
+  // repeated .enterprise_management.App hidden_app = 9;
+  int hidden_app_size() const;
+  private:
+  int _internal_hidden_app_size() const;
+  public:
+  void clear_hidden_app();
+  ::enterprise_management::App* mutable_hidden_app(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::App >*
+      mutable_hidden_app();
+  private:
+  const ::enterprise_management::App& _internal_hidden_app(int index) const;
+  ::enterprise_management::App* _internal_add_hidden_app();
+  public:
+  const ::enterprise_management::App& hidden_app(int index) const;
+  ::enterprise_management::App* add_hidden_app();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::App >&
+      hidden_app() const;
+
+  // optional string user_dm_token = 1;
+  bool has_user_dm_token() const;
+  private:
+  bool _internal_has_user_dm_token() const;
+  public:
+  void clear_user_dm_token();
+  const std::string& user_dm_token() const;
+  void set_user_dm_token(const std::string& value);
+  void set_user_dm_token(std::string&& value);
+  void set_user_dm_token(const char* value);
+  void set_user_dm_token(const char* value, size_t size);
+  std::string* mutable_user_dm_token();
+  std::string* release_user_dm_token();
+  void set_allocated_user_dm_token(std::string* user_dm_token);
+  private:
+  const std::string& _internal_user_dm_token() const;
+  void _internal_set_user_dm_token(const std::string& value);
+  std::string* _internal_mutable_user_dm_token();
+  public:
+
+  // optional string time_zone = 3;
+  bool has_time_zone() const;
+  private:
+  bool _internal_has_time_zone() const;
+  public:
+  void clear_time_zone();
+  const std::string& time_zone() const;
+  void set_time_zone(const std::string& value);
+  void set_time_zone(std::string&& value);
+  void set_time_zone(const char* value);
+  void set_time_zone(const char* value, size_t size);
+  std::string* mutable_time_zone();
+  std::string* release_time_zone();
+  void set_allocated_time_zone(std::string* time_zone);
+  private:
+  const std::string& _internal_time_zone() const;
+  void _internal_set_time_zone(const std::string& value);
+  std::string* _internal_mutable_time_zone();
+  public:
+
+  // optional string os_version = 6;
+  bool has_os_version() const;
+  private:
+  bool _internal_has_os_version() const;
+  public:
+  void clear_os_version();
+  const std::string& os_version() const;
+  void set_os_version(const std::string& value);
+  void set_os_version(std::string&& value);
+  void set_os_version(const char* value);
+  void set_os_version(const char* value, size_t size);
+  std::string* mutable_os_version();
+  std::string* release_os_version();
+  void set_allocated_os_version(std::string* os_version);
+  private:
+  const std::string& _internal_os_version() const;
+  void _internal_set_os_version(const std::string& value);
+  std::string* _internal_mutable_os_version();
+  public:
+
+  // optional string boot_mode = 7;
+  bool has_boot_mode() const;
+  private:
+  bool _internal_has_boot_mode() const;
+  public:
+  void clear_boot_mode();
+  const std::string& boot_mode() const;
+  void set_boot_mode(const std::string& value);
+  void set_boot_mode(std::string&& value);
+  void set_boot_mode(const char* value);
+  void set_boot_mode(const char* value, size_t size);
+  std::string* mutable_boot_mode();
+  std::string* release_boot_mode();
+  void set_allocated_boot_mode(std::string* boot_mode);
+  private:
+  const std::string& _internal_boot_mode() const;
+  void _internal_set_boot_mode(const std::string& value);
+  std::string* _internal_mutable_boot_mode();
+  public:
+
+  // optional .enterprise_management.AndroidStatus android_status = 5;
+  bool has_android_status() const;
+  private:
+  bool _internal_has_android_status() const;
+  public:
+  void clear_android_status();
+  const ::enterprise_management::AndroidStatus& android_status() const;
+  ::enterprise_management::AndroidStatus* release_android_status();
+  ::enterprise_management::AndroidStatus* mutable_android_status();
+  void set_allocated_android_status(::enterprise_management::AndroidStatus* android_status);
+  private:
+  const ::enterprise_management::AndroidStatus& _internal_android_status() const;
+  ::enterprise_management::AndroidStatus* _internal_mutable_android_status();
+  public:
+
+  // optional int64 timestamp_ms = 2;
+  bool has_timestamp_ms() const;
+  private:
+  bool _internal_has_timestamp_ms() const;
+  public:
+  void clear_timestamp_ms();
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_ms() const;
+  void set_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_timestamp_ms() const;
+  void _internal_set_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChildStatusReportRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ScreenTimeSpan > screen_time_span_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppActivity > app_activity_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::App > hidden_app_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr user_dm_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr time_zone_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr os_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr boot_mode_;
+  ::enterprise_management::AndroidStatus* android_status_;
+  ::PROTOBUF_NAMESPACE_ID::int64 timestamp_ms_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ChildStatusReportResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ChildStatusReportResponse) */ {
+ public:
+  ChildStatusReportResponse();
+  virtual ~ChildStatusReportResponse();
+
+  ChildStatusReportResponse(const ChildStatusReportResponse& from);
+  ChildStatusReportResponse(ChildStatusReportResponse&& from) noexcept
+    : ChildStatusReportResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline ChildStatusReportResponse& operator=(const ChildStatusReportResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChildStatusReportResponse& operator=(ChildStatusReportResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChildStatusReportResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChildStatusReportResponse* internal_default_instance() {
+    return reinterpret_cast<const ChildStatusReportResponse*>(
+               &_ChildStatusReportResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    166;
+
+  friend void swap(ChildStatusReportResponse& a, ChildStatusReportResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChildStatusReportResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChildStatusReportResponse* New() const final {
+    return CreateMaybeMessage<ChildStatusReportResponse>(nullptr);
+  }
+
+  ChildStatusReportResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChildStatusReportResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChildStatusReportResponse& from);
+  void MergeFrom(const ChildStatusReportResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChildStatusReportResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ChildStatusReportResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kErrorMessageFieldNumber = 2,
+    kErrorCodeFieldNumber = 1,
+  };
+  // optional string error_message = 2;
+  bool has_error_message() const;
+  private:
+  bool _internal_has_error_message() const;
+  public:
+  void clear_error_message();
+  const std::string& error_message() const;
+  void set_error_message(const std::string& value);
+  void set_error_message(std::string&& value);
+  void set_error_message(const char* value);
+  void set_error_message(const char* value, size_t size);
+  std::string* mutable_error_message();
+  std::string* release_error_message();
+  void set_allocated_error_message(std::string* error_message);
+  private:
+  const std::string& _internal_error_message() const;
+  void _internal_set_error_message(const std::string& value);
+  std::string* _internal_mutable_error_message();
+  public:
+
+  // optional int32 error_code = 1;
+  bool has_error_code() const;
+  private:
+  bool _internal_has_error_code() const;
+  public:
+  void clear_error_code();
+  ::PROTOBUF_NAMESPACE_ID::int32 error_code() const;
+  void set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_error_code() const;
+  void _internal_set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.ChildStatusReportResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr error_message_;
+  ::PROTOBUF_NAMESPACE_ID::int32 error_code_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class StartCsrRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.StartCsrRequest) */ {
+ public:
+  StartCsrRequest();
+  virtual ~StartCsrRequest();
+
+  StartCsrRequest(const StartCsrRequest& from);
+  StartCsrRequest(StartCsrRequest&& from) noexcept
+    : StartCsrRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline StartCsrRequest& operator=(const StartCsrRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StartCsrRequest& operator=(StartCsrRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StartCsrRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StartCsrRequest* internal_default_instance() {
+    return reinterpret_cast<const StartCsrRequest*>(
+               &_StartCsrRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    167;
+
+  friend void swap(StartCsrRequest& a, StartCsrRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StartCsrRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StartCsrRequest* New() const final {
+    return CreateMaybeMessage<StartCsrRequest>(nullptr);
+  }
+
+  StartCsrRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StartCsrRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StartCsrRequest& from);
+  void MergeFrom(const StartCsrRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StartCsrRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.StartCsrRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.StartCsrRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class StartCsrResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.StartCsrResponse) */ {
+ public:
+  StartCsrResponse();
+  virtual ~StartCsrResponse();
+
+  StartCsrResponse(const StartCsrResponse& from);
+  StartCsrResponse(StartCsrResponse&& from) noexcept
+    : StartCsrResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline StartCsrResponse& operator=(const StartCsrResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StartCsrResponse& operator=(StartCsrResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StartCsrResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StartCsrResponse* internal_default_instance() {
+    return reinterpret_cast<const StartCsrResponse*>(
+               &_StartCsrResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    168;
+
+  friend void swap(StartCsrResponse& a, StartCsrResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StartCsrResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StartCsrResponse* New() const final {
+    return CreateMaybeMessage<StartCsrResponse>(nullptr);
+  }
+
+  StartCsrResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StartCsrResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StartCsrResponse& from);
+  void MergeFrom(const StartCsrResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StartCsrResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.StartCsrResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kInvalidationTopicFieldNumber = 1,
+    kVaChallengeFieldNumber = 2,
+    kDataToSignFieldNumber = 4,
+    kSigningAlgorithmFieldNumber = 3,
+    kHashingAlgorithmFieldNumber = 5,
+  };
+  // optional string invalidation_topic = 1;
+  bool has_invalidation_topic() const;
+  private:
+  bool _internal_has_invalidation_topic() const;
+  public:
+  void clear_invalidation_topic();
+  const std::string& invalidation_topic() const;
+  void set_invalidation_topic(const std::string& value);
+  void set_invalidation_topic(std::string&& value);
+  void set_invalidation_topic(const char* value);
+  void set_invalidation_topic(const char* value, size_t size);
+  std::string* mutable_invalidation_topic();
+  std::string* release_invalidation_topic();
+  void set_allocated_invalidation_topic(std::string* invalidation_topic);
+  private:
+  const std::string& _internal_invalidation_topic() const;
+  void _internal_set_invalidation_topic(const std::string& value);
+  std::string* _internal_mutable_invalidation_topic();
+  public:
+
+  // optional bytes va_challenge = 2;
+  bool has_va_challenge() const;
+  private:
+  bool _internal_has_va_challenge() const;
+  public:
+  void clear_va_challenge();
+  const std::string& va_challenge() const;
+  void set_va_challenge(const std::string& value);
+  void set_va_challenge(std::string&& value);
+  void set_va_challenge(const char* value);
+  void set_va_challenge(const void* value, size_t size);
+  std::string* mutable_va_challenge();
+  std::string* release_va_challenge();
+  void set_allocated_va_challenge(std::string* va_challenge);
+  private:
+  const std::string& _internal_va_challenge() const;
+  void _internal_set_va_challenge(const std::string& value);
+  std::string* _internal_mutable_va_challenge();
+  public:
+
+  // optional bytes data_to_sign = 4;
+  bool has_data_to_sign() const;
+  private:
+  bool _internal_has_data_to_sign() const;
+  public:
+  void clear_data_to_sign();
+  const std::string& data_to_sign() const;
+  void set_data_to_sign(const std::string& value);
+  void set_data_to_sign(std::string&& value);
+  void set_data_to_sign(const char* value);
+  void set_data_to_sign(const void* value, size_t size);
+  std::string* mutable_data_to_sign();
+  std::string* release_data_to_sign();
+  void set_allocated_data_to_sign(std::string* data_to_sign);
+  private:
+  const std::string& _internal_data_to_sign() const;
+  void _internal_set_data_to_sign(const std::string& value);
+  std::string* _internal_mutable_data_to_sign();
+  public:
+
+  // optional .enterprise_management.SigningAlgorithm signing_algorithm = 3;
+  bool has_signing_algorithm() const;
+  private:
+  bool _internal_has_signing_algorithm() const;
+  public:
+  void clear_signing_algorithm();
+  ::enterprise_management::SigningAlgorithm signing_algorithm() const;
+  void set_signing_algorithm(::enterprise_management::SigningAlgorithm value);
+  private:
+  ::enterprise_management::SigningAlgorithm _internal_signing_algorithm() const;
+  void _internal_set_signing_algorithm(::enterprise_management::SigningAlgorithm value);
+  public:
+
+  // optional .enterprise_management.HashingAlgorithm hashing_algorithm = 5;
+  bool has_hashing_algorithm() const;
+  private:
+  bool _internal_has_hashing_algorithm() const;
+  public:
+  void clear_hashing_algorithm();
+  ::enterprise_management::HashingAlgorithm hashing_algorithm() const;
+  void set_hashing_algorithm(::enterprise_management::HashingAlgorithm value);
+  private:
+  ::enterprise_management::HashingAlgorithm _internal_hashing_algorithm() const;
+  void _internal_set_hashing_algorithm(::enterprise_management::HashingAlgorithm value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.StartCsrResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr invalidation_topic_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr va_challenge_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr data_to_sign_;
+  int signing_algorithm_;
+  int hashing_algorithm_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class FinishCsrRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.FinishCsrRequest) */ {
+ public:
+  FinishCsrRequest();
+  virtual ~FinishCsrRequest();
+
+  FinishCsrRequest(const FinishCsrRequest& from);
+  FinishCsrRequest(FinishCsrRequest&& from) noexcept
+    : FinishCsrRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline FinishCsrRequest& operator=(const FinishCsrRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline FinishCsrRequest& operator=(FinishCsrRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const FinishCsrRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const FinishCsrRequest* internal_default_instance() {
+    return reinterpret_cast<const FinishCsrRequest*>(
+               &_FinishCsrRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    169;
+
+  friend void swap(FinishCsrRequest& a, FinishCsrRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(FinishCsrRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline FinishCsrRequest* New() const final {
+    return CreateMaybeMessage<FinishCsrRequest>(nullptr);
+  }
+
+  FinishCsrRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<FinishCsrRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const FinishCsrRequest& from);
+  void MergeFrom(const FinishCsrRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(FinishCsrRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.FinishCsrRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVaChallengeResponseFieldNumber = 1,
+    kSignatureFieldNumber = 2,
+  };
+  // optional bytes va_challenge_response = 1;
+  bool has_va_challenge_response() const;
+  private:
+  bool _internal_has_va_challenge_response() const;
+  public:
+  void clear_va_challenge_response();
+  const std::string& va_challenge_response() const;
+  void set_va_challenge_response(const std::string& value);
+  void set_va_challenge_response(std::string&& value);
+  void set_va_challenge_response(const char* value);
+  void set_va_challenge_response(const void* value, size_t size);
+  std::string* mutable_va_challenge_response();
+  std::string* release_va_challenge_response();
+  void set_allocated_va_challenge_response(std::string* va_challenge_response);
+  private:
+  const std::string& _internal_va_challenge_response() const;
+  void _internal_set_va_challenge_response(const std::string& value);
+  std::string* _internal_mutable_va_challenge_response();
+  public:
+
+  // optional bytes signature = 2;
+  bool has_signature() const;
+  private:
+  bool _internal_has_signature() const;
+  public:
+  void clear_signature();
+  const std::string& signature() const;
+  void set_signature(const std::string& value);
+  void set_signature(std::string&& value);
+  void set_signature(const char* value);
+  void set_signature(const void* value, size_t size);
+  std::string* mutable_signature();
+  std::string* release_signature();
+  void set_allocated_signature(std::string* signature);
+  private:
+  const std::string& _internal_signature() const;
+  void _internal_set_signature(const std::string& value);
+  std::string* _internal_mutable_signature();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.FinishCsrRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr va_challenge_response_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr signature_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class FinishCsrResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.FinishCsrResponse) */ {
+ public:
+  FinishCsrResponse();
+  virtual ~FinishCsrResponse();
+
+  FinishCsrResponse(const FinishCsrResponse& from);
+  FinishCsrResponse(FinishCsrResponse&& from) noexcept
+    : FinishCsrResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline FinishCsrResponse& operator=(const FinishCsrResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline FinishCsrResponse& operator=(FinishCsrResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const FinishCsrResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const FinishCsrResponse* internal_default_instance() {
+    return reinterpret_cast<const FinishCsrResponse*>(
+               &_FinishCsrResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    170;
+
+  friend void swap(FinishCsrResponse& a, FinishCsrResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(FinishCsrResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline FinishCsrResponse* New() const final {
+    return CreateMaybeMessage<FinishCsrResponse>(nullptr);
+  }
+
+  FinishCsrResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<FinishCsrResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const FinishCsrResponse& from);
+  void MergeFrom(const FinishCsrResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(FinishCsrResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.FinishCsrResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.FinishCsrResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DownloadCertRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DownloadCertRequest) */ {
+ public:
+  DownloadCertRequest();
+  virtual ~DownloadCertRequest();
+
+  DownloadCertRequest(const DownloadCertRequest& from);
+  DownloadCertRequest(DownloadCertRequest&& from) noexcept
+    : DownloadCertRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DownloadCertRequest& operator=(const DownloadCertRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DownloadCertRequest& operator=(DownloadCertRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DownloadCertRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DownloadCertRequest* internal_default_instance() {
+    return reinterpret_cast<const DownloadCertRequest*>(
+               &_DownloadCertRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    171;
+
+  friend void swap(DownloadCertRequest& a, DownloadCertRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DownloadCertRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DownloadCertRequest* New() const final {
+    return CreateMaybeMessage<DownloadCertRequest>(nullptr);
+  }
+
+  DownloadCertRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DownloadCertRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DownloadCertRequest& from);
+  void MergeFrom(const DownloadCertRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DownloadCertRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DownloadCertRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DownloadCertRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DownloadCertResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DownloadCertResponse) */ {
+ public:
+  DownloadCertResponse();
+  virtual ~DownloadCertResponse();
+
+  DownloadCertResponse(const DownloadCertResponse& from);
+  DownloadCertResponse(DownloadCertResponse&& from) noexcept
+    : DownloadCertResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DownloadCertResponse& operator=(const DownloadCertResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DownloadCertResponse& operator=(DownloadCertResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DownloadCertResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DownloadCertResponse* internal_default_instance() {
+    return reinterpret_cast<const DownloadCertResponse*>(
+               &_DownloadCertResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    172;
+
+  friend void swap(DownloadCertResponse& a, DownloadCertResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DownloadCertResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DownloadCertResponse* New() const final {
+    return CreateMaybeMessage<DownloadCertResponse>(nullptr);
+  }
+
+  DownloadCertResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DownloadCertResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DownloadCertResponse& from);
+  void MergeFrom(const DownloadCertResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DownloadCertResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DownloadCertResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPemEncodedCertificateFieldNumber = 1,
+  };
+  // optional string pem_encoded_certificate = 1;
+  bool has_pem_encoded_certificate() const;
+  private:
+  bool _internal_has_pem_encoded_certificate() const;
+  public:
+  void clear_pem_encoded_certificate();
+  const std::string& pem_encoded_certificate() const;
+  void set_pem_encoded_certificate(const std::string& value);
+  void set_pem_encoded_certificate(std::string&& value);
+  void set_pem_encoded_certificate(const char* value);
+  void set_pem_encoded_certificate(const char* value, size_t size);
+  std::string* mutable_pem_encoded_certificate();
+  std::string* release_pem_encoded_certificate();
+  void set_allocated_pem_encoded_certificate(std::string* pem_encoded_certificate);
+  private:
+  const std::string& _internal_pem_encoded_certificate() const;
+  void _internal_set_pem_encoded_certificate(const std::string& value);
+  std::string* _internal_mutable_pem_encoded_certificate();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DownloadCertResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr pem_encoded_certificate_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ClientCertificateProvisioningRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ClientCertificateProvisioningRequest) */ {
+ public:
+  ClientCertificateProvisioningRequest();
+  virtual ~ClientCertificateProvisioningRequest();
+
+  ClientCertificateProvisioningRequest(const ClientCertificateProvisioningRequest& from);
+  ClientCertificateProvisioningRequest(ClientCertificateProvisioningRequest&& from) noexcept
+    : ClientCertificateProvisioningRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline ClientCertificateProvisioningRequest& operator=(const ClientCertificateProvisioningRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ClientCertificateProvisioningRequest& operator=(ClientCertificateProvisioningRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ClientCertificateProvisioningRequest& default_instance();
+
+  enum RequestCase {
+    kStartCsrRequest = 5,
+    kFinishCsrRequest = 6,
+    kDownloadCertRequest = 7,
+    REQUEST_NOT_SET = 0,
+  };
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ClientCertificateProvisioningRequest* internal_default_instance() {
+    return reinterpret_cast<const ClientCertificateProvisioningRequest*>(
+               &_ClientCertificateProvisioningRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    173;
+
+  friend void swap(ClientCertificateProvisioningRequest& a, ClientCertificateProvisioningRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ClientCertificateProvisioningRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ClientCertificateProvisioningRequest* New() const final {
+    return CreateMaybeMessage<ClientCertificateProvisioningRequest>(nullptr);
+  }
+
+  ClientCertificateProvisioningRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ClientCertificateProvisioningRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ClientCertificateProvisioningRequest& from);
+  void MergeFrom(const ClientCertificateProvisioningRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ClientCertificateProvisioningRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ClientCertificateProvisioningRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCertificateScopeFieldNumber = 1,
+    kCertProfileIdFieldNumber = 2,
+    kPublicKeyFieldNumber = 3,
+    kDeviceDmTokenFieldNumber = 4,
+    kPolicyVersionFieldNumber = 8,
+    kStartCsrRequestFieldNumber = 5,
+    kFinishCsrRequestFieldNumber = 6,
+    kDownloadCertRequestFieldNumber = 7,
+  };
+  // optional string certificate_scope = 1;
+  bool has_certificate_scope() const;
+  private:
+  bool _internal_has_certificate_scope() const;
+  public:
+  void clear_certificate_scope();
+  const std::string& certificate_scope() const;
+  void set_certificate_scope(const std::string& value);
+  void set_certificate_scope(std::string&& value);
+  void set_certificate_scope(const char* value);
+  void set_certificate_scope(const char* value, size_t size);
+  std::string* mutable_certificate_scope();
+  std::string* release_certificate_scope();
+  void set_allocated_certificate_scope(std::string* certificate_scope);
+  private:
+  const std::string& _internal_certificate_scope() const;
+  void _internal_set_certificate_scope(const std::string& value);
+  std::string* _internal_mutable_certificate_scope();
+  public:
+
+  // optional string cert_profile_id = 2;
+  bool has_cert_profile_id() const;
+  private:
+  bool _internal_has_cert_profile_id() const;
+  public:
+  void clear_cert_profile_id();
+  const std::string& cert_profile_id() const;
+  void set_cert_profile_id(const std::string& value);
+  void set_cert_profile_id(std::string&& value);
+  void set_cert_profile_id(const char* value);
+  void set_cert_profile_id(const char* value, size_t size);
+  std::string* mutable_cert_profile_id();
+  std::string* release_cert_profile_id();
+  void set_allocated_cert_profile_id(std::string* cert_profile_id);
+  private:
+  const std::string& _internal_cert_profile_id() const;
+  void _internal_set_cert_profile_id(const std::string& value);
+  std::string* _internal_mutable_cert_profile_id();
+  public:
+
+  // optional bytes public_key = 3;
+  bool has_public_key() const;
+  private:
+  bool _internal_has_public_key() const;
+  public:
+  void clear_public_key();
+  const std::string& public_key() const;
+  void set_public_key(const std::string& value);
+  void set_public_key(std::string&& value);
+  void set_public_key(const char* value);
+  void set_public_key(const void* value, size_t size);
+  std::string* mutable_public_key();
+  std::string* release_public_key();
+  void set_allocated_public_key(std::string* public_key);
+  private:
+  const std::string& _internal_public_key() const;
+  void _internal_set_public_key(const std::string& value);
+  std::string* _internal_mutable_public_key();
+  public:
+
+  // optional string device_dm_token = 4;
+  bool has_device_dm_token() const;
+  private:
+  bool _internal_has_device_dm_token() const;
+  public:
+  void clear_device_dm_token();
+  const std::string& device_dm_token() const;
+  void set_device_dm_token(const std::string& value);
+  void set_device_dm_token(std::string&& value);
+  void set_device_dm_token(const char* value);
+  void set_device_dm_token(const char* value, size_t size);
+  std::string* mutable_device_dm_token();
+  std::string* release_device_dm_token();
+  void set_allocated_device_dm_token(std::string* device_dm_token);
+  private:
+  const std::string& _internal_device_dm_token() const;
+  void _internal_set_device_dm_token(const std::string& value);
+  std::string* _internal_mutable_device_dm_token();
+  public:
+
+  // optional bytes policy_version = 8;
+  bool has_policy_version() const;
+  private:
+  bool _internal_has_policy_version() const;
+  public:
+  void clear_policy_version();
+  const std::string& policy_version() const;
+  void set_policy_version(const std::string& value);
+  void set_policy_version(std::string&& value);
+  void set_policy_version(const char* value);
+  void set_policy_version(const void* value, size_t size);
+  std::string* mutable_policy_version();
+  std::string* release_policy_version();
+  void set_allocated_policy_version(std::string* policy_version);
+  private:
+  const std::string& _internal_policy_version() const;
+  void _internal_set_policy_version(const std::string& value);
+  std::string* _internal_mutable_policy_version();
+  public:
+
+  // optional .enterprise_management.StartCsrRequest start_csr_request = 5;
+  bool has_start_csr_request() const;
+  private:
+  bool _internal_has_start_csr_request() const;
+  public:
+  void clear_start_csr_request();
+  const ::enterprise_management::StartCsrRequest& start_csr_request() const;
+  ::enterprise_management::StartCsrRequest* release_start_csr_request();
+  ::enterprise_management::StartCsrRequest* mutable_start_csr_request();
+  void set_allocated_start_csr_request(::enterprise_management::StartCsrRequest* start_csr_request);
+  private:
+  const ::enterprise_management::StartCsrRequest& _internal_start_csr_request() const;
+  ::enterprise_management::StartCsrRequest* _internal_mutable_start_csr_request();
+  public:
+
+  // optional .enterprise_management.FinishCsrRequest finish_csr_request = 6;
+  bool has_finish_csr_request() const;
+  private:
+  bool _internal_has_finish_csr_request() const;
+  public:
+  void clear_finish_csr_request();
+  const ::enterprise_management::FinishCsrRequest& finish_csr_request() const;
+  ::enterprise_management::FinishCsrRequest* release_finish_csr_request();
+  ::enterprise_management::FinishCsrRequest* mutable_finish_csr_request();
+  void set_allocated_finish_csr_request(::enterprise_management::FinishCsrRequest* finish_csr_request);
+  private:
+  const ::enterprise_management::FinishCsrRequest& _internal_finish_csr_request() const;
+  ::enterprise_management::FinishCsrRequest* _internal_mutable_finish_csr_request();
+  public:
+
+  // optional .enterprise_management.DownloadCertRequest download_cert_request = 7;
+  bool has_download_cert_request() const;
+  private:
+  bool _internal_has_download_cert_request() const;
+  public:
+  void clear_download_cert_request();
+  const ::enterprise_management::DownloadCertRequest& download_cert_request() const;
+  ::enterprise_management::DownloadCertRequest* release_download_cert_request();
+  ::enterprise_management::DownloadCertRequest* mutable_download_cert_request();
+  void set_allocated_download_cert_request(::enterprise_management::DownloadCertRequest* download_cert_request);
+  private:
+  const ::enterprise_management::DownloadCertRequest& _internal_download_cert_request() const;
+  ::enterprise_management::DownloadCertRequest* _internal_mutable_download_cert_request();
+  public:
+
+  void clear_request();
+  RequestCase request_case() const;
+  // @@protoc_insertion_point(class_scope:enterprise_management.ClientCertificateProvisioningRequest)
+ private:
+  class _Internal;
+  void set_has_start_csr_request();
+  void set_has_finish_csr_request();
+  void set_has_download_cert_request();
+
+  inline bool has_request() const;
+  inline void clear_has_request();
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr certificate_scope_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cert_profile_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr public_key_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_dm_token_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr policy_version_;
+  union RequestUnion {
+    RequestUnion() {}
+    ::enterprise_management::StartCsrRequest* start_csr_request_;
+    ::enterprise_management::FinishCsrRequest* finish_csr_request_;
+    ::enterprise_management::DownloadCertRequest* download_cert_request_;
+  } request_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
+
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class ClientCertificateProvisioningResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.ClientCertificateProvisioningResponse) */ {
+ public:
+  ClientCertificateProvisioningResponse();
+  virtual ~ClientCertificateProvisioningResponse();
+
+  ClientCertificateProvisioningResponse(const ClientCertificateProvisioningResponse& from);
+  ClientCertificateProvisioningResponse(ClientCertificateProvisioningResponse&& from) noexcept
+    : ClientCertificateProvisioningResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline ClientCertificateProvisioningResponse& operator=(const ClientCertificateProvisioningResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ClientCertificateProvisioningResponse& operator=(ClientCertificateProvisioningResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ClientCertificateProvisioningResponse& default_instance();
+
+  enum ResponseCase {
+    kError = 2,
+    kStartCsrResponse = 3,
+    kFinishCsrResponse = 4,
+    kDownloadCertResponse = 5,
+    RESPONSE_NOT_SET = 0,
+  };
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ClientCertificateProvisioningResponse* internal_default_instance() {
+    return reinterpret_cast<const ClientCertificateProvisioningResponse*>(
+               &_ClientCertificateProvisioningResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    174;
+
+  friend void swap(ClientCertificateProvisioningResponse& a, ClientCertificateProvisioningResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ClientCertificateProvisioningResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ClientCertificateProvisioningResponse* New() const final {
+    return CreateMaybeMessage<ClientCertificateProvisioningResponse>(nullptr);
+  }
+
+  ClientCertificateProvisioningResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ClientCertificateProvisioningResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ClientCertificateProvisioningResponse& from);
+  void MergeFrom(const ClientCertificateProvisioningResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ClientCertificateProvisioningResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.ClientCertificateProvisioningResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef ClientCertificateProvisioningResponse_Error Error;
+  static constexpr Error UNDEFINED =
+    ClientCertificateProvisioningResponse_Error_UNDEFINED;
+  static constexpr Error TIMED_OUT =
+    ClientCertificateProvisioningResponse_Error_TIMED_OUT;
+  static constexpr Error IDENTITY_VERIFICATION_ERROR =
+    ClientCertificateProvisioningResponse_Error_IDENTITY_VERIFICATION_ERROR;
+  static constexpr Error CA_ERROR =
+    ClientCertificateProvisioningResponse_Error_CA_ERROR;
+  static constexpr Error INCONSISTENT_DATA =
+    ClientCertificateProvisioningResponse_Error_INCONSISTENT_DATA;
+  static constexpr Error BAD_PUBLIC_KEY =
+    ClientCertificateProvisioningResponse_Error_BAD_PUBLIC_KEY;
+  static constexpr Error BAD_CA_CERTIFICATE_SPECIFIED =
+    ClientCertificateProvisioningResponse_Error_BAD_CA_CERTIFICATE_SPECIFIED;
+  static constexpr Error BAD_CLIENT_CERTIFICATE_RECEIVED =
+    ClientCertificateProvisioningResponse_Error_BAD_CLIENT_CERTIFICATE_RECEIVED;
+  static constexpr Error INVALID_CSR_SIGNATURE =
+    ClientCertificateProvisioningResponse_Error_INVALID_CSR_SIGNATURE;
+  static constexpr Error CSR_ALREADY_SENT =
+    ClientCertificateProvisioningResponse_Error_CSR_ALREADY_SENT;
+  static inline bool Error_IsValid(int value) {
+    return ClientCertificateProvisioningResponse_Error_IsValid(value);
+  }
+  static constexpr Error Error_MIN =
+    ClientCertificateProvisioningResponse_Error_Error_MIN;
+  static constexpr Error Error_MAX =
+    ClientCertificateProvisioningResponse_Error_Error_MAX;
+  static constexpr int Error_ARRAYSIZE =
+    ClientCertificateProvisioningResponse_Error_Error_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Error_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Error>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Error_Name.");
+    return ClientCertificateProvisioningResponse_Error_Name(enum_t_value);
+  }
+  static inline bool Error_Parse(const std::string& name,
+      Error* value) {
+    return ClientCertificateProvisioningResponse_Error_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kTryAgainLaterFieldNumber = 1,
+    kErrorFieldNumber = 2,
+    kStartCsrResponseFieldNumber = 3,
+    kFinishCsrResponseFieldNumber = 4,
+    kDownloadCertResponseFieldNumber = 5,
+  };
+  // optional int64 try_again_later = 1;
+  bool has_try_again_later() const;
+  private:
+  bool _internal_has_try_again_later() const;
+  public:
+  void clear_try_again_later();
+  ::PROTOBUF_NAMESPACE_ID::int64 try_again_later() const;
+  void set_try_again_later(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_try_again_later() const;
+  void _internal_set_try_again_later(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .enterprise_management.ClientCertificateProvisioningResponse.Error error = 2;
+  bool has_error() const;
+  private:
+  bool _internal_has_error() const;
+  public:
+  void clear_error();
+  ::enterprise_management::ClientCertificateProvisioningResponse_Error error() const;
+  void set_error(::enterprise_management::ClientCertificateProvisioningResponse_Error value);
+  private:
+  ::enterprise_management::ClientCertificateProvisioningResponse_Error _internal_error() const;
+  void _internal_set_error(::enterprise_management::ClientCertificateProvisioningResponse_Error value);
+  public:
+
+  // optional .enterprise_management.StartCsrResponse start_csr_response = 3;
+  bool has_start_csr_response() const;
+  private:
+  bool _internal_has_start_csr_response() const;
+  public:
+  void clear_start_csr_response();
+  const ::enterprise_management::StartCsrResponse& start_csr_response() const;
+  ::enterprise_management::StartCsrResponse* release_start_csr_response();
+  ::enterprise_management::StartCsrResponse* mutable_start_csr_response();
+  void set_allocated_start_csr_response(::enterprise_management::StartCsrResponse* start_csr_response);
+  private:
+  const ::enterprise_management::StartCsrResponse& _internal_start_csr_response() const;
+  ::enterprise_management::StartCsrResponse* _internal_mutable_start_csr_response();
+  public:
+
+  // optional .enterprise_management.FinishCsrResponse finish_csr_response = 4;
+  bool has_finish_csr_response() const;
+  private:
+  bool _internal_has_finish_csr_response() const;
+  public:
+  void clear_finish_csr_response();
+  const ::enterprise_management::FinishCsrResponse& finish_csr_response() const;
+  ::enterprise_management::FinishCsrResponse* release_finish_csr_response();
+  ::enterprise_management::FinishCsrResponse* mutable_finish_csr_response();
+  void set_allocated_finish_csr_response(::enterprise_management::FinishCsrResponse* finish_csr_response);
+  private:
+  const ::enterprise_management::FinishCsrResponse& _internal_finish_csr_response() const;
+  ::enterprise_management::FinishCsrResponse* _internal_mutable_finish_csr_response();
+  public:
+
+  // optional .enterprise_management.DownloadCertResponse download_cert_response = 5;
+  bool has_download_cert_response() const;
+  private:
+  bool _internal_has_download_cert_response() const;
+  public:
+  void clear_download_cert_response();
+  const ::enterprise_management::DownloadCertResponse& download_cert_response() const;
+  ::enterprise_management::DownloadCertResponse* release_download_cert_response();
+  ::enterprise_management::DownloadCertResponse* mutable_download_cert_response();
+  void set_allocated_download_cert_response(::enterprise_management::DownloadCertResponse* download_cert_response);
+  private:
+  const ::enterprise_management::DownloadCertResponse& _internal_download_cert_response() const;
+  ::enterprise_management::DownloadCertResponse* _internal_mutable_download_cert_response();
+  public:
+
+  void clear_response();
+  ResponseCase response_case() const;
+  // @@protoc_insertion_point(class_scope:enterprise_management.ClientCertificateProvisioningResponse)
+ private:
+  class _Internal;
+  void set_has_error();
+  void set_has_start_csr_response();
+  void set_has_finish_csr_response();
+  void set_has_download_cert_response();
+
+  inline bool has_response() const;
+  inline void clear_has_response();
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 try_again_later_;
+  union ResponseUnion {
+    ResponseUnion() {}
+    int error_;
+    ::enterprise_management::StartCsrResponse* start_csr_response_;
+    ::enterprise_management::FinishCsrResponse* finish_csr_response_;
+    ::enterprise_management::DownloadCertResponse* download_cert_response_;
+  } response_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
+
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BrowserPublicKeyUploadRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BrowserPublicKeyUploadRequest) */ {
+ public:
+  BrowserPublicKeyUploadRequest();
+  virtual ~BrowserPublicKeyUploadRequest();
+
+  BrowserPublicKeyUploadRequest(const BrowserPublicKeyUploadRequest& from);
+  BrowserPublicKeyUploadRequest(BrowserPublicKeyUploadRequest&& from) noexcept
+    : BrowserPublicKeyUploadRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline BrowserPublicKeyUploadRequest& operator=(const BrowserPublicKeyUploadRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BrowserPublicKeyUploadRequest& operator=(BrowserPublicKeyUploadRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BrowserPublicKeyUploadRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BrowserPublicKeyUploadRequest* internal_default_instance() {
+    return reinterpret_cast<const BrowserPublicKeyUploadRequest*>(
+               &_BrowserPublicKeyUploadRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    175;
+
+  friend void swap(BrowserPublicKeyUploadRequest& a, BrowserPublicKeyUploadRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BrowserPublicKeyUploadRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BrowserPublicKeyUploadRequest* New() const final {
+    return CreateMaybeMessage<BrowserPublicKeyUploadRequest>(nullptr);
+  }
+
+  BrowserPublicKeyUploadRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BrowserPublicKeyUploadRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BrowserPublicKeyUploadRequest& from);
+  void MergeFrom(const BrowserPublicKeyUploadRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BrowserPublicKeyUploadRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BrowserPublicKeyUploadRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef BrowserPublicKeyUploadRequest_KeyTrustLevel KeyTrustLevel;
+  static constexpr KeyTrustLevel KEY_TRUST_LEVEL_UNSPECIFIED =
+    BrowserPublicKeyUploadRequest_KeyTrustLevel_KEY_TRUST_LEVEL_UNSPECIFIED;
+  static constexpr KeyTrustLevel CHROME_BROWSER_TPM_KEY =
+    BrowserPublicKeyUploadRequest_KeyTrustLevel_CHROME_BROWSER_TPM_KEY;
+  static constexpr KeyTrustLevel CHROME_BROWSER_OS_KEY =
+    BrowserPublicKeyUploadRequest_KeyTrustLevel_CHROME_BROWSER_OS_KEY;
+  static inline bool KeyTrustLevel_IsValid(int value) {
+    return BrowserPublicKeyUploadRequest_KeyTrustLevel_IsValid(value);
+  }
+  static constexpr KeyTrustLevel KeyTrustLevel_MIN =
+    BrowserPublicKeyUploadRequest_KeyTrustLevel_KeyTrustLevel_MIN;
+  static constexpr KeyTrustLevel KeyTrustLevel_MAX =
+    BrowserPublicKeyUploadRequest_KeyTrustLevel_KeyTrustLevel_MAX;
+  static constexpr int KeyTrustLevel_ARRAYSIZE =
+    BrowserPublicKeyUploadRequest_KeyTrustLevel_KeyTrustLevel_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& KeyTrustLevel_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, KeyTrustLevel>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function KeyTrustLevel_Name.");
+    return BrowserPublicKeyUploadRequest_KeyTrustLevel_Name(enum_t_value);
+  }
+  static inline bool KeyTrustLevel_Parse(const std::string& name,
+      KeyTrustLevel* value) {
+    return BrowserPublicKeyUploadRequest_KeyTrustLevel_Parse(name, value);
+  }
+
+  typedef BrowserPublicKeyUploadRequest_KeyType KeyType;
+  static constexpr KeyType KEY_TYPE_UNSPECIFIED =
+    BrowserPublicKeyUploadRequest_KeyType_KEY_TYPE_UNSPECIFIED;
+  static constexpr KeyType RSA_KEY =
+    BrowserPublicKeyUploadRequest_KeyType_RSA_KEY;
+  static constexpr KeyType EC_KEY =
+    BrowserPublicKeyUploadRequest_KeyType_EC_KEY;
+  static inline bool KeyType_IsValid(int value) {
+    return BrowserPublicKeyUploadRequest_KeyType_IsValid(value);
+  }
+  static constexpr KeyType KeyType_MIN =
+    BrowserPublicKeyUploadRequest_KeyType_KeyType_MIN;
+  static constexpr KeyType KeyType_MAX =
+    BrowserPublicKeyUploadRequest_KeyType_KeyType_MAX;
+  static constexpr int KeyType_ARRAYSIZE =
+    BrowserPublicKeyUploadRequest_KeyType_KeyType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& KeyType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, KeyType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function KeyType_Name.");
+    return BrowserPublicKeyUploadRequest_KeyType_Name(enum_t_value);
+  }
+  static inline bool KeyType_Parse(const std::string& name,
+      KeyType* value) {
+    return BrowserPublicKeyUploadRequest_KeyType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPublicKeyFieldNumber = 1,
+    kSignatureFieldNumber = 2,
+    kKeyTrustLevelFieldNumber = 3,
+    kKeyTypeFieldNumber = 4,
+  };
+  // optional bytes public_key = 1;
+  bool has_public_key() const;
+  private:
+  bool _internal_has_public_key() const;
+  public:
+  void clear_public_key();
+  const std::string& public_key() const;
+  void set_public_key(const std::string& value);
+  void set_public_key(std::string&& value);
+  void set_public_key(const char* value);
+  void set_public_key(const void* value, size_t size);
+  std::string* mutable_public_key();
+  std::string* release_public_key();
+  void set_allocated_public_key(std::string* public_key);
+  private:
+  const std::string& _internal_public_key() const;
+  void _internal_set_public_key(const std::string& value);
+  std::string* _internal_mutable_public_key();
+  public:
+
+  // optional bytes signature = 2;
+  bool has_signature() const;
+  private:
+  bool _internal_has_signature() const;
+  public:
+  void clear_signature();
+  const std::string& signature() const;
+  void set_signature(const std::string& value);
+  void set_signature(std::string&& value);
+  void set_signature(const char* value);
+  void set_signature(const void* value, size_t size);
+  std::string* mutable_signature();
+  std::string* release_signature();
+  void set_allocated_signature(std::string* signature);
+  private:
+  const std::string& _internal_signature() const;
+  void _internal_set_signature(const std::string& value);
+  std::string* _internal_mutable_signature();
+  public:
+
+  // optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyTrustLevel key_trust_level = 3;
+  bool has_key_trust_level() const;
+  private:
+  bool _internal_has_key_trust_level() const;
+  public:
+  void clear_key_trust_level();
+  ::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel key_trust_level() const;
+  void set_key_trust_level(::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel value);
+  private:
+  ::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel _internal_key_trust_level() const;
+  void _internal_set_key_trust_level(::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel value);
+  public:
+
+  // optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyType key_type = 4;
+  bool has_key_type() const;
+  private:
+  bool _internal_has_key_type() const;
+  public:
+  void clear_key_type();
+  ::enterprise_management::BrowserPublicKeyUploadRequest_KeyType key_type() const;
+  void set_key_type(::enterprise_management::BrowserPublicKeyUploadRequest_KeyType value);
+  private:
+  ::enterprise_management::BrowserPublicKeyUploadRequest_KeyType _internal_key_type() const;
+  void _internal_set_key_type(::enterprise_management::BrowserPublicKeyUploadRequest_KeyType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BrowserPublicKeyUploadRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr public_key_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr signature_;
+  int key_trust_level_;
+  int key_type_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BrowserPublicKeyUploadResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BrowserPublicKeyUploadResponse) */ {
+ public:
+  BrowserPublicKeyUploadResponse();
+  virtual ~BrowserPublicKeyUploadResponse();
+
+  BrowserPublicKeyUploadResponse(const BrowserPublicKeyUploadResponse& from);
+  BrowserPublicKeyUploadResponse(BrowserPublicKeyUploadResponse&& from) noexcept
+    : BrowserPublicKeyUploadResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline BrowserPublicKeyUploadResponse& operator=(const BrowserPublicKeyUploadResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BrowserPublicKeyUploadResponse& operator=(BrowserPublicKeyUploadResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BrowserPublicKeyUploadResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BrowserPublicKeyUploadResponse* internal_default_instance() {
+    return reinterpret_cast<const BrowserPublicKeyUploadResponse*>(
+               &_BrowserPublicKeyUploadResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    176;
+
+  friend void swap(BrowserPublicKeyUploadResponse& a, BrowserPublicKeyUploadResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BrowserPublicKeyUploadResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BrowserPublicKeyUploadResponse* New() const final {
+    return CreateMaybeMessage<BrowserPublicKeyUploadResponse>(nullptr);
+  }
+
+  BrowserPublicKeyUploadResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BrowserPublicKeyUploadResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BrowserPublicKeyUploadResponse& from);
+  void MergeFrom(const BrowserPublicKeyUploadResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BrowserPublicKeyUploadResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BrowserPublicKeyUploadResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef BrowserPublicKeyUploadResponse_ResponseCode ResponseCode;
+  static constexpr ResponseCode UNDEFINED =
+    BrowserPublicKeyUploadResponse_ResponseCode_UNDEFINED;
+  static constexpr ResponseCode SUCCESS =
+    BrowserPublicKeyUploadResponse_ResponseCode_SUCCESS;
+  static constexpr ResponseCode INVALID_SIGNATURE =
+    BrowserPublicKeyUploadResponse_ResponseCode_INVALID_SIGNATURE;
+  static inline bool ResponseCode_IsValid(int value) {
+    return BrowserPublicKeyUploadResponse_ResponseCode_IsValid(value);
+  }
+  static constexpr ResponseCode ResponseCode_MIN =
+    BrowserPublicKeyUploadResponse_ResponseCode_ResponseCode_MIN;
+  static constexpr ResponseCode ResponseCode_MAX =
+    BrowserPublicKeyUploadResponse_ResponseCode_ResponseCode_MAX;
+  static constexpr int ResponseCode_ARRAYSIZE =
+    BrowserPublicKeyUploadResponse_ResponseCode_ResponseCode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ResponseCode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ResponseCode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ResponseCode_Name.");
+    return BrowserPublicKeyUploadResponse_ResponseCode_Name(enum_t_value);
+  }
+  static inline bool ResponseCode_Parse(const std::string& name,
+      ResponseCode* value) {
+    return BrowserPublicKeyUploadResponse_ResponseCode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kResponseCodeFieldNumber = 1,
+  };
+  // optional .enterprise_management.BrowserPublicKeyUploadResponse.ResponseCode response_code = 1;
+  bool has_response_code() const;
+  private:
+  bool _internal_has_response_code() const;
+  public:
+  void clear_response_code();
+  ::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode response_code() const;
+  void set_response_code(::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode value);
+  private:
+  ::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode _internal_response_code() const;
+  void _internal_set_response_code(::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BrowserPublicKeyUploadResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int response_code_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceManagementRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceManagementRequest) */ {
+ public:
+  DeviceManagementRequest();
+  virtual ~DeviceManagementRequest();
+
+  DeviceManagementRequest(const DeviceManagementRequest& from);
+  DeviceManagementRequest(DeviceManagementRequest&& from) noexcept
+    : DeviceManagementRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceManagementRequest& operator=(const DeviceManagementRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceManagementRequest& operator=(DeviceManagementRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceManagementRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceManagementRequest* internal_default_instance() {
+    return reinterpret_cast<const DeviceManagementRequest*>(
+               &_DeviceManagementRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    177;
+
+  friend void swap(DeviceManagementRequest& a, DeviceManagementRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceManagementRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceManagementRequest* New() const final {
+    return CreateMaybeMessage<DeviceManagementRequest>(nullptr);
+  }
+
+  DeviceManagementRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceManagementRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceManagementRequest& from);
+  void MergeFrom(const DeviceManagementRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceManagementRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceManagementRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRegisterRequestFieldNumber = 1,
+    kUnregisterRequestFieldNumber = 2,
+    kPolicyRequestFieldNumber = 3,
+    kDeviceStatusReportRequestFieldNumber = 4,
+    kSessionStatusReportRequestFieldNumber = 5,
+    kAutoEnrollmentRequestFieldNumber = 6,
+    kCertUploadRequestFieldNumber = 7,
+    kServiceApiAccessRequestFieldNumber = 8,
+    kDeviceStateRetrievalRequestFieldNumber = 9,
+    kDeviceStateKeyUpdateRequestFieldNumber = 10,
+    kDevicePairingRequestFieldNumber = 11,
+    kCheckDevicePairingRequestFieldNumber = 12,
+    kRemoteCommandRequestFieldNumber = 13,
+    kDeviceAttributeUpdatePermissionRequestFieldNumber = 14,
+    kDeviceAttributeUpdateRequestFieldNumber = 15,
+    kGcmIdUpdateRequestFieldNumber = 16,
+    kCheckAndroidManagementRequestFieldNumber = 17,
+    kCertificateBasedRegisterRequestFieldNumber = 18,
+    kActiveDirectoryEnrollPlayUserRequestFieldNumber = 19,
+    kActiveDirectoryPlayActivityRequestFieldNumber = 20,
+    kCheckDeviceLicenseRequestDeprecatedFieldNumber = 21,
+    kActiveDirectoryUserSigninRequestFieldNumber = 22,
+    kRegisterBrowserRequestFieldNumber = 23,
+    kAppInstallReportRequestFieldNumber = 25,
+    kChromeDesktopReportRequestFieldNumber = 26,
+    kPolicyValidationReportRequestFieldNumber = 27,
+    kDeviceInitialEnrollmentStateRequestFieldNumber = 28,
+    kRefreshAccountRequestFieldNumber = 29,
+    kChildStatusReportRequestFieldNumber = 30,
+    kRsuLookupKeyUploadRequestFieldNumber = 31,
+    kPublicSamlUserRequestFieldNumber = 32,
+    kChromeOsUserReportRequestFieldNumber = 33,
+    kClientCertificateProvisioningRequestFieldNumber = 34,
+    kExtensionInstallReportRequestFieldNumber = 35,
+    kCheckUserAccountRequestFieldNumber = 36,
+    kPrivateSetMembershipRequestFieldNumber = 37,
+    kBrowserPublicKeyUploadRequestFieldNumber = 38,
+    kUploadEuiccInfoRequestFieldNumber = 39,
+    kChromeProfileReportRequestFieldNumber = 40,
+  };
+  // optional .enterprise_management.DeviceRegisterRequest register_request = 1;
+  bool has_register_request() const;
+  private:
+  bool _internal_has_register_request() const;
+  public:
+  void clear_register_request();
+  const ::enterprise_management::DeviceRegisterRequest& register_request() const;
+  ::enterprise_management::DeviceRegisterRequest* release_register_request();
+  ::enterprise_management::DeviceRegisterRequest* mutable_register_request();
+  void set_allocated_register_request(::enterprise_management::DeviceRegisterRequest* register_request);
+  private:
+  const ::enterprise_management::DeviceRegisterRequest& _internal_register_request() const;
+  ::enterprise_management::DeviceRegisterRequest* _internal_mutable_register_request();
+  public:
+
+  // optional .enterprise_management.DeviceUnregisterRequest unregister_request = 2;
+  bool has_unregister_request() const;
+  private:
+  bool _internal_has_unregister_request() const;
+  public:
+  void clear_unregister_request();
+  const ::enterprise_management::DeviceUnregisterRequest& unregister_request() const;
+  ::enterprise_management::DeviceUnregisterRequest* release_unregister_request();
+  ::enterprise_management::DeviceUnregisterRequest* mutable_unregister_request();
+  void set_allocated_unregister_request(::enterprise_management::DeviceUnregisterRequest* unregister_request);
+  private:
+  const ::enterprise_management::DeviceUnregisterRequest& _internal_unregister_request() const;
+  ::enterprise_management::DeviceUnregisterRequest* _internal_mutable_unregister_request();
+  public:
+
+  // optional .enterprise_management.DevicePolicyRequest policy_request = 3;
+  bool has_policy_request() const;
+  private:
+  bool _internal_has_policy_request() const;
+  public:
+  void clear_policy_request();
+  const ::enterprise_management::DevicePolicyRequest& policy_request() const;
+  ::enterprise_management::DevicePolicyRequest* release_policy_request();
+  ::enterprise_management::DevicePolicyRequest* mutable_policy_request();
+  void set_allocated_policy_request(::enterprise_management::DevicePolicyRequest* policy_request);
+  private:
+  const ::enterprise_management::DevicePolicyRequest& _internal_policy_request() const;
+  ::enterprise_management::DevicePolicyRequest* _internal_mutable_policy_request();
+  public:
+
+  // optional .enterprise_management.DeviceStatusReportRequest device_status_report_request = 4;
+  bool has_device_status_report_request() const;
+  private:
+  bool _internal_has_device_status_report_request() const;
+  public:
+  void clear_device_status_report_request();
+  const ::enterprise_management::DeviceStatusReportRequest& device_status_report_request() const;
+  ::enterprise_management::DeviceStatusReportRequest* release_device_status_report_request();
+  ::enterprise_management::DeviceStatusReportRequest* mutable_device_status_report_request();
+  void set_allocated_device_status_report_request(::enterprise_management::DeviceStatusReportRequest* device_status_report_request);
+  private:
+  const ::enterprise_management::DeviceStatusReportRequest& _internal_device_status_report_request() const;
+  ::enterprise_management::DeviceStatusReportRequest* _internal_mutable_device_status_report_request();
+  public:
+
+  // optional .enterprise_management.SessionStatusReportRequest session_status_report_request = 5;
+  bool has_session_status_report_request() const;
+  private:
+  bool _internal_has_session_status_report_request() const;
+  public:
+  void clear_session_status_report_request();
+  const ::enterprise_management::SessionStatusReportRequest& session_status_report_request() const;
+  ::enterprise_management::SessionStatusReportRequest* release_session_status_report_request();
+  ::enterprise_management::SessionStatusReportRequest* mutable_session_status_report_request();
+  void set_allocated_session_status_report_request(::enterprise_management::SessionStatusReportRequest* session_status_report_request);
+  private:
+  const ::enterprise_management::SessionStatusReportRequest& _internal_session_status_report_request() const;
+  ::enterprise_management::SessionStatusReportRequest* _internal_mutable_session_status_report_request();
+  public:
+
+  // optional .enterprise_management.DeviceAutoEnrollmentRequest auto_enrollment_request = 6;
+  bool has_auto_enrollment_request() const;
+  private:
+  bool _internal_has_auto_enrollment_request() const;
+  public:
+  void clear_auto_enrollment_request();
+  const ::enterprise_management::DeviceAutoEnrollmentRequest& auto_enrollment_request() const;
+  ::enterprise_management::DeviceAutoEnrollmentRequest* release_auto_enrollment_request();
+  ::enterprise_management::DeviceAutoEnrollmentRequest* mutable_auto_enrollment_request();
+  void set_allocated_auto_enrollment_request(::enterprise_management::DeviceAutoEnrollmentRequest* auto_enrollment_request);
+  private:
+  const ::enterprise_management::DeviceAutoEnrollmentRequest& _internal_auto_enrollment_request() const;
+  ::enterprise_management::DeviceAutoEnrollmentRequest* _internal_mutable_auto_enrollment_request();
+  public:
+
+  // optional .enterprise_management.DeviceCertUploadRequest cert_upload_request = 7;
+  bool has_cert_upload_request() const;
+  private:
+  bool _internal_has_cert_upload_request() const;
+  public:
+  void clear_cert_upload_request();
+  const ::enterprise_management::DeviceCertUploadRequest& cert_upload_request() const;
+  ::enterprise_management::DeviceCertUploadRequest* release_cert_upload_request();
+  ::enterprise_management::DeviceCertUploadRequest* mutable_cert_upload_request();
+  void set_allocated_cert_upload_request(::enterprise_management::DeviceCertUploadRequest* cert_upload_request);
+  private:
+  const ::enterprise_management::DeviceCertUploadRequest& _internal_cert_upload_request() const;
+  ::enterprise_management::DeviceCertUploadRequest* _internal_mutable_cert_upload_request();
+  public:
+
+  // optional .enterprise_management.DeviceServiceApiAccessRequest service_api_access_request = 8;
+  bool has_service_api_access_request() const;
+  private:
+  bool _internal_has_service_api_access_request() const;
+  public:
+  void clear_service_api_access_request();
+  const ::enterprise_management::DeviceServiceApiAccessRequest& service_api_access_request() const;
+  ::enterprise_management::DeviceServiceApiAccessRequest* release_service_api_access_request();
+  ::enterprise_management::DeviceServiceApiAccessRequest* mutable_service_api_access_request();
+  void set_allocated_service_api_access_request(::enterprise_management::DeviceServiceApiAccessRequest* service_api_access_request);
+  private:
+  const ::enterprise_management::DeviceServiceApiAccessRequest& _internal_service_api_access_request() const;
+  ::enterprise_management::DeviceServiceApiAccessRequest* _internal_mutable_service_api_access_request();
+  public:
+
+  // optional .enterprise_management.DeviceStateRetrievalRequest device_state_retrieval_request = 9;
+  bool has_device_state_retrieval_request() const;
+  private:
+  bool _internal_has_device_state_retrieval_request() const;
+  public:
+  void clear_device_state_retrieval_request();
+  const ::enterprise_management::DeviceStateRetrievalRequest& device_state_retrieval_request() const;
+  ::enterprise_management::DeviceStateRetrievalRequest* release_device_state_retrieval_request();
+  ::enterprise_management::DeviceStateRetrievalRequest* mutable_device_state_retrieval_request();
+  void set_allocated_device_state_retrieval_request(::enterprise_management::DeviceStateRetrievalRequest* device_state_retrieval_request);
+  private:
+  const ::enterprise_management::DeviceStateRetrievalRequest& _internal_device_state_retrieval_request() const;
+  ::enterprise_management::DeviceStateRetrievalRequest* _internal_mutable_device_state_retrieval_request();
+  public:
+
+  // optional .enterprise_management.DeviceStateKeyUpdateRequest device_state_key_update_request = 10;
+  bool has_device_state_key_update_request() const;
+  private:
+  bool _internal_has_device_state_key_update_request() const;
+  public:
+  void clear_device_state_key_update_request();
+  const ::enterprise_management::DeviceStateKeyUpdateRequest& device_state_key_update_request() const;
+  ::enterprise_management::DeviceStateKeyUpdateRequest* release_device_state_key_update_request();
+  ::enterprise_management::DeviceStateKeyUpdateRequest* mutable_device_state_key_update_request();
+  void set_allocated_device_state_key_update_request(::enterprise_management::DeviceStateKeyUpdateRequest* device_state_key_update_request);
+  private:
+  const ::enterprise_management::DeviceStateKeyUpdateRequest& _internal_device_state_key_update_request() const;
+  ::enterprise_management::DeviceStateKeyUpdateRequest* _internal_mutable_device_state_key_update_request();
+  public:
+
+  // optional .enterprise_management.DevicePairingRequest device_pairing_request = 11;
+  bool has_device_pairing_request() const;
+  private:
+  bool _internal_has_device_pairing_request() const;
+  public:
+  void clear_device_pairing_request();
+  const ::enterprise_management::DevicePairingRequest& device_pairing_request() const;
+  ::enterprise_management::DevicePairingRequest* release_device_pairing_request();
+  ::enterprise_management::DevicePairingRequest* mutable_device_pairing_request();
+  void set_allocated_device_pairing_request(::enterprise_management::DevicePairingRequest* device_pairing_request);
+  private:
+  const ::enterprise_management::DevicePairingRequest& _internal_device_pairing_request() const;
+  ::enterprise_management::DevicePairingRequest* _internal_mutable_device_pairing_request();
+  public:
+
+  // optional .enterprise_management.CheckDevicePairingRequest check_device_pairing_request = 12;
+  bool has_check_device_pairing_request() const;
+  private:
+  bool _internal_has_check_device_pairing_request() const;
+  public:
+  void clear_check_device_pairing_request();
+  const ::enterprise_management::CheckDevicePairingRequest& check_device_pairing_request() const;
+  ::enterprise_management::CheckDevicePairingRequest* release_check_device_pairing_request();
+  ::enterprise_management::CheckDevicePairingRequest* mutable_check_device_pairing_request();
+  void set_allocated_check_device_pairing_request(::enterprise_management::CheckDevicePairingRequest* check_device_pairing_request);
+  private:
+  const ::enterprise_management::CheckDevicePairingRequest& _internal_check_device_pairing_request() const;
+  ::enterprise_management::CheckDevicePairingRequest* _internal_mutable_check_device_pairing_request();
+  public:
+
+  // optional .enterprise_management.DeviceRemoteCommandRequest remote_command_request = 13;
+  bool has_remote_command_request() const;
+  private:
+  bool _internal_has_remote_command_request() const;
+  public:
+  void clear_remote_command_request();
+  const ::enterprise_management::DeviceRemoteCommandRequest& remote_command_request() const;
+  ::enterprise_management::DeviceRemoteCommandRequest* release_remote_command_request();
+  ::enterprise_management::DeviceRemoteCommandRequest* mutable_remote_command_request();
+  void set_allocated_remote_command_request(::enterprise_management::DeviceRemoteCommandRequest* remote_command_request);
+  private:
+  const ::enterprise_management::DeviceRemoteCommandRequest& _internal_remote_command_request() const;
+  ::enterprise_management::DeviceRemoteCommandRequest* _internal_mutable_remote_command_request();
+  public:
+
+  // optional .enterprise_management.DeviceAttributeUpdatePermissionRequest device_attribute_update_permission_request = 14;
+  bool has_device_attribute_update_permission_request() const;
+  private:
+  bool _internal_has_device_attribute_update_permission_request() const;
+  public:
+  void clear_device_attribute_update_permission_request();
+  const ::enterprise_management::DeviceAttributeUpdatePermissionRequest& device_attribute_update_permission_request() const;
+  ::enterprise_management::DeviceAttributeUpdatePermissionRequest* release_device_attribute_update_permission_request();
+  ::enterprise_management::DeviceAttributeUpdatePermissionRequest* mutable_device_attribute_update_permission_request();
+  void set_allocated_device_attribute_update_permission_request(::enterprise_management::DeviceAttributeUpdatePermissionRequest* device_attribute_update_permission_request);
+  private:
+  const ::enterprise_management::DeviceAttributeUpdatePermissionRequest& _internal_device_attribute_update_permission_request() const;
+  ::enterprise_management::DeviceAttributeUpdatePermissionRequest* _internal_mutable_device_attribute_update_permission_request();
+  public:
+
+  // optional .enterprise_management.DeviceAttributeUpdateRequest device_attribute_update_request = 15;
+  bool has_device_attribute_update_request() const;
+  private:
+  bool _internal_has_device_attribute_update_request() const;
+  public:
+  void clear_device_attribute_update_request();
+  const ::enterprise_management::DeviceAttributeUpdateRequest& device_attribute_update_request() const;
+  ::enterprise_management::DeviceAttributeUpdateRequest* release_device_attribute_update_request();
+  ::enterprise_management::DeviceAttributeUpdateRequest* mutable_device_attribute_update_request();
+  void set_allocated_device_attribute_update_request(::enterprise_management::DeviceAttributeUpdateRequest* device_attribute_update_request);
+  private:
+  const ::enterprise_management::DeviceAttributeUpdateRequest& _internal_device_attribute_update_request() const;
+  ::enterprise_management::DeviceAttributeUpdateRequest* _internal_mutable_device_attribute_update_request();
+  public:
+
+  // optional .enterprise_management.GcmIdUpdateRequest gcm_id_update_request = 16;
+  bool has_gcm_id_update_request() const;
+  private:
+  bool _internal_has_gcm_id_update_request() const;
+  public:
+  void clear_gcm_id_update_request();
+  const ::enterprise_management::GcmIdUpdateRequest& gcm_id_update_request() const;
+  ::enterprise_management::GcmIdUpdateRequest* release_gcm_id_update_request();
+  ::enterprise_management::GcmIdUpdateRequest* mutable_gcm_id_update_request();
+  void set_allocated_gcm_id_update_request(::enterprise_management::GcmIdUpdateRequest* gcm_id_update_request);
+  private:
+  const ::enterprise_management::GcmIdUpdateRequest& _internal_gcm_id_update_request() const;
+  ::enterprise_management::GcmIdUpdateRequest* _internal_mutable_gcm_id_update_request();
+  public:
+
+  // optional .enterprise_management.CheckAndroidManagementRequest check_android_management_request = 17;
+  bool has_check_android_management_request() const;
+  private:
+  bool _internal_has_check_android_management_request() const;
+  public:
+  void clear_check_android_management_request();
+  const ::enterprise_management::CheckAndroidManagementRequest& check_android_management_request() const;
+  ::enterprise_management::CheckAndroidManagementRequest* release_check_android_management_request();
+  ::enterprise_management::CheckAndroidManagementRequest* mutable_check_android_management_request();
+  void set_allocated_check_android_management_request(::enterprise_management::CheckAndroidManagementRequest* check_android_management_request);
+  private:
+  const ::enterprise_management::CheckAndroidManagementRequest& _internal_check_android_management_request() const;
+  ::enterprise_management::CheckAndroidManagementRequest* _internal_mutable_check_android_management_request();
+  public:
+
+  // optional .enterprise_management.CertificateBasedDeviceRegisterRequest certificate_based_register_request = 18;
+  bool has_certificate_based_register_request() const;
+  private:
+  bool _internal_has_certificate_based_register_request() const;
+  public:
+  void clear_certificate_based_register_request();
+  const ::enterprise_management::CertificateBasedDeviceRegisterRequest& certificate_based_register_request() const;
+  ::enterprise_management::CertificateBasedDeviceRegisterRequest* release_certificate_based_register_request();
+  ::enterprise_management::CertificateBasedDeviceRegisterRequest* mutable_certificate_based_register_request();
+  void set_allocated_certificate_based_register_request(::enterprise_management::CertificateBasedDeviceRegisterRequest* certificate_based_register_request);
+  private:
+  const ::enterprise_management::CertificateBasedDeviceRegisterRequest& _internal_certificate_based_register_request() const;
+  ::enterprise_management::CertificateBasedDeviceRegisterRequest* _internal_mutable_certificate_based_register_request();
+  public:
+
+  // optional .enterprise_management.ActiveDirectoryEnrollPlayUserRequest active_directory_enroll_play_user_request = 19;
+  bool has_active_directory_enroll_play_user_request() const;
+  private:
+  bool _internal_has_active_directory_enroll_play_user_request() const;
+  public:
+  void clear_active_directory_enroll_play_user_request();
+  const ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest& active_directory_enroll_play_user_request() const;
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* release_active_directory_enroll_play_user_request();
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* mutable_active_directory_enroll_play_user_request();
+  void set_allocated_active_directory_enroll_play_user_request(::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* active_directory_enroll_play_user_request);
+  private:
+  const ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest& _internal_active_directory_enroll_play_user_request() const;
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* _internal_mutable_active_directory_enroll_play_user_request();
+  public:
+
+  // optional .enterprise_management.ActiveDirectoryPlayActivityRequest active_directory_play_activity_request = 20;
+  bool has_active_directory_play_activity_request() const;
+  private:
+  bool _internal_has_active_directory_play_activity_request() const;
+  public:
+  void clear_active_directory_play_activity_request();
+  const ::enterprise_management::ActiveDirectoryPlayActivityRequest& active_directory_play_activity_request() const;
+  ::enterprise_management::ActiveDirectoryPlayActivityRequest* release_active_directory_play_activity_request();
+  ::enterprise_management::ActiveDirectoryPlayActivityRequest* mutable_active_directory_play_activity_request();
+  void set_allocated_active_directory_play_activity_request(::enterprise_management::ActiveDirectoryPlayActivityRequest* active_directory_play_activity_request);
+  private:
+  const ::enterprise_management::ActiveDirectoryPlayActivityRequest& _internal_active_directory_play_activity_request() const;
+  ::enterprise_management::ActiveDirectoryPlayActivityRequest* _internal_mutable_active_directory_play_activity_request();
+  public:
+
+  // optional .enterprise_management.CheckDeviceLicenseRequest check_device_license_request_deprecated = 21 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_check_device_license_request_deprecated() const;
+  private:
+  bool _internal_has_check_device_license_request_deprecated() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_check_device_license_request_deprecated();
+  PROTOBUF_DEPRECATED const ::enterprise_management::CheckDeviceLicenseRequest& check_device_license_request_deprecated() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::CheckDeviceLicenseRequest* release_check_device_license_request_deprecated();
+  PROTOBUF_DEPRECATED ::enterprise_management::CheckDeviceLicenseRequest* mutable_check_device_license_request_deprecated();
+  PROTOBUF_DEPRECATED void set_allocated_check_device_license_request_deprecated(::enterprise_management::CheckDeviceLicenseRequest* check_device_license_request_deprecated);
+  private:
+  const ::enterprise_management::CheckDeviceLicenseRequest& _internal_check_device_license_request_deprecated() const;
+  ::enterprise_management::CheckDeviceLicenseRequest* _internal_mutable_check_device_license_request_deprecated();
+  public:
+
+  // optional .enterprise_management.ActiveDirectoryUserSigninRequest active_directory_user_signin_request = 22;
+  bool has_active_directory_user_signin_request() const;
+  private:
+  bool _internal_has_active_directory_user_signin_request() const;
+  public:
+  void clear_active_directory_user_signin_request();
+  const ::enterprise_management::ActiveDirectoryUserSigninRequest& active_directory_user_signin_request() const;
+  ::enterprise_management::ActiveDirectoryUserSigninRequest* release_active_directory_user_signin_request();
+  ::enterprise_management::ActiveDirectoryUserSigninRequest* mutable_active_directory_user_signin_request();
+  void set_allocated_active_directory_user_signin_request(::enterprise_management::ActiveDirectoryUserSigninRequest* active_directory_user_signin_request);
+  private:
+  const ::enterprise_management::ActiveDirectoryUserSigninRequest& _internal_active_directory_user_signin_request() const;
+  ::enterprise_management::ActiveDirectoryUserSigninRequest* _internal_mutable_active_directory_user_signin_request();
+  public:
+
+  // optional .enterprise_management.RegisterBrowserRequest register_browser_request = 23;
+  bool has_register_browser_request() const;
+  private:
+  bool _internal_has_register_browser_request() const;
+  public:
+  void clear_register_browser_request();
+  const ::enterprise_management::RegisterBrowserRequest& register_browser_request() const;
+  ::enterprise_management::RegisterBrowserRequest* release_register_browser_request();
+  ::enterprise_management::RegisterBrowserRequest* mutable_register_browser_request();
+  void set_allocated_register_browser_request(::enterprise_management::RegisterBrowserRequest* register_browser_request);
+  private:
+  const ::enterprise_management::RegisterBrowserRequest& _internal_register_browser_request() const;
+  ::enterprise_management::RegisterBrowserRequest* _internal_mutable_register_browser_request();
+  public:
+
+  // optional .enterprise_management.AppInstallReportRequest app_install_report_request = 25;
+  bool has_app_install_report_request() const;
+  private:
+  bool _internal_has_app_install_report_request() const;
+  public:
+  void clear_app_install_report_request();
+  const ::enterprise_management::AppInstallReportRequest& app_install_report_request() const;
+  ::enterprise_management::AppInstallReportRequest* release_app_install_report_request();
+  ::enterprise_management::AppInstallReportRequest* mutable_app_install_report_request();
+  void set_allocated_app_install_report_request(::enterprise_management::AppInstallReportRequest* app_install_report_request);
+  private:
+  const ::enterprise_management::AppInstallReportRequest& _internal_app_install_report_request() const;
+  ::enterprise_management::AppInstallReportRequest* _internal_mutable_app_install_report_request();
+  public:
+
+  // optional .enterprise_management.ChromeDesktopReportRequest chrome_desktop_report_request = 26;
+  bool has_chrome_desktop_report_request() const;
+  private:
+  bool _internal_has_chrome_desktop_report_request() const;
+  public:
+  void clear_chrome_desktop_report_request();
+  const ::enterprise_management::ChromeDesktopReportRequest& chrome_desktop_report_request() const;
+  ::enterprise_management::ChromeDesktopReportRequest* release_chrome_desktop_report_request();
+  ::enterprise_management::ChromeDesktopReportRequest* mutable_chrome_desktop_report_request();
+  void set_allocated_chrome_desktop_report_request(::enterprise_management::ChromeDesktopReportRequest* chrome_desktop_report_request);
+  private:
+  const ::enterprise_management::ChromeDesktopReportRequest& _internal_chrome_desktop_report_request() const;
+  ::enterprise_management::ChromeDesktopReportRequest* _internal_mutable_chrome_desktop_report_request();
+  public:
+
+  // optional .enterprise_management.PolicyValidationReportRequest policy_validation_report_request = 27;
+  bool has_policy_validation_report_request() const;
+  private:
+  bool _internal_has_policy_validation_report_request() const;
+  public:
+  void clear_policy_validation_report_request();
+  const ::enterprise_management::PolicyValidationReportRequest& policy_validation_report_request() const;
+  ::enterprise_management::PolicyValidationReportRequest* release_policy_validation_report_request();
+  ::enterprise_management::PolicyValidationReportRequest* mutable_policy_validation_report_request();
+  void set_allocated_policy_validation_report_request(::enterprise_management::PolicyValidationReportRequest* policy_validation_report_request);
+  private:
+  const ::enterprise_management::PolicyValidationReportRequest& _internal_policy_validation_report_request() const;
+  ::enterprise_management::PolicyValidationReportRequest* _internal_mutable_policy_validation_report_request();
+  public:
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateRequest device_initial_enrollment_state_request = 28;
+  bool has_device_initial_enrollment_state_request() const;
+  private:
+  bool _internal_has_device_initial_enrollment_state_request() const;
+  public:
+  void clear_device_initial_enrollment_state_request();
+  const ::enterprise_management::DeviceInitialEnrollmentStateRequest& device_initial_enrollment_state_request() const;
+  ::enterprise_management::DeviceInitialEnrollmentStateRequest* release_device_initial_enrollment_state_request();
+  ::enterprise_management::DeviceInitialEnrollmentStateRequest* mutable_device_initial_enrollment_state_request();
+  void set_allocated_device_initial_enrollment_state_request(::enterprise_management::DeviceInitialEnrollmentStateRequest* device_initial_enrollment_state_request);
+  private:
+  const ::enterprise_management::DeviceInitialEnrollmentStateRequest& _internal_device_initial_enrollment_state_request() const;
+  ::enterprise_management::DeviceInitialEnrollmentStateRequest* _internal_mutable_device_initial_enrollment_state_request();
+  public:
+
+  // optional .enterprise_management.RefreshAccountRequest refresh_account_request = 29;
+  bool has_refresh_account_request() const;
+  private:
+  bool _internal_has_refresh_account_request() const;
+  public:
+  void clear_refresh_account_request();
+  const ::enterprise_management::RefreshAccountRequest& refresh_account_request() const;
+  ::enterprise_management::RefreshAccountRequest* release_refresh_account_request();
+  ::enterprise_management::RefreshAccountRequest* mutable_refresh_account_request();
+  void set_allocated_refresh_account_request(::enterprise_management::RefreshAccountRequest* refresh_account_request);
+  private:
+  const ::enterprise_management::RefreshAccountRequest& _internal_refresh_account_request() const;
+  ::enterprise_management::RefreshAccountRequest* _internal_mutable_refresh_account_request();
+  public:
+
+  // optional .enterprise_management.ChildStatusReportRequest child_status_report_request = 30;
+  bool has_child_status_report_request() const;
+  private:
+  bool _internal_has_child_status_report_request() const;
+  public:
+  void clear_child_status_report_request();
+  const ::enterprise_management::ChildStatusReportRequest& child_status_report_request() const;
+  ::enterprise_management::ChildStatusReportRequest* release_child_status_report_request();
+  ::enterprise_management::ChildStatusReportRequest* mutable_child_status_report_request();
+  void set_allocated_child_status_report_request(::enterprise_management::ChildStatusReportRequest* child_status_report_request);
+  private:
+  const ::enterprise_management::ChildStatusReportRequest& _internal_child_status_report_request() const;
+  ::enterprise_management::ChildStatusReportRequest* _internal_mutable_child_status_report_request();
+  public:
+
+  // optional .enterprise_management.RsuLookupKeyUploadRequest rsu_lookup_key_upload_request = 31;
+  bool has_rsu_lookup_key_upload_request() const;
+  private:
+  bool _internal_has_rsu_lookup_key_upload_request() const;
+  public:
+  void clear_rsu_lookup_key_upload_request();
+  const ::enterprise_management::RsuLookupKeyUploadRequest& rsu_lookup_key_upload_request() const;
+  ::enterprise_management::RsuLookupKeyUploadRequest* release_rsu_lookup_key_upload_request();
+  ::enterprise_management::RsuLookupKeyUploadRequest* mutable_rsu_lookup_key_upload_request();
+  void set_allocated_rsu_lookup_key_upload_request(::enterprise_management::RsuLookupKeyUploadRequest* rsu_lookup_key_upload_request);
+  private:
+  const ::enterprise_management::RsuLookupKeyUploadRequest& _internal_rsu_lookup_key_upload_request() const;
+  ::enterprise_management::RsuLookupKeyUploadRequest* _internal_mutable_rsu_lookup_key_upload_request();
+  public:
+
+  // optional .enterprise_management.PublicSamlUserRequest public_saml_user_request = 32;
+  bool has_public_saml_user_request() const;
+  private:
+  bool _internal_has_public_saml_user_request() const;
+  public:
+  void clear_public_saml_user_request();
+  const ::enterprise_management::PublicSamlUserRequest& public_saml_user_request() const;
+  ::enterprise_management::PublicSamlUserRequest* release_public_saml_user_request();
+  ::enterprise_management::PublicSamlUserRequest* mutable_public_saml_user_request();
+  void set_allocated_public_saml_user_request(::enterprise_management::PublicSamlUserRequest* public_saml_user_request);
+  private:
+  const ::enterprise_management::PublicSamlUserRequest& _internal_public_saml_user_request() const;
+  ::enterprise_management::PublicSamlUserRequest* _internal_mutable_public_saml_user_request();
+  public:
+
+  // optional .enterprise_management.ChromeOsUserReportRequest chrome_os_user_report_request = 33;
+  bool has_chrome_os_user_report_request() const;
+  private:
+  bool _internal_has_chrome_os_user_report_request() const;
+  public:
+  void clear_chrome_os_user_report_request();
+  const ::enterprise_management::ChromeOsUserReportRequest& chrome_os_user_report_request() const;
+  ::enterprise_management::ChromeOsUserReportRequest* release_chrome_os_user_report_request();
+  ::enterprise_management::ChromeOsUserReportRequest* mutable_chrome_os_user_report_request();
+  void set_allocated_chrome_os_user_report_request(::enterprise_management::ChromeOsUserReportRequest* chrome_os_user_report_request);
+  private:
+  const ::enterprise_management::ChromeOsUserReportRequest& _internal_chrome_os_user_report_request() const;
+  ::enterprise_management::ChromeOsUserReportRequest* _internal_mutable_chrome_os_user_report_request();
+  public:
+
+  // optional .enterprise_management.ClientCertificateProvisioningRequest client_certificate_provisioning_request = 34;
+  bool has_client_certificate_provisioning_request() const;
+  private:
+  bool _internal_has_client_certificate_provisioning_request() const;
+  public:
+  void clear_client_certificate_provisioning_request();
+  const ::enterprise_management::ClientCertificateProvisioningRequest& client_certificate_provisioning_request() const;
+  ::enterprise_management::ClientCertificateProvisioningRequest* release_client_certificate_provisioning_request();
+  ::enterprise_management::ClientCertificateProvisioningRequest* mutable_client_certificate_provisioning_request();
+  void set_allocated_client_certificate_provisioning_request(::enterprise_management::ClientCertificateProvisioningRequest* client_certificate_provisioning_request);
+  private:
+  const ::enterprise_management::ClientCertificateProvisioningRequest& _internal_client_certificate_provisioning_request() const;
+  ::enterprise_management::ClientCertificateProvisioningRequest* _internal_mutable_client_certificate_provisioning_request();
+  public:
+
+  // optional .enterprise_management.ExtensionInstallReportRequest extension_install_report_request = 35;
+  bool has_extension_install_report_request() const;
+  private:
+  bool _internal_has_extension_install_report_request() const;
+  public:
+  void clear_extension_install_report_request();
+  const ::enterprise_management::ExtensionInstallReportRequest& extension_install_report_request() const;
+  ::enterprise_management::ExtensionInstallReportRequest* release_extension_install_report_request();
+  ::enterprise_management::ExtensionInstallReportRequest* mutable_extension_install_report_request();
+  void set_allocated_extension_install_report_request(::enterprise_management::ExtensionInstallReportRequest* extension_install_report_request);
+  private:
+  const ::enterprise_management::ExtensionInstallReportRequest& _internal_extension_install_report_request() const;
+  ::enterprise_management::ExtensionInstallReportRequest* _internal_mutable_extension_install_report_request();
+  public:
+
+  // optional .enterprise_management.CheckUserAccountRequest check_user_account_request = 36;
+  bool has_check_user_account_request() const;
+  private:
+  bool _internal_has_check_user_account_request() const;
+  public:
+  void clear_check_user_account_request();
+  const ::enterprise_management::CheckUserAccountRequest& check_user_account_request() const;
+  ::enterprise_management::CheckUserAccountRequest* release_check_user_account_request();
+  ::enterprise_management::CheckUserAccountRequest* mutable_check_user_account_request();
+  void set_allocated_check_user_account_request(::enterprise_management::CheckUserAccountRequest* check_user_account_request);
+  private:
+  const ::enterprise_management::CheckUserAccountRequest& _internal_check_user_account_request() const;
+  ::enterprise_management::CheckUserAccountRequest* _internal_mutable_check_user_account_request();
+  public:
+
+  // optional .enterprise_management.PrivateSetMembershipRequest private_set_membership_request = 37;
+  bool has_private_set_membership_request() const;
+  private:
+  bool _internal_has_private_set_membership_request() const;
+  public:
+  void clear_private_set_membership_request();
+  const ::enterprise_management::PrivateSetMembershipRequest& private_set_membership_request() const;
+  ::enterprise_management::PrivateSetMembershipRequest* release_private_set_membership_request();
+  ::enterprise_management::PrivateSetMembershipRequest* mutable_private_set_membership_request();
+  void set_allocated_private_set_membership_request(::enterprise_management::PrivateSetMembershipRequest* private_set_membership_request);
+  private:
+  const ::enterprise_management::PrivateSetMembershipRequest& _internal_private_set_membership_request() const;
+  ::enterprise_management::PrivateSetMembershipRequest* _internal_mutable_private_set_membership_request();
+  public:
+
+  // optional .enterprise_management.BrowserPublicKeyUploadRequest browser_public_key_upload_request = 38;
+  bool has_browser_public_key_upload_request() const;
+  private:
+  bool _internal_has_browser_public_key_upload_request() const;
+  public:
+  void clear_browser_public_key_upload_request();
+  const ::enterprise_management::BrowserPublicKeyUploadRequest& browser_public_key_upload_request() const;
+  ::enterprise_management::BrowserPublicKeyUploadRequest* release_browser_public_key_upload_request();
+  ::enterprise_management::BrowserPublicKeyUploadRequest* mutable_browser_public_key_upload_request();
+  void set_allocated_browser_public_key_upload_request(::enterprise_management::BrowserPublicKeyUploadRequest* browser_public_key_upload_request);
+  private:
+  const ::enterprise_management::BrowserPublicKeyUploadRequest& _internal_browser_public_key_upload_request() const;
+  ::enterprise_management::BrowserPublicKeyUploadRequest* _internal_mutable_browser_public_key_upload_request();
+  public:
+
+  // optional .enterprise_management.UploadEuiccInfoRequest upload_euicc_info_request = 39;
+  bool has_upload_euicc_info_request() const;
+  private:
+  bool _internal_has_upload_euicc_info_request() const;
+  public:
+  void clear_upload_euicc_info_request();
+  const ::enterprise_management::UploadEuiccInfoRequest& upload_euicc_info_request() const;
+  ::enterprise_management::UploadEuiccInfoRequest* release_upload_euicc_info_request();
+  ::enterprise_management::UploadEuiccInfoRequest* mutable_upload_euicc_info_request();
+  void set_allocated_upload_euicc_info_request(::enterprise_management::UploadEuiccInfoRequest* upload_euicc_info_request);
+  private:
+  const ::enterprise_management::UploadEuiccInfoRequest& _internal_upload_euicc_info_request() const;
+  ::enterprise_management::UploadEuiccInfoRequest* _internal_mutable_upload_euicc_info_request();
+  public:
+
+  // optional .enterprise_management.ChromeProfileReportRequest chrome_profile_report_request = 40;
+  bool has_chrome_profile_report_request() const;
+  private:
+  bool _internal_has_chrome_profile_report_request() const;
+  public:
+  void clear_chrome_profile_report_request();
+  const ::enterprise_management::ChromeProfileReportRequest& chrome_profile_report_request() const;
+  ::enterprise_management::ChromeProfileReportRequest* release_chrome_profile_report_request();
+  ::enterprise_management::ChromeProfileReportRequest* mutable_chrome_profile_report_request();
+  void set_allocated_chrome_profile_report_request(::enterprise_management::ChromeProfileReportRequest* chrome_profile_report_request);
+  private:
+  const ::enterprise_management::ChromeProfileReportRequest& _internal_chrome_profile_report_request() const;
+  ::enterprise_management::ChromeProfileReportRequest* _internal_mutable_chrome_profile_report_request();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceManagementRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::DeviceRegisterRequest* register_request_;
+  ::enterprise_management::DeviceUnregisterRequest* unregister_request_;
+  ::enterprise_management::DevicePolicyRequest* policy_request_;
+  ::enterprise_management::DeviceStatusReportRequest* device_status_report_request_;
+  ::enterprise_management::SessionStatusReportRequest* session_status_report_request_;
+  ::enterprise_management::DeviceAutoEnrollmentRequest* auto_enrollment_request_;
+  ::enterprise_management::DeviceCertUploadRequest* cert_upload_request_;
+  ::enterprise_management::DeviceServiceApiAccessRequest* service_api_access_request_;
+  ::enterprise_management::DeviceStateRetrievalRequest* device_state_retrieval_request_;
+  ::enterprise_management::DeviceStateKeyUpdateRequest* device_state_key_update_request_;
+  ::enterprise_management::DevicePairingRequest* device_pairing_request_;
+  ::enterprise_management::CheckDevicePairingRequest* check_device_pairing_request_;
+  ::enterprise_management::DeviceRemoteCommandRequest* remote_command_request_;
+  ::enterprise_management::DeviceAttributeUpdatePermissionRequest* device_attribute_update_permission_request_;
+  ::enterprise_management::DeviceAttributeUpdateRequest* device_attribute_update_request_;
+  ::enterprise_management::GcmIdUpdateRequest* gcm_id_update_request_;
+  ::enterprise_management::CheckAndroidManagementRequest* check_android_management_request_;
+  ::enterprise_management::CertificateBasedDeviceRegisterRequest* certificate_based_register_request_;
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* active_directory_enroll_play_user_request_;
+  ::enterprise_management::ActiveDirectoryPlayActivityRequest* active_directory_play_activity_request_;
+  ::enterprise_management::CheckDeviceLicenseRequest* check_device_license_request_deprecated_;
+  ::enterprise_management::ActiveDirectoryUserSigninRequest* active_directory_user_signin_request_;
+  ::enterprise_management::RegisterBrowserRequest* register_browser_request_;
+  ::enterprise_management::AppInstallReportRequest* app_install_report_request_;
+  ::enterprise_management::ChromeDesktopReportRequest* chrome_desktop_report_request_;
+  ::enterprise_management::PolicyValidationReportRequest* policy_validation_report_request_;
+  ::enterprise_management::DeviceInitialEnrollmentStateRequest* device_initial_enrollment_state_request_;
+  ::enterprise_management::RefreshAccountRequest* refresh_account_request_;
+  ::enterprise_management::ChildStatusReportRequest* child_status_report_request_;
+  ::enterprise_management::RsuLookupKeyUploadRequest* rsu_lookup_key_upload_request_;
+  ::enterprise_management::PublicSamlUserRequest* public_saml_user_request_;
+  ::enterprise_management::ChromeOsUserReportRequest* chrome_os_user_report_request_;
+  ::enterprise_management::ClientCertificateProvisioningRequest* client_certificate_provisioning_request_;
+  ::enterprise_management::ExtensionInstallReportRequest* extension_install_report_request_;
+  ::enterprise_management::CheckUserAccountRequest* check_user_account_request_;
+  ::enterprise_management::PrivateSetMembershipRequest* private_set_membership_request_;
+  ::enterprise_management::BrowserPublicKeyUploadRequest* browser_public_key_upload_request_;
+  ::enterprise_management::UploadEuiccInfoRequest* upload_euicc_info_request_;
+  ::enterprise_management::ChromeProfileReportRequest* chrome_profile_report_request_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceManagementResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceManagementResponse) */ {
+ public:
+  DeviceManagementResponse();
+  virtual ~DeviceManagementResponse();
+
+  DeviceManagementResponse(const DeviceManagementResponse& from);
+  DeviceManagementResponse(DeviceManagementResponse&& from) noexcept
+    : DeviceManagementResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceManagementResponse& operator=(const DeviceManagementResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceManagementResponse& operator=(DeviceManagementResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceManagementResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceManagementResponse* internal_default_instance() {
+    return reinterpret_cast<const DeviceManagementResponse*>(
+               &_DeviceManagementResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    178;
+
+  friend void swap(DeviceManagementResponse& a, DeviceManagementResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceManagementResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceManagementResponse* New() const final {
+    return CreateMaybeMessage<DeviceManagementResponse>(nullptr);
+  }
+
+  DeviceManagementResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceManagementResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceManagementResponse& from);
+  void MergeFrom(const DeviceManagementResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceManagementResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceManagementResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kErrorDetailFieldNumber = 39,
+    kErrorMessageFieldNumber = 2,
+    kRegisterResponseFieldNumber = 3,
+    kUnregisterResponseFieldNumber = 4,
+    kPolicyResponseFieldNumber = 5,
+    kDeviceStatusReportResponseFieldNumber = 6,
+    kSessionStatusReportResponseFieldNumber = 7,
+    kAutoEnrollmentResponseFieldNumber = 8,
+    kCertUploadResponseFieldNumber = 9,
+    kServiceApiAccessResponseFieldNumber = 10,
+    kDeviceStateRetrievalResponseFieldNumber = 11,
+    kDevicePairingResponseFieldNumber = 12,
+    kCheckDevicePairingResponseFieldNumber = 13,
+    kRemoteCommandResponseFieldNumber = 14,
+    kDeviceAttributeUpdatePermissionResponseFieldNumber = 15,
+    kDeviceAttributeUpdateResponseFieldNumber = 16,
+    kGcmIdUpdateResponseFieldNumber = 17,
+    kCheckAndroidManagementResponseFieldNumber = 18,
+    kActiveDirectoryEnrollPlayUserResponseFieldNumber = 19,
+    kActiveDirectoryPlayActivityResponseFieldNumber = 20,
+    kCheckDeviceLicenseResponseDeprecatedFieldNumber = 21,
+    kActiveDirectoryUserSigninResponseFieldNumber = 22,
+    kChromeDesktopReportResponseFieldNumber = 23,
+    kAppInstallReportResponseFieldNumber = 25,
+    kPolicyValidationReportResponseFieldNumber = 26,
+    kDeviceInitialEnrollmentStateResponseFieldNumber = 27,
+    kRefreshAccountResponseFieldNumber = 28,
+    kChildStatusReportResponseFieldNumber = 29,
+    kRsuLookupKeyUploadResponseFieldNumber = 30,
+    kPublicSamlUserResponseFieldNumber = 31,
+    kChromeOsUserReportResponseFieldNumber = 32,
+    kClientCertificateProvisioningResponseFieldNumber = 33,
+    kCheckUserAccountResponseFieldNumber = 34,
+    kPrivateSetMembershipResponseFieldNumber = 35,
+    kBrowserPublicKeyUploadResponseFieldNumber = 36,
+    kUploadEuiccInfoResponseFieldNumber = 37,
+    kChromeProfileReportResponseFieldNumber = 38,
+  };
+  // repeated .enterprise_management.DeviceManagementErrorDetail error_detail = 39;
+  int error_detail_size() const;
+  private:
+  int _internal_error_detail_size() const;
+  public:
+  void clear_error_detail();
+  private:
+  ::enterprise_management::DeviceManagementErrorDetail _internal_error_detail(int index) const;
+  void _internal_add_error_detail(::enterprise_management::DeviceManagementErrorDetail value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_error_detail();
+  public:
+  ::enterprise_management::DeviceManagementErrorDetail error_detail(int index) const;
+  void set_error_detail(int index, ::enterprise_management::DeviceManagementErrorDetail value);
+  void add_error_detail(::enterprise_management::DeviceManagementErrorDetail value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& error_detail() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_error_detail();
+
+  // optional string error_message = 2;
+  bool has_error_message() const;
+  private:
+  bool _internal_has_error_message() const;
+  public:
+  void clear_error_message();
+  const std::string& error_message() const;
+  void set_error_message(const std::string& value);
+  void set_error_message(std::string&& value);
+  void set_error_message(const char* value);
+  void set_error_message(const char* value, size_t size);
+  std::string* mutable_error_message();
+  std::string* release_error_message();
+  void set_allocated_error_message(std::string* error_message);
+  private:
+  const std::string& _internal_error_message() const;
+  void _internal_set_error_message(const std::string& value);
+  std::string* _internal_mutable_error_message();
+  public:
+
+  // optional .enterprise_management.DeviceRegisterResponse register_response = 3;
+  bool has_register_response() const;
+  private:
+  bool _internal_has_register_response() const;
+  public:
+  void clear_register_response();
+  const ::enterprise_management::DeviceRegisterResponse& register_response() const;
+  ::enterprise_management::DeviceRegisterResponse* release_register_response();
+  ::enterprise_management::DeviceRegisterResponse* mutable_register_response();
+  void set_allocated_register_response(::enterprise_management::DeviceRegisterResponse* register_response);
+  private:
+  const ::enterprise_management::DeviceRegisterResponse& _internal_register_response() const;
+  ::enterprise_management::DeviceRegisterResponse* _internal_mutable_register_response();
+  public:
+
+  // optional .enterprise_management.DeviceUnregisterResponse unregister_response = 4;
+  bool has_unregister_response() const;
+  private:
+  bool _internal_has_unregister_response() const;
+  public:
+  void clear_unregister_response();
+  const ::enterprise_management::DeviceUnregisterResponse& unregister_response() const;
+  ::enterprise_management::DeviceUnregisterResponse* release_unregister_response();
+  ::enterprise_management::DeviceUnregisterResponse* mutable_unregister_response();
+  void set_allocated_unregister_response(::enterprise_management::DeviceUnregisterResponse* unregister_response);
+  private:
+  const ::enterprise_management::DeviceUnregisterResponse& _internal_unregister_response() const;
+  ::enterprise_management::DeviceUnregisterResponse* _internal_mutable_unregister_response();
+  public:
+
+  // optional .enterprise_management.DevicePolicyResponse policy_response = 5;
+  bool has_policy_response() const;
+  private:
+  bool _internal_has_policy_response() const;
+  public:
+  void clear_policy_response();
+  const ::enterprise_management::DevicePolicyResponse& policy_response() const;
+  ::enterprise_management::DevicePolicyResponse* release_policy_response();
+  ::enterprise_management::DevicePolicyResponse* mutable_policy_response();
+  void set_allocated_policy_response(::enterprise_management::DevicePolicyResponse* policy_response);
+  private:
+  const ::enterprise_management::DevicePolicyResponse& _internal_policy_response() const;
+  ::enterprise_management::DevicePolicyResponse* _internal_mutable_policy_response();
+  public:
+
+  // optional .enterprise_management.DeviceStatusReportResponse device_status_report_response = 6;
+  bool has_device_status_report_response() const;
+  private:
+  bool _internal_has_device_status_report_response() const;
+  public:
+  void clear_device_status_report_response();
+  const ::enterprise_management::DeviceStatusReportResponse& device_status_report_response() const;
+  ::enterprise_management::DeviceStatusReportResponse* release_device_status_report_response();
+  ::enterprise_management::DeviceStatusReportResponse* mutable_device_status_report_response();
+  void set_allocated_device_status_report_response(::enterprise_management::DeviceStatusReportResponse* device_status_report_response);
+  private:
+  const ::enterprise_management::DeviceStatusReportResponse& _internal_device_status_report_response() const;
+  ::enterprise_management::DeviceStatusReportResponse* _internal_mutable_device_status_report_response();
+  public:
+
+  // optional .enterprise_management.SessionStatusReportResponse session_status_report_response = 7;
+  bool has_session_status_report_response() const;
+  private:
+  bool _internal_has_session_status_report_response() const;
+  public:
+  void clear_session_status_report_response();
+  const ::enterprise_management::SessionStatusReportResponse& session_status_report_response() const;
+  ::enterprise_management::SessionStatusReportResponse* release_session_status_report_response();
+  ::enterprise_management::SessionStatusReportResponse* mutable_session_status_report_response();
+  void set_allocated_session_status_report_response(::enterprise_management::SessionStatusReportResponse* session_status_report_response);
+  private:
+  const ::enterprise_management::SessionStatusReportResponse& _internal_session_status_report_response() const;
+  ::enterprise_management::SessionStatusReportResponse* _internal_mutable_session_status_report_response();
+  public:
+
+  // optional .enterprise_management.DeviceAutoEnrollmentResponse auto_enrollment_response = 8;
+  bool has_auto_enrollment_response() const;
+  private:
+  bool _internal_has_auto_enrollment_response() const;
+  public:
+  void clear_auto_enrollment_response();
+  const ::enterprise_management::DeviceAutoEnrollmentResponse& auto_enrollment_response() const;
+  ::enterprise_management::DeviceAutoEnrollmentResponse* release_auto_enrollment_response();
+  ::enterprise_management::DeviceAutoEnrollmentResponse* mutable_auto_enrollment_response();
+  void set_allocated_auto_enrollment_response(::enterprise_management::DeviceAutoEnrollmentResponse* auto_enrollment_response);
+  private:
+  const ::enterprise_management::DeviceAutoEnrollmentResponse& _internal_auto_enrollment_response() const;
+  ::enterprise_management::DeviceAutoEnrollmentResponse* _internal_mutable_auto_enrollment_response();
+  public:
+
+  // optional .enterprise_management.DeviceCertUploadResponse cert_upload_response = 9;
+  bool has_cert_upload_response() const;
+  private:
+  bool _internal_has_cert_upload_response() const;
+  public:
+  void clear_cert_upload_response();
+  const ::enterprise_management::DeviceCertUploadResponse& cert_upload_response() const;
+  ::enterprise_management::DeviceCertUploadResponse* release_cert_upload_response();
+  ::enterprise_management::DeviceCertUploadResponse* mutable_cert_upload_response();
+  void set_allocated_cert_upload_response(::enterprise_management::DeviceCertUploadResponse* cert_upload_response);
+  private:
+  const ::enterprise_management::DeviceCertUploadResponse& _internal_cert_upload_response() const;
+  ::enterprise_management::DeviceCertUploadResponse* _internal_mutable_cert_upload_response();
+  public:
+
+  // optional .enterprise_management.DeviceServiceApiAccessResponse service_api_access_response = 10;
+  bool has_service_api_access_response() const;
+  private:
+  bool _internal_has_service_api_access_response() const;
+  public:
+  void clear_service_api_access_response();
+  const ::enterprise_management::DeviceServiceApiAccessResponse& service_api_access_response() const;
+  ::enterprise_management::DeviceServiceApiAccessResponse* release_service_api_access_response();
+  ::enterprise_management::DeviceServiceApiAccessResponse* mutable_service_api_access_response();
+  void set_allocated_service_api_access_response(::enterprise_management::DeviceServiceApiAccessResponse* service_api_access_response);
+  private:
+  const ::enterprise_management::DeviceServiceApiAccessResponse& _internal_service_api_access_response() const;
+  ::enterprise_management::DeviceServiceApiAccessResponse* _internal_mutable_service_api_access_response();
+  public:
+
+  // optional .enterprise_management.DeviceStateRetrievalResponse device_state_retrieval_response = 11;
+  bool has_device_state_retrieval_response() const;
+  private:
+  bool _internal_has_device_state_retrieval_response() const;
+  public:
+  void clear_device_state_retrieval_response();
+  const ::enterprise_management::DeviceStateRetrievalResponse& device_state_retrieval_response() const;
+  ::enterprise_management::DeviceStateRetrievalResponse* release_device_state_retrieval_response();
+  ::enterprise_management::DeviceStateRetrievalResponse* mutable_device_state_retrieval_response();
+  void set_allocated_device_state_retrieval_response(::enterprise_management::DeviceStateRetrievalResponse* device_state_retrieval_response);
+  private:
+  const ::enterprise_management::DeviceStateRetrievalResponse& _internal_device_state_retrieval_response() const;
+  ::enterprise_management::DeviceStateRetrievalResponse* _internal_mutable_device_state_retrieval_response();
+  public:
+
+  // optional .enterprise_management.DevicePairingResponse device_pairing_response = 12;
+  bool has_device_pairing_response() const;
+  private:
+  bool _internal_has_device_pairing_response() const;
+  public:
+  void clear_device_pairing_response();
+  const ::enterprise_management::DevicePairingResponse& device_pairing_response() const;
+  ::enterprise_management::DevicePairingResponse* release_device_pairing_response();
+  ::enterprise_management::DevicePairingResponse* mutable_device_pairing_response();
+  void set_allocated_device_pairing_response(::enterprise_management::DevicePairingResponse* device_pairing_response);
+  private:
+  const ::enterprise_management::DevicePairingResponse& _internal_device_pairing_response() const;
+  ::enterprise_management::DevicePairingResponse* _internal_mutable_device_pairing_response();
+  public:
+
+  // optional .enterprise_management.CheckDevicePairingResponse check_device_pairing_response = 13;
+  bool has_check_device_pairing_response() const;
+  private:
+  bool _internal_has_check_device_pairing_response() const;
+  public:
+  void clear_check_device_pairing_response();
+  const ::enterprise_management::CheckDevicePairingResponse& check_device_pairing_response() const;
+  ::enterprise_management::CheckDevicePairingResponse* release_check_device_pairing_response();
+  ::enterprise_management::CheckDevicePairingResponse* mutable_check_device_pairing_response();
+  void set_allocated_check_device_pairing_response(::enterprise_management::CheckDevicePairingResponse* check_device_pairing_response);
+  private:
+  const ::enterprise_management::CheckDevicePairingResponse& _internal_check_device_pairing_response() const;
+  ::enterprise_management::CheckDevicePairingResponse* _internal_mutable_check_device_pairing_response();
+  public:
+
+  // optional .enterprise_management.DeviceRemoteCommandResponse remote_command_response = 14;
+  bool has_remote_command_response() const;
+  private:
+  bool _internal_has_remote_command_response() const;
+  public:
+  void clear_remote_command_response();
+  const ::enterprise_management::DeviceRemoteCommandResponse& remote_command_response() const;
+  ::enterprise_management::DeviceRemoteCommandResponse* release_remote_command_response();
+  ::enterprise_management::DeviceRemoteCommandResponse* mutable_remote_command_response();
+  void set_allocated_remote_command_response(::enterprise_management::DeviceRemoteCommandResponse* remote_command_response);
+  private:
+  const ::enterprise_management::DeviceRemoteCommandResponse& _internal_remote_command_response() const;
+  ::enterprise_management::DeviceRemoteCommandResponse* _internal_mutable_remote_command_response();
+  public:
+
+  // optional .enterprise_management.DeviceAttributeUpdatePermissionResponse device_attribute_update_permission_response = 15;
+  bool has_device_attribute_update_permission_response() const;
+  private:
+  bool _internal_has_device_attribute_update_permission_response() const;
+  public:
+  void clear_device_attribute_update_permission_response();
+  const ::enterprise_management::DeviceAttributeUpdatePermissionResponse& device_attribute_update_permission_response() const;
+  ::enterprise_management::DeviceAttributeUpdatePermissionResponse* release_device_attribute_update_permission_response();
+  ::enterprise_management::DeviceAttributeUpdatePermissionResponse* mutable_device_attribute_update_permission_response();
+  void set_allocated_device_attribute_update_permission_response(::enterprise_management::DeviceAttributeUpdatePermissionResponse* device_attribute_update_permission_response);
+  private:
+  const ::enterprise_management::DeviceAttributeUpdatePermissionResponse& _internal_device_attribute_update_permission_response() const;
+  ::enterprise_management::DeviceAttributeUpdatePermissionResponse* _internal_mutable_device_attribute_update_permission_response();
+  public:
+
+  // optional .enterprise_management.DeviceAttributeUpdateResponse device_attribute_update_response = 16;
+  bool has_device_attribute_update_response() const;
+  private:
+  bool _internal_has_device_attribute_update_response() const;
+  public:
+  void clear_device_attribute_update_response();
+  const ::enterprise_management::DeviceAttributeUpdateResponse& device_attribute_update_response() const;
+  ::enterprise_management::DeviceAttributeUpdateResponse* release_device_attribute_update_response();
+  ::enterprise_management::DeviceAttributeUpdateResponse* mutable_device_attribute_update_response();
+  void set_allocated_device_attribute_update_response(::enterprise_management::DeviceAttributeUpdateResponse* device_attribute_update_response);
+  private:
+  const ::enterprise_management::DeviceAttributeUpdateResponse& _internal_device_attribute_update_response() const;
+  ::enterprise_management::DeviceAttributeUpdateResponse* _internal_mutable_device_attribute_update_response();
+  public:
+
+  // optional .enterprise_management.GcmIdUpdateResponse gcm_id_update_response = 17;
+  bool has_gcm_id_update_response() const;
+  private:
+  bool _internal_has_gcm_id_update_response() const;
+  public:
+  void clear_gcm_id_update_response();
+  const ::enterprise_management::GcmIdUpdateResponse& gcm_id_update_response() const;
+  ::enterprise_management::GcmIdUpdateResponse* release_gcm_id_update_response();
+  ::enterprise_management::GcmIdUpdateResponse* mutable_gcm_id_update_response();
+  void set_allocated_gcm_id_update_response(::enterprise_management::GcmIdUpdateResponse* gcm_id_update_response);
+  private:
+  const ::enterprise_management::GcmIdUpdateResponse& _internal_gcm_id_update_response() const;
+  ::enterprise_management::GcmIdUpdateResponse* _internal_mutable_gcm_id_update_response();
+  public:
+
+  // optional .enterprise_management.CheckAndroidManagementResponse check_android_management_response = 18;
+  bool has_check_android_management_response() const;
+  private:
+  bool _internal_has_check_android_management_response() const;
+  public:
+  void clear_check_android_management_response();
+  const ::enterprise_management::CheckAndroidManagementResponse& check_android_management_response() const;
+  ::enterprise_management::CheckAndroidManagementResponse* release_check_android_management_response();
+  ::enterprise_management::CheckAndroidManagementResponse* mutable_check_android_management_response();
+  void set_allocated_check_android_management_response(::enterprise_management::CheckAndroidManagementResponse* check_android_management_response);
+  private:
+  const ::enterprise_management::CheckAndroidManagementResponse& _internal_check_android_management_response() const;
+  ::enterprise_management::CheckAndroidManagementResponse* _internal_mutable_check_android_management_response();
+  public:
+
+  // optional .enterprise_management.ActiveDirectoryEnrollPlayUserResponse active_directory_enroll_play_user_response = 19;
+  bool has_active_directory_enroll_play_user_response() const;
+  private:
+  bool _internal_has_active_directory_enroll_play_user_response() const;
+  public:
+  void clear_active_directory_enroll_play_user_response();
+  const ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse& active_directory_enroll_play_user_response() const;
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* release_active_directory_enroll_play_user_response();
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* mutable_active_directory_enroll_play_user_response();
+  void set_allocated_active_directory_enroll_play_user_response(::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* active_directory_enroll_play_user_response);
+  private:
+  const ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse& _internal_active_directory_enroll_play_user_response() const;
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* _internal_mutable_active_directory_enroll_play_user_response();
+  public:
+
+  // optional .enterprise_management.ActiveDirectoryPlayActivityResponse active_directory_play_activity_response = 20;
+  bool has_active_directory_play_activity_response() const;
+  private:
+  bool _internal_has_active_directory_play_activity_response() const;
+  public:
+  void clear_active_directory_play_activity_response();
+  const ::enterprise_management::ActiveDirectoryPlayActivityResponse& active_directory_play_activity_response() const;
+  ::enterprise_management::ActiveDirectoryPlayActivityResponse* release_active_directory_play_activity_response();
+  ::enterprise_management::ActiveDirectoryPlayActivityResponse* mutable_active_directory_play_activity_response();
+  void set_allocated_active_directory_play_activity_response(::enterprise_management::ActiveDirectoryPlayActivityResponse* active_directory_play_activity_response);
+  private:
+  const ::enterprise_management::ActiveDirectoryPlayActivityResponse& _internal_active_directory_play_activity_response() const;
+  ::enterprise_management::ActiveDirectoryPlayActivityResponse* _internal_mutable_active_directory_play_activity_response();
+  public:
+
+  // optional .enterprise_management.CheckDeviceLicenseResponse check_device_license_response_deprecated = 21 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_check_device_license_response_deprecated() const;
+  private:
+  bool _internal_has_check_device_license_response_deprecated() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_check_device_license_response_deprecated();
+  PROTOBUF_DEPRECATED const ::enterprise_management::CheckDeviceLicenseResponse& check_device_license_response_deprecated() const;
+  PROTOBUF_DEPRECATED ::enterprise_management::CheckDeviceLicenseResponse* release_check_device_license_response_deprecated();
+  PROTOBUF_DEPRECATED ::enterprise_management::CheckDeviceLicenseResponse* mutable_check_device_license_response_deprecated();
+  PROTOBUF_DEPRECATED void set_allocated_check_device_license_response_deprecated(::enterprise_management::CheckDeviceLicenseResponse* check_device_license_response_deprecated);
+  private:
+  const ::enterprise_management::CheckDeviceLicenseResponse& _internal_check_device_license_response_deprecated() const;
+  ::enterprise_management::CheckDeviceLicenseResponse* _internal_mutable_check_device_license_response_deprecated();
+  public:
+
+  // optional .enterprise_management.ActiveDirectoryUserSigninResponse active_directory_user_signin_response = 22;
+  bool has_active_directory_user_signin_response() const;
+  private:
+  bool _internal_has_active_directory_user_signin_response() const;
+  public:
+  void clear_active_directory_user_signin_response();
+  const ::enterprise_management::ActiveDirectoryUserSigninResponse& active_directory_user_signin_response() const;
+  ::enterprise_management::ActiveDirectoryUserSigninResponse* release_active_directory_user_signin_response();
+  ::enterprise_management::ActiveDirectoryUserSigninResponse* mutable_active_directory_user_signin_response();
+  void set_allocated_active_directory_user_signin_response(::enterprise_management::ActiveDirectoryUserSigninResponse* active_directory_user_signin_response);
+  private:
+  const ::enterprise_management::ActiveDirectoryUserSigninResponse& _internal_active_directory_user_signin_response() const;
+  ::enterprise_management::ActiveDirectoryUserSigninResponse* _internal_mutable_active_directory_user_signin_response();
+  public:
+
+  // optional .enterprise_management.ChromeDesktopReportResponse chrome_desktop_report_response = 23;
+  bool has_chrome_desktop_report_response() const;
+  private:
+  bool _internal_has_chrome_desktop_report_response() const;
+  public:
+  void clear_chrome_desktop_report_response();
+  const ::enterprise_management::ChromeDesktopReportResponse& chrome_desktop_report_response() const;
+  ::enterprise_management::ChromeDesktopReportResponse* release_chrome_desktop_report_response();
+  ::enterprise_management::ChromeDesktopReportResponse* mutable_chrome_desktop_report_response();
+  void set_allocated_chrome_desktop_report_response(::enterprise_management::ChromeDesktopReportResponse* chrome_desktop_report_response);
+  private:
+  const ::enterprise_management::ChromeDesktopReportResponse& _internal_chrome_desktop_report_response() const;
+  ::enterprise_management::ChromeDesktopReportResponse* _internal_mutable_chrome_desktop_report_response();
+  public:
+
+  // optional .enterprise_management.AppInstallReportResponse app_install_report_response = 25;
+  bool has_app_install_report_response() const;
+  private:
+  bool _internal_has_app_install_report_response() const;
+  public:
+  void clear_app_install_report_response();
+  const ::enterprise_management::AppInstallReportResponse& app_install_report_response() const;
+  ::enterprise_management::AppInstallReportResponse* release_app_install_report_response();
+  ::enterprise_management::AppInstallReportResponse* mutable_app_install_report_response();
+  void set_allocated_app_install_report_response(::enterprise_management::AppInstallReportResponse* app_install_report_response);
+  private:
+  const ::enterprise_management::AppInstallReportResponse& _internal_app_install_report_response() const;
+  ::enterprise_management::AppInstallReportResponse* _internal_mutable_app_install_report_response();
+  public:
+
+  // optional .enterprise_management.PolicyValidationReportResponse policy_validation_report_response = 26;
+  bool has_policy_validation_report_response() const;
+  private:
+  bool _internal_has_policy_validation_report_response() const;
+  public:
+  void clear_policy_validation_report_response();
+  const ::enterprise_management::PolicyValidationReportResponse& policy_validation_report_response() const;
+  ::enterprise_management::PolicyValidationReportResponse* release_policy_validation_report_response();
+  ::enterprise_management::PolicyValidationReportResponse* mutable_policy_validation_report_response();
+  void set_allocated_policy_validation_report_response(::enterprise_management::PolicyValidationReportResponse* policy_validation_report_response);
+  private:
+  const ::enterprise_management::PolicyValidationReportResponse& _internal_policy_validation_report_response() const;
+  ::enterprise_management::PolicyValidationReportResponse* _internal_mutable_policy_validation_report_response();
+  public:
+
+  // optional .enterprise_management.DeviceInitialEnrollmentStateResponse device_initial_enrollment_state_response = 27;
+  bool has_device_initial_enrollment_state_response() const;
+  private:
+  bool _internal_has_device_initial_enrollment_state_response() const;
+  public:
+  void clear_device_initial_enrollment_state_response();
+  const ::enterprise_management::DeviceInitialEnrollmentStateResponse& device_initial_enrollment_state_response() const;
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* release_device_initial_enrollment_state_response();
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* mutable_device_initial_enrollment_state_response();
+  void set_allocated_device_initial_enrollment_state_response(::enterprise_management::DeviceInitialEnrollmentStateResponse* device_initial_enrollment_state_response);
+  private:
+  const ::enterprise_management::DeviceInitialEnrollmentStateResponse& _internal_device_initial_enrollment_state_response() const;
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* _internal_mutable_device_initial_enrollment_state_response();
+  public:
+
+  // optional .enterprise_management.RefreshAccountResponse refresh_account_response = 28;
+  bool has_refresh_account_response() const;
+  private:
+  bool _internal_has_refresh_account_response() const;
+  public:
+  void clear_refresh_account_response();
+  const ::enterprise_management::RefreshAccountResponse& refresh_account_response() const;
+  ::enterprise_management::RefreshAccountResponse* release_refresh_account_response();
+  ::enterprise_management::RefreshAccountResponse* mutable_refresh_account_response();
+  void set_allocated_refresh_account_response(::enterprise_management::RefreshAccountResponse* refresh_account_response);
+  private:
+  const ::enterprise_management::RefreshAccountResponse& _internal_refresh_account_response() const;
+  ::enterprise_management::RefreshAccountResponse* _internal_mutable_refresh_account_response();
+  public:
+
+  // optional .enterprise_management.ChildStatusReportResponse child_status_report_response = 29;
+  bool has_child_status_report_response() const;
+  private:
+  bool _internal_has_child_status_report_response() const;
+  public:
+  void clear_child_status_report_response();
+  const ::enterprise_management::ChildStatusReportResponse& child_status_report_response() const;
+  ::enterprise_management::ChildStatusReportResponse* release_child_status_report_response();
+  ::enterprise_management::ChildStatusReportResponse* mutable_child_status_report_response();
+  void set_allocated_child_status_report_response(::enterprise_management::ChildStatusReportResponse* child_status_report_response);
+  private:
+  const ::enterprise_management::ChildStatusReportResponse& _internal_child_status_report_response() const;
+  ::enterprise_management::ChildStatusReportResponse* _internal_mutable_child_status_report_response();
+  public:
+
+  // optional .enterprise_management.RsuLookupKeyUploadResponse rsu_lookup_key_upload_response = 30;
+  bool has_rsu_lookup_key_upload_response() const;
+  private:
+  bool _internal_has_rsu_lookup_key_upload_response() const;
+  public:
+  void clear_rsu_lookup_key_upload_response();
+  const ::enterprise_management::RsuLookupKeyUploadResponse& rsu_lookup_key_upload_response() const;
+  ::enterprise_management::RsuLookupKeyUploadResponse* release_rsu_lookup_key_upload_response();
+  ::enterprise_management::RsuLookupKeyUploadResponse* mutable_rsu_lookup_key_upload_response();
+  void set_allocated_rsu_lookup_key_upload_response(::enterprise_management::RsuLookupKeyUploadResponse* rsu_lookup_key_upload_response);
+  private:
+  const ::enterprise_management::RsuLookupKeyUploadResponse& _internal_rsu_lookup_key_upload_response() const;
+  ::enterprise_management::RsuLookupKeyUploadResponse* _internal_mutable_rsu_lookup_key_upload_response();
+  public:
+
+  // optional .enterprise_management.PublicSamlUserResponse public_saml_user_response = 31;
+  bool has_public_saml_user_response() const;
+  private:
+  bool _internal_has_public_saml_user_response() const;
+  public:
+  void clear_public_saml_user_response();
+  const ::enterprise_management::PublicSamlUserResponse& public_saml_user_response() const;
+  ::enterprise_management::PublicSamlUserResponse* release_public_saml_user_response();
+  ::enterprise_management::PublicSamlUserResponse* mutable_public_saml_user_response();
+  void set_allocated_public_saml_user_response(::enterprise_management::PublicSamlUserResponse* public_saml_user_response);
+  private:
+  const ::enterprise_management::PublicSamlUserResponse& _internal_public_saml_user_response() const;
+  ::enterprise_management::PublicSamlUserResponse* _internal_mutable_public_saml_user_response();
+  public:
+
+  // optional .enterprise_management.ChromeOsUserReportResponse chrome_os_user_report_response = 32;
+  bool has_chrome_os_user_report_response() const;
+  private:
+  bool _internal_has_chrome_os_user_report_response() const;
+  public:
+  void clear_chrome_os_user_report_response();
+  const ::enterprise_management::ChromeOsUserReportResponse& chrome_os_user_report_response() const;
+  ::enterprise_management::ChromeOsUserReportResponse* release_chrome_os_user_report_response();
+  ::enterprise_management::ChromeOsUserReportResponse* mutable_chrome_os_user_report_response();
+  void set_allocated_chrome_os_user_report_response(::enterprise_management::ChromeOsUserReportResponse* chrome_os_user_report_response);
+  private:
+  const ::enterprise_management::ChromeOsUserReportResponse& _internal_chrome_os_user_report_response() const;
+  ::enterprise_management::ChromeOsUserReportResponse* _internal_mutable_chrome_os_user_report_response();
+  public:
+
+  // optional .enterprise_management.ClientCertificateProvisioningResponse client_certificate_provisioning_response = 33;
+  bool has_client_certificate_provisioning_response() const;
+  private:
+  bool _internal_has_client_certificate_provisioning_response() const;
+  public:
+  void clear_client_certificate_provisioning_response();
+  const ::enterprise_management::ClientCertificateProvisioningResponse& client_certificate_provisioning_response() const;
+  ::enterprise_management::ClientCertificateProvisioningResponse* release_client_certificate_provisioning_response();
+  ::enterprise_management::ClientCertificateProvisioningResponse* mutable_client_certificate_provisioning_response();
+  void set_allocated_client_certificate_provisioning_response(::enterprise_management::ClientCertificateProvisioningResponse* client_certificate_provisioning_response);
+  private:
+  const ::enterprise_management::ClientCertificateProvisioningResponse& _internal_client_certificate_provisioning_response() const;
+  ::enterprise_management::ClientCertificateProvisioningResponse* _internal_mutable_client_certificate_provisioning_response();
+  public:
+
+  // optional .enterprise_management.CheckUserAccountResponse check_user_account_response = 34;
+  bool has_check_user_account_response() const;
+  private:
+  bool _internal_has_check_user_account_response() const;
+  public:
+  void clear_check_user_account_response();
+  const ::enterprise_management::CheckUserAccountResponse& check_user_account_response() const;
+  ::enterprise_management::CheckUserAccountResponse* release_check_user_account_response();
+  ::enterprise_management::CheckUserAccountResponse* mutable_check_user_account_response();
+  void set_allocated_check_user_account_response(::enterprise_management::CheckUserAccountResponse* check_user_account_response);
+  private:
+  const ::enterprise_management::CheckUserAccountResponse& _internal_check_user_account_response() const;
+  ::enterprise_management::CheckUserAccountResponse* _internal_mutable_check_user_account_response();
+  public:
+
+  // optional .enterprise_management.PrivateSetMembershipResponse private_set_membership_response = 35;
+  bool has_private_set_membership_response() const;
+  private:
+  bool _internal_has_private_set_membership_response() const;
+  public:
+  void clear_private_set_membership_response();
+  const ::enterprise_management::PrivateSetMembershipResponse& private_set_membership_response() const;
+  ::enterprise_management::PrivateSetMembershipResponse* release_private_set_membership_response();
+  ::enterprise_management::PrivateSetMembershipResponse* mutable_private_set_membership_response();
+  void set_allocated_private_set_membership_response(::enterprise_management::PrivateSetMembershipResponse* private_set_membership_response);
+  private:
+  const ::enterprise_management::PrivateSetMembershipResponse& _internal_private_set_membership_response() const;
+  ::enterprise_management::PrivateSetMembershipResponse* _internal_mutable_private_set_membership_response();
+  public:
+
+  // optional .enterprise_management.BrowserPublicKeyUploadResponse browser_public_key_upload_response = 36;
+  bool has_browser_public_key_upload_response() const;
+  private:
+  bool _internal_has_browser_public_key_upload_response() const;
+  public:
+  void clear_browser_public_key_upload_response();
+  const ::enterprise_management::BrowserPublicKeyUploadResponse& browser_public_key_upload_response() const;
+  ::enterprise_management::BrowserPublicKeyUploadResponse* release_browser_public_key_upload_response();
+  ::enterprise_management::BrowserPublicKeyUploadResponse* mutable_browser_public_key_upload_response();
+  void set_allocated_browser_public_key_upload_response(::enterprise_management::BrowserPublicKeyUploadResponse* browser_public_key_upload_response);
+  private:
+  const ::enterprise_management::BrowserPublicKeyUploadResponse& _internal_browser_public_key_upload_response() const;
+  ::enterprise_management::BrowserPublicKeyUploadResponse* _internal_mutable_browser_public_key_upload_response();
+  public:
+
+  // optional .enterprise_management.UploadEuiccInfoResponse upload_euicc_info_response = 37;
+  bool has_upload_euicc_info_response() const;
+  private:
+  bool _internal_has_upload_euicc_info_response() const;
+  public:
+  void clear_upload_euicc_info_response();
+  const ::enterprise_management::UploadEuiccInfoResponse& upload_euicc_info_response() const;
+  ::enterprise_management::UploadEuiccInfoResponse* release_upload_euicc_info_response();
+  ::enterprise_management::UploadEuiccInfoResponse* mutable_upload_euicc_info_response();
+  void set_allocated_upload_euicc_info_response(::enterprise_management::UploadEuiccInfoResponse* upload_euicc_info_response);
+  private:
+  const ::enterprise_management::UploadEuiccInfoResponse& _internal_upload_euicc_info_response() const;
+  ::enterprise_management::UploadEuiccInfoResponse* _internal_mutable_upload_euicc_info_response();
+  public:
+
+  // optional .enterprise_management.ChromeProfileReportResponse chrome_profile_report_response = 38;
+  bool has_chrome_profile_report_response() const;
+  private:
+  bool _internal_has_chrome_profile_report_response() const;
+  public:
+  void clear_chrome_profile_report_response();
+  const ::enterprise_management::ChromeProfileReportResponse& chrome_profile_report_response() const;
+  ::enterprise_management::ChromeProfileReportResponse* release_chrome_profile_report_response();
+  ::enterprise_management::ChromeProfileReportResponse* mutable_chrome_profile_report_response();
+  void set_allocated_chrome_profile_report_response(::enterprise_management::ChromeProfileReportResponse* chrome_profile_report_response);
+  private:
+  const ::enterprise_management::ChromeProfileReportResponse& _internal_chrome_profile_report_response() const;
+  ::enterprise_management::ChromeProfileReportResponse* _internal_mutable_chrome_profile_report_response();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceManagementResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<2> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> error_detail_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr error_message_;
+  ::enterprise_management::DeviceRegisterResponse* register_response_;
+  ::enterprise_management::DeviceUnregisterResponse* unregister_response_;
+  ::enterprise_management::DevicePolicyResponse* policy_response_;
+  ::enterprise_management::DeviceStatusReportResponse* device_status_report_response_;
+  ::enterprise_management::SessionStatusReportResponse* session_status_report_response_;
+  ::enterprise_management::DeviceAutoEnrollmentResponse* auto_enrollment_response_;
+  ::enterprise_management::DeviceCertUploadResponse* cert_upload_response_;
+  ::enterprise_management::DeviceServiceApiAccessResponse* service_api_access_response_;
+  ::enterprise_management::DeviceStateRetrievalResponse* device_state_retrieval_response_;
+  ::enterprise_management::DevicePairingResponse* device_pairing_response_;
+  ::enterprise_management::CheckDevicePairingResponse* check_device_pairing_response_;
+  ::enterprise_management::DeviceRemoteCommandResponse* remote_command_response_;
+  ::enterprise_management::DeviceAttributeUpdatePermissionResponse* device_attribute_update_permission_response_;
+  ::enterprise_management::DeviceAttributeUpdateResponse* device_attribute_update_response_;
+  ::enterprise_management::GcmIdUpdateResponse* gcm_id_update_response_;
+  ::enterprise_management::CheckAndroidManagementResponse* check_android_management_response_;
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* active_directory_enroll_play_user_response_;
+  ::enterprise_management::ActiveDirectoryPlayActivityResponse* active_directory_play_activity_response_;
+  ::enterprise_management::CheckDeviceLicenseResponse* check_device_license_response_deprecated_;
+  ::enterprise_management::ActiveDirectoryUserSigninResponse* active_directory_user_signin_response_;
+  ::enterprise_management::ChromeDesktopReportResponse* chrome_desktop_report_response_;
+  ::enterprise_management::AppInstallReportResponse* app_install_report_response_;
+  ::enterprise_management::PolicyValidationReportResponse* policy_validation_report_response_;
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* device_initial_enrollment_state_response_;
+  ::enterprise_management::RefreshAccountResponse* refresh_account_response_;
+  ::enterprise_management::ChildStatusReportResponse* child_status_report_response_;
+  ::enterprise_management::RsuLookupKeyUploadResponse* rsu_lookup_key_upload_response_;
+  ::enterprise_management::PublicSamlUserResponse* public_saml_user_response_;
+  ::enterprise_management::ChromeOsUserReportResponse* chrome_os_user_report_response_;
+  ::enterprise_management::ClientCertificateProvisioningResponse* client_certificate_provisioning_response_;
+  ::enterprise_management::CheckUserAccountResponse* check_user_account_response_;
+  ::enterprise_management::PrivateSetMembershipResponse* private_set_membership_response_;
+  ::enterprise_management::BrowserPublicKeyUploadResponse* browser_public_key_upload_response_;
+  ::enterprise_management::UploadEuiccInfoResponse* upload_euicc_info_response_;
+  ::enterprise_management::ChromeProfileReportResponse* chrome_profile_report_response_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// -------------------------------------------------------------------
+
+class DeviceStateRetrievalInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.DeviceStateRetrievalInfo) */ {
+ public:
+  DeviceStateRetrievalInfo();
+  virtual ~DeviceStateRetrievalInfo();
+
+  DeviceStateRetrievalInfo(const DeviceStateRetrievalInfo& from);
+  DeviceStateRetrievalInfo(DeviceStateRetrievalInfo&& from) noexcept
+    : DeviceStateRetrievalInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline DeviceStateRetrievalInfo& operator=(const DeviceStateRetrievalInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DeviceStateRetrievalInfo& operator=(DeviceStateRetrievalInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const DeviceStateRetrievalInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DeviceStateRetrievalInfo* internal_default_instance() {
+    return reinterpret_cast<const DeviceStateRetrievalInfo*>(
+               &_DeviceStateRetrievalInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    179;
+
+  friend void swap(DeviceStateRetrievalInfo& a, DeviceStateRetrievalInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DeviceStateRetrievalInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DeviceStateRetrievalInfo* New() const final {
+    return CreateMaybeMessage<DeviceStateRetrievalInfo>(nullptr);
+  }
+
+  DeviceStateRetrievalInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DeviceStateRetrievalInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DeviceStateRetrievalInfo& from);
+  void MergeFrom(const DeviceStateRetrievalInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DeviceStateRetrievalInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.DeviceStateRetrievalInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHasInitialStateFieldNumber = 1,
+  };
+  // optional bool has_initial_state = 1;
+  bool has_has_initial_state() const;
+  private:
+  bool _internal_has_has_initial_state() const;
+  public:
+  void clear_has_initial_state();
+  bool has_initial_state() const;
+  void set_has_initial_state(bool value);
+  private:
+  bool _internal_has_initial_state() const;
+  void _internal_set_has_initial_state(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.DeviceStateRetrievalInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool has_initial_state_;
+  friend struct ::TableStruct_device_5fmanagement_5fbackend_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// LicenseType
+
+// optional .enterprise_management.LicenseType.LicenseTypeEnum license_type = 1;
+inline bool LicenseType::_internal_has_license_type() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool LicenseType::has_license_type() const {
+  return _internal_has_license_type();
+}
+inline void LicenseType::clear_license_type() {
+  license_type_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::LicenseType_LicenseTypeEnum LicenseType::_internal_license_type() const {
+  return static_cast< ::enterprise_management::LicenseType_LicenseTypeEnum >(license_type_);
+}
+inline ::enterprise_management::LicenseType_LicenseTypeEnum LicenseType::license_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LicenseType.license_type)
+  return _internal_license_type();
+}
+inline void LicenseType::_internal_set_license_type(::enterprise_management::LicenseType_LicenseTypeEnum value) {
+  assert(::enterprise_management::LicenseType_LicenseTypeEnum_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  license_type_ = value;
+}
+inline void LicenseType::set_license_type(::enterprise_management::LicenseType_LicenseTypeEnum value) {
+  _internal_set_license_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.LicenseType.license_type)
+}
+
+// -------------------------------------------------------------------
+
+// SignedData
+
+// optional bytes data = 1;
+inline bool SignedData::_internal_has_data() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SignedData::has_data() const {
+  return _internal_has_data();
+}
+inline void SignedData::clear_data() {
+  data_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SignedData::data() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SignedData.data)
+  return _internal_data();
+}
+inline void SignedData::set_data(const std::string& value) {
+  _internal_set_data(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SignedData.data)
+}
+inline std::string* SignedData::mutable_data() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SignedData.data)
+  return _internal_mutable_data();
+}
+inline const std::string& SignedData::_internal_data() const {
+  return data_.GetNoArena();
+}
+inline void SignedData::_internal_set_data(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SignedData::set_data(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  data_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SignedData.data)
+}
+inline void SignedData::set_data(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SignedData.data)
+}
+inline void SignedData::set_data(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SignedData.data)
+}
+inline std::string* SignedData::_internal_mutable_data() {
+  _has_bits_[0] |= 0x00000001u;
+  return data_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SignedData::release_data() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SignedData.data)
+  if (!_internal_has_data()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return data_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SignedData::set_allocated_data(std::string* data) {
+  if (data != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  data_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), data);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SignedData.data)
+}
+
+// optional bytes signature = 2;
+inline bool SignedData::_internal_has_signature() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SignedData::has_signature() const {
+  return _internal_has_signature();
+}
+inline void SignedData::clear_signature() {
+  signature_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SignedData::signature() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SignedData.signature)
+  return _internal_signature();
+}
+inline void SignedData::set_signature(const std::string& value) {
+  _internal_set_signature(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SignedData.signature)
+}
+inline std::string* SignedData::mutable_signature() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SignedData.signature)
+  return _internal_mutable_signature();
+}
+inline const std::string& SignedData::_internal_signature() const {
+  return signature_.GetNoArena();
+}
+inline void SignedData::_internal_set_signature(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SignedData::set_signature(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SignedData.signature)
+}
+inline void SignedData::set_signature(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SignedData.signature)
+}
+inline void SignedData::set_signature(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SignedData.signature)
+}
+inline std::string* SignedData::_internal_mutable_signature() {
+  _has_bits_[0] |= 0x00000002u;
+  return signature_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SignedData::release_signature() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SignedData.signature)
+  if (!_internal_has_signature()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return signature_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SignedData::set_allocated_signature(std::string* signature) {
+  if (signature != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  signature_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), signature);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SignedData.signature)
+}
+
+// optional int32 extra_data_bytes = 3;
+inline bool SignedData::_internal_has_extra_data_bytes() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SignedData::has_extra_data_bytes() const {
+  return _internal_has_extra_data_bytes();
+}
+inline void SignedData::clear_extra_data_bytes() {
+  extra_data_bytes_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SignedData::_internal_extra_data_bytes() const {
+  return extra_data_bytes_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SignedData::extra_data_bytes() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SignedData.extra_data_bytes)
+  return _internal_extra_data_bytes();
+}
+inline void SignedData::_internal_set_extra_data_bytes(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  extra_data_bytes_ = value;
+}
+inline void SignedData::set_extra_data_bytes(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_extra_data_bytes(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SignedData.extra_data_bytes)
+}
+
+// -------------------------------------------------------------------
+
+// CheckUserAccountRequest
+
+// optional string user_email = 1;
+inline bool CheckUserAccountRequest::_internal_has_user_email() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CheckUserAccountRequest::has_user_email() const {
+  return _internal_has_user_email();
+}
+inline void CheckUserAccountRequest::clear_user_email() {
+  user_email_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CheckUserAccountRequest::user_email() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CheckUserAccountRequest.user_email)
+  return _internal_user_email();
+}
+inline void CheckUserAccountRequest::set_user_email(const std::string& value) {
+  _internal_set_user_email(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CheckUserAccountRequest.user_email)
+}
+inline std::string* CheckUserAccountRequest::mutable_user_email() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CheckUserAccountRequest.user_email)
+  return _internal_mutable_user_email();
+}
+inline const std::string& CheckUserAccountRequest::_internal_user_email() const {
+  return user_email_.GetNoArena();
+}
+inline void CheckUserAccountRequest::_internal_set_user_email(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  user_email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CheckUserAccountRequest::set_user_email(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  user_email_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CheckUserAccountRequest.user_email)
+}
+inline void CheckUserAccountRequest::set_user_email(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  user_email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CheckUserAccountRequest.user_email)
+}
+inline void CheckUserAccountRequest::set_user_email(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  user_email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CheckUserAccountRequest.user_email)
+}
+inline std::string* CheckUserAccountRequest::_internal_mutable_user_email() {
+  _has_bits_[0] |= 0x00000001u;
+  return user_email_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CheckUserAccountRequest::release_user_email() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CheckUserAccountRequest.user_email)
+  if (!_internal_has_user_email()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return user_email_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CheckUserAccountRequest::set_allocated_user_email(std::string* user_email) {
+  if (user_email != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  user_email_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), user_email);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CheckUserAccountRequest.user_email)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceRegisterRequest
+
+// optional bool reregister = 1;
+inline bool DeviceRegisterRequest::_internal_has_reregister() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_reregister() const {
+  return _internal_has_reregister();
+}
+inline void DeviceRegisterRequest::clear_reregister() {
+  reregister_ = false;
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline bool DeviceRegisterRequest::_internal_reregister() const {
+  return reregister_;
+}
+inline bool DeviceRegisterRequest::reregister() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.reregister)
+  return _internal_reregister();
+}
+inline void DeviceRegisterRequest::_internal_set_reregister(bool value) {
+  _has_bits_[0] |= 0x00001000u;
+  reregister_ = value;
+}
+inline void DeviceRegisterRequest::set_reregister(bool value) {
+  _internal_set_reregister(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.reregister)
+}
+
+// optional .enterprise_management.DeviceRegisterRequest.Type type = 2 [default = TT];
+inline bool DeviceRegisterRequest::_internal_has_type() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_type() const {
+  return _internal_has_type();
+}
+inline void DeviceRegisterRequest::clear_type() {
+  type_ = 0;
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline ::enterprise_management::DeviceRegisterRequest_Type DeviceRegisterRequest::_internal_type() const {
+  return static_cast< ::enterprise_management::DeviceRegisterRequest_Type >(type_);
+}
+inline ::enterprise_management::DeviceRegisterRequest_Type DeviceRegisterRequest::type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.type)
+  return _internal_type();
+}
+inline void DeviceRegisterRequest::_internal_set_type(::enterprise_management::DeviceRegisterRequest_Type value) {
+  assert(::enterprise_management::DeviceRegisterRequest_Type_IsValid(value));
+  _has_bits_[0] |= 0x00002000u;
+  type_ = value;
+}
+inline void DeviceRegisterRequest::set_type(::enterprise_management::DeviceRegisterRequest_Type value) {
+  _internal_set_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.type)
+}
+
+// optional string machine_id = 3;
+inline bool DeviceRegisterRequest::_internal_has_machine_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_machine_id() const {
+  return _internal_has_machine_id();
+}
+inline void DeviceRegisterRequest::clear_machine_id() {
+  machine_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceRegisterRequest::machine_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.machine_id)
+  return _internal_machine_id();
+}
+inline void DeviceRegisterRequest::set_machine_id(const std::string& value) {
+  _internal_set_machine_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.machine_id)
+}
+inline std::string* DeviceRegisterRequest::mutable_machine_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.machine_id)
+  return _internal_mutable_machine_id();
+}
+inline const std::string& DeviceRegisterRequest::_internal_machine_id() const {
+  return machine_id_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_machine_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_machine_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.machine_id)
+}
+inline void DeviceRegisterRequest::set_machine_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  machine_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.machine_id)
+}
+inline void DeviceRegisterRequest::set_machine_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.machine_id)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_machine_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return machine_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_machine_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.machine_id)
+  if (!_internal_has_machine_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return machine_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_machine_id(std::string* machine_id) {
+  if (machine_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  machine_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), machine_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.machine_id)
+}
+
+// optional string machine_model = 4;
+inline bool DeviceRegisterRequest::_internal_has_machine_model() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_machine_model() const {
+  return _internal_has_machine_model();
+}
+inline void DeviceRegisterRequest::clear_machine_model() {
+  machine_model_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DeviceRegisterRequest::machine_model() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.machine_model)
+  return _internal_machine_model();
+}
+inline void DeviceRegisterRequest::set_machine_model(const std::string& value) {
+  _internal_set_machine_model(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.machine_model)
+}
+inline std::string* DeviceRegisterRequest::mutable_machine_model() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.machine_model)
+  return _internal_mutable_machine_model();
+}
+inline const std::string& DeviceRegisterRequest::_internal_machine_model() const {
+  return machine_model_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_machine_model(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  machine_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_machine_model(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  machine_model_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.machine_model)
+}
+inline void DeviceRegisterRequest::set_machine_model(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  machine_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.machine_model)
+}
+inline void DeviceRegisterRequest::set_machine_model(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  machine_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.machine_model)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_machine_model() {
+  _has_bits_[0] |= 0x00000002u;
+  return machine_model_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_machine_model() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.machine_model)
+  if (!_internal_has_machine_model()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return machine_model_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_machine_model(std::string* machine_model) {
+  if (machine_model != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  machine_model_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), machine_model);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.machine_model)
+}
+
+// optional string requisition = 6;
+inline bool DeviceRegisterRequest::_internal_has_requisition() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_requisition() const {
+  return _internal_has_requisition();
+}
+inline void DeviceRegisterRequest::clear_requisition() {
+  requisition_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& DeviceRegisterRequest::requisition() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.requisition)
+  return _internal_requisition();
+}
+inline void DeviceRegisterRequest::set_requisition(const std::string& value) {
+  _internal_set_requisition(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.requisition)
+}
+inline std::string* DeviceRegisterRequest::mutable_requisition() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.requisition)
+  return _internal_mutable_requisition();
+}
+inline const std::string& DeviceRegisterRequest::_internal_requisition() const {
+  return requisition_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_requisition(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  requisition_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_requisition(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  requisition_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.requisition)
+}
+inline void DeviceRegisterRequest::set_requisition(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  requisition_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.requisition)
+}
+inline void DeviceRegisterRequest::set_requisition(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  requisition_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.requisition)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_requisition() {
+  _has_bits_[0] |= 0x00000004u;
+  return requisition_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_requisition() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.requisition)
+  if (!_internal_has_requisition()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return requisition_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_requisition(std::string* requisition) {
+  if (requisition != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  requisition_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), requisition);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.requisition)
+}
+
+// optional bytes server_backed_state_key = 7;
+inline bool DeviceRegisterRequest::_internal_has_server_backed_state_key() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_server_backed_state_key() const {
+  return _internal_has_server_backed_state_key();
+}
+inline void DeviceRegisterRequest::clear_server_backed_state_key() {
+  server_backed_state_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& DeviceRegisterRequest::server_backed_state_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.server_backed_state_key)
+  return _internal_server_backed_state_key();
+}
+inline void DeviceRegisterRequest::set_server_backed_state_key(const std::string& value) {
+  _internal_set_server_backed_state_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.server_backed_state_key)
+}
+inline std::string* DeviceRegisterRequest::mutable_server_backed_state_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.server_backed_state_key)
+  return _internal_mutable_server_backed_state_key();
+}
+inline const std::string& DeviceRegisterRequest::_internal_server_backed_state_key() const {
+  return server_backed_state_key_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_server_backed_state_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  server_backed_state_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_server_backed_state_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  server_backed_state_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.server_backed_state_key)
+}
+inline void DeviceRegisterRequest::set_server_backed_state_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  server_backed_state_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.server_backed_state_key)
+}
+inline void DeviceRegisterRequest::set_server_backed_state_key(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  server_backed_state_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.server_backed_state_key)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_server_backed_state_key() {
+  _has_bits_[0] |= 0x00000008u;
+  return server_backed_state_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_server_backed_state_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.server_backed_state_key)
+  if (!_internal_has_server_backed_state_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return server_backed_state_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_server_backed_state_key(std::string* server_backed_state_key) {
+  if (server_backed_state_key != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  server_backed_state_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), server_backed_state_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.server_backed_state_key)
+}
+
+// optional .enterprise_management.DeviceRegisterRequest.Flavor flavor = 8;
+inline bool DeviceRegisterRequest::_internal_has_flavor() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_flavor() const {
+  return _internal_has_flavor();
+}
+inline void DeviceRegisterRequest::clear_flavor() {
+  flavor_ = 0;
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline ::enterprise_management::DeviceRegisterRequest_Flavor DeviceRegisterRequest::_internal_flavor() const {
+  return static_cast< ::enterprise_management::DeviceRegisterRequest_Flavor >(flavor_);
+}
+inline ::enterprise_management::DeviceRegisterRequest_Flavor DeviceRegisterRequest::flavor() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.flavor)
+  return _internal_flavor();
+}
+inline void DeviceRegisterRequest::_internal_set_flavor(::enterprise_management::DeviceRegisterRequest_Flavor value) {
+  assert(::enterprise_management::DeviceRegisterRequest_Flavor_IsValid(value));
+  _has_bits_[0] |= 0x00004000u;
+  flavor_ = value;
+}
+inline void DeviceRegisterRequest::set_flavor(::enterprise_management::DeviceRegisterRequest_Flavor value) {
+  _internal_set_flavor(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.flavor)
+}
+
+// optional .enterprise_management.LicenseType license_type = 9;
+inline bool DeviceRegisterRequest::_internal_has_license_type() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || license_type_ != nullptr);
+  return value;
+}
+inline bool DeviceRegisterRequest::has_license_type() const {
+  return _internal_has_license_type();
+}
+inline void DeviceRegisterRequest::clear_license_type() {
+  if (license_type_ != nullptr) license_type_->Clear();
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline const ::enterprise_management::LicenseType& DeviceRegisterRequest::_internal_license_type() const {
+  const ::enterprise_management::LicenseType* p = license_type_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::LicenseType*>(
+      &::enterprise_management::_LicenseType_default_instance_);
+}
+inline const ::enterprise_management::LicenseType& DeviceRegisterRequest::license_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.license_type)
+  return _internal_license_type();
+}
+inline ::enterprise_management::LicenseType* DeviceRegisterRequest::release_license_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.license_type)
+  _has_bits_[0] &= ~0x00000400u;
+  ::enterprise_management::LicenseType* temp = license_type_;
+  license_type_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::LicenseType* DeviceRegisterRequest::_internal_mutable_license_type() {
+  _has_bits_[0] |= 0x00000400u;
+  if (license_type_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::LicenseType>(GetArenaNoVirtual());
+    license_type_ = p;
+  }
+  return license_type_;
+}
+inline ::enterprise_management::LicenseType* DeviceRegisterRequest::mutable_license_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.license_type)
+  return _internal_mutable_license_type();
+}
+inline void DeviceRegisterRequest::set_allocated_license_type(::enterprise_management::LicenseType* license_type) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete license_type_;
+  }
+  if (license_type) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      license_type = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, license_type, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000400u;
+  } else {
+    _has_bits_[0] &= ~0x00000400u;
+  }
+  license_type_ = license_type;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.license_type)
+}
+
+// optional .enterprise_management.DeviceRegisterRequest.Lifetime lifetime = 11 [default = LIFETIME_INDEFINITE];
+inline bool DeviceRegisterRequest::_internal_has_lifetime() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_lifetime() const {
+  return _internal_has_lifetime();
+}
+inline void DeviceRegisterRequest::clear_lifetime() {
+  lifetime_ = 1;
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline ::enterprise_management::DeviceRegisterRequest_Lifetime DeviceRegisterRequest::_internal_lifetime() const {
+  return static_cast< ::enterprise_management::DeviceRegisterRequest_Lifetime >(lifetime_);
+}
+inline ::enterprise_management::DeviceRegisterRequest_Lifetime DeviceRegisterRequest::lifetime() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.lifetime)
+  return _internal_lifetime();
+}
+inline void DeviceRegisterRequest::_internal_set_lifetime(::enterprise_management::DeviceRegisterRequest_Lifetime value) {
+  assert(::enterprise_management::DeviceRegisterRequest_Lifetime_IsValid(value));
+  _has_bits_[0] |= 0x00020000u;
+  lifetime_ = value;
+}
+inline void DeviceRegisterRequest::set_lifetime(::enterprise_management::DeviceRegisterRequest_Lifetime value) {
+  _internal_set_lifetime(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.lifetime)
+}
+
+// optional string brand_code = 12;
+inline bool DeviceRegisterRequest::_internal_has_brand_code() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_brand_code() const {
+  return _internal_has_brand_code();
+}
+inline void DeviceRegisterRequest::clear_brand_code() {
+  brand_code_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& DeviceRegisterRequest::brand_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.brand_code)
+  return _internal_brand_code();
+}
+inline void DeviceRegisterRequest::set_brand_code(const std::string& value) {
+  _internal_set_brand_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.brand_code)
+}
+inline std::string* DeviceRegisterRequest::mutable_brand_code() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.brand_code)
+  return _internal_mutable_brand_code();
+}
+inline const std::string& DeviceRegisterRequest::_internal_brand_code() const {
+  return brand_code_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_brand_code(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_brand_code(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  brand_code_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.brand_code)
+}
+inline void DeviceRegisterRequest::set_brand_code(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.brand_code)
+}
+inline void DeviceRegisterRequest::set_brand_code(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.brand_code)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_brand_code() {
+  _has_bits_[0] |= 0x00000010u;
+  return brand_code_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_brand_code() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.brand_code)
+  if (!_internal_has_brand_code()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return brand_code_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_brand_code(std::string* brand_code) {
+  if (brand_code != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  brand_code_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), brand_code);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.brand_code)
+}
+
+// optional string reregistration_dm_token = 13;
+inline bool DeviceRegisterRequest::_internal_has_reregistration_dm_token() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_reregistration_dm_token() const {
+  return _internal_has_reregistration_dm_token();
+}
+inline void DeviceRegisterRequest::clear_reregistration_dm_token() {
+  reregistration_dm_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& DeviceRegisterRequest::reregistration_dm_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.reregistration_dm_token)
+  return _internal_reregistration_dm_token();
+}
+inline void DeviceRegisterRequest::set_reregistration_dm_token(const std::string& value) {
+  _internal_set_reregistration_dm_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.reregistration_dm_token)
+}
+inline std::string* DeviceRegisterRequest::mutable_reregistration_dm_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.reregistration_dm_token)
+  return _internal_mutable_reregistration_dm_token();
+}
+inline const std::string& DeviceRegisterRequest::_internal_reregistration_dm_token() const {
+  return reregistration_dm_token_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_reregistration_dm_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  reregistration_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_reregistration_dm_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  reregistration_dm_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.reregistration_dm_token)
+}
+inline void DeviceRegisterRequest::set_reregistration_dm_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  reregistration_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.reregistration_dm_token)
+}
+inline void DeviceRegisterRequest::set_reregistration_dm_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  reregistration_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.reregistration_dm_token)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_reregistration_dm_token() {
+  _has_bits_[0] |= 0x00000020u;
+  return reregistration_dm_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_reregistration_dm_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.reregistration_dm_token)
+  if (!_internal_has_reregistration_dm_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return reregistration_dm_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_reregistration_dm_token(std::string* reregistration_dm_token) {
+  if (reregistration_dm_token != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  reregistration_dm_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), reregistration_dm_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.reregistration_dm_token)
+}
+
+// optional string ethernet_mac_address = 14;
+inline bool DeviceRegisterRequest::_internal_has_ethernet_mac_address() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_ethernet_mac_address() const {
+  return _internal_has_ethernet_mac_address();
+}
+inline void DeviceRegisterRequest::clear_ethernet_mac_address() {
+  ethernet_mac_address_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const std::string& DeviceRegisterRequest::ethernet_mac_address() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.ethernet_mac_address)
+  return _internal_ethernet_mac_address();
+}
+inline void DeviceRegisterRequest::set_ethernet_mac_address(const std::string& value) {
+  _internal_set_ethernet_mac_address(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.ethernet_mac_address)
+}
+inline std::string* DeviceRegisterRequest::mutable_ethernet_mac_address() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.ethernet_mac_address)
+  return _internal_mutable_ethernet_mac_address();
+}
+inline const std::string& DeviceRegisterRequest::_internal_ethernet_mac_address() const {
+  return ethernet_mac_address_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_ethernet_mac_address(const std::string& value) {
+  _has_bits_[0] |= 0x00000040u;
+  ethernet_mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_ethernet_mac_address(std::string&& value) {
+  _has_bits_[0] |= 0x00000040u;
+  ethernet_mac_address_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.ethernet_mac_address)
+}
+inline void DeviceRegisterRequest::set_ethernet_mac_address(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000040u;
+  ethernet_mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.ethernet_mac_address)
+}
+inline void DeviceRegisterRequest::set_ethernet_mac_address(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000040u;
+  ethernet_mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.ethernet_mac_address)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_ethernet_mac_address() {
+  _has_bits_[0] |= 0x00000040u;
+  return ethernet_mac_address_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_ethernet_mac_address() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.ethernet_mac_address)
+  if (!_internal_has_ethernet_mac_address()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000040u;
+  return ethernet_mac_address_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_ethernet_mac_address(std::string* ethernet_mac_address) {
+  if (ethernet_mac_address != nullptr) {
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  ethernet_mac_address_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ethernet_mac_address);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.ethernet_mac_address)
+}
+
+// optional string dock_mac_address = 15;
+inline bool DeviceRegisterRequest::_internal_has_dock_mac_address() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_dock_mac_address() const {
+  return _internal_has_dock_mac_address();
+}
+inline void DeviceRegisterRequest::clear_dock_mac_address() {
+  dock_mac_address_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const std::string& DeviceRegisterRequest::dock_mac_address() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.dock_mac_address)
+  return _internal_dock_mac_address();
+}
+inline void DeviceRegisterRequest::set_dock_mac_address(const std::string& value) {
+  _internal_set_dock_mac_address(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.dock_mac_address)
+}
+inline std::string* DeviceRegisterRequest::mutable_dock_mac_address() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.dock_mac_address)
+  return _internal_mutable_dock_mac_address();
+}
+inline const std::string& DeviceRegisterRequest::_internal_dock_mac_address() const {
+  return dock_mac_address_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_dock_mac_address(const std::string& value) {
+  _has_bits_[0] |= 0x00000080u;
+  dock_mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_dock_mac_address(std::string&& value) {
+  _has_bits_[0] |= 0x00000080u;
+  dock_mac_address_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.dock_mac_address)
+}
+inline void DeviceRegisterRequest::set_dock_mac_address(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000080u;
+  dock_mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.dock_mac_address)
+}
+inline void DeviceRegisterRequest::set_dock_mac_address(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000080u;
+  dock_mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.dock_mac_address)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_dock_mac_address() {
+  _has_bits_[0] |= 0x00000080u;
+  return dock_mac_address_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_dock_mac_address() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.dock_mac_address)
+  if (!_internal_has_dock_mac_address()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000080u;
+  return dock_mac_address_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_dock_mac_address(std::string* dock_mac_address) {
+  if (dock_mac_address != nullptr) {
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  dock_mac_address_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), dock_mac_address);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.dock_mac_address)
+}
+
+// optional string manufacture_date = 16;
+inline bool DeviceRegisterRequest::_internal_has_manufacture_date() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_manufacture_date() const {
+  return _internal_has_manufacture_date();
+}
+inline void DeviceRegisterRequest::clear_manufacture_date() {
+  manufacture_date_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const std::string& DeviceRegisterRequest::manufacture_date() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.manufacture_date)
+  return _internal_manufacture_date();
+}
+inline void DeviceRegisterRequest::set_manufacture_date(const std::string& value) {
+  _internal_set_manufacture_date(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.manufacture_date)
+}
+inline std::string* DeviceRegisterRequest::mutable_manufacture_date() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.manufacture_date)
+  return _internal_mutable_manufacture_date();
+}
+inline const std::string& DeviceRegisterRequest::_internal_manufacture_date() const {
+  return manufacture_date_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_manufacture_date(const std::string& value) {
+  _has_bits_[0] |= 0x00000100u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_manufacture_date(std::string&& value) {
+  _has_bits_[0] |= 0x00000100u;
+  manufacture_date_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.manufacture_date)
+}
+inline void DeviceRegisterRequest::set_manufacture_date(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000100u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.manufacture_date)
+}
+inline void DeviceRegisterRequest::set_manufacture_date(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000100u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.manufacture_date)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_manufacture_date() {
+  _has_bits_[0] |= 0x00000100u;
+  return manufacture_date_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_manufacture_date() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.manufacture_date)
+  if (!_internal_has_manufacture_date()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000100u;
+  return manufacture_date_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_manufacture_date(std::string* manufacture_date) {
+  if (manufacture_date != nullptr) {
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  manufacture_date_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), manufacture_date);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.manufacture_date)
+}
+
+// optional string expected_enrollment_domain = 17;
+inline bool DeviceRegisterRequest::_internal_has_expected_enrollment_domain() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_expected_enrollment_domain() const {
+  return _internal_has_expected_enrollment_domain();
+}
+inline void DeviceRegisterRequest::clear_expected_enrollment_domain() {
+  expected_enrollment_domain_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline const std::string& DeviceRegisterRequest::expected_enrollment_domain() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.expected_enrollment_domain)
+  return _internal_expected_enrollment_domain();
+}
+inline void DeviceRegisterRequest::set_expected_enrollment_domain(const std::string& value) {
+  _internal_set_expected_enrollment_domain(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.expected_enrollment_domain)
+}
+inline std::string* DeviceRegisterRequest::mutable_expected_enrollment_domain() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.expected_enrollment_domain)
+  return _internal_mutable_expected_enrollment_domain();
+}
+inline const std::string& DeviceRegisterRequest::_internal_expected_enrollment_domain() const {
+  return expected_enrollment_domain_.GetNoArena();
+}
+inline void DeviceRegisterRequest::_internal_set_expected_enrollment_domain(const std::string& value) {
+  _has_bits_[0] |= 0x00000200u;
+  expected_enrollment_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterRequest::set_expected_enrollment_domain(std::string&& value) {
+  _has_bits_[0] |= 0x00000200u;
+  expected_enrollment_domain_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterRequest.expected_enrollment_domain)
+}
+inline void DeviceRegisterRequest::set_expected_enrollment_domain(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000200u;
+  expected_enrollment_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterRequest.expected_enrollment_domain)
+}
+inline void DeviceRegisterRequest::set_expected_enrollment_domain(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000200u;
+  expected_enrollment_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterRequest.expected_enrollment_domain)
+}
+inline std::string* DeviceRegisterRequest::_internal_mutable_expected_enrollment_domain() {
+  _has_bits_[0] |= 0x00000200u;
+  return expected_enrollment_domain_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterRequest::release_expected_enrollment_domain() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.expected_enrollment_domain)
+  if (!_internal_has_expected_enrollment_domain()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000200u;
+  return expected_enrollment_domain_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterRequest::set_allocated_expected_enrollment_domain(std::string* expected_enrollment_domain) {
+  if (expected_enrollment_domain != nullptr) {
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  expected_enrollment_domain_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), expected_enrollment_domain);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.expected_enrollment_domain)
+}
+
+// optional .enterprise_management.DeviceRegisterIdentification device_register_identification = 18;
+inline bool DeviceRegisterRequest::_internal_has_device_register_identification() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || device_register_identification_ != nullptr);
+  return value;
+}
+inline bool DeviceRegisterRequest::has_device_register_identification() const {
+  return _internal_has_device_register_identification();
+}
+inline void DeviceRegisterRequest::clear_device_register_identification() {
+  if (device_register_identification_ != nullptr) device_register_identification_->Clear();
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline const ::enterprise_management::DeviceRegisterIdentification& DeviceRegisterRequest::_internal_device_register_identification() const {
+  const ::enterprise_management::DeviceRegisterIdentification* p = device_register_identification_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRegisterIdentification*>(
+      &::enterprise_management::_DeviceRegisterIdentification_default_instance_);
+}
+inline const ::enterprise_management::DeviceRegisterIdentification& DeviceRegisterRequest::device_register_identification() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.device_register_identification)
+  return _internal_device_register_identification();
+}
+inline ::enterprise_management::DeviceRegisterIdentification* DeviceRegisterRequest::release_device_register_identification() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterRequest.device_register_identification)
+  _has_bits_[0] &= ~0x00000800u;
+  ::enterprise_management::DeviceRegisterIdentification* temp = device_register_identification_;
+  device_register_identification_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRegisterIdentification* DeviceRegisterRequest::_internal_mutable_device_register_identification() {
+  _has_bits_[0] |= 0x00000800u;
+  if (device_register_identification_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRegisterIdentification>(GetArenaNoVirtual());
+    device_register_identification_ = p;
+  }
+  return device_register_identification_;
+}
+inline ::enterprise_management::DeviceRegisterIdentification* DeviceRegisterRequest::mutable_device_register_identification() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterRequest.device_register_identification)
+  return _internal_mutable_device_register_identification();
+}
+inline void DeviceRegisterRequest::set_allocated_device_register_identification(::enterprise_management::DeviceRegisterIdentification* device_register_identification) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_register_identification_;
+  }
+  if (device_register_identification) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_register_identification = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_register_identification, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000800u;
+  } else {
+    _has_bits_[0] &= ~0x00000800u;
+  }
+  device_register_identification_ = device_register_identification;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterRequest.device_register_identification)
+}
+
+// optional .enterprise_management.DeviceRegisterRequest.PsmExecutionResult psm_execution_result = 19;
+inline bool DeviceRegisterRequest::_internal_has_psm_execution_result() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_psm_execution_result() const {
+  return _internal_has_psm_execution_result();
+}
+inline void DeviceRegisterRequest::clear_psm_execution_result() {
+  psm_execution_result_ = 0;
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline ::enterprise_management::DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest::_internal_psm_execution_result() const {
+  return static_cast< ::enterprise_management::DeviceRegisterRequest_PsmExecutionResult >(psm_execution_result_);
+}
+inline ::enterprise_management::DeviceRegisterRequest_PsmExecutionResult DeviceRegisterRequest::psm_execution_result() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.psm_execution_result)
+  return _internal_psm_execution_result();
+}
+inline void DeviceRegisterRequest::_internal_set_psm_execution_result(::enterprise_management::DeviceRegisterRequest_PsmExecutionResult value) {
+  assert(::enterprise_management::DeviceRegisterRequest_PsmExecutionResult_IsValid(value));
+  _has_bits_[0] |= 0x00008000u;
+  psm_execution_result_ = value;
+}
+inline void DeviceRegisterRequest::set_psm_execution_result(::enterprise_management::DeviceRegisterRequest_PsmExecutionResult value) {
+  _internal_set_psm_execution_result(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.psm_execution_result)
+}
+
+// optional int64 psm_determination_timestamp_ms = 20;
+inline bool DeviceRegisterRequest::_internal_has_psm_determination_timestamp_ms() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  return value;
+}
+inline bool DeviceRegisterRequest::has_psm_determination_timestamp_ms() const {
+  return _internal_has_psm_determination_timestamp_ms();
+}
+inline void DeviceRegisterRequest::clear_psm_determination_timestamp_ms() {
+  psm_determination_timestamp_ms_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceRegisterRequest::_internal_psm_determination_timestamp_ms() const {
+  return psm_determination_timestamp_ms_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceRegisterRequest::psm_determination_timestamp_ms() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterRequest.psm_determination_timestamp_ms)
+  return _internal_psm_determination_timestamp_ms();
+}
+inline void DeviceRegisterRequest::_internal_set_psm_determination_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00010000u;
+  psm_determination_timestamp_ms_ = value;
+}
+inline void DeviceRegisterRequest::set_psm_determination_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_psm_determination_timestamp_ms(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterRequest.psm_determination_timestamp_ms)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceRegisterIdentification
+
+// optional string attested_device_id = 1;
+inline bool DeviceRegisterIdentification::_internal_has_attested_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceRegisterIdentification::has_attested_device_id() const {
+  return _internal_has_attested_device_id();
+}
+inline void DeviceRegisterIdentification::clear_attested_device_id() {
+  attested_device_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceRegisterIdentification::attested_device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterIdentification.attested_device_id)
+  return _internal_attested_device_id();
+}
+inline void DeviceRegisterIdentification::set_attested_device_id(const std::string& value) {
+  _internal_set_attested_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterIdentification.attested_device_id)
+}
+inline std::string* DeviceRegisterIdentification::mutable_attested_device_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterIdentification.attested_device_id)
+  return _internal_mutable_attested_device_id();
+}
+inline const std::string& DeviceRegisterIdentification::_internal_attested_device_id() const {
+  return attested_device_id_.GetNoArena();
+}
+inline void DeviceRegisterIdentification::_internal_set_attested_device_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  attested_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterIdentification::set_attested_device_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  attested_device_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterIdentification.attested_device_id)
+}
+inline void DeviceRegisterIdentification::set_attested_device_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  attested_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterIdentification.attested_device_id)
+}
+inline void DeviceRegisterIdentification::set_attested_device_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  attested_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterIdentification.attested_device_id)
+}
+inline std::string* DeviceRegisterIdentification::_internal_mutable_attested_device_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return attested_device_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterIdentification::release_attested_device_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterIdentification.attested_device_id)
+  if (!_internal_has_attested_device_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return attested_device_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterIdentification::set_allocated_attested_device_id(std::string* attested_device_id) {
+  if (attested_device_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  attested_device_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), attested_device_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterIdentification.attested_device_id)
+}
+
+// -------------------------------------------------------------------
+
+// CheckUserAccountResponse
+
+// optional bool domain_verified = 1;
+inline bool CheckUserAccountResponse::_internal_has_domain_verified() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CheckUserAccountResponse::has_domain_verified() const {
+  return _internal_has_domain_verified();
+}
+inline void CheckUserAccountResponse::clear_domain_verified() {
+  domain_verified_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool CheckUserAccountResponse::_internal_domain_verified() const {
+  return domain_verified_;
+}
+inline bool CheckUserAccountResponse::domain_verified() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CheckUserAccountResponse.domain_verified)
+  return _internal_domain_verified();
+}
+inline void CheckUserAccountResponse::_internal_set_domain_verified(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  domain_verified_ = value;
+}
+inline void CheckUserAccountResponse::set_domain_verified(bool value) {
+  _internal_set_domain_verified(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CheckUserAccountResponse.domain_verified)
+}
+
+// optional .enterprise_management.CheckUserAccountResponse.UserAccountType user_account_type = 2;
+inline bool CheckUserAccountResponse::_internal_has_user_account_type() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CheckUserAccountResponse::has_user_account_type() const {
+  return _internal_has_user_account_type();
+}
+inline void CheckUserAccountResponse::clear_user_account_type() {
+  user_account_type_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::enterprise_management::CheckUserAccountResponse_UserAccountType CheckUserAccountResponse::_internal_user_account_type() const {
+  return static_cast< ::enterprise_management::CheckUserAccountResponse_UserAccountType >(user_account_type_);
+}
+inline ::enterprise_management::CheckUserAccountResponse_UserAccountType CheckUserAccountResponse::user_account_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CheckUserAccountResponse.user_account_type)
+  return _internal_user_account_type();
+}
+inline void CheckUserAccountResponse::_internal_set_user_account_type(::enterprise_management::CheckUserAccountResponse_UserAccountType value) {
+  assert(::enterprise_management::CheckUserAccountResponse_UserAccountType_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  user_account_type_ = value;
+}
+inline void CheckUserAccountResponse::set_user_account_type(::enterprise_management::CheckUserAccountResponse_UserAccountType value) {
+  _internal_set_user_account_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CheckUserAccountResponse.user_account_type)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceRegisterResponse
+
+// required string device_management_token = 1;
+inline bool DeviceRegisterResponse::_internal_has_device_management_token() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceRegisterResponse::has_device_management_token() const {
+  return _internal_has_device_management_token();
+}
+inline void DeviceRegisterResponse::clear_device_management_token() {
+  device_management_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceRegisterResponse::device_management_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterResponse.device_management_token)
+  return _internal_device_management_token();
+}
+inline void DeviceRegisterResponse::set_device_management_token(const std::string& value) {
+  _internal_set_device_management_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterResponse.device_management_token)
+}
+inline std::string* DeviceRegisterResponse::mutable_device_management_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterResponse.device_management_token)
+  return _internal_mutable_device_management_token();
+}
+inline const std::string& DeviceRegisterResponse::_internal_device_management_token() const {
+  return device_management_token_.GetNoArena();
+}
+inline void DeviceRegisterResponse::_internal_set_device_management_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_management_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterResponse::set_device_management_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_management_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterResponse.device_management_token)
+}
+inline void DeviceRegisterResponse::set_device_management_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_management_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterResponse.device_management_token)
+}
+inline void DeviceRegisterResponse::set_device_management_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_management_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterResponse.device_management_token)
+}
+inline std::string* DeviceRegisterResponse::_internal_mutable_device_management_token() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_management_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterResponse::release_device_management_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterResponse.device_management_token)
+  if (!_internal_has_device_management_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_management_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterResponse::set_allocated_device_management_token(std::string* device_management_token) {
+  if (device_management_token != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_management_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_management_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterResponse.device_management_token)
+}
+
+// optional string machine_name = 2;
+inline bool DeviceRegisterResponse::_internal_has_machine_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceRegisterResponse::has_machine_name() const {
+  return _internal_has_machine_name();
+}
+inline void DeviceRegisterResponse::clear_machine_name() {
+  machine_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DeviceRegisterResponse::machine_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterResponse.machine_name)
+  return _internal_machine_name();
+}
+inline void DeviceRegisterResponse::set_machine_name(const std::string& value) {
+  _internal_set_machine_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterResponse.machine_name)
+}
+inline std::string* DeviceRegisterResponse::mutable_machine_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterResponse.machine_name)
+  return _internal_mutable_machine_name();
+}
+inline const std::string& DeviceRegisterResponse::_internal_machine_name() const {
+  return machine_name_.GetNoArena();
+}
+inline void DeviceRegisterResponse::_internal_set_machine_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterResponse::set_machine_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  machine_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterResponse.machine_name)
+}
+inline void DeviceRegisterResponse::set_machine_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterResponse.machine_name)
+}
+inline void DeviceRegisterResponse::set_machine_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterResponse.machine_name)
+}
+inline std::string* DeviceRegisterResponse::_internal_mutable_machine_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return machine_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterResponse::release_machine_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterResponse.machine_name)
+  if (!_internal_has_machine_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return machine_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterResponse::set_allocated_machine_name(std::string* machine_name) {
+  if (machine_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  machine_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), machine_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterResponse.machine_name)
+}
+
+// optional .enterprise_management.DeviceRegisterResponse.DeviceMode enrollment_type = 3 [default = ENTERPRISE];
+inline bool DeviceRegisterResponse::_internal_has_enrollment_type() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool DeviceRegisterResponse::has_enrollment_type() const {
+  return _internal_has_enrollment_type();
+}
+inline void DeviceRegisterResponse::clear_enrollment_type() {
+  enrollment_type_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::DeviceRegisterResponse_DeviceMode DeviceRegisterResponse::_internal_enrollment_type() const {
+  return static_cast< ::enterprise_management::DeviceRegisterResponse_DeviceMode >(enrollment_type_);
+}
+inline ::enterprise_management::DeviceRegisterResponse_DeviceMode DeviceRegisterResponse::enrollment_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterResponse.enrollment_type)
+  return _internal_enrollment_type();
+}
+inline void DeviceRegisterResponse::_internal_set_enrollment_type(::enterprise_management::DeviceRegisterResponse_DeviceMode value) {
+  assert(::enterprise_management::DeviceRegisterResponse_DeviceMode_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  enrollment_type_ = value;
+}
+inline void DeviceRegisterResponse::set_enrollment_type(::enterprise_management::DeviceRegisterResponse_DeviceMode value) {
+  _internal_set_enrollment_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterResponse.enrollment_type)
+}
+
+// optional string configuration_seed = 4;
+inline bool DeviceRegisterResponse::_internal_has_configuration_seed() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceRegisterResponse::has_configuration_seed() const {
+  return _internal_has_configuration_seed();
+}
+inline void DeviceRegisterResponse::clear_configuration_seed() {
+  configuration_seed_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& DeviceRegisterResponse::configuration_seed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterResponse.configuration_seed)
+  return _internal_configuration_seed();
+}
+inline void DeviceRegisterResponse::set_configuration_seed(const std::string& value) {
+  _internal_set_configuration_seed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterResponse.configuration_seed)
+}
+inline std::string* DeviceRegisterResponse::mutable_configuration_seed() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterResponse.configuration_seed)
+  return _internal_mutable_configuration_seed();
+}
+inline const std::string& DeviceRegisterResponse::_internal_configuration_seed() const {
+  return configuration_seed_.GetNoArena();
+}
+inline void DeviceRegisterResponse::_internal_set_configuration_seed(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  configuration_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterResponse::set_configuration_seed(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  configuration_seed_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterResponse.configuration_seed)
+}
+inline void DeviceRegisterResponse::set_configuration_seed(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  configuration_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterResponse.configuration_seed)
+}
+inline void DeviceRegisterResponse::set_configuration_seed(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  configuration_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterResponse.configuration_seed)
+}
+inline std::string* DeviceRegisterResponse::_internal_mutable_configuration_seed() {
+  _has_bits_[0] |= 0x00000004u;
+  return configuration_seed_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterResponse::release_configuration_seed() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterResponse.configuration_seed)
+  if (!_internal_has_configuration_seed()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return configuration_seed_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterResponse::set_allocated_configuration_seed(std::string* configuration_seed) {
+  if (configuration_seed != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  configuration_seed_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), configuration_seed);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterResponse.configuration_seed)
+}
+
+// repeated string user_affiliation_ids = 5;
+inline int DeviceRegisterResponse::_internal_user_affiliation_ids_size() const {
+  return user_affiliation_ids_.size();
+}
+inline int DeviceRegisterResponse::user_affiliation_ids_size() const {
+  return _internal_user_affiliation_ids_size();
+}
+inline void DeviceRegisterResponse::clear_user_affiliation_ids() {
+  user_affiliation_ids_.Clear();
+}
+inline std::string* DeviceRegisterResponse::add_user_affiliation_ids() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+  return _internal_add_user_affiliation_ids();
+}
+inline const std::string& DeviceRegisterResponse::_internal_user_affiliation_ids(int index) const {
+  return user_affiliation_ids_.Get(index);
+}
+inline const std::string& DeviceRegisterResponse::user_affiliation_ids(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+  return _internal_user_affiliation_ids(index);
+}
+inline std::string* DeviceRegisterResponse::mutable_user_affiliation_ids(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+  return user_affiliation_ids_.Mutable(index);
+}
+inline void DeviceRegisterResponse::set_user_affiliation_ids(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+  user_affiliation_ids_.Mutable(index)->assign(value);
+}
+inline void DeviceRegisterResponse::set_user_affiliation_ids(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+  user_affiliation_ids_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceRegisterResponse::set_user_affiliation_ids(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  user_affiliation_ids_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+}
+inline void DeviceRegisterResponse::set_user_affiliation_ids(int index, const char* value, size_t size) {
+  user_affiliation_ids_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+}
+inline std::string* DeviceRegisterResponse::_internal_add_user_affiliation_ids() {
+  return user_affiliation_ids_.Add();
+}
+inline void DeviceRegisterResponse::add_user_affiliation_ids(const std::string& value) {
+  user_affiliation_ids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+}
+inline void DeviceRegisterResponse::add_user_affiliation_ids(std::string&& value) {
+  user_affiliation_ids_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+}
+inline void DeviceRegisterResponse::add_user_affiliation_ids(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  user_affiliation_ids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+}
+inline void DeviceRegisterResponse::add_user_affiliation_ids(const char* value, size_t size) {
+  user_affiliation_ids_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceRegisterResponse::user_affiliation_ids() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+  return user_affiliation_ids_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceRegisterResponse::mutable_user_affiliation_ids() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceRegisterResponse.user_affiliation_ids)
+  return &user_affiliation_ids_;
+}
+
+// optional string directory_api_id = 6;
+inline bool DeviceRegisterResponse::_internal_has_directory_api_id() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DeviceRegisterResponse::has_directory_api_id() const {
+  return _internal_has_directory_api_id();
+}
+inline void DeviceRegisterResponse::clear_directory_api_id() {
+  directory_api_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& DeviceRegisterResponse::directory_api_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterResponse.directory_api_id)
+  return _internal_directory_api_id();
+}
+inline void DeviceRegisterResponse::set_directory_api_id(const std::string& value) {
+  _internal_set_directory_api_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterResponse.directory_api_id)
+}
+inline std::string* DeviceRegisterResponse::mutable_directory_api_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterResponse.directory_api_id)
+  return _internal_mutable_directory_api_id();
+}
+inline const std::string& DeviceRegisterResponse::_internal_directory_api_id() const {
+  return directory_api_id_.GetNoArena();
+}
+inline void DeviceRegisterResponse::_internal_set_directory_api_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  directory_api_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterResponse::set_directory_api_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  directory_api_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterResponse.directory_api_id)
+}
+inline void DeviceRegisterResponse::set_directory_api_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  directory_api_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterResponse.directory_api_id)
+}
+inline void DeviceRegisterResponse::set_directory_api_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  directory_api_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterResponse.directory_api_id)
+}
+inline std::string* DeviceRegisterResponse::_internal_mutable_directory_api_id() {
+  _has_bits_[0] |= 0x00000008u;
+  return directory_api_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterResponse::release_directory_api_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterResponse.directory_api_id)
+  if (!_internal_has_directory_api_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return directory_api_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterResponse::set_allocated_directory_api_id(std::string* directory_api_id) {
+  if (directory_api_id != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  directory_api_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), directory_api_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterResponse.directory_api_id)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceUnregisterRequest
+
+// -------------------------------------------------------------------
+
+// DeviceUnregisterResponse
+
+// -------------------------------------------------------------------
+
+// DeviceCertUploadRequest
+
+// optional bytes device_certificate = 1;
+inline bool DeviceCertUploadRequest::_internal_has_device_certificate() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceCertUploadRequest::has_device_certificate() const {
+  return _internal_has_device_certificate();
+}
+inline void DeviceCertUploadRequest::clear_device_certificate() {
+  device_certificate_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceCertUploadRequest::device_certificate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceCertUploadRequest.device_certificate)
+  return _internal_device_certificate();
+}
+inline void DeviceCertUploadRequest::set_device_certificate(const std::string& value) {
+  _internal_set_device_certificate(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceCertUploadRequest.device_certificate)
+}
+inline std::string* DeviceCertUploadRequest::mutable_device_certificate() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceCertUploadRequest.device_certificate)
+  return _internal_mutable_device_certificate();
+}
+inline const std::string& DeviceCertUploadRequest::_internal_device_certificate() const {
+  return device_certificate_.GetNoArena();
+}
+inline void DeviceCertUploadRequest::_internal_set_device_certificate(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceCertUploadRequest::set_device_certificate(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_certificate_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceCertUploadRequest.device_certificate)
+}
+inline void DeviceCertUploadRequest::set_device_certificate(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceCertUploadRequest.device_certificate)
+}
+inline void DeviceCertUploadRequest::set_device_certificate(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceCertUploadRequest.device_certificate)
+}
+inline std::string* DeviceCertUploadRequest::_internal_mutable_device_certificate() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_certificate_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceCertUploadRequest::release_device_certificate() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceCertUploadRequest.device_certificate)
+  if (!_internal_has_device_certificate()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_certificate_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceCertUploadRequest::set_allocated_device_certificate(std::string* device_certificate) {
+  if (device_certificate != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_certificate_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_certificate);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceCertUploadRequest.device_certificate)
+}
+
+// optional .enterprise_management.DeviceCertUploadRequest.CertificateType certificate_type = 2;
+inline bool DeviceCertUploadRequest::_internal_has_certificate_type() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceCertUploadRequest::has_certificate_type() const {
+  return _internal_has_certificate_type();
+}
+inline void DeviceCertUploadRequest::clear_certificate_type() {
+  certificate_type_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest::_internal_certificate_type() const {
+  return static_cast< ::enterprise_management::DeviceCertUploadRequest_CertificateType >(certificate_type_);
+}
+inline ::enterprise_management::DeviceCertUploadRequest_CertificateType DeviceCertUploadRequest::certificate_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceCertUploadRequest.certificate_type)
+  return _internal_certificate_type();
+}
+inline void DeviceCertUploadRequest::_internal_set_certificate_type(::enterprise_management::DeviceCertUploadRequest_CertificateType value) {
+  assert(::enterprise_management::DeviceCertUploadRequest_CertificateType_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  certificate_type_ = value;
+}
+inline void DeviceCertUploadRequest::set_certificate_type(::enterprise_management::DeviceCertUploadRequest_CertificateType value) {
+  _internal_set_certificate_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceCertUploadRequest.certificate_type)
+}
+
+// optional bytes enrollment_id = 3;
+inline bool DeviceCertUploadRequest::_internal_has_enrollment_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceCertUploadRequest::has_enrollment_id() const {
+  return _internal_has_enrollment_id();
+}
+inline void DeviceCertUploadRequest::clear_enrollment_id() {
+  enrollment_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DeviceCertUploadRequest::enrollment_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceCertUploadRequest.enrollment_id)
+  return _internal_enrollment_id();
+}
+inline void DeviceCertUploadRequest::set_enrollment_id(const std::string& value) {
+  _internal_set_enrollment_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceCertUploadRequest.enrollment_id)
+}
+inline std::string* DeviceCertUploadRequest::mutable_enrollment_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceCertUploadRequest.enrollment_id)
+  return _internal_mutable_enrollment_id();
+}
+inline const std::string& DeviceCertUploadRequest::_internal_enrollment_id() const {
+  return enrollment_id_.GetNoArena();
+}
+inline void DeviceCertUploadRequest::_internal_set_enrollment_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  enrollment_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceCertUploadRequest::set_enrollment_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  enrollment_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceCertUploadRequest.enrollment_id)
+}
+inline void DeviceCertUploadRequest::set_enrollment_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  enrollment_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceCertUploadRequest.enrollment_id)
+}
+inline void DeviceCertUploadRequest::set_enrollment_id(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  enrollment_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceCertUploadRequest.enrollment_id)
+}
+inline std::string* DeviceCertUploadRequest::_internal_mutable_enrollment_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return enrollment_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceCertUploadRequest::release_enrollment_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceCertUploadRequest.enrollment_id)
+  if (!_internal_has_enrollment_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return enrollment_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceCertUploadRequest::set_allocated_enrollment_id(std::string* enrollment_id) {
+  if (enrollment_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  enrollment_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), enrollment_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceCertUploadRequest.enrollment_id)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceCertUploadResponse
+
+// -------------------------------------------------------------------
+
+// DeviceServiceApiAccessRequest
+
+// repeated string auth_scopes = 1;
+inline int DeviceServiceApiAccessRequest::_internal_auth_scopes_size() const {
+  return auth_scopes_.size();
+}
+inline int DeviceServiceApiAccessRequest::auth_scopes_size() const {
+  return _internal_auth_scopes_size();
+}
+inline void DeviceServiceApiAccessRequest::clear_auth_scopes() {
+  auth_scopes_.Clear();
+}
+inline std::string* DeviceServiceApiAccessRequest::add_auth_scopes() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+  return _internal_add_auth_scopes();
+}
+inline const std::string& DeviceServiceApiAccessRequest::_internal_auth_scopes(int index) const {
+  return auth_scopes_.Get(index);
+}
+inline const std::string& DeviceServiceApiAccessRequest::auth_scopes(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+  return _internal_auth_scopes(index);
+}
+inline std::string* DeviceServiceApiAccessRequest::mutable_auth_scopes(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+  return auth_scopes_.Mutable(index);
+}
+inline void DeviceServiceApiAccessRequest::set_auth_scopes(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+  auth_scopes_.Mutable(index)->assign(value);
+}
+inline void DeviceServiceApiAccessRequest::set_auth_scopes(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+  auth_scopes_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceServiceApiAccessRequest::set_auth_scopes(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  auth_scopes_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+}
+inline void DeviceServiceApiAccessRequest::set_auth_scopes(int index, const char* value, size_t size) {
+  auth_scopes_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+}
+inline std::string* DeviceServiceApiAccessRequest::_internal_add_auth_scopes() {
+  return auth_scopes_.Add();
+}
+inline void DeviceServiceApiAccessRequest::add_auth_scopes(const std::string& value) {
+  auth_scopes_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+}
+inline void DeviceServiceApiAccessRequest::add_auth_scopes(std::string&& value) {
+  auth_scopes_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+}
+inline void DeviceServiceApiAccessRequest::add_auth_scopes(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  auth_scopes_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+}
+inline void DeviceServiceApiAccessRequest::add_auth_scopes(const char* value, size_t size) {
+  auth_scopes_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceServiceApiAccessRequest::auth_scopes() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+  return auth_scopes_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceServiceApiAccessRequest::mutable_auth_scopes() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceServiceApiAccessRequest.auth_scopes)
+  return &auth_scopes_;
+}
+
+// optional string oauth2_client_id = 2;
+inline bool DeviceServiceApiAccessRequest::_internal_has_oauth2_client_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceServiceApiAccessRequest::has_oauth2_client_id() const {
+  return _internal_has_oauth2_client_id();
+}
+inline void DeviceServiceApiAccessRequest::clear_oauth2_client_id() {
+  oauth2_client_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceServiceApiAccessRequest::oauth2_client_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceServiceApiAccessRequest.oauth2_client_id)
+  return _internal_oauth2_client_id();
+}
+inline void DeviceServiceApiAccessRequest::set_oauth2_client_id(const std::string& value) {
+  _internal_set_oauth2_client_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceServiceApiAccessRequest.oauth2_client_id)
+}
+inline std::string* DeviceServiceApiAccessRequest::mutable_oauth2_client_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceServiceApiAccessRequest.oauth2_client_id)
+  return _internal_mutable_oauth2_client_id();
+}
+inline const std::string& DeviceServiceApiAccessRequest::_internal_oauth2_client_id() const {
+  return oauth2_client_id_.GetNoArena();
+}
+inline void DeviceServiceApiAccessRequest::_internal_set_oauth2_client_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  oauth2_client_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceServiceApiAccessRequest::set_oauth2_client_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  oauth2_client_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceServiceApiAccessRequest.oauth2_client_id)
+}
+inline void DeviceServiceApiAccessRequest::set_oauth2_client_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  oauth2_client_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceServiceApiAccessRequest.oauth2_client_id)
+}
+inline void DeviceServiceApiAccessRequest::set_oauth2_client_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  oauth2_client_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceServiceApiAccessRequest.oauth2_client_id)
+}
+inline std::string* DeviceServiceApiAccessRequest::_internal_mutable_oauth2_client_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return oauth2_client_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceServiceApiAccessRequest::release_oauth2_client_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceServiceApiAccessRequest.oauth2_client_id)
+  if (!_internal_has_oauth2_client_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return oauth2_client_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceServiceApiAccessRequest::set_allocated_oauth2_client_id(std::string* oauth2_client_id) {
+  if (oauth2_client_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  oauth2_client_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), oauth2_client_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceServiceApiAccessRequest.oauth2_client_id)
+}
+
+// optional .enterprise_management.DeviceServiceApiAccessRequest.DeviceType device_type = 3;
+inline bool DeviceServiceApiAccessRequest::_internal_has_device_type() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceServiceApiAccessRequest::has_device_type() const {
+  return _internal_has_device_type();
+}
+inline void DeviceServiceApiAccessRequest::clear_device_type() {
+  device_type_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::enterprise_management::DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest::_internal_device_type() const {
+  return static_cast< ::enterprise_management::DeviceServiceApiAccessRequest_DeviceType >(device_type_);
+}
+inline ::enterprise_management::DeviceServiceApiAccessRequest_DeviceType DeviceServiceApiAccessRequest::device_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceServiceApiAccessRequest.device_type)
+  return _internal_device_type();
+}
+inline void DeviceServiceApiAccessRequest::_internal_set_device_type(::enterprise_management::DeviceServiceApiAccessRequest_DeviceType value) {
+  assert(::enterprise_management::DeviceServiceApiAccessRequest_DeviceType_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  device_type_ = value;
+}
+inline void DeviceServiceApiAccessRequest::set_device_type(::enterprise_management::DeviceServiceApiAccessRequest_DeviceType value) {
+  _internal_set_device_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceServiceApiAccessRequest.device_type)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceServiceApiAccessResponse
+
+// optional string auth_code = 1;
+inline bool DeviceServiceApiAccessResponse::_internal_has_auth_code() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceServiceApiAccessResponse::has_auth_code() const {
+  return _internal_has_auth_code();
+}
+inline void DeviceServiceApiAccessResponse::clear_auth_code() {
+  auth_code_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceServiceApiAccessResponse::auth_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceServiceApiAccessResponse.auth_code)
+  return _internal_auth_code();
+}
+inline void DeviceServiceApiAccessResponse::set_auth_code(const std::string& value) {
+  _internal_set_auth_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceServiceApiAccessResponse.auth_code)
+}
+inline std::string* DeviceServiceApiAccessResponse::mutable_auth_code() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceServiceApiAccessResponse.auth_code)
+  return _internal_mutable_auth_code();
+}
+inline const std::string& DeviceServiceApiAccessResponse::_internal_auth_code() const {
+  return auth_code_.GetNoArena();
+}
+inline void DeviceServiceApiAccessResponse::_internal_set_auth_code(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceServiceApiAccessResponse::set_auth_code(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_code_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceServiceApiAccessResponse.auth_code)
+}
+inline void DeviceServiceApiAccessResponse::set_auth_code(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  auth_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceServiceApiAccessResponse.auth_code)
+}
+inline void DeviceServiceApiAccessResponse::set_auth_code(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceServiceApiAccessResponse.auth_code)
+}
+inline std::string* DeviceServiceApiAccessResponse::_internal_mutable_auth_code() {
+  _has_bits_[0] |= 0x00000001u;
+  return auth_code_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceServiceApiAccessResponse::release_auth_code() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceServiceApiAccessResponse.auth_code)
+  if (!_internal_has_auth_code()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return auth_code_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceServiceApiAccessResponse::set_allocated_auth_code(std::string* auth_code) {
+  if (auth_code != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  auth_code_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), auth_code);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceServiceApiAccessResponse.auth_code)
+}
+
+// -------------------------------------------------------------------
+
+// BrowserDeviceIdentifier
+
+// optional string computer_name = 1;
+inline bool BrowserDeviceIdentifier::_internal_has_computer_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BrowserDeviceIdentifier::has_computer_name() const {
+  return _internal_has_computer_name();
+}
+inline void BrowserDeviceIdentifier::clear_computer_name() {
+  computer_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& BrowserDeviceIdentifier::computer_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserDeviceIdentifier.computer_name)
+  return _internal_computer_name();
+}
+inline void BrowserDeviceIdentifier::set_computer_name(const std::string& value) {
+  _internal_set_computer_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserDeviceIdentifier.computer_name)
+}
+inline std::string* BrowserDeviceIdentifier::mutable_computer_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserDeviceIdentifier.computer_name)
+  return _internal_mutable_computer_name();
+}
+inline const std::string& BrowserDeviceIdentifier::_internal_computer_name() const {
+  return computer_name_.GetNoArena();
+}
+inline void BrowserDeviceIdentifier::_internal_set_computer_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  computer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BrowserDeviceIdentifier::set_computer_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  computer_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BrowserDeviceIdentifier.computer_name)
+}
+inline void BrowserDeviceIdentifier::set_computer_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  computer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BrowserDeviceIdentifier.computer_name)
+}
+inline void BrowserDeviceIdentifier::set_computer_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  computer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BrowserDeviceIdentifier.computer_name)
+}
+inline std::string* BrowserDeviceIdentifier::_internal_mutable_computer_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return computer_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BrowserDeviceIdentifier::release_computer_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BrowserDeviceIdentifier.computer_name)
+  if (!_internal_has_computer_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return computer_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BrowserDeviceIdentifier::set_allocated_computer_name(std::string* computer_name) {
+  if (computer_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  computer_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), computer_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BrowserDeviceIdentifier.computer_name)
+}
+
+// optional string serial_number = 2;
+inline bool BrowserDeviceIdentifier::_internal_has_serial_number() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BrowserDeviceIdentifier::has_serial_number() const {
+  return _internal_has_serial_number();
+}
+inline void BrowserDeviceIdentifier::clear_serial_number() {
+  serial_number_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& BrowserDeviceIdentifier::serial_number() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserDeviceIdentifier.serial_number)
+  return _internal_serial_number();
+}
+inline void BrowserDeviceIdentifier::set_serial_number(const std::string& value) {
+  _internal_set_serial_number(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserDeviceIdentifier.serial_number)
+}
+inline std::string* BrowserDeviceIdentifier::mutable_serial_number() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserDeviceIdentifier.serial_number)
+  return _internal_mutable_serial_number();
+}
+inline const std::string& BrowserDeviceIdentifier::_internal_serial_number() const {
+  return serial_number_.GetNoArena();
+}
+inline void BrowserDeviceIdentifier::_internal_set_serial_number(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BrowserDeviceIdentifier::set_serial_number(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  serial_number_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BrowserDeviceIdentifier.serial_number)
+}
+inline void BrowserDeviceIdentifier::set_serial_number(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BrowserDeviceIdentifier.serial_number)
+}
+inline void BrowserDeviceIdentifier::set_serial_number(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BrowserDeviceIdentifier.serial_number)
+}
+inline std::string* BrowserDeviceIdentifier::_internal_mutable_serial_number() {
+  _has_bits_[0] |= 0x00000002u;
+  return serial_number_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BrowserDeviceIdentifier::release_serial_number() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BrowserDeviceIdentifier.serial_number)
+  if (!_internal_has_serial_number()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return serial_number_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BrowserDeviceIdentifier::set_allocated_serial_number(std::string* serial_number) {
+  if (serial_number != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  serial_number_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), serial_number);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BrowserDeviceIdentifier.serial_number)
+}
+
+// -------------------------------------------------------------------
+
+// PolicyFetchRequest
+
+// optional string policy_type = 1;
+inline bool PolicyFetchRequest::_internal_has_policy_type() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_policy_type() const {
+  return _internal_has_policy_type();
+}
+inline void PolicyFetchRequest::clear_policy_type() {
+  policy_type_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PolicyFetchRequest::policy_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.policy_type)
+  return _internal_policy_type();
+}
+inline void PolicyFetchRequest::set_policy_type(const std::string& value) {
+  _internal_set_policy_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.policy_type)
+}
+inline std::string* PolicyFetchRequest::mutable_policy_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchRequest.policy_type)
+  return _internal_mutable_policy_type();
+}
+inline const std::string& PolicyFetchRequest::_internal_policy_type() const {
+  return policy_type_.GetNoArena();
+}
+inline void PolicyFetchRequest::_internal_set_policy_type(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchRequest::set_policy_type(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchRequest.policy_type)
+}
+inline void PolicyFetchRequest::set_policy_type(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchRequest.policy_type)
+}
+inline void PolicyFetchRequest::set_policy_type(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchRequest.policy_type)
+}
+inline std::string* PolicyFetchRequest::_internal_mutable_policy_type() {
+  _has_bits_[0] |= 0x00000001u;
+  return policy_type_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchRequest::release_policy_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchRequest.policy_type)
+  if (!_internal_has_policy_type()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return policy_type_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchRequest::set_allocated_policy_type(std::string* policy_type) {
+  if (policy_type != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  policy_type_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_type);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchRequest.policy_type)
+}
+
+// optional int64 timestamp = 2;
+inline bool PolicyFetchRequest::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void PolicyFetchRequest::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PolicyFetchRequest::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PolicyFetchRequest::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.timestamp)
+  return _internal_timestamp();
+}
+inline void PolicyFetchRequest::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000080u;
+  timestamp_ = value;
+}
+inline void PolicyFetchRequest::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.timestamp)
+}
+
+// optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 3 [default = NONE];
+inline bool PolicyFetchRequest::_internal_has_signature_type() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_signature_type() const {
+  return _internal_has_signature_type();
+}
+inline void PolicyFetchRequest::clear_signature_type() {
+  signature_type_ = 0;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline ::enterprise_management::PolicyFetchRequest_SignatureType PolicyFetchRequest::_internal_signature_type() const {
+  return static_cast< ::enterprise_management::PolicyFetchRequest_SignatureType >(signature_type_);
+}
+inline ::enterprise_management::PolicyFetchRequest_SignatureType PolicyFetchRequest::signature_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.signature_type)
+  return _internal_signature_type();
+}
+inline void PolicyFetchRequest::_internal_set_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value) {
+  assert(::enterprise_management::PolicyFetchRequest_SignatureType_IsValid(value));
+  _has_bits_[0] |= 0x00000100u;
+  signature_type_ = value;
+}
+inline void PolicyFetchRequest::set_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value) {
+  _internal_set_signature_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.signature_type)
+}
+
+// optional int32 public_key_version = 4;
+inline bool PolicyFetchRequest::_internal_has_public_key_version() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_public_key_version() const {
+  return _internal_has_public_key_version();
+}
+inline void PolicyFetchRequest::clear_public_key_version() {
+  public_key_version_ = 0;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PolicyFetchRequest::_internal_public_key_version() const {
+  return public_key_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PolicyFetchRequest::public_key_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.public_key_version)
+  return _internal_public_key_version();
+}
+inline void PolicyFetchRequest::_internal_set_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000200u;
+  public_key_version_ = value;
+}
+inline void PolicyFetchRequest::set_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_public_key_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.public_key_version)
+}
+
+// optional string settings_entity_id = 6;
+inline bool PolicyFetchRequest::_internal_has_settings_entity_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_settings_entity_id() const {
+  return _internal_has_settings_entity_id();
+}
+inline void PolicyFetchRequest::clear_settings_entity_id() {
+  settings_entity_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& PolicyFetchRequest::settings_entity_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.settings_entity_id)
+  return _internal_settings_entity_id();
+}
+inline void PolicyFetchRequest::set_settings_entity_id(const std::string& value) {
+  _internal_set_settings_entity_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.settings_entity_id)
+}
+inline std::string* PolicyFetchRequest::mutable_settings_entity_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchRequest.settings_entity_id)
+  return _internal_mutable_settings_entity_id();
+}
+inline const std::string& PolicyFetchRequest::_internal_settings_entity_id() const {
+  return settings_entity_id_.GetNoArena();
+}
+inline void PolicyFetchRequest::_internal_set_settings_entity_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  settings_entity_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchRequest::set_settings_entity_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  settings_entity_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchRequest.settings_entity_id)
+}
+inline void PolicyFetchRequest::set_settings_entity_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  settings_entity_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchRequest.settings_entity_id)
+}
+inline void PolicyFetchRequest::set_settings_entity_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  settings_entity_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchRequest.settings_entity_id)
+}
+inline std::string* PolicyFetchRequest::_internal_mutable_settings_entity_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return settings_entity_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchRequest::release_settings_entity_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchRequest.settings_entity_id)
+  if (!_internal_has_settings_entity_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return settings_entity_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchRequest::set_allocated_settings_entity_id(std::string* settings_entity_id) {
+  if (settings_entity_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  settings_entity_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), settings_entity_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchRequest.settings_entity_id)
+}
+
+// optional int64 invalidation_version = 7;
+inline bool PolicyFetchRequest::_internal_has_invalidation_version() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_invalidation_version() const {
+  return _internal_has_invalidation_version();
+}
+inline void PolicyFetchRequest::clear_invalidation_version() {
+  invalidation_version_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PolicyFetchRequest::_internal_invalidation_version() const {
+  return invalidation_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PolicyFetchRequest::invalidation_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.invalidation_version)
+  return _internal_invalidation_version();
+}
+inline void PolicyFetchRequest::_internal_set_invalidation_version(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000400u;
+  invalidation_version_ = value;
+}
+inline void PolicyFetchRequest::set_invalidation_version(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_invalidation_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.invalidation_version)
+}
+
+// optional bytes invalidation_payload = 8;
+inline bool PolicyFetchRequest::_internal_has_invalidation_payload() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_invalidation_payload() const {
+  return _internal_has_invalidation_payload();
+}
+inline void PolicyFetchRequest::clear_invalidation_payload() {
+  invalidation_payload_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& PolicyFetchRequest::invalidation_payload() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.invalidation_payload)
+  return _internal_invalidation_payload();
+}
+inline void PolicyFetchRequest::set_invalidation_payload(const std::string& value) {
+  _internal_set_invalidation_payload(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.invalidation_payload)
+}
+inline std::string* PolicyFetchRequest::mutable_invalidation_payload() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchRequest.invalidation_payload)
+  return _internal_mutable_invalidation_payload();
+}
+inline const std::string& PolicyFetchRequest::_internal_invalidation_payload() const {
+  return invalidation_payload_.GetNoArena();
+}
+inline void PolicyFetchRequest::_internal_set_invalidation_payload(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  invalidation_payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchRequest::set_invalidation_payload(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  invalidation_payload_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchRequest.invalidation_payload)
+}
+inline void PolicyFetchRequest::set_invalidation_payload(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  invalidation_payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchRequest.invalidation_payload)
+}
+inline void PolicyFetchRequest::set_invalidation_payload(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  invalidation_payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchRequest.invalidation_payload)
+}
+inline std::string* PolicyFetchRequest::_internal_mutable_invalidation_payload() {
+  _has_bits_[0] |= 0x00000004u;
+  return invalidation_payload_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchRequest::release_invalidation_payload() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchRequest.invalidation_payload)
+  if (!_internal_has_invalidation_payload()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return invalidation_payload_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchRequest::set_allocated_invalidation_payload(std::string* invalidation_payload) {
+  if (invalidation_payload != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  invalidation_payload_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), invalidation_payload);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchRequest.invalidation_payload)
+}
+
+// optional string verification_key_hash = 9;
+inline bool PolicyFetchRequest::_internal_has_verification_key_hash() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_verification_key_hash() const {
+  return _internal_has_verification_key_hash();
+}
+inline void PolicyFetchRequest::clear_verification_key_hash() {
+  verification_key_hash_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& PolicyFetchRequest::verification_key_hash() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.verification_key_hash)
+  return _internal_verification_key_hash();
+}
+inline void PolicyFetchRequest::set_verification_key_hash(const std::string& value) {
+  _internal_set_verification_key_hash(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.verification_key_hash)
+}
+inline std::string* PolicyFetchRequest::mutable_verification_key_hash() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchRequest.verification_key_hash)
+  return _internal_mutable_verification_key_hash();
+}
+inline const std::string& PolicyFetchRequest::_internal_verification_key_hash() const {
+  return verification_key_hash_.GetNoArena();
+}
+inline void PolicyFetchRequest::_internal_set_verification_key_hash(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  verification_key_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchRequest::set_verification_key_hash(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  verification_key_hash_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchRequest.verification_key_hash)
+}
+inline void PolicyFetchRequest::set_verification_key_hash(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  verification_key_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchRequest.verification_key_hash)
+}
+inline void PolicyFetchRequest::set_verification_key_hash(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  verification_key_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchRequest.verification_key_hash)
+}
+inline std::string* PolicyFetchRequest::_internal_mutable_verification_key_hash() {
+  _has_bits_[0] |= 0x00000008u;
+  return verification_key_hash_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchRequest::release_verification_key_hash() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchRequest.verification_key_hash)
+  if (!_internal_has_verification_key_hash()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return verification_key_hash_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchRequest::set_allocated_verification_key_hash(std::string* verification_key_hash) {
+  if (verification_key_hash != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  verification_key_hash_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), verification_key_hash);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchRequest.verification_key_hash)
+}
+
+// optional string policy_invalidation_info = 10;
+inline bool PolicyFetchRequest::_internal_has_policy_invalidation_info() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_policy_invalidation_info() const {
+  return _internal_has_policy_invalidation_info();
+}
+inline void PolicyFetchRequest::clear_policy_invalidation_info() {
+  policy_invalidation_info_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& PolicyFetchRequest::policy_invalidation_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.policy_invalidation_info)
+  return _internal_policy_invalidation_info();
+}
+inline void PolicyFetchRequest::set_policy_invalidation_info(const std::string& value) {
+  _internal_set_policy_invalidation_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.policy_invalidation_info)
+}
+inline std::string* PolicyFetchRequest::mutable_policy_invalidation_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchRequest.policy_invalidation_info)
+  return _internal_mutable_policy_invalidation_info();
+}
+inline const std::string& PolicyFetchRequest::_internal_policy_invalidation_info() const {
+  return policy_invalidation_info_.GetNoArena();
+}
+inline void PolicyFetchRequest::_internal_set_policy_invalidation_info(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_invalidation_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchRequest::set_policy_invalidation_info(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_invalidation_info_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchRequest.policy_invalidation_info)
+}
+inline void PolicyFetchRequest::set_policy_invalidation_info(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  policy_invalidation_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchRequest.policy_invalidation_info)
+}
+inline void PolicyFetchRequest::set_policy_invalidation_info(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_invalidation_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchRequest.policy_invalidation_info)
+}
+inline std::string* PolicyFetchRequest::_internal_mutable_policy_invalidation_info() {
+  _has_bits_[0] |= 0x00000010u;
+  return policy_invalidation_info_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchRequest::release_policy_invalidation_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchRequest.policy_invalidation_info)
+  if (!_internal_has_policy_invalidation_info()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return policy_invalidation_info_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchRequest::set_allocated_policy_invalidation_info(std::string* policy_invalidation_info) {
+  if (policy_invalidation_info != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  policy_invalidation_info_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_invalidation_info);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchRequest.policy_invalidation_info)
+}
+
+// optional bool invalidation_topics_only = 11;
+inline bool PolicyFetchRequest::_internal_has_invalidation_topics_only() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_invalidation_topics_only() const {
+  return _internal_has_invalidation_topics_only();
+}
+inline void PolicyFetchRequest::clear_invalidation_topics_only() {
+  invalidation_topics_only_ = false;
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline bool PolicyFetchRequest::_internal_invalidation_topics_only() const {
+  return invalidation_topics_only_;
+}
+inline bool PolicyFetchRequest::invalidation_topics_only() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.invalidation_topics_only)
+  return _internal_invalidation_topics_only();
+}
+inline void PolicyFetchRequest::_internal_set_invalidation_topics_only(bool value) {
+  _has_bits_[0] |= 0x00000800u;
+  invalidation_topics_only_ = value;
+}
+inline void PolicyFetchRequest::set_invalidation_topics_only(bool value) {
+  _internal_set_invalidation_topics_only(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.invalidation_topics_only)
+}
+
+// optional string device_dm_token = 12;
+inline bool PolicyFetchRequest::_internal_has_device_dm_token() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool PolicyFetchRequest::has_device_dm_token() const {
+  return _internal_has_device_dm_token();
+}
+inline void PolicyFetchRequest::clear_device_dm_token() {
+  device_dm_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& PolicyFetchRequest::device_dm_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.device_dm_token)
+  return _internal_device_dm_token();
+}
+inline void PolicyFetchRequest::set_device_dm_token(const std::string& value) {
+  _internal_set_device_dm_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchRequest.device_dm_token)
+}
+inline std::string* PolicyFetchRequest::mutable_device_dm_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchRequest.device_dm_token)
+  return _internal_mutable_device_dm_token();
+}
+inline const std::string& PolicyFetchRequest::_internal_device_dm_token() const {
+  return device_dm_token_.GetNoArena();
+}
+inline void PolicyFetchRequest::_internal_set_device_dm_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  device_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchRequest::set_device_dm_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  device_dm_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchRequest.device_dm_token)
+}
+inline void PolicyFetchRequest::set_device_dm_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  device_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchRequest.device_dm_token)
+}
+inline void PolicyFetchRequest::set_device_dm_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  device_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchRequest.device_dm_token)
+}
+inline std::string* PolicyFetchRequest::_internal_mutable_device_dm_token() {
+  _has_bits_[0] |= 0x00000020u;
+  return device_dm_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchRequest::release_device_dm_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchRequest.device_dm_token)
+  if (!_internal_has_device_dm_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return device_dm_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchRequest::set_allocated_device_dm_token(std::string* device_dm_token) {
+  if (device_dm_token != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  device_dm_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_dm_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchRequest.device_dm_token)
+}
+
+// optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 13;
+inline bool PolicyFetchRequest::_internal_has_browser_device_identifier() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || browser_device_identifier_ != nullptr);
+  return value;
+}
+inline bool PolicyFetchRequest::has_browser_device_identifier() const {
+  return _internal_has_browser_device_identifier();
+}
+inline void PolicyFetchRequest::clear_browser_device_identifier() {
+  if (browser_device_identifier_ != nullptr) browser_device_identifier_->Clear();
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const ::enterprise_management::BrowserDeviceIdentifier& PolicyFetchRequest::_internal_browser_device_identifier() const {
+  const ::enterprise_management::BrowserDeviceIdentifier* p = browser_device_identifier_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserDeviceIdentifier*>(
+      &::enterprise_management::_BrowserDeviceIdentifier_default_instance_);
+}
+inline const ::enterprise_management::BrowserDeviceIdentifier& PolicyFetchRequest::browser_device_identifier() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchRequest.browser_device_identifier)
+  return _internal_browser_device_identifier();
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* PolicyFetchRequest::release_browser_device_identifier() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchRequest.browser_device_identifier)
+  _has_bits_[0] &= ~0x00000040u;
+  ::enterprise_management::BrowserDeviceIdentifier* temp = browser_device_identifier_;
+  browser_device_identifier_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* PolicyFetchRequest::_internal_mutable_browser_device_identifier() {
+  _has_bits_[0] |= 0x00000040u;
+  if (browser_device_identifier_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserDeviceIdentifier>(GetArenaNoVirtual());
+    browser_device_identifier_ = p;
+  }
+  return browser_device_identifier_;
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* PolicyFetchRequest::mutable_browser_device_identifier() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchRequest.browser_device_identifier)
+  return _internal_mutable_browser_device_identifier();
+}
+inline void PolicyFetchRequest::set_allocated_browser_device_identifier(::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_device_identifier_;
+  }
+  if (browser_device_identifier) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_device_identifier = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_device_identifier, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  browser_device_identifier_ = browser_device_identifier;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchRequest.browser_device_identifier)
+}
+
+// -------------------------------------------------------------------
+
+// DisabledState
+
+// optional string message = 1;
+inline bool DisabledState::_internal_has_message() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DisabledState::has_message() const {
+  return _internal_has_message();
+}
+inline void DisabledState::clear_message() {
+  message_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DisabledState::message() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DisabledState.message)
+  return _internal_message();
+}
+inline void DisabledState::set_message(const std::string& value) {
+  _internal_set_message(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DisabledState.message)
+}
+inline std::string* DisabledState::mutable_message() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DisabledState.message)
+  return _internal_mutable_message();
+}
+inline const std::string& DisabledState::_internal_message() const {
+  return message_.GetNoArena();
+}
+inline void DisabledState::_internal_set_message(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DisabledState::set_message(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  message_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DisabledState.message)
+}
+inline void DisabledState::set_message(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DisabledState.message)
+}
+inline void DisabledState::set_message(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DisabledState.message)
+}
+inline std::string* DisabledState::_internal_mutable_message() {
+  _has_bits_[0] |= 0x00000001u;
+  return message_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DisabledState::release_message() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DisabledState.message)
+  if (!_internal_has_message()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return message_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DisabledState::set_allocated_message(std::string* message) {
+  if (message != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  message_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), message);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DisabledState.message)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceState
+
+// optional .enterprise_management.DeviceState.DeviceMode device_mode = 1 [default = DEVICE_MODE_NORMAL];
+inline bool DeviceState::_internal_has_device_mode() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceState::has_device_mode() const {
+  return _internal_has_device_mode();
+}
+inline void DeviceState::clear_device_mode() {
+  device_mode_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::enterprise_management::DeviceState_DeviceMode DeviceState::_internal_device_mode() const {
+  return static_cast< ::enterprise_management::DeviceState_DeviceMode >(device_mode_);
+}
+inline ::enterprise_management::DeviceState_DeviceMode DeviceState::device_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceState.device_mode)
+  return _internal_device_mode();
+}
+inline void DeviceState::_internal_set_device_mode(::enterprise_management::DeviceState_DeviceMode value) {
+  assert(::enterprise_management::DeviceState_DeviceMode_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  device_mode_ = value;
+}
+inline void DeviceState::set_device_mode(::enterprise_management::DeviceState_DeviceMode value) {
+  _internal_set_device_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceState.device_mode)
+}
+
+// optional .enterprise_management.DisabledState disabled_state = 2;
+inline bool DeviceState::_internal_has_disabled_state() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || disabled_state_ != nullptr);
+  return value;
+}
+inline bool DeviceState::has_disabled_state() const {
+  return _internal_has_disabled_state();
+}
+inline void DeviceState::clear_disabled_state() {
+  if (disabled_state_ != nullptr) disabled_state_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::DisabledState& DeviceState::_internal_disabled_state() const {
+  const ::enterprise_management::DisabledState* p = disabled_state_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DisabledState*>(
+      &::enterprise_management::_DisabledState_default_instance_);
+}
+inline const ::enterprise_management::DisabledState& DeviceState::disabled_state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceState.disabled_state)
+  return _internal_disabled_state();
+}
+inline ::enterprise_management::DisabledState* DeviceState::release_disabled_state() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceState.disabled_state)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::DisabledState* temp = disabled_state_;
+  disabled_state_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DisabledState* DeviceState::_internal_mutable_disabled_state() {
+  _has_bits_[0] |= 0x00000001u;
+  if (disabled_state_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DisabledState>(GetArenaNoVirtual());
+    disabled_state_ = p;
+  }
+  return disabled_state_;
+}
+inline ::enterprise_management::DisabledState* DeviceState::mutable_disabled_state() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceState.disabled_state)
+  return _internal_mutable_disabled_state();
+}
+inline void DeviceState::set_allocated_disabled_state(::enterprise_management::DisabledState* disabled_state) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete disabled_state_;
+  }
+  if (disabled_state) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      disabled_state = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, disabled_state, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  disabled_state_ = disabled_state;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceState.disabled_state)
+}
+
+// -------------------------------------------------------------------
+
+// CustomerLogo
+
+// optional string logo_url = 1;
+inline bool CustomerLogo::_internal_has_logo_url() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CustomerLogo::has_logo_url() const {
+  return _internal_has_logo_url();
+}
+inline void CustomerLogo::clear_logo_url() {
+  logo_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CustomerLogo::logo_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CustomerLogo.logo_url)
+  return _internal_logo_url();
+}
+inline void CustomerLogo::set_logo_url(const std::string& value) {
+  _internal_set_logo_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CustomerLogo.logo_url)
+}
+inline std::string* CustomerLogo::mutable_logo_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CustomerLogo.logo_url)
+  return _internal_mutable_logo_url();
+}
+inline const std::string& CustomerLogo::_internal_logo_url() const {
+  return logo_url_.GetNoArena();
+}
+inline void CustomerLogo::_internal_set_logo_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  logo_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CustomerLogo::set_logo_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  logo_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CustomerLogo.logo_url)
+}
+inline void CustomerLogo::set_logo_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  logo_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CustomerLogo.logo_url)
+}
+inline void CustomerLogo::set_logo_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  logo_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CustomerLogo.logo_url)
+}
+inline std::string* CustomerLogo::_internal_mutable_logo_url() {
+  _has_bits_[0] |= 0x00000001u;
+  return logo_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CustomerLogo::release_logo_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CustomerLogo.logo_url)
+  if (!_internal_has_logo_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return logo_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CustomerLogo::set_allocated_logo_url(std::string* logo_url) {
+  if (logo_url != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  logo_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), logo_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CustomerLogo.logo_url)
+}
+
+// -------------------------------------------------------------------
+
+// PolicyData
+
+// optional string policy_type = 1;
+inline bool PolicyData::_internal_has_policy_type() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PolicyData::has_policy_type() const {
+  return _internal_has_policy_type();
+}
+inline void PolicyData::clear_policy_type() {
+  policy_type_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PolicyData::policy_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.policy_type)
+  return _internal_policy_type();
+}
+inline void PolicyData::set_policy_type(const std::string& value) {
+  _internal_set_policy_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.policy_type)
+}
+inline std::string* PolicyData::mutable_policy_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.policy_type)
+  return _internal_mutable_policy_type();
+}
+inline const std::string& PolicyData::_internal_policy_type() const {
+  return policy_type_.GetNoArena();
+}
+inline void PolicyData::_internal_set_policy_type(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_policy_type(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.policy_type)
+}
+inline void PolicyData::set_policy_type(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.policy_type)
+}
+inline void PolicyData::set_policy_type(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.policy_type)
+}
+inline std::string* PolicyData::_internal_mutable_policy_type() {
+  _has_bits_[0] |= 0x00000001u;
+  return policy_type_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_policy_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.policy_type)
+  if (!_internal_has_policy_type()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return policy_type_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_policy_type(std::string* policy_type) {
+  if (policy_type != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  policy_type_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_type);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.policy_type)
+}
+
+// optional int64 timestamp = 2;
+inline bool PolicyData::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x01000000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void PolicyData::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x01000000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PolicyData::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PolicyData::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.timestamp)
+  return _internal_timestamp();
+}
+inline void PolicyData::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x01000000u;
+  timestamp_ = value;
+}
+inline void PolicyData::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.timestamp)
+}
+
+// optional string request_token = 3;
+inline bool PolicyData::_internal_has_request_token() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PolicyData::has_request_token() const {
+  return _internal_has_request_token();
+}
+inline void PolicyData::clear_request_token() {
+  request_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& PolicyData::request_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.request_token)
+  return _internal_request_token();
+}
+inline void PolicyData::set_request_token(const std::string& value) {
+  _internal_set_request_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.request_token)
+}
+inline std::string* PolicyData::mutable_request_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.request_token)
+  return _internal_mutable_request_token();
+}
+inline const std::string& PolicyData::_internal_request_token() const {
+  return request_token_.GetNoArena();
+}
+inline void PolicyData::_internal_set_request_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  request_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_request_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  request_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.request_token)
+}
+inline void PolicyData::set_request_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  request_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.request_token)
+}
+inline void PolicyData::set_request_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  request_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.request_token)
+}
+inline std::string* PolicyData::_internal_mutable_request_token() {
+  _has_bits_[0] |= 0x00000002u;
+  return request_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_request_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.request_token)
+  if (!_internal_has_request_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return request_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_request_token(std::string* request_token) {
+  if (request_token != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  request_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), request_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.request_token)
+}
+
+// optional bytes policy_value = 4;
+inline bool PolicyData::_internal_has_policy_value() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PolicyData::has_policy_value() const {
+  return _internal_has_policy_value();
+}
+inline void PolicyData::clear_policy_value() {
+  policy_value_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& PolicyData::policy_value() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.policy_value)
+  return _internal_policy_value();
+}
+inline void PolicyData::set_policy_value(const std::string& value) {
+  _internal_set_policy_value(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.policy_value)
+}
+inline std::string* PolicyData::mutable_policy_value() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.policy_value)
+  return _internal_mutable_policy_value();
+}
+inline const std::string& PolicyData::_internal_policy_value() const {
+  return policy_value_.GetNoArena();
+}
+inline void PolicyData::_internal_set_policy_value(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  policy_value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_policy_value(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  policy_value_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.policy_value)
+}
+inline void PolicyData::set_policy_value(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  policy_value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.policy_value)
+}
+inline void PolicyData::set_policy_value(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  policy_value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.policy_value)
+}
+inline std::string* PolicyData::_internal_mutable_policy_value() {
+  _has_bits_[0] |= 0x00000004u;
+  return policy_value_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_policy_value() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.policy_value)
+  if (!_internal_has_policy_value()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return policy_value_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_policy_value(std::string* policy_value) {
+  if (policy_value != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  policy_value_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_value);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.policy_value)
+}
+
+// optional string machine_name = 5;
+inline bool PolicyData::_internal_has_machine_name() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool PolicyData::has_machine_name() const {
+  return _internal_has_machine_name();
+}
+inline void PolicyData::clear_machine_name() {
+  machine_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& PolicyData::machine_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.machine_name)
+  return _internal_machine_name();
+}
+inline void PolicyData::set_machine_name(const std::string& value) {
+  _internal_set_machine_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.machine_name)
+}
+inline std::string* PolicyData::mutable_machine_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.machine_name)
+  return _internal_mutable_machine_name();
+}
+inline const std::string& PolicyData::_internal_machine_name() const {
+  return machine_name_.GetNoArena();
+}
+inline void PolicyData::_internal_set_machine_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_machine_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  machine_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.machine_name)
+}
+inline void PolicyData::set_machine_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.machine_name)
+}
+inline void PolicyData::set_machine_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.machine_name)
+}
+inline std::string* PolicyData::_internal_mutable_machine_name() {
+  _has_bits_[0] |= 0x00000008u;
+  return machine_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_machine_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.machine_name)
+  if (!_internal_has_machine_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return machine_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_machine_name(std::string* machine_name) {
+  if (machine_name != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  machine_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), machine_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.machine_name)
+}
+
+// optional int32 public_key_version = 6;
+inline bool PolicyData::_internal_has_public_key_version() const {
+  bool value = (_has_bits_[0] & 0x02000000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_public_key_version() const {
+  return _internal_has_public_key_version();
+}
+inline void PolicyData::clear_public_key_version() {
+  public_key_version_ = 0;
+  _has_bits_[0] &= ~0x02000000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PolicyData::_internal_public_key_version() const {
+  return public_key_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PolicyData::public_key_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.public_key_version)
+  return _internal_public_key_version();
+}
+inline void PolicyData::_internal_set_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x02000000u;
+  public_key_version_ = value;
+}
+inline void PolicyData::set_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_public_key_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.public_key_version)
+}
+
+// optional string username = 7;
+inline bool PolicyData::_internal_has_username() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool PolicyData::has_username() const {
+  return _internal_has_username();
+}
+inline void PolicyData::clear_username() {
+  username_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& PolicyData::username() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.username)
+  return _internal_username();
+}
+inline void PolicyData::set_username(const std::string& value) {
+  _internal_set_username(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.username)
+}
+inline std::string* PolicyData::mutable_username() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.username)
+  return _internal_mutable_username();
+}
+inline const std::string& PolicyData::_internal_username() const {
+  return username_.GetNoArena();
+}
+inline void PolicyData::_internal_set_username(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  username_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_username(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  username_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.username)
+}
+inline void PolicyData::set_username(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  username_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.username)
+}
+inline void PolicyData::set_username(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  username_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.username)
+}
+inline std::string* PolicyData::_internal_mutable_username() {
+  _has_bits_[0] |= 0x00000010u;
+  return username_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_username() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.username)
+  if (!_internal_has_username()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return username_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_username(std::string* username) {
+  if (username != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  username_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), username);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.username)
+}
+
+// optional string device_id = 8;
+inline bool PolicyData::_internal_has_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool PolicyData::has_device_id() const {
+  return _internal_has_device_id();
+}
+inline void PolicyData::clear_device_id() {
+  device_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& PolicyData::device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.device_id)
+  return _internal_device_id();
+}
+inline void PolicyData::set_device_id(const std::string& value) {
+  _internal_set_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.device_id)
+}
+inline std::string* PolicyData::mutable_device_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.device_id)
+  return _internal_mutable_device_id();
+}
+inline const std::string& PolicyData::_internal_device_id() const {
+  return device_id_.GetNoArena();
+}
+inline void PolicyData::_internal_set_device_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_device_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  device_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.device_id)
+}
+inline void PolicyData::set_device_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.device_id)
+}
+inline void PolicyData::set_device_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.device_id)
+}
+inline std::string* PolicyData::_internal_mutable_device_id() {
+  _has_bits_[0] |= 0x00000020u;
+  return device_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_device_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.device_id)
+  if (!_internal_has_device_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return device_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_device_id(std::string* device_id) {
+  if (device_id != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  device_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.device_id)
+}
+
+// optional .enterprise_management.PolicyData.AssociationState state = 9 [default = ACTIVE];
+inline bool PolicyData::_internal_has_state() const {
+  bool value = (_has_bits_[0] & 0x04000000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_state() const {
+  return _internal_has_state();
+}
+inline void PolicyData::clear_state() {
+  state_ = 0;
+  _has_bits_[0] &= ~0x04000000u;
+}
+inline ::enterprise_management::PolicyData_AssociationState PolicyData::_internal_state() const {
+  return static_cast< ::enterprise_management::PolicyData_AssociationState >(state_);
+}
+inline ::enterprise_management::PolicyData_AssociationState PolicyData::state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.state)
+  return _internal_state();
+}
+inline void PolicyData::_internal_set_state(::enterprise_management::PolicyData_AssociationState value) {
+  assert(::enterprise_management::PolicyData_AssociationState_IsValid(value));
+  _has_bits_[0] |= 0x04000000u;
+  state_ = value;
+}
+inline void PolicyData::set_state(::enterprise_management::PolicyData_AssociationState value) {
+  _internal_set_state(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.state)
+}
+
+// optional string settings_entity_id = 11;
+inline bool PolicyData::_internal_has_settings_entity_id() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool PolicyData::has_settings_entity_id() const {
+  return _internal_has_settings_entity_id();
+}
+inline void PolicyData::clear_settings_entity_id() {
+  settings_entity_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const std::string& PolicyData::settings_entity_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.settings_entity_id)
+  return _internal_settings_entity_id();
+}
+inline void PolicyData::set_settings_entity_id(const std::string& value) {
+  _internal_set_settings_entity_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.settings_entity_id)
+}
+inline std::string* PolicyData::mutable_settings_entity_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.settings_entity_id)
+  return _internal_mutable_settings_entity_id();
+}
+inline const std::string& PolicyData::_internal_settings_entity_id() const {
+  return settings_entity_id_.GetNoArena();
+}
+inline void PolicyData::_internal_set_settings_entity_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000040u;
+  settings_entity_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_settings_entity_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000040u;
+  settings_entity_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.settings_entity_id)
+}
+inline void PolicyData::set_settings_entity_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000040u;
+  settings_entity_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.settings_entity_id)
+}
+inline void PolicyData::set_settings_entity_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000040u;
+  settings_entity_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.settings_entity_id)
+}
+inline std::string* PolicyData::_internal_mutable_settings_entity_id() {
+  _has_bits_[0] |= 0x00000040u;
+  return settings_entity_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_settings_entity_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.settings_entity_id)
+  if (!_internal_has_settings_entity_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000040u;
+  return settings_entity_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_settings_entity_id(std::string* settings_entity_id) {
+  if (settings_entity_id != nullptr) {
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  settings_entity_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), settings_entity_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.settings_entity_id)
+}
+
+// optional string service_account_identity = 12;
+inline bool PolicyData::_internal_has_service_account_identity() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool PolicyData::has_service_account_identity() const {
+  return _internal_has_service_account_identity();
+}
+inline void PolicyData::clear_service_account_identity() {
+  service_account_identity_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const std::string& PolicyData::service_account_identity() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.service_account_identity)
+  return _internal_service_account_identity();
+}
+inline void PolicyData::set_service_account_identity(const std::string& value) {
+  _internal_set_service_account_identity(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.service_account_identity)
+}
+inline std::string* PolicyData::mutable_service_account_identity() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.service_account_identity)
+  return _internal_mutable_service_account_identity();
+}
+inline const std::string& PolicyData::_internal_service_account_identity() const {
+  return service_account_identity_.GetNoArena();
+}
+inline void PolicyData::_internal_set_service_account_identity(const std::string& value) {
+  _has_bits_[0] |= 0x00000080u;
+  service_account_identity_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_service_account_identity(std::string&& value) {
+  _has_bits_[0] |= 0x00000080u;
+  service_account_identity_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.service_account_identity)
+}
+inline void PolicyData::set_service_account_identity(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000080u;
+  service_account_identity_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.service_account_identity)
+}
+inline void PolicyData::set_service_account_identity(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000080u;
+  service_account_identity_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.service_account_identity)
+}
+inline std::string* PolicyData::_internal_mutable_service_account_identity() {
+  _has_bits_[0] |= 0x00000080u;
+  return service_account_identity_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_service_account_identity() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.service_account_identity)
+  if (!_internal_has_service_account_identity()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000080u;
+  return service_account_identity_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_service_account_identity(std::string* service_account_identity) {
+  if (service_account_identity != nullptr) {
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  service_account_identity_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), service_account_identity);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.service_account_identity)
+}
+
+// optional string policy_token = 15;
+inline bool PolicyData::_internal_has_policy_token() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool PolicyData::has_policy_token() const {
+  return _internal_has_policy_token();
+}
+inline void PolicyData::clear_policy_token() {
+  policy_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const std::string& PolicyData::policy_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.policy_token)
+  return _internal_policy_token();
+}
+inline void PolicyData::set_policy_token(const std::string& value) {
+  _internal_set_policy_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.policy_token)
+}
+inline std::string* PolicyData::mutable_policy_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.policy_token)
+  return _internal_mutable_policy_token();
+}
+inline const std::string& PolicyData::_internal_policy_token() const {
+  return policy_token_.GetNoArena();
+}
+inline void PolicyData::_internal_set_policy_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000100u;
+  policy_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_policy_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000100u;
+  policy_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.policy_token)
+}
+inline void PolicyData::set_policy_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000100u;
+  policy_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.policy_token)
+}
+inline void PolicyData::set_policy_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000100u;
+  policy_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.policy_token)
+}
+inline std::string* PolicyData::_internal_mutable_policy_token() {
+  _has_bits_[0] |= 0x00000100u;
+  return policy_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_policy_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.policy_token)
+  if (!_internal_has_policy_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000100u;
+  return policy_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_policy_token(std::string* policy_token) {
+  if (policy_token != nullptr) {
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  policy_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.policy_token)
+}
+
+// optional .enterprise_management.PolicyData.ManagementMode management_mode = 16;
+inline bool PolicyData::_internal_has_management_mode() const {
+  bool value = (_has_bits_[0] & 0x08000000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_management_mode() const {
+  return _internal_has_management_mode();
+}
+inline void PolicyData::clear_management_mode() {
+  management_mode_ = 0;
+  _has_bits_[0] &= ~0x08000000u;
+}
+inline ::enterprise_management::PolicyData_ManagementMode PolicyData::_internal_management_mode() const {
+  return static_cast< ::enterprise_management::PolicyData_ManagementMode >(management_mode_);
+}
+inline ::enterprise_management::PolicyData_ManagementMode PolicyData::management_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.management_mode)
+  return _internal_management_mode();
+}
+inline void PolicyData::_internal_set_management_mode(::enterprise_management::PolicyData_ManagementMode value) {
+  assert(::enterprise_management::PolicyData_ManagementMode_IsValid(value));
+  _has_bits_[0] |= 0x08000000u;
+  management_mode_ = value;
+}
+inline void PolicyData::set_management_mode(::enterprise_management::PolicyData_ManagementMode value) {
+  _internal_set_management_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.management_mode)
+}
+
+// optional .enterprise_management.DeviceState device_state = 17;
+inline bool PolicyData::_internal_has_device_state() const {
+  bool value = (_has_bits_[0] & 0x00200000u) != 0;
+  PROTOBUF_ASSUME(!value || device_state_ != nullptr);
+  return value;
+}
+inline bool PolicyData::has_device_state() const {
+  return _internal_has_device_state();
+}
+inline void PolicyData::clear_device_state() {
+  if (device_state_ != nullptr) device_state_->Clear();
+  _has_bits_[0] &= ~0x00200000u;
+}
+inline const ::enterprise_management::DeviceState& PolicyData::_internal_device_state() const {
+  const ::enterprise_management::DeviceState* p = device_state_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceState*>(
+      &::enterprise_management::_DeviceState_default_instance_);
+}
+inline const ::enterprise_management::DeviceState& PolicyData::device_state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.device_state)
+  return _internal_device_state();
+}
+inline ::enterprise_management::DeviceState* PolicyData::release_device_state() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.device_state)
+  _has_bits_[0] &= ~0x00200000u;
+  ::enterprise_management::DeviceState* temp = device_state_;
+  device_state_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceState* PolicyData::_internal_mutable_device_state() {
+  _has_bits_[0] |= 0x00200000u;
+  if (device_state_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceState>(GetArenaNoVirtual());
+    device_state_ = p;
+  }
+  return device_state_;
+}
+inline ::enterprise_management::DeviceState* PolicyData::mutable_device_state() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.device_state)
+  return _internal_mutable_device_state();
+}
+inline void PolicyData::set_allocated_device_state(::enterprise_management::DeviceState* device_state) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_state_;
+  }
+  if (device_state) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_state = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_state, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00200000u;
+  } else {
+    _has_bits_[0] &= ~0x00200000u;
+  }
+  device_state_ = device_state;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.device_state)
+}
+
+// optional string annotated_location = 20;
+inline bool PolicyData::_internal_has_annotated_location() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool PolicyData::has_annotated_location() const {
+  return _internal_has_annotated_location();
+}
+inline void PolicyData::clear_annotated_location() {
+  annotated_location_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline const std::string& PolicyData::annotated_location() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.annotated_location)
+  return _internal_annotated_location();
+}
+inline void PolicyData::set_annotated_location(const std::string& value) {
+  _internal_set_annotated_location(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.annotated_location)
+}
+inline std::string* PolicyData::mutable_annotated_location() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.annotated_location)
+  return _internal_mutable_annotated_location();
+}
+inline const std::string& PolicyData::_internal_annotated_location() const {
+  return annotated_location_.GetNoArena();
+}
+inline void PolicyData::_internal_set_annotated_location(const std::string& value) {
+  _has_bits_[0] |= 0x00000200u;
+  annotated_location_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_annotated_location(std::string&& value) {
+  _has_bits_[0] |= 0x00000200u;
+  annotated_location_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.annotated_location)
+}
+inline void PolicyData::set_annotated_location(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000200u;
+  annotated_location_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.annotated_location)
+}
+inline void PolicyData::set_annotated_location(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000200u;
+  annotated_location_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.annotated_location)
+}
+inline std::string* PolicyData::_internal_mutable_annotated_location() {
+  _has_bits_[0] |= 0x00000200u;
+  return annotated_location_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_annotated_location() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.annotated_location)
+  if (!_internal_has_annotated_location()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000200u;
+  return annotated_location_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_annotated_location(std::string* annotated_location) {
+  if (annotated_location != nullptr) {
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  annotated_location_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), annotated_location);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.annotated_location)
+}
+
+// optional string annotated_asset_id = 21;
+inline bool PolicyData::_internal_has_annotated_asset_id() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool PolicyData::has_annotated_asset_id() const {
+  return _internal_has_annotated_asset_id();
+}
+inline void PolicyData::clear_annotated_asset_id() {
+  annotated_asset_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline const std::string& PolicyData::annotated_asset_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.annotated_asset_id)
+  return _internal_annotated_asset_id();
+}
+inline void PolicyData::set_annotated_asset_id(const std::string& value) {
+  _internal_set_annotated_asset_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.annotated_asset_id)
+}
+inline std::string* PolicyData::mutable_annotated_asset_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.annotated_asset_id)
+  return _internal_mutable_annotated_asset_id();
+}
+inline const std::string& PolicyData::_internal_annotated_asset_id() const {
+  return annotated_asset_id_.GetNoArena();
+}
+inline void PolicyData::_internal_set_annotated_asset_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000400u;
+  annotated_asset_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_annotated_asset_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000400u;
+  annotated_asset_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.annotated_asset_id)
+}
+inline void PolicyData::set_annotated_asset_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000400u;
+  annotated_asset_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.annotated_asset_id)
+}
+inline void PolicyData::set_annotated_asset_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000400u;
+  annotated_asset_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.annotated_asset_id)
+}
+inline std::string* PolicyData::_internal_mutable_annotated_asset_id() {
+  _has_bits_[0] |= 0x00000400u;
+  return annotated_asset_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_annotated_asset_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.annotated_asset_id)
+  if (!_internal_has_annotated_asset_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000400u;
+  return annotated_asset_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_annotated_asset_id(std::string* annotated_asset_id) {
+  if (annotated_asset_id != nullptr) {
+    _has_bits_[0] |= 0x00000400u;
+  } else {
+    _has_bits_[0] &= ~0x00000400u;
+  }
+  annotated_asset_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), annotated_asset_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.annotated_asset_id)
+}
+
+// optional string directory_api_id = 22;
+inline bool PolicyData::_internal_has_directory_api_id() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool PolicyData::has_directory_api_id() const {
+  return _internal_has_directory_api_id();
+}
+inline void PolicyData::clear_directory_api_id() {
+  directory_api_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline const std::string& PolicyData::directory_api_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.directory_api_id)
+  return _internal_directory_api_id();
+}
+inline void PolicyData::set_directory_api_id(const std::string& value) {
+  _internal_set_directory_api_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.directory_api_id)
+}
+inline std::string* PolicyData::mutable_directory_api_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.directory_api_id)
+  return _internal_mutable_directory_api_id();
+}
+inline const std::string& PolicyData::_internal_directory_api_id() const {
+  return directory_api_id_.GetNoArena();
+}
+inline void PolicyData::_internal_set_directory_api_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000800u;
+  directory_api_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_directory_api_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000800u;
+  directory_api_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.directory_api_id)
+}
+inline void PolicyData::set_directory_api_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000800u;
+  directory_api_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.directory_api_id)
+}
+inline void PolicyData::set_directory_api_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000800u;
+  directory_api_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.directory_api_id)
+}
+inline std::string* PolicyData::_internal_mutable_directory_api_id() {
+  _has_bits_[0] |= 0x00000800u;
+  return directory_api_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_directory_api_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.directory_api_id)
+  if (!_internal_has_directory_api_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000800u;
+  return directory_api_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_directory_api_id(std::string* directory_api_id) {
+  if (directory_api_id != nullptr) {
+    _has_bits_[0] |= 0x00000800u;
+  } else {
+    _has_bits_[0] &= ~0x00000800u;
+  }
+  directory_api_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), directory_api_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.directory_api_id)
+}
+
+// repeated string device_affiliation_ids = 23;
+inline int PolicyData::_internal_device_affiliation_ids_size() const {
+  return device_affiliation_ids_.size();
+}
+inline int PolicyData::device_affiliation_ids_size() const {
+  return _internal_device_affiliation_ids_size();
+}
+inline void PolicyData::clear_device_affiliation_ids() {
+  device_affiliation_ids_.Clear();
+}
+inline std::string* PolicyData::add_device_affiliation_ids() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.PolicyData.device_affiliation_ids)
+  return _internal_add_device_affiliation_ids();
+}
+inline const std::string& PolicyData::_internal_device_affiliation_ids(int index) const {
+  return device_affiliation_ids_.Get(index);
+}
+inline const std::string& PolicyData::device_affiliation_ids(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.device_affiliation_ids)
+  return _internal_device_affiliation_ids(index);
+}
+inline std::string* PolicyData::mutable_device_affiliation_ids(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.device_affiliation_ids)
+  return device_affiliation_ids_.Mutable(index);
+}
+inline void PolicyData::set_device_affiliation_ids(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.device_affiliation_ids)
+  device_affiliation_ids_.Mutable(index)->assign(value);
+}
+inline void PolicyData::set_device_affiliation_ids(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.device_affiliation_ids)
+  device_affiliation_ids_.Mutable(index)->assign(std::move(value));
+}
+inline void PolicyData::set_device_affiliation_ids(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  device_affiliation_ids_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.device_affiliation_ids)
+}
+inline void PolicyData::set_device_affiliation_ids(int index, const char* value, size_t size) {
+  device_affiliation_ids_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.device_affiliation_ids)
+}
+inline std::string* PolicyData::_internal_add_device_affiliation_ids() {
+  return device_affiliation_ids_.Add();
+}
+inline void PolicyData::add_device_affiliation_ids(const std::string& value) {
+  device_affiliation_ids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.PolicyData.device_affiliation_ids)
+}
+inline void PolicyData::add_device_affiliation_ids(std::string&& value) {
+  device_affiliation_ids_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.PolicyData.device_affiliation_ids)
+}
+inline void PolicyData::add_device_affiliation_ids(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  device_affiliation_ids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.PolicyData.device_affiliation_ids)
+}
+inline void PolicyData::add_device_affiliation_ids(const char* value, size_t size) {
+  device_affiliation_ids_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.PolicyData.device_affiliation_ids)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+PolicyData::device_affiliation_ids() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.PolicyData.device_affiliation_ids)
+  return device_affiliation_ids_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+PolicyData::mutable_device_affiliation_ids() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.PolicyData.device_affiliation_ids)
+  return &device_affiliation_ids_;
+}
+
+// repeated string user_affiliation_ids = 24;
+inline int PolicyData::_internal_user_affiliation_ids_size() const {
+  return user_affiliation_ids_.size();
+}
+inline int PolicyData::user_affiliation_ids_size() const {
+  return _internal_user_affiliation_ids_size();
+}
+inline void PolicyData::clear_user_affiliation_ids() {
+  user_affiliation_ids_.Clear();
+}
+inline std::string* PolicyData::add_user_affiliation_ids() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.PolicyData.user_affiliation_ids)
+  return _internal_add_user_affiliation_ids();
+}
+inline const std::string& PolicyData::_internal_user_affiliation_ids(int index) const {
+  return user_affiliation_ids_.Get(index);
+}
+inline const std::string& PolicyData::user_affiliation_ids(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.user_affiliation_ids)
+  return _internal_user_affiliation_ids(index);
+}
+inline std::string* PolicyData::mutable_user_affiliation_ids(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.user_affiliation_ids)
+  return user_affiliation_ids_.Mutable(index);
+}
+inline void PolicyData::set_user_affiliation_ids(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.user_affiliation_ids)
+  user_affiliation_ids_.Mutable(index)->assign(value);
+}
+inline void PolicyData::set_user_affiliation_ids(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.user_affiliation_ids)
+  user_affiliation_ids_.Mutable(index)->assign(std::move(value));
+}
+inline void PolicyData::set_user_affiliation_ids(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  user_affiliation_ids_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.user_affiliation_ids)
+}
+inline void PolicyData::set_user_affiliation_ids(int index, const char* value, size_t size) {
+  user_affiliation_ids_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.user_affiliation_ids)
+}
+inline std::string* PolicyData::_internal_add_user_affiliation_ids() {
+  return user_affiliation_ids_.Add();
+}
+inline void PolicyData::add_user_affiliation_ids(const std::string& value) {
+  user_affiliation_ids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.PolicyData.user_affiliation_ids)
+}
+inline void PolicyData::add_user_affiliation_ids(std::string&& value) {
+  user_affiliation_ids_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.PolicyData.user_affiliation_ids)
+}
+inline void PolicyData::add_user_affiliation_ids(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  user_affiliation_ids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.PolicyData.user_affiliation_ids)
+}
+inline void PolicyData::add_user_affiliation_ids(const char* value, size_t size) {
+  user_affiliation_ids_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.PolicyData.user_affiliation_ids)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+PolicyData::user_affiliation_ids() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.PolicyData.user_affiliation_ids)
+  return user_affiliation_ids_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+PolicyData::mutable_user_affiliation_ids() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.PolicyData.user_affiliation_ids)
+  return &user_affiliation_ids_;
+}
+
+// optional string display_domain = 25;
+inline bool PolicyData::_internal_has_display_domain() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_display_domain() const {
+  return _internal_has_display_domain();
+}
+inline void PolicyData::clear_display_domain() {
+  display_domain_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline const std::string& PolicyData::display_domain() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.display_domain)
+  return _internal_display_domain();
+}
+inline void PolicyData::set_display_domain(const std::string& value) {
+  _internal_set_display_domain(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.display_domain)
+}
+inline std::string* PolicyData::mutable_display_domain() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.display_domain)
+  return _internal_mutable_display_domain();
+}
+inline const std::string& PolicyData::_internal_display_domain() const {
+  return display_domain_.GetNoArena();
+}
+inline void PolicyData::_internal_set_display_domain(const std::string& value) {
+  _has_bits_[0] |= 0x00001000u;
+  display_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_display_domain(std::string&& value) {
+  _has_bits_[0] |= 0x00001000u;
+  display_domain_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.display_domain)
+}
+inline void PolicyData::set_display_domain(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00001000u;
+  display_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.display_domain)
+}
+inline void PolicyData::set_display_domain(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00001000u;
+  display_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.display_domain)
+}
+inline std::string* PolicyData::_internal_mutable_display_domain() {
+  _has_bits_[0] |= 0x00001000u;
+  return display_domain_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_display_domain() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.display_domain)
+  if (!_internal_has_display_domain()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00001000u;
+  return display_domain_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_display_domain(std::string* display_domain) {
+  if (display_domain != nullptr) {
+    _has_bits_[0] |= 0x00001000u;
+  } else {
+    _has_bits_[0] &= ~0x00001000u;
+  }
+  display_domain_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), display_domain);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.display_domain)
+}
+
+// optional string policy_invalidation_topic = 26;
+inline bool PolicyData::_internal_has_policy_invalidation_topic() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_policy_invalidation_topic() const {
+  return _internal_has_policy_invalidation_topic();
+}
+inline void PolicyData::clear_policy_invalidation_topic() {
+  policy_invalidation_topic_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline const std::string& PolicyData::policy_invalidation_topic() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.policy_invalidation_topic)
+  return _internal_policy_invalidation_topic();
+}
+inline void PolicyData::set_policy_invalidation_topic(const std::string& value) {
+  _internal_set_policy_invalidation_topic(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.policy_invalidation_topic)
+}
+inline std::string* PolicyData::mutable_policy_invalidation_topic() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.policy_invalidation_topic)
+  return _internal_mutable_policy_invalidation_topic();
+}
+inline const std::string& PolicyData::_internal_policy_invalidation_topic() const {
+  return policy_invalidation_topic_.GetNoArena();
+}
+inline void PolicyData::_internal_set_policy_invalidation_topic(const std::string& value) {
+  _has_bits_[0] |= 0x00002000u;
+  policy_invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_policy_invalidation_topic(std::string&& value) {
+  _has_bits_[0] |= 0x00002000u;
+  policy_invalidation_topic_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.policy_invalidation_topic)
+}
+inline void PolicyData::set_policy_invalidation_topic(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00002000u;
+  policy_invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.policy_invalidation_topic)
+}
+inline void PolicyData::set_policy_invalidation_topic(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00002000u;
+  policy_invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.policy_invalidation_topic)
+}
+inline std::string* PolicyData::_internal_mutable_policy_invalidation_topic() {
+  _has_bits_[0] |= 0x00002000u;
+  return policy_invalidation_topic_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_policy_invalidation_topic() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.policy_invalidation_topic)
+  if (!_internal_has_policy_invalidation_topic()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00002000u;
+  return policy_invalidation_topic_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_policy_invalidation_topic(std::string* policy_invalidation_topic) {
+  if (policy_invalidation_topic != nullptr) {
+    _has_bits_[0] |= 0x00002000u;
+  } else {
+    _has_bits_[0] &= ~0x00002000u;
+  }
+  policy_invalidation_topic_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_invalidation_topic);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.policy_invalidation_topic)
+}
+
+// optional string command_invalidation_topic = 27;
+inline bool PolicyData::_internal_has_command_invalidation_topic() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_command_invalidation_topic() const {
+  return _internal_has_command_invalidation_topic();
+}
+inline void PolicyData::clear_command_invalidation_topic() {
+  command_invalidation_topic_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline const std::string& PolicyData::command_invalidation_topic() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.command_invalidation_topic)
+  return _internal_command_invalidation_topic();
+}
+inline void PolicyData::set_command_invalidation_topic(const std::string& value) {
+  _internal_set_command_invalidation_topic(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.command_invalidation_topic)
+}
+inline std::string* PolicyData::mutable_command_invalidation_topic() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.command_invalidation_topic)
+  return _internal_mutable_command_invalidation_topic();
+}
+inline const std::string& PolicyData::_internal_command_invalidation_topic() const {
+  return command_invalidation_topic_.GetNoArena();
+}
+inline void PolicyData::_internal_set_command_invalidation_topic(const std::string& value) {
+  _has_bits_[0] |= 0x00004000u;
+  command_invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_command_invalidation_topic(std::string&& value) {
+  _has_bits_[0] |= 0x00004000u;
+  command_invalidation_topic_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.command_invalidation_topic)
+}
+inline void PolicyData::set_command_invalidation_topic(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00004000u;
+  command_invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.command_invalidation_topic)
+}
+inline void PolicyData::set_command_invalidation_topic(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00004000u;
+  command_invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.command_invalidation_topic)
+}
+inline std::string* PolicyData::_internal_mutable_command_invalidation_topic() {
+  _has_bits_[0] |= 0x00004000u;
+  return command_invalidation_topic_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_command_invalidation_topic() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.command_invalidation_topic)
+  if (!_internal_has_command_invalidation_topic()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00004000u;
+  return command_invalidation_topic_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_command_invalidation_topic(std::string* command_invalidation_topic) {
+  if (command_invalidation_topic != nullptr) {
+    _has_bits_[0] |= 0x00004000u;
+  } else {
+    _has_bits_[0] &= ~0x00004000u;
+  }
+  command_invalidation_topic_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), command_invalidation_topic);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.command_invalidation_topic)
+}
+
+// optional bool enrollment_id_needed = 28;
+inline bool PolicyData::_internal_has_enrollment_id_needed() const {
+  bool value = (_has_bits_[0] & 0x10000000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_enrollment_id_needed() const {
+  return _internal_has_enrollment_id_needed();
+}
+inline void PolicyData::clear_enrollment_id_needed() {
+  enrollment_id_needed_ = false;
+  _has_bits_[0] &= ~0x10000000u;
+}
+inline bool PolicyData::_internal_enrollment_id_needed() const {
+  return enrollment_id_needed_;
+}
+inline bool PolicyData::enrollment_id_needed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.enrollment_id_needed)
+  return _internal_enrollment_id_needed();
+}
+inline void PolicyData::_internal_set_enrollment_id_needed(bool value) {
+  _has_bits_[0] |= 0x10000000u;
+  enrollment_id_needed_ = value;
+}
+inline void PolicyData::set_enrollment_id_needed(bool value) {
+  _internal_set_enrollment_id_needed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.enrollment_id_needed)
+}
+
+// optional string gaia_id = 29;
+inline bool PolicyData::_internal_has_gaia_id() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_gaia_id() const {
+  return _internal_has_gaia_id();
+}
+inline void PolicyData::clear_gaia_id() {
+  gaia_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline const std::string& PolicyData::gaia_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.gaia_id)
+  return _internal_gaia_id();
+}
+inline void PolicyData::set_gaia_id(const std::string& value) {
+  _internal_set_gaia_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.gaia_id)
+}
+inline std::string* PolicyData::mutable_gaia_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.gaia_id)
+  return _internal_mutable_gaia_id();
+}
+inline const std::string& PolicyData::_internal_gaia_id() const {
+  return gaia_id_.GetNoArena();
+}
+inline void PolicyData::_internal_set_gaia_id(const std::string& value) {
+  _has_bits_[0] |= 0x00008000u;
+  gaia_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_gaia_id(std::string&& value) {
+  _has_bits_[0] |= 0x00008000u;
+  gaia_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.gaia_id)
+}
+inline void PolicyData::set_gaia_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00008000u;
+  gaia_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.gaia_id)
+}
+inline void PolicyData::set_gaia_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00008000u;
+  gaia_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.gaia_id)
+}
+inline std::string* PolicyData::_internal_mutable_gaia_id() {
+  _has_bits_[0] |= 0x00008000u;
+  return gaia_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_gaia_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.gaia_id)
+  if (!_internal_has_gaia_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00008000u;
+  return gaia_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_gaia_id(std::string* gaia_id) {
+  if (gaia_id != nullptr) {
+    _has_bits_[0] |= 0x00008000u;
+  } else {
+    _has_bits_[0] &= ~0x00008000u;
+  }
+  gaia_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), gaia_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.gaia_id)
+}
+
+// optional .enterprise_management.PolicyData.MarketSegment market_segment = 30;
+inline bool PolicyData::_internal_has_market_segment() const {
+  bool value = (_has_bits_[0] & 0x20000000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_market_segment() const {
+  return _internal_has_market_segment();
+}
+inline void PolicyData::clear_market_segment() {
+  market_segment_ = 0;
+  _has_bits_[0] &= ~0x20000000u;
+}
+inline ::enterprise_management::PolicyData_MarketSegment PolicyData::_internal_market_segment() const {
+  return static_cast< ::enterprise_management::PolicyData_MarketSegment >(market_segment_);
+}
+inline ::enterprise_management::PolicyData_MarketSegment PolicyData::market_segment() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.market_segment)
+  return _internal_market_segment();
+}
+inline void PolicyData::_internal_set_market_segment(::enterprise_management::PolicyData_MarketSegment value) {
+  assert(::enterprise_management::PolicyData_MarketSegment_IsValid(value));
+  _has_bits_[0] |= 0x20000000u;
+  market_segment_ = value;
+}
+inline void PolicyData::set_market_segment(::enterprise_management::PolicyData_MarketSegment value) {
+  _internal_set_market_segment(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.market_segment)
+}
+
+// optional .enterprise_management.CustomerLogo customer_logo = 31;
+inline bool PolicyData::_internal_has_customer_logo() const {
+  bool value = (_has_bits_[0] & 0x00400000u) != 0;
+  PROTOBUF_ASSUME(!value || customer_logo_ != nullptr);
+  return value;
+}
+inline bool PolicyData::has_customer_logo() const {
+  return _internal_has_customer_logo();
+}
+inline void PolicyData::clear_customer_logo() {
+  if (customer_logo_ != nullptr) customer_logo_->Clear();
+  _has_bits_[0] &= ~0x00400000u;
+}
+inline const ::enterprise_management::CustomerLogo& PolicyData::_internal_customer_logo() const {
+  const ::enterprise_management::CustomerLogo* p = customer_logo_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CustomerLogo*>(
+      &::enterprise_management::_CustomerLogo_default_instance_);
+}
+inline const ::enterprise_management::CustomerLogo& PolicyData::customer_logo() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.customer_logo)
+  return _internal_customer_logo();
+}
+inline ::enterprise_management::CustomerLogo* PolicyData::release_customer_logo() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.customer_logo)
+  _has_bits_[0] &= ~0x00400000u;
+  ::enterprise_management::CustomerLogo* temp = customer_logo_;
+  customer_logo_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CustomerLogo* PolicyData::_internal_mutable_customer_logo() {
+  _has_bits_[0] |= 0x00400000u;
+  if (customer_logo_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CustomerLogo>(GetArenaNoVirtual());
+    customer_logo_ = p;
+  }
+  return customer_logo_;
+}
+inline ::enterprise_management::CustomerLogo* PolicyData::mutable_customer_logo() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.customer_logo)
+  return _internal_mutable_customer_logo();
+}
+inline void PolicyData::set_allocated_customer_logo(::enterprise_management::CustomerLogo* customer_logo) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete customer_logo_;
+  }
+  if (customer_logo) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      customer_logo = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, customer_logo, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00400000u;
+  } else {
+    _has_bits_[0] &= ~0x00400000u;
+  }
+  customer_logo_ = customer_logo;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.customer_logo)
+}
+
+// optional string change_password_uri = 32;
+inline bool PolicyData::_internal_has_change_password_uri() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_change_password_uri() const {
+  return _internal_has_change_password_uri();
+}
+inline void PolicyData::clear_change_password_uri() {
+  change_password_uri_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline const std::string& PolicyData::change_password_uri() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.change_password_uri)
+  return _internal_change_password_uri();
+}
+inline void PolicyData::set_change_password_uri(const std::string& value) {
+  _internal_set_change_password_uri(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.change_password_uri)
+}
+inline std::string* PolicyData::mutable_change_password_uri() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.change_password_uri)
+  return _internal_mutable_change_password_uri();
+}
+inline const std::string& PolicyData::_internal_change_password_uri() const {
+  return change_password_uri_.GetNoArena();
+}
+inline void PolicyData::_internal_set_change_password_uri(const std::string& value) {
+  _has_bits_[0] |= 0x00010000u;
+  change_password_uri_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_change_password_uri(std::string&& value) {
+  _has_bits_[0] |= 0x00010000u;
+  change_password_uri_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.change_password_uri)
+}
+inline void PolicyData::set_change_password_uri(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00010000u;
+  change_password_uri_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.change_password_uri)
+}
+inline void PolicyData::set_change_password_uri(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00010000u;
+  change_password_uri_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.change_password_uri)
+}
+inline std::string* PolicyData::_internal_mutable_change_password_uri() {
+  _has_bits_[0] |= 0x00010000u;
+  return change_password_uri_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_change_password_uri() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.change_password_uri)
+  if (!_internal_has_change_password_uri()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00010000u;
+  return change_password_uri_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_change_password_uri(std::string* change_password_uri) {
+  if (change_password_uri != nullptr) {
+    _has_bits_[0] |= 0x00010000u;
+  } else {
+    _has_bits_[0] &= ~0x00010000u;
+  }
+  change_password_uri_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), change_password_uri);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.change_password_uri)
+}
+
+// optional .enterprise_management.ClientActionRequired client_action_required = 33;
+inline bool PolicyData::_internal_has_client_action_required() const {
+  bool value = (_has_bits_[0] & 0x00800000u) != 0;
+  PROTOBUF_ASSUME(!value || client_action_required_ != nullptr);
+  return value;
+}
+inline bool PolicyData::has_client_action_required() const {
+  return _internal_has_client_action_required();
+}
+inline void PolicyData::clear_client_action_required() {
+  if (client_action_required_ != nullptr) client_action_required_->Clear();
+  _has_bits_[0] &= ~0x00800000u;
+}
+inline const ::enterprise_management::ClientActionRequired& PolicyData::_internal_client_action_required() const {
+  const ::enterprise_management::ClientActionRequired* p = client_action_required_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ClientActionRequired*>(
+      &::enterprise_management::_ClientActionRequired_default_instance_);
+}
+inline const ::enterprise_management::ClientActionRequired& PolicyData::client_action_required() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.client_action_required)
+  return _internal_client_action_required();
+}
+inline ::enterprise_management::ClientActionRequired* PolicyData::release_client_action_required() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.client_action_required)
+  _has_bits_[0] &= ~0x00800000u;
+  ::enterprise_management::ClientActionRequired* temp = client_action_required_;
+  client_action_required_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ClientActionRequired* PolicyData::_internal_mutable_client_action_required() {
+  _has_bits_[0] |= 0x00800000u;
+  if (client_action_required_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ClientActionRequired>(GetArenaNoVirtual());
+    client_action_required_ = p;
+  }
+  return client_action_required_;
+}
+inline ::enterprise_management::ClientActionRequired* PolicyData::mutable_client_action_required() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.client_action_required)
+  return _internal_mutable_client_action_required();
+}
+inline void PolicyData::set_allocated_client_action_required(::enterprise_management::ClientActionRequired* client_action_required) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete client_action_required_;
+  }
+  if (client_action_required) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      client_action_required = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, client_action_required, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00800000u;
+  } else {
+    _has_bits_[0] &= ~0x00800000u;
+  }
+  client_action_required_ = client_action_required;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.client_action_required)
+}
+
+// optional string obfuscated_customer_id = 34;
+inline bool PolicyData::_internal_has_obfuscated_customer_id() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_obfuscated_customer_id() const {
+  return _internal_has_obfuscated_customer_id();
+}
+inline void PolicyData::clear_obfuscated_customer_id() {
+  obfuscated_customer_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline const std::string& PolicyData::obfuscated_customer_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.obfuscated_customer_id)
+  return _internal_obfuscated_customer_id();
+}
+inline void PolicyData::set_obfuscated_customer_id(const std::string& value) {
+  _internal_set_obfuscated_customer_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.obfuscated_customer_id)
+}
+inline std::string* PolicyData::mutable_obfuscated_customer_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.obfuscated_customer_id)
+  return _internal_mutable_obfuscated_customer_id();
+}
+inline const std::string& PolicyData::_internal_obfuscated_customer_id() const {
+  return obfuscated_customer_id_.GetNoArena();
+}
+inline void PolicyData::_internal_set_obfuscated_customer_id(const std::string& value) {
+  _has_bits_[0] |= 0x00020000u;
+  obfuscated_customer_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_obfuscated_customer_id(std::string&& value) {
+  _has_bits_[0] |= 0x00020000u;
+  obfuscated_customer_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.obfuscated_customer_id)
+}
+inline void PolicyData::set_obfuscated_customer_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00020000u;
+  obfuscated_customer_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.obfuscated_customer_id)
+}
+inline void PolicyData::set_obfuscated_customer_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00020000u;
+  obfuscated_customer_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.obfuscated_customer_id)
+}
+inline std::string* PolicyData::_internal_mutable_obfuscated_customer_id() {
+  _has_bits_[0] |= 0x00020000u;
+  return obfuscated_customer_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_obfuscated_customer_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.obfuscated_customer_id)
+  if (!_internal_has_obfuscated_customer_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00020000u;
+  return obfuscated_customer_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_obfuscated_customer_id(std::string* obfuscated_customer_id) {
+  if (obfuscated_customer_id != nullptr) {
+    _has_bits_[0] |= 0x00020000u;
+  } else {
+    _has_bits_[0] &= ~0x00020000u;
+  }
+  obfuscated_customer_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obfuscated_customer_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.obfuscated_customer_id)
+}
+
+// optional .enterprise_management.PolicyData.MetricsLogSegment metrics_log_segment = 35;
+inline bool PolicyData::_internal_has_metrics_log_segment() const {
+  bool value = (_has_bits_[0] & 0x40000000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_metrics_log_segment() const {
+  return _internal_has_metrics_log_segment();
+}
+inline void PolicyData::clear_metrics_log_segment() {
+  metrics_log_segment_ = 0;
+  _has_bits_[0] &= ~0x40000000u;
+}
+inline ::enterprise_management::PolicyData_MetricsLogSegment PolicyData::_internal_metrics_log_segment() const {
+  return static_cast< ::enterprise_management::PolicyData_MetricsLogSegment >(metrics_log_segment_);
+}
+inline ::enterprise_management::PolicyData_MetricsLogSegment PolicyData::metrics_log_segment() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.metrics_log_segment)
+  return _internal_metrics_log_segment();
+}
+inline void PolicyData::_internal_set_metrics_log_segment(::enterprise_management::PolicyData_MetricsLogSegment value) {
+  assert(::enterprise_management::PolicyData_MetricsLogSegment_IsValid(value));
+  _has_bits_[0] |= 0x40000000u;
+  metrics_log_segment_ = value;
+}
+inline void PolicyData::set_metrics_log_segment(::enterprise_management::PolicyData_MetricsLogSegment value) {
+  _internal_set_metrics_log_segment(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.metrics_log_segment)
+}
+
+// optional string managed_by = 36;
+inline bool PolicyData::_internal_has_managed_by() const {
+  bool value = (_has_bits_[0] & 0x00040000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_managed_by() const {
+  return _internal_has_managed_by();
+}
+inline void PolicyData::clear_managed_by() {
+  managed_by_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00040000u;
+}
+inline const std::string& PolicyData::managed_by() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.managed_by)
+  return _internal_managed_by();
+}
+inline void PolicyData::set_managed_by(const std::string& value) {
+  _internal_set_managed_by(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.managed_by)
+}
+inline std::string* PolicyData::mutable_managed_by() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.managed_by)
+  return _internal_mutable_managed_by();
+}
+inline const std::string& PolicyData::_internal_managed_by() const {
+  return managed_by_.GetNoArena();
+}
+inline void PolicyData::_internal_set_managed_by(const std::string& value) {
+  _has_bits_[0] |= 0x00040000u;
+  managed_by_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_managed_by(std::string&& value) {
+  _has_bits_[0] |= 0x00040000u;
+  managed_by_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.managed_by)
+}
+inline void PolicyData::set_managed_by(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00040000u;
+  managed_by_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.managed_by)
+}
+inline void PolicyData::set_managed_by(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00040000u;
+  managed_by_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.managed_by)
+}
+inline std::string* PolicyData::_internal_mutable_managed_by() {
+  _has_bits_[0] |= 0x00040000u;
+  return managed_by_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_managed_by() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.managed_by)
+  if (!_internal_has_managed_by()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00040000u;
+  return managed_by_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_managed_by(std::string* managed_by) {
+  if (managed_by != nullptr) {
+    _has_bits_[0] |= 0x00040000u;
+  } else {
+    _has_bits_[0] &= ~0x00040000u;
+  }
+  managed_by_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), managed_by);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.managed_by)
+}
+
+// optional string sso_profile = 37;
+inline bool PolicyData::_internal_has_sso_profile() const {
+  bool value = (_has_bits_[0] & 0x00080000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_sso_profile() const {
+  return _internal_has_sso_profile();
+}
+inline void PolicyData::clear_sso_profile() {
+  sso_profile_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00080000u;
+}
+inline const std::string& PolicyData::sso_profile() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.sso_profile)
+  return _internal_sso_profile();
+}
+inline void PolicyData::set_sso_profile(const std::string& value) {
+  _internal_set_sso_profile(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.sso_profile)
+}
+inline std::string* PolicyData::mutable_sso_profile() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.sso_profile)
+  return _internal_mutable_sso_profile();
+}
+inline const std::string& PolicyData::_internal_sso_profile() const {
+  return sso_profile_.GetNoArena();
+}
+inline void PolicyData::_internal_set_sso_profile(const std::string& value) {
+  _has_bits_[0] |= 0x00080000u;
+  sso_profile_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_sso_profile(std::string&& value) {
+  _has_bits_[0] |= 0x00080000u;
+  sso_profile_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.sso_profile)
+}
+inline void PolicyData::set_sso_profile(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00080000u;
+  sso_profile_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.sso_profile)
+}
+inline void PolicyData::set_sso_profile(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00080000u;
+  sso_profile_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.sso_profile)
+}
+inline std::string* PolicyData::_internal_mutable_sso_profile() {
+  _has_bits_[0] |= 0x00080000u;
+  return sso_profile_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_sso_profile() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.sso_profile)
+  if (!_internal_has_sso_profile()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00080000u;
+  return sso_profile_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_sso_profile(std::string* sso_profile) {
+  if (sso_profile != nullptr) {
+    _has_bits_[0] |= 0x00080000u;
+  } else {
+    _has_bits_[0] &= ~0x00080000u;
+  }
+  sso_profile_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), sso_profile);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.sso_profile)
+}
+
+// optional string license_sku = 38;
+inline bool PolicyData::_internal_has_license_sku() const {
+  bool value = (_has_bits_[0] & 0x00100000u) != 0;
+  return value;
+}
+inline bool PolicyData::has_license_sku() const {
+  return _internal_has_license_sku();
+}
+inline void PolicyData::clear_license_sku() {
+  license_sku_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00100000u;
+}
+inline const std::string& PolicyData::license_sku() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyData.license_sku)
+  return _internal_license_sku();
+}
+inline void PolicyData::set_license_sku(const std::string& value) {
+  _internal_set_license_sku(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyData.license_sku)
+}
+inline std::string* PolicyData::mutable_license_sku() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyData.license_sku)
+  return _internal_mutable_license_sku();
+}
+inline const std::string& PolicyData::_internal_license_sku() const {
+  return license_sku_.GetNoArena();
+}
+inline void PolicyData::_internal_set_license_sku(const std::string& value) {
+  _has_bits_[0] |= 0x00100000u;
+  license_sku_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyData::set_license_sku(std::string&& value) {
+  _has_bits_[0] |= 0x00100000u;
+  license_sku_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyData.license_sku)
+}
+inline void PolicyData::set_license_sku(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00100000u;
+  license_sku_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyData.license_sku)
+}
+inline void PolicyData::set_license_sku(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00100000u;
+  license_sku_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyData.license_sku)
+}
+inline std::string* PolicyData::_internal_mutable_license_sku() {
+  _has_bits_[0] |= 0x00100000u;
+  return license_sku_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyData::release_license_sku() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyData.license_sku)
+  if (!_internal_has_license_sku()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00100000u;
+  return license_sku_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyData::set_allocated_license_sku(std::string* license_sku) {
+  if (license_sku != nullptr) {
+    _has_bits_[0] |= 0x00100000u;
+  } else {
+    _has_bits_[0] &= ~0x00100000u;
+  }
+  license_sku_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), license_sku);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyData.license_sku)
+}
+
+// -------------------------------------------------------------------
+
+// ClientActionRequired
+
+// optional bool enrollment_certificate_needed = 1;
+inline bool ClientActionRequired::_internal_has_enrollment_certificate_needed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ClientActionRequired::has_enrollment_certificate_needed() const {
+  return _internal_has_enrollment_certificate_needed();
+}
+inline void ClientActionRequired::clear_enrollment_certificate_needed() {
+  enrollment_certificate_needed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool ClientActionRequired::_internal_enrollment_certificate_needed() const {
+  return enrollment_certificate_needed_;
+}
+inline bool ClientActionRequired::enrollment_certificate_needed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientActionRequired.enrollment_certificate_needed)
+  return _internal_enrollment_certificate_needed();
+}
+inline void ClientActionRequired::_internal_set_enrollment_certificate_needed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  enrollment_certificate_needed_ = value;
+}
+inline void ClientActionRequired::set_enrollment_certificate_needed(bool value) {
+  _internal_set_enrollment_certificate_needed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ClientActionRequired.enrollment_certificate_needed)
+}
+
+// -------------------------------------------------------------------
+
+// PolicyFetchResponse
+
+// optional int32 error_code = 1;
+inline bool PolicyFetchResponse::_internal_has_error_code() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_error_code() const {
+  return _internal_has_error_code();
+}
+inline void PolicyFetchResponse::clear_error_code() {
+  error_code_ = 0;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PolicyFetchResponse::_internal_error_code() const {
+  return error_code_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PolicyFetchResponse::error_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.error_code)
+  return _internal_error_code();
+}
+inline void PolicyFetchResponse::_internal_set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000200u;
+  error_code_ = value;
+}
+inline void PolicyFetchResponse::set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_error_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.error_code)
+}
+
+// optional string error_message = 2;
+inline bool PolicyFetchResponse::_internal_has_error_message() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_error_message() const {
+  return _internal_has_error_message();
+}
+inline void PolicyFetchResponse::clear_error_message() {
+  error_message_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PolicyFetchResponse::error_message() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.error_message)
+  return _internal_error_message();
+}
+inline void PolicyFetchResponse::set_error_message(const std::string& value) {
+  _internal_set_error_message(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.error_message)
+}
+inline std::string* PolicyFetchResponse::mutable_error_message() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.error_message)
+  return _internal_mutable_error_message();
+}
+inline const std::string& PolicyFetchResponse::_internal_error_message() const {
+  return error_message_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_error_message(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_error_message(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.error_message)
+}
+inline void PolicyFetchResponse::set_error_message(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.error_message)
+}
+inline void PolicyFetchResponse::set_error_message(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.error_message)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_error_message() {
+  _has_bits_[0] |= 0x00000001u;
+  return error_message_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_error_message() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.error_message)
+  if (!_internal_has_error_message()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return error_message_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_error_message(std::string* error_message) {
+  if (error_message != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  error_message_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), error_message);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.error_message)
+}
+
+// optional bytes policy_data = 3;
+inline bool PolicyFetchResponse::_internal_has_policy_data() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_policy_data() const {
+  return _internal_has_policy_data();
+}
+inline void PolicyFetchResponse::clear_policy_data() {
+  policy_data_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& PolicyFetchResponse::policy_data() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.policy_data)
+  return _internal_policy_data();
+}
+inline void PolicyFetchResponse::set_policy_data(const std::string& value) {
+  _internal_set_policy_data(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.policy_data)
+}
+inline std::string* PolicyFetchResponse::mutable_policy_data() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.policy_data)
+  return _internal_mutable_policy_data();
+}
+inline const std::string& PolicyFetchResponse::_internal_policy_data() const {
+  return policy_data_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_policy_data(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  policy_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_policy_data(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  policy_data_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.policy_data)
+}
+inline void PolicyFetchResponse::set_policy_data(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  policy_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.policy_data)
+}
+inline void PolicyFetchResponse::set_policy_data(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  policy_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.policy_data)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_policy_data() {
+  _has_bits_[0] |= 0x00000002u;
+  return policy_data_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_policy_data() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.policy_data)
+  if (!_internal_has_policy_data()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return policy_data_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_policy_data(std::string* policy_data) {
+  if (policy_data != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  policy_data_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_data);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.policy_data)
+}
+
+// optional bytes policy_data_signature = 4;
+inline bool PolicyFetchResponse::_internal_has_policy_data_signature() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_policy_data_signature() const {
+  return _internal_has_policy_data_signature();
+}
+inline void PolicyFetchResponse::clear_policy_data_signature() {
+  policy_data_signature_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& PolicyFetchResponse::policy_data_signature() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.policy_data_signature)
+  return _internal_policy_data_signature();
+}
+inline void PolicyFetchResponse::set_policy_data_signature(const std::string& value) {
+  _internal_set_policy_data_signature(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.policy_data_signature)
+}
+inline std::string* PolicyFetchResponse::mutable_policy_data_signature() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.policy_data_signature)
+  return _internal_mutable_policy_data_signature();
+}
+inline const std::string& PolicyFetchResponse::_internal_policy_data_signature() const {
+  return policy_data_signature_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_policy_data_signature(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  policy_data_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_policy_data_signature(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  policy_data_signature_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.policy_data_signature)
+}
+inline void PolicyFetchResponse::set_policy_data_signature(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  policy_data_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.policy_data_signature)
+}
+inline void PolicyFetchResponse::set_policy_data_signature(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  policy_data_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.policy_data_signature)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_policy_data_signature() {
+  _has_bits_[0] |= 0x00000004u;
+  return policy_data_signature_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_policy_data_signature() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.policy_data_signature)
+  if (!_internal_has_policy_data_signature()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return policy_data_signature_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_policy_data_signature(std::string* policy_data_signature) {
+  if (policy_data_signature != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  policy_data_signature_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_data_signature);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.policy_data_signature)
+}
+
+// optional bytes new_public_key = 5;
+inline bool PolicyFetchResponse::_internal_has_new_public_key() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_new_public_key() const {
+  return _internal_has_new_public_key();
+}
+inline void PolicyFetchResponse::clear_new_public_key() {
+  new_public_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& PolicyFetchResponse::new_public_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.new_public_key)
+  return _internal_new_public_key();
+}
+inline void PolicyFetchResponse::set_new_public_key(const std::string& value) {
+  _internal_set_new_public_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.new_public_key)
+}
+inline std::string* PolicyFetchResponse::mutable_new_public_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.new_public_key)
+  return _internal_mutable_new_public_key();
+}
+inline const std::string& PolicyFetchResponse::_internal_new_public_key() const {
+  return new_public_key_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_new_public_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_new_public_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  new_public_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.new_public_key)
+}
+inline void PolicyFetchResponse::set_new_public_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.new_public_key)
+}
+inline void PolicyFetchResponse::set_new_public_key(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.new_public_key)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_new_public_key() {
+  _has_bits_[0] |= 0x00000008u;
+  return new_public_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_new_public_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.new_public_key)
+  if (!_internal_has_new_public_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return new_public_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_new_public_key(std::string* new_public_key) {
+  if (new_public_key != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  new_public_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_public_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.new_public_key)
+}
+
+// optional bytes new_public_key_signature = 6;
+inline bool PolicyFetchResponse::_internal_has_new_public_key_signature() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_new_public_key_signature() const {
+  return _internal_has_new_public_key_signature();
+}
+inline void PolicyFetchResponse::clear_new_public_key_signature() {
+  new_public_key_signature_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& PolicyFetchResponse::new_public_key_signature() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.new_public_key_signature)
+  return _internal_new_public_key_signature();
+}
+inline void PolicyFetchResponse::set_new_public_key_signature(const std::string& value) {
+  _internal_set_new_public_key_signature(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.new_public_key_signature)
+}
+inline std::string* PolicyFetchResponse::mutable_new_public_key_signature() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.new_public_key_signature)
+  return _internal_mutable_new_public_key_signature();
+}
+inline const std::string& PolicyFetchResponse::_internal_new_public_key_signature() const {
+  return new_public_key_signature_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_new_public_key_signature(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  new_public_key_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_new_public_key_signature(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  new_public_key_signature_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.new_public_key_signature)
+}
+inline void PolicyFetchResponse::set_new_public_key_signature(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  new_public_key_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.new_public_key_signature)
+}
+inline void PolicyFetchResponse::set_new_public_key_signature(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  new_public_key_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.new_public_key_signature)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_new_public_key_signature() {
+  _has_bits_[0] |= 0x00000010u;
+  return new_public_key_signature_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_new_public_key_signature() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.new_public_key_signature)
+  if (!_internal_has_new_public_key_signature()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return new_public_key_signature_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_new_public_key_signature(std::string* new_public_key_signature) {
+  if (new_public_key_signature != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  new_public_key_signature_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_public_key_signature);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.new_public_key_signature)
+}
+
+// optional bytes new_public_key_verification_signature_deprecated = 7 [deprecated = true];
+inline bool PolicyFetchResponse::_internal_has_new_public_key_verification_signature_deprecated() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_new_public_key_verification_signature_deprecated() const {
+  return _internal_has_new_public_key_verification_signature_deprecated();
+}
+inline void PolicyFetchResponse::clear_new_public_key_verification_signature_deprecated() {
+  new_public_key_verification_signature_deprecated_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& PolicyFetchResponse::new_public_key_verification_signature_deprecated() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.new_public_key_verification_signature_deprecated)
+  return _internal_new_public_key_verification_signature_deprecated();
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_signature_deprecated(const std::string& value) {
+  _internal_set_new_public_key_verification_signature_deprecated(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.new_public_key_verification_signature_deprecated)
+}
+inline std::string* PolicyFetchResponse::mutable_new_public_key_verification_signature_deprecated() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.new_public_key_verification_signature_deprecated)
+  return _internal_mutable_new_public_key_verification_signature_deprecated();
+}
+inline const std::string& PolicyFetchResponse::_internal_new_public_key_verification_signature_deprecated() const {
+  return new_public_key_verification_signature_deprecated_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_new_public_key_verification_signature_deprecated(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  new_public_key_verification_signature_deprecated_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_signature_deprecated(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  new_public_key_verification_signature_deprecated_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.new_public_key_verification_signature_deprecated)
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_signature_deprecated(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  new_public_key_verification_signature_deprecated_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.new_public_key_verification_signature_deprecated)
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_signature_deprecated(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  new_public_key_verification_signature_deprecated_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.new_public_key_verification_signature_deprecated)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_new_public_key_verification_signature_deprecated() {
+  _has_bits_[0] |= 0x00000020u;
+  return new_public_key_verification_signature_deprecated_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_new_public_key_verification_signature_deprecated() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.new_public_key_verification_signature_deprecated)
+  if (!_internal_has_new_public_key_verification_signature_deprecated()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return new_public_key_verification_signature_deprecated_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_new_public_key_verification_signature_deprecated(std::string* new_public_key_verification_signature_deprecated) {
+  if (new_public_key_verification_signature_deprecated != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  new_public_key_verification_signature_deprecated_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_public_key_verification_signature_deprecated);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.new_public_key_verification_signature_deprecated)
+}
+
+// optional bytes new_public_key_verification_data = 8;
+inline bool PolicyFetchResponse::_internal_has_new_public_key_verification_data() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_new_public_key_verification_data() const {
+  return _internal_has_new_public_key_verification_data();
+}
+inline void PolicyFetchResponse::clear_new_public_key_verification_data() {
+  new_public_key_verification_data_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const std::string& PolicyFetchResponse::new_public_key_verification_data() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.new_public_key_verification_data)
+  return _internal_new_public_key_verification_data();
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_data(const std::string& value) {
+  _internal_set_new_public_key_verification_data(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.new_public_key_verification_data)
+}
+inline std::string* PolicyFetchResponse::mutable_new_public_key_verification_data() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.new_public_key_verification_data)
+  return _internal_mutable_new_public_key_verification_data();
+}
+inline const std::string& PolicyFetchResponse::_internal_new_public_key_verification_data() const {
+  return new_public_key_verification_data_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_new_public_key_verification_data(const std::string& value) {
+  _has_bits_[0] |= 0x00000040u;
+  new_public_key_verification_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_data(std::string&& value) {
+  _has_bits_[0] |= 0x00000040u;
+  new_public_key_verification_data_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.new_public_key_verification_data)
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_data(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000040u;
+  new_public_key_verification_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.new_public_key_verification_data)
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_data(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000040u;
+  new_public_key_verification_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.new_public_key_verification_data)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_new_public_key_verification_data() {
+  _has_bits_[0] |= 0x00000040u;
+  return new_public_key_verification_data_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_new_public_key_verification_data() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.new_public_key_verification_data)
+  if (!_internal_has_new_public_key_verification_data()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000040u;
+  return new_public_key_verification_data_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_new_public_key_verification_data(std::string* new_public_key_verification_data) {
+  if (new_public_key_verification_data != nullptr) {
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  new_public_key_verification_data_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_public_key_verification_data);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.new_public_key_verification_data)
+}
+
+// optional bytes new_public_key_verification_data_signature = 9;
+inline bool PolicyFetchResponse::_internal_has_new_public_key_verification_data_signature() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_new_public_key_verification_data_signature() const {
+  return _internal_has_new_public_key_verification_data_signature();
+}
+inline void PolicyFetchResponse::clear_new_public_key_verification_data_signature() {
+  new_public_key_verification_data_signature_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const std::string& PolicyFetchResponse::new_public_key_verification_data_signature() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.new_public_key_verification_data_signature)
+  return _internal_new_public_key_verification_data_signature();
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_data_signature(const std::string& value) {
+  _internal_set_new_public_key_verification_data_signature(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.new_public_key_verification_data_signature)
+}
+inline std::string* PolicyFetchResponse::mutable_new_public_key_verification_data_signature() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.new_public_key_verification_data_signature)
+  return _internal_mutable_new_public_key_verification_data_signature();
+}
+inline const std::string& PolicyFetchResponse::_internal_new_public_key_verification_data_signature() const {
+  return new_public_key_verification_data_signature_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_new_public_key_verification_data_signature(const std::string& value) {
+  _has_bits_[0] |= 0x00000080u;
+  new_public_key_verification_data_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_data_signature(std::string&& value) {
+  _has_bits_[0] |= 0x00000080u;
+  new_public_key_verification_data_signature_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.new_public_key_verification_data_signature)
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_data_signature(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000080u;
+  new_public_key_verification_data_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.new_public_key_verification_data_signature)
+}
+inline void PolicyFetchResponse::set_new_public_key_verification_data_signature(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000080u;
+  new_public_key_verification_data_signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.new_public_key_verification_data_signature)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_new_public_key_verification_data_signature() {
+  _has_bits_[0] |= 0x00000080u;
+  return new_public_key_verification_data_signature_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_new_public_key_verification_data_signature() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.new_public_key_verification_data_signature)
+  if (!_internal_has_new_public_key_verification_data_signature()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000080u;
+  return new_public_key_verification_data_signature_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_new_public_key_verification_data_signature(std::string* new_public_key_verification_data_signature) {
+  if (new_public_key_verification_data_signature != nullptr) {
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  new_public_key_verification_data_signature_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_public_key_verification_data_signature);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.new_public_key_verification_data_signature)
+}
+
+// optional string policy_type = 10 [deprecated = true];
+inline bool PolicyFetchResponse::_internal_has_policy_type() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_policy_type() const {
+  return _internal_has_policy_type();
+}
+inline void PolicyFetchResponse::clear_policy_type() {
+  policy_type_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const std::string& PolicyFetchResponse::policy_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.policy_type)
+  return _internal_policy_type();
+}
+inline void PolicyFetchResponse::set_policy_type(const std::string& value) {
+  _internal_set_policy_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.policy_type)
+}
+inline std::string* PolicyFetchResponse::mutable_policy_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchResponse.policy_type)
+  return _internal_mutable_policy_type();
+}
+inline const std::string& PolicyFetchResponse::_internal_policy_type() const {
+  return policy_type_.GetNoArena();
+}
+inline void PolicyFetchResponse::_internal_set_policy_type(const std::string& value) {
+  _has_bits_[0] |= 0x00000100u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchResponse::set_policy_type(std::string&& value) {
+  _has_bits_[0] |= 0x00000100u;
+  policy_type_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchResponse.policy_type)
+}
+inline void PolicyFetchResponse::set_policy_type(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000100u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchResponse.policy_type)
+}
+inline void PolicyFetchResponse::set_policy_type(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000100u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchResponse.policy_type)
+}
+inline std::string* PolicyFetchResponse::_internal_mutable_policy_type() {
+  _has_bits_[0] |= 0x00000100u;
+  return policy_type_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchResponse::release_policy_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchResponse.policy_type)
+  if (!_internal_has_policy_type()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000100u;
+  return policy_type_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchResponse::set_allocated_policy_type(std::string* policy_type) {
+  if (policy_type != nullptr) {
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  policy_type_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_type);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchResponse.policy_type)
+}
+
+// optional .enterprise_management.PolicyFetchRequest.SignatureType policy_data_signature_type = 11;
+inline bool PolicyFetchResponse::_internal_has_policy_data_signature_type() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool PolicyFetchResponse::has_policy_data_signature_type() const {
+  return _internal_has_policy_data_signature_type();
+}
+inline void PolicyFetchResponse::clear_policy_data_signature_type() {
+  policy_data_signature_type_ = 0;
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline ::enterprise_management::PolicyFetchRequest_SignatureType PolicyFetchResponse::_internal_policy_data_signature_type() const {
+  return static_cast< ::enterprise_management::PolicyFetchRequest_SignatureType >(policy_data_signature_type_);
+}
+inline ::enterprise_management::PolicyFetchRequest_SignatureType PolicyFetchResponse::policy_data_signature_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchResponse.policy_data_signature_type)
+  return _internal_policy_data_signature_type();
+}
+inline void PolicyFetchResponse::_internal_set_policy_data_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value) {
+  assert(::enterprise_management::PolicyFetchRequest_SignatureType_IsValid(value));
+  _has_bits_[0] |= 0x00000400u;
+  policy_data_signature_type_ = value;
+}
+inline void PolicyFetchResponse::set_policy_data_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value) {
+  _internal_set_policy_data_signature_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchResponse.policy_data_signature_type)
+}
+
+// -------------------------------------------------------------------
+
+// DEPRECATEDPolicyPublicKeyAndDomain
+
+// optional bytes new_public_key = 1;
+inline bool DEPRECATEDPolicyPublicKeyAndDomain::_internal_has_new_public_key() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DEPRECATEDPolicyPublicKeyAndDomain::has_new_public_key() const {
+  return _internal_has_new_public_key();
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::clear_new_public_key() {
+  new_public_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DEPRECATEDPolicyPublicKeyAndDomain::new_public_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.new_public_key)
+  return _internal_new_public_key();
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_new_public_key(const std::string& value) {
+  _internal_set_new_public_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.new_public_key)
+}
+inline std::string* DEPRECATEDPolicyPublicKeyAndDomain::mutable_new_public_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.new_public_key)
+  return _internal_mutable_new_public_key();
+}
+inline const std::string& DEPRECATEDPolicyPublicKeyAndDomain::_internal_new_public_key() const {
+  return new_public_key_.GetNoArena();
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::_internal_set_new_public_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_new_public_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  new_public_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.new_public_key)
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_new_public_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.new_public_key)
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_new_public_key(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.new_public_key)
+}
+inline std::string* DEPRECATEDPolicyPublicKeyAndDomain::_internal_mutable_new_public_key() {
+  _has_bits_[0] |= 0x00000001u;
+  return new_public_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DEPRECATEDPolicyPublicKeyAndDomain::release_new_public_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.new_public_key)
+  if (!_internal_has_new_public_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return new_public_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_allocated_new_public_key(std::string* new_public_key) {
+  if (new_public_key != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  new_public_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_public_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.new_public_key)
+}
+
+// optional string domain = 2;
+inline bool DEPRECATEDPolicyPublicKeyAndDomain::_internal_has_domain() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DEPRECATEDPolicyPublicKeyAndDomain::has_domain() const {
+  return _internal_has_domain();
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::clear_domain() {
+  domain_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DEPRECATEDPolicyPublicKeyAndDomain::domain() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.domain)
+  return _internal_domain();
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_domain(const std::string& value) {
+  _internal_set_domain(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.domain)
+}
+inline std::string* DEPRECATEDPolicyPublicKeyAndDomain::mutable_domain() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.domain)
+  return _internal_mutable_domain();
+}
+inline const std::string& DEPRECATEDPolicyPublicKeyAndDomain::_internal_domain() const {
+  return domain_.GetNoArena();
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::_internal_set_domain(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_domain(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  domain_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.domain)
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_domain(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.domain)
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_domain(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.domain)
+}
+inline std::string* DEPRECATEDPolicyPublicKeyAndDomain::_internal_mutable_domain() {
+  _has_bits_[0] |= 0x00000002u;
+  return domain_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DEPRECATEDPolicyPublicKeyAndDomain::release_domain() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.domain)
+  if (!_internal_has_domain()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return domain_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DEPRECATEDPolicyPublicKeyAndDomain::set_allocated_domain(std::string* domain) {
+  if (domain != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  domain_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), domain);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DEPRECATEDPolicyPublicKeyAndDomain.domain)
+}
+
+// -------------------------------------------------------------------
+
+// PublicKeyVerificationData
+
+// optional bytes new_public_key = 1;
+inline bool PublicKeyVerificationData::_internal_has_new_public_key() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PublicKeyVerificationData::has_new_public_key() const {
+  return _internal_has_new_public_key();
+}
+inline void PublicKeyVerificationData::clear_new_public_key() {
+  new_public_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PublicKeyVerificationData::new_public_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PublicKeyVerificationData.new_public_key)
+  return _internal_new_public_key();
+}
+inline void PublicKeyVerificationData::set_new_public_key(const std::string& value) {
+  _internal_set_new_public_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PublicKeyVerificationData.new_public_key)
+}
+inline std::string* PublicKeyVerificationData::mutable_new_public_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PublicKeyVerificationData.new_public_key)
+  return _internal_mutable_new_public_key();
+}
+inline const std::string& PublicKeyVerificationData::_internal_new_public_key() const {
+  return new_public_key_.GetNoArena();
+}
+inline void PublicKeyVerificationData::_internal_set_new_public_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PublicKeyVerificationData::set_new_public_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  new_public_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PublicKeyVerificationData.new_public_key)
+}
+inline void PublicKeyVerificationData::set_new_public_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PublicKeyVerificationData.new_public_key)
+}
+inline void PublicKeyVerificationData::set_new_public_key(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  new_public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PublicKeyVerificationData.new_public_key)
+}
+inline std::string* PublicKeyVerificationData::_internal_mutable_new_public_key() {
+  _has_bits_[0] |= 0x00000001u;
+  return new_public_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PublicKeyVerificationData::release_new_public_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PublicKeyVerificationData.new_public_key)
+  if (!_internal_has_new_public_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return new_public_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PublicKeyVerificationData::set_allocated_new_public_key(std::string* new_public_key) {
+  if (new_public_key != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  new_public_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_public_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PublicKeyVerificationData.new_public_key)
+}
+
+// optional string domain = 2;
+inline bool PublicKeyVerificationData::_internal_has_domain() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PublicKeyVerificationData::has_domain() const {
+  return _internal_has_domain();
+}
+inline void PublicKeyVerificationData::clear_domain() {
+  domain_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& PublicKeyVerificationData::domain() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PublicKeyVerificationData.domain)
+  return _internal_domain();
+}
+inline void PublicKeyVerificationData::set_domain(const std::string& value) {
+  _internal_set_domain(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PublicKeyVerificationData.domain)
+}
+inline std::string* PublicKeyVerificationData::mutable_domain() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PublicKeyVerificationData.domain)
+  return _internal_mutable_domain();
+}
+inline const std::string& PublicKeyVerificationData::_internal_domain() const {
+  return domain_.GetNoArena();
+}
+inline void PublicKeyVerificationData::_internal_set_domain(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PublicKeyVerificationData::set_domain(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  domain_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PublicKeyVerificationData.domain)
+}
+inline void PublicKeyVerificationData::set_domain(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PublicKeyVerificationData.domain)
+}
+inline void PublicKeyVerificationData::set_domain(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PublicKeyVerificationData.domain)
+}
+inline std::string* PublicKeyVerificationData::_internal_mutable_domain() {
+  _has_bits_[0] |= 0x00000002u;
+  return domain_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PublicKeyVerificationData::release_domain() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PublicKeyVerificationData.domain)
+  if (!_internal_has_domain()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return domain_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PublicKeyVerificationData::set_allocated_domain(std::string* domain) {
+  if (domain != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  domain_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), domain);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PublicKeyVerificationData.domain)
+}
+
+// optional int32 new_public_key_version = 3;
+inline bool PublicKeyVerificationData::_internal_has_new_public_key_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PublicKeyVerificationData::has_new_public_key_version() const {
+  return _internal_has_new_public_key_version();
+}
+inline void PublicKeyVerificationData::clear_new_public_key_version() {
+  new_public_key_version_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PublicKeyVerificationData::_internal_new_public_key_version() const {
+  return new_public_key_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PublicKeyVerificationData::new_public_key_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PublicKeyVerificationData.new_public_key_version)
+  return _internal_new_public_key_version();
+}
+inline void PublicKeyVerificationData::_internal_set_new_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  new_public_key_version_ = value;
+}
+inline void PublicKeyVerificationData::set_new_public_key_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_new_public_key_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PublicKeyVerificationData.new_public_key_version)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePolicyRequest
+
+// repeated .enterprise_management.PolicyFetchRequest requests = 3;
+inline int DevicePolicyRequest::_internal_requests_size() const {
+  return requests_.size();
+}
+inline int DevicePolicyRequest::requests_size() const {
+  return _internal_requests_size();
+}
+inline void DevicePolicyRequest::clear_requests() {
+  requests_.Clear();
+}
+inline ::enterprise_management::PolicyFetchRequest* DevicePolicyRequest::mutable_requests(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DevicePolicyRequest.requests)
+  return requests_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchRequest >*
+DevicePolicyRequest::mutable_requests() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DevicePolicyRequest.requests)
+  return &requests_;
+}
+inline const ::enterprise_management::PolicyFetchRequest& DevicePolicyRequest::_internal_requests(int index) const {
+  return requests_.Get(index);
+}
+inline const ::enterprise_management::PolicyFetchRequest& DevicePolicyRequest::requests(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePolicyRequest.requests)
+  return _internal_requests(index);
+}
+inline ::enterprise_management::PolicyFetchRequest* DevicePolicyRequest::_internal_add_requests() {
+  return requests_.Add();
+}
+inline ::enterprise_management::PolicyFetchRequest* DevicePolicyRequest::add_requests() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DevicePolicyRequest.requests)
+  return _internal_add_requests();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchRequest >&
+DevicePolicyRequest::requests() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DevicePolicyRequest.requests)
+  return requests_;
+}
+
+// -------------------------------------------------------------------
+
+// DevicePolicyResponse
+
+// repeated .enterprise_management.PolicyFetchResponse responses = 3;
+inline int DevicePolicyResponse::_internal_responses_size() const {
+  return responses_.size();
+}
+inline int DevicePolicyResponse::responses_size() const {
+  return _internal_responses_size();
+}
+inline void DevicePolicyResponse::clear_responses() {
+  responses_.Clear();
+}
+inline ::enterprise_management::PolicyFetchResponse* DevicePolicyResponse::mutable_responses(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DevicePolicyResponse.responses)
+  return responses_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchResponse >*
+DevicePolicyResponse::mutable_responses() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DevicePolicyResponse.responses)
+  return &responses_;
+}
+inline const ::enterprise_management::PolicyFetchResponse& DevicePolicyResponse::_internal_responses(int index) const {
+  return responses_.Get(index);
+}
+inline const ::enterprise_management::PolicyFetchResponse& DevicePolicyResponse::responses(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePolicyResponse.responses)
+  return _internal_responses(index);
+}
+inline ::enterprise_management::PolicyFetchResponse* DevicePolicyResponse::_internal_add_responses() {
+  return responses_.Add();
+}
+inline ::enterprise_management::PolicyFetchResponse* DevicePolicyResponse::add_responses() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DevicePolicyResponse.responses)
+  return _internal_add_responses();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchResponse >&
+DevicePolicyResponse::responses() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DevicePolicyResponse.responses)
+  return responses_;
+}
+
+// -------------------------------------------------------------------
+
+// TimePeriod
+
+// optional int64 start_timestamp = 1;
+inline bool TimePeriod::_internal_has_start_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool TimePeriod::has_start_timestamp() const {
+  return _internal_has_start_timestamp();
+}
+inline void TimePeriod::clear_start_timestamp() {
+  start_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 TimePeriod::_internal_start_timestamp() const {
+  return start_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 TimePeriod::start_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TimePeriod.start_timestamp)
+  return _internal_start_timestamp();
+}
+inline void TimePeriod::_internal_set_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  start_timestamp_ = value;
+}
+inline void TimePeriod::set_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_start_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TimePeriod.start_timestamp)
+}
+
+// optional int64 end_timestamp = 2;
+inline bool TimePeriod::_internal_has_end_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool TimePeriod::has_end_timestamp() const {
+  return _internal_has_end_timestamp();
+}
+inline void TimePeriod::clear_end_timestamp() {
+  end_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 TimePeriod::_internal_end_timestamp() const {
+  return end_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 TimePeriod::end_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TimePeriod.end_timestamp)
+  return _internal_end_timestamp();
+}
+inline void TimePeriod::_internal_set_end_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  end_timestamp_ = value;
+}
+inline void TimePeriod::set_end_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_end_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TimePeriod.end_timestamp)
+}
+
+// -------------------------------------------------------------------
+
+// ActiveTimePeriod
+
+// optional .enterprise_management.TimePeriod time_period = 1;
+inline bool ActiveTimePeriod::_internal_has_time_period() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || time_period_ != nullptr);
+  return value;
+}
+inline bool ActiveTimePeriod::has_time_period() const {
+  return _internal_has_time_period();
+}
+inline void ActiveTimePeriod::clear_time_period() {
+  if (time_period_ != nullptr) time_period_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::TimePeriod& ActiveTimePeriod::_internal_time_period() const {
+  const ::enterprise_management::TimePeriod* p = time_period_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::TimePeriod*>(
+      &::enterprise_management::_TimePeriod_default_instance_);
+}
+inline const ::enterprise_management::TimePeriod& ActiveTimePeriod::time_period() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveTimePeriod.time_period)
+  return _internal_time_period();
+}
+inline ::enterprise_management::TimePeriod* ActiveTimePeriod::release_time_period() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ActiveTimePeriod.time_period)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::TimePeriod* temp = time_period_;
+  time_period_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::TimePeriod* ActiveTimePeriod::_internal_mutable_time_period() {
+  _has_bits_[0] |= 0x00000002u;
+  if (time_period_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::TimePeriod>(GetArenaNoVirtual());
+    time_period_ = p;
+  }
+  return time_period_;
+}
+inline ::enterprise_management::TimePeriod* ActiveTimePeriod::mutable_time_period() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ActiveTimePeriod.time_period)
+  return _internal_mutable_time_period();
+}
+inline void ActiveTimePeriod::set_allocated_time_period(::enterprise_management::TimePeriod* time_period) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete time_period_;
+  }
+  if (time_period) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      time_period = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, time_period, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  time_period_ = time_period;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ActiveTimePeriod.time_period)
+}
+
+// optional int32 active_duration = 2;
+inline bool ActiveTimePeriod::_internal_has_active_duration() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ActiveTimePeriod::has_active_duration() const {
+  return _internal_has_active_duration();
+}
+inline void ActiveTimePeriod::clear_active_duration() {
+  active_duration_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ActiveTimePeriod::_internal_active_duration() const {
+  return active_duration_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ActiveTimePeriod::active_duration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveTimePeriod.active_duration)
+  return _internal_active_duration();
+}
+inline void ActiveTimePeriod::_internal_set_active_duration(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  active_duration_ = value;
+}
+inline void ActiveTimePeriod::set_active_duration(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_active_duration(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ActiveTimePeriod.active_duration)
+}
+
+// optional string user_email = 3;
+inline bool ActiveTimePeriod::_internal_has_user_email() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ActiveTimePeriod::has_user_email() const {
+  return _internal_has_user_email();
+}
+inline void ActiveTimePeriod::clear_user_email() {
+  user_email_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ActiveTimePeriod::user_email() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveTimePeriod.user_email)
+  return _internal_user_email();
+}
+inline void ActiveTimePeriod::set_user_email(const std::string& value) {
+  _internal_set_user_email(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ActiveTimePeriod.user_email)
+}
+inline std::string* ActiveTimePeriod::mutable_user_email() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ActiveTimePeriod.user_email)
+  return _internal_mutable_user_email();
+}
+inline const std::string& ActiveTimePeriod::_internal_user_email() const {
+  return user_email_.GetNoArena();
+}
+inline void ActiveTimePeriod::_internal_set_user_email(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  user_email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ActiveTimePeriod::set_user_email(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  user_email_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ActiveTimePeriod.user_email)
+}
+inline void ActiveTimePeriod::set_user_email(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  user_email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ActiveTimePeriod.user_email)
+}
+inline void ActiveTimePeriod::set_user_email(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  user_email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ActiveTimePeriod.user_email)
+}
+inline std::string* ActiveTimePeriod::_internal_mutable_user_email() {
+  _has_bits_[0] |= 0x00000001u;
+  return user_email_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ActiveTimePeriod::release_user_email() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ActiveTimePeriod.user_email)
+  if (!_internal_has_user_email()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return user_email_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ActiveTimePeriod::set_allocated_user_email(std::string* user_email) {
+  if (user_email != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  user_email_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), user_email);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ActiveTimePeriod.user_email)
+}
+
+// optional .enterprise_management.ActiveTimePeriod.SessionType session_type = 4;
+inline bool ActiveTimePeriod::_internal_has_session_type() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool ActiveTimePeriod::has_session_type() const {
+  return _internal_has_session_type();
+}
+inline void ActiveTimePeriod::clear_session_type() {
+  session_type_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::ActiveTimePeriod_SessionType ActiveTimePeriod::_internal_session_type() const {
+  return static_cast< ::enterprise_management::ActiveTimePeriod_SessionType >(session_type_);
+}
+inline ::enterprise_management::ActiveTimePeriod_SessionType ActiveTimePeriod::session_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveTimePeriod.session_type)
+  return _internal_session_type();
+}
+inline void ActiveTimePeriod::_internal_set_session_type(::enterprise_management::ActiveTimePeriod_SessionType value) {
+  assert(::enterprise_management::ActiveTimePeriod_SessionType_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  session_type_ = value;
+}
+inline void ActiveTimePeriod::set_session_type(::enterprise_management::ActiveTimePeriod_SessionType value) {
+  _internal_set_session_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ActiveTimePeriod.session_type)
+}
+
+// -------------------------------------------------------------------
+
+// NetworkInterface
+
+// optional .enterprise_management.NetworkInterface.NetworkDeviceType type = 1;
+inline bool NetworkInterface::_internal_has_type() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool NetworkInterface::has_type() const {
+  return _internal_has_type();
+}
+inline void NetworkInterface::clear_type() {
+  type_ = 0;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::enterprise_management::NetworkInterface_NetworkDeviceType NetworkInterface::_internal_type() const {
+  return static_cast< ::enterprise_management::NetworkInterface_NetworkDeviceType >(type_);
+}
+inline ::enterprise_management::NetworkInterface_NetworkDeviceType NetworkInterface::type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkInterface.type)
+  return _internal_type();
+}
+inline void NetworkInterface::_internal_set_type(::enterprise_management::NetworkInterface_NetworkDeviceType value) {
+  assert(::enterprise_management::NetworkInterface_NetworkDeviceType_IsValid(value));
+  _has_bits_[0] |= 0x00000040u;
+  type_ = value;
+}
+inline void NetworkInterface::set_type(::enterprise_management::NetworkInterface_NetworkDeviceType value) {
+  _internal_set_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.type)
+}
+
+// optional string mac_address = 2;
+inline bool NetworkInterface::_internal_has_mac_address() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool NetworkInterface::has_mac_address() const {
+  return _internal_has_mac_address();
+}
+inline void NetworkInterface::clear_mac_address() {
+  mac_address_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& NetworkInterface::mac_address() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkInterface.mac_address)
+  return _internal_mac_address();
+}
+inline void NetworkInterface::set_mac_address(const std::string& value) {
+  _internal_set_mac_address(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.mac_address)
+}
+inline std::string* NetworkInterface::mutable_mac_address() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkInterface.mac_address)
+  return _internal_mutable_mac_address();
+}
+inline const std::string& NetworkInterface::_internal_mac_address() const {
+  return mac_address_.GetNoArena();
+}
+inline void NetworkInterface::_internal_set_mac_address(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkInterface::set_mac_address(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  mac_address_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkInterface.mac_address)
+}
+inline void NetworkInterface::set_mac_address(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkInterface.mac_address)
+}
+inline void NetworkInterface::set_mac_address(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  mac_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkInterface.mac_address)
+}
+inline std::string* NetworkInterface::_internal_mutable_mac_address() {
+  _has_bits_[0] |= 0x00000001u;
+  return mac_address_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkInterface::release_mac_address() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkInterface.mac_address)
+  if (!_internal_has_mac_address()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return mac_address_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkInterface::set_allocated_mac_address(std::string* mac_address) {
+  if (mac_address != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  mac_address_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), mac_address);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkInterface.mac_address)
+}
+
+// optional string meid = 3;
+inline bool NetworkInterface::_internal_has_meid() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool NetworkInterface::has_meid() const {
+  return _internal_has_meid();
+}
+inline void NetworkInterface::clear_meid() {
+  meid_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& NetworkInterface::meid() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkInterface.meid)
+  return _internal_meid();
+}
+inline void NetworkInterface::set_meid(const std::string& value) {
+  _internal_set_meid(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.meid)
+}
+inline std::string* NetworkInterface::mutable_meid() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkInterface.meid)
+  return _internal_mutable_meid();
+}
+inline const std::string& NetworkInterface::_internal_meid() const {
+  return meid_.GetNoArena();
+}
+inline void NetworkInterface::_internal_set_meid(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  meid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkInterface::set_meid(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  meid_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkInterface.meid)
+}
+inline void NetworkInterface::set_meid(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  meid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkInterface.meid)
+}
+inline void NetworkInterface::set_meid(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  meid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkInterface.meid)
+}
+inline std::string* NetworkInterface::_internal_mutable_meid() {
+  _has_bits_[0] |= 0x00000002u;
+  return meid_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkInterface::release_meid() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkInterface.meid)
+  if (!_internal_has_meid()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return meid_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkInterface::set_allocated_meid(std::string* meid) {
+  if (meid != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  meid_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), meid);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkInterface.meid)
+}
+
+// optional string imei = 4;
+inline bool NetworkInterface::_internal_has_imei() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool NetworkInterface::has_imei() const {
+  return _internal_has_imei();
+}
+inline void NetworkInterface::clear_imei() {
+  imei_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& NetworkInterface::imei() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkInterface.imei)
+  return _internal_imei();
+}
+inline void NetworkInterface::set_imei(const std::string& value) {
+  _internal_set_imei(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.imei)
+}
+inline std::string* NetworkInterface::mutable_imei() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkInterface.imei)
+  return _internal_mutable_imei();
+}
+inline const std::string& NetworkInterface::_internal_imei() const {
+  return imei_.GetNoArena();
+}
+inline void NetworkInterface::_internal_set_imei(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  imei_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkInterface::set_imei(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  imei_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkInterface.imei)
+}
+inline void NetworkInterface::set_imei(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  imei_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkInterface.imei)
+}
+inline void NetworkInterface::set_imei(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  imei_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkInterface.imei)
+}
+inline std::string* NetworkInterface::_internal_mutable_imei() {
+  _has_bits_[0] |= 0x00000004u;
+  return imei_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkInterface::release_imei() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkInterface.imei)
+  if (!_internal_has_imei()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return imei_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkInterface::set_allocated_imei(std::string* imei) {
+  if (imei != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  imei_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), imei);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkInterface.imei)
+}
+
+// optional string device_path = 5;
+inline bool NetworkInterface::_internal_has_device_path() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool NetworkInterface::has_device_path() const {
+  return _internal_has_device_path();
+}
+inline void NetworkInterface::clear_device_path() {
+  device_path_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& NetworkInterface::device_path() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkInterface.device_path)
+  return _internal_device_path();
+}
+inline void NetworkInterface::set_device_path(const std::string& value) {
+  _internal_set_device_path(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.device_path)
+}
+inline std::string* NetworkInterface::mutable_device_path() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkInterface.device_path)
+  return _internal_mutable_device_path();
+}
+inline const std::string& NetworkInterface::_internal_device_path() const {
+  return device_path_.GetNoArena();
+}
+inline void NetworkInterface::_internal_set_device_path(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  device_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkInterface::set_device_path(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  device_path_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkInterface.device_path)
+}
+inline void NetworkInterface::set_device_path(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  device_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkInterface.device_path)
+}
+inline void NetworkInterface::set_device_path(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  device_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkInterface.device_path)
+}
+inline std::string* NetworkInterface::_internal_mutable_device_path() {
+  _has_bits_[0] |= 0x00000008u;
+  return device_path_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkInterface::release_device_path() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkInterface.device_path)
+  if (!_internal_has_device_path()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return device_path_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkInterface::set_allocated_device_path(std::string* device_path) {
+  if (device_path != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  device_path_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_path);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkInterface.device_path)
+}
+
+// optional string iccid = 6;
+inline bool NetworkInterface::_internal_has_iccid() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool NetworkInterface::has_iccid() const {
+  return _internal_has_iccid();
+}
+inline void NetworkInterface::clear_iccid() {
+  iccid_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& NetworkInterface::iccid() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkInterface.iccid)
+  return _internal_iccid();
+}
+inline void NetworkInterface::set_iccid(const std::string& value) {
+  _internal_set_iccid(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.iccid)
+}
+inline std::string* NetworkInterface::mutable_iccid() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkInterface.iccid)
+  return _internal_mutable_iccid();
+}
+inline const std::string& NetworkInterface::_internal_iccid() const {
+  return iccid_.GetNoArena();
+}
+inline void NetworkInterface::_internal_set_iccid(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  iccid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkInterface::set_iccid(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  iccid_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkInterface.iccid)
+}
+inline void NetworkInterface::set_iccid(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  iccid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkInterface.iccid)
+}
+inline void NetworkInterface::set_iccid(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  iccid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkInterface.iccid)
+}
+inline std::string* NetworkInterface::_internal_mutable_iccid() {
+  _has_bits_[0] |= 0x00000010u;
+  return iccid_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkInterface::release_iccid() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkInterface.iccid)
+  if (!_internal_has_iccid()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return iccid_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkInterface::set_allocated_iccid(std::string* iccid) {
+  if (iccid != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  iccid_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), iccid);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkInterface.iccid)
+}
+
+// optional string mdn = 7;
+inline bool NetworkInterface::_internal_has_mdn() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool NetworkInterface::has_mdn() const {
+  return _internal_has_mdn();
+}
+inline void NetworkInterface::clear_mdn() {
+  mdn_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& NetworkInterface::mdn() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkInterface.mdn)
+  return _internal_mdn();
+}
+inline void NetworkInterface::set_mdn(const std::string& value) {
+  _internal_set_mdn(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.mdn)
+}
+inline std::string* NetworkInterface::mutable_mdn() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkInterface.mdn)
+  return _internal_mutable_mdn();
+}
+inline const std::string& NetworkInterface::_internal_mdn() const {
+  return mdn_.GetNoArena();
+}
+inline void NetworkInterface::_internal_set_mdn(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  mdn_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkInterface::set_mdn(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  mdn_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkInterface.mdn)
+}
+inline void NetworkInterface::set_mdn(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  mdn_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkInterface.mdn)
+}
+inline void NetworkInterface::set_mdn(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  mdn_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkInterface.mdn)
+}
+inline std::string* NetworkInterface::_internal_mutable_mdn() {
+  _has_bits_[0] |= 0x00000020u;
+  return mdn_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkInterface::release_mdn() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkInterface.mdn)
+  if (!_internal_has_mdn()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return mdn_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkInterface::set_allocated_mdn(std::string* mdn) {
+  if (mdn != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  mdn_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), mdn);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkInterface.mdn)
+}
+
+// repeated string eids = 8;
+inline int NetworkInterface::_internal_eids_size() const {
+  return eids_.size();
+}
+inline int NetworkInterface::eids_size() const {
+  return _internal_eids_size();
+}
+inline void NetworkInterface::clear_eids() {
+  eids_.Clear();
+}
+inline std::string* NetworkInterface::add_eids() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.NetworkInterface.eids)
+  return _internal_add_eids();
+}
+inline const std::string& NetworkInterface::_internal_eids(int index) const {
+  return eids_.Get(index);
+}
+inline const std::string& NetworkInterface::eids(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkInterface.eids)
+  return _internal_eids(index);
+}
+inline std::string* NetworkInterface::mutable_eids(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkInterface.eids)
+  return eids_.Mutable(index);
+}
+inline void NetworkInterface::set_eids(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.eids)
+  eids_.Mutable(index)->assign(value);
+}
+inline void NetworkInterface::set_eids(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkInterface.eids)
+  eids_.Mutable(index)->assign(std::move(value));
+}
+inline void NetworkInterface::set_eids(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  eids_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkInterface.eids)
+}
+inline void NetworkInterface::set_eids(int index, const char* value, size_t size) {
+  eids_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkInterface.eids)
+}
+inline std::string* NetworkInterface::_internal_add_eids() {
+  return eids_.Add();
+}
+inline void NetworkInterface::add_eids(const std::string& value) {
+  eids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.NetworkInterface.eids)
+}
+inline void NetworkInterface::add_eids(std::string&& value) {
+  eids_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.NetworkInterface.eids)
+}
+inline void NetworkInterface::add_eids(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  eids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.NetworkInterface.eids)
+}
+inline void NetworkInterface::add_eids(const char* value, size_t size) {
+  eids_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.NetworkInterface.eids)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+NetworkInterface::eids() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.NetworkInterface.eids)
+  return eids_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+NetworkInterface::mutable_eids() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.NetworkInterface.eids)
+  return &eids_;
+}
+
+// -------------------------------------------------------------------
+
+// NetworkState
+
+// optional string device_path = 1;
+inline bool NetworkState::_internal_has_device_path() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool NetworkState::has_device_path() const {
+  return _internal_has_device_path();
+}
+inline void NetworkState::clear_device_path() {
+  device_path_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& NetworkState::device_path() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkState.device_path)
+  return _internal_device_path();
+}
+inline void NetworkState::set_device_path(const std::string& value) {
+  _internal_set_device_path(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkState.device_path)
+}
+inline std::string* NetworkState::mutable_device_path() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkState.device_path)
+  return _internal_mutable_device_path();
+}
+inline const std::string& NetworkState::_internal_device_path() const {
+  return device_path_.GetNoArena();
+}
+inline void NetworkState::_internal_set_device_path(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkState::set_device_path(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_path_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkState.device_path)
+}
+inline void NetworkState::set_device_path(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkState.device_path)
+}
+inline void NetworkState::set_device_path(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkState.device_path)
+}
+inline std::string* NetworkState::_internal_mutable_device_path() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_path_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkState::release_device_path() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkState.device_path)
+  if (!_internal_has_device_path()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_path_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkState::set_allocated_device_path(std::string* device_path) {
+  if (device_path != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_path_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_path);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkState.device_path)
+}
+
+// optional .enterprise_management.NetworkState.ConnectionState connection_state = 2;
+inline bool NetworkState::_internal_has_connection_state() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool NetworkState::has_connection_state() const {
+  return _internal_has_connection_state();
+}
+inline void NetworkState::clear_connection_state() {
+  connection_state_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::NetworkState_ConnectionState NetworkState::_internal_connection_state() const {
+  return static_cast< ::enterprise_management::NetworkState_ConnectionState >(connection_state_);
+}
+inline ::enterprise_management::NetworkState_ConnectionState NetworkState::connection_state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkState.connection_state)
+  return _internal_connection_state();
+}
+inline void NetworkState::_internal_set_connection_state(::enterprise_management::NetworkState_ConnectionState value) {
+  assert(::enterprise_management::NetworkState_ConnectionState_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  connection_state_ = value;
+}
+inline void NetworkState::set_connection_state(::enterprise_management::NetworkState_ConnectionState value) {
+  _internal_set_connection_state(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkState.connection_state)
+}
+
+// optional int32 signal_strength = 3;
+inline bool NetworkState::_internal_has_signal_strength() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool NetworkState::has_signal_strength() const {
+  return _internal_has_signal_strength();
+}
+inline void NetworkState::clear_signal_strength() {
+  signal_strength_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkState::_internal_signal_strength() const {
+  return signal_strength_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkState::signal_strength() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkState.signal_strength)
+  return _internal_signal_strength();
+}
+inline void NetworkState::_internal_set_signal_strength(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  signal_strength_ = value;
+}
+inline void NetworkState::set_signal_strength(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_signal_strength(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkState.signal_strength)
+}
+
+// optional string ip_address = 4;
+inline bool NetworkState::_internal_has_ip_address() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool NetworkState::has_ip_address() const {
+  return _internal_has_ip_address();
+}
+inline void NetworkState::clear_ip_address() {
+  ip_address_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& NetworkState::ip_address() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkState.ip_address)
+  return _internal_ip_address();
+}
+inline void NetworkState::set_ip_address(const std::string& value) {
+  _internal_set_ip_address(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkState.ip_address)
+}
+inline std::string* NetworkState::mutable_ip_address() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkState.ip_address)
+  return _internal_mutable_ip_address();
+}
+inline const std::string& NetworkState::_internal_ip_address() const {
+  return ip_address_.GetNoArena();
+}
+inline void NetworkState::_internal_set_ip_address(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  ip_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkState::set_ip_address(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  ip_address_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkState.ip_address)
+}
+inline void NetworkState::set_ip_address(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  ip_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkState.ip_address)
+}
+inline void NetworkState::set_ip_address(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  ip_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkState.ip_address)
+}
+inline std::string* NetworkState::_internal_mutable_ip_address() {
+  _has_bits_[0] |= 0x00000002u;
+  return ip_address_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkState::release_ip_address() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkState.ip_address)
+  if (!_internal_has_ip_address()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return ip_address_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkState::set_allocated_ip_address(std::string* ip_address) {
+  if (ip_address != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  ip_address_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ip_address);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkState.ip_address)
+}
+
+// optional string gateway = 5;
+inline bool NetworkState::_internal_has_gateway() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool NetworkState::has_gateway() const {
+  return _internal_has_gateway();
+}
+inline void NetworkState::clear_gateway() {
+  gateway_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& NetworkState::gateway() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkState.gateway)
+  return _internal_gateway();
+}
+inline void NetworkState::set_gateway(const std::string& value) {
+  _internal_set_gateway(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkState.gateway)
+}
+inline std::string* NetworkState::mutable_gateway() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkState.gateway)
+  return _internal_mutable_gateway();
+}
+inline const std::string& NetworkState::_internal_gateway() const {
+  return gateway_.GetNoArena();
+}
+inline void NetworkState::_internal_set_gateway(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  gateway_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkState::set_gateway(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  gateway_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkState.gateway)
+}
+inline void NetworkState::set_gateway(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  gateway_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkState.gateway)
+}
+inline void NetworkState::set_gateway(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  gateway_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkState.gateway)
+}
+inline std::string* NetworkState::_internal_mutable_gateway() {
+  _has_bits_[0] |= 0x00000004u;
+  return gateway_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkState::release_gateway() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkState.gateway)
+  if (!_internal_has_gateway()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return gateway_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkState::set_allocated_gateway(std::string* gateway) {
+  if (gateway != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  gateway_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), gateway);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkState.gateway)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceUser
+
+// required .enterprise_management.DeviceUser.UserType type = 1;
+inline bool DeviceUser::_internal_has_type() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceUser::has_type() const {
+  return _internal_has_type();
+}
+inline void DeviceUser::clear_type() {
+  type_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::enterprise_management::DeviceUser_UserType DeviceUser::_internal_type() const {
+  return static_cast< ::enterprise_management::DeviceUser_UserType >(type_);
+}
+inline ::enterprise_management::DeviceUser_UserType DeviceUser::type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceUser.type)
+  return _internal_type();
+}
+inline void DeviceUser::_internal_set_type(::enterprise_management::DeviceUser_UserType value) {
+  assert(::enterprise_management::DeviceUser_UserType_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  type_ = value;
+}
+inline void DeviceUser::set_type(::enterprise_management::DeviceUser_UserType value) {
+  _internal_set_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceUser.type)
+}
+
+// optional string email = 2;
+inline bool DeviceUser::_internal_has_email() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceUser::has_email() const {
+  return _internal_has_email();
+}
+inline void DeviceUser::clear_email() {
+  email_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceUser::email() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceUser.email)
+  return _internal_email();
+}
+inline void DeviceUser::set_email(const std::string& value) {
+  _internal_set_email(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceUser.email)
+}
+inline std::string* DeviceUser::mutable_email() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceUser.email)
+  return _internal_mutable_email();
+}
+inline const std::string& DeviceUser::_internal_email() const {
+  return email_.GetNoArena();
+}
+inline void DeviceUser::_internal_set_email(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceUser::set_email(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  email_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceUser.email)
+}
+inline void DeviceUser::set_email(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceUser.email)
+}
+inline void DeviceUser::set_email(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceUser.email)
+}
+inline std::string* DeviceUser::_internal_mutable_email() {
+  _has_bits_[0] |= 0x00000001u;
+  return email_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceUser::release_email() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceUser.email)
+  if (!_internal_has_email()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return email_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceUser::set_allocated_email(std::string* email) {
+  if (email != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  email_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), email);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceUser.email)
+}
+
+// -------------------------------------------------------------------
+
+// VolumeInfo
+
+// optional string volume_id = 1;
+inline bool VolumeInfo::_internal_has_volume_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool VolumeInfo::has_volume_id() const {
+  return _internal_has_volume_id();
+}
+inline void VolumeInfo::clear_volume_id() {
+  volume_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& VolumeInfo::volume_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.VolumeInfo.volume_id)
+  return _internal_volume_id();
+}
+inline void VolumeInfo::set_volume_id(const std::string& value) {
+  _internal_set_volume_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.VolumeInfo.volume_id)
+}
+inline std::string* VolumeInfo::mutable_volume_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.VolumeInfo.volume_id)
+  return _internal_mutable_volume_id();
+}
+inline const std::string& VolumeInfo::_internal_volume_id() const {
+  return volume_id_.GetNoArena();
+}
+inline void VolumeInfo::_internal_set_volume_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  volume_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void VolumeInfo::set_volume_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  volume_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.VolumeInfo.volume_id)
+}
+inline void VolumeInfo::set_volume_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  volume_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.VolumeInfo.volume_id)
+}
+inline void VolumeInfo::set_volume_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  volume_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.VolumeInfo.volume_id)
+}
+inline std::string* VolumeInfo::_internal_mutable_volume_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return volume_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* VolumeInfo::release_volume_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.VolumeInfo.volume_id)
+  if (!_internal_has_volume_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return volume_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void VolumeInfo::set_allocated_volume_id(std::string* volume_id) {
+  if (volume_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  volume_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), volume_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.VolumeInfo.volume_id)
+}
+
+// optional int64 storage_total = 2;
+inline bool VolumeInfo::_internal_has_storage_total() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool VolumeInfo::has_storage_total() const {
+  return _internal_has_storage_total();
+}
+inline void VolumeInfo::clear_storage_total() {
+  storage_total_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 VolumeInfo::_internal_storage_total() const {
+  return storage_total_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 VolumeInfo::storage_total() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.VolumeInfo.storage_total)
+  return _internal_storage_total();
+}
+inline void VolumeInfo::_internal_set_storage_total(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  storage_total_ = value;
+}
+inline void VolumeInfo::set_storage_total(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_storage_total(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.VolumeInfo.storage_total)
+}
+
+// optional int64 storage_free = 3;
+inline bool VolumeInfo::_internal_has_storage_free() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool VolumeInfo::has_storage_free() const {
+  return _internal_has_storage_free();
+}
+inline void VolumeInfo::clear_storage_free() {
+  storage_free_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 VolumeInfo::_internal_storage_free() const {
+  return storage_free_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 VolumeInfo::storage_free() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.VolumeInfo.storage_free)
+  return _internal_storage_free();
+}
+inline void VolumeInfo::_internal_set_storage_free(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  storage_free_ = value;
+}
+inline void VolumeInfo::set_storage_free(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_storage_free(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.VolumeInfo.storage_free)
+}
+
+// -------------------------------------------------------------------
+
+// CpuUtilizationInfo
+
+// optional int32 cpu_utilization_pct = 1;
+inline bool CpuUtilizationInfo::_internal_has_cpu_utilization_pct() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CpuUtilizationInfo::has_cpu_utilization_pct() const {
+  return _internal_has_cpu_utilization_pct();
+}
+inline void CpuUtilizationInfo::clear_cpu_utilization_pct() {
+  cpu_utilization_pct_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 CpuUtilizationInfo::_internal_cpu_utilization_pct() const {
+  return cpu_utilization_pct_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 CpuUtilizationInfo::cpu_utilization_pct() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CpuUtilizationInfo.cpu_utilization_pct)
+  return _internal_cpu_utilization_pct();
+}
+inline void CpuUtilizationInfo::_internal_set_cpu_utilization_pct(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  cpu_utilization_pct_ = value;
+}
+inline void CpuUtilizationInfo::set_cpu_utilization_pct(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_cpu_utilization_pct(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CpuUtilizationInfo.cpu_utilization_pct)
+}
+
+// optional int64 timestamp = 2;
+inline bool CpuUtilizationInfo::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CpuUtilizationInfo::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void CpuUtilizationInfo::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CpuUtilizationInfo::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CpuUtilizationInfo::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CpuUtilizationInfo.timestamp)
+  return _internal_timestamp();
+}
+inline void CpuUtilizationInfo::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  timestamp_ = value;
+}
+inline void CpuUtilizationInfo::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CpuUtilizationInfo.timestamp)
+}
+
+// -------------------------------------------------------------------
+
+// SystemFreeRamInfo
+
+// optional int64 size_in_bytes = 1;
+inline bool SystemFreeRamInfo::_internal_has_size_in_bytes() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemFreeRamInfo::has_size_in_bytes() const {
+  return _internal_has_size_in_bytes();
+}
+inline void SystemFreeRamInfo::clear_size_in_bytes() {
+  size_in_bytes_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemFreeRamInfo::_internal_size_in_bytes() const {
+  return size_in_bytes_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemFreeRamInfo::size_in_bytes() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemFreeRamInfo.size_in_bytes)
+  return _internal_size_in_bytes();
+}
+inline void SystemFreeRamInfo::_internal_set_size_in_bytes(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  size_in_bytes_ = value;
+}
+inline void SystemFreeRamInfo::set_size_in_bytes(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_size_in_bytes(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemFreeRamInfo.size_in_bytes)
+}
+
+// optional int64 timestamp = 2;
+inline bool SystemFreeRamInfo::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemFreeRamInfo::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void SystemFreeRamInfo::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemFreeRamInfo::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemFreeRamInfo::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemFreeRamInfo.timestamp)
+  return _internal_timestamp();
+}
+inline void SystemFreeRamInfo::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  timestamp_ = value;
+}
+inline void SystemFreeRamInfo::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemFreeRamInfo.timestamp)
+}
+
+// -------------------------------------------------------------------
+
+// CPUTempInfo
+
+// optional string cpu_label = 1;
+inline bool CPUTempInfo::_internal_has_cpu_label() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CPUTempInfo::has_cpu_label() const {
+  return _internal_has_cpu_label();
+}
+inline void CPUTempInfo::clear_cpu_label() {
+  cpu_label_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CPUTempInfo::cpu_label() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CPUTempInfo.cpu_label)
+  return _internal_cpu_label();
+}
+inline void CPUTempInfo::set_cpu_label(const std::string& value) {
+  _internal_set_cpu_label(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CPUTempInfo.cpu_label)
+}
+inline std::string* CPUTempInfo::mutable_cpu_label() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CPUTempInfo.cpu_label)
+  return _internal_mutable_cpu_label();
+}
+inline const std::string& CPUTempInfo::_internal_cpu_label() const {
+  return cpu_label_.GetNoArena();
+}
+inline void CPUTempInfo::_internal_set_cpu_label(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  cpu_label_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CPUTempInfo::set_cpu_label(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  cpu_label_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CPUTempInfo.cpu_label)
+}
+inline void CPUTempInfo::set_cpu_label(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  cpu_label_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CPUTempInfo.cpu_label)
+}
+inline void CPUTempInfo::set_cpu_label(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  cpu_label_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CPUTempInfo.cpu_label)
+}
+inline std::string* CPUTempInfo::_internal_mutable_cpu_label() {
+  _has_bits_[0] |= 0x00000001u;
+  return cpu_label_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CPUTempInfo::release_cpu_label() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CPUTempInfo.cpu_label)
+  if (!_internal_has_cpu_label()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return cpu_label_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CPUTempInfo::set_allocated_cpu_label(std::string* cpu_label) {
+  if (cpu_label != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  cpu_label_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), cpu_label);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CPUTempInfo.cpu_label)
+}
+
+// optional int32 cpu_temp = 2;
+inline bool CPUTempInfo::_internal_has_cpu_temp() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool CPUTempInfo::has_cpu_temp() const {
+  return _internal_has_cpu_temp();
+}
+inline void CPUTempInfo::clear_cpu_temp() {
+  cpu_temp_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 CPUTempInfo::_internal_cpu_temp() const {
+  return cpu_temp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 CPUTempInfo::cpu_temp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CPUTempInfo.cpu_temp)
+  return _internal_cpu_temp();
+}
+inline void CPUTempInfo::_internal_set_cpu_temp(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  cpu_temp_ = value;
+}
+inline void CPUTempInfo::set_cpu_temp(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_cpu_temp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CPUTempInfo.cpu_temp)
+}
+
+// optional int64 timestamp = 3;
+inline bool CPUTempInfo::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CPUTempInfo::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void CPUTempInfo::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CPUTempInfo::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CPUTempInfo::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CPUTempInfo.timestamp)
+  return _internal_timestamp();
+}
+inline void CPUTempInfo::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  timestamp_ = value;
+}
+inline void CPUTempInfo::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CPUTempInfo.timestamp)
+}
+
+// -------------------------------------------------------------------
+
+// StatefulPartitionInfo
+
+// optional uint64 available_space = 1;
+inline bool StatefulPartitionInfo::_internal_has_available_space() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool StatefulPartitionInfo::has_available_space() const {
+  return _internal_has_available_space();
+}
+inline void StatefulPartitionInfo::clear_available_space() {
+  available_space_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StatefulPartitionInfo::_internal_available_space() const {
+  return available_space_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StatefulPartitionInfo::available_space() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StatefulPartitionInfo.available_space)
+  return _internal_available_space();
+}
+inline void StatefulPartitionInfo::_internal_set_available_space(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  available_space_ = value;
+}
+inline void StatefulPartitionInfo::set_available_space(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_available_space(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StatefulPartitionInfo.available_space)
+}
+
+// optional uint64 total_space = 2;
+inline bool StatefulPartitionInfo::_internal_has_total_space() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool StatefulPartitionInfo::has_total_space() const {
+  return _internal_has_total_space();
+}
+inline void StatefulPartitionInfo::clear_total_space() {
+  total_space_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StatefulPartitionInfo::_internal_total_space() const {
+  return total_space_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StatefulPartitionInfo::total_space() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StatefulPartitionInfo.total_space)
+  return _internal_total_space();
+}
+inline void StatefulPartitionInfo::_internal_set_total_space(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000008u;
+  total_space_ = value;
+}
+inline void StatefulPartitionInfo::set_total_space(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_total_space(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StatefulPartitionInfo.total_space)
+}
+
+// optional string filesystem = 3;
+inline bool StatefulPartitionInfo::_internal_has_filesystem() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool StatefulPartitionInfo::has_filesystem() const {
+  return _internal_has_filesystem();
+}
+inline void StatefulPartitionInfo::clear_filesystem() {
+  filesystem_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& StatefulPartitionInfo::filesystem() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StatefulPartitionInfo.filesystem)
+  return _internal_filesystem();
+}
+inline void StatefulPartitionInfo::set_filesystem(const std::string& value) {
+  _internal_set_filesystem(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StatefulPartitionInfo.filesystem)
+}
+inline std::string* StatefulPartitionInfo::mutable_filesystem() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StatefulPartitionInfo.filesystem)
+  return _internal_mutable_filesystem();
+}
+inline const std::string& StatefulPartitionInfo::_internal_filesystem() const {
+  return filesystem_.GetNoArena();
+}
+inline void StatefulPartitionInfo::_internal_set_filesystem(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  filesystem_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void StatefulPartitionInfo::set_filesystem(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  filesystem_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.StatefulPartitionInfo.filesystem)
+}
+inline void StatefulPartitionInfo::set_filesystem(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  filesystem_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.StatefulPartitionInfo.filesystem)
+}
+inline void StatefulPartitionInfo::set_filesystem(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  filesystem_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.StatefulPartitionInfo.filesystem)
+}
+inline std::string* StatefulPartitionInfo::_internal_mutable_filesystem() {
+  _has_bits_[0] |= 0x00000001u;
+  return filesystem_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* StatefulPartitionInfo::release_filesystem() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StatefulPartitionInfo.filesystem)
+  if (!_internal_has_filesystem()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return filesystem_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void StatefulPartitionInfo::set_allocated_filesystem(std::string* filesystem) {
+  if (filesystem != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  filesystem_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), filesystem);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StatefulPartitionInfo.filesystem)
+}
+
+// optional string mount_source = 4;
+inline bool StatefulPartitionInfo::_internal_has_mount_source() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool StatefulPartitionInfo::has_mount_source() const {
+  return _internal_has_mount_source();
+}
+inline void StatefulPartitionInfo::clear_mount_source() {
+  mount_source_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& StatefulPartitionInfo::mount_source() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StatefulPartitionInfo.mount_source)
+  return _internal_mount_source();
+}
+inline void StatefulPartitionInfo::set_mount_source(const std::string& value) {
+  _internal_set_mount_source(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StatefulPartitionInfo.mount_source)
+}
+inline std::string* StatefulPartitionInfo::mutable_mount_source() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StatefulPartitionInfo.mount_source)
+  return _internal_mutable_mount_source();
+}
+inline const std::string& StatefulPartitionInfo::_internal_mount_source() const {
+  return mount_source_.GetNoArena();
+}
+inline void StatefulPartitionInfo::_internal_set_mount_source(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  mount_source_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void StatefulPartitionInfo::set_mount_source(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  mount_source_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.StatefulPartitionInfo.mount_source)
+}
+inline void StatefulPartitionInfo::set_mount_source(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  mount_source_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.StatefulPartitionInfo.mount_source)
+}
+inline void StatefulPartitionInfo::set_mount_source(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  mount_source_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.StatefulPartitionInfo.mount_source)
+}
+inline std::string* StatefulPartitionInfo::_internal_mutable_mount_source() {
+  _has_bits_[0] |= 0x00000002u;
+  return mount_source_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* StatefulPartitionInfo::release_mount_source() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StatefulPartitionInfo.mount_source)
+  if (!_internal_has_mount_source()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return mount_source_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void StatefulPartitionInfo::set_allocated_mount_source(std::string* mount_source) {
+  if (mount_source != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  mount_source_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), mount_source);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StatefulPartitionInfo.mount_source)
+}
+
+// -------------------------------------------------------------------
+
+// BatterySample
+
+// optional int64 timestamp = 1;
+inline bool BatterySample::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BatterySample::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void BatterySample::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatterySample::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatterySample::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatterySample.timestamp)
+  return _internal_timestamp();
+}
+inline void BatterySample::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  timestamp_ = value;
+}
+inline void BatterySample::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatterySample.timestamp)
+}
+
+// optional int64 voltage = 2;
+inline bool BatterySample::_internal_has_voltage() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool BatterySample::has_voltage() const {
+  return _internal_has_voltage();
+}
+inline void BatterySample::clear_voltage() {
+  voltage_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatterySample::_internal_voltage() const {
+  return voltage_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatterySample::voltage() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatterySample.voltage)
+  return _internal_voltage();
+}
+inline void BatterySample::_internal_set_voltage(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  voltage_ = value;
+}
+inline void BatterySample::set_voltage(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_voltage(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatterySample.voltage)
+}
+
+// optional int64 remaining_capacity = 3;
+inline bool BatterySample::_internal_has_remaining_capacity() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool BatterySample::has_remaining_capacity() const {
+  return _internal_has_remaining_capacity();
+}
+inline void BatterySample::clear_remaining_capacity() {
+  remaining_capacity_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatterySample::_internal_remaining_capacity() const {
+  return remaining_capacity_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatterySample::remaining_capacity() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatterySample.remaining_capacity)
+  return _internal_remaining_capacity();
+}
+inline void BatterySample::_internal_set_remaining_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000008u;
+  remaining_capacity_ = value;
+}
+inline void BatterySample::set_remaining_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_remaining_capacity(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatterySample.remaining_capacity)
+}
+
+// optional int32 temperature = 4;
+inline bool BatterySample::_internal_has_temperature() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool BatterySample::has_temperature() const {
+  return _internal_has_temperature();
+}
+inline void BatterySample::clear_temperature() {
+  temperature_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatterySample::_internal_temperature() const {
+  return temperature_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatterySample::temperature() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatterySample.temperature)
+  return _internal_temperature();
+}
+inline void BatterySample::_internal_set_temperature(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  temperature_ = value;
+}
+inline void BatterySample::set_temperature(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_temperature(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatterySample.temperature)
+}
+
+// optional int32 discharge_rate = 5;
+inline bool BatterySample::_internal_has_discharge_rate() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool BatterySample::has_discharge_rate() const {
+  return _internal_has_discharge_rate();
+}
+inline void BatterySample::clear_discharge_rate() {
+  discharge_rate_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatterySample::_internal_discharge_rate() const {
+  return discharge_rate_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatterySample::discharge_rate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatterySample.discharge_rate)
+  return _internal_discharge_rate();
+}
+inline void BatterySample::_internal_set_discharge_rate(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  discharge_rate_ = value;
+}
+inline void BatterySample::set_discharge_rate(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_discharge_rate(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatterySample.discharge_rate)
+}
+
+// optional int32 charge_rate = 6;
+inline bool BatterySample::_internal_has_charge_rate() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool BatterySample::has_charge_rate() const {
+  return _internal_has_charge_rate();
+}
+inline void BatterySample::clear_charge_rate() {
+  charge_rate_ = 0;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatterySample::_internal_charge_rate() const {
+  return charge_rate_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatterySample::charge_rate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatterySample.charge_rate)
+  return _internal_charge_rate();
+}
+inline void BatterySample::_internal_set_charge_rate(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000080u;
+  charge_rate_ = value;
+}
+inline void BatterySample::set_charge_rate(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_charge_rate(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatterySample.charge_rate)
+}
+
+// optional int64 current = 7;
+inline bool BatterySample::_internal_has_current() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool BatterySample::has_current() const {
+  return _internal_has_current();
+}
+inline void BatterySample::clear_current() {
+  current_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatterySample::_internal_current() const {
+  return current_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatterySample::current() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatterySample.current)
+  return _internal_current();
+}
+inline void BatterySample::_internal_set_current(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000040u;
+  current_ = value;
+}
+inline void BatterySample::set_current(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_current(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatterySample.current)
+}
+
+// optional string status = 8;
+inline bool BatterySample::_internal_has_status() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BatterySample::has_status() const {
+  return _internal_has_status();
+}
+inline void BatterySample::clear_status() {
+  status_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& BatterySample::status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatterySample.status)
+  return _internal_status();
+}
+inline void BatterySample::set_status(const std::string& value) {
+  _internal_set_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatterySample.status)
+}
+inline std::string* BatterySample::mutable_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BatterySample.status)
+  return _internal_mutable_status();
+}
+inline const std::string& BatterySample::_internal_status() const {
+  return status_.GetNoArena();
+}
+inline void BatterySample::_internal_set_status(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  status_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BatterySample::set_status(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  status_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BatterySample.status)
+}
+inline void BatterySample::set_status(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  status_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BatterySample.status)
+}
+inline void BatterySample::set_status(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  status_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BatterySample.status)
+}
+inline std::string* BatterySample::_internal_mutable_status() {
+  _has_bits_[0] |= 0x00000001u;
+  return status_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BatterySample::release_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BatterySample.status)
+  if (!_internal_has_status()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return status_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BatterySample::set_allocated_status(std::string* status) {
+  if (status != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  status_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), status);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BatterySample.status)
+}
+
+// -------------------------------------------------------------------
+
+// BatteryInfo
+
+// optional string serial = 1;
+inline bool BatteryInfo::_internal_has_serial() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_serial() const {
+  return _internal_has_serial();
+}
+inline void BatteryInfo::clear_serial() {
+  serial_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& BatteryInfo::serial() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.serial)
+  return _internal_serial();
+}
+inline void BatteryInfo::set_serial(const std::string& value) {
+  _internal_set_serial(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.serial)
+}
+inline std::string* BatteryInfo::mutable_serial() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BatteryInfo.serial)
+  return _internal_mutable_serial();
+}
+inline const std::string& BatteryInfo::_internal_serial() const {
+  return serial_.GetNoArena();
+}
+inline void BatteryInfo::_internal_set_serial(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BatteryInfo::set_serial(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BatteryInfo.serial)
+}
+inline void BatteryInfo::set_serial(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  serial_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BatteryInfo.serial)
+}
+inline void BatteryInfo::set_serial(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BatteryInfo.serial)
+}
+inline std::string* BatteryInfo::_internal_mutable_serial() {
+  _has_bits_[0] |= 0x00000001u;
+  return serial_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BatteryInfo::release_serial() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BatteryInfo.serial)
+  if (!_internal_has_serial()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return serial_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BatteryInfo::set_allocated_serial(std::string* serial) {
+  if (serial != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  serial_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), serial);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BatteryInfo.serial)
+}
+
+// optional string manufacturer = 2;
+inline bool BatteryInfo::_internal_has_manufacturer() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_manufacturer() const {
+  return _internal_has_manufacturer();
+}
+inline void BatteryInfo::clear_manufacturer() {
+  manufacturer_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& BatteryInfo::manufacturer() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.manufacturer)
+  return _internal_manufacturer();
+}
+inline void BatteryInfo::set_manufacturer(const std::string& value) {
+  _internal_set_manufacturer(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.manufacturer)
+}
+inline std::string* BatteryInfo::mutable_manufacturer() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BatteryInfo.manufacturer)
+  return _internal_mutable_manufacturer();
+}
+inline const std::string& BatteryInfo::_internal_manufacturer() const {
+  return manufacturer_.GetNoArena();
+}
+inline void BatteryInfo::_internal_set_manufacturer(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BatteryInfo::set_manufacturer(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  manufacturer_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BatteryInfo.manufacturer)
+}
+inline void BatteryInfo::set_manufacturer(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BatteryInfo.manufacturer)
+}
+inline void BatteryInfo::set_manufacturer(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BatteryInfo.manufacturer)
+}
+inline std::string* BatteryInfo::_internal_mutable_manufacturer() {
+  _has_bits_[0] |= 0x00000002u;
+  return manufacturer_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BatteryInfo::release_manufacturer() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BatteryInfo.manufacturer)
+  if (!_internal_has_manufacturer()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return manufacturer_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BatteryInfo::set_allocated_manufacturer(std::string* manufacturer) {
+  if (manufacturer != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  manufacturer_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), manufacturer);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BatteryInfo.manufacturer)
+}
+
+// optional string battery_health = 3;
+inline bool BatteryInfo::_internal_has_battery_health() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_battery_health() const {
+  return _internal_has_battery_health();
+}
+inline void BatteryInfo::clear_battery_health() {
+  battery_health_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& BatteryInfo::battery_health() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.battery_health)
+  return _internal_battery_health();
+}
+inline void BatteryInfo::set_battery_health(const std::string& value) {
+  _internal_set_battery_health(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.battery_health)
+}
+inline std::string* BatteryInfo::mutable_battery_health() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BatteryInfo.battery_health)
+  return _internal_mutable_battery_health();
+}
+inline const std::string& BatteryInfo::_internal_battery_health() const {
+  return battery_health_.GetNoArena();
+}
+inline void BatteryInfo::_internal_set_battery_health(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  battery_health_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BatteryInfo::set_battery_health(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  battery_health_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BatteryInfo.battery_health)
+}
+inline void BatteryInfo::set_battery_health(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  battery_health_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BatteryInfo.battery_health)
+}
+inline void BatteryInfo::set_battery_health(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  battery_health_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BatteryInfo.battery_health)
+}
+inline std::string* BatteryInfo::_internal_mutable_battery_health() {
+  _has_bits_[0] |= 0x00000004u;
+  return battery_health_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BatteryInfo::release_battery_health() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BatteryInfo.battery_health)
+  if (!_internal_has_battery_health()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return battery_health_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BatteryInfo::set_allocated_battery_health(std::string* battery_health) {
+  if (battery_health != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  battery_health_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), battery_health);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BatteryInfo.battery_health)
+}
+
+// optional int64 design_capacity = 4;
+inline bool BatteryInfo::_internal_has_design_capacity() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_design_capacity() const {
+  return _internal_has_design_capacity();
+}
+inline void BatteryInfo::clear_design_capacity() {
+  design_capacity_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatteryInfo::_internal_design_capacity() const {
+  return design_capacity_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatteryInfo::design_capacity() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.design_capacity)
+  return _internal_design_capacity();
+}
+inline void BatteryInfo::_internal_set_design_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000020u;
+  design_capacity_ = value;
+}
+inline void BatteryInfo::set_design_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_design_capacity(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.design_capacity)
+}
+
+// optional int64 full_charge_capacity = 5;
+inline bool BatteryInfo::_internal_has_full_charge_capacity() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_full_charge_capacity() const {
+  return _internal_has_full_charge_capacity();
+}
+inline void BatteryInfo::clear_full_charge_capacity() {
+  full_charge_capacity_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatteryInfo::_internal_full_charge_capacity() const {
+  return full_charge_capacity_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 BatteryInfo::full_charge_capacity() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.full_charge_capacity)
+  return _internal_full_charge_capacity();
+}
+inline void BatteryInfo::_internal_set_full_charge_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000040u;
+  full_charge_capacity_ = value;
+}
+inline void BatteryInfo::set_full_charge_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_full_charge_capacity(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.full_charge_capacity)
+}
+
+// optional int32 cycle_count = 6;
+inline bool BatteryInfo::_internal_has_cycle_count() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_cycle_count() const {
+  return _internal_has_cycle_count();
+}
+inline void BatteryInfo::clear_cycle_count() {
+  cycle_count_ = 0;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatteryInfo::_internal_cycle_count() const {
+  return cycle_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatteryInfo::cycle_count() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.cycle_count)
+  return _internal_cycle_count();
+}
+inline void BatteryInfo::_internal_set_cycle_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000080u;
+  cycle_count_ = value;
+}
+inline void BatteryInfo::set_cycle_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_cycle_count(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.cycle_count)
+}
+
+// repeated .enterprise_management.BatterySample samples = 7;
+inline int BatteryInfo::_internal_samples_size() const {
+  return samples_.size();
+}
+inline int BatteryInfo::samples_size() const {
+  return _internal_samples_size();
+}
+inline void BatteryInfo::clear_samples() {
+  samples_.Clear();
+}
+inline ::enterprise_management::BatterySample* BatteryInfo::mutable_samples(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BatteryInfo.samples)
+  return samples_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatterySample >*
+BatteryInfo::mutable_samples() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.BatteryInfo.samples)
+  return &samples_;
+}
+inline const ::enterprise_management::BatterySample& BatteryInfo::_internal_samples(int index) const {
+  return samples_.Get(index);
+}
+inline const ::enterprise_management::BatterySample& BatteryInfo::samples(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.samples)
+  return _internal_samples(index);
+}
+inline ::enterprise_management::BatterySample* BatteryInfo::_internal_add_samples() {
+  return samples_.Add();
+}
+inline ::enterprise_management::BatterySample* BatteryInfo::add_samples() {
+  // @@protoc_insertion_point(field_add:enterprise_management.BatteryInfo.samples)
+  return _internal_add_samples();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatterySample >&
+BatteryInfo::samples() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.BatteryInfo.samples)
+  return samples_;
+}
+
+// optional int32 design_min_voltage = 9;
+inline bool BatteryInfo::_internal_has_design_min_voltage() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_design_min_voltage() const {
+  return _internal_has_design_min_voltage();
+}
+inline void BatteryInfo::clear_design_min_voltage() {
+  design_min_voltage_ = 0;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatteryInfo::_internal_design_min_voltage() const {
+  return design_min_voltage_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 BatteryInfo::design_min_voltage() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.design_min_voltage)
+  return _internal_design_min_voltage();
+}
+inline void BatteryInfo::_internal_set_design_min_voltage(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000100u;
+  design_min_voltage_ = value;
+}
+inline void BatteryInfo::set_design_min_voltage(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_design_min_voltage(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.design_min_voltage)
+}
+
+// optional string manufacture_date = 10;
+inline bool BatteryInfo::_internal_has_manufacture_date() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_manufacture_date() const {
+  return _internal_has_manufacture_date();
+}
+inline void BatteryInfo::clear_manufacture_date() {
+  manufacture_date_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& BatteryInfo::manufacture_date() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.manufacture_date)
+  return _internal_manufacture_date();
+}
+inline void BatteryInfo::set_manufacture_date(const std::string& value) {
+  _internal_set_manufacture_date(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.manufacture_date)
+}
+inline std::string* BatteryInfo::mutable_manufacture_date() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BatteryInfo.manufacture_date)
+  return _internal_mutable_manufacture_date();
+}
+inline const std::string& BatteryInfo::_internal_manufacture_date() const {
+  return manufacture_date_.GetNoArena();
+}
+inline void BatteryInfo::_internal_set_manufacture_date(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BatteryInfo::set_manufacture_date(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  manufacture_date_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BatteryInfo.manufacture_date)
+}
+inline void BatteryInfo::set_manufacture_date(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BatteryInfo.manufacture_date)
+}
+inline void BatteryInfo::set_manufacture_date(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BatteryInfo.manufacture_date)
+}
+inline std::string* BatteryInfo::_internal_mutable_manufacture_date() {
+  _has_bits_[0] |= 0x00000008u;
+  return manufacture_date_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BatteryInfo::release_manufacture_date() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BatteryInfo.manufacture_date)
+  if (!_internal_has_manufacture_date()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return manufacture_date_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BatteryInfo::set_allocated_manufacture_date(std::string* manufacture_date) {
+  if (manufacture_date != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  manufacture_date_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), manufacture_date);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BatteryInfo.manufacture_date)
+}
+
+// optional string technology = 11;
+inline bool BatteryInfo::_internal_has_technology() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool BatteryInfo::has_technology() const {
+  return _internal_has_technology();
+}
+inline void BatteryInfo::clear_technology() {
+  technology_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& BatteryInfo::technology() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BatteryInfo.technology)
+  return _internal_technology();
+}
+inline void BatteryInfo::set_technology(const std::string& value) {
+  _internal_set_technology(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BatteryInfo.technology)
+}
+inline std::string* BatteryInfo::mutable_technology() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BatteryInfo.technology)
+  return _internal_mutable_technology();
+}
+inline const std::string& BatteryInfo::_internal_technology() const {
+  return technology_.GetNoArena();
+}
+inline void BatteryInfo::_internal_set_technology(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  technology_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BatteryInfo::set_technology(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  technology_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BatteryInfo.technology)
+}
+inline void BatteryInfo::set_technology(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  technology_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BatteryInfo.technology)
+}
+inline void BatteryInfo::set_technology(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  technology_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BatteryInfo.technology)
+}
+inline std::string* BatteryInfo::_internal_mutable_technology() {
+  _has_bits_[0] |= 0x00000010u;
+  return technology_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BatteryInfo::release_technology() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BatteryInfo.technology)
+  if (!_internal_has_technology()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return technology_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BatteryInfo::set_allocated_technology(std::string* technology) {
+  if (technology != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  technology_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), technology);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BatteryInfo.technology)
+}
+
+// -------------------------------------------------------------------
+
+// PowerStatus
+
+// optional .enterprise_management.PowerStatus.PowerSource power_source = 1;
+inline bool PowerStatus::_internal_has_power_source() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PowerStatus::has_power_source() const {
+  return _internal_has_power_source();
+}
+inline void PowerStatus::clear_power_source() {
+  power_source_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::PowerStatus_PowerSource PowerStatus::_internal_power_source() const {
+  return static_cast< ::enterprise_management::PowerStatus_PowerSource >(power_source_);
+}
+inline ::enterprise_management::PowerStatus_PowerSource PowerStatus::power_source() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PowerStatus.power_source)
+  return _internal_power_source();
+}
+inline void PowerStatus::_internal_set_power_source(::enterprise_management::PowerStatus_PowerSource value) {
+  assert(::enterprise_management::PowerStatus_PowerSource_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  power_source_ = value;
+}
+inline void PowerStatus::set_power_source(::enterprise_management::PowerStatus_PowerSource value) {
+  _internal_set_power_source(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PowerStatus.power_source)
+}
+
+// repeated .enterprise_management.BatteryInfo batteries = 2;
+inline int PowerStatus::_internal_batteries_size() const {
+  return batteries_.size();
+}
+inline int PowerStatus::batteries_size() const {
+  return _internal_batteries_size();
+}
+inline void PowerStatus::clear_batteries() {
+  batteries_.Clear();
+}
+inline ::enterprise_management::BatteryInfo* PowerStatus::mutable_batteries(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PowerStatus.batteries)
+  return batteries_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatteryInfo >*
+PowerStatus::mutable_batteries() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.PowerStatus.batteries)
+  return &batteries_;
+}
+inline const ::enterprise_management::BatteryInfo& PowerStatus::_internal_batteries(int index) const {
+  return batteries_.Get(index);
+}
+inline const ::enterprise_management::BatteryInfo& PowerStatus::batteries(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PowerStatus.batteries)
+  return _internal_batteries(index);
+}
+inline ::enterprise_management::BatteryInfo* PowerStatus::_internal_add_batteries() {
+  return batteries_.Add();
+}
+inline ::enterprise_management::BatteryInfo* PowerStatus::add_batteries() {
+  // @@protoc_insertion_point(field_add:enterprise_management.PowerStatus.batteries)
+  return _internal_add_batteries();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BatteryInfo >&
+PowerStatus::batteries() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.PowerStatus.batteries)
+  return batteries_;
+}
+
+// -------------------------------------------------------------------
+
+// DiskLifetimeEstimation
+
+// optional int32 slc = 1;
+inline bool DiskLifetimeEstimation::_internal_has_slc() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DiskLifetimeEstimation::has_slc() const {
+  return _internal_has_slc();
+}
+inline void DiskLifetimeEstimation::clear_slc() {
+  slc_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DiskLifetimeEstimation::_internal_slc() const {
+  return slc_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DiskLifetimeEstimation::slc() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskLifetimeEstimation.slc)
+  return _internal_slc();
+}
+inline void DiskLifetimeEstimation::_internal_set_slc(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  slc_ = value;
+}
+inline void DiskLifetimeEstimation::set_slc(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_slc(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskLifetimeEstimation.slc)
+}
+
+// optional int32 mlc = 2;
+inline bool DiskLifetimeEstimation::_internal_has_mlc() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DiskLifetimeEstimation::has_mlc() const {
+  return _internal_has_mlc();
+}
+inline void DiskLifetimeEstimation::clear_mlc() {
+  mlc_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DiskLifetimeEstimation::_internal_mlc() const {
+  return mlc_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DiskLifetimeEstimation::mlc() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskLifetimeEstimation.mlc)
+  return _internal_mlc();
+}
+inline void DiskLifetimeEstimation::_internal_set_mlc(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  mlc_ = value;
+}
+inline void DiskLifetimeEstimation::set_mlc(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_mlc(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskLifetimeEstimation.mlc)
+}
+
+// -------------------------------------------------------------------
+
+// DiskInfo
+
+// optional string serial = 1;
+inline bool DiskInfo::_internal_has_serial() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_serial() const {
+  return _internal_has_serial();
+}
+inline void DiskInfo::clear_serial() {
+  serial_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DiskInfo::serial() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.serial)
+  return _internal_serial();
+}
+inline void DiskInfo::set_serial(const std::string& value) {
+  _internal_set_serial(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.serial)
+}
+inline std::string* DiskInfo::mutable_serial() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DiskInfo.serial)
+  return _internal_mutable_serial();
+}
+inline const std::string& DiskInfo::_internal_serial() const {
+  return serial_.GetNoArena();
+}
+inline void DiskInfo::_internal_set_serial(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DiskInfo::set_serial(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DiskInfo.serial)
+}
+inline void DiskInfo::set_serial(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  serial_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DiskInfo.serial)
+}
+inline void DiskInfo::set_serial(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DiskInfo.serial)
+}
+inline std::string* DiskInfo::_internal_mutable_serial() {
+  _has_bits_[0] |= 0x00000001u;
+  return serial_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DiskInfo::release_serial() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DiskInfo.serial)
+  if (!_internal_has_serial()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return serial_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DiskInfo::set_allocated_serial(std::string* serial) {
+  if (serial != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  serial_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), serial);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DiskInfo.serial)
+}
+
+// optional string manufacturer = 2;
+inline bool DiskInfo::_internal_has_manufacturer() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_manufacturer() const {
+  return _internal_has_manufacturer();
+}
+inline void DiskInfo::clear_manufacturer() {
+  manufacturer_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DiskInfo::manufacturer() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.manufacturer)
+  return _internal_manufacturer();
+}
+inline void DiskInfo::set_manufacturer(const std::string& value) {
+  _internal_set_manufacturer(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.manufacturer)
+}
+inline std::string* DiskInfo::mutable_manufacturer() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DiskInfo.manufacturer)
+  return _internal_mutable_manufacturer();
+}
+inline const std::string& DiskInfo::_internal_manufacturer() const {
+  return manufacturer_.GetNoArena();
+}
+inline void DiskInfo::_internal_set_manufacturer(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DiskInfo::set_manufacturer(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  manufacturer_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DiskInfo.manufacturer)
+}
+inline void DiskInfo::set_manufacturer(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DiskInfo.manufacturer)
+}
+inline void DiskInfo::set_manufacturer(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DiskInfo.manufacturer)
+}
+inline std::string* DiskInfo::_internal_mutable_manufacturer() {
+  _has_bits_[0] |= 0x00000002u;
+  return manufacturer_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DiskInfo::release_manufacturer() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DiskInfo.manufacturer)
+  if (!_internal_has_manufacturer()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return manufacturer_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DiskInfo::set_allocated_manufacturer(std::string* manufacturer) {
+  if (manufacturer != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  manufacturer_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), manufacturer);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DiskInfo.manufacturer)
+}
+
+// optional string model = 3;
+inline bool DiskInfo::_internal_has_model() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_model() const {
+  return _internal_has_model();
+}
+inline void DiskInfo::clear_model() {
+  model_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& DiskInfo::model() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.model)
+  return _internal_model();
+}
+inline void DiskInfo::set_model(const std::string& value) {
+  _internal_set_model(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.model)
+}
+inline std::string* DiskInfo::mutable_model() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DiskInfo.model)
+  return _internal_mutable_model();
+}
+inline const std::string& DiskInfo::_internal_model() const {
+  return model_.GetNoArena();
+}
+inline void DiskInfo::_internal_set_model(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DiskInfo::set_model(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  model_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DiskInfo.model)
+}
+inline void DiskInfo::set_model(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DiskInfo.model)
+}
+inline void DiskInfo::set_model(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DiskInfo.model)
+}
+inline std::string* DiskInfo::_internal_mutable_model() {
+  _has_bits_[0] |= 0x00000004u;
+  return model_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DiskInfo::release_model() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DiskInfo.model)
+  if (!_internal_has_model()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return model_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DiskInfo::set_allocated_model(std::string* model) {
+  if (model != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  model_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), model);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DiskInfo.model)
+}
+
+// optional int64 size = 4;
+inline bool DiskInfo::_internal_has_size() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_size() const {
+  return _internal_has_size();
+}
+inline void DiskInfo::clear_size() {
+  size_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DiskInfo::_internal_size() const {
+  return size_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DiskInfo::size() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.size)
+  return _internal_size();
+}
+inline void DiskInfo::_internal_set_size(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000020u;
+  size_ = value;
+}
+inline void DiskInfo::set_size(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_size(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.size)
+}
+
+// optional string type = 5;
+inline bool DiskInfo::_internal_has_type() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_type() const {
+  return _internal_has_type();
+}
+inline void DiskInfo::clear_type() {
+  type_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& DiskInfo::type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.type)
+  return _internal_type();
+}
+inline void DiskInfo::set_type(const std::string& value) {
+  _internal_set_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.type)
+}
+inline std::string* DiskInfo::mutable_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DiskInfo.type)
+  return _internal_mutable_type();
+}
+inline const std::string& DiskInfo::_internal_type() const {
+  return type_.GetNoArena();
+}
+inline void DiskInfo::_internal_set_type(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DiskInfo::set_type(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  type_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DiskInfo.type)
+}
+inline void DiskInfo::set_type(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DiskInfo.type)
+}
+inline void DiskInfo::set_type(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DiskInfo.type)
+}
+inline std::string* DiskInfo::_internal_mutable_type() {
+  _has_bits_[0] |= 0x00000008u;
+  return type_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DiskInfo::release_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DiskInfo.type)
+  if (!_internal_has_type()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return type_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DiskInfo::set_allocated_type(std::string* type) {
+  if (type != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  type_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), type);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DiskInfo.type)
+}
+
+// optional string health = 6;
+inline bool DiskInfo::_internal_has_health() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_health() const {
+  return _internal_has_health();
+}
+inline void DiskInfo::clear_health() {
+  health_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& DiskInfo::health() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.health)
+  return _internal_health();
+}
+inline void DiskInfo::set_health(const std::string& value) {
+  _internal_set_health(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.health)
+}
+inline std::string* DiskInfo::mutable_health() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DiskInfo.health)
+  return _internal_mutable_health();
+}
+inline const std::string& DiskInfo::_internal_health() const {
+  return health_.GetNoArena();
+}
+inline void DiskInfo::_internal_set_health(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  health_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DiskInfo::set_health(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  health_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DiskInfo.health)
+}
+inline void DiskInfo::set_health(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  health_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DiskInfo.health)
+}
+inline void DiskInfo::set_health(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  health_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DiskInfo.health)
+}
+inline std::string* DiskInfo::_internal_mutable_health() {
+  _has_bits_[0] |= 0x00000010u;
+  return health_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DiskInfo::release_health() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DiskInfo.health)
+  if (!_internal_has_health()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return health_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DiskInfo::set_allocated_health(std::string* health) {
+  if (health != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  health_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), health);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DiskInfo.health)
+}
+
+// repeated string volumes = 7;
+inline int DiskInfo::_internal_volumes_size() const {
+  return volumes_.size();
+}
+inline int DiskInfo::volumes_size() const {
+  return _internal_volumes_size();
+}
+inline void DiskInfo::clear_volumes() {
+  volumes_.Clear();
+}
+inline std::string* DiskInfo::add_volumes() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DiskInfo.volumes)
+  return _internal_add_volumes();
+}
+inline const std::string& DiskInfo::_internal_volumes(int index) const {
+  return volumes_.Get(index);
+}
+inline const std::string& DiskInfo::volumes(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.volumes)
+  return _internal_volumes(index);
+}
+inline std::string* DiskInfo::mutable_volumes(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DiskInfo.volumes)
+  return volumes_.Mutable(index);
+}
+inline void DiskInfo::set_volumes(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.volumes)
+  volumes_.Mutable(index)->assign(value);
+}
+inline void DiskInfo::set_volumes(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.volumes)
+  volumes_.Mutable(index)->assign(std::move(value));
+}
+inline void DiskInfo::set_volumes(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  volumes_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DiskInfo.volumes)
+}
+inline void DiskInfo::set_volumes(int index, const char* value, size_t size) {
+  volumes_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DiskInfo.volumes)
+}
+inline std::string* DiskInfo::_internal_add_volumes() {
+  return volumes_.Add();
+}
+inline void DiskInfo::add_volumes(const std::string& value) {
+  volumes_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DiskInfo.volumes)
+}
+inline void DiskInfo::add_volumes(std::string&& value) {
+  volumes_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DiskInfo.volumes)
+}
+inline void DiskInfo::add_volumes(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  volumes_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DiskInfo.volumes)
+}
+inline void DiskInfo::add_volumes(const char* value, size_t size) {
+  volumes_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DiskInfo.volumes)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DiskInfo::volumes() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DiskInfo.volumes)
+  return volumes_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DiskInfo::mutable_volumes() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DiskInfo.volumes)
+  return &volumes_;
+}
+
+// optional uint64 bytes_read_since_last_boot = 8;
+inline bool DiskInfo::_internal_has_bytes_read_since_last_boot() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_bytes_read_since_last_boot() const {
+  return _internal_has_bytes_read_since_last_boot();
+}
+inline void DiskInfo::clear_bytes_read_since_last_boot() {
+  bytes_read_since_last_boot_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::_internal_bytes_read_since_last_boot() const {
+  return bytes_read_since_last_boot_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::bytes_read_since_last_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.bytes_read_since_last_boot)
+  return _internal_bytes_read_since_last_boot();
+}
+inline void DiskInfo::_internal_set_bytes_read_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000040u;
+  bytes_read_since_last_boot_ = value;
+}
+inline void DiskInfo::set_bytes_read_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_bytes_read_since_last_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.bytes_read_since_last_boot)
+}
+
+// optional uint64 bytes_written_since_last_boot = 9;
+inline bool DiskInfo::_internal_has_bytes_written_since_last_boot() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_bytes_written_since_last_boot() const {
+  return _internal_has_bytes_written_since_last_boot();
+}
+inline void DiskInfo::clear_bytes_written_since_last_boot() {
+  bytes_written_since_last_boot_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::_internal_bytes_written_since_last_boot() const {
+  return bytes_written_since_last_boot_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::bytes_written_since_last_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.bytes_written_since_last_boot)
+  return _internal_bytes_written_since_last_boot();
+}
+inline void DiskInfo::_internal_set_bytes_written_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000080u;
+  bytes_written_since_last_boot_ = value;
+}
+inline void DiskInfo::set_bytes_written_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_bytes_written_since_last_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.bytes_written_since_last_boot)
+}
+
+// optional uint64 read_time_seconds_since_last_boot = 10;
+inline bool DiskInfo::_internal_has_read_time_seconds_since_last_boot() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_read_time_seconds_since_last_boot() const {
+  return _internal_has_read_time_seconds_since_last_boot();
+}
+inline void DiskInfo::clear_read_time_seconds_since_last_boot() {
+  read_time_seconds_since_last_boot_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::_internal_read_time_seconds_since_last_boot() const {
+  return read_time_seconds_since_last_boot_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::read_time_seconds_since_last_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.read_time_seconds_since_last_boot)
+  return _internal_read_time_seconds_since_last_boot();
+}
+inline void DiskInfo::_internal_set_read_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000100u;
+  read_time_seconds_since_last_boot_ = value;
+}
+inline void DiskInfo::set_read_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_read_time_seconds_since_last_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.read_time_seconds_since_last_boot)
+}
+
+// optional uint64 write_time_seconds_since_last_boot = 11;
+inline bool DiskInfo::_internal_has_write_time_seconds_since_last_boot() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_write_time_seconds_since_last_boot() const {
+  return _internal_has_write_time_seconds_since_last_boot();
+}
+inline void DiskInfo::clear_write_time_seconds_since_last_boot() {
+  write_time_seconds_since_last_boot_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::_internal_write_time_seconds_since_last_boot() const {
+  return write_time_seconds_since_last_boot_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::write_time_seconds_since_last_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.write_time_seconds_since_last_boot)
+  return _internal_write_time_seconds_since_last_boot();
+}
+inline void DiskInfo::_internal_set_write_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000200u;
+  write_time_seconds_since_last_boot_ = value;
+}
+inline void DiskInfo::set_write_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_write_time_seconds_since_last_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.write_time_seconds_since_last_boot)
+}
+
+// optional uint64 io_time_seconds_since_last_boot = 12;
+inline bool DiskInfo::_internal_has_io_time_seconds_since_last_boot() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_io_time_seconds_since_last_boot() const {
+  return _internal_has_io_time_seconds_since_last_boot();
+}
+inline void DiskInfo::clear_io_time_seconds_since_last_boot() {
+  io_time_seconds_since_last_boot_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::_internal_io_time_seconds_since_last_boot() const {
+  return io_time_seconds_since_last_boot_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::io_time_seconds_since_last_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.io_time_seconds_since_last_boot)
+  return _internal_io_time_seconds_since_last_boot();
+}
+inline void DiskInfo::_internal_set_io_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000400u;
+  io_time_seconds_since_last_boot_ = value;
+}
+inline void DiskInfo::set_io_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_io_time_seconds_since_last_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.io_time_seconds_since_last_boot)
+}
+
+// optional uint64 discard_time_seconds_since_last_boot = 13;
+inline bool DiskInfo::_internal_has_discard_time_seconds_since_last_boot() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_discard_time_seconds_since_last_boot() const {
+  return _internal_has_discard_time_seconds_since_last_boot();
+}
+inline void DiskInfo::clear_discard_time_seconds_since_last_boot() {
+  discard_time_seconds_since_last_boot_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::_internal_discard_time_seconds_since_last_boot() const {
+  return discard_time_seconds_since_last_boot_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::discard_time_seconds_since_last_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.discard_time_seconds_since_last_boot)
+  return _internal_discard_time_seconds_since_last_boot();
+}
+inline void DiskInfo::_internal_set_discard_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000800u;
+  discard_time_seconds_since_last_boot_ = value;
+}
+inline void DiskInfo::set_discard_time_seconds_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_discard_time_seconds_since_last_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.discard_time_seconds_since_last_boot)
+}
+
+// optional uint32 nvme_subsystem_vendor = 14;
+inline bool DiskInfo::_internal_has_nvme_subsystem_vendor() const {
+  return vendor_id_case() == kNvmeSubsystemVendor;
+}
+inline bool DiskInfo::has_nvme_subsystem_vendor() const {
+  return _internal_has_nvme_subsystem_vendor();
+}
+inline void DiskInfo::set_has_nvme_subsystem_vendor() {
+  _oneof_case_[0] = kNvmeSubsystemVendor;
+}
+inline void DiskInfo::clear_nvme_subsystem_vendor() {
+  if (_internal_has_nvme_subsystem_vendor()) {
+    vendor_id_.nvme_subsystem_vendor_ = 0u;
+    clear_has_vendor_id();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_nvme_subsystem_vendor() const {
+  if (_internal_has_nvme_subsystem_vendor()) {
+    return vendor_id_.nvme_subsystem_vendor_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_nvme_subsystem_vendor(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_nvme_subsystem_vendor()) {
+    clear_vendor_id();
+    set_has_nvme_subsystem_vendor();
+  }
+  vendor_id_.nvme_subsystem_vendor_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::nvme_subsystem_vendor() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.nvme_subsystem_vendor)
+  return _internal_nvme_subsystem_vendor();
+}
+inline void DiskInfo::set_nvme_subsystem_vendor(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_nvme_subsystem_vendor(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.nvme_subsystem_vendor)
+}
+
+// optional uint32 emmc_oemid = 15;
+inline bool DiskInfo::_internal_has_emmc_oemid() const {
+  return vendor_id_case() == kEmmcOemid;
+}
+inline bool DiskInfo::has_emmc_oemid() const {
+  return _internal_has_emmc_oemid();
+}
+inline void DiskInfo::set_has_emmc_oemid() {
+  _oneof_case_[0] = kEmmcOemid;
+}
+inline void DiskInfo::clear_emmc_oemid() {
+  if (_internal_has_emmc_oemid()) {
+    vendor_id_.emmc_oemid_ = 0u;
+    clear_has_vendor_id();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_emmc_oemid() const {
+  if (_internal_has_emmc_oemid()) {
+    return vendor_id_.emmc_oemid_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_emmc_oemid(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_emmc_oemid()) {
+    clear_vendor_id();
+    set_has_emmc_oemid();
+  }
+  vendor_id_.emmc_oemid_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::emmc_oemid() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.emmc_oemid)
+  return _internal_emmc_oemid();
+}
+inline void DiskInfo::set_emmc_oemid(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_emmc_oemid(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.emmc_oemid)
+}
+
+// optional uint32 other_vendor = 16;
+inline bool DiskInfo::_internal_has_other_vendor() const {
+  return vendor_id_case() == kOtherVendor;
+}
+inline bool DiskInfo::has_other_vendor() const {
+  return _internal_has_other_vendor();
+}
+inline void DiskInfo::set_has_other_vendor() {
+  _oneof_case_[0] = kOtherVendor;
+}
+inline void DiskInfo::clear_other_vendor() {
+  if (_internal_has_other_vendor()) {
+    vendor_id_.other_vendor_ = 0u;
+    clear_has_vendor_id();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_other_vendor() const {
+  if (_internal_has_other_vendor()) {
+    return vendor_id_.other_vendor_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_other_vendor(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_other_vendor()) {
+    clear_vendor_id();
+    set_has_other_vendor();
+  }
+  vendor_id_.other_vendor_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::other_vendor() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.other_vendor)
+  return _internal_other_vendor();
+}
+inline void DiskInfo::set_other_vendor(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_other_vendor(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.other_vendor)
+}
+
+// optional uint32 nvme_subsystem_device = 17;
+inline bool DiskInfo::_internal_has_nvme_subsystem_device() const {
+  return product_id_case() == kNvmeSubsystemDevice;
+}
+inline bool DiskInfo::has_nvme_subsystem_device() const {
+  return _internal_has_nvme_subsystem_device();
+}
+inline void DiskInfo::set_has_nvme_subsystem_device() {
+  _oneof_case_[1] = kNvmeSubsystemDevice;
+}
+inline void DiskInfo::clear_nvme_subsystem_device() {
+  if (_internal_has_nvme_subsystem_device()) {
+    product_id_.nvme_subsystem_device_ = 0u;
+    clear_has_product_id();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_nvme_subsystem_device() const {
+  if (_internal_has_nvme_subsystem_device()) {
+    return product_id_.nvme_subsystem_device_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_nvme_subsystem_device(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_nvme_subsystem_device()) {
+    clear_product_id();
+    set_has_nvme_subsystem_device();
+  }
+  product_id_.nvme_subsystem_device_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::nvme_subsystem_device() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.nvme_subsystem_device)
+  return _internal_nvme_subsystem_device();
+}
+inline void DiskInfo::set_nvme_subsystem_device(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_nvme_subsystem_device(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.nvme_subsystem_device)
+}
+
+// optional uint32 emmc_pnm = 18;
+inline bool DiskInfo::_internal_has_emmc_pnm() const {
+  return product_id_case() == kEmmcPnm;
+}
+inline bool DiskInfo::has_emmc_pnm() const {
+  return _internal_has_emmc_pnm();
+}
+inline void DiskInfo::set_has_emmc_pnm() {
+  _oneof_case_[1] = kEmmcPnm;
+}
+inline void DiskInfo::clear_emmc_pnm() {
+  if (_internal_has_emmc_pnm()) {
+    product_id_.emmc_pnm_ = 0u;
+    clear_has_product_id();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_emmc_pnm() const {
+  if (_internal_has_emmc_pnm()) {
+    return product_id_.emmc_pnm_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_emmc_pnm(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_emmc_pnm()) {
+    clear_product_id();
+    set_has_emmc_pnm();
+  }
+  product_id_.emmc_pnm_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::emmc_pnm() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.emmc_pnm)
+  return _internal_emmc_pnm();
+}
+inline void DiskInfo::set_emmc_pnm(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_emmc_pnm(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.emmc_pnm)
+}
+
+// optional uint32 other_product = 19;
+inline bool DiskInfo::_internal_has_other_product() const {
+  return product_id_case() == kOtherProduct;
+}
+inline bool DiskInfo::has_other_product() const {
+  return _internal_has_other_product();
+}
+inline void DiskInfo::set_has_other_product() {
+  _oneof_case_[1] = kOtherProduct;
+}
+inline void DiskInfo::clear_other_product() {
+  if (_internal_has_other_product()) {
+    product_id_.other_product_ = 0u;
+    clear_has_product_id();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_other_product() const {
+  if (_internal_has_other_product()) {
+    return product_id_.other_product_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_other_product(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_other_product()) {
+    clear_product_id();
+    set_has_other_product();
+  }
+  product_id_.other_product_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::other_product() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.other_product)
+  return _internal_other_product();
+}
+inline void DiskInfo::set_other_product(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_other_product(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.other_product)
+}
+
+// optional uint32 nvme_hardware_rev = 20;
+inline bool DiskInfo::_internal_has_nvme_hardware_rev() const {
+  return hardware_revision_case() == kNvmeHardwareRev;
+}
+inline bool DiskInfo::has_nvme_hardware_rev() const {
+  return _internal_has_nvme_hardware_rev();
+}
+inline void DiskInfo::set_has_nvme_hardware_rev() {
+  _oneof_case_[2] = kNvmeHardwareRev;
+}
+inline void DiskInfo::clear_nvme_hardware_rev() {
+  if (_internal_has_nvme_hardware_rev()) {
+    hardware_revision_.nvme_hardware_rev_ = 0u;
+    clear_has_hardware_revision();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_nvme_hardware_rev() const {
+  if (_internal_has_nvme_hardware_rev()) {
+    return hardware_revision_.nvme_hardware_rev_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_nvme_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_nvme_hardware_rev()) {
+    clear_hardware_revision();
+    set_has_nvme_hardware_rev();
+  }
+  hardware_revision_.nvme_hardware_rev_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::nvme_hardware_rev() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.nvme_hardware_rev)
+  return _internal_nvme_hardware_rev();
+}
+inline void DiskInfo::set_nvme_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_nvme_hardware_rev(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.nvme_hardware_rev)
+}
+
+// optional uint32 emmc_hardware_rev = 21;
+inline bool DiskInfo::_internal_has_emmc_hardware_rev() const {
+  return hardware_revision_case() == kEmmcHardwareRev;
+}
+inline bool DiskInfo::has_emmc_hardware_rev() const {
+  return _internal_has_emmc_hardware_rev();
+}
+inline void DiskInfo::set_has_emmc_hardware_rev() {
+  _oneof_case_[2] = kEmmcHardwareRev;
+}
+inline void DiskInfo::clear_emmc_hardware_rev() {
+  if (_internal_has_emmc_hardware_rev()) {
+    hardware_revision_.emmc_hardware_rev_ = 0u;
+    clear_has_hardware_revision();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_emmc_hardware_rev() const {
+  if (_internal_has_emmc_hardware_rev()) {
+    return hardware_revision_.emmc_hardware_rev_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_emmc_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_emmc_hardware_rev()) {
+    clear_hardware_revision();
+    set_has_emmc_hardware_rev();
+  }
+  hardware_revision_.emmc_hardware_rev_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::emmc_hardware_rev() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.emmc_hardware_rev)
+  return _internal_emmc_hardware_rev();
+}
+inline void DiskInfo::set_emmc_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_emmc_hardware_rev(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.emmc_hardware_rev)
+}
+
+// optional uint32 other_hardware_rev = 22;
+inline bool DiskInfo::_internal_has_other_hardware_rev() const {
+  return hardware_revision_case() == kOtherHardwareRev;
+}
+inline bool DiskInfo::has_other_hardware_rev() const {
+  return _internal_has_other_hardware_rev();
+}
+inline void DiskInfo::set_has_other_hardware_rev() {
+  _oneof_case_[2] = kOtherHardwareRev;
+}
+inline void DiskInfo::clear_other_hardware_rev() {
+  if (_internal_has_other_hardware_rev()) {
+    hardware_revision_.other_hardware_rev_ = 0u;
+    clear_has_hardware_revision();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_other_hardware_rev() const {
+  if (_internal_has_other_hardware_rev()) {
+    return hardware_revision_.other_hardware_rev_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_other_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_other_hardware_rev()) {
+    clear_hardware_revision();
+    set_has_other_hardware_rev();
+  }
+  hardware_revision_.other_hardware_rev_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::other_hardware_rev() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.other_hardware_rev)
+  return _internal_other_hardware_rev();
+}
+inline void DiskInfo::set_other_hardware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_other_hardware_rev(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.other_hardware_rev)
+}
+
+// optional uint64 nvme_firmware_rev = 23;
+inline bool DiskInfo::_internal_has_nvme_firmware_rev() const {
+  return firmware_revision_case() == kNvmeFirmwareRev;
+}
+inline bool DiskInfo::has_nvme_firmware_rev() const {
+  return _internal_has_nvme_firmware_rev();
+}
+inline void DiskInfo::set_has_nvme_firmware_rev() {
+  _oneof_case_[3] = kNvmeFirmwareRev;
+}
+inline void DiskInfo::clear_nvme_firmware_rev() {
+  if (_internal_has_nvme_firmware_rev()) {
+    firmware_revision_.nvme_firmware_rev_ = PROTOBUF_ULONGLONG(0);
+    clear_has_firmware_revision();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::_internal_nvme_firmware_rev() const {
+  if (_internal_has_nvme_firmware_rev()) {
+    return firmware_revision_.nvme_firmware_rev_;
+  }
+  return PROTOBUF_ULONGLONG(0);
+}
+inline void DiskInfo::_internal_set_nvme_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  if (!_internal_has_nvme_firmware_rev()) {
+    clear_firmware_revision();
+    set_has_nvme_firmware_rev();
+  }
+  firmware_revision_.nvme_firmware_rev_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::nvme_firmware_rev() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.nvme_firmware_rev)
+  return _internal_nvme_firmware_rev();
+}
+inline void DiskInfo::set_nvme_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_nvme_firmware_rev(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.nvme_firmware_rev)
+}
+
+// optional uint64 emmc_firmware_rev = 24;
+inline bool DiskInfo::_internal_has_emmc_firmware_rev() const {
+  return firmware_revision_case() == kEmmcFirmwareRev;
+}
+inline bool DiskInfo::has_emmc_firmware_rev() const {
+  return _internal_has_emmc_firmware_rev();
+}
+inline void DiskInfo::set_has_emmc_firmware_rev() {
+  _oneof_case_[3] = kEmmcFirmwareRev;
+}
+inline void DiskInfo::clear_emmc_firmware_rev() {
+  if (_internal_has_emmc_firmware_rev()) {
+    firmware_revision_.emmc_firmware_rev_ = PROTOBUF_ULONGLONG(0);
+    clear_has_firmware_revision();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::_internal_emmc_firmware_rev() const {
+  if (_internal_has_emmc_firmware_rev()) {
+    return firmware_revision_.emmc_firmware_rev_;
+  }
+  return PROTOBUF_ULONGLONG(0);
+}
+inline void DiskInfo::_internal_set_emmc_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  if (!_internal_has_emmc_firmware_rev()) {
+    clear_firmware_revision();
+    set_has_emmc_firmware_rev();
+  }
+  firmware_revision_.emmc_firmware_rev_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 DiskInfo::emmc_firmware_rev() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.emmc_firmware_rev)
+  return _internal_emmc_firmware_rev();
+}
+inline void DiskInfo::set_emmc_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_emmc_firmware_rev(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.emmc_firmware_rev)
+}
+
+// optional uint32 other_firmware_rev = 25;
+inline bool DiskInfo::_internal_has_other_firmware_rev() const {
+  return firmware_revision_case() == kOtherFirmwareRev;
+}
+inline bool DiskInfo::has_other_firmware_rev() const {
+  return _internal_has_other_firmware_rev();
+}
+inline void DiskInfo::set_has_other_firmware_rev() {
+  _oneof_case_[3] = kOtherFirmwareRev;
+}
+inline void DiskInfo::clear_other_firmware_rev() {
+  if (_internal_has_other_firmware_rev()) {
+    firmware_revision_.other_firmware_rev_ = 0u;
+    clear_has_firmware_revision();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::_internal_other_firmware_rev() const {
+  if (_internal_has_other_firmware_rev()) {
+    return firmware_revision_.other_firmware_rev_;
+  }
+  return 0u;
+}
+inline void DiskInfo::_internal_set_other_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  if (!_internal_has_other_firmware_rev()) {
+    clear_firmware_revision();
+    set_has_other_firmware_rev();
+  }
+  firmware_revision_.other_firmware_rev_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DiskInfo::other_firmware_rev() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.other_firmware_rev)
+  return _internal_other_firmware_rev();
+}
+inline void DiskInfo::set_other_firmware_rev(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_other_firmware_rev(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.other_firmware_rev)
+}
+
+// optional .enterprise_management.DiskInfo.DevicePurpose purpose = 26;
+inline bool DiskInfo::_internal_has_purpose() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool DiskInfo::has_purpose() const {
+  return _internal_has_purpose();
+}
+inline void DiskInfo::clear_purpose() {
+  purpose_ = 0;
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline ::enterprise_management::DiskInfo_DevicePurpose DiskInfo::_internal_purpose() const {
+  return static_cast< ::enterprise_management::DiskInfo_DevicePurpose >(purpose_);
+}
+inline ::enterprise_management::DiskInfo_DevicePurpose DiskInfo::purpose() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DiskInfo.purpose)
+  return _internal_purpose();
+}
+inline void DiskInfo::_internal_set_purpose(::enterprise_management::DiskInfo_DevicePurpose value) {
+  assert(::enterprise_management::DiskInfo_DevicePurpose_IsValid(value));
+  _has_bits_[0] |= 0x00001000u;
+  purpose_ = value;
+}
+inline void DiskInfo::set_purpose(::enterprise_management::DiskInfo_DevicePurpose value) {
+  _internal_set_purpose(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DiskInfo.purpose)
+}
+
+inline bool DiskInfo::has_vendor_id() const {
+  return vendor_id_case() != VENDOR_ID_NOT_SET;
+}
+inline void DiskInfo::clear_has_vendor_id() {
+  _oneof_case_[0] = VENDOR_ID_NOT_SET;
+}
+inline bool DiskInfo::has_product_id() const {
+  return product_id_case() != PRODUCT_ID_NOT_SET;
+}
+inline void DiskInfo::clear_has_product_id() {
+  _oneof_case_[1] = PRODUCT_ID_NOT_SET;
+}
+inline bool DiskInfo::has_hardware_revision() const {
+  return hardware_revision_case() != HARDWARE_REVISION_NOT_SET;
+}
+inline void DiskInfo::clear_has_hardware_revision() {
+  _oneof_case_[2] = HARDWARE_REVISION_NOT_SET;
+}
+inline bool DiskInfo::has_firmware_revision() const {
+  return firmware_revision_case() != FIRMWARE_REVISION_NOT_SET;
+}
+inline void DiskInfo::clear_has_firmware_revision() {
+  _oneof_case_[3] = FIRMWARE_REVISION_NOT_SET;
+}
+inline DiskInfo::VendorIdCase DiskInfo::vendor_id_case() const {
+  return DiskInfo::VendorIdCase(_oneof_case_[0]);
+}
+inline DiskInfo::ProductIdCase DiskInfo::product_id_case() const {
+  return DiskInfo::ProductIdCase(_oneof_case_[1]);
+}
+inline DiskInfo::HardwareRevisionCase DiskInfo::hardware_revision_case() const {
+  return DiskInfo::HardwareRevisionCase(_oneof_case_[2]);
+}
+inline DiskInfo::FirmwareRevisionCase DiskInfo::firmware_revision_case() const {
+  return DiskInfo::FirmwareRevisionCase(_oneof_case_[3]);
+}
+// -------------------------------------------------------------------
+
+// StorageStatus
+
+// repeated .enterprise_management.DiskInfo disks = 1;
+inline int StorageStatus::_internal_disks_size() const {
+  return disks_.size();
+}
+inline int StorageStatus::disks_size() const {
+  return _internal_disks_size();
+}
+inline void StorageStatus::clear_disks() {
+  disks_.Clear();
+}
+inline ::enterprise_management::DiskInfo* StorageStatus::mutable_disks(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StorageStatus.disks)
+  return disks_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DiskInfo >*
+StorageStatus::mutable_disks() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.StorageStatus.disks)
+  return &disks_;
+}
+inline const ::enterprise_management::DiskInfo& StorageStatus::_internal_disks(int index) const {
+  return disks_.Get(index);
+}
+inline const ::enterprise_management::DiskInfo& StorageStatus::disks(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StorageStatus.disks)
+  return _internal_disks(index);
+}
+inline ::enterprise_management::DiskInfo* StorageStatus::_internal_add_disks() {
+  return disks_.Add();
+}
+inline ::enterprise_management::DiskInfo* StorageStatus::add_disks() {
+  // @@protoc_insertion_point(field_add:enterprise_management.StorageStatus.disks)
+  return _internal_add_disks();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DiskInfo >&
+StorageStatus::disks() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.StorageStatus.disks)
+  return disks_;
+}
+
+// optional .enterprise_management.DiskLifetimeEstimation lifetime_estimation = 2;
+inline bool StorageStatus::_internal_has_lifetime_estimation() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || lifetime_estimation_ != nullptr);
+  return value;
+}
+inline bool StorageStatus::has_lifetime_estimation() const {
+  return _internal_has_lifetime_estimation();
+}
+inline void StorageStatus::clear_lifetime_estimation() {
+  if (lifetime_estimation_ != nullptr) lifetime_estimation_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::DiskLifetimeEstimation& StorageStatus::_internal_lifetime_estimation() const {
+  const ::enterprise_management::DiskLifetimeEstimation* p = lifetime_estimation_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DiskLifetimeEstimation*>(
+      &::enterprise_management::_DiskLifetimeEstimation_default_instance_);
+}
+inline const ::enterprise_management::DiskLifetimeEstimation& StorageStatus::lifetime_estimation() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StorageStatus.lifetime_estimation)
+  return _internal_lifetime_estimation();
+}
+inline ::enterprise_management::DiskLifetimeEstimation* StorageStatus::release_lifetime_estimation() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StorageStatus.lifetime_estimation)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::DiskLifetimeEstimation* temp = lifetime_estimation_;
+  lifetime_estimation_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DiskLifetimeEstimation* StorageStatus::_internal_mutable_lifetime_estimation() {
+  _has_bits_[0] |= 0x00000001u;
+  if (lifetime_estimation_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DiskLifetimeEstimation>(GetArenaNoVirtual());
+    lifetime_estimation_ = p;
+  }
+  return lifetime_estimation_;
+}
+inline ::enterprise_management::DiskLifetimeEstimation* StorageStatus::mutable_lifetime_estimation() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StorageStatus.lifetime_estimation)
+  return _internal_mutable_lifetime_estimation();
+}
+inline void StorageStatus::set_allocated_lifetime_estimation(::enterprise_management::DiskLifetimeEstimation* lifetime_estimation) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete lifetime_estimation_;
+  }
+  if (lifetime_estimation) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      lifetime_estimation = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, lifetime_estimation, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  lifetime_estimation_ = lifetime_estimation;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StorageStatus.lifetime_estimation)
+}
+
+// -------------------------------------------------------------------
+
+// ThermalSample
+
+// optional int64 timestamp = 1;
+inline bool ThermalSample::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ThermalSample::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void ThermalSample::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ThermalSample::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ThermalSample::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ThermalSample.timestamp)
+  return _internal_timestamp();
+}
+inline void ThermalSample::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  timestamp_ = value;
+}
+inline void ThermalSample::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ThermalSample.timestamp)
+}
+
+// optional int32 temperature = 2;
+inline bool ThermalSample::_internal_has_temperature() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ThermalSample::has_temperature() const {
+  return _internal_has_temperature();
+}
+inline void ThermalSample::clear_temperature() {
+  temperature_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ThermalSample::_internal_temperature() const {
+  return temperature_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ThermalSample::temperature() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ThermalSample.temperature)
+  return _internal_temperature();
+}
+inline void ThermalSample::_internal_set_temperature(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  temperature_ = value;
+}
+inline void ThermalSample::set_temperature(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_temperature(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ThermalSample.temperature)
+}
+
+// -------------------------------------------------------------------
+
+// ThermalInfo
+
+// optional string label = 1;
+inline bool ThermalInfo::_internal_has_label() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ThermalInfo::has_label() const {
+  return _internal_has_label();
+}
+inline void ThermalInfo::clear_label() {
+  label_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ThermalInfo::label() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ThermalInfo.label)
+  return _internal_label();
+}
+inline void ThermalInfo::set_label(const std::string& value) {
+  _internal_set_label(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ThermalInfo.label)
+}
+inline std::string* ThermalInfo::mutable_label() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ThermalInfo.label)
+  return _internal_mutable_label();
+}
+inline const std::string& ThermalInfo::_internal_label() const {
+  return label_.GetNoArena();
+}
+inline void ThermalInfo::_internal_set_label(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  label_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ThermalInfo::set_label(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  label_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ThermalInfo.label)
+}
+inline void ThermalInfo::set_label(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  label_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ThermalInfo.label)
+}
+inline void ThermalInfo::set_label(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  label_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ThermalInfo.label)
+}
+inline std::string* ThermalInfo::_internal_mutable_label() {
+  _has_bits_[0] |= 0x00000001u;
+  return label_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ThermalInfo::release_label() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ThermalInfo.label)
+  if (!_internal_has_label()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return label_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ThermalInfo::set_allocated_label(std::string* label) {
+  if (label != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  label_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), label);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ThermalInfo.label)
+}
+
+// repeated .enterprise_management.ThermalSample samples = 3;
+inline int ThermalInfo::_internal_samples_size() const {
+  return samples_.size();
+}
+inline int ThermalInfo::samples_size() const {
+  return _internal_samples_size();
+}
+inline void ThermalInfo::clear_samples() {
+  samples_.Clear();
+}
+inline ::enterprise_management::ThermalSample* ThermalInfo::mutable_samples(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ThermalInfo.samples)
+  return samples_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalSample >*
+ThermalInfo::mutable_samples() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ThermalInfo.samples)
+  return &samples_;
+}
+inline const ::enterprise_management::ThermalSample& ThermalInfo::_internal_samples(int index) const {
+  return samples_.Get(index);
+}
+inline const ::enterprise_management::ThermalSample& ThermalInfo::samples(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ThermalInfo.samples)
+  return _internal_samples(index);
+}
+inline ::enterprise_management::ThermalSample* ThermalInfo::_internal_add_samples() {
+  return samples_.Add();
+}
+inline ::enterprise_management::ThermalSample* ThermalInfo::add_samples() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ThermalInfo.samples)
+  return _internal_add_samples();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalSample >&
+ThermalInfo::samples() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ThermalInfo.samples)
+  return samples_;
+}
+
+// -------------------------------------------------------------------
+
+// BoardStatus
+
+// repeated .enterprise_management.ThermalInfo thermal_infos = 1;
+inline int BoardStatus::_internal_thermal_infos_size() const {
+  return thermal_infos_.size();
+}
+inline int BoardStatus::thermal_infos_size() const {
+  return _internal_thermal_infos_size();
+}
+inline void BoardStatus::clear_thermal_infos() {
+  thermal_infos_.Clear();
+}
+inline ::enterprise_management::ThermalInfo* BoardStatus::mutable_thermal_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BoardStatus.thermal_infos)
+  return thermal_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalInfo >*
+BoardStatus::mutable_thermal_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.BoardStatus.thermal_infos)
+  return &thermal_infos_;
+}
+inline const ::enterprise_management::ThermalInfo& BoardStatus::_internal_thermal_infos(int index) const {
+  return thermal_infos_.Get(index);
+}
+inline const ::enterprise_management::ThermalInfo& BoardStatus::thermal_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BoardStatus.thermal_infos)
+  return _internal_thermal_infos(index);
+}
+inline ::enterprise_management::ThermalInfo* BoardStatus::_internal_add_thermal_infos() {
+  return thermal_infos_.Add();
+}
+inline ::enterprise_management::ThermalInfo* BoardStatus::add_thermal_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.BoardStatus.thermal_infos)
+  return _internal_add_thermal_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ThermalInfo >&
+BoardStatus::thermal_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.BoardStatus.thermal_infos)
+  return thermal_infos_;
+}
+
+// -------------------------------------------------------------------
+
+// SystemStatus
+
+// optional string vpd_sku_number = 1;
+inline bool SystemStatus::_internal_has_vpd_sku_number() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_vpd_sku_number() const {
+  return _internal_has_vpd_sku_number();
+}
+inline void SystemStatus::clear_vpd_sku_number() {
+  vpd_sku_number_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemStatus::vpd_sku_number() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.vpd_sku_number)
+  return _internal_vpd_sku_number();
+}
+inline void SystemStatus::set_vpd_sku_number(const std::string& value) {
+  _internal_set_vpd_sku_number(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.vpd_sku_number)
+}
+inline std::string* SystemStatus::mutable_vpd_sku_number() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.vpd_sku_number)
+  return _internal_mutable_vpd_sku_number();
+}
+inline const std::string& SystemStatus::_internal_vpd_sku_number() const {
+  return vpd_sku_number_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_vpd_sku_number(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vpd_sku_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_vpd_sku_number(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vpd_sku_number_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.vpd_sku_number)
+}
+inline void SystemStatus::set_vpd_sku_number(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  vpd_sku_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.vpd_sku_number)
+}
+inline void SystemStatus::set_vpd_sku_number(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  vpd_sku_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.vpd_sku_number)
+}
+inline std::string* SystemStatus::_internal_mutable_vpd_sku_number() {
+  _has_bits_[0] |= 0x00000001u;
+  return vpd_sku_number_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_vpd_sku_number() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.vpd_sku_number)
+  if (!_internal_has_vpd_sku_number()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return vpd_sku_number_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_vpd_sku_number(std::string* vpd_sku_number) {
+  if (vpd_sku_number != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  vpd_sku_number_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), vpd_sku_number);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.vpd_sku_number)
+}
+
+// optional string first_power_date = 2;
+inline bool SystemStatus::_internal_has_first_power_date() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_first_power_date() const {
+  return _internal_has_first_power_date();
+}
+inline void SystemStatus::clear_first_power_date() {
+  first_power_date_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemStatus::first_power_date() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.first_power_date)
+  return _internal_first_power_date();
+}
+inline void SystemStatus::set_first_power_date(const std::string& value) {
+  _internal_set_first_power_date(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.first_power_date)
+}
+inline std::string* SystemStatus::mutable_first_power_date() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.first_power_date)
+  return _internal_mutable_first_power_date();
+}
+inline const std::string& SystemStatus::_internal_first_power_date() const {
+  return first_power_date_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_first_power_date(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  first_power_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_first_power_date(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  first_power_date_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.first_power_date)
+}
+inline void SystemStatus::set_first_power_date(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  first_power_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.first_power_date)
+}
+inline void SystemStatus::set_first_power_date(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  first_power_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.first_power_date)
+}
+inline std::string* SystemStatus::_internal_mutable_first_power_date() {
+  _has_bits_[0] |= 0x00000002u;
+  return first_power_date_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_first_power_date() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.first_power_date)
+  if (!_internal_has_first_power_date()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return first_power_date_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_first_power_date(std::string* first_power_date) {
+  if (first_power_date != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  first_power_date_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), first_power_date);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.first_power_date)
+}
+
+// optional string manufacture_date = 3;
+inline bool SystemStatus::_internal_has_manufacture_date() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_manufacture_date() const {
+  return _internal_has_manufacture_date();
+}
+inline void SystemStatus::clear_manufacture_date() {
+  manufacture_date_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SystemStatus::manufacture_date() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.manufacture_date)
+  return _internal_manufacture_date();
+}
+inline void SystemStatus::set_manufacture_date(const std::string& value) {
+  _internal_set_manufacture_date(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.manufacture_date)
+}
+inline std::string* SystemStatus::mutable_manufacture_date() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.manufacture_date)
+  return _internal_mutable_manufacture_date();
+}
+inline const std::string& SystemStatus::_internal_manufacture_date() const {
+  return manufacture_date_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_manufacture_date(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_manufacture_date(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  manufacture_date_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.manufacture_date)
+}
+inline void SystemStatus::set_manufacture_date(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.manufacture_date)
+}
+inline void SystemStatus::set_manufacture_date(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  manufacture_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.manufacture_date)
+}
+inline std::string* SystemStatus::_internal_mutable_manufacture_date() {
+  _has_bits_[0] |= 0x00000004u;
+  return manufacture_date_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_manufacture_date() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.manufacture_date)
+  if (!_internal_has_manufacture_date()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return manufacture_date_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_manufacture_date(std::string* manufacture_date) {
+  if (manufacture_date != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  manufacture_date_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), manufacture_date);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.manufacture_date)
+}
+
+// optional string marketing_name = 4;
+inline bool SystemStatus::_internal_has_marketing_name() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_marketing_name() const {
+  return _internal_has_marketing_name();
+}
+inline void SystemStatus::clear_marketing_name() {
+  marketing_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& SystemStatus::marketing_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.marketing_name)
+  return _internal_marketing_name();
+}
+inline void SystemStatus::set_marketing_name(const std::string& value) {
+  _internal_set_marketing_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.marketing_name)
+}
+inline std::string* SystemStatus::mutable_marketing_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.marketing_name)
+  return _internal_mutable_marketing_name();
+}
+inline const std::string& SystemStatus::_internal_marketing_name() const {
+  return marketing_name_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_marketing_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  marketing_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_marketing_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  marketing_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.marketing_name)
+}
+inline void SystemStatus::set_marketing_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  marketing_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.marketing_name)
+}
+inline void SystemStatus::set_marketing_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  marketing_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.marketing_name)
+}
+inline std::string* SystemStatus::_internal_mutable_marketing_name() {
+  _has_bits_[0] |= 0x00000008u;
+  return marketing_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_marketing_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.marketing_name)
+  if (!_internal_has_marketing_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return marketing_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_marketing_name(std::string* marketing_name) {
+  if (marketing_name != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  marketing_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), marketing_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.marketing_name)
+}
+
+// optional string bios_version = 5;
+inline bool SystemStatus::_internal_has_bios_version() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_bios_version() const {
+  return _internal_has_bios_version();
+}
+inline void SystemStatus::clear_bios_version() {
+  bios_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& SystemStatus::bios_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.bios_version)
+  return _internal_bios_version();
+}
+inline void SystemStatus::set_bios_version(const std::string& value) {
+  _internal_set_bios_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.bios_version)
+}
+inline std::string* SystemStatus::mutable_bios_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.bios_version)
+  return _internal_mutable_bios_version();
+}
+inline const std::string& SystemStatus::_internal_bios_version() const {
+  return bios_version_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_bios_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  bios_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_bios_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  bios_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.bios_version)
+}
+inline void SystemStatus::set_bios_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  bios_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.bios_version)
+}
+inline void SystemStatus::set_bios_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  bios_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.bios_version)
+}
+inline std::string* SystemStatus::_internal_mutable_bios_version() {
+  _has_bits_[0] |= 0x00000010u;
+  return bios_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_bios_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.bios_version)
+  if (!_internal_has_bios_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return bios_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_bios_version(std::string* bios_version) {
+  if (bios_version != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  bios_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), bios_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.bios_version)
+}
+
+// optional string board_name = 6;
+inline bool SystemStatus::_internal_has_board_name() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_board_name() const {
+  return _internal_has_board_name();
+}
+inline void SystemStatus::clear_board_name() {
+  board_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& SystemStatus::board_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.board_name)
+  return _internal_board_name();
+}
+inline void SystemStatus::set_board_name(const std::string& value) {
+  _internal_set_board_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.board_name)
+}
+inline std::string* SystemStatus::mutable_board_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.board_name)
+  return _internal_mutable_board_name();
+}
+inline const std::string& SystemStatus::_internal_board_name() const {
+  return board_name_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_board_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  board_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_board_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  board_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.board_name)
+}
+inline void SystemStatus::set_board_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  board_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.board_name)
+}
+inline void SystemStatus::set_board_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  board_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.board_name)
+}
+inline std::string* SystemStatus::_internal_mutable_board_name() {
+  _has_bits_[0] |= 0x00000020u;
+  return board_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_board_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.board_name)
+  if (!_internal_has_board_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return board_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_board_name(std::string* board_name) {
+  if (board_name != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  board_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), board_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.board_name)
+}
+
+// optional string board_version = 7;
+inline bool SystemStatus::_internal_has_board_version() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_board_version() const {
+  return _internal_has_board_version();
+}
+inline void SystemStatus::clear_board_version() {
+  board_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const std::string& SystemStatus::board_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.board_version)
+  return _internal_board_version();
+}
+inline void SystemStatus::set_board_version(const std::string& value) {
+  _internal_set_board_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.board_version)
+}
+inline std::string* SystemStatus::mutable_board_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.board_version)
+  return _internal_mutable_board_version();
+}
+inline const std::string& SystemStatus::_internal_board_version() const {
+  return board_version_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_board_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000040u;
+  board_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_board_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000040u;
+  board_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.board_version)
+}
+inline void SystemStatus::set_board_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000040u;
+  board_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.board_version)
+}
+inline void SystemStatus::set_board_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000040u;
+  board_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.board_version)
+}
+inline std::string* SystemStatus::_internal_mutable_board_version() {
+  _has_bits_[0] |= 0x00000040u;
+  return board_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_board_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.board_version)
+  if (!_internal_has_board_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000040u;
+  return board_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_board_version(std::string* board_version) {
+  if (board_version != nullptr) {
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  board_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), board_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.board_version)
+}
+
+// optional uint64 chassis_type = 8;
+inline bool SystemStatus::_internal_has_chassis_type() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_chassis_type() const {
+  return _internal_has_chassis_type();
+}
+inline void SystemStatus::clear_chassis_type() {
+  chassis_type_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 SystemStatus::_internal_chassis_type() const {
+  return chassis_type_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 SystemStatus::chassis_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.chassis_type)
+  return _internal_chassis_type();
+}
+inline void SystemStatus::_internal_set_chassis_type(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000200u;
+  chassis_type_ = value;
+}
+inline void SystemStatus::set_chassis_type(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_chassis_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.chassis_type)
+}
+
+// optional string product_name = 9;
+inline bool SystemStatus::_internal_has_product_name() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_product_name() const {
+  return _internal_has_product_name();
+}
+inline void SystemStatus::clear_product_name() {
+  product_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const std::string& SystemStatus::product_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.product_name)
+  return _internal_product_name();
+}
+inline void SystemStatus::set_product_name(const std::string& value) {
+  _internal_set_product_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.product_name)
+}
+inline std::string* SystemStatus::mutable_product_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.product_name)
+  return _internal_mutable_product_name();
+}
+inline const std::string& SystemStatus::_internal_product_name() const {
+  return product_name_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_product_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000080u;
+  product_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_product_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000080u;
+  product_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.product_name)
+}
+inline void SystemStatus::set_product_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000080u;
+  product_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.product_name)
+}
+inline void SystemStatus::set_product_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000080u;
+  product_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.product_name)
+}
+inline std::string* SystemStatus::_internal_mutable_product_name() {
+  _has_bits_[0] |= 0x00000080u;
+  return product_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_product_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.product_name)
+  if (!_internal_has_product_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000080u;
+  return product_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_product_name(std::string* product_name) {
+  if (product_name != nullptr) {
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  product_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), product_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.product_name)
+}
+
+// optional string vpd_serial_number = 10;
+inline bool SystemStatus::_internal_has_vpd_serial_number() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool SystemStatus::has_vpd_serial_number() const {
+  return _internal_has_vpd_serial_number();
+}
+inline void SystemStatus::clear_vpd_serial_number() {
+  vpd_serial_number_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const std::string& SystemStatus::vpd_serial_number() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemStatus.vpd_serial_number)
+  return _internal_vpd_serial_number();
+}
+inline void SystemStatus::set_vpd_serial_number(const std::string& value) {
+  _internal_set_vpd_serial_number(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SystemStatus.vpd_serial_number)
+}
+inline std::string* SystemStatus::mutable_vpd_serial_number() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemStatus.vpd_serial_number)
+  return _internal_mutable_vpd_serial_number();
+}
+inline const std::string& SystemStatus::_internal_vpd_serial_number() const {
+  return vpd_serial_number_.GetNoArena();
+}
+inline void SystemStatus::_internal_set_vpd_serial_number(const std::string& value) {
+  _has_bits_[0] |= 0x00000100u;
+  vpd_serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemStatus::set_vpd_serial_number(std::string&& value) {
+  _has_bits_[0] |= 0x00000100u;
+  vpd_serial_number_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SystemStatus.vpd_serial_number)
+}
+inline void SystemStatus::set_vpd_serial_number(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000100u;
+  vpd_serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SystemStatus.vpd_serial_number)
+}
+inline void SystemStatus::set_vpd_serial_number(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000100u;
+  vpd_serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SystemStatus.vpd_serial_number)
+}
+inline std::string* SystemStatus::_internal_mutable_vpd_serial_number() {
+  _has_bits_[0] |= 0x00000100u;
+  return vpd_serial_number_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemStatus::release_vpd_serial_number() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SystemStatus.vpd_serial_number)
+  if (!_internal_has_vpd_serial_number()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000100u;
+  return vpd_serial_number_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemStatus::set_allocated_vpd_serial_number(std::string* vpd_serial_number) {
+  if (vpd_serial_number != nullptr) {
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  vpd_serial_number_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), vpd_serial_number);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SystemStatus.vpd_serial_number)
+}
+
+// -------------------------------------------------------------------
+
+// CpuCStateInfo
+
+// optional string name = 1;
+inline bool CpuCStateInfo::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CpuCStateInfo::has_name() const {
+  return _internal_has_name();
+}
+inline void CpuCStateInfo::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CpuCStateInfo::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CpuCStateInfo.name)
+  return _internal_name();
+}
+inline void CpuCStateInfo::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CpuCStateInfo.name)
+}
+inline std::string* CpuCStateInfo::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CpuCStateInfo.name)
+  return _internal_mutable_name();
+}
+inline const std::string& CpuCStateInfo::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void CpuCStateInfo::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CpuCStateInfo::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CpuCStateInfo.name)
+}
+inline void CpuCStateInfo::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CpuCStateInfo.name)
+}
+inline void CpuCStateInfo::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CpuCStateInfo.name)
+}
+inline std::string* CpuCStateInfo::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CpuCStateInfo::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CpuCStateInfo.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CpuCStateInfo::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CpuCStateInfo.name)
+}
+
+// optional uint64 time_in_state_since_last_boot_us = 2;
+inline bool CpuCStateInfo::_internal_has_time_in_state_since_last_boot_us() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CpuCStateInfo::has_time_in_state_since_last_boot_us() const {
+  return _internal_has_time_in_state_since_last_boot_us();
+}
+inline void CpuCStateInfo::clear_time_in_state_since_last_boot_us() {
+  time_in_state_since_last_boot_us_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 CpuCStateInfo::_internal_time_in_state_since_last_boot_us() const {
+  return time_in_state_since_last_boot_us_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 CpuCStateInfo::time_in_state_since_last_boot_us() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CpuCStateInfo.time_in_state_since_last_boot_us)
+  return _internal_time_in_state_since_last_boot_us();
+}
+inline void CpuCStateInfo::_internal_set_time_in_state_since_last_boot_us(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  time_in_state_since_last_boot_us_ = value;
+}
+inline void CpuCStateInfo::set_time_in_state_since_last_boot_us(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_time_in_state_since_last_boot_us(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CpuCStateInfo.time_in_state_since_last_boot_us)
+}
+
+// -------------------------------------------------------------------
+
+// LogicalCpuInfo
+
+// optional uint32 scaling_max_frequency_khz = 1;
+inline bool LogicalCpuInfo::_internal_has_scaling_max_frequency_khz() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool LogicalCpuInfo::has_scaling_max_frequency_khz() const {
+  return _internal_has_scaling_max_frequency_khz();
+}
+inline void LogicalCpuInfo::clear_scaling_max_frequency_khz() {
+  scaling_max_frequency_khz_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 LogicalCpuInfo::_internal_scaling_max_frequency_khz() const {
+  return scaling_max_frequency_khz_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 LogicalCpuInfo::scaling_max_frequency_khz() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LogicalCpuInfo.scaling_max_frequency_khz)
+  return _internal_scaling_max_frequency_khz();
+}
+inline void LogicalCpuInfo::_internal_set_scaling_max_frequency_khz(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  scaling_max_frequency_khz_ = value;
+}
+inline void LogicalCpuInfo::set_scaling_max_frequency_khz(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_scaling_max_frequency_khz(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.LogicalCpuInfo.scaling_max_frequency_khz)
+}
+
+// optional uint32 scaling_current_frequency_khz = 2;
+inline bool LogicalCpuInfo::_internal_has_scaling_current_frequency_khz() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool LogicalCpuInfo::has_scaling_current_frequency_khz() const {
+  return _internal_has_scaling_current_frequency_khz();
+}
+inline void LogicalCpuInfo::clear_scaling_current_frequency_khz() {
+  scaling_current_frequency_khz_ = 0u;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 LogicalCpuInfo::_internal_scaling_current_frequency_khz() const {
+  return scaling_current_frequency_khz_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 LogicalCpuInfo::scaling_current_frequency_khz() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LogicalCpuInfo.scaling_current_frequency_khz)
+  return _internal_scaling_current_frequency_khz();
+}
+inline void LogicalCpuInfo::_internal_set_scaling_current_frequency_khz(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  scaling_current_frequency_khz_ = value;
+}
+inline void LogicalCpuInfo::set_scaling_current_frequency_khz(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_scaling_current_frequency_khz(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.LogicalCpuInfo.scaling_current_frequency_khz)
+}
+
+// optional uint64 idle_time_seconds = 3;
+inline bool LogicalCpuInfo::_internal_has_idle_time_seconds() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool LogicalCpuInfo::has_idle_time_seconds() const {
+  return _internal_has_idle_time_seconds();
+}
+inline void LogicalCpuInfo::clear_idle_time_seconds() {
+  idle_time_seconds_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 LogicalCpuInfo::_internal_idle_time_seconds() const {
+  return idle_time_seconds_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 LogicalCpuInfo::idle_time_seconds() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LogicalCpuInfo.idle_time_seconds)
+  return _internal_idle_time_seconds();
+}
+inline void LogicalCpuInfo::_internal_set_idle_time_seconds(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  idle_time_seconds_ = value;
+}
+inline void LogicalCpuInfo::set_idle_time_seconds(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_idle_time_seconds(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.LogicalCpuInfo.idle_time_seconds)
+}
+
+// repeated .enterprise_management.CpuCStateInfo c_states = 4;
+inline int LogicalCpuInfo::_internal_c_states_size() const {
+  return c_states_.size();
+}
+inline int LogicalCpuInfo::c_states_size() const {
+  return _internal_c_states_size();
+}
+inline void LogicalCpuInfo::clear_c_states() {
+  c_states_.Clear();
+}
+inline ::enterprise_management::CpuCStateInfo* LogicalCpuInfo::mutable_c_states(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LogicalCpuInfo.c_states)
+  return c_states_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuCStateInfo >*
+LogicalCpuInfo::mutable_c_states() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.LogicalCpuInfo.c_states)
+  return &c_states_;
+}
+inline const ::enterprise_management::CpuCStateInfo& LogicalCpuInfo::_internal_c_states(int index) const {
+  return c_states_.Get(index);
+}
+inline const ::enterprise_management::CpuCStateInfo& LogicalCpuInfo::c_states(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LogicalCpuInfo.c_states)
+  return _internal_c_states(index);
+}
+inline ::enterprise_management::CpuCStateInfo* LogicalCpuInfo::_internal_add_c_states() {
+  return c_states_.Add();
+}
+inline ::enterprise_management::CpuCStateInfo* LogicalCpuInfo::add_c_states() {
+  // @@protoc_insertion_point(field_add:enterprise_management.LogicalCpuInfo.c_states)
+  return _internal_add_c_states();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuCStateInfo >&
+LogicalCpuInfo::c_states() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.LogicalCpuInfo.c_states)
+  return c_states_;
+}
+
+// -------------------------------------------------------------------
+
+// CpuInfo
+
+// optional string model_name = 1;
+inline bool CpuInfo::_internal_has_model_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CpuInfo::has_model_name() const {
+  return _internal_has_model_name();
+}
+inline void CpuInfo::clear_model_name() {
+  model_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CpuInfo::model_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CpuInfo.model_name)
+  return _internal_model_name();
+}
+inline void CpuInfo::set_model_name(const std::string& value) {
+  _internal_set_model_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CpuInfo.model_name)
+}
+inline std::string* CpuInfo::mutable_model_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CpuInfo.model_name)
+  return _internal_mutable_model_name();
+}
+inline const std::string& CpuInfo::_internal_model_name() const {
+  return model_name_.GetNoArena();
+}
+inline void CpuInfo::_internal_set_model_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CpuInfo::set_model_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  model_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CpuInfo.model_name)
+}
+inline void CpuInfo::set_model_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CpuInfo.model_name)
+}
+inline void CpuInfo::set_model_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CpuInfo.model_name)
+}
+inline std::string* CpuInfo::_internal_mutable_model_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return model_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CpuInfo::release_model_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CpuInfo.model_name)
+  if (!_internal_has_model_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return model_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CpuInfo::set_allocated_model_name(std::string* model_name) {
+  if (model_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  model_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), model_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CpuInfo.model_name)
+}
+
+// optional .enterprise_management.CpuInfo.Architecture architecture = 2;
+inline bool CpuInfo::_internal_has_architecture() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CpuInfo::has_architecture() const {
+  return _internal_has_architecture();
+}
+inline void CpuInfo::clear_architecture() {
+  architecture_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::enterprise_management::CpuInfo_Architecture CpuInfo::_internal_architecture() const {
+  return static_cast< ::enterprise_management::CpuInfo_Architecture >(architecture_);
+}
+inline ::enterprise_management::CpuInfo_Architecture CpuInfo::architecture() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CpuInfo.architecture)
+  return _internal_architecture();
+}
+inline void CpuInfo::_internal_set_architecture(::enterprise_management::CpuInfo_Architecture value) {
+  assert(::enterprise_management::CpuInfo_Architecture_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  architecture_ = value;
+}
+inline void CpuInfo::set_architecture(::enterprise_management::CpuInfo_Architecture value) {
+  _internal_set_architecture(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CpuInfo.architecture)
+}
+
+// optional uint32 max_clock_speed_khz = 3;
+inline bool CpuInfo::_internal_has_max_clock_speed_khz() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool CpuInfo::has_max_clock_speed_khz() const {
+  return _internal_has_max_clock_speed_khz();
+}
+inline void CpuInfo::clear_max_clock_speed_khz() {
+  max_clock_speed_khz_ = 0u;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 CpuInfo::_internal_max_clock_speed_khz() const {
+  return max_clock_speed_khz_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 CpuInfo::max_clock_speed_khz() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CpuInfo.max_clock_speed_khz)
+  return _internal_max_clock_speed_khz();
+}
+inline void CpuInfo::_internal_set_max_clock_speed_khz(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  max_clock_speed_khz_ = value;
+}
+inline void CpuInfo::set_max_clock_speed_khz(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_max_clock_speed_khz(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CpuInfo.max_clock_speed_khz)
+}
+
+// repeated .enterprise_management.LogicalCpuInfo logical_cpus = 4;
+inline int CpuInfo::_internal_logical_cpus_size() const {
+  return logical_cpus_.size();
+}
+inline int CpuInfo::logical_cpus_size() const {
+  return _internal_logical_cpus_size();
+}
+inline void CpuInfo::clear_logical_cpus() {
+  logical_cpus_.Clear();
+}
+inline ::enterprise_management::LogicalCpuInfo* CpuInfo::mutable_logical_cpus(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CpuInfo.logical_cpus)
+  return logical_cpus_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LogicalCpuInfo >*
+CpuInfo::mutable_logical_cpus() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.CpuInfo.logical_cpus)
+  return &logical_cpus_;
+}
+inline const ::enterprise_management::LogicalCpuInfo& CpuInfo::_internal_logical_cpus(int index) const {
+  return logical_cpus_.Get(index);
+}
+inline const ::enterprise_management::LogicalCpuInfo& CpuInfo::logical_cpus(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CpuInfo.logical_cpus)
+  return _internal_logical_cpus(index);
+}
+inline ::enterprise_management::LogicalCpuInfo* CpuInfo::_internal_add_logical_cpus() {
+  return logical_cpus_.Add();
+}
+inline ::enterprise_management::LogicalCpuInfo* CpuInfo::add_logical_cpus() {
+  // @@protoc_insertion_point(field_add:enterprise_management.CpuInfo.logical_cpus)
+  return _internal_add_logical_cpus();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LogicalCpuInfo >&
+CpuInfo::logical_cpus() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.CpuInfo.logical_cpus)
+  return logical_cpus_;
+}
+
+// -------------------------------------------------------------------
+
+// GlobalCpuInfo
+
+// optional uint32 num_total_threads = 1;
+inline bool GlobalCpuInfo::_internal_has_num_total_threads() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool GlobalCpuInfo::has_num_total_threads() const {
+  return _internal_has_num_total_threads();
+}
+inline void GlobalCpuInfo::clear_num_total_threads() {
+  num_total_threads_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 GlobalCpuInfo::_internal_num_total_threads() const {
+  return num_total_threads_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 GlobalCpuInfo::num_total_threads() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GlobalCpuInfo.num_total_threads)
+  return _internal_num_total_threads();
+}
+inline void GlobalCpuInfo::_internal_set_num_total_threads(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  num_total_threads_ = value;
+}
+inline void GlobalCpuInfo::set_num_total_threads(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_num_total_threads(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.GlobalCpuInfo.num_total_threads)
+}
+
+// -------------------------------------------------------------------
+
+// DisplayInfo
+
+// optional uint32 resolution_width = 1;
+inline bool DisplayInfo::_internal_has_resolution_width() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DisplayInfo::has_resolution_width() const {
+  return _internal_has_resolution_width();
+}
+inline void DisplayInfo::clear_resolution_width() {
+  resolution_width_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DisplayInfo::_internal_resolution_width() const {
+  return resolution_width_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DisplayInfo::resolution_width() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DisplayInfo.resolution_width)
+  return _internal_resolution_width();
+}
+inline void DisplayInfo::_internal_set_resolution_width(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  resolution_width_ = value;
+}
+inline void DisplayInfo::set_resolution_width(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_resolution_width(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DisplayInfo.resolution_width)
+}
+
+// optional uint32 resolution_height = 2;
+inline bool DisplayInfo::_internal_has_resolution_height() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DisplayInfo::has_resolution_height() const {
+  return _internal_has_resolution_height();
+}
+inline void DisplayInfo::clear_resolution_height() {
+  resolution_height_ = 0u;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DisplayInfo::_internal_resolution_height() const {
+  return resolution_height_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DisplayInfo::resolution_height() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DisplayInfo.resolution_height)
+  return _internal_resolution_height();
+}
+inline void DisplayInfo::_internal_set_resolution_height(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  resolution_height_ = value;
+}
+inline void DisplayInfo::set_resolution_height(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_resolution_height(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DisplayInfo.resolution_height)
+}
+
+// optional uint32 refresh_rate = 3;
+inline bool DisplayInfo::_internal_has_refresh_rate() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DisplayInfo::has_refresh_rate() const {
+  return _internal_has_refresh_rate();
+}
+inline void DisplayInfo::clear_refresh_rate() {
+  refresh_rate_ = 0u;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DisplayInfo::_internal_refresh_rate() const {
+  return refresh_rate_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 DisplayInfo::refresh_rate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DisplayInfo.refresh_rate)
+  return _internal_refresh_rate();
+}
+inline void DisplayInfo::_internal_set_refresh_rate(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  refresh_rate_ = value;
+}
+inline void DisplayInfo::set_refresh_rate(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_refresh_rate(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DisplayInfo.refresh_rate)
+}
+
+// optional bool is_internal = 4;
+inline bool DisplayInfo::_internal_has_is_internal() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DisplayInfo::has_is_internal() const {
+  return _internal_has_is_internal();
+}
+inline void DisplayInfo::clear_is_internal() {
+  is_internal_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool DisplayInfo::_internal_is_internal() const {
+  return is_internal_;
+}
+inline bool DisplayInfo::is_internal() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DisplayInfo.is_internal)
+  return _internal_is_internal();
+}
+inline void DisplayInfo::_internal_set_is_internal(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  is_internal_ = value;
+}
+inline void DisplayInfo::set_is_internal(bool value) {
+  _internal_set_is_internal(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DisplayInfo.is_internal)
+}
+
+// -------------------------------------------------------------------
+
+// GraphicsAdapterInfo
+
+// optional string name = 1;
+inline bool GraphicsAdapterInfo::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool GraphicsAdapterInfo::has_name() const {
+  return _internal_has_name();
+}
+inline void GraphicsAdapterInfo::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& GraphicsAdapterInfo::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GraphicsAdapterInfo.name)
+  return _internal_name();
+}
+inline void GraphicsAdapterInfo::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.GraphicsAdapterInfo.name)
+}
+inline std::string* GraphicsAdapterInfo::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.GraphicsAdapterInfo.name)
+  return _internal_mutable_name();
+}
+inline const std::string& GraphicsAdapterInfo::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void GraphicsAdapterInfo::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void GraphicsAdapterInfo::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.GraphicsAdapterInfo.name)
+}
+inline void GraphicsAdapterInfo::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.GraphicsAdapterInfo.name)
+}
+inline void GraphicsAdapterInfo::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.GraphicsAdapterInfo.name)
+}
+inline std::string* GraphicsAdapterInfo::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* GraphicsAdapterInfo::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.GraphicsAdapterInfo.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void GraphicsAdapterInfo::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.GraphicsAdapterInfo.name)
+}
+
+// optional string driver_version = 2;
+inline bool GraphicsAdapterInfo::_internal_has_driver_version() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool GraphicsAdapterInfo::has_driver_version() const {
+  return _internal_has_driver_version();
+}
+inline void GraphicsAdapterInfo::clear_driver_version() {
+  driver_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& GraphicsAdapterInfo::driver_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GraphicsAdapterInfo.driver_version)
+  return _internal_driver_version();
+}
+inline void GraphicsAdapterInfo::set_driver_version(const std::string& value) {
+  _internal_set_driver_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.GraphicsAdapterInfo.driver_version)
+}
+inline std::string* GraphicsAdapterInfo::mutable_driver_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.GraphicsAdapterInfo.driver_version)
+  return _internal_mutable_driver_version();
+}
+inline const std::string& GraphicsAdapterInfo::_internal_driver_version() const {
+  return driver_version_.GetNoArena();
+}
+inline void GraphicsAdapterInfo::_internal_set_driver_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  driver_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void GraphicsAdapterInfo::set_driver_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  driver_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.GraphicsAdapterInfo.driver_version)
+}
+inline void GraphicsAdapterInfo::set_driver_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  driver_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.GraphicsAdapterInfo.driver_version)
+}
+inline void GraphicsAdapterInfo::set_driver_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  driver_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.GraphicsAdapterInfo.driver_version)
+}
+inline std::string* GraphicsAdapterInfo::_internal_mutable_driver_version() {
+  _has_bits_[0] |= 0x00000002u;
+  return driver_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* GraphicsAdapterInfo::release_driver_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.GraphicsAdapterInfo.driver_version)
+  if (!_internal_has_driver_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return driver_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void GraphicsAdapterInfo::set_allocated_driver_version(std::string* driver_version) {
+  if (driver_version != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  driver_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), driver_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.GraphicsAdapterInfo.driver_version)
+}
+
+// optional uint64 device_id = 3;
+inline bool GraphicsAdapterInfo::_internal_has_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool GraphicsAdapterInfo::has_device_id() const {
+  return _internal_has_device_id();
+}
+inline void GraphicsAdapterInfo::clear_device_id() {
+  device_id_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 GraphicsAdapterInfo::_internal_device_id() const {
+  return device_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 GraphicsAdapterInfo::device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GraphicsAdapterInfo.device_id)
+  return _internal_device_id();
+}
+inline void GraphicsAdapterInfo::_internal_set_device_id(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  device_id_ = value;
+}
+inline void GraphicsAdapterInfo::set_device_id(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.GraphicsAdapterInfo.device_id)
+}
+
+// optional uint64 system_ram_usage = 4;
+inline bool GraphicsAdapterInfo::_internal_has_system_ram_usage() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool GraphicsAdapterInfo::has_system_ram_usage() const {
+  return _internal_has_system_ram_usage();
+}
+inline void GraphicsAdapterInfo::clear_system_ram_usage() {
+  system_ram_usage_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 GraphicsAdapterInfo::_internal_system_ram_usage() const {
+  return system_ram_usage_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 GraphicsAdapterInfo::system_ram_usage() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GraphicsAdapterInfo.system_ram_usage)
+  return _internal_system_ram_usage();
+}
+inline void GraphicsAdapterInfo::_internal_set_system_ram_usage(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000008u;
+  system_ram_usage_ = value;
+}
+inline void GraphicsAdapterInfo::set_system_ram_usage(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_system_ram_usage(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.GraphicsAdapterInfo.system_ram_usage)
+}
+
+// -------------------------------------------------------------------
+
+// GraphicsStatus
+
+// optional .enterprise_management.GraphicsAdapterInfo adapter = 1;
+inline bool GraphicsStatus::_internal_has_adapter() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || adapter_ != nullptr);
+  return value;
+}
+inline bool GraphicsStatus::has_adapter() const {
+  return _internal_has_adapter();
+}
+inline void GraphicsStatus::clear_adapter() {
+  if (adapter_ != nullptr) adapter_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::GraphicsAdapterInfo& GraphicsStatus::_internal_adapter() const {
+  const ::enterprise_management::GraphicsAdapterInfo* p = adapter_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::GraphicsAdapterInfo*>(
+      &::enterprise_management::_GraphicsAdapterInfo_default_instance_);
+}
+inline const ::enterprise_management::GraphicsAdapterInfo& GraphicsStatus::adapter() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GraphicsStatus.adapter)
+  return _internal_adapter();
+}
+inline ::enterprise_management::GraphicsAdapterInfo* GraphicsStatus::release_adapter() {
+  // @@protoc_insertion_point(field_release:enterprise_management.GraphicsStatus.adapter)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::GraphicsAdapterInfo* temp = adapter_;
+  adapter_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::GraphicsAdapterInfo* GraphicsStatus::_internal_mutable_adapter() {
+  _has_bits_[0] |= 0x00000001u;
+  if (adapter_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::GraphicsAdapterInfo>(GetArenaNoVirtual());
+    adapter_ = p;
+  }
+  return adapter_;
+}
+inline ::enterprise_management::GraphicsAdapterInfo* GraphicsStatus::mutable_adapter() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.GraphicsStatus.adapter)
+  return _internal_mutable_adapter();
+}
+inline void GraphicsStatus::set_allocated_adapter(::enterprise_management::GraphicsAdapterInfo* adapter) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete adapter_;
+  }
+  if (adapter) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      adapter = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, adapter, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  adapter_ = adapter;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.GraphicsStatus.adapter)
+}
+
+// repeated .enterprise_management.DisplayInfo displays = 2;
+inline int GraphicsStatus::_internal_displays_size() const {
+  return displays_.size();
+}
+inline int GraphicsStatus::displays_size() const {
+  return _internal_displays_size();
+}
+inline void GraphicsStatus::clear_displays() {
+  displays_.Clear();
+}
+inline ::enterprise_management::DisplayInfo* GraphicsStatus::mutable_displays(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.GraphicsStatus.displays)
+  return displays_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DisplayInfo >*
+GraphicsStatus::mutable_displays() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.GraphicsStatus.displays)
+  return &displays_;
+}
+inline const ::enterprise_management::DisplayInfo& GraphicsStatus::_internal_displays(int index) const {
+  return displays_.Get(index);
+}
+inline const ::enterprise_management::DisplayInfo& GraphicsStatus::displays(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GraphicsStatus.displays)
+  return _internal_displays(index);
+}
+inline ::enterprise_management::DisplayInfo* GraphicsStatus::_internal_add_displays() {
+  return displays_.Add();
+}
+inline ::enterprise_management::DisplayInfo* GraphicsStatus::add_displays() {
+  // @@protoc_insertion_point(field_add:enterprise_management.GraphicsStatus.displays)
+  return _internal_add_displays();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DisplayInfo >&
+GraphicsStatus::displays() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.GraphicsStatus.displays)
+  return displays_;
+}
+
+// -------------------------------------------------------------------
+
+// CrashReportInfo
+
+// optional string remote_id = 1;
+inline bool CrashReportInfo::_internal_has_remote_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CrashReportInfo::has_remote_id() const {
+  return _internal_has_remote_id();
+}
+inline void CrashReportInfo::clear_remote_id() {
+  remote_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CrashReportInfo::remote_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrashReportInfo.remote_id)
+  return _internal_remote_id();
+}
+inline void CrashReportInfo::set_remote_id(const std::string& value) {
+  _internal_set_remote_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrashReportInfo.remote_id)
+}
+inline std::string* CrashReportInfo::mutable_remote_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrashReportInfo.remote_id)
+  return _internal_mutable_remote_id();
+}
+inline const std::string& CrashReportInfo::_internal_remote_id() const {
+  return remote_id_.GetNoArena();
+}
+inline void CrashReportInfo::_internal_set_remote_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  remote_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CrashReportInfo::set_remote_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  remote_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CrashReportInfo.remote_id)
+}
+inline void CrashReportInfo::set_remote_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  remote_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CrashReportInfo.remote_id)
+}
+inline void CrashReportInfo::set_remote_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  remote_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CrashReportInfo.remote_id)
+}
+inline std::string* CrashReportInfo::_internal_mutable_remote_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return remote_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CrashReportInfo::release_remote_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CrashReportInfo.remote_id)
+  if (!_internal_has_remote_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return remote_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CrashReportInfo::set_allocated_remote_id(std::string* remote_id) {
+  if (remote_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  remote_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), remote_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CrashReportInfo.remote_id)
+}
+
+// optional int64 capture_timestamp = 2;
+inline bool CrashReportInfo::_internal_has_capture_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool CrashReportInfo::has_capture_timestamp() const {
+  return _internal_has_capture_timestamp();
+}
+inline void CrashReportInfo::clear_capture_timestamp() {
+  capture_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CrashReportInfo::_internal_capture_timestamp() const {
+  return capture_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CrashReportInfo::capture_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrashReportInfo.capture_timestamp)
+  return _internal_capture_timestamp();
+}
+inline void CrashReportInfo::_internal_set_capture_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  capture_timestamp_ = value;
+}
+inline void CrashReportInfo::set_capture_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_capture_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrashReportInfo.capture_timestamp)
+}
+
+// optional string cause = 3;
+inline bool CrashReportInfo::_internal_has_cause() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CrashReportInfo::has_cause() const {
+  return _internal_has_cause();
+}
+inline void CrashReportInfo::clear_cause() {
+  cause_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& CrashReportInfo::cause() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrashReportInfo.cause)
+  return _internal_cause();
+}
+inline void CrashReportInfo::set_cause(const std::string& value) {
+  _internal_set_cause(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrashReportInfo.cause)
+}
+inline std::string* CrashReportInfo::mutable_cause() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrashReportInfo.cause)
+  return _internal_mutable_cause();
+}
+inline const std::string& CrashReportInfo::_internal_cause() const {
+  return cause_.GetNoArena();
+}
+inline void CrashReportInfo::_internal_set_cause(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  cause_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CrashReportInfo::set_cause(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  cause_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CrashReportInfo.cause)
+}
+inline void CrashReportInfo::set_cause(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  cause_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CrashReportInfo.cause)
+}
+inline void CrashReportInfo::set_cause(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  cause_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CrashReportInfo.cause)
+}
+inline std::string* CrashReportInfo::_internal_mutable_cause() {
+  _has_bits_[0] |= 0x00000002u;
+  return cause_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CrashReportInfo::release_cause() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CrashReportInfo.cause)
+  if (!_internal_has_cause()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return cause_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CrashReportInfo::set_allocated_cause(std::string* cause) {
+  if (cause != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  cause_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), cause);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CrashReportInfo.cause)
+}
+
+// optional .enterprise_management.CrashReportInfo.CrashReportUploadStatus upload_status = 4;
+inline bool CrashReportInfo::_internal_has_upload_status() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool CrashReportInfo::has_upload_status() const {
+  return _internal_has_upload_status();
+}
+inline void CrashReportInfo::clear_upload_status() {
+  upload_status_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::CrashReportInfo_CrashReportUploadStatus CrashReportInfo::_internal_upload_status() const {
+  return static_cast< ::enterprise_management::CrashReportInfo_CrashReportUploadStatus >(upload_status_);
+}
+inline ::enterprise_management::CrashReportInfo_CrashReportUploadStatus CrashReportInfo::upload_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrashReportInfo.upload_status)
+  return _internal_upload_status();
+}
+inline void CrashReportInfo::_internal_set_upload_status(::enterprise_management::CrashReportInfo_CrashReportUploadStatus value) {
+  assert(::enterprise_management::CrashReportInfo_CrashReportUploadStatus_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  upload_status_ = value;
+}
+inline void CrashReportInfo::set_upload_status(::enterprise_management::CrashReportInfo_CrashReportUploadStatus value) {
+  _internal_set_upload_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrashReportInfo.upload_status)
+}
+
+// -------------------------------------------------------------------
+
+// TimezoneInfo
+
+// optional string posix = 1;
+inline bool TimezoneInfo::_internal_has_posix() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool TimezoneInfo::has_posix() const {
+  return _internal_has_posix();
+}
+inline void TimezoneInfo::clear_posix() {
+  posix_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& TimezoneInfo::posix() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TimezoneInfo.posix)
+  return _internal_posix();
+}
+inline void TimezoneInfo::set_posix(const std::string& value) {
+  _internal_set_posix(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TimezoneInfo.posix)
+}
+inline std::string* TimezoneInfo::mutable_posix() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.TimezoneInfo.posix)
+  return _internal_mutable_posix();
+}
+inline const std::string& TimezoneInfo::_internal_posix() const {
+  return posix_.GetNoArena();
+}
+inline void TimezoneInfo::_internal_set_posix(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  posix_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void TimezoneInfo::set_posix(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  posix_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.TimezoneInfo.posix)
+}
+inline void TimezoneInfo::set_posix(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  posix_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.TimezoneInfo.posix)
+}
+inline void TimezoneInfo::set_posix(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  posix_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.TimezoneInfo.posix)
+}
+inline std::string* TimezoneInfo::_internal_mutable_posix() {
+  _has_bits_[0] |= 0x00000001u;
+  return posix_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* TimezoneInfo::release_posix() {
+  // @@protoc_insertion_point(field_release:enterprise_management.TimezoneInfo.posix)
+  if (!_internal_has_posix()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return posix_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void TimezoneInfo::set_allocated_posix(std::string* posix) {
+  if (posix != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  posix_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), posix);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.TimezoneInfo.posix)
+}
+
+// optional string region = 2;
+inline bool TimezoneInfo::_internal_has_region() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool TimezoneInfo::has_region() const {
+  return _internal_has_region();
+}
+inline void TimezoneInfo::clear_region() {
+  region_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& TimezoneInfo::region() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TimezoneInfo.region)
+  return _internal_region();
+}
+inline void TimezoneInfo::set_region(const std::string& value) {
+  _internal_set_region(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TimezoneInfo.region)
+}
+inline std::string* TimezoneInfo::mutable_region() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.TimezoneInfo.region)
+  return _internal_mutable_region();
+}
+inline const std::string& TimezoneInfo::_internal_region() const {
+  return region_.GetNoArena();
+}
+inline void TimezoneInfo::_internal_set_region(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  region_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void TimezoneInfo::set_region(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  region_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.TimezoneInfo.region)
+}
+inline void TimezoneInfo::set_region(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  region_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.TimezoneInfo.region)
+}
+inline void TimezoneInfo::set_region(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  region_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.TimezoneInfo.region)
+}
+inline std::string* TimezoneInfo::_internal_mutable_region() {
+  _has_bits_[0] |= 0x00000002u;
+  return region_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* TimezoneInfo::release_region() {
+  // @@protoc_insertion_point(field_release:enterprise_management.TimezoneInfo.region)
+  if (!_internal_has_region()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return region_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void TimezoneInfo::set_allocated_region(std::string* region) {
+  if (region != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  region_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), region);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.TimezoneInfo.region)
+}
+
+// -------------------------------------------------------------------
+
+// MemoryInfo
+
+// optional uint32 total_memory_kib = 1;
+inline bool MemoryInfo::_internal_has_total_memory_kib() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool MemoryInfo::has_total_memory_kib() const {
+  return _internal_has_total_memory_kib();
+}
+inline void MemoryInfo::clear_total_memory_kib() {
+  total_memory_kib_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 MemoryInfo::_internal_total_memory_kib() const {
+  return total_memory_kib_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 MemoryInfo::total_memory_kib() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.MemoryInfo.total_memory_kib)
+  return _internal_total_memory_kib();
+}
+inline void MemoryInfo::_internal_set_total_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  total_memory_kib_ = value;
+}
+inline void MemoryInfo::set_total_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_total_memory_kib(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.MemoryInfo.total_memory_kib)
+}
+
+// optional uint32 free_memory_kib = 2;
+inline bool MemoryInfo::_internal_has_free_memory_kib() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool MemoryInfo::has_free_memory_kib() const {
+  return _internal_has_free_memory_kib();
+}
+inline void MemoryInfo::clear_free_memory_kib() {
+  free_memory_kib_ = 0u;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 MemoryInfo::_internal_free_memory_kib() const {
+  return free_memory_kib_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 MemoryInfo::free_memory_kib() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.MemoryInfo.free_memory_kib)
+  return _internal_free_memory_kib();
+}
+inline void MemoryInfo::_internal_set_free_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  free_memory_kib_ = value;
+}
+inline void MemoryInfo::set_free_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_free_memory_kib(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.MemoryInfo.free_memory_kib)
+}
+
+// optional uint32 available_memory_kib = 3;
+inline bool MemoryInfo::_internal_has_available_memory_kib() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool MemoryInfo::has_available_memory_kib() const {
+  return _internal_has_available_memory_kib();
+}
+inline void MemoryInfo::clear_available_memory_kib() {
+  available_memory_kib_ = 0u;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 MemoryInfo::_internal_available_memory_kib() const {
+  return available_memory_kib_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 MemoryInfo::available_memory_kib() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.MemoryInfo.available_memory_kib)
+  return _internal_available_memory_kib();
+}
+inline void MemoryInfo::_internal_set_available_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  available_memory_kib_ = value;
+}
+inline void MemoryInfo::set_available_memory_kib(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_available_memory_kib(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.MemoryInfo.available_memory_kib)
+}
+
+// optional uint64 page_faults_since_last_boot = 4;
+inline bool MemoryInfo::_internal_has_page_faults_since_last_boot() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool MemoryInfo::has_page_faults_since_last_boot() const {
+  return _internal_has_page_faults_since_last_boot();
+}
+inline void MemoryInfo::clear_page_faults_since_last_boot() {
+  page_faults_since_last_boot_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 MemoryInfo::_internal_page_faults_since_last_boot() const {
+  return page_faults_since_last_boot_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 MemoryInfo::page_faults_since_last_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.MemoryInfo.page_faults_since_last_boot)
+  return _internal_page_faults_since_last_boot();
+}
+inline void MemoryInfo::_internal_set_page_faults_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  page_faults_since_last_boot_ = value;
+}
+inline void MemoryInfo::set_page_faults_since_last_boot(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_page_faults_since_last_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.MemoryInfo.page_faults_since_last_boot)
+}
+
+// -------------------------------------------------------------------
+
+// BacklightInfo
+
+// optional string path = 1;
+inline bool BacklightInfo::_internal_has_path() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BacklightInfo::has_path() const {
+  return _internal_has_path();
+}
+inline void BacklightInfo::clear_path() {
+  path_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& BacklightInfo::path() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BacklightInfo.path)
+  return _internal_path();
+}
+inline void BacklightInfo::set_path(const std::string& value) {
+  _internal_set_path(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BacklightInfo.path)
+}
+inline std::string* BacklightInfo::mutable_path() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BacklightInfo.path)
+  return _internal_mutable_path();
+}
+inline const std::string& BacklightInfo::_internal_path() const {
+  return path_.GetNoArena();
+}
+inline void BacklightInfo::_internal_set_path(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BacklightInfo::set_path(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  path_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BacklightInfo.path)
+}
+inline void BacklightInfo::set_path(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BacklightInfo.path)
+}
+inline void BacklightInfo::set_path(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BacklightInfo.path)
+}
+inline std::string* BacklightInfo::_internal_mutable_path() {
+  _has_bits_[0] |= 0x00000001u;
+  return path_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BacklightInfo::release_path() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BacklightInfo.path)
+  if (!_internal_has_path()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return path_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BacklightInfo::set_allocated_path(std::string* path) {
+  if (path != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  path_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), path);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BacklightInfo.path)
+}
+
+// optional uint32 max_brightness = 2;
+inline bool BacklightInfo::_internal_has_max_brightness() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BacklightInfo::has_max_brightness() const {
+  return _internal_has_max_brightness();
+}
+inline void BacklightInfo::clear_max_brightness() {
+  max_brightness_ = 0u;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 BacklightInfo::_internal_max_brightness() const {
+  return max_brightness_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 BacklightInfo::max_brightness() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BacklightInfo.max_brightness)
+  return _internal_max_brightness();
+}
+inline void BacklightInfo::_internal_set_max_brightness(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  max_brightness_ = value;
+}
+inline void BacklightInfo::set_max_brightness(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_max_brightness(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BacklightInfo.max_brightness)
+}
+
+// optional uint32 brightness = 3;
+inline bool BacklightInfo::_internal_has_brightness() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool BacklightInfo::has_brightness() const {
+  return _internal_has_brightness();
+}
+inline void BacklightInfo::clear_brightness() {
+  brightness_ = 0u;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 BacklightInfo::_internal_brightness() const {
+  return brightness_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 BacklightInfo::brightness() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BacklightInfo.brightness)
+  return _internal_brightness();
+}
+inline void BacklightInfo::_internal_set_brightness(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  brightness_ = value;
+}
+inline void BacklightInfo::set_brightness(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_brightness(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BacklightInfo.brightness)
+}
+
+// -------------------------------------------------------------------
+
+// FanInfo
+
+// optional uint32 speed_rpm = 1;
+inline bool FanInfo::_internal_has_speed_rpm() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool FanInfo::has_speed_rpm() const {
+  return _internal_has_speed_rpm();
+}
+inline void FanInfo::clear_speed_rpm() {
+  speed_rpm_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 FanInfo::_internal_speed_rpm() const {
+  return speed_rpm_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 FanInfo::speed_rpm() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.FanInfo.speed_rpm)
+  return _internal_speed_rpm();
+}
+inline void FanInfo::_internal_set_speed_rpm(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  speed_rpm_ = value;
+}
+inline void FanInfo::set_speed_rpm(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_speed_rpm(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.FanInfo.speed_rpm)
+}
+
+// -------------------------------------------------------------------
+
+// BluetoothAdapterInfo
+
+// optional string name = 1;
+inline bool BluetoothAdapterInfo::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BluetoothAdapterInfo::has_name() const {
+  return _internal_has_name();
+}
+inline void BluetoothAdapterInfo::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& BluetoothAdapterInfo::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BluetoothAdapterInfo.name)
+  return _internal_name();
+}
+inline void BluetoothAdapterInfo::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BluetoothAdapterInfo.name)
+}
+inline std::string* BluetoothAdapterInfo::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BluetoothAdapterInfo.name)
+  return _internal_mutable_name();
+}
+inline const std::string& BluetoothAdapterInfo::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void BluetoothAdapterInfo::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BluetoothAdapterInfo::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BluetoothAdapterInfo.name)
+}
+inline void BluetoothAdapterInfo::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BluetoothAdapterInfo.name)
+}
+inline void BluetoothAdapterInfo::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BluetoothAdapterInfo.name)
+}
+inline std::string* BluetoothAdapterInfo::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BluetoothAdapterInfo::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BluetoothAdapterInfo.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BluetoothAdapterInfo::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BluetoothAdapterInfo.name)
+}
+
+// optional string address = 2;
+inline bool BluetoothAdapterInfo::_internal_has_address() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BluetoothAdapterInfo::has_address() const {
+  return _internal_has_address();
+}
+inline void BluetoothAdapterInfo::clear_address() {
+  address_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& BluetoothAdapterInfo::address() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BluetoothAdapterInfo.address)
+  return _internal_address();
+}
+inline void BluetoothAdapterInfo::set_address(const std::string& value) {
+  _internal_set_address(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BluetoothAdapterInfo.address)
+}
+inline std::string* BluetoothAdapterInfo::mutable_address() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BluetoothAdapterInfo.address)
+  return _internal_mutable_address();
+}
+inline const std::string& BluetoothAdapterInfo::_internal_address() const {
+  return address_.GetNoArena();
+}
+inline void BluetoothAdapterInfo::_internal_set_address(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BluetoothAdapterInfo::set_address(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  address_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BluetoothAdapterInfo.address)
+}
+inline void BluetoothAdapterInfo::set_address(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BluetoothAdapterInfo.address)
+}
+inline void BluetoothAdapterInfo::set_address(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BluetoothAdapterInfo.address)
+}
+inline std::string* BluetoothAdapterInfo::_internal_mutable_address() {
+  _has_bits_[0] |= 0x00000002u;
+  return address_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BluetoothAdapterInfo::release_address() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BluetoothAdapterInfo.address)
+  if (!_internal_has_address()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return address_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BluetoothAdapterInfo::set_allocated_address(std::string* address) {
+  if (address != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  address_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), address);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BluetoothAdapterInfo.address)
+}
+
+// optional bool powered = 3;
+inline bool BluetoothAdapterInfo::_internal_has_powered() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool BluetoothAdapterInfo::has_powered() const {
+  return _internal_has_powered();
+}
+inline void BluetoothAdapterInfo::clear_powered() {
+  powered_ = false;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool BluetoothAdapterInfo::_internal_powered() const {
+  return powered_;
+}
+inline bool BluetoothAdapterInfo::powered() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BluetoothAdapterInfo.powered)
+  return _internal_powered();
+}
+inline void BluetoothAdapterInfo::_internal_set_powered(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  powered_ = value;
+}
+inline void BluetoothAdapterInfo::set_powered(bool value) {
+  _internal_set_powered(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BluetoothAdapterInfo.powered)
+}
+
+// optional uint32 num_connected_devices = 4;
+inline bool BluetoothAdapterInfo::_internal_has_num_connected_devices() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool BluetoothAdapterInfo::has_num_connected_devices() const {
+  return _internal_has_num_connected_devices();
+}
+inline void BluetoothAdapterInfo::clear_num_connected_devices() {
+  num_connected_devices_ = 0u;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 BluetoothAdapterInfo::_internal_num_connected_devices() const {
+  return num_connected_devices_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 BluetoothAdapterInfo::num_connected_devices() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BluetoothAdapterInfo.num_connected_devices)
+  return _internal_num_connected_devices();
+}
+inline void BluetoothAdapterInfo::_internal_set_num_connected_devices(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  num_connected_devices_ = value;
+}
+inline void BluetoothAdapterInfo::set_num_connected_devices(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_num_connected_devices(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BluetoothAdapterInfo.num_connected_devices)
+}
+
+// -------------------------------------------------------------------
+
+// SmbiosInfo
+
+// optional string sys_vendor = 1;
+inline bool SmbiosInfo::_internal_has_sys_vendor() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SmbiosInfo::has_sys_vendor() const {
+  return _internal_has_sys_vendor();
+}
+inline void SmbiosInfo::clear_sys_vendor() {
+  sys_vendor_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SmbiosInfo::sys_vendor() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SmbiosInfo.sys_vendor)
+  return _internal_sys_vendor();
+}
+inline void SmbiosInfo::set_sys_vendor(const std::string& value) {
+  _internal_set_sys_vendor(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SmbiosInfo.sys_vendor)
+}
+inline std::string* SmbiosInfo::mutable_sys_vendor() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SmbiosInfo.sys_vendor)
+  return _internal_mutable_sys_vendor();
+}
+inline const std::string& SmbiosInfo::_internal_sys_vendor() const {
+  return sys_vendor_.GetNoArena();
+}
+inline void SmbiosInfo::_internal_set_sys_vendor(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  sys_vendor_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SmbiosInfo::set_sys_vendor(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  sys_vendor_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SmbiosInfo.sys_vendor)
+}
+inline void SmbiosInfo::set_sys_vendor(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  sys_vendor_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SmbiosInfo.sys_vendor)
+}
+inline void SmbiosInfo::set_sys_vendor(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  sys_vendor_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SmbiosInfo.sys_vendor)
+}
+inline std::string* SmbiosInfo::_internal_mutable_sys_vendor() {
+  _has_bits_[0] |= 0x00000001u;
+  return sys_vendor_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SmbiosInfo::release_sys_vendor() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SmbiosInfo.sys_vendor)
+  if (!_internal_has_sys_vendor()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return sys_vendor_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SmbiosInfo::set_allocated_sys_vendor(std::string* sys_vendor) {
+  if (sys_vendor != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  sys_vendor_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), sys_vendor);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SmbiosInfo.sys_vendor)
+}
+
+// optional string product_name = 2;
+inline bool SmbiosInfo::_internal_has_product_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SmbiosInfo::has_product_name() const {
+  return _internal_has_product_name();
+}
+inline void SmbiosInfo::clear_product_name() {
+  product_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SmbiosInfo::product_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SmbiosInfo.product_name)
+  return _internal_product_name();
+}
+inline void SmbiosInfo::set_product_name(const std::string& value) {
+  _internal_set_product_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SmbiosInfo.product_name)
+}
+inline std::string* SmbiosInfo::mutable_product_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SmbiosInfo.product_name)
+  return _internal_mutable_product_name();
+}
+inline const std::string& SmbiosInfo::_internal_product_name() const {
+  return product_name_.GetNoArena();
+}
+inline void SmbiosInfo::_internal_set_product_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  product_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SmbiosInfo::set_product_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  product_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SmbiosInfo.product_name)
+}
+inline void SmbiosInfo::set_product_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  product_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SmbiosInfo.product_name)
+}
+inline void SmbiosInfo::set_product_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  product_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SmbiosInfo.product_name)
+}
+inline std::string* SmbiosInfo::_internal_mutable_product_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return product_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SmbiosInfo::release_product_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SmbiosInfo.product_name)
+  if (!_internal_has_product_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return product_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SmbiosInfo::set_allocated_product_name(std::string* product_name) {
+  if (product_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  product_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), product_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SmbiosInfo.product_name)
+}
+
+// optional string product_version = 3;
+inline bool SmbiosInfo::_internal_has_product_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SmbiosInfo::has_product_version() const {
+  return _internal_has_product_version();
+}
+inline void SmbiosInfo::clear_product_version() {
+  product_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SmbiosInfo::product_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SmbiosInfo.product_version)
+  return _internal_product_version();
+}
+inline void SmbiosInfo::set_product_version(const std::string& value) {
+  _internal_set_product_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SmbiosInfo.product_version)
+}
+inline std::string* SmbiosInfo::mutable_product_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SmbiosInfo.product_version)
+  return _internal_mutable_product_version();
+}
+inline const std::string& SmbiosInfo::_internal_product_version() const {
+  return product_version_.GetNoArena();
+}
+inline void SmbiosInfo::_internal_set_product_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  product_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SmbiosInfo::set_product_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  product_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SmbiosInfo.product_version)
+}
+inline void SmbiosInfo::set_product_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  product_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SmbiosInfo.product_version)
+}
+inline void SmbiosInfo::set_product_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  product_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SmbiosInfo.product_version)
+}
+inline std::string* SmbiosInfo::_internal_mutable_product_version() {
+  _has_bits_[0] |= 0x00000004u;
+  return product_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SmbiosInfo::release_product_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SmbiosInfo.product_version)
+  if (!_internal_has_product_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return product_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SmbiosInfo::set_allocated_product_version(std::string* product_version) {
+  if (product_version != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  product_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), product_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SmbiosInfo.product_version)
+}
+
+// optional string bios_version = 4;
+inline bool SmbiosInfo::_internal_has_bios_version() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SmbiosInfo::has_bios_version() const {
+  return _internal_has_bios_version();
+}
+inline void SmbiosInfo::clear_bios_version() {
+  bios_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& SmbiosInfo::bios_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SmbiosInfo.bios_version)
+  return _internal_bios_version();
+}
+inline void SmbiosInfo::set_bios_version(const std::string& value) {
+  _internal_set_bios_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SmbiosInfo.bios_version)
+}
+inline std::string* SmbiosInfo::mutable_bios_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SmbiosInfo.bios_version)
+  return _internal_mutable_bios_version();
+}
+inline const std::string& SmbiosInfo::_internal_bios_version() const {
+  return bios_version_.GetNoArena();
+}
+inline void SmbiosInfo::_internal_set_bios_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  bios_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SmbiosInfo::set_bios_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  bios_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SmbiosInfo.bios_version)
+}
+inline void SmbiosInfo::set_bios_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  bios_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SmbiosInfo.bios_version)
+}
+inline void SmbiosInfo::set_bios_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  bios_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SmbiosInfo.bios_version)
+}
+inline std::string* SmbiosInfo::_internal_mutable_bios_version() {
+  _has_bits_[0] |= 0x00000008u;
+  return bios_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SmbiosInfo::release_bios_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SmbiosInfo.bios_version)
+  if (!_internal_has_bios_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return bios_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SmbiosInfo::set_allocated_bios_version(std::string* bios_version) {
+  if (bios_version != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  bios_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), bios_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SmbiosInfo.bios_version)
+}
+
+// -------------------------------------------------------------------
+
+// KernelParameters
+
+// optional bool cros_efi = 1;
+inline bool KernelParameters::_internal_has_cros_efi() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool KernelParameters::has_cros_efi() const {
+  return _internal_has_cros_efi();
+}
+inline void KernelParameters::clear_cros_efi() {
+  cros_efi_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool KernelParameters::_internal_cros_efi() const {
+  return cros_efi_;
+}
+inline bool KernelParameters::cros_efi() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.KernelParameters.cros_efi)
+  return _internal_cros_efi();
+}
+inline void KernelParameters::_internal_set_cros_efi(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  cros_efi_ = value;
+}
+inline void KernelParameters::set_cros_efi(bool value) {
+  _internal_set_cros_efi(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.KernelParameters.cros_efi)
+}
+
+// -------------------------------------------------------------------
+
+// EFIVars
+
+// optional bool secure_boot = 1;
+inline bool EFIVars::_internal_has_secure_boot() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool EFIVars::has_secure_boot() const {
+  return _internal_has_secure_boot();
+}
+inline void EFIVars::clear_secure_boot() {
+  secure_boot_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool EFIVars::_internal_secure_boot() const {
+  return secure_boot_;
+}
+inline bool EFIVars::secure_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.EFIVars.secure_boot)
+  return _internal_secure_boot();
+}
+inline void EFIVars::_internal_set_secure_boot(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  secure_boot_ = value;
+}
+inline void EFIVars::set_secure_boot(bool value) {
+  _internal_set_secure_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.EFIVars.secure_boot)
+}
+
+// -------------------------------------------------------------------
+
+// BootInfo
+
+// optional .enterprise_management.BootInfo.BootMethod boot_method = 1;
+inline bool BootInfo::_internal_has_boot_method() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BootInfo::has_boot_method() const {
+  return _internal_has_boot_method();
+}
+inline void BootInfo::clear_boot_method() {
+  boot_method_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::BootInfo_BootMethod BootInfo::_internal_boot_method() const {
+  return static_cast< ::enterprise_management::BootInfo_BootMethod >(boot_method_);
+}
+inline ::enterprise_management::BootInfo_BootMethod BootInfo::boot_method() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BootInfo.boot_method)
+  return _internal_boot_method();
+}
+inline void BootInfo::_internal_set_boot_method(::enterprise_management::BootInfo_BootMethod value) {
+  assert(::enterprise_management::BootInfo_BootMethod_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  boot_method_ = value;
+}
+inline void BootInfo::set_boot_method(::enterprise_management::BootInfo_BootMethod value) {
+  _internal_set_boot_method(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BootInfo.boot_method)
+}
+
+// optional bool secure_boot = 2 [deprecated = true];
+inline bool BootInfo::_internal_has_secure_boot() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BootInfo::has_secure_boot() const {
+  return _internal_has_secure_boot();
+}
+inline void BootInfo::clear_secure_boot() {
+  secure_boot_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool BootInfo::_internal_secure_boot() const {
+  return secure_boot_;
+}
+inline bool BootInfo::secure_boot() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BootInfo.secure_boot)
+  return _internal_secure_boot();
+}
+inline void BootInfo::_internal_set_secure_boot(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  secure_boot_ = value;
+}
+inline void BootInfo::set_secure_boot(bool value) {
+  _internal_set_secure_boot(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BootInfo.secure_boot)
+}
+
+// -------------------------------------------------------------------
+
+// NetworkAdapterInfo
+
+// optional .enterprise_management.BusDeviceClass device_class = 1;
+inline bool NetworkAdapterInfo::_internal_has_device_class() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool NetworkAdapterInfo::has_device_class() const {
+  return _internal_has_device_class();
+}
+inline void NetworkAdapterInfo::clear_device_class() {
+  device_class_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::BusDeviceClass NetworkAdapterInfo::_internal_device_class() const {
+  return static_cast< ::enterprise_management::BusDeviceClass >(device_class_);
+}
+inline ::enterprise_management::BusDeviceClass NetworkAdapterInfo::device_class() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkAdapterInfo.device_class)
+  return _internal_device_class();
+}
+inline void NetworkAdapterInfo::_internal_set_device_class(::enterprise_management::BusDeviceClass value) {
+  assert(::enterprise_management::BusDeviceClass_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  device_class_ = value;
+}
+inline void NetworkAdapterInfo::set_device_class(::enterprise_management::BusDeviceClass value) {
+  _internal_set_device_class(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkAdapterInfo.device_class)
+}
+
+// optional .enterprise_management.BusType bus_type = 2;
+inline bool NetworkAdapterInfo::_internal_has_bus_type() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool NetworkAdapterInfo::has_bus_type() const {
+  return _internal_has_bus_type();
+}
+inline void NetworkAdapterInfo::clear_bus_type() {
+  bus_type_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::BusType NetworkAdapterInfo::_internal_bus_type() const {
+  return static_cast< ::enterprise_management::BusType >(bus_type_);
+}
+inline ::enterprise_management::BusType NetworkAdapterInfo::bus_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkAdapterInfo.bus_type)
+  return _internal_bus_type();
+}
+inline void NetworkAdapterInfo::_internal_set_bus_type(::enterprise_management::BusType value) {
+  assert(::enterprise_management::BusType_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  bus_type_ = value;
+}
+inline void NetworkAdapterInfo::set_bus_type(::enterprise_management::BusType value) {
+  _internal_set_bus_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkAdapterInfo.bus_type)
+}
+
+// optional int32 vendor_id = 3;
+inline bool NetworkAdapterInfo::_internal_has_vendor_id() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool NetworkAdapterInfo::has_vendor_id() const {
+  return _internal_has_vendor_id();
+}
+inline void NetworkAdapterInfo::clear_vendor_id() {
+  vendor_id_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkAdapterInfo::_internal_vendor_id() const {
+  return vendor_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkAdapterInfo::vendor_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkAdapterInfo.vendor_id)
+  return _internal_vendor_id();
+}
+inline void NetworkAdapterInfo::_internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  vendor_id_ = value;
+}
+inline void NetworkAdapterInfo::set_vendor_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_vendor_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkAdapterInfo.vendor_id)
+}
+
+// optional string vendor_name = 4;
+inline bool NetworkAdapterInfo::_internal_has_vendor_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool NetworkAdapterInfo::has_vendor_name() const {
+  return _internal_has_vendor_name();
+}
+inline void NetworkAdapterInfo::clear_vendor_name() {
+  vendor_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& NetworkAdapterInfo::vendor_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkAdapterInfo.vendor_name)
+  return _internal_vendor_name();
+}
+inline void NetworkAdapterInfo::set_vendor_name(const std::string& value) {
+  _internal_set_vendor_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkAdapterInfo.vendor_name)
+}
+inline std::string* NetworkAdapterInfo::mutable_vendor_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkAdapterInfo.vendor_name)
+  return _internal_mutable_vendor_name();
+}
+inline const std::string& NetworkAdapterInfo::_internal_vendor_name() const {
+  return vendor_name_.GetNoArena();
+}
+inline void NetworkAdapterInfo::_internal_set_vendor_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkAdapterInfo::set_vendor_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkAdapterInfo.vendor_name)
+}
+inline void NetworkAdapterInfo::set_vendor_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  vendor_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkAdapterInfo.vendor_name)
+}
+inline void NetworkAdapterInfo::set_vendor_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkAdapterInfo.vendor_name)
+}
+inline std::string* NetworkAdapterInfo::_internal_mutable_vendor_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return vendor_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkAdapterInfo::release_vendor_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkAdapterInfo.vendor_name)
+  if (!_internal_has_vendor_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return vendor_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkAdapterInfo::set_allocated_vendor_name(std::string* vendor_name) {
+  if (vendor_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  vendor_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), vendor_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkAdapterInfo.vendor_name)
+}
+
+// optional int32 device_id = 5;
+inline bool NetworkAdapterInfo::_internal_has_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool NetworkAdapterInfo::has_device_id() const {
+  return _internal_has_device_id();
+}
+inline void NetworkAdapterInfo::clear_device_id() {
+  device_id_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkAdapterInfo::_internal_device_id() const {
+  return device_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 NetworkAdapterInfo::device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkAdapterInfo.device_id)
+  return _internal_device_id();
+}
+inline void NetworkAdapterInfo::_internal_set_device_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  device_id_ = value;
+}
+inline void NetworkAdapterInfo::set_device_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkAdapterInfo.device_id)
+}
+
+// optional string device_name = 6;
+inline bool NetworkAdapterInfo::_internal_has_device_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool NetworkAdapterInfo::has_device_name() const {
+  return _internal_has_device_name();
+}
+inline void NetworkAdapterInfo::clear_device_name() {
+  device_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& NetworkAdapterInfo::device_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkAdapterInfo.device_name)
+  return _internal_device_name();
+}
+inline void NetworkAdapterInfo::set_device_name(const std::string& value) {
+  _internal_set_device_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkAdapterInfo.device_name)
+}
+inline std::string* NetworkAdapterInfo::mutable_device_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkAdapterInfo.device_name)
+  return _internal_mutable_device_name();
+}
+inline const std::string& NetworkAdapterInfo::_internal_device_name() const {
+  return device_name_.GetNoArena();
+}
+inline void NetworkAdapterInfo::_internal_set_device_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void NetworkAdapterInfo::set_device_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  device_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.NetworkAdapterInfo.device_name)
+}
+inline void NetworkAdapterInfo::set_device_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkAdapterInfo.device_name)
+}
+inline void NetworkAdapterInfo::set_device_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkAdapterInfo.device_name)
+}
+inline std::string* NetworkAdapterInfo::_internal_mutable_device_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return device_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* NetworkAdapterInfo::release_device_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.NetworkAdapterInfo.device_name)
+  if (!_internal_has_device_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return device_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void NetworkAdapterInfo::set_allocated_device_name(std::string* device_name) {
+  if (device_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  device_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.NetworkAdapterInfo.device_name)
+}
+
+// repeated string driver = 7;
+inline int NetworkAdapterInfo::_internal_driver_size() const {
+  return driver_.size();
+}
+inline int NetworkAdapterInfo::driver_size() const {
+  return _internal_driver_size();
+}
+inline void NetworkAdapterInfo::clear_driver() {
+  driver_.Clear();
+}
+inline std::string* NetworkAdapterInfo::add_driver() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.NetworkAdapterInfo.driver)
+  return _internal_add_driver();
+}
+inline const std::string& NetworkAdapterInfo::_internal_driver(int index) const {
+  return driver_.Get(index);
+}
+inline const std::string& NetworkAdapterInfo::driver(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.NetworkAdapterInfo.driver)
+  return _internal_driver(index);
+}
+inline std::string* NetworkAdapterInfo::mutable_driver(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.NetworkAdapterInfo.driver)
+  return driver_.Mutable(index);
+}
+inline void NetworkAdapterInfo::set_driver(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkAdapterInfo.driver)
+  driver_.Mutable(index)->assign(value);
+}
+inline void NetworkAdapterInfo::set_driver(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.NetworkAdapterInfo.driver)
+  driver_.Mutable(index)->assign(std::move(value));
+}
+inline void NetworkAdapterInfo::set_driver(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  driver_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.NetworkAdapterInfo.driver)
+}
+inline void NetworkAdapterInfo::set_driver(int index, const char* value, size_t size) {
+  driver_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.NetworkAdapterInfo.driver)
+}
+inline std::string* NetworkAdapterInfo::_internal_add_driver() {
+  return driver_.Add();
+}
+inline void NetworkAdapterInfo::add_driver(const std::string& value) {
+  driver_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.NetworkAdapterInfo.driver)
+}
+inline void NetworkAdapterInfo::add_driver(std::string&& value) {
+  driver_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.NetworkAdapterInfo.driver)
+}
+inline void NetworkAdapterInfo::add_driver(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  driver_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.NetworkAdapterInfo.driver)
+}
+inline void NetworkAdapterInfo::add_driver(const char* value, size_t size) {
+  driver_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.NetworkAdapterInfo.driver)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+NetworkAdapterInfo::driver() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.NetworkAdapterInfo.driver)
+  return driver_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+NetworkAdapterInfo::mutable_driver() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.NetworkAdapterInfo.driver)
+  return &driver_;
+}
+
+// -------------------------------------------------------------------
+
+// LaCrOsBrowserReport
+
+// optional .enterprise_management.DeviceUser device_user = 1;
+inline bool LaCrOsBrowserReport::_internal_has_device_user() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || device_user_ != nullptr);
+  return value;
+}
+inline bool LaCrOsBrowserReport::has_device_user() const {
+  return _internal_has_device_user();
+}
+inline void LaCrOsBrowserReport::clear_device_user() {
+  if (device_user_ != nullptr) device_user_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::DeviceUser& LaCrOsBrowserReport::_internal_device_user() const {
+  const ::enterprise_management::DeviceUser* p = device_user_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceUser*>(
+      &::enterprise_management::_DeviceUser_default_instance_);
+}
+inline const ::enterprise_management::DeviceUser& LaCrOsBrowserReport::device_user() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LaCrOsBrowserReport.device_user)
+  return _internal_device_user();
+}
+inline ::enterprise_management::DeviceUser* LaCrOsBrowserReport::release_device_user() {
+  // @@protoc_insertion_point(field_release:enterprise_management.LaCrOsBrowserReport.device_user)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::DeviceUser* temp = device_user_;
+  device_user_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceUser* LaCrOsBrowserReport::_internal_mutable_device_user() {
+  _has_bits_[0] |= 0x00000001u;
+  if (device_user_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceUser>(GetArenaNoVirtual());
+    device_user_ = p;
+  }
+  return device_user_;
+}
+inline ::enterprise_management::DeviceUser* LaCrOsBrowserReport::mutable_device_user() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LaCrOsBrowserReport.device_user)
+  return _internal_mutable_device_user();
+}
+inline void LaCrOsBrowserReport::set_allocated_device_user(::enterprise_management::DeviceUser* device_user) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_user_;
+  }
+  if (device_user) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_user = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_user, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_user_ = device_user;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.LaCrOsBrowserReport.device_user)
+}
+
+// optional .enterprise_management.BrowserReport browser_report = 2;
+inline bool LaCrOsBrowserReport::_internal_has_browser_report() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || browser_report_ != nullptr);
+  return value;
+}
+inline bool LaCrOsBrowserReport::has_browser_report() const {
+  return _internal_has_browser_report();
+}
+inline void LaCrOsBrowserReport::clear_browser_report() {
+  if (browser_report_ != nullptr) browser_report_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::BrowserReport& LaCrOsBrowserReport::_internal_browser_report() const {
+  const ::enterprise_management::BrowserReport* p = browser_report_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserReport*>(
+      &::enterprise_management::_BrowserReport_default_instance_);
+}
+inline const ::enterprise_management::BrowserReport& LaCrOsBrowserReport::browser_report() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LaCrOsBrowserReport.browser_report)
+  return _internal_browser_report();
+}
+inline ::enterprise_management::BrowserReport* LaCrOsBrowserReport::release_browser_report() {
+  // @@protoc_insertion_point(field_release:enterprise_management.LaCrOsBrowserReport.browser_report)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::BrowserReport* temp = browser_report_;
+  browser_report_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserReport* LaCrOsBrowserReport::_internal_mutable_browser_report() {
+  _has_bits_[0] |= 0x00000002u;
+  if (browser_report_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserReport>(GetArenaNoVirtual());
+    browser_report_ = p;
+  }
+  return browser_report_;
+}
+inline ::enterprise_management::BrowserReport* LaCrOsBrowserReport::mutable_browser_report() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LaCrOsBrowserReport.browser_report)
+  return _internal_mutable_browser_report();
+}
+inline void LaCrOsBrowserReport::set_allocated_browser_report(::enterprise_management::BrowserReport* browser_report) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_report_;
+  }
+  if (browser_report) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_report = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_report, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  browser_report_ = browser_report;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.LaCrOsBrowserReport.browser_report)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceStatusReportRequest
+
+// optional string os_version = 1;
+inline bool DeviceStatusReportRequest::_internal_has_os_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_os_version() const {
+  return _internal_has_os_version();
+}
+inline void DeviceStatusReportRequest::clear_os_version() {
+  os_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceStatusReportRequest::os_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.os_version)
+  return _internal_os_version();
+}
+inline void DeviceStatusReportRequest::set_os_version(const std::string& value) {
+  _internal_set_os_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.os_version)
+}
+inline std::string* DeviceStatusReportRequest::mutable_os_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.os_version)
+  return _internal_mutable_os_version();
+}
+inline const std::string& DeviceStatusReportRequest::_internal_os_version() const {
+  return os_version_.GetNoArena();
+}
+inline void DeviceStatusReportRequest::_internal_set_os_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceStatusReportRequest::set_os_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  os_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceStatusReportRequest.os_version)
+}
+inline void DeviceStatusReportRequest::set_os_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceStatusReportRequest.os_version)
+}
+inline void DeviceStatusReportRequest::set_os_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceStatusReportRequest.os_version)
+}
+inline std::string* DeviceStatusReportRequest::_internal_mutable_os_version() {
+  _has_bits_[0] |= 0x00000001u;
+  return os_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceStatusReportRequest::release_os_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.os_version)
+  if (!_internal_has_os_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return os_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceStatusReportRequest::set_allocated_os_version(std::string* os_version) {
+  if (os_version != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  os_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), os_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.os_version)
+}
+
+// optional string firmware_version = 2;
+inline bool DeviceStatusReportRequest::_internal_has_firmware_version() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_firmware_version() const {
+  return _internal_has_firmware_version();
+}
+inline void DeviceStatusReportRequest::clear_firmware_version() {
+  firmware_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DeviceStatusReportRequest::firmware_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.firmware_version)
+  return _internal_firmware_version();
+}
+inline void DeviceStatusReportRequest::set_firmware_version(const std::string& value) {
+  _internal_set_firmware_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.firmware_version)
+}
+inline std::string* DeviceStatusReportRequest::mutable_firmware_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.firmware_version)
+  return _internal_mutable_firmware_version();
+}
+inline const std::string& DeviceStatusReportRequest::_internal_firmware_version() const {
+  return firmware_version_.GetNoArena();
+}
+inline void DeviceStatusReportRequest::_internal_set_firmware_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  firmware_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceStatusReportRequest::set_firmware_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  firmware_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceStatusReportRequest.firmware_version)
+}
+inline void DeviceStatusReportRequest::set_firmware_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  firmware_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceStatusReportRequest.firmware_version)
+}
+inline void DeviceStatusReportRequest::set_firmware_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  firmware_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceStatusReportRequest.firmware_version)
+}
+inline std::string* DeviceStatusReportRequest::_internal_mutable_firmware_version() {
+  _has_bits_[0] |= 0x00000002u;
+  return firmware_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceStatusReportRequest::release_firmware_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.firmware_version)
+  if (!_internal_has_firmware_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return firmware_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceStatusReportRequest::set_allocated_firmware_version(std::string* firmware_version) {
+  if (firmware_version != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  firmware_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), firmware_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.firmware_version)
+}
+
+// optional string boot_mode = 3;
+inline bool DeviceStatusReportRequest::_internal_has_boot_mode() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_boot_mode() const {
+  return _internal_has_boot_mode();
+}
+inline void DeviceStatusReportRequest::clear_boot_mode() {
+  boot_mode_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& DeviceStatusReportRequest::boot_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.boot_mode)
+  return _internal_boot_mode();
+}
+inline void DeviceStatusReportRequest::set_boot_mode(const std::string& value) {
+  _internal_set_boot_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.boot_mode)
+}
+inline std::string* DeviceStatusReportRequest::mutable_boot_mode() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.boot_mode)
+  return _internal_mutable_boot_mode();
+}
+inline const std::string& DeviceStatusReportRequest::_internal_boot_mode() const {
+  return boot_mode_.GetNoArena();
+}
+inline void DeviceStatusReportRequest::_internal_set_boot_mode(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  boot_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceStatusReportRequest::set_boot_mode(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  boot_mode_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceStatusReportRequest.boot_mode)
+}
+inline void DeviceStatusReportRequest::set_boot_mode(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  boot_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceStatusReportRequest.boot_mode)
+}
+inline void DeviceStatusReportRequest::set_boot_mode(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  boot_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceStatusReportRequest.boot_mode)
+}
+inline std::string* DeviceStatusReportRequest::_internal_mutable_boot_mode() {
+  _has_bits_[0] |= 0x00000004u;
+  return boot_mode_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceStatusReportRequest::release_boot_mode() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.boot_mode)
+  if (!_internal_has_boot_mode()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return boot_mode_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceStatusReportRequest::set_allocated_boot_mode(std::string* boot_mode) {
+  if (boot_mode != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  boot_mode_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), boot_mode);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.boot_mode)
+}
+
+// optional string browser_version = 5;
+inline bool DeviceStatusReportRequest::_internal_has_browser_version() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_browser_version() const {
+  return _internal_has_browser_version();
+}
+inline void DeviceStatusReportRequest::clear_browser_version() {
+  browser_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& DeviceStatusReportRequest::browser_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.browser_version)
+  return _internal_browser_version();
+}
+inline void DeviceStatusReportRequest::set_browser_version(const std::string& value) {
+  _internal_set_browser_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.browser_version)
+}
+inline std::string* DeviceStatusReportRequest::mutable_browser_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.browser_version)
+  return _internal_mutable_browser_version();
+}
+inline const std::string& DeviceStatusReportRequest::_internal_browser_version() const {
+  return browser_version_.GetNoArena();
+}
+inline void DeviceStatusReportRequest::_internal_set_browser_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceStatusReportRequest::set_browser_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  browser_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceStatusReportRequest.browser_version)
+}
+inline void DeviceStatusReportRequest::set_browser_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceStatusReportRequest.browser_version)
+}
+inline void DeviceStatusReportRequest::set_browser_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceStatusReportRequest.browser_version)
+}
+inline std::string* DeviceStatusReportRequest::_internal_mutable_browser_version() {
+  _has_bits_[0] |= 0x00000008u;
+  return browser_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceStatusReportRequest::release_browser_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.browser_version)
+  if (!_internal_has_browser_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return browser_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceStatusReportRequest::set_allocated_browser_version(std::string* browser_version) {
+  if (browser_version != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  browser_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), browser_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.browser_version)
+}
+
+// repeated .enterprise_management.ActiveTimePeriod active_periods = 6;
+inline int DeviceStatusReportRequest::_internal_active_periods_size() const {
+  return active_periods_.size();
+}
+inline int DeviceStatusReportRequest::active_periods_size() const {
+  return _internal_active_periods_size();
+}
+inline void DeviceStatusReportRequest::clear_active_periods() {
+  active_periods_.Clear();
+}
+inline ::enterprise_management::ActiveTimePeriod* DeviceStatusReportRequest::mutable_active_periods(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.active_periods)
+  return active_periods_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ActiveTimePeriod >*
+DeviceStatusReportRequest::mutable_active_periods() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.active_periods)
+  return &active_periods_;
+}
+inline const ::enterprise_management::ActiveTimePeriod& DeviceStatusReportRequest::_internal_active_periods(int index) const {
+  return active_periods_.Get(index);
+}
+inline const ::enterprise_management::ActiveTimePeriod& DeviceStatusReportRequest::active_periods(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.active_periods)
+  return _internal_active_periods(index);
+}
+inline ::enterprise_management::ActiveTimePeriod* DeviceStatusReportRequest::_internal_add_active_periods() {
+  return active_periods_.Add();
+}
+inline ::enterprise_management::ActiveTimePeriod* DeviceStatusReportRequest::add_active_periods() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.active_periods)
+  return _internal_add_active_periods();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ActiveTimePeriod >&
+DeviceStatusReportRequest::active_periods() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.active_periods)
+  return active_periods_;
+}
+
+// repeated .enterprise_management.NetworkInterface network_interfaces = 8;
+inline int DeviceStatusReportRequest::_internal_network_interfaces_size() const {
+  return network_interfaces_.size();
+}
+inline int DeviceStatusReportRequest::network_interfaces_size() const {
+  return _internal_network_interfaces_size();
+}
+inline void DeviceStatusReportRequest::clear_network_interfaces() {
+  network_interfaces_.Clear();
+}
+inline ::enterprise_management::NetworkInterface* DeviceStatusReportRequest::mutable_network_interfaces(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.network_interfaces)
+  return network_interfaces_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkInterface >*
+DeviceStatusReportRequest::mutable_network_interfaces() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.network_interfaces)
+  return &network_interfaces_;
+}
+inline const ::enterprise_management::NetworkInterface& DeviceStatusReportRequest::_internal_network_interfaces(int index) const {
+  return network_interfaces_.Get(index);
+}
+inline const ::enterprise_management::NetworkInterface& DeviceStatusReportRequest::network_interfaces(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.network_interfaces)
+  return _internal_network_interfaces(index);
+}
+inline ::enterprise_management::NetworkInterface* DeviceStatusReportRequest::_internal_add_network_interfaces() {
+  return network_interfaces_.Add();
+}
+inline ::enterprise_management::NetworkInterface* DeviceStatusReportRequest::add_network_interfaces() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.network_interfaces)
+  return _internal_add_network_interfaces();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkInterface >&
+DeviceStatusReportRequest::network_interfaces() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.network_interfaces)
+  return network_interfaces_;
+}
+
+// repeated .enterprise_management.DeviceUser users = 9;
+inline int DeviceStatusReportRequest::_internal_users_size() const {
+  return users_.size();
+}
+inline int DeviceStatusReportRequest::users_size() const {
+  return _internal_users_size();
+}
+inline void DeviceStatusReportRequest::clear_users() {
+  users_.Clear();
+}
+inline ::enterprise_management::DeviceUser* DeviceStatusReportRequest::mutable_users(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.users)
+  return users_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceUser >*
+DeviceStatusReportRequest::mutable_users() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.users)
+  return &users_;
+}
+inline const ::enterprise_management::DeviceUser& DeviceStatusReportRequest::_internal_users(int index) const {
+  return users_.Get(index);
+}
+inline const ::enterprise_management::DeviceUser& DeviceStatusReportRequest::users(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.users)
+  return _internal_users(index);
+}
+inline ::enterprise_management::DeviceUser* DeviceStatusReportRequest::_internal_add_users() {
+  return users_.Add();
+}
+inline ::enterprise_management::DeviceUser* DeviceStatusReportRequest::add_users() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.users)
+  return _internal_add_users();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::DeviceUser >&
+DeviceStatusReportRequest::users() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.users)
+  return users_;
+}
+
+// repeated .enterprise_management.VolumeInfo volume_infos = 10;
+inline int DeviceStatusReportRequest::_internal_volume_infos_size() const {
+  return volume_infos_.size();
+}
+inline int DeviceStatusReportRequest::volume_infos_size() const {
+  return _internal_volume_infos_size();
+}
+inline void DeviceStatusReportRequest::clear_volume_infos() {
+  volume_infos_.Clear();
+}
+inline ::enterprise_management::VolumeInfo* DeviceStatusReportRequest::mutable_volume_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.volume_infos)
+  return volume_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo >*
+DeviceStatusReportRequest::mutable_volume_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.volume_infos)
+  return &volume_infos_;
+}
+inline const ::enterprise_management::VolumeInfo& DeviceStatusReportRequest::_internal_volume_infos(int index) const {
+  return volume_infos_.Get(index);
+}
+inline const ::enterprise_management::VolumeInfo& DeviceStatusReportRequest::volume_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.volume_infos)
+  return _internal_volume_infos(index);
+}
+inline ::enterprise_management::VolumeInfo* DeviceStatusReportRequest::_internal_add_volume_infos() {
+  return volume_infos_.Add();
+}
+inline ::enterprise_management::VolumeInfo* DeviceStatusReportRequest::add_volume_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.volume_infos)
+  return _internal_add_volume_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo >&
+DeviceStatusReportRequest::volume_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.volume_infos)
+  return volume_infos_;
+}
+
+// repeated .enterprise_management.NetworkState network_states = 11;
+inline int DeviceStatusReportRequest::_internal_network_states_size() const {
+  return network_states_.size();
+}
+inline int DeviceStatusReportRequest::network_states_size() const {
+  return _internal_network_states_size();
+}
+inline void DeviceStatusReportRequest::clear_network_states() {
+  network_states_.Clear();
+}
+inline ::enterprise_management::NetworkState* DeviceStatusReportRequest::mutable_network_states(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.network_states)
+  return network_states_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkState >*
+DeviceStatusReportRequest::mutable_network_states() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.network_states)
+  return &network_states_;
+}
+inline const ::enterprise_management::NetworkState& DeviceStatusReportRequest::_internal_network_states(int index) const {
+  return network_states_.Get(index);
+}
+inline const ::enterprise_management::NetworkState& DeviceStatusReportRequest::network_states(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.network_states)
+  return _internal_network_states(index);
+}
+inline ::enterprise_management::NetworkState* DeviceStatusReportRequest::_internal_add_network_states() {
+  return network_states_.Add();
+}
+inline ::enterprise_management::NetworkState* DeviceStatusReportRequest::add_network_states() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.network_states)
+  return _internal_add_network_states();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkState >&
+DeviceStatusReportRequest::network_states() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.network_states)
+  return network_states_;
+}
+
+// repeated int32 cpu_utilization_pct_samples = 12 [deprecated = true];
+inline int DeviceStatusReportRequest::_internal_cpu_utilization_pct_samples_size() const {
+  return cpu_utilization_pct_samples_.size();
+}
+inline int DeviceStatusReportRequest::cpu_utilization_pct_samples_size() const {
+  return _internal_cpu_utilization_pct_samples_size();
+}
+inline void DeviceStatusReportRequest::clear_cpu_utilization_pct_samples() {
+  cpu_utilization_pct_samples_.Clear();
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceStatusReportRequest::_internal_cpu_utilization_pct_samples(int index) const {
+  return cpu_utilization_pct_samples_.Get(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceStatusReportRequest::cpu_utilization_pct_samples(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.cpu_utilization_pct_samples)
+  return _internal_cpu_utilization_pct_samples(index);
+}
+inline void DeviceStatusReportRequest::set_cpu_utilization_pct_samples(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
+  cpu_utilization_pct_samples_.Set(index, value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.cpu_utilization_pct_samples)
+}
+inline void DeviceStatusReportRequest::_internal_add_cpu_utilization_pct_samples(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  cpu_utilization_pct_samples_.Add(value);
+}
+inline void DeviceStatusReportRequest::add_cpu_utilization_pct_samples(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_add_cpu_utilization_pct_samples(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.cpu_utilization_pct_samples)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+DeviceStatusReportRequest::_internal_cpu_utilization_pct_samples() const {
+  return cpu_utilization_pct_samples_;
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+DeviceStatusReportRequest::cpu_utilization_pct_samples() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.cpu_utilization_pct_samples)
+  return _internal_cpu_utilization_pct_samples();
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+DeviceStatusReportRequest::_internal_mutable_cpu_utilization_pct_samples() {
+  return &cpu_utilization_pct_samples_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+DeviceStatusReportRequest::mutable_cpu_utilization_pct_samples() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.cpu_utilization_pct_samples)
+  return _internal_mutable_cpu_utilization_pct_samples();
+}
+
+// optional int64 system_ram_total = 14;
+inline bool DeviceStatusReportRequest::_internal_has_system_ram_total() const {
+  bool value = (_has_bits_[0] & 0x00200000u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_system_ram_total() const {
+  return _internal_has_system_ram_total();
+}
+inline void DeviceStatusReportRequest::clear_system_ram_total() {
+  system_ram_total_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00200000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceStatusReportRequest::_internal_system_ram_total() const {
+  return system_ram_total_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceStatusReportRequest::system_ram_total() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.system_ram_total)
+  return _internal_system_ram_total();
+}
+inline void DeviceStatusReportRequest::_internal_set_system_ram_total(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00200000u;
+  system_ram_total_ = value;
+}
+inline void DeviceStatusReportRequest::set_system_ram_total(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_system_ram_total(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.system_ram_total)
+}
+
+// repeated int64 system_ram_free_samples = 15 [deprecated = true];
+inline int DeviceStatusReportRequest::_internal_system_ram_free_samples_size() const {
+  return system_ram_free_samples_.size();
+}
+inline int DeviceStatusReportRequest::system_ram_free_samples_size() const {
+  return _internal_system_ram_free_samples_size();
+}
+inline void DeviceStatusReportRequest::clear_system_ram_free_samples() {
+  system_ram_free_samples_.Clear();
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceStatusReportRequest::_internal_system_ram_free_samples(int index) const {
+  return system_ram_free_samples_.Get(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceStatusReportRequest::system_ram_free_samples(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.system_ram_free_samples)
+  return _internal_system_ram_free_samples(index);
+}
+inline void DeviceStatusReportRequest::set_system_ram_free_samples(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
+  system_ram_free_samples_.Set(index, value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.system_ram_free_samples)
+}
+inline void DeviceStatusReportRequest::_internal_add_system_ram_free_samples(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  system_ram_free_samples_.Add(value);
+}
+inline void DeviceStatusReportRequest::add_system_ram_free_samples(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_add_system_ram_free_samples(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.system_ram_free_samples)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
+DeviceStatusReportRequest::_internal_system_ram_free_samples() const {
+  return system_ram_free_samples_;
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
+DeviceStatusReportRequest::system_ram_free_samples() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.system_ram_free_samples)
+  return _internal_system_ram_free_samples();
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
+DeviceStatusReportRequest::_internal_mutable_system_ram_free_samples() {
+  return &system_ram_free_samples_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
+DeviceStatusReportRequest::mutable_system_ram_free_samples() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.system_ram_free_samples)
+  return _internal_mutable_system_ram_free_samples();
+}
+
+// repeated .enterprise_management.CPUTempInfo cpu_temp_infos = 16;
+inline int DeviceStatusReportRequest::_internal_cpu_temp_infos_size() const {
+  return cpu_temp_infos_.size();
+}
+inline int DeviceStatusReportRequest::cpu_temp_infos_size() const {
+  return _internal_cpu_temp_infos_size();
+}
+inline void DeviceStatusReportRequest::clear_cpu_temp_infos() {
+  cpu_temp_infos_.Clear();
+}
+inline ::enterprise_management::CPUTempInfo* DeviceStatusReportRequest::mutable_cpu_temp_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.cpu_temp_infos)
+  return cpu_temp_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CPUTempInfo >*
+DeviceStatusReportRequest::mutable_cpu_temp_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.cpu_temp_infos)
+  return &cpu_temp_infos_;
+}
+inline const ::enterprise_management::CPUTempInfo& DeviceStatusReportRequest::_internal_cpu_temp_infos(int index) const {
+  return cpu_temp_infos_.Get(index);
+}
+inline const ::enterprise_management::CPUTempInfo& DeviceStatusReportRequest::cpu_temp_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.cpu_temp_infos)
+  return _internal_cpu_temp_infos(index);
+}
+inline ::enterprise_management::CPUTempInfo* DeviceStatusReportRequest::_internal_add_cpu_temp_infos() {
+  return cpu_temp_infos_.Add();
+}
+inline ::enterprise_management::CPUTempInfo* DeviceStatusReportRequest::add_cpu_temp_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.cpu_temp_infos)
+  return _internal_add_cpu_temp_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CPUTempInfo >&
+DeviceStatusReportRequest::cpu_temp_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.cpu_temp_infos)
+  return cpu_temp_infos_;
+}
+
+// optional .enterprise_management.OsUpdateStatus os_update_status = 17;
+inline bool DeviceStatusReportRequest::_internal_has_os_update_status() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || os_update_status_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_os_update_status() const {
+  return _internal_has_os_update_status();
+}
+inline void DeviceStatusReportRequest::clear_os_update_status() {
+  if (os_update_status_ != nullptr) os_update_status_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::enterprise_management::OsUpdateStatus& DeviceStatusReportRequest::_internal_os_update_status() const {
+  const ::enterprise_management::OsUpdateStatus* p = os_update_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OsUpdateStatus*>(
+      &::enterprise_management::_OsUpdateStatus_default_instance_);
+}
+inline const ::enterprise_management::OsUpdateStatus& DeviceStatusReportRequest::os_update_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.os_update_status)
+  return _internal_os_update_status();
+}
+inline ::enterprise_management::OsUpdateStatus* DeviceStatusReportRequest::release_os_update_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.os_update_status)
+  _has_bits_[0] &= ~0x00000010u;
+  ::enterprise_management::OsUpdateStatus* temp = os_update_status_;
+  os_update_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OsUpdateStatus* DeviceStatusReportRequest::_internal_mutable_os_update_status() {
+  _has_bits_[0] |= 0x00000010u;
+  if (os_update_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OsUpdateStatus>(GetArenaNoVirtual());
+    os_update_status_ = p;
+  }
+  return os_update_status_;
+}
+inline ::enterprise_management::OsUpdateStatus* DeviceStatusReportRequest::mutable_os_update_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.os_update_status)
+  return _internal_mutable_os_update_status();
+}
+inline void DeviceStatusReportRequest::set_allocated_os_update_status(::enterprise_management::OsUpdateStatus* os_update_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete os_update_status_;
+  }
+  if (os_update_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      os_update_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, os_update_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  os_update_status_ = os_update_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.os_update_status)
+}
+
+// optional .enterprise_management.AppStatus running_kiosk_app = 18;
+inline bool DeviceStatusReportRequest::_internal_has_running_kiosk_app() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || running_kiosk_app_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_running_kiosk_app() const {
+  return _internal_has_running_kiosk_app();
+}
+inline void DeviceStatusReportRequest::clear_running_kiosk_app() {
+  if (running_kiosk_app_ != nullptr) running_kiosk_app_->Clear();
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const ::enterprise_management::AppStatus& DeviceStatusReportRequest::_internal_running_kiosk_app() const {
+  const ::enterprise_management::AppStatus* p = running_kiosk_app_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AppStatus*>(
+      &::enterprise_management::_AppStatus_default_instance_);
+}
+inline const ::enterprise_management::AppStatus& DeviceStatusReportRequest::running_kiosk_app() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.running_kiosk_app)
+  return _internal_running_kiosk_app();
+}
+inline ::enterprise_management::AppStatus* DeviceStatusReportRequest::release_running_kiosk_app() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.running_kiosk_app)
+  _has_bits_[0] &= ~0x00000020u;
+  ::enterprise_management::AppStatus* temp = running_kiosk_app_;
+  running_kiosk_app_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AppStatus* DeviceStatusReportRequest::_internal_mutable_running_kiosk_app() {
+  _has_bits_[0] |= 0x00000020u;
+  if (running_kiosk_app_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AppStatus>(GetArenaNoVirtual());
+    running_kiosk_app_ = p;
+  }
+  return running_kiosk_app_;
+}
+inline ::enterprise_management::AppStatus* DeviceStatusReportRequest::mutable_running_kiosk_app() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.running_kiosk_app)
+  return _internal_mutable_running_kiosk_app();
+}
+inline void DeviceStatusReportRequest::set_allocated_running_kiosk_app(::enterprise_management::AppStatus* running_kiosk_app) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete running_kiosk_app_;
+  }
+  if (running_kiosk_app) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      running_kiosk_app = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, running_kiosk_app, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  running_kiosk_app_ = running_kiosk_app;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.running_kiosk_app)
+}
+
+// optional int32 sound_volume = 19;
+inline bool DeviceStatusReportRequest::_internal_has_sound_volume() const {
+  bool value = (_has_bits_[0] & 0x00400000u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_sound_volume() const {
+  return _internal_has_sound_volume();
+}
+inline void DeviceStatusReportRequest::clear_sound_volume() {
+  sound_volume_ = 0;
+  _has_bits_[0] &= ~0x00400000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceStatusReportRequest::_internal_sound_volume() const {
+  return sound_volume_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceStatusReportRequest::sound_volume() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.sound_volume)
+  return _internal_sound_volume();
+}
+inline void DeviceStatusReportRequest::_internal_set_sound_volume(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00400000u;
+  sound_volume_ = value;
+}
+inline void DeviceStatusReportRequest::set_sound_volume(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_sound_volume(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.sound_volume)
+}
+
+// optional .enterprise_management.TpmVersionInfo tpm_version_info = 21;
+inline bool DeviceStatusReportRequest::_internal_has_tpm_version_info() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || tpm_version_info_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_tpm_version_info() const {
+  return _internal_has_tpm_version_info();
+}
+inline void DeviceStatusReportRequest::clear_tpm_version_info() {
+  if (tpm_version_info_ != nullptr) tpm_version_info_->Clear();
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const ::enterprise_management::TpmVersionInfo& DeviceStatusReportRequest::_internal_tpm_version_info() const {
+  const ::enterprise_management::TpmVersionInfo* p = tpm_version_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::TpmVersionInfo*>(
+      &::enterprise_management::_TpmVersionInfo_default_instance_);
+}
+inline const ::enterprise_management::TpmVersionInfo& DeviceStatusReportRequest::tpm_version_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.tpm_version_info)
+  return _internal_tpm_version_info();
+}
+inline ::enterprise_management::TpmVersionInfo* DeviceStatusReportRequest::release_tpm_version_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.tpm_version_info)
+  _has_bits_[0] &= ~0x00000040u;
+  ::enterprise_management::TpmVersionInfo* temp = tpm_version_info_;
+  tpm_version_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::TpmVersionInfo* DeviceStatusReportRequest::_internal_mutable_tpm_version_info() {
+  _has_bits_[0] |= 0x00000040u;
+  if (tpm_version_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::TpmVersionInfo>(GetArenaNoVirtual());
+    tpm_version_info_ = p;
+  }
+  return tpm_version_info_;
+}
+inline ::enterprise_management::TpmVersionInfo* DeviceStatusReportRequest::mutable_tpm_version_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.tpm_version_info)
+  return _internal_mutable_tpm_version_info();
+}
+inline void DeviceStatusReportRequest::set_allocated_tpm_version_info(::enterprise_management::TpmVersionInfo* tpm_version_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete tpm_version_info_;
+  }
+  if (tpm_version_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      tpm_version_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, tpm_version_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  tpm_version_info_ = tpm_version_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.tpm_version_info)
+}
+
+// optional .enterprise_management.Channel channel = 22;
+inline bool DeviceStatusReportRequest::_internal_has_channel() const {
+  bool value = (_has_bits_[0] & 0x00800000u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_channel() const {
+  return _internal_has_channel();
+}
+inline void DeviceStatusReportRequest::clear_channel() {
+  channel_ = 0;
+  _has_bits_[0] &= ~0x00800000u;
+}
+inline ::enterprise_management::Channel DeviceStatusReportRequest::_internal_channel() const {
+  return static_cast< ::enterprise_management::Channel >(channel_);
+}
+inline ::enterprise_management::Channel DeviceStatusReportRequest::channel() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.channel)
+  return _internal_channel();
+}
+inline void DeviceStatusReportRequest::_internal_set_channel(::enterprise_management::Channel value) {
+  assert(::enterprise_management::Channel_IsValid(value));
+  _has_bits_[0] |= 0x00800000u;
+  channel_ = value;
+}
+inline void DeviceStatusReportRequest::set_channel(::enterprise_management::Channel value) {
+  _internal_set_channel(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.channel)
+}
+
+// optional .enterprise_management.TpmStatusInfo tpm_status_info = 23;
+inline bool DeviceStatusReportRequest::_internal_has_tpm_status_info() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || tpm_status_info_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_tpm_status_info() const {
+  return _internal_has_tpm_status_info();
+}
+inline void DeviceStatusReportRequest::clear_tpm_status_info() {
+  if (tpm_status_info_ != nullptr) tpm_status_info_->Clear();
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const ::enterprise_management::TpmStatusInfo& DeviceStatusReportRequest::_internal_tpm_status_info() const {
+  const ::enterprise_management::TpmStatusInfo* p = tpm_status_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::TpmStatusInfo*>(
+      &::enterprise_management::_TpmStatusInfo_default_instance_);
+}
+inline const ::enterprise_management::TpmStatusInfo& DeviceStatusReportRequest::tpm_status_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.tpm_status_info)
+  return _internal_tpm_status_info();
+}
+inline ::enterprise_management::TpmStatusInfo* DeviceStatusReportRequest::release_tpm_status_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.tpm_status_info)
+  _has_bits_[0] &= ~0x00000080u;
+  ::enterprise_management::TpmStatusInfo* temp = tpm_status_info_;
+  tpm_status_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::TpmStatusInfo* DeviceStatusReportRequest::_internal_mutable_tpm_status_info() {
+  _has_bits_[0] |= 0x00000080u;
+  if (tpm_status_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::TpmStatusInfo>(GetArenaNoVirtual());
+    tpm_status_info_ = p;
+  }
+  return tpm_status_info_;
+}
+inline ::enterprise_management::TpmStatusInfo* DeviceStatusReportRequest::mutable_tpm_status_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.tpm_status_info)
+  return _internal_mutable_tpm_status_info();
+}
+inline void DeviceStatusReportRequest::set_allocated_tpm_status_info(::enterprise_management::TpmStatusInfo* tpm_status_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete tpm_status_info_;
+  }
+  if (tpm_status_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      tpm_status_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, tpm_status_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  tpm_status_info_ = tpm_status_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.tpm_status_info)
+}
+
+// optional bool write_protect_switch = 24;
+inline bool DeviceStatusReportRequest::_internal_has_write_protect_switch() const {
+  bool value = (_has_bits_[0] & 0x01000000u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_write_protect_switch() const {
+  return _internal_has_write_protect_switch();
+}
+inline void DeviceStatusReportRequest::clear_write_protect_switch() {
+  write_protect_switch_ = false;
+  _has_bits_[0] &= ~0x01000000u;
+}
+inline bool DeviceStatusReportRequest::_internal_write_protect_switch() const {
+  return write_protect_switch_;
+}
+inline bool DeviceStatusReportRequest::write_protect_switch() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.write_protect_switch)
+  return _internal_write_protect_switch();
+}
+inline void DeviceStatusReportRequest::_internal_set_write_protect_switch(bool value) {
+  _has_bits_[0] |= 0x01000000u;
+  write_protect_switch_ = value;
+}
+inline void DeviceStatusReportRequest::set_write_protect_switch(bool value) {
+  _internal_set_write_protect_switch(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportRequest.write_protect_switch)
+}
+
+// optional .enterprise_management.PowerStatus power_status = 25;
+inline bool DeviceStatusReportRequest::_internal_has_power_status() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || power_status_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_power_status() const {
+  return _internal_has_power_status();
+}
+inline void DeviceStatusReportRequest::clear_power_status() {
+  if (power_status_ != nullptr) power_status_->Clear();
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const ::enterprise_management::PowerStatus& DeviceStatusReportRequest::_internal_power_status() const {
+  const ::enterprise_management::PowerStatus* p = power_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PowerStatus*>(
+      &::enterprise_management::_PowerStatus_default_instance_);
+}
+inline const ::enterprise_management::PowerStatus& DeviceStatusReportRequest::power_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.power_status)
+  return _internal_power_status();
+}
+inline ::enterprise_management::PowerStatus* DeviceStatusReportRequest::release_power_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.power_status)
+  _has_bits_[0] &= ~0x00000100u;
+  ::enterprise_management::PowerStatus* temp = power_status_;
+  power_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PowerStatus* DeviceStatusReportRequest::_internal_mutable_power_status() {
+  _has_bits_[0] |= 0x00000100u;
+  if (power_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PowerStatus>(GetArenaNoVirtual());
+    power_status_ = p;
+  }
+  return power_status_;
+}
+inline ::enterprise_management::PowerStatus* DeviceStatusReportRequest::mutable_power_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.power_status)
+  return _internal_mutable_power_status();
+}
+inline void DeviceStatusReportRequest::set_allocated_power_status(::enterprise_management::PowerStatus* power_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete power_status_;
+  }
+  if (power_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      power_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, power_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  power_status_ = power_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.power_status)
+}
+
+// optional .enterprise_management.StorageStatus storage_status = 26;
+inline bool DeviceStatusReportRequest::_internal_has_storage_status() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || storage_status_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_storage_status() const {
+  return _internal_has_storage_status();
+}
+inline void DeviceStatusReportRequest::clear_storage_status() {
+  if (storage_status_ != nullptr) storage_status_->Clear();
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline const ::enterprise_management::StorageStatus& DeviceStatusReportRequest::_internal_storage_status() const {
+  const ::enterprise_management::StorageStatus* p = storage_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::StorageStatus*>(
+      &::enterprise_management::_StorageStatus_default_instance_);
+}
+inline const ::enterprise_management::StorageStatus& DeviceStatusReportRequest::storage_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.storage_status)
+  return _internal_storage_status();
+}
+inline ::enterprise_management::StorageStatus* DeviceStatusReportRequest::release_storage_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.storage_status)
+  _has_bits_[0] &= ~0x00000200u;
+  ::enterprise_management::StorageStatus* temp = storage_status_;
+  storage_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::StorageStatus* DeviceStatusReportRequest::_internal_mutable_storage_status() {
+  _has_bits_[0] |= 0x00000200u;
+  if (storage_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::StorageStatus>(GetArenaNoVirtual());
+    storage_status_ = p;
+  }
+  return storage_status_;
+}
+inline ::enterprise_management::StorageStatus* DeviceStatusReportRequest::mutable_storage_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.storage_status)
+  return _internal_mutable_storage_status();
+}
+inline void DeviceStatusReportRequest::set_allocated_storage_status(::enterprise_management::StorageStatus* storage_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete storage_status_;
+  }
+  if (storage_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      storage_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, storage_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  storage_status_ = storage_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.storage_status)
+}
+
+// optional .enterprise_management.BoardStatus board_status = 27;
+inline bool DeviceStatusReportRequest::_internal_has_board_status() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || board_status_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_board_status() const {
+  return _internal_has_board_status();
+}
+inline void DeviceStatusReportRequest::clear_board_status() {
+  if (board_status_ != nullptr) board_status_->Clear();
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline const ::enterprise_management::BoardStatus& DeviceStatusReportRequest::_internal_board_status() const {
+  const ::enterprise_management::BoardStatus* p = board_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BoardStatus*>(
+      &::enterprise_management::_BoardStatus_default_instance_);
+}
+inline const ::enterprise_management::BoardStatus& DeviceStatusReportRequest::board_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.board_status)
+  return _internal_board_status();
+}
+inline ::enterprise_management::BoardStatus* DeviceStatusReportRequest::release_board_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.board_status)
+  _has_bits_[0] &= ~0x00000400u;
+  ::enterprise_management::BoardStatus* temp = board_status_;
+  board_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BoardStatus* DeviceStatusReportRequest::_internal_mutable_board_status() {
+  _has_bits_[0] |= 0x00000400u;
+  if (board_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BoardStatus>(GetArenaNoVirtual());
+    board_status_ = p;
+  }
+  return board_status_;
+}
+inline ::enterprise_management::BoardStatus* DeviceStatusReportRequest::mutable_board_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.board_status)
+  return _internal_mutable_board_status();
+}
+inline void DeviceStatusReportRequest::set_allocated_board_status(::enterprise_management::BoardStatus* board_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete board_status_;
+  }
+  if (board_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      board_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, board_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000400u;
+  } else {
+    _has_bits_[0] &= ~0x00000400u;
+  }
+  board_status_ = board_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.board_status)
+}
+
+// optional .enterprise_management.SystemStatus system_status = 28;
+inline bool DeviceStatusReportRequest::_internal_has_system_status() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || system_status_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_system_status() const {
+  return _internal_has_system_status();
+}
+inline void DeviceStatusReportRequest::clear_system_status() {
+  if (system_status_ != nullptr) system_status_->Clear();
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline const ::enterprise_management::SystemStatus& DeviceStatusReportRequest::_internal_system_status() const {
+  const ::enterprise_management::SystemStatus* p = system_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SystemStatus*>(
+      &::enterprise_management::_SystemStatus_default_instance_);
+}
+inline const ::enterprise_management::SystemStatus& DeviceStatusReportRequest::system_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.system_status)
+  return _internal_system_status();
+}
+inline ::enterprise_management::SystemStatus* DeviceStatusReportRequest::release_system_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.system_status)
+  _has_bits_[0] &= ~0x00000800u;
+  ::enterprise_management::SystemStatus* temp = system_status_;
+  system_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SystemStatus* DeviceStatusReportRequest::_internal_mutable_system_status() {
+  _has_bits_[0] |= 0x00000800u;
+  if (system_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SystemStatus>(GetArenaNoVirtual());
+    system_status_ = p;
+  }
+  return system_status_;
+}
+inline ::enterprise_management::SystemStatus* DeviceStatusReportRequest::mutable_system_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.system_status)
+  return _internal_mutable_system_status();
+}
+inline void DeviceStatusReportRequest::set_allocated_system_status(::enterprise_management::SystemStatus* system_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete system_status_;
+  }
+  if (system_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      system_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, system_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000800u;
+  } else {
+    _has_bits_[0] &= ~0x00000800u;
+  }
+  system_status_ = system_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.system_status)
+}
+
+// optional .enterprise_management.StatefulPartitionInfo stateful_partition_info = 29;
+inline bool DeviceStatusReportRequest::_internal_has_stateful_partition_info() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  PROTOBUF_ASSUME(!value || stateful_partition_info_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_stateful_partition_info() const {
+  return _internal_has_stateful_partition_info();
+}
+inline void DeviceStatusReportRequest::clear_stateful_partition_info() {
+  if (stateful_partition_info_ != nullptr) stateful_partition_info_->Clear();
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline const ::enterprise_management::StatefulPartitionInfo& DeviceStatusReportRequest::_internal_stateful_partition_info() const {
+  const ::enterprise_management::StatefulPartitionInfo* p = stateful_partition_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::StatefulPartitionInfo*>(
+      &::enterprise_management::_StatefulPartitionInfo_default_instance_);
+}
+inline const ::enterprise_management::StatefulPartitionInfo& DeviceStatusReportRequest::stateful_partition_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.stateful_partition_info)
+  return _internal_stateful_partition_info();
+}
+inline ::enterprise_management::StatefulPartitionInfo* DeviceStatusReportRequest::release_stateful_partition_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.stateful_partition_info)
+  _has_bits_[0] &= ~0x00001000u;
+  ::enterprise_management::StatefulPartitionInfo* temp = stateful_partition_info_;
+  stateful_partition_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::StatefulPartitionInfo* DeviceStatusReportRequest::_internal_mutable_stateful_partition_info() {
+  _has_bits_[0] |= 0x00001000u;
+  if (stateful_partition_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::StatefulPartitionInfo>(GetArenaNoVirtual());
+    stateful_partition_info_ = p;
+  }
+  return stateful_partition_info_;
+}
+inline ::enterprise_management::StatefulPartitionInfo* DeviceStatusReportRequest::mutable_stateful_partition_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.stateful_partition_info)
+  return _internal_mutable_stateful_partition_info();
+}
+inline void DeviceStatusReportRequest::set_allocated_stateful_partition_info(::enterprise_management::StatefulPartitionInfo* stateful_partition_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete stateful_partition_info_;
+  }
+  if (stateful_partition_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      stateful_partition_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, stateful_partition_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00001000u;
+  } else {
+    _has_bits_[0] &= ~0x00001000u;
+  }
+  stateful_partition_info_ = stateful_partition_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.stateful_partition_info)
+}
+
+// repeated .enterprise_management.CpuUtilizationInfo cpu_utilization_infos = 30;
+inline int DeviceStatusReportRequest::_internal_cpu_utilization_infos_size() const {
+  return cpu_utilization_infos_.size();
+}
+inline int DeviceStatusReportRequest::cpu_utilization_infos_size() const {
+  return _internal_cpu_utilization_infos_size();
+}
+inline void DeviceStatusReportRequest::clear_cpu_utilization_infos() {
+  cpu_utilization_infos_.Clear();
+}
+inline ::enterprise_management::CpuUtilizationInfo* DeviceStatusReportRequest::mutable_cpu_utilization_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.cpu_utilization_infos)
+  return cpu_utilization_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuUtilizationInfo >*
+DeviceStatusReportRequest::mutable_cpu_utilization_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.cpu_utilization_infos)
+  return &cpu_utilization_infos_;
+}
+inline const ::enterprise_management::CpuUtilizationInfo& DeviceStatusReportRequest::_internal_cpu_utilization_infos(int index) const {
+  return cpu_utilization_infos_.Get(index);
+}
+inline const ::enterprise_management::CpuUtilizationInfo& DeviceStatusReportRequest::cpu_utilization_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.cpu_utilization_infos)
+  return _internal_cpu_utilization_infos(index);
+}
+inline ::enterprise_management::CpuUtilizationInfo* DeviceStatusReportRequest::_internal_add_cpu_utilization_infos() {
+  return cpu_utilization_infos_.Add();
+}
+inline ::enterprise_management::CpuUtilizationInfo* DeviceStatusReportRequest::add_cpu_utilization_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.cpu_utilization_infos)
+  return _internal_add_cpu_utilization_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuUtilizationInfo >&
+DeviceStatusReportRequest::cpu_utilization_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.cpu_utilization_infos)
+  return cpu_utilization_infos_;
+}
+
+// repeated .enterprise_management.SystemFreeRamInfo system_ram_free_infos = 31;
+inline int DeviceStatusReportRequest::_internal_system_ram_free_infos_size() const {
+  return system_ram_free_infos_.size();
+}
+inline int DeviceStatusReportRequest::system_ram_free_infos_size() const {
+  return _internal_system_ram_free_infos_size();
+}
+inline void DeviceStatusReportRequest::clear_system_ram_free_infos() {
+  system_ram_free_infos_.Clear();
+}
+inline ::enterprise_management::SystemFreeRamInfo* DeviceStatusReportRequest::mutable_system_ram_free_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.system_ram_free_infos)
+  return system_ram_free_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SystemFreeRamInfo >*
+DeviceStatusReportRequest::mutable_system_ram_free_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.system_ram_free_infos)
+  return &system_ram_free_infos_;
+}
+inline const ::enterprise_management::SystemFreeRamInfo& DeviceStatusReportRequest::_internal_system_ram_free_infos(int index) const {
+  return system_ram_free_infos_.Get(index);
+}
+inline const ::enterprise_management::SystemFreeRamInfo& DeviceStatusReportRequest::system_ram_free_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.system_ram_free_infos)
+  return _internal_system_ram_free_infos(index);
+}
+inline ::enterprise_management::SystemFreeRamInfo* DeviceStatusReportRequest::_internal_add_system_ram_free_infos() {
+  return system_ram_free_infos_.Add();
+}
+inline ::enterprise_management::SystemFreeRamInfo* DeviceStatusReportRequest::add_system_ram_free_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.system_ram_free_infos)
+  return _internal_add_system_ram_free_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SystemFreeRamInfo >&
+DeviceStatusReportRequest::system_ram_free_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.system_ram_free_infos)
+  return system_ram_free_infos_;
+}
+
+// repeated .enterprise_management.CpuInfo cpu_info = 32;
+inline int DeviceStatusReportRequest::_internal_cpu_info_size() const {
+  return cpu_info_.size();
+}
+inline int DeviceStatusReportRequest::cpu_info_size() const {
+  return _internal_cpu_info_size();
+}
+inline void DeviceStatusReportRequest::clear_cpu_info() {
+  cpu_info_.Clear();
+}
+inline ::enterprise_management::CpuInfo* DeviceStatusReportRequest::mutable_cpu_info(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.cpu_info)
+  return cpu_info_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuInfo >*
+DeviceStatusReportRequest::mutable_cpu_info() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.cpu_info)
+  return &cpu_info_;
+}
+inline const ::enterprise_management::CpuInfo& DeviceStatusReportRequest::_internal_cpu_info(int index) const {
+  return cpu_info_.Get(index);
+}
+inline const ::enterprise_management::CpuInfo& DeviceStatusReportRequest::cpu_info(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.cpu_info)
+  return _internal_cpu_info(index);
+}
+inline ::enterprise_management::CpuInfo* DeviceStatusReportRequest::_internal_add_cpu_info() {
+  return cpu_info_.Add();
+}
+inline ::enterprise_management::CpuInfo* DeviceStatusReportRequest::add_cpu_info() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.cpu_info)
+  return _internal_add_cpu_info();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CpuInfo >&
+DeviceStatusReportRequest::cpu_info() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.cpu_info)
+  return cpu_info_;
+}
+
+// optional .enterprise_management.GraphicsStatus graphics_status = 33;
+inline bool DeviceStatusReportRequest::_internal_has_graphics_status() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  PROTOBUF_ASSUME(!value || graphics_status_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_graphics_status() const {
+  return _internal_has_graphics_status();
+}
+inline void DeviceStatusReportRequest::clear_graphics_status() {
+  if (graphics_status_ != nullptr) graphics_status_->Clear();
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline const ::enterprise_management::GraphicsStatus& DeviceStatusReportRequest::_internal_graphics_status() const {
+  const ::enterprise_management::GraphicsStatus* p = graphics_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::GraphicsStatus*>(
+      &::enterprise_management::_GraphicsStatus_default_instance_);
+}
+inline const ::enterprise_management::GraphicsStatus& DeviceStatusReportRequest::graphics_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.graphics_status)
+  return _internal_graphics_status();
+}
+inline ::enterprise_management::GraphicsStatus* DeviceStatusReportRequest::release_graphics_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.graphics_status)
+  _has_bits_[0] &= ~0x00002000u;
+  ::enterprise_management::GraphicsStatus* temp = graphics_status_;
+  graphics_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::GraphicsStatus* DeviceStatusReportRequest::_internal_mutable_graphics_status() {
+  _has_bits_[0] |= 0x00002000u;
+  if (graphics_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::GraphicsStatus>(GetArenaNoVirtual());
+    graphics_status_ = p;
+  }
+  return graphics_status_;
+}
+inline ::enterprise_management::GraphicsStatus* DeviceStatusReportRequest::mutable_graphics_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.graphics_status)
+  return _internal_mutable_graphics_status();
+}
+inline void DeviceStatusReportRequest::set_allocated_graphics_status(::enterprise_management::GraphicsStatus* graphics_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete graphics_status_;
+  }
+  if (graphics_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      graphics_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, graphics_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00002000u;
+  } else {
+    _has_bits_[0] &= ~0x00002000u;
+  }
+  graphics_status_ = graphics_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.graphics_status)
+}
+
+// repeated .enterprise_management.CrashReportInfo crash_report_infos = 34;
+inline int DeviceStatusReportRequest::_internal_crash_report_infos_size() const {
+  return crash_report_infos_.size();
+}
+inline int DeviceStatusReportRequest::crash_report_infos_size() const {
+  return _internal_crash_report_infos_size();
+}
+inline void DeviceStatusReportRequest::clear_crash_report_infos() {
+  crash_report_infos_.Clear();
+}
+inline ::enterprise_management::CrashReportInfo* DeviceStatusReportRequest::mutable_crash_report_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.crash_report_infos)
+  return crash_report_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrashReportInfo >*
+DeviceStatusReportRequest::mutable_crash_report_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.crash_report_infos)
+  return &crash_report_infos_;
+}
+inline const ::enterprise_management::CrashReportInfo& DeviceStatusReportRequest::_internal_crash_report_infos(int index) const {
+  return crash_report_infos_.Get(index);
+}
+inline const ::enterprise_management::CrashReportInfo& DeviceStatusReportRequest::crash_report_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.crash_report_infos)
+  return _internal_crash_report_infos(index);
+}
+inline ::enterprise_management::CrashReportInfo* DeviceStatusReportRequest::_internal_add_crash_report_infos() {
+  return crash_report_infos_.Add();
+}
+inline ::enterprise_management::CrashReportInfo* DeviceStatusReportRequest::add_crash_report_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.crash_report_infos)
+  return _internal_add_crash_report_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrashReportInfo >&
+DeviceStatusReportRequest::crash_report_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.crash_report_infos)
+  return crash_report_infos_;
+}
+
+// optional .enterprise_management.TimezoneInfo timezone_info = 35;
+inline bool DeviceStatusReportRequest::_internal_has_timezone_info() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  PROTOBUF_ASSUME(!value || timezone_info_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_timezone_info() const {
+  return _internal_has_timezone_info();
+}
+inline void DeviceStatusReportRequest::clear_timezone_info() {
+  if (timezone_info_ != nullptr) timezone_info_->Clear();
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline const ::enterprise_management::TimezoneInfo& DeviceStatusReportRequest::_internal_timezone_info() const {
+  const ::enterprise_management::TimezoneInfo* p = timezone_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::TimezoneInfo*>(
+      &::enterprise_management::_TimezoneInfo_default_instance_);
+}
+inline const ::enterprise_management::TimezoneInfo& DeviceStatusReportRequest::timezone_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.timezone_info)
+  return _internal_timezone_info();
+}
+inline ::enterprise_management::TimezoneInfo* DeviceStatusReportRequest::release_timezone_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.timezone_info)
+  _has_bits_[0] &= ~0x00004000u;
+  ::enterprise_management::TimezoneInfo* temp = timezone_info_;
+  timezone_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::TimezoneInfo* DeviceStatusReportRequest::_internal_mutable_timezone_info() {
+  _has_bits_[0] |= 0x00004000u;
+  if (timezone_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::TimezoneInfo>(GetArenaNoVirtual());
+    timezone_info_ = p;
+  }
+  return timezone_info_;
+}
+inline ::enterprise_management::TimezoneInfo* DeviceStatusReportRequest::mutable_timezone_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.timezone_info)
+  return _internal_mutable_timezone_info();
+}
+inline void DeviceStatusReportRequest::set_allocated_timezone_info(::enterprise_management::TimezoneInfo* timezone_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete timezone_info_;
+  }
+  if (timezone_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      timezone_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, timezone_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00004000u;
+  } else {
+    _has_bits_[0] &= ~0x00004000u;
+  }
+  timezone_info_ = timezone_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.timezone_info)
+}
+
+// optional .enterprise_management.MemoryInfo memory_info = 36;
+inline bool DeviceStatusReportRequest::_internal_has_memory_info() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  PROTOBUF_ASSUME(!value || memory_info_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_memory_info() const {
+  return _internal_has_memory_info();
+}
+inline void DeviceStatusReportRequest::clear_memory_info() {
+  if (memory_info_ != nullptr) memory_info_->Clear();
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline const ::enterprise_management::MemoryInfo& DeviceStatusReportRequest::_internal_memory_info() const {
+  const ::enterprise_management::MemoryInfo* p = memory_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::MemoryInfo*>(
+      &::enterprise_management::_MemoryInfo_default_instance_);
+}
+inline const ::enterprise_management::MemoryInfo& DeviceStatusReportRequest::memory_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.memory_info)
+  return _internal_memory_info();
+}
+inline ::enterprise_management::MemoryInfo* DeviceStatusReportRequest::release_memory_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.memory_info)
+  _has_bits_[0] &= ~0x00008000u;
+  ::enterprise_management::MemoryInfo* temp = memory_info_;
+  memory_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::MemoryInfo* DeviceStatusReportRequest::_internal_mutable_memory_info() {
+  _has_bits_[0] |= 0x00008000u;
+  if (memory_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::MemoryInfo>(GetArenaNoVirtual());
+    memory_info_ = p;
+  }
+  return memory_info_;
+}
+inline ::enterprise_management::MemoryInfo* DeviceStatusReportRequest::mutable_memory_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.memory_info)
+  return _internal_mutable_memory_info();
+}
+inline void DeviceStatusReportRequest::set_allocated_memory_info(::enterprise_management::MemoryInfo* memory_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete memory_info_;
+  }
+  if (memory_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      memory_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, memory_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00008000u;
+  } else {
+    _has_bits_[0] &= ~0x00008000u;
+  }
+  memory_info_ = memory_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.memory_info)
+}
+
+// repeated .enterprise_management.BacklightInfo backlight_info = 37;
+inline int DeviceStatusReportRequest::_internal_backlight_info_size() const {
+  return backlight_info_.size();
+}
+inline int DeviceStatusReportRequest::backlight_info_size() const {
+  return _internal_backlight_info_size();
+}
+inline void DeviceStatusReportRequest::clear_backlight_info() {
+  backlight_info_.Clear();
+}
+inline ::enterprise_management::BacklightInfo* DeviceStatusReportRequest::mutable_backlight_info(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.backlight_info)
+  return backlight_info_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BacklightInfo >*
+DeviceStatusReportRequest::mutable_backlight_info() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.backlight_info)
+  return &backlight_info_;
+}
+inline const ::enterprise_management::BacklightInfo& DeviceStatusReportRequest::_internal_backlight_info(int index) const {
+  return backlight_info_.Get(index);
+}
+inline const ::enterprise_management::BacklightInfo& DeviceStatusReportRequest::backlight_info(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.backlight_info)
+  return _internal_backlight_info(index);
+}
+inline ::enterprise_management::BacklightInfo* DeviceStatusReportRequest::_internal_add_backlight_info() {
+  return backlight_info_.Add();
+}
+inline ::enterprise_management::BacklightInfo* DeviceStatusReportRequest::add_backlight_info() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.backlight_info)
+  return _internal_add_backlight_info();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BacklightInfo >&
+DeviceStatusReportRequest::backlight_info() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.backlight_info)
+  return backlight_info_;
+}
+
+// repeated .enterprise_management.FanInfo fan_info = 38;
+inline int DeviceStatusReportRequest::_internal_fan_info_size() const {
+  return fan_info_.size();
+}
+inline int DeviceStatusReportRequest::fan_info_size() const {
+  return _internal_fan_info_size();
+}
+inline void DeviceStatusReportRequest::clear_fan_info() {
+  fan_info_.Clear();
+}
+inline ::enterprise_management::FanInfo* DeviceStatusReportRequest::mutable_fan_info(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.fan_info)
+  return fan_info_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::FanInfo >*
+DeviceStatusReportRequest::mutable_fan_info() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.fan_info)
+  return &fan_info_;
+}
+inline const ::enterprise_management::FanInfo& DeviceStatusReportRequest::_internal_fan_info(int index) const {
+  return fan_info_.Get(index);
+}
+inline const ::enterprise_management::FanInfo& DeviceStatusReportRequest::fan_info(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.fan_info)
+  return _internal_fan_info(index);
+}
+inline ::enterprise_management::FanInfo* DeviceStatusReportRequest::_internal_add_fan_info() {
+  return fan_info_.Add();
+}
+inline ::enterprise_management::FanInfo* DeviceStatusReportRequest::add_fan_info() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.fan_info)
+  return _internal_add_fan_info();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::FanInfo >&
+DeviceStatusReportRequest::fan_info() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.fan_info)
+  return fan_info_;
+}
+
+// optional .enterprise_management.GlobalCpuInfo global_cpu_info = 39;
+inline bool DeviceStatusReportRequest::_internal_has_global_cpu_info() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  PROTOBUF_ASSUME(!value || global_cpu_info_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_global_cpu_info() const {
+  return _internal_has_global_cpu_info();
+}
+inline void DeviceStatusReportRequest::clear_global_cpu_info() {
+  if (global_cpu_info_ != nullptr) global_cpu_info_->Clear();
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline const ::enterprise_management::GlobalCpuInfo& DeviceStatusReportRequest::_internal_global_cpu_info() const {
+  const ::enterprise_management::GlobalCpuInfo* p = global_cpu_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::GlobalCpuInfo*>(
+      &::enterprise_management::_GlobalCpuInfo_default_instance_);
+}
+inline const ::enterprise_management::GlobalCpuInfo& DeviceStatusReportRequest::global_cpu_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.global_cpu_info)
+  return _internal_global_cpu_info();
+}
+inline ::enterprise_management::GlobalCpuInfo* DeviceStatusReportRequest::release_global_cpu_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.global_cpu_info)
+  _has_bits_[0] &= ~0x00010000u;
+  ::enterprise_management::GlobalCpuInfo* temp = global_cpu_info_;
+  global_cpu_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::GlobalCpuInfo* DeviceStatusReportRequest::_internal_mutable_global_cpu_info() {
+  _has_bits_[0] |= 0x00010000u;
+  if (global_cpu_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::GlobalCpuInfo>(GetArenaNoVirtual());
+    global_cpu_info_ = p;
+  }
+  return global_cpu_info_;
+}
+inline ::enterprise_management::GlobalCpuInfo* DeviceStatusReportRequest::mutable_global_cpu_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.global_cpu_info)
+  return _internal_mutable_global_cpu_info();
+}
+inline void DeviceStatusReportRequest::set_allocated_global_cpu_info(::enterprise_management::GlobalCpuInfo* global_cpu_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete global_cpu_info_;
+  }
+  if (global_cpu_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      global_cpu_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, global_cpu_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00010000u;
+  } else {
+    _has_bits_[0] &= ~0x00010000u;
+  }
+  global_cpu_info_ = global_cpu_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.global_cpu_info)
+}
+
+// repeated .enterprise_management.BluetoothAdapterInfo bluetooth_adapter_info = 40;
+inline int DeviceStatusReportRequest::_internal_bluetooth_adapter_info_size() const {
+  return bluetooth_adapter_info_.size();
+}
+inline int DeviceStatusReportRequest::bluetooth_adapter_info_size() const {
+  return _internal_bluetooth_adapter_info_size();
+}
+inline void DeviceStatusReportRequest::clear_bluetooth_adapter_info() {
+  bluetooth_adapter_info_.Clear();
+}
+inline ::enterprise_management::BluetoothAdapterInfo* DeviceStatusReportRequest::mutable_bluetooth_adapter_info(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.bluetooth_adapter_info)
+  return bluetooth_adapter_info_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BluetoothAdapterInfo >*
+DeviceStatusReportRequest::mutable_bluetooth_adapter_info() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.bluetooth_adapter_info)
+  return &bluetooth_adapter_info_;
+}
+inline const ::enterprise_management::BluetoothAdapterInfo& DeviceStatusReportRequest::_internal_bluetooth_adapter_info(int index) const {
+  return bluetooth_adapter_info_.Get(index);
+}
+inline const ::enterprise_management::BluetoothAdapterInfo& DeviceStatusReportRequest::bluetooth_adapter_info(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.bluetooth_adapter_info)
+  return _internal_bluetooth_adapter_info(index);
+}
+inline ::enterprise_management::BluetoothAdapterInfo* DeviceStatusReportRequest::_internal_add_bluetooth_adapter_info() {
+  return bluetooth_adapter_info_.Add();
+}
+inline ::enterprise_management::BluetoothAdapterInfo* DeviceStatusReportRequest::add_bluetooth_adapter_info() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.bluetooth_adapter_info)
+  return _internal_add_bluetooth_adapter_info();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::BluetoothAdapterInfo >&
+DeviceStatusReportRequest::bluetooth_adapter_info() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.bluetooth_adapter_info)
+  return bluetooth_adapter_info_;
+}
+
+// optional .enterprise_management.SmbiosInfo smbios_info = 41;
+inline bool DeviceStatusReportRequest::_internal_has_smbios_info() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  PROTOBUF_ASSUME(!value || smbios_info_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_smbios_info() const {
+  return _internal_has_smbios_info();
+}
+inline void DeviceStatusReportRequest::clear_smbios_info() {
+  if (smbios_info_ != nullptr) smbios_info_->Clear();
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline const ::enterprise_management::SmbiosInfo& DeviceStatusReportRequest::_internal_smbios_info() const {
+  const ::enterprise_management::SmbiosInfo* p = smbios_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SmbiosInfo*>(
+      &::enterprise_management::_SmbiosInfo_default_instance_);
+}
+inline const ::enterprise_management::SmbiosInfo& DeviceStatusReportRequest::smbios_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.smbios_info)
+  return _internal_smbios_info();
+}
+inline ::enterprise_management::SmbiosInfo* DeviceStatusReportRequest::release_smbios_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.smbios_info)
+  _has_bits_[0] &= ~0x00020000u;
+  ::enterprise_management::SmbiosInfo* temp = smbios_info_;
+  smbios_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SmbiosInfo* DeviceStatusReportRequest::_internal_mutable_smbios_info() {
+  _has_bits_[0] |= 0x00020000u;
+  if (smbios_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SmbiosInfo>(GetArenaNoVirtual());
+    smbios_info_ = p;
+  }
+  return smbios_info_;
+}
+inline ::enterprise_management::SmbiosInfo* DeviceStatusReportRequest::mutable_smbios_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.smbios_info)
+  return _internal_mutable_smbios_info();
+}
+inline void DeviceStatusReportRequest::set_allocated_smbios_info(::enterprise_management::SmbiosInfo* smbios_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete smbios_info_;
+  }
+  if (smbios_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      smbios_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, smbios_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00020000u;
+  } else {
+    _has_bits_[0] &= ~0x00020000u;
+  }
+  smbios_info_ = smbios_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.smbios_info)
+}
+
+// optional .enterprise_management.KernelParameters kernel_parameters = 42;
+inline bool DeviceStatusReportRequest::_internal_has_kernel_parameters() const {
+  bool value = (_has_bits_[0] & 0x00040000u) != 0;
+  PROTOBUF_ASSUME(!value || kernel_parameters_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_kernel_parameters() const {
+  return _internal_has_kernel_parameters();
+}
+inline void DeviceStatusReportRequest::clear_kernel_parameters() {
+  if (kernel_parameters_ != nullptr) kernel_parameters_->Clear();
+  _has_bits_[0] &= ~0x00040000u;
+}
+inline const ::enterprise_management::KernelParameters& DeviceStatusReportRequest::_internal_kernel_parameters() const {
+  const ::enterprise_management::KernelParameters* p = kernel_parameters_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::KernelParameters*>(
+      &::enterprise_management::_KernelParameters_default_instance_);
+}
+inline const ::enterprise_management::KernelParameters& DeviceStatusReportRequest::kernel_parameters() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.kernel_parameters)
+  return _internal_kernel_parameters();
+}
+inline ::enterprise_management::KernelParameters* DeviceStatusReportRequest::release_kernel_parameters() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.kernel_parameters)
+  _has_bits_[0] &= ~0x00040000u;
+  ::enterprise_management::KernelParameters* temp = kernel_parameters_;
+  kernel_parameters_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::KernelParameters* DeviceStatusReportRequest::_internal_mutable_kernel_parameters() {
+  _has_bits_[0] |= 0x00040000u;
+  if (kernel_parameters_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::KernelParameters>(GetArenaNoVirtual());
+    kernel_parameters_ = p;
+  }
+  return kernel_parameters_;
+}
+inline ::enterprise_management::KernelParameters* DeviceStatusReportRequest::mutable_kernel_parameters() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.kernel_parameters)
+  return _internal_mutable_kernel_parameters();
+}
+inline void DeviceStatusReportRequest::set_allocated_kernel_parameters(::enterprise_management::KernelParameters* kernel_parameters) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete kernel_parameters_;
+  }
+  if (kernel_parameters) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      kernel_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, kernel_parameters, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00040000u;
+  } else {
+    _has_bits_[0] &= ~0x00040000u;
+  }
+  kernel_parameters_ = kernel_parameters;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.kernel_parameters)
+}
+
+// optional .enterprise_management.EFIVars efi_vars = 43;
+inline bool DeviceStatusReportRequest::_internal_has_efi_vars() const {
+  bool value = (_has_bits_[0] & 0x00080000u) != 0;
+  PROTOBUF_ASSUME(!value || efi_vars_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_efi_vars() const {
+  return _internal_has_efi_vars();
+}
+inline void DeviceStatusReportRequest::clear_efi_vars() {
+  if (efi_vars_ != nullptr) efi_vars_->Clear();
+  _has_bits_[0] &= ~0x00080000u;
+}
+inline const ::enterprise_management::EFIVars& DeviceStatusReportRequest::_internal_efi_vars() const {
+  const ::enterprise_management::EFIVars* p = efi_vars_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::EFIVars*>(
+      &::enterprise_management::_EFIVars_default_instance_);
+}
+inline const ::enterprise_management::EFIVars& DeviceStatusReportRequest::efi_vars() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.efi_vars)
+  return _internal_efi_vars();
+}
+inline ::enterprise_management::EFIVars* DeviceStatusReportRequest::release_efi_vars() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.efi_vars)
+  _has_bits_[0] &= ~0x00080000u;
+  ::enterprise_management::EFIVars* temp = efi_vars_;
+  efi_vars_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::EFIVars* DeviceStatusReportRequest::_internal_mutable_efi_vars() {
+  _has_bits_[0] |= 0x00080000u;
+  if (efi_vars_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::EFIVars>(GetArenaNoVirtual());
+    efi_vars_ = p;
+  }
+  return efi_vars_;
+}
+inline ::enterprise_management::EFIVars* DeviceStatusReportRequest::mutable_efi_vars() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.efi_vars)
+  return _internal_mutable_efi_vars();
+}
+inline void DeviceStatusReportRequest::set_allocated_efi_vars(::enterprise_management::EFIVars* efi_vars) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete efi_vars_;
+  }
+  if (efi_vars) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      efi_vars = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, efi_vars, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00080000u;
+  } else {
+    _has_bits_[0] &= ~0x00080000u;
+  }
+  efi_vars_ = efi_vars;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.efi_vars)
+}
+
+// optional .enterprise_management.BootInfo boot_info = 44;
+inline bool DeviceStatusReportRequest::_internal_has_boot_info() const {
+  bool value = (_has_bits_[0] & 0x00100000u) != 0;
+  PROTOBUF_ASSUME(!value || boot_info_ != nullptr);
+  return value;
+}
+inline bool DeviceStatusReportRequest::has_boot_info() const {
+  return _internal_has_boot_info();
+}
+inline void DeviceStatusReportRequest::clear_boot_info() {
+  if (boot_info_ != nullptr) boot_info_->Clear();
+  _has_bits_[0] &= ~0x00100000u;
+}
+inline const ::enterprise_management::BootInfo& DeviceStatusReportRequest::_internal_boot_info() const {
+  const ::enterprise_management::BootInfo* p = boot_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BootInfo*>(
+      &::enterprise_management::_BootInfo_default_instance_);
+}
+inline const ::enterprise_management::BootInfo& DeviceStatusReportRequest::boot_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.boot_info)
+  return _internal_boot_info();
+}
+inline ::enterprise_management::BootInfo* DeviceStatusReportRequest::release_boot_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportRequest.boot_info)
+  _has_bits_[0] &= ~0x00100000u;
+  ::enterprise_management::BootInfo* temp = boot_info_;
+  boot_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BootInfo* DeviceStatusReportRequest::_internal_mutable_boot_info() {
+  _has_bits_[0] |= 0x00100000u;
+  if (boot_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BootInfo>(GetArenaNoVirtual());
+    boot_info_ = p;
+  }
+  return boot_info_;
+}
+inline ::enterprise_management::BootInfo* DeviceStatusReportRequest::mutable_boot_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.boot_info)
+  return _internal_mutable_boot_info();
+}
+inline void DeviceStatusReportRequest::set_allocated_boot_info(::enterprise_management::BootInfo* boot_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete boot_info_;
+  }
+  if (boot_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      boot_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, boot_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00100000u;
+  } else {
+    _has_bits_[0] &= ~0x00100000u;
+  }
+  boot_info_ = boot_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportRequest.boot_info)
+}
+
+// repeated .enterprise_management.NetworkAdapterInfo network_adapter_info = 45;
+inline int DeviceStatusReportRequest::_internal_network_adapter_info_size() const {
+  return network_adapter_info_.size();
+}
+inline int DeviceStatusReportRequest::network_adapter_info_size() const {
+  return _internal_network_adapter_info_size();
+}
+inline void DeviceStatusReportRequest::clear_network_adapter_info() {
+  network_adapter_info_.Clear();
+}
+inline ::enterprise_management::NetworkAdapterInfo* DeviceStatusReportRequest::mutable_network_adapter_info(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.network_adapter_info)
+  return network_adapter_info_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkAdapterInfo >*
+DeviceStatusReportRequest::mutable_network_adapter_info() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.network_adapter_info)
+  return &network_adapter_info_;
+}
+inline const ::enterprise_management::NetworkAdapterInfo& DeviceStatusReportRequest::_internal_network_adapter_info(int index) const {
+  return network_adapter_info_.Get(index);
+}
+inline const ::enterprise_management::NetworkAdapterInfo& DeviceStatusReportRequest::network_adapter_info(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.network_adapter_info)
+  return _internal_network_adapter_info(index);
+}
+inline ::enterprise_management::NetworkAdapterInfo* DeviceStatusReportRequest::_internal_add_network_adapter_info() {
+  return network_adapter_info_.Add();
+}
+inline ::enterprise_management::NetworkAdapterInfo* DeviceStatusReportRequest::add_network_adapter_info() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.network_adapter_info)
+  return _internal_add_network_adapter_info();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::NetworkAdapterInfo >&
+DeviceStatusReportRequest::network_adapter_info() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.network_adapter_info)
+  return network_adapter_info_;
+}
+
+// repeated .enterprise_management.LaCrOsBrowserReport lacros_browser_report = 46;
+inline int DeviceStatusReportRequest::_internal_lacros_browser_report_size() const {
+  return lacros_browser_report_.size();
+}
+inline int DeviceStatusReportRequest::lacros_browser_report_size() const {
+  return _internal_lacros_browser_report_size();
+}
+inline void DeviceStatusReportRequest::clear_lacros_browser_report() {
+  lacros_browser_report_.Clear();
+}
+inline ::enterprise_management::LaCrOsBrowserReport* DeviceStatusReportRequest::mutable_lacros_browser_report(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportRequest.lacros_browser_report)
+  return lacros_browser_report_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LaCrOsBrowserReport >*
+DeviceStatusReportRequest::mutable_lacros_browser_report() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStatusReportRequest.lacros_browser_report)
+  return &lacros_browser_report_;
+}
+inline const ::enterprise_management::LaCrOsBrowserReport& DeviceStatusReportRequest::_internal_lacros_browser_report(int index) const {
+  return lacros_browser_report_.Get(index);
+}
+inline const ::enterprise_management::LaCrOsBrowserReport& DeviceStatusReportRequest::lacros_browser_report(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportRequest.lacros_browser_report)
+  return _internal_lacros_browser_report(index);
+}
+inline ::enterprise_management::LaCrOsBrowserReport* DeviceStatusReportRequest::_internal_add_lacros_browser_report() {
+  return lacros_browser_report_.Add();
+}
+inline ::enterprise_management::LaCrOsBrowserReport* DeviceStatusReportRequest::add_lacros_browser_report() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStatusReportRequest.lacros_browser_report)
+  return _internal_add_lacros_browser_report();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LaCrOsBrowserReport >&
+DeviceStatusReportRequest::lacros_browser_report() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStatusReportRequest.lacros_browser_report)
+  return lacros_browser_report_;
+}
+
+// -------------------------------------------------------------------
+
+// OsUpdateStatus
+
+// optional .enterprise_management.OsUpdateStatus.UpdateStatus update_status = 1;
+inline bool OsUpdateStatus::_internal_has_update_status() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool OsUpdateStatus::has_update_status() const {
+  return _internal_has_update_status();
+}
+inline void OsUpdateStatus::clear_update_status() {
+  update_status_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::OsUpdateStatus_UpdateStatus OsUpdateStatus::_internal_update_status() const {
+  return static_cast< ::enterprise_management::OsUpdateStatus_UpdateStatus >(update_status_);
+}
+inline ::enterprise_management::OsUpdateStatus_UpdateStatus OsUpdateStatus::update_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OsUpdateStatus.update_status)
+  return _internal_update_status();
+}
+inline void OsUpdateStatus::_internal_set_update_status(::enterprise_management::OsUpdateStatus_UpdateStatus value) {
+  assert(::enterprise_management::OsUpdateStatus_UpdateStatus_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  update_status_ = value;
+}
+inline void OsUpdateStatus::set_update_status(::enterprise_management::OsUpdateStatus_UpdateStatus value) {
+  _internal_set_update_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OsUpdateStatus.update_status)
+}
+
+// optional string new_platform_version = 2;
+inline bool OsUpdateStatus::_internal_has_new_platform_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OsUpdateStatus::has_new_platform_version() const {
+  return _internal_has_new_platform_version();
+}
+inline void OsUpdateStatus::clear_new_platform_version() {
+  new_platform_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& OsUpdateStatus::new_platform_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OsUpdateStatus.new_platform_version)
+  return _internal_new_platform_version();
+}
+inline void OsUpdateStatus::set_new_platform_version(const std::string& value) {
+  _internal_set_new_platform_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OsUpdateStatus.new_platform_version)
+}
+inline std::string* OsUpdateStatus::mutable_new_platform_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OsUpdateStatus.new_platform_version)
+  return _internal_mutable_new_platform_version();
+}
+inline const std::string& OsUpdateStatus::_internal_new_platform_version() const {
+  return new_platform_version_.GetNoArena();
+}
+inline void OsUpdateStatus::_internal_set_new_platform_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  new_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OsUpdateStatus::set_new_platform_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  new_platform_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OsUpdateStatus.new_platform_version)
+}
+inline void OsUpdateStatus::set_new_platform_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  new_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OsUpdateStatus.new_platform_version)
+}
+inline void OsUpdateStatus::set_new_platform_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  new_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OsUpdateStatus.new_platform_version)
+}
+inline std::string* OsUpdateStatus::_internal_mutable_new_platform_version() {
+  _has_bits_[0] |= 0x00000001u;
+  return new_platform_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OsUpdateStatus::release_new_platform_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OsUpdateStatus.new_platform_version)
+  if (!_internal_has_new_platform_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return new_platform_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OsUpdateStatus::set_allocated_new_platform_version(std::string* new_platform_version) {
+  if (new_platform_version != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  new_platform_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_platform_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OsUpdateStatus.new_platform_version)
+}
+
+// optional string new_required_platform_version = 3;
+inline bool OsUpdateStatus::_internal_has_new_required_platform_version() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool OsUpdateStatus::has_new_required_platform_version() const {
+  return _internal_has_new_required_platform_version();
+}
+inline void OsUpdateStatus::clear_new_required_platform_version() {
+  new_required_platform_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& OsUpdateStatus::new_required_platform_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OsUpdateStatus.new_required_platform_version)
+  return _internal_new_required_platform_version();
+}
+inline void OsUpdateStatus::set_new_required_platform_version(const std::string& value) {
+  _internal_set_new_required_platform_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OsUpdateStatus.new_required_platform_version)
+}
+inline std::string* OsUpdateStatus::mutable_new_required_platform_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OsUpdateStatus.new_required_platform_version)
+  return _internal_mutable_new_required_platform_version();
+}
+inline const std::string& OsUpdateStatus::_internal_new_required_platform_version() const {
+  return new_required_platform_version_.GetNoArena();
+}
+inline void OsUpdateStatus::_internal_set_new_required_platform_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  new_required_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OsUpdateStatus::set_new_required_platform_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  new_required_platform_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OsUpdateStatus.new_required_platform_version)
+}
+inline void OsUpdateStatus::set_new_required_platform_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  new_required_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OsUpdateStatus.new_required_platform_version)
+}
+inline void OsUpdateStatus::set_new_required_platform_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  new_required_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OsUpdateStatus.new_required_platform_version)
+}
+inline std::string* OsUpdateStatus::_internal_mutable_new_required_platform_version() {
+  _has_bits_[0] |= 0x00000002u;
+  return new_required_platform_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OsUpdateStatus::release_new_required_platform_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OsUpdateStatus.new_required_platform_version)
+  if (!_internal_has_new_required_platform_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return new_required_platform_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OsUpdateStatus::set_allocated_new_required_platform_version(std::string* new_required_platform_version) {
+  if (new_required_platform_version != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  new_required_platform_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), new_required_platform_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OsUpdateStatus.new_required_platform_version)
+}
+
+// optional int64 last_checked_timestamp = 4;
+inline bool OsUpdateStatus::_internal_has_last_checked_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool OsUpdateStatus::has_last_checked_timestamp() const {
+  return _internal_has_last_checked_timestamp();
+}
+inline void OsUpdateStatus::clear_last_checked_timestamp() {
+  last_checked_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OsUpdateStatus::_internal_last_checked_timestamp() const {
+  return last_checked_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OsUpdateStatus::last_checked_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OsUpdateStatus.last_checked_timestamp)
+  return _internal_last_checked_timestamp();
+}
+inline void OsUpdateStatus::_internal_set_last_checked_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  last_checked_timestamp_ = value;
+}
+inline void OsUpdateStatus::set_last_checked_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_checked_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OsUpdateStatus.last_checked_timestamp)
+}
+
+// optional int64 last_reboot_timestamp = 5;
+inline bool OsUpdateStatus::_internal_has_last_reboot_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool OsUpdateStatus::has_last_reboot_timestamp() const {
+  return _internal_has_last_reboot_timestamp();
+}
+inline void OsUpdateStatus::clear_last_reboot_timestamp() {
+  last_reboot_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OsUpdateStatus::_internal_last_reboot_timestamp() const {
+  return last_reboot_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 OsUpdateStatus::last_reboot_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OsUpdateStatus.last_reboot_timestamp)
+  return _internal_last_reboot_timestamp();
+}
+inline void OsUpdateStatus::_internal_set_last_reboot_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000008u;
+  last_reboot_timestamp_ = value;
+}
+inline void OsUpdateStatus::set_last_reboot_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_reboot_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OsUpdateStatus.last_reboot_timestamp)
+}
+
+// -------------------------------------------------------------------
+
+// AppStatus
+
+// optional string app_id = 1;
+inline bool AppStatus::_internal_has_app_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AppStatus::has_app_id() const {
+  return _internal_has_app_id();
+}
+inline void AppStatus::clear_app_id() {
+  app_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AppStatus::app_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppStatus.app_id)
+  return _internal_app_id();
+}
+inline void AppStatus::set_app_id(const std::string& value) {
+  _internal_set_app_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppStatus.app_id)
+}
+inline std::string* AppStatus::mutable_app_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppStatus.app_id)
+  return _internal_mutable_app_id();
+}
+inline const std::string& AppStatus::_internal_app_id() const {
+  return app_id_.GetNoArena();
+}
+inline void AppStatus::_internal_set_app_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppStatus::set_app_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppStatus.app_id)
+}
+inline void AppStatus::set_app_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppStatus.app_id)
+}
+inline void AppStatus::set_app_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppStatus.app_id)
+}
+inline std::string* AppStatus::_internal_mutable_app_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return app_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppStatus::release_app_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppStatus.app_id)
+  if (!_internal_has_app_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return app_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppStatus::set_allocated_app_id(std::string* app_id) {
+  if (app_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  app_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppStatus.app_id)
+}
+
+// optional string extension_version = 2;
+inline bool AppStatus::_internal_has_extension_version() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AppStatus::has_extension_version() const {
+  return _internal_has_extension_version();
+}
+inline void AppStatus::clear_extension_version() {
+  extension_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& AppStatus::extension_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppStatus.extension_version)
+  return _internal_extension_version();
+}
+inline void AppStatus::set_extension_version(const std::string& value) {
+  _internal_set_extension_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppStatus.extension_version)
+}
+inline std::string* AppStatus::mutable_extension_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppStatus.extension_version)
+  return _internal_mutable_extension_version();
+}
+inline const std::string& AppStatus::_internal_extension_version() const {
+  return extension_version_.GetNoArena();
+}
+inline void AppStatus::_internal_set_extension_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  extension_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppStatus::set_extension_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  extension_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppStatus.extension_version)
+}
+inline void AppStatus::set_extension_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  extension_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppStatus.extension_version)
+}
+inline void AppStatus::set_extension_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  extension_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppStatus.extension_version)
+}
+inline std::string* AppStatus::_internal_mutable_extension_version() {
+  _has_bits_[0] |= 0x00000002u;
+  return extension_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppStatus::release_extension_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppStatus.extension_version)
+  if (!_internal_has_extension_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return extension_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppStatus::set_allocated_extension_version(std::string* extension_version) {
+  if (extension_version != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  extension_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), extension_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppStatus.extension_version)
+}
+
+// optional string status = 3;
+inline bool AppStatus::_internal_has_status() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AppStatus::has_status() const {
+  return _internal_has_status();
+}
+inline void AppStatus::clear_status() {
+  status_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& AppStatus::status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppStatus.status)
+  return _internal_status();
+}
+inline void AppStatus::set_status(const std::string& value) {
+  _internal_set_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppStatus.status)
+}
+inline std::string* AppStatus::mutable_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppStatus.status)
+  return _internal_mutable_status();
+}
+inline const std::string& AppStatus::_internal_status() const {
+  return status_.GetNoArena();
+}
+inline void AppStatus::_internal_set_status(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  status_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppStatus::set_status(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  status_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppStatus.status)
+}
+inline void AppStatus::set_status(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  status_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppStatus.status)
+}
+inline void AppStatus::set_status(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  status_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppStatus.status)
+}
+inline std::string* AppStatus::_internal_mutable_status() {
+  _has_bits_[0] |= 0x00000004u;
+  return status_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppStatus::release_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppStatus.status)
+  if (!_internal_has_status()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return status_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppStatus::set_allocated_status(std::string* status) {
+  if (status != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  status_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), status);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppStatus.status)
+}
+
+// optional bool error = 4;
+inline bool AppStatus::_internal_has_error() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool AppStatus::has_error() const {
+  return _internal_has_error();
+}
+inline void AppStatus::clear_error() {
+  error_ = false;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline bool AppStatus::_internal_error() const {
+  return error_;
+}
+inline bool AppStatus::error() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppStatus.error)
+  return _internal_error();
+}
+inline void AppStatus::_internal_set_error(bool value) {
+  _has_bits_[0] |= 0x00000010u;
+  error_ = value;
+}
+inline void AppStatus::set_error(bool value) {
+  _internal_set_error(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppStatus.error)
+}
+
+// optional string required_platform_version = 5;
+inline bool AppStatus::_internal_has_required_platform_version() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool AppStatus::has_required_platform_version() const {
+  return _internal_has_required_platform_version();
+}
+inline void AppStatus::clear_required_platform_version() {
+  required_platform_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& AppStatus::required_platform_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppStatus.required_platform_version)
+  return _internal_required_platform_version();
+}
+inline void AppStatus::set_required_platform_version(const std::string& value) {
+  _internal_set_required_platform_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppStatus.required_platform_version)
+}
+inline std::string* AppStatus::mutable_required_platform_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppStatus.required_platform_version)
+  return _internal_mutable_required_platform_version();
+}
+inline const std::string& AppStatus::_internal_required_platform_version() const {
+  return required_platform_version_.GetNoArena();
+}
+inline void AppStatus::_internal_set_required_platform_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  required_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppStatus::set_required_platform_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  required_platform_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppStatus.required_platform_version)
+}
+inline void AppStatus::set_required_platform_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  required_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppStatus.required_platform_version)
+}
+inline void AppStatus::set_required_platform_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  required_platform_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppStatus.required_platform_version)
+}
+inline std::string* AppStatus::_internal_mutable_required_platform_version() {
+  _has_bits_[0] |= 0x00000008u;
+  return required_platform_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppStatus::release_required_platform_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppStatus.required_platform_version)
+  if (!_internal_has_required_platform_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return required_platform_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppStatus::set_allocated_required_platform_version(std::string* required_platform_version) {
+  if (required_platform_version != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  required_platform_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), required_platform_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppStatus.required_platform_version)
+}
+
+// -------------------------------------------------------------------
+
+// AppInfo
+
+// optional string app_id = 1;
+inline bool AppInfo::_internal_has_app_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AppInfo::has_app_id() const {
+  return _internal_has_app_id();
+}
+inline void AppInfo::clear_app_id() {
+  app_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AppInfo::app_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInfo.app_id)
+  return _internal_app_id();
+}
+inline void AppInfo::set_app_id(const std::string& value) {
+  _internal_set_app_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInfo.app_id)
+}
+inline std::string* AppInfo::mutable_app_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppInfo.app_id)
+  return _internal_mutable_app_id();
+}
+inline const std::string& AppInfo::_internal_app_id() const {
+  return app_id_.GetNoArena();
+}
+inline void AppInfo::_internal_set_app_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppInfo::set_app_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppInfo.app_id)
+}
+inline void AppInfo::set_app_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppInfo.app_id)
+}
+inline void AppInfo::set_app_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppInfo.app_id)
+}
+inline std::string* AppInfo::_internal_mutable_app_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return app_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppInfo::release_app_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppInfo.app_id)
+  if (!_internal_has_app_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return app_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppInfo::set_allocated_app_id(std::string* app_id) {
+  if (app_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  app_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppInfo.app_id)
+}
+
+// optional .enterprise_management.AppInfo.AppType app_type = 2;
+inline bool AppInfo::_internal_has_app_type() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool AppInfo::has_app_type() const {
+  return _internal_has_app_type();
+}
+inline void AppInfo::clear_app_type() {
+  app_type_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::AppInfo_AppType AppInfo::_internal_app_type() const {
+  return static_cast< ::enterprise_management::AppInfo_AppType >(app_type_);
+}
+inline ::enterprise_management::AppInfo_AppType AppInfo::app_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInfo.app_type)
+  return _internal_app_type();
+}
+inline void AppInfo::_internal_set_app_type(::enterprise_management::AppInfo_AppType value) {
+  assert(::enterprise_management::AppInfo_AppType_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  app_type_ = value;
+}
+inline void AppInfo::set_app_type(::enterprise_management::AppInfo_AppType value) {
+  _internal_set_app_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInfo.app_type)
+}
+
+// optional string app_name = 3;
+inline bool AppInfo::_internal_has_app_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AppInfo::has_app_name() const {
+  return _internal_has_app_name();
+}
+inline void AppInfo::clear_app_name() {
+  app_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& AppInfo::app_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInfo.app_name)
+  return _internal_app_name();
+}
+inline void AppInfo::set_app_name(const std::string& value) {
+  _internal_set_app_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInfo.app_name)
+}
+inline std::string* AppInfo::mutable_app_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppInfo.app_name)
+  return _internal_mutable_app_name();
+}
+inline const std::string& AppInfo::_internal_app_name() const {
+  return app_name_.GetNoArena();
+}
+inline void AppInfo::_internal_set_app_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppInfo::set_app_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  app_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppInfo.app_name)
+}
+inline void AppInfo::set_app_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppInfo.app_name)
+}
+inline void AppInfo::set_app_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppInfo.app_name)
+}
+inline std::string* AppInfo::_internal_mutable_app_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return app_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppInfo::release_app_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppInfo.app_name)
+  if (!_internal_has_app_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return app_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppInfo::set_allocated_app_name(std::string* app_name) {
+  if (app_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  app_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppInfo.app_name)
+}
+
+// optional .enterprise_management.AppInfo.Status status = 4;
+inline bool AppInfo::_internal_has_status() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool AppInfo::has_status() const {
+  return _internal_has_status();
+}
+inline void AppInfo::clear_status() {
+  status_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::AppInfo_Status AppInfo::_internal_status() const {
+  return static_cast< ::enterprise_management::AppInfo_Status >(status_);
+}
+inline ::enterprise_management::AppInfo_Status AppInfo::status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInfo.status)
+  return _internal_status();
+}
+inline void AppInfo::_internal_set_status(::enterprise_management::AppInfo_Status value) {
+  assert(::enterprise_management::AppInfo_Status_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  status_ = value;
+}
+inline void AppInfo::set_status(::enterprise_management::AppInfo_Status value) {
+  _internal_set_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInfo.status)
+}
+
+// optional int64 install_time = 5;
+inline bool AppInfo::_internal_has_install_time() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool AppInfo::has_install_time() const {
+  return _internal_has_install_time();
+}
+inline void AppInfo::clear_install_time() {
+  install_time_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInfo::_internal_install_time() const {
+  return install_time_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInfo::install_time() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInfo.install_time)
+  return _internal_install_time();
+}
+inline void AppInfo::_internal_set_install_time(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000020u;
+  install_time_ = value;
+}
+inline void AppInfo::set_install_time(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_install_time(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInfo.install_time)
+}
+
+// optional string version = 7;
+inline bool AppInfo::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AppInfo::has_version() const {
+  return _internal_has_version();
+}
+inline void AppInfo::clear_version() {
+  version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& AppInfo::version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInfo.version)
+  return _internal_version();
+}
+inline void AppInfo::set_version(const std::string& value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInfo.version)
+}
+inline std::string* AppInfo::mutable_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppInfo.version)
+  return _internal_mutable_version();
+}
+inline const std::string& AppInfo::_internal_version() const {
+  return version_.GetNoArena();
+}
+inline void AppInfo::_internal_set_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppInfo::set_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppInfo.version)
+}
+inline void AppInfo::set_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppInfo.version)
+}
+inline void AppInfo::set_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppInfo.version)
+}
+inline std::string* AppInfo::_internal_mutable_version() {
+  _has_bits_[0] |= 0x00000004u;
+  return version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppInfo::release_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppInfo.version)
+  if (!_internal_has_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppInfo::set_allocated_version(std::string* version) {
+  if (version != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppInfo.version)
+}
+
+// repeated .enterprise_management.TimePeriod active_time_periods = 8;
+inline int AppInfo::_internal_active_time_periods_size() const {
+  return active_time_periods_.size();
+}
+inline int AppInfo::active_time_periods_size() const {
+  return _internal_active_time_periods_size();
+}
+inline void AppInfo::clear_active_time_periods() {
+  active_time_periods_.Clear();
+}
+inline ::enterprise_management::TimePeriod* AppInfo::mutable_active_time_periods(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppInfo.active_time_periods)
+  return active_time_periods_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod >*
+AppInfo::mutable_active_time_periods() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.AppInfo.active_time_periods)
+  return &active_time_periods_;
+}
+inline const ::enterprise_management::TimePeriod& AppInfo::_internal_active_time_periods(int index) const {
+  return active_time_periods_.Get(index);
+}
+inline const ::enterprise_management::TimePeriod& AppInfo::active_time_periods(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInfo.active_time_periods)
+  return _internal_active_time_periods(index);
+}
+inline ::enterprise_management::TimePeriod* AppInfo::_internal_add_active_time_periods() {
+  return active_time_periods_.Add();
+}
+inline ::enterprise_management::TimePeriod* AppInfo::add_active_time_periods() {
+  // @@protoc_insertion_point(field_add:enterprise_management.AppInfo.active_time_periods)
+  return _internal_add_active_time_periods();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod >&
+AppInfo::active_time_periods() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.AppInfo.active_time_periods)
+  return active_time_periods_;
+}
+
+// -------------------------------------------------------------------
+
+// AndroidAppPermission
+
+// optional string name = 1;
+inline bool AndroidAppPermission::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AndroidAppPermission::has_name() const {
+  return _internal_has_name();
+}
+inline void AndroidAppPermission::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AndroidAppPermission::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppPermission.name)
+  return _internal_name();
+}
+inline void AndroidAppPermission::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppPermission.name)
+}
+inline std::string* AndroidAppPermission::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidAppPermission.name)
+  return _internal_mutable_name();
+}
+inline const std::string& AndroidAppPermission::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void AndroidAppPermission::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidAppPermission::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidAppPermission.name)
+}
+inline void AndroidAppPermission::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidAppPermission.name)
+}
+inline void AndroidAppPermission::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidAppPermission.name)
+}
+inline std::string* AndroidAppPermission::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidAppPermission::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidAppPermission.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidAppPermission::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidAppPermission.name)
+}
+
+// optional bool granted = 2;
+inline bool AndroidAppPermission::_internal_has_granted() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AndroidAppPermission::has_granted() const {
+  return _internal_has_granted();
+}
+inline void AndroidAppPermission::clear_granted() {
+  granted_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool AndroidAppPermission::_internal_granted() const {
+  return granted_;
+}
+inline bool AndroidAppPermission::granted() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppPermission.granted)
+  return _internal_granted();
+}
+inline void AndroidAppPermission::_internal_set_granted(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  granted_ = value;
+}
+inline void AndroidAppPermission::set_granted(bool value) {
+  _internal_set_granted(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppPermission.granted)
+}
+
+// optional bool managed = 3;
+inline bool AndroidAppPermission::_internal_has_managed() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AndroidAppPermission::has_managed() const {
+  return _internal_has_managed();
+}
+inline void AndroidAppPermission::clear_managed() {
+  managed_ = false;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool AndroidAppPermission::_internal_managed() const {
+  return managed_;
+}
+inline bool AndroidAppPermission::managed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppPermission.managed)
+  return _internal_managed();
+}
+inline void AndroidAppPermission::_internal_set_managed(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  managed_ = value;
+}
+inline void AndroidAppPermission::set_managed(bool value) {
+  _internal_set_managed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppPermission.managed)
+}
+
+// -------------------------------------------------------------------
+
+// AndroidAppInfo
+
+// optional string app_id = 1;
+inline bool AndroidAppInfo::_internal_has_app_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AndroidAppInfo::has_app_id() const {
+  return _internal_has_app_id();
+}
+inline void AndroidAppInfo::clear_app_id() {
+  app_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AndroidAppInfo::app_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppInfo.app_id)
+  return _internal_app_id();
+}
+inline void AndroidAppInfo::set_app_id(const std::string& value) {
+  _internal_set_app_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppInfo.app_id)
+}
+inline std::string* AndroidAppInfo::mutable_app_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidAppInfo.app_id)
+  return _internal_mutable_app_id();
+}
+inline const std::string& AndroidAppInfo::_internal_app_id() const {
+  return app_id_.GetNoArena();
+}
+inline void AndroidAppInfo::_internal_set_app_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidAppInfo::set_app_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidAppInfo.app_id)
+}
+inline void AndroidAppInfo::set_app_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidAppInfo.app_id)
+}
+inline void AndroidAppInfo::set_app_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidAppInfo.app_id)
+}
+inline std::string* AndroidAppInfo::_internal_mutable_app_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return app_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidAppInfo::release_app_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidAppInfo.app_id)
+  if (!_internal_has_app_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return app_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidAppInfo::set_allocated_app_id(std::string* app_id) {
+  if (app_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  app_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidAppInfo.app_id)
+}
+
+// optional string app_name = 2;
+inline bool AndroidAppInfo::_internal_has_app_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AndroidAppInfo::has_app_name() const {
+  return _internal_has_app_name();
+}
+inline void AndroidAppInfo::clear_app_name() {
+  app_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& AndroidAppInfo::app_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppInfo.app_name)
+  return _internal_app_name();
+}
+inline void AndroidAppInfo::set_app_name(const std::string& value) {
+  _internal_set_app_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppInfo.app_name)
+}
+inline std::string* AndroidAppInfo::mutable_app_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidAppInfo.app_name)
+  return _internal_mutable_app_name();
+}
+inline const std::string& AndroidAppInfo::_internal_app_name() const {
+  return app_name_.GetNoArena();
+}
+inline void AndroidAppInfo::_internal_set_app_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidAppInfo::set_app_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  app_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidAppInfo.app_name)
+}
+inline void AndroidAppInfo::set_app_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidAppInfo.app_name)
+}
+inline void AndroidAppInfo::set_app_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidAppInfo.app_name)
+}
+inline std::string* AndroidAppInfo::_internal_mutable_app_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return app_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidAppInfo::release_app_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidAppInfo.app_name)
+  if (!_internal_has_app_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return app_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidAppInfo::set_allocated_app_name(std::string* app_name) {
+  if (app_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  app_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidAppInfo.app_name)
+}
+
+// optional string package_name = 3;
+inline bool AndroidAppInfo::_internal_has_package_name() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AndroidAppInfo::has_package_name() const {
+  return _internal_has_package_name();
+}
+inline void AndroidAppInfo::clear_package_name() {
+  package_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& AndroidAppInfo::package_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppInfo.package_name)
+  return _internal_package_name();
+}
+inline void AndroidAppInfo::set_package_name(const std::string& value) {
+  _internal_set_package_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppInfo.package_name)
+}
+inline std::string* AndroidAppInfo::mutable_package_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidAppInfo.package_name)
+  return _internal_mutable_package_name();
+}
+inline const std::string& AndroidAppInfo::_internal_package_name() const {
+  return package_name_.GetNoArena();
+}
+inline void AndroidAppInfo::_internal_set_package_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidAppInfo::set_package_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  package_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidAppInfo.package_name)
+}
+inline void AndroidAppInfo::set_package_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidAppInfo.package_name)
+}
+inline void AndroidAppInfo::set_package_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidAppInfo.package_name)
+}
+inline std::string* AndroidAppInfo::_internal_mutable_package_name() {
+  _has_bits_[0] |= 0x00000004u;
+  return package_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidAppInfo::release_package_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidAppInfo.package_name)
+  if (!_internal_has_package_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return package_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidAppInfo::set_allocated_package_name(std::string* package_name) {
+  if (package_name != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  package_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), package_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidAppInfo.package_name)
+}
+
+// optional .enterprise_management.AndroidAppInfo.AndroidAppStatus status = 4;
+inline bool AndroidAppInfo::_internal_has_status() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool AndroidAppInfo::has_status() const {
+  return _internal_has_status();
+}
+inline void AndroidAppInfo::clear_status() {
+  status_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::AndroidAppInfo_AndroidAppStatus AndroidAppInfo::_internal_status() const {
+  return static_cast< ::enterprise_management::AndroidAppInfo_AndroidAppStatus >(status_);
+}
+inline ::enterprise_management::AndroidAppInfo_AndroidAppStatus AndroidAppInfo::status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppInfo.status)
+  return _internal_status();
+}
+inline void AndroidAppInfo::_internal_set_status(::enterprise_management::AndroidAppInfo_AndroidAppStatus value) {
+  assert(::enterprise_management::AndroidAppInfo_AndroidAppStatus_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  status_ = value;
+}
+inline void AndroidAppInfo::set_status(::enterprise_management::AndroidAppInfo_AndroidAppStatus value) {
+  _internal_set_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppInfo.status)
+}
+
+// optional .enterprise_management.AndroidAppInfo.InstalledSource installed_source = 5;
+inline bool AndroidAppInfo::_internal_has_installed_source() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool AndroidAppInfo::has_installed_source() const {
+  return _internal_has_installed_source();
+}
+inline void AndroidAppInfo::clear_installed_source() {
+  installed_source_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::AndroidAppInfo_InstalledSource AndroidAppInfo::_internal_installed_source() const {
+  return static_cast< ::enterprise_management::AndroidAppInfo_InstalledSource >(installed_source_);
+}
+inline ::enterprise_management::AndroidAppInfo_InstalledSource AndroidAppInfo::installed_source() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppInfo.installed_source)
+  return _internal_installed_source();
+}
+inline void AndroidAppInfo::_internal_set_installed_source(::enterprise_management::AndroidAppInfo_InstalledSource value) {
+  assert(::enterprise_management::AndroidAppInfo_InstalledSource_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  installed_source_ = value;
+}
+inline void AndroidAppInfo::set_installed_source(::enterprise_management::AndroidAppInfo_InstalledSource value) {
+  _internal_set_installed_source(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppInfo.installed_source)
+}
+
+// optional int32 version = 6;
+inline bool AndroidAppInfo::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool AndroidAppInfo::has_version() const {
+  return _internal_has_version();
+}
+inline void AndroidAppInfo::clear_version() {
+  version_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 AndroidAppInfo::_internal_version() const {
+  return version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 AndroidAppInfo::version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppInfo.version)
+  return _internal_version();
+}
+inline void AndroidAppInfo::_internal_set_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  version_ = value;
+}
+inline void AndroidAppInfo::set_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidAppInfo.version)
+}
+
+// repeated .enterprise_management.AndroidAppPermission permissions = 7;
+inline int AndroidAppInfo::_internal_permissions_size() const {
+  return permissions_.size();
+}
+inline int AndroidAppInfo::permissions_size() const {
+  return _internal_permissions_size();
+}
+inline void AndroidAppInfo::clear_permissions() {
+  permissions_.Clear();
+}
+inline ::enterprise_management::AndroidAppPermission* AndroidAppInfo::mutable_permissions(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidAppInfo.permissions)
+  return permissions_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppPermission >*
+AndroidAppInfo::mutable_permissions() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.AndroidAppInfo.permissions)
+  return &permissions_;
+}
+inline const ::enterprise_management::AndroidAppPermission& AndroidAppInfo::_internal_permissions(int index) const {
+  return permissions_.Get(index);
+}
+inline const ::enterprise_management::AndroidAppPermission& AndroidAppInfo::permissions(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidAppInfo.permissions)
+  return _internal_permissions(index);
+}
+inline ::enterprise_management::AndroidAppPermission* AndroidAppInfo::_internal_add_permissions() {
+  return permissions_.Add();
+}
+inline ::enterprise_management::AndroidAppPermission* AndroidAppInfo::add_permissions() {
+  // @@protoc_insertion_point(field_add:enterprise_management.AndroidAppInfo.permissions)
+  return _internal_add_permissions();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppPermission >&
+AndroidAppInfo::permissions() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.AndroidAppInfo.permissions)
+  return permissions_;
+}
+
+// -------------------------------------------------------------------
+
+// ChromeUserProfileReport
+
+// optional string id = 1;
+inline bool ChromeUserProfileReport::_internal_has_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_id() const {
+  return _internal_has_id();
+}
+inline void ChromeUserProfileReport::clear_id() {
+  id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ChromeUserProfileReport::id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.id)
+  return _internal_id();
+}
+inline void ChromeUserProfileReport::set_id(const std::string& value) {
+  _internal_set_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.id)
+}
+inline std::string* ChromeUserProfileReport::mutable_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileReport.id)
+  return _internal_mutable_id();
+}
+inline const std::string& ChromeUserProfileReport::_internal_id() const {
+  return id_.GetNoArena();
+}
+inline void ChromeUserProfileReport::_internal_set_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeUserProfileReport::set_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeUserProfileReport.id)
+}
+inline void ChromeUserProfileReport::set_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeUserProfileReport.id)
+}
+inline void ChromeUserProfileReport::set_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeUserProfileReport.id)
+}
+inline std::string* ChromeUserProfileReport::_internal_mutable_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeUserProfileReport::release_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileReport.id)
+  if (!_internal_has_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeUserProfileReport::set_allocated_id(std::string* id) {
+  if (id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileReport.id)
+}
+
+// optional string chrome_signed_in_user = 2;
+inline bool ChromeUserProfileReport::_internal_has_chrome_signed_in_user() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_chrome_signed_in_user() const {
+  return _internal_has_chrome_signed_in_user();
+}
+inline void ChromeUserProfileReport::clear_chrome_signed_in_user() {
+  chrome_signed_in_user_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ChromeUserProfileReport::chrome_signed_in_user() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.chrome_signed_in_user)
+  return _internal_chrome_signed_in_user();
+}
+inline void ChromeUserProfileReport::set_chrome_signed_in_user(const std::string& value) {
+  _internal_set_chrome_signed_in_user(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.chrome_signed_in_user)
+}
+inline std::string* ChromeUserProfileReport::mutable_chrome_signed_in_user() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileReport.chrome_signed_in_user)
+  return _internal_mutable_chrome_signed_in_user();
+}
+inline const std::string& ChromeUserProfileReport::_internal_chrome_signed_in_user() const {
+  return chrome_signed_in_user_.GetNoArena();
+}
+inline void ChromeUserProfileReport::_internal_set_chrome_signed_in_user(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  chrome_signed_in_user_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeUserProfileReport::set_chrome_signed_in_user(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  chrome_signed_in_user_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeUserProfileReport.chrome_signed_in_user)
+}
+inline void ChromeUserProfileReport::set_chrome_signed_in_user(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  chrome_signed_in_user_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeUserProfileReport.chrome_signed_in_user)
+}
+inline void ChromeUserProfileReport::set_chrome_signed_in_user(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  chrome_signed_in_user_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeUserProfileReport.chrome_signed_in_user)
+}
+inline std::string* ChromeUserProfileReport::_internal_mutable_chrome_signed_in_user() {
+  _has_bits_[0] |= 0x00000002u;
+  return chrome_signed_in_user_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeUserProfileReport::release_chrome_signed_in_user() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileReport.chrome_signed_in_user)
+  if (!_internal_has_chrome_signed_in_user()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return chrome_signed_in_user_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeUserProfileReport::set_allocated_chrome_signed_in_user(std::string* chrome_signed_in_user) {
+  if (chrome_signed_in_user != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  chrome_signed_in_user_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), chrome_signed_in_user);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileReport.chrome_signed_in_user)
+}
+
+// optional string extension_data = 3;
+inline bool ChromeUserProfileReport::_internal_has_extension_data() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_extension_data() const {
+  return _internal_has_extension_data();
+}
+inline void ChromeUserProfileReport::clear_extension_data() {
+  extension_data_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& ChromeUserProfileReport::extension_data() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.extension_data)
+  return _internal_extension_data();
+}
+inline void ChromeUserProfileReport::set_extension_data(const std::string& value) {
+  _internal_set_extension_data(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.extension_data)
+}
+inline std::string* ChromeUserProfileReport::mutable_extension_data() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileReport.extension_data)
+  return _internal_mutable_extension_data();
+}
+inline const std::string& ChromeUserProfileReport::_internal_extension_data() const {
+  return extension_data_.GetNoArena();
+}
+inline void ChromeUserProfileReport::_internal_set_extension_data(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  extension_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeUserProfileReport::set_extension_data(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  extension_data_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeUserProfileReport.extension_data)
+}
+inline void ChromeUserProfileReport::set_extension_data(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  extension_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeUserProfileReport.extension_data)
+}
+inline void ChromeUserProfileReport::set_extension_data(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  extension_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeUserProfileReport.extension_data)
+}
+inline std::string* ChromeUserProfileReport::_internal_mutable_extension_data() {
+  _has_bits_[0] |= 0x00000004u;
+  return extension_data_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeUserProfileReport::release_extension_data() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileReport.extension_data)
+  if (!_internal_has_extension_data()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return extension_data_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeUserProfileReport::set_allocated_extension_data(std::string* extension_data) {
+  if (extension_data != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  extension_data_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), extension_data);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileReport.extension_data)
+}
+
+// optional string plugins = 4;
+inline bool ChromeUserProfileReport::_internal_has_plugins() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_plugins() const {
+  return _internal_has_plugins();
+}
+inline void ChromeUserProfileReport::clear_plugins() {
+  plugins_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& ChromeUserProfileReport::plugins() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.plugins)
+  return _internal_plugins();
+}
+inline void ChromeUserProfileReport::set_plugins(const std::string& value) {
+  _internal_set_plugins(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.plugins)
+}
+inline std::string* ChromeUserProfileReport::mutable_plugins() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileReport.plugins)
+  return _internal_mutable_plugins();
+}
+inline const std::string& ChromeUserProfileReport::_internal_plugins() const {
+  return plugins_.GetNoArena();
+}
+inline void ChromeUserProfileReport::_internal_set_plugins(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  plugins_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeUserProfileReport::set_plugins(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  plugins_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeUserProfileReport.plugins)
+}
+inline void ChromeUserProfileReport::set_plugins(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  plugins_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeUserProfileReport.plugins)
+}
+inline void ChromeUserProfileReport::set_plugins(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  plugins_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeUserProfileReport.plugins)
+}
+inline std::string* ChromeUserProfileReport::_internal_mutable_plugins() {
+  _has_bits_[0] |= 0x00000008u;
+  return plugins_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeUserProfileReport::release_plugins() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileReport.plugins)
+  if (!_internal_has_plugins()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return plugins_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeUserProfileReport::set_allocated_plugins(std::string* plugins) {
+  if (plugins != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  plugins_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), plugins);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileReport.plugins)
+}
+
+// optional string policy_data = 5;
+inline bool ChromeUserProfileReport::_internal_has_policy_data() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_policy_data() const {
+  return _internal_has_policy_data();
+}
+inline void ChromeUserProfileReport::clear_policy_data() {
+  policy_data_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& ChromeUserProfileReport::policy_data() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.policy_data)
+  return _internal_policy_data();
+}
+inline void ChromeUserProfileReport::set_policy_data(const std::string& value) {
+  _internal_set_policy_data(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.policy_data)
+}
+inline std::string* ChromeUserProfileReport::mutable_policy_data() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileReport.policy_data)
+  return _internal_mutable_policy_data();
+}
+inline const std::string& ChromeUserProfileReport::_internal_policy_data() const {
+  return policy_data_.GetNoArena();
+}
+inline void ChromeUserProfileReport::_internal_set_policy_data(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeUserProfileReport::set_policy_data(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_data_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeUserProfileReport.policy_data)
+}
+inline void ChromeUserProfileReport::set_policy_data(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  policy_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeUserProfileReport.policy_data)
+}
+inline void ChromeUserProfileReport::set_policy_data(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_data_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeUserProfileReport.policy_data)
+}
+inline std::string* ChromeUserProfileReport::_internal_mutable_policy_data() {
+  _has_bits_[0] |= 0x00000010u;
+  return policy_data_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeUserProfileReport::release_policy_data() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileReport.policy_data)
+  if (!_internal_has_policy_data()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return policy_data_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeUserProfileReport::set_allocated_policy_data(std::string* policy_data) {
+  if (policy_data != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  policy_data_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_data);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileReport.policy_data)
+}
+
+// optional int64 policy_fetched_timestamp = 6;
+inline bool ChromeUserProfileReport::_internal_has_policy_fetched_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_policy_fetched_timestamp() const {
+  return _internal_has_policy_fetched_timestamp();
+}
+inline void ChromeUserProfileReport::clear_policy_fetched_timestamp() {
+  policy_fetched_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ChromeUserProfileReport::_internal_policy_fetched_timestamp() const {
+  return policy_fetched_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ChromeUserProfileReport::policy_fetched_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.policy_fetched_timestamp)
+  return _internal_policy_fetched_timestamp();
+}
+inline void ChromeUserProfileReport::_internal_set_policy_fetched_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000040u;
+  policy_fetched_timestamp_ = value;
+}
+inline void ChromeUserProfileReport::set_policy_fetched_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_policy_fetched_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.policy_fetched_timestamp)
+}
+
+// optional uint64 safe_browsing_warnings = 7;
+inline bool ChromeUserProfileReport::_internal_has_safe_browsing_warnings() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_safe_browsing_warnings() const {
+  return _internal_has_safe_browsing_warnings();
+}
+inline void ChromeUserProfileReport::clear_safe_browsing_warnings() {
+  safe_browsing_warnings_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 ChromeUserProfileReport::_internal_safe_browsing_warnings() const {
+  return safe_browsing_warnings_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 ChromeUserProfileReport::safe_browsing_warnings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.safe_browsing_warnings)
+  return _internal_safe_browsing_warnings();
+}
+inline void ChromeUserProfileReport::_internal_set_safe_browsing_warnings(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000080u;
+  safe_browsing_warnings_ = value;
+}
+inline void ChromeUserProfileReport::set_safe_browsing_warnings(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_safe_browsing_warnings(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.safe_browsing_warnings)
+}
+
+// optional uint64 safe_browsing_warnings_click_through = 8;
+inline bool ChromeUserProfileReport::_internal_has_safe_browsing_warnings_click_through() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_safe_browsing_warnings_click_through() const {
+  return _internal_has_safe_browsing_warnings_click_through();
+}
+inline void ChromeUserProfileReport::clear_safe_browsing_warnings_click_through() {
+  safe_browsing_warnings_click_through_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 ChromeUserProfileReport::_internal_safe_browsing_warnings_click_through() const {
+  return safe_browsing_warnings_click_through_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 ChromeUserProfileReport::safe_browsing_warnings_click_through() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.safe_browsing_warnings_click_through)
+  return _internal_safe_browsing_warnings_click_through();
+}
+inline void ChromeUserProfileReport::_internal_set_safe_browsing_warnings_click_through(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000100u;
+  safe_browsing_warnings_click_through_ = value;
+}
+inline void ChromeUserProfileReport::set_safe_browsing_warnings_click_through(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_safe_browsing_warnings_click_through(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.safe_browsing_warnings_click_through)
+}
+
+// optional string name = 9;
+inline bool ChromeUserProfileReport::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileReport::has_name() const {
+  return _internal_has_name();
+}
+inline void ChromeUserProfileReport::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& ChromeUserProfileReport::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.name)
+  return _internal_name();
+}
+inline void ChromeUserProfileReport::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileReport.name)
+}
+inline std::string* ChromeUserProfileReport::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileReport.name)
+  return _internal_mutable_name();
+}
+inline const std::string& ChromeUserProfileReport::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void ChromeUserProfileReport::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeUserProfileReport::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeUserProfileReport.name)
+}
+inline void ChromeUserProfileReport::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeUserProfileReport.name)
+}
+inline void ChromeUserProfileReport::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeUserProfileReport.name)
+}
+inline std::string* ChromeUserProfileReport::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000020u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeUserProfileReport::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileReport.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeUserProfileReport::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileReport.name)
+}
+
+// repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+inline int ChromeUserProfileReport::_internal_extension_requests_size() const {
+  return extension_requests_.size();
+}
+inline int ChromeUserProfileReport::extension_requests_size() const {
+  return _internal_extension_requests_size();
+}
+inline void ChromeUserProfileReport::clear_extension_requests() {
+  extension_requests_.Clear();
+}
+inline ::enterprise_management::ExtensionRequest* ChromeUserProfileReport::mutable_extension_requests(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileReport.extension_requests)
+  return extension_requests_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest >*
+ChromeUserProfileReport::mutable_extension_requests() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeUserProfileReport.extension_requests)
+  return &extension_requests_;
+}
+inline const ::enterprise_management::ExtensionRequest& ChromeUserProfileReport::_internal_extension_requests(int index) const {
+  return extension_requests_.Get(index);
+}
+inline const ::enterprise_management::ExtensionRequest& ChromeUserProfileReport::extension_requests(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileReport.extension_requests)
+  return _internal_extension_requests(index);
+}
+inline ::enterprise_management::ExtensionRequest* ChromeUserProfileReport::_internal_add_extension_requests() {
+  return extension_requests_.Add();
+}
+inline ::enterprise_management::ExtensionRequest* ChromeUserProfileReport::add_extension_requests() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeUserProfileReport.extension_requests)
+  return _internal_add_extension_requests();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest >&
+ChromeUserProfileReport::extension_requests() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeUserProfileReport.extension_requests)
+  return extension_requests_;
+}
+
+// -------------------------------------------------------------------
+
+// ChromeSignedInUser
+
+// optional string email = 1;
+inline bool ChromeSignedInUser::_internal_has_email() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ChromeSignedInUser::has_email() const {
+  return _internal_has_email();
+}
+inline void ChromeSignedInUser::clear_email() {
+  email_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ChromeSignedInUser::email() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeSignedInUser.email)
+  return _internal_email();
+}
+inline void ChromeSignedInUser::set_email(const std::string& value) {
+  _internal_set_email(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeSignedInUser.email)
+}
+inline std::string* ChromeSignedInUser::mutable_email() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeSignedInUser.email)
+  return _internal_mutable_email();
+}
+inline const std::string& ChromeSignedInUser::_internal_email() const {
+  return email_.GetNoArena();
+}
+inline void ChromeSignedInUser::_internal_set_email(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeSignedInUser::set_email(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  email_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeSignedInUser.email)
+}
+inline void ChromeSignedInUser::set_email(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeSignedInUser.email)
+}
+inline void ChromeSignedInUser::set_email(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  email_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeSignedInUser.email)
+}
+inline std::string* ChromeSignedInUser::_internal_mutable_email() {
+  _has_bits_[0] |= 0x00000001u;
+  return email_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeSignedInUser::release_email() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeSignedInUser.email)
+  if (!_internal_has_email()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return email_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeSignedInUser::set_allocated_email(std::string* email) {
+  if (email != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  email_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), email);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeSignedInUser.email)
+}
+
+// optional string obfuscated_gaia_id = 2;
+inline bool ChromeSignedInUser::_internal_has_obfuscated_gaia_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ChromeSignedInUser::has_obfuscated_gaia_id() const {
+  return _internal_has_obfuscated_gaia_id();
+}
+inline void ChromeSignedInUser::clear_obfuscated_gaia_id() {
+  obfuscated_gaia_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ChromeSignedInUser::obfuscated_gaia_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeSignedInUser.obfuscated_gaia_id)
+  return _internal_obfuscated_gaia_id();
+}
+inline void ChromeSignedInUser::set_obfuscated_gaia_id(const std::string& value) {
+  _internal_set_obfuscated_gaia_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeSignedInUser.obfuscated_gaia_id)
+}
+inline std::string* ChromeSignedInUser::mutable_obfuscated_gaia_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeSignedInUser.obfuscated_gaia_id)
+  return _internal_mutable_obfuscated_gaia_id();
+}
+inline const std::string& ChromeSignedInUser::_internal_obfuscated_gaia_id() const {
+  return obfuscated_gaia_id_.GetNoArena();
+}
+inline void ChromeSignedInUser::_internal_set_obfuscated_gaia_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  obfuscated_gaia_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeSignedInUser::set_obfuscated_gaia_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  obfuscated_gaia_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeSignedInUser.obfuscated_gaia_id)
+}
+inline void ChromeSignedInUser::set_obfuscated_gaia_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  obfuscated_gaia_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeSignedInUser.obfuscated_gaia_id)
+}
+inline void ChromeSignedInUser::set_obfuscated_gaia_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  obfuscated_gaia_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeSignedInUser.obfuscated_gaia_id)
+}
+inline std::string* ChromeSignedInUser::_internal_mutable_obfuscated_gaia_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return obfuscated_gaia_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeSignedInUser::release_obfuscated_gaia_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeSignedInUser.obfuscated_gaia_id)
+  if (!_internal_has_obfuscated_gaia_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return obfuscated_gaia_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeSignedInUser::set_allocated_obfuscated_gaia_id(std::string* obfuscated_gaia_id) {
+  if (obfuscated_gaia_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  obfuscated_gaia_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), obfuscated_gaia_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeSignedInUser.obfuscated_gaia_id)
+}
+
+// -------------------------------------------------------------------
+
+// ExtensionRequest
+
+// optional string id = 1;
+inline bool ExtensionRequest::_internal_has_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ExtensionRequest::has_id() const {
+  return _internal_has_id();
+}
+inline void ExtensionRequest::clear_id() {
+  id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ExtensionRequest::id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionRequest.id)
+  return _internal_id();
+}
+inline void ExtensionRequest::set_id(const std::string& value) {
+  _internal_set_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionRequest.id)
+}
+inline std::string* ExtensionRequest::mutable_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExtensionRequest.id)
+  return _internal_mutable_id();
+}
+inline const std::string& ExtensionRequest::_internal_id() const {
+  return id_.GetNoArena();
+}
+inline void ExtensionRequest::_internal_set_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ExtensionRequest::set_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ExtensionRequest.id)
+}
+inline void ExtensionRequest::set_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ExtensionRequest.id)
+}
+inline void ExtensionRequest::set_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ExtensionRequest.id)
+}
+inline std::string* ExtensionRequest::_internal_mutable_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ExtensionRequest::release_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ExtensionRequest.id)
+  if (!_internal_has_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ExtensionRequest::set_allocated_id(std::string* id) {
+  if (id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ExtensionRequest.id)
+}
+
+// optional int64 request_timestamp = 2;
+inline bool ExtensionRequest::_internal_has_request_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ExtensionRequest::has_request_timestamp() const {
+  return _internal_has_request_timestamp();
+}
+inline void ExtensionRequest::clear_request_timestamp() {
+  request_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionRequest::_internal_request_timestamp() const {
+  return request_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionRequest::request_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionRequest.request_timestamp)
+  return _internal_request_timestamp();
+}
+inline void ExtensionRequest::_internal_set_request_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  request_timestamp_ = value;
+}
+inline void ExtensionRequest::set_request_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_request_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionRequest.request_timestamp)
+}
+
+// optional string justification = 3;
+inline bool ExtensionRequest::_internal_has_justification() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ExtensionRequest::has_justification() const {
+  return _internal_has_justification();
+}
+inline void ExtensionRequest::clear_justification() {
+  justification_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ExtensionRequest::justification() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionRequest.justification)
+  return _internal_justification();
+}
+inline void ExtensionRequest::set_justification(const std::string& value) {
+  _internal_set_justification(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionRequest.justification)
+}
+inline std::string* ExtensionRequest::mutable_justification() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExtensionRequest.justification)
+  return _internal_mutable_justification();
+}
+inline const std::string& ExtensionRequest::_internal_justification() const {
+  return justification_.GetNoArena();
+}
+inline void ExtensionRequest::_internal_set_justification(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  justification_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ExtensionRequest::set_justification(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  justification_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ExtensionRequest.justification)
+}
+inline void ExtensionRequest::set_justification(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  justification_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ExtensionRequest.justification)
+}
+inline void ExtensionRequest::set_justification(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  justification_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ExtensionRequest.justification)
+}
+inline std::string* ExtensionRequest::_internal_mutable_justification() {
+  _has_bits_[0] |= 0x00000002u;
+  return justification_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ExtensionRequest::release_justification() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ExtensionRequest.justification)
+  if (!_internal_has_justification()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return justification_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ExtensionRequest::set_allocated_justification(std::string* justification) {
+  if (justification != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  justification_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), justification);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ExtensionRequest.justification)
+}
+
+// -------------------------------------------------------------------
+
+// Extension
+
+// optional string id = 1;
+inline bool Extension::_internal_has_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool Extension::has_id() const {
+  return _internal_has_id();
+}
+inline void Extension::clear_id() {
+  id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& Extension::id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.id)
+  return _internal_id();
+}
+inline void Extension::set_id(const std::string& value) {
+  _internal_set_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.id)
+}
+inline std::string* Extension::mutable_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Extension.id)
+  return _internal_mutable_id();
+}
+inline const std::string& Extension::_internal_id() const {
+  return id_.GetNoArena();
+}
+inline void Extension::_internal_set_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Extension::set_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Extension.id)
+}
+inline void Extension::set_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Extension.id)
+}
+inline void Extension::set_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Extension.id)
+}
+inline std::string* Extension::_internal_mutable_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Extension::release_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Extension.id)
+  if (!_internal_has_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Extension::set_allocated_id(std::string* id) {
+  if (id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Extension.id)
+}
+
+// optional string version = 2;
+inline bool Extension::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool Extension::has_version() const {
+  return _internal_has_version();
+}
+inline void Extension::clear_version() {
+  version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& Extension::version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.version)
+  return _internal_version();
+}
+inline void Extension::set_version(const std::string& value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.version)
+}
+inline std::string* Extension::mutable_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Extension.version)
+  return _internal_mutable_version();
+}
+inline const std::string& Extension::_internal_version() const {
+  return version_.GetNoArena();
+}
+inline void Extension::_internal_set_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Extension::set_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Extension.version)
+}
+inline void Extension::set_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Extension.version)
+}
+inline void Extension::set_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Extension.version)
+}
+inline std::string* Extension::_internal_mutable_version() {
+  _has_bits_[0] |= 0x00000002u;
+  return version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Extension::release_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Extension.version)
+  if (!_internal_has_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Extension::set_allocated_version(std::string* version) {
+  if (version != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Extension.version)
+}
+
+// optional string name = 3;
+inline bool Extension::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool Extension::has_name() const {
+  return _internal_has_name();
+}
+inline void Extension::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& Extension::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.name)
+  return _internal_name();
+}
+inline void Extension::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.name)
+}
+inline std::string* Extension::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Extension.name)
+  return _internal_mutable_name();
+}
+inline const std::string& Extension::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void Extension::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Extension::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Extension.name)
+}
+inline void Extension::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Extension.name)
+}
+inline void Extension::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Extension.name)
+}
+inline std::string* Extension::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000004u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Extension::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Extension.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Extension::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Extension.name)
+}
+
+// optional string description = 4;
+inline bool Extension::_internal_has_description() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool Extension::has_description() const {
+  return _internal_has_description();
+}
+inline void Extension::clear_description() {
+  description_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& Extension::description() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.description)
+  return _internal_description();
+}
+inline void Extension::set_description(const std::string& value) {
+  _internal_set_description(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.description)
+}
+inline std::string* Extension::mutable_description() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Extension.description)
+  return _internal_mutable_description();
+}
+inline const std::string& Extension::_internal_description() const {
+  return description_.GetNoArena();
+}
+inline void Extension::_internal_set_description(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  description_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Extension::set_description(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  description_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Extension.description)
+}
+inline void Extension::set_description(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  description_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Extension.description)
+}
+inline void Extension::set_description(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  description_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Extension.description)
+}
+inline std::string* Extension::_internal_mutable_description() {
+  _has_bits_[0] |= 0x00000008u;
+  return description_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Extension::release_description() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Extension.description)
+  if (!_internal_has_description()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return description_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Extension::set_allocated_description(std::string* description) {
+  if (description != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  description_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), description);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Extension.description)
+}
+
+// optional .enterprise_management.Extension.ExtensionType app_type = 5;
+inline bool Extension::_internal_has_app_type() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool Extension::has_app_type() const {
+  return _internal_has_app_type();
+}
+inline void Extension::clear_app_type() {
+  app_type_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::enterprise_management::Extension_ExtensionType Extension::_internal_app_type() const {
+  return static_cast< ::enterprise_management::Extension_ExtensionType >(app_type_);
+}
+inline ::enterprise_management::Extension_ExtensionType Extension::app_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.app_type)
+  return _internal_app_type();
+}
+inline void Extension::_internal_set_app_type(::enterprise_management::Extension_ExtensionType value) {
+  assert(::enterprise_management::Extension_ExtensionType_IsValid(value));
+  _has_bits_[0] |= 0x00000020u;
+  app_type_ = value;
+}
+inline void Extension::set_app_type(::enterprise_management::Extension_ExtensionType value) {
+  _internal_set_app_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.app_type)
+}
+
+// optional string homepage_url = 6;
+inline bool Extension::_internal_has_homepage_url() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool Extension::has_homepage_url() const {
+  return _internal_has_homepage_url();
+}
+inline void Extension::clear_homepage_url() {
+  homepage_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& Extension::homepage_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.homepage_url)
+  return _internal_homepage_url();
+}
+inline void Extension::set_homepage_url(const std::string& value) {
+  _internal_set_homepage_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.homepage_url)
+}
+inline std::string* Extension::mutable_homepage_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Extension.homepage_url)
+  return _internal_mutable_homepage_url();
+}
+inline const std::string& Extension::_internal_homepage_url() const {
+  return homepage_url_.GetNoArena();
+}
+inline void Extension::_internal_set_homepage_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  homepage_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Extension::set_homepage_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  homepage_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Extension.homepage_url)
+}
+inline void Extension::set_homepage_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  homepage_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Extension.homepage_url)
+}
+inline void Extension::set_homepage_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  homepage_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Extension.homepage_url)
+}
+inline std::string* Extension::_internal_mutable_homepage_url() {
+  _has_bits_[0] |= 0x00000010u;
+  return homepage_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Extension::release_homepage_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Extension.homepage_url)
+  if (!_internal_has_homepage_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return homepage_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Extension::set_allocated_homepage_url(std::string* homepage_url) {
+  if (homepage_url != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  homepage_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), homepage_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Extension.homepage_url)
+}
+
+// optional .enterprise_management.Extension.InstallType install_type = 8;
+inline bool Extension::_internal_has_install_type() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool Extension::has_install_type() const {
+  return _internal_has_install_type();
+}
+inline void Extension::clear_install_type() {
+  install_type_ = 0;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::enterprise_management::Extension_InstallType Extension::_internal_install_type() const {
+  return static_cast< ::enterprise_management::Extension_InstallType >(install_type_);
+}
+inline ::enterprise_management::Extension_InstallType Extension::install_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.install_type)
+  return _internal_install_type();
+}
+inline void Extension::_internal_set_install_type(::enterprise_management::Extension_InstallType value) {
+  assert(::enterprise_management::Extension_InstallType_IsValid(value));
+  _has_bits_[0] |= 0x00000040u;
+  install_type_ = value;
+}
+inline void Extension::set_install_type(::enterprise_management::Extension_InstallType value) {
+  _internal_set_install_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.install_type)
+}
+
+// optional bool enabled = 9;
+inline bool Extension::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool Extension::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void Extension::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline bool Extension::_internal_enabled() const {
+  return enabled_;
+}
+inline bool Extension::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.enabled)
+  return _internal_enabled();
+}
+inline void Extension::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000080u;
+  enabled_ = value;
+}
+inline void Extension::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.enabled)
+}
+
+// repeated string permissions = 10;
+inline int Extension::_internal_permissions_size() const {
+  return permissions_.size();
+}
+inline int Extension::permissions_size() const {
+  return _internal_permissions_size();
+}
+inline void Extension::clear_permissions() {
+  permissions_.Clear();
+}
+inline std::string* Extension::add_permissions() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.Extension.permissions)
+  return _internal_add_permissions();
+}
+inline const std::string& Extension::_internal_permissions(int index) const {
+  return permissions_.Get(index);
+}
+inline const std::string& Extension::permissions(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.permissions)
+  return _internal_permissions(index);
+}
+inline std::string* Extension::mutable_permissions(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Extension.permissions)
+  return permissions_.Mutable(index);
+}
+inline void Extension::set_permissions(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.permissions)
+  permissions_.Mutable(index)->assign(value);
+}
+inline void Extension::set_permissions(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.permissions)
+  permissions_.Mutable(index)->assign(std::move(value));
+}
+inline void Extension::set_permissions(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  permissions_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Extension.permissions)
+}
+inline void Extension::set_permissions(int index, const char* value, size_t size) {
+  permissions_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Extension.permissions)
+}
+inline std::string* Extension::_internal_add_permissions() {
+  return permissions_.Add();
+}
+inline void Extension::add_permissions(const std::string& value) {
+  permissions_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.Extension.permissions)
+}
+inline void Extension::add_permissions(std::string&& value) {
+  permissions_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.Extension.permissions)
+}
+inline void Extension::add_permissions(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  permissions_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.Extension.permissions)
+}
+inline void Extension::add_permissions(const char* value, size_t size) {
+  permissions_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.Extension.permissions)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+Extension::permissions() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.Extension.permissions)
+  return permissions_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+Extension::mutable_permissions() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.Extension.permissions)
+  return &permissions_;
+}
+
+// repeated string host_permissions = 11;
+inline int Extension::_internal_host_permissions_size() const {
+  return host_permissions_.size();
+}
+inline int Extension::host_permissions_size() const {
+  return _internal_host_permissions_size();
+}
+inline void Extension::clear_host_permissions() {
+  host_permissions_.Clear();
+}
+inline std::string* Extension::add_host_permissions() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.Extension.host_permissions)
+  return _internal_add_host_permissions();
+}
+inline const std::string& Extension::_internal_host_permissions(int index) const {
+  return host_permissions_.Get(index);
+}
+inline const std::string& Extension::host_permissions(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.host_permissions)
+  return _internal_host_permissions(index);
+}
+inline std::string* Extension::mutable_host_permissions(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Extension.host_permissions)
+  return host_permissions_.Mutable(index);
+}
+inline void Extension::set_host_permissions(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.host_permissions)
+  host_permissions_.Mutable(index)->assign(value);
+}
+inline void Extension::set_host_permissions(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.host_permissions)
+  host_permissions_.Mutable(index)->assign(std::move(value));
+}
+inline void Extension::set_host_permissions(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  host_permissions_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Extension.host_permissions)
+}
+inline void Extension::set_host_permissions(int index, const char* value, size_t size) {
+  host_permissions_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Extension.host_permissions)
+}
+inline std::string* Extension::_internal_add_host_permissions() {
+  return host_permissions_.Add();
+}
+inline void Extension::add_host_permissions(const std::string& value) {
+  host_permissions_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.Extension.host_permissions)
+}
+inline void Extension::add_host_permissions(std::string&& value) {
+  host_permissions_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.Extension.host_permissions)
+}
+inline void Extension::add_host_permissions(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  host_permissions_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.Extension.host_permissions)
+}
+inline void Extension::add_host_permissions(const char* value, size_t size) {
+  host_permissions_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.Extension.host_permissions)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+Extension::host_permissions() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.Extension.host_permissions)
+  return host_permissions_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+Extension::mutable_host_permissions() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.Extension.host_permissions)
+  return &host_permissions_;
+}
+
+// optional bool from_webstore = 13;
+inline bool Extension::_internal_has_from_webstore() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool Extension::has_from_webstore() const {
+  return _internal_has_from_webstore();
+}
+inline void Extension::clear_from_webstore() {
+  from_webstore_ = false;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline bool Extension::_internal_from_webstore() const {
+  return from_webstore_;
+}
+inline bool Extension::from_webstore() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.from_webstore)
+  return _internal_from_webstore();
+}
+inline void Extension::_internal_set_from_webstore(bool value) {
+  _has_bits_[0] |= 0x00000100u;
+  from_webstore_ = value;
+}
+inline void Extension::set_from_webstore(bool value) {
+  _internal_set_from_webstore(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.from_webstore)
+}
+
+// optional int32 manifest_version = 14;
+inline bool Extension::_internal_has_manifest_version() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool Extension::has_manifest_version() const {
+  return _internal_has_manifest_version();
+}
+inline void Extension::clear_manifest_version() {
+  manifest_version_ = 0;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 Extension::_internal_manifest_version() const {
+  return manifest_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 Extension::manifest_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Extension.manifest_version)
+  return _internal_manifest_version();
+}
+inline void Extension::_internal_set_manifest_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000200u;
+  manifest_version_ = value;
+}
+inline void Extension::set_manifest_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_manifest_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Extension.manifest_version)
+}
+
+// -------------------------------------------------------------------
+
+// Plugin
+
+// optional string name = 1;
+inline bool Plugin::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool Plugin::has_name() const {
+  return _internal_has_name();
+}
+inline void Plugin::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& Plugin::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Plugin.name)
+  return _internal_name();
+}
+inline void Plugin::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Plugin.name)
+}
+inline std::string* Plugin::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Plugin.name)
+  return _internal_mutable_name();
+}
+inline const std::string& Plugin::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void Plugin::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Plugin::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Plugin.name)
+}
+inline void Plugin::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Plugin.name)
+}
+inline void Plugin::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Plugin.name)
+}
+inline std::string* Plugin::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Plugin::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Plugin.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Plugin::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Plugin.name)
+}
+
+// optional string version = 2;
+inline bool Plugin::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool Plugin::has_version() const {
+  return _internal_has_version();
+}
+inline void Plugin::clear_version() {
+  version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& Plugin::version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Plugin.version)
+  return _internal_version();
+}
+inline void Plugin::set_version(const std::string& value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Plugin.version)
+}
+inline std::string* Plugin::mutable_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Plugin.version)
+  return _internal_mutable_version();
+}
+inline const std::string& Plugin::_internal_version() const {
+  return version_.GetNoArena();
+}
+inline void Plugin::_internal_set_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Plugin::set_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Plugin.version)
+}
+inline void Plugin::set_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Plugin.version)
+}
+inline void Plugin::set_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Plugin.version)
+}
+inline std::string* Plugin::_internal_mutable_version() {
+  _has_bits_[0] |= 0x00000002u;
+  return version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Plugin::release_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Plugin.version)
+  if (!_internal_has_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Plugin::set_allocated_version(std::string* version) {
+  if (version != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Plugin.version)
+}
+
+// optional string filename = 3;
+inline bool Plugin::_internal_has_filename() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool Plugin::has_filename() const {
+  return _internal_has_filename();
+}
+inline void Plugin::clear_filename() {
+  filename_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& Plugin::filename() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Plugin.filename)
+  return _internal_filename();
+}
+inline void Plugin::set_filename(const std::string& value) {
+  _internal_set_filename(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Plugin.filename)
+}
+inline std::string* Plugin::mutable_filename() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Plugin.filename)
+  return _internal_mutable_filename();
+}
+inline const std::string& Plugin::_internal_filename() const {
+  return filename_.GetNoArena();
+}
+inline void Plugin::_internal_set_filename(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  filename_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Plugin::set_filename(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  filename_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Plugin.filename)
+}
+inline void Plugin::set_filename(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  filename_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Plugin.filename)
+}
+inline void Plugin::set_filename(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  filename_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Plugin.filename)
+}
+inline std::string* Plugin::_internal_mutable_filename() {
+  _has_bits_[0] |= 0x00000004u;
+  return filename_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Plugin::release_filename() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Plugin.filename)
+  if (!_internal_has_filename()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return filename_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Plugin::set_allocated_filename(std::string* filename) {
+  if (filename != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  filename_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), filename);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Plugin.filename)
+}
+
+// optional string description = 4;
+inline bool Plugin::_internal_has_description() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool Plugin::has_description() const {
+  return _internal_has_description();
+}
+inline void Plugin::clear_description() {
+  description_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& Plugin::description() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Plugin.description)
+  return _internal_description();
+}
+inline void Plugin::set_description(const std::string& value) {
+  _internal_set_description(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Plugin.description)
+}
+inline std::string* Plugin::mutable_description() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Plugin.description)
+  return _internal_mutable_description();
+}
+inline const std::string& Plugin::_internal_description() const {
+  return description_.GetNoArena();
+}
+inline void Plugin::_internal_set_description(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  description_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Plugin::set_description(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  description_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Plugin.description)
+}
+inline void Plugin::set_description(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  description_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Plugin.description)
+}
+inline void Plugin::set_description(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  description_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Plugin.description)
+}
+inline std::string* Plugin::_internal_mutable_description() {
+  _has_bits_[0] |= 0x00000008u;
+  return description_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Plugin::release_description() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Plugin.description)
+  if (!_internal_has_description()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return description_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Plugin::set_allocated_description(std::string* description) {
+  if (description != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  description_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), description);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Plugin.description)
+}
+
+// -------------------------------------------------------------------
+
+// Policy
+
+// optional string name = 1;
+inline bool Policy::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool Policy::has_name() const {
+  return _internal_has_name();
+}
+inline void Policy::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& Policy::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Policy.name)
+  return _internal_name();
+}
+inline void Policy::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Policy.name)
+}
+inline std::string* Policy::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Policy.name)
+  return _internal_mutable_name();
+}
+inline const std::string& Policy::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void Policy::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Policy::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Policy.name)
+}
+inline void Policy::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Policy.name)
+}
+inline void Policy::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Policy.name)
+}
+inline std::string* Policy::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Policy::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Policy.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Policy::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Policy.name)
+}
+
+// optional .enterprise_management.Policy.PolicyLevel level = 2;
+inline bool Policy::_internal_has_level() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool Policy::has_level() const {
+  return _internal_has_level();
+}
+inline void Policy::clear_level() {
+  level_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::Policy_PolicyLevel Policy::_internal_level() const {
+  return static_cast< ::enterprise_management::Policy_PolicyLevel >(level_);
+}
+inline ::enterprise_management::Policy_PolicyLevel Policy::level() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Policy.level)
+  return _internal_level();
+}
+inline void Policy::_internal_set_level(::enterprise_management::Policy_PolicyLevel value) {
+  assert(::enterprise_management::Policy_PolicyLevel_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  level_ = value;
+}
+inline void Policy::set_level(::enterprise_management::Policy_PolicyLevel value) {
+  _internal_set_level(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Policy.level)
+}
+
+// optional .enterprise_management.Policy.PolicyScope scope = 3;
+inline bool Policy::_internal_has_scope() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool Policy::has_scope() const {
+  return _internal_has_scope();
+}
+inline void Policy::clear_scope() {
+  scope_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::Policy_PolicyScope Policy::_internal_scope() const {
+  return static_cast< ::enterprise_management::Policy_PolicyScope >(scope_);
+}
+inline ::enterprise_management::Policy_PolicyScope Policy::scope() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Policy.scope)
+  return _internal_scope();
+}
+inline void Policy::_internal_set_scope(::enterprise_management::Policy_PolicyScope value) {
+  assert(::enterprise_management::Policy_PolicyScope_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  scope_ = value;
+}
+inline void Policy::set_scope(::enterprise_management::Policy_PolicyScope value) {
+  _internal_set_scope(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Policy.scope)
+}
+
+// optional .enterprise_management.Policy.PolicySource source = 4;
+inline bool Policy::_internal_has_source() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool Policy::has_source() const {
+  return _internal_has_source();
+}
+inline void Policy::clear_source() {
+  source_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::enterprise_management::Policy_PolicySource Policy::_internal_source() const {
+  return static_cast< ::enterprise_management::Policy_PolicySource >(source_);
+}
+inline ::enterprise_management::Policy_PolicySource Policy::source() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Policy.source)
+  return _internal_source();
+}
+inline void Policy::_internal_set_source(::enterprise_management::Policy_PolicySource value) {
+  assert(::enterprise_management::Policy_PolicySource_IsValid(value));
+  _has_bits_[0] |= 0x00000020u;
+  source_ = value;
+}
+inline void Policy::set_source(::enterprise_management::Policy_PolicySource value) {
+  _internal_set_source(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Policy.source)
+}
+
+// optional string value = 5;
+inline bool Policy::_internal_has_value() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool Policy::has_value() const {
+  return _internal_has_value();
+}
+inline void Policy::clear_value() {
+  value_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& Policy::value() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Policy.value)
+  return _internal_value();
+}
+inline void Policy::set_value(const std::string& value) {
+  _internal_set_value(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Policy.value)
+}
+inline std::string* Policy::mutable_value() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Policy.value)
+  return _internal_mutable_value();
+}
+inline const std::string& Policy::_internal_value() const {
+  return value_.GetNoArena();
+}
+inline void Policy::_internal_set_value(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Policy::set_value(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  value_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Policy.value)
+}
+inline void Policy::set_value(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Policy.value)
+}
+inline void Policy::set_value(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Policy.value)
+}
+inline std::string* Policy::_internal_mutable_value() {
+  _has_bits_[0] |= 0x00000002u;
+  return value_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Policy::release_value() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Policy.value)
+  if (!_internal_has_value()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return value_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Policy::set_allocated_value(std::string* value) {
+  if (value != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  value_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Policy.value)
+}
+
+// optional string error = 6;
+inline bool Policy::_internal_has_error() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool Policy::has_error() const {
+  return _internal_has_error();
+}
+inline void Policy::clear_error() {
+  error_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& Policy::error() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.Policy.error)
+  return _internal_error();
+}
+inline void Policy::set_error(const std::string& value) {
+  _internal_set_error(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.Policy.error)
+}
+inline std::string* Policy::mutable_error() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.Policy.error)
+  return _internal_mutable_error();
+}
+inline const std::string& Policy::_internal_error() const {
+  return error_.GetNoArena();
+}
+inline void Policy::_internal_set_error(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  error_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void Policy::set_error(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  error_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.Policy.error)
+}
+inline void Policy::set_error(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  error_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.Policy.error)
+}
+inline void Policy::set_error(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  error_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.Policy.error)
+}
+inline std::string* Policy::_internal_mutable_error() {
+  _has_bits_[0] |= 0x00000004u;
+  return error_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* Policy::release_error() {
+  // @@protoc_insertion_point(field_release:enterprise_management.Policy.error)
+  if (!_internal_has_error()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return error_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void Policy::set_allocated_error(std::string* error) {
+  if (error != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  error_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), error);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.Policy.error)
+}
+
+// -------------------------------------------------------------------
+
+// ExtensionPolicy
+
+// optional string extension_id = 1;
+inline bool ExtensionPolicy::_internal_has_extension_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ExtensionPolicy::has_extension_id() const {
+  return _internal_has_extension_id();
+}
+inline void ExtensionPolicy::clear_extension_id() {
+  extension_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ExtensionPolicy::extension_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionPolicy.extension_id)
+  return _internal_extension_id();
+}
+inline void ExtensionPolicy::set_extension_id(const std::string& value) {
+  _internal_set_extension_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionPolicy.extension_id)
+}
+inline std::string* ExtensionPolicy::mutable_extension_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExtensionPolicy.extension_id)
+  return _internal_mutable_extension_id();
+}
+inline const std::string& ExtensionPolicy::_internal_extension_id() const {
+  return extension_id_.GetNoArena();
+}
+inline void ExtensionPolicy::_internal_set_extension_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ExtensionPolicy::set_extension_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  extension_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ExtensionPolicy.extension_id)
+}
+inline void ExtensionPolicy::set_extension_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ExtensionPolicy.extension_id)
+}
+inline void ExtensionPolicy::set_extension_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ExtensionPolicy.extension_id)
+}
+inline std::string* ExtensionPolicy::_internal_mutable_extension_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return extension_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ExtensionPolicy::release_extension_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ExtensionPolicy.extension_id)
+  if (!_internal_has_extension_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return extension_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ExtensionPolicy::set_allocated_extension_id(std::string* extension_id) {
+  if (extension_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  extension_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), extension_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ExtensionPolicy.extension_id)
+}
+
+// repeated .enterprise_management.Policy policies = 2;
+inline int ExtensionPolicy::_internal_policies_size() const {
+  return policies_.size();
+}
+inline int ExtensionPolicy::policies_size() const {
+  return _internal_policies_size();
+}
+inline void ExtensionPolicy::clear_policies() {
+  policies_.Clear();
+}
+inline ::enterprise_management::Policy* ExtensionPolicy::mutable_policies(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExtensionPolicy.policies)
+  return policies_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy >*
+ExtensionPolicy::mutable_policies() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ExtensionPolicy.policies)
+  return &policies_;
+}
+inline const ::enterprise_management::Policy& ExtensionPolicy::_internal_policies(int index) const {
+  return policies_.Get(index);
+}
+inline const ::enterprise_management::Policy& ExtensionPolicy::policies(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionPolicy.policies)
+  return _internal_policies(index);
+}
+inline ::enterprise_management::Policy* ExtensionPolicy::_internal_add_policies() {
+  return policies_.Add();
+}
+inline ::enterprise_management::Policy* ExtensionPolicy::add_policies() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ExtensionPolicy.policies)
+  return _internal_add_policies();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy >&
+ExtensionPolicy::policies() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ExtensionPolicy.policies)
+  return policies_;
+}
+
+// -------------------------------------------------------------------
+
+// PolicyFetchTimestamp
+
+// optional string type = 1;
+inline bool PolicyFetchTimestamp::_internal_has_type() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PolicyFetchTimestamp::has_type() const {
+  return _internal_has_type();
+}
+inline void PolicyFetchTimestamp::clear_type() {
+  type_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PolicyFetchTimestamp::type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchTimestamp.type)
+  return _internal_type();
+}
+inline void PolicyFetchTimestamp::set_type(const std::string& value) {
+  _internal_set_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchTimestamp.type)
+}
+inline std::string* PolicyFetchTimestamp::mutable_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyFetchTimestamp.type)
+  return _internal_mutable_type();
+}
+inline const std::string& PolicyFetchTimestamp::_internal_type() const {
+  return type_.GetNoArena();
+}
+inline void PolicyFetchTimestamp::_internal_set_type(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyFetchTimestamp::set_type(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  type_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyFetchTimestamp.type)
+}
+inline void PolicyFetchTimestamp::set_type(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyFetchTimestamp.type)
+}
+inline void PolicyFetchTimestamp::set_type(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyFetchTimestamp.type)
+}
+inline std::string* PolicyFetchTimestamp::_internal_mutable_type() {
+  _has_bits_[0] |= 0x00000001u;
+  return type_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyFetchTimestamp::release_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyFetchTimestamp.type)
+  if (!_internal_has_type()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return type_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyFetchTimestamp::set_allocated_type(std::string* type) {
+  if (type != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  type_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), type);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyFetchTimestamp.type)
+}
+
+// optional int64 timestamp = 2;
+inline bool PolicyFetchTimestamp::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PolicyFetchTimestamp::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void PolicyFetchTimestamp::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PolicyFetchTimestamp::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PolicyFetchTimestamp::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyFetchTimestamp.timestamp)
+  return _internal_timestamp();
+}
+inline void PolicyFetchTimestamp::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  timestamp_ = value;
+}
+inline void PolicyFetchTimestamp::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyFetchTimestamp.timestamp)
+}
+
+// -------------------------------------------------------------------
+
+// ChromeUserProfileInfo
+
+// optional string id = 1;
+inline bool ChromeUserProfileInfo::_internal_has_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileInfo::has_id() const {
+  return _internal_has_id();
+}
+inline void ChromeUserProfileInfo::clear_id() {
+  id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ChromeUserProfileInfo::id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.id)
+  return _internal_id();
+}
+inline void ChromeUserProfileInfo::set_id(const std::string& value) {
+  _internal_set_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileInfo.id)
+}
+inline std::string* ChromeUserProfileInfo::mutable_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileInfo.id)
+  return _internal_mutable_id();
+}
+inline const std::string& ChromeUserProfileInfo::_internal_id() const {
+  return id_.GetNoArena();
+}
+inline void ChromeUserProfileInfo::_internal_set_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeUserProfileInfo::set_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeUserProfileInfo.id)
+}
+inline void ChromeUserProfileInfo::set_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeUserProfileInfo.id)
+}
+inline void ChromeUserProfileInfo::set_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeUserProfileInfo.id)
+}
+inline std::string* ChromeUserProfileInfo::_internal_mutable_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeUserProfileInfo::release_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileInfo.id)
+  if (!_internal_has_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeUserProfileInfo::set_allocated_id(std::string* id) {
+  if (id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileInfo.id)
+}
+
+// optional string name = 2;
+inline bool ChromeUserProfileInfo::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileInfo::has_name() const {
+  return _internal_has_name();
+}
+inline void ChromeUserProfileInfo::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ChromeUserProfileInfo::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.name)
+  return _internal_name();
+}
+inline void ChromeUserProfileInfo::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileInfo.name)
+}
+inline std::string* ChromeUserProfileInfo::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileInfo.name)
+  return _internal_mutable_name();
+}
+inline const std::string& ChromeUserProfileInfo::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void ChromeUserProfileInfo::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeUserProfileInfo::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeUserProfileInfo.name)
+}
+inline void ChromeUserProfileInfo::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeUserProfileInfo.name)
+}
+inline void ChromeUserProfileInfo::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeUserProfileInfo.name)
+}
+inline std::string* ChromeUserProfileInfo::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeUserProfileInfo::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileInfo.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeUserProfileInfo::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileInfo.name)
+}
+
+// optional bool is_detail_available = 3;
+inline bool ChromeUserProfileInfo::_internal_has_is_detail_available() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool ChromeUserProfileInfo::has_is_detail_available() const {
+  return _internal_has_is_detail_available();
+}
+inline void ChromeUserProfileInfo::clear_is_detail_available() {
+  is_detail_available_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool ChromeUserProfileInfo::_internal_is_detail_available() const {
+  return is_detail_available_;
+}
+inline bool ChromeUserProfileInfo::is_detail_available() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.is_detail_available)
+  return _internal_is_detail_available();
+}
+inline void ChromeUserProfileInfo::_internal_set_is_detail_available(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  is_detail_available_ = value;
+}
+inline void ChromeUserProfileInfo::set_is_detail_available(bool value) {
+  _internal_set_is_detail_available(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeUserProfileInfo.is_detail_available)
+}
+
+// optional .enterprise_management.ChromeSignedInUser chrome_signed_in_user = 4;
+inline bool ChromeUserProfileInfo::_internal_has_chrome_signed_in_user() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || chrome_signed_in_user_ != nullptr);
+  return value;
+}
+inline bool ChromeUserProfileInfo::has_chrome_signed_in_user() const {
+  return _internal_has_chrome_signed_in_user();
+}
+inline void ChromeUserProfileInfo::clear_chrome_signed_in_user() {
+  if (chrome_signed_in_user_ != nullptr) chrome_signed_in_user_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::ChromeSignedInUser& ChromeUserProfileInfo::_internal_chrome_signed_in_user() const {
+  const ::enterprise_management::ChromeSignedInUser* p = chrome_signed_in_user_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChromeSignedInUser*>(
+      &::enterprise_management::_ChromeSignedInUser_default_instance_);
+}
+inline const ::enterprise_management::ChromeSignedInUser& ChromeUserProfileInfo::chrome_signed_in_user() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.chrome_signed_in_user)
+  return _internal_chrome_signed_in_user();
+}
+inline ::enterprise_management::ChromeSignedInUser* ChromeUserProfileInfo::release_chrome_signed_in_user() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeUserProfileInfo.chrome_signed_in_user)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::ChromeSignedInUser* temp = chrome_signed_in_user_;
+  chrome_signed_in_user_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChromeSignedInUser* ChromeUserProfileInfo::_internal_mutable_chrome_signed_in_user() {
+  _has_bits_[0] |= 0x00000004u;
+  if (chrome_signed_in_user_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChromeSignedInUser>(GetArenaNoVirtual());
+    chrome_signed_in_user_ = p;
+  }
+  return chrome_signed_in_user_;
+}
+inline ::enterprise_management::ChromeSignedInUser* ChromeUserProfileInfo::mutable_chrome_signed_in_user() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileInfo.chrome_signed_in_user)
+  return _internal_mutable_chrome_signed_in_user();
+}
+inline void ChromeUserProfileInfo::set_allocated_chrome_signed_in_user(::enterprise_management::ChromeSignedInUser* chrome_signed_in_user) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete chrome_signed_in_user_;
+  }
+  if (chrome_signed_in_user) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      chrome_signed_in_user = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, chrome_signed_in_user, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  chrome_signed_in_user_ = chrome_signed_in_user;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeUserProfileInfo.chrome_signed_in_user)
+}
+
+// repeated .enterprise_management.Extension extensions = 5;
+inline int ChromeUserProfileInfo::_internal_extensions_size() const {
+  return extensions_.size();
+}
+inline int ChromeUserProfileInfo::extensions_size() const {
+  return _internal_extensions_size();
+}
+inline void ChromeUserProfileInfo::clear_extensions() {
+  extensions_.Clear();
+}
+inline ::enterprise_management::Extension* ChromeUserProfileInfo::mutable_extensions(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileInfo.extensions)
+  return extensions_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Extension >*
+ChromeUserProfileInfo::mutable_extensions() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeUserProfileInfo.extensions)
+  return &extensions_;
+}
+inline const ::enterprise_management::Extension& ChromeUserProfileInfo::_internal_extensions(int index) const {
+  return extensions_.Get(index);
+}
+inline const ::enterprise_management::Extension& ChromeUserProfileInfo::extensions(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.extensions)
+  return _internal_extensions(index);
+}
+inline ::enterprise_management::Extension* ChromeUserProfileInfo::_internal_add_extensions() {
+  return extensions_.Add();
+}
+inline ::enterprise_management::Extension* ChromeUserProfileInfo::add_extensions() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeUserProfileInfo.extensions)
+  return _internal_add_extensions();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Extension >&
+ChromeUserProfileInfo::extensions() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeUserProfileInfo.extensions)
+  return extensions_;
+}
+
+// repeated .enterprise_management.ExtensionRequest extension_requests = 10;
+inline int ChromeUserProfileInfo::_internal_extension_requests_size() const {
+  return extension_requests_.size();
+}
+inline int ChromeUserProfileInfo::extension_requests_size() const {
+  return _internal_extension_requests_size();
+}
+inline void ChromeUserProfileInfo::clear_extension_requests() {
+  extension_requests_.Clear();
+}
+inline ::enterprise_management::ExtensionRequest* ChromeUserProfileInfo::mutable_extension_requests(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileInfo.extension_requests)
+  return extension_requests_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest >*
+ChromeUserProfileInfo::mutable_extension_requests() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeUserProfileInfo.extension_requests)
+  return &extension_requests_;
+}
+inline const ::enterprise_management::ExtensionRequest& ChromeUserProfileInfo::_internal_extension_requests(int index) const {
+  return extension_requests_.Get(index);
+}
+inline const ::enterprise_management::ExtensionRequest& ChromeUserProfileInfo::extension_requests(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.extension_requests)
+  return _internal_extension_requests(index);
+}
+inline ::enterprise_management::ExtensionRequest* ChromeUserProfileInfo::_internal_add_extension_requests() {
+  return extension_requests_.Add();
+}
+inline ::enterprise_management::ExtensionRequest* ChromeUserProfileInfo::add_extension_requests() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeUserProfileInfo.extension_requests)
+  return _internal_add_extension_requests();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionRequest >&
+ChromeUserProfileInfo::extension_requests() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeUserProfileInfo.extension_requests)
+  return extension_requests_;
+}
+
+// repeated .enterprise_management.Policy chrome_policies = 7;
+inline int ChromeUserProfileInfo::_internal_chrome_policies_size() const {
+  return chrome_policies_.size();
+}
+inline int ChromeUserProfileInfo::chrome_policies_size() const {
+  return _internal_chrome_policies_size();
+}
+inline void ChromeUserProfileInfo::clear_chrome_policies() {
+  chrome_policies_.Clear();
+}
+inline ::enterprise_management::Policy* ChromeUserProfileInfo::mutable_chrome_policies(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileInfo.chrome_policies)
+  return chrome_policies_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy >*
+ChromeUserProfileInfo::mutable_chrome_policies() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeUserProfileInfo.chrome_policies)
+  return &chrome_policies_;
+}
+inline const ::enterprise_management::Policy& ChromeUserProfileInfo::_internal_chrome_policies(int index) const {
+  return chrome_policies_.Get(index);
+}
+inline const ::enterprise_management::Policy& ChromeUserProfileInfo::chrome_policies(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.chrome_policies)
+  return _internal_chrome_policies(index);
+}
+inline ::enterprise_management::Policy* ChromeUserProfileInfo::_internal_add_chrome_policies() {
+  return chrome_policies_.Add();
+}
+inline ::enterprise_management::Policy* ChromeUserProfileInfo::add_chrome_policies() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeUserProfileInfo.chrome_policies)
+  return _internal_add_chrome_policies();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Policy >&
+ChromeUserProfileInfo::chrome_policies() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeUserProfileInfo.chrome_policies)
+  return chrome_policies_;
+}
+
+// repeated .enterprise_management.ExtensionPolicy extension_policies = 8;
+inline int ChromeUserProfileInfo::_internal_extension_policies_size() const {
+  return extension_policies_.size();
+}
+inline int ChromeUserProfileInfo::extension_policies_size() const {
+  return _internal_extension_policies_size();
+}
+inline void ChromeUserProfileInfo::clear_extension_policies() {
+  extension_policies_.Clear();
+}
+inline ::enterprise_management::ExtensionPolicy* ChromeUserProfileInfo::mutable_extension_policies(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileInfo.extension_policies)
+  return extension_policies_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionPolicy >*
+ChromeUserProfileInfo::mutable_extension_policies() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeUserProfileInfo.extension_policies)
+  return &extension_policies_;
+}
+inline const ::enterprise_management::ExtensionPolicy& ChromeUserProfileInfo::_internal_extension_policies(int index) const {
+  return extension_policies_.Get(index);
+}
+inline const ::enterprise_management::ExtensionPolicy& ChromeUserProfileInfo::extension_policies(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.extension_policies)
+  return _internal_extension_policies(index);
+}
+inline ::enterprise_management::ExtensionPolicy* ChromeUserProfileInfo::_internal_add_extension_policies() {
+  return extension_policies_.Add();
+}
+inline ::enterprise_management::ExtensionPolicy* ChromeUserProfileInfo::add_extension_policies() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeUserProfileInfo.extension_policies)
+  return _internal_add_extension_policies();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionPolicy >&
+ChromeUserProfileInfo::extension_policies() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeUserProfileInfo.extension_policies)
+  return extension_policies_;
+}
+
+// repeated .enterprise_management.PolicyFetchTimestamp policy_fetched_timestamps = 9;
+inline int ChromeUserProfileInfo::_internal_policy_fetched_timestamps_size() const {
+  return policy_fetched_timestamps_.size();
+}
+inline int ChromeUserProfileInfo::policy_fetched_timestamps_size() const {
+  return _internal_policy_fetched_timestamps_size();
+}
+inline void ChromeUserProfileInfo::clear_policy_fetched_timestamps() {
+  policy_fetched_timestamps_.Clear();
+}
+inline ::enterprise_management::PolicyFetchTimestamp* ChromeUserProfileInfo::mutable_policy_fetched_timestamps(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeUserProfileInfo.policy_fetched_timestamps)
+  return policy_fetched_timestamps_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchTimestamp >*
+ChromeUserProfileInfo::mutable_policy_fetched_timestamps() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeUserProfileInfo.policy_fetched_timestamps)
+  return &policy_fetched_timestamps_;
+}
+inline const ::enterprise_management::PolicyFetchTimestamp& ChromeUserProfileInfo::_internal_policy_fetched_timestamps(int index) const {
+  return policy_fetched_timestamps_.Get(index);
+}
+inline const ::enterprise_management::PolicyFetchTimestamp& ChromeUserProfileInfo::policy_fetched_timestamps(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeUserProfileInfo.policy_fetched_timestamps)
+  return _internal_policy_fetched_timestamps(index);
+}
+inline ::enterprise_management::PolicyFetchTimestamp* ChromeUserProfileInfo::_internal_add_policy_fetched_timestamps() {
+  return policy_fetched_timestamps_.Add();
+}
+inline ::enterprise_management::PolicyFetchTimestamp* ChromeUserProfileInfo::add_policy_fetched_timestamps() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeUserProfileInfo.policy_fetched_timestamps)
+  return _internal_add_policy_fetched_timestamps();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyFetchTimestamp >&
+ChromeUserProfileInfo::policy_fetched_timestamps() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeUserProfileInfo.policy_fetched_timestamps)
+  return policy_fetched_timestamps_;
+}
+
+// -------------------------------------------------------------------
+
+// BrowserReport
+
+// optional string browser_version = 1;
+inline bool BrowserReport::_internal_has_browser_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BrowserReport::has_browser_version() const {
+  return _internal_has_browser_version();
+}
+inline void BrowserReport::clear_browser_version() {
+  browser_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& BrowserReport::browser_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserReport.browser_version)
+  return _internal_browser_version();
+}
+inline void BrowserReport::set_browser_version(const std::string& value) {
+  _internal_set_browser_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserReport.browser_version)
+}
+inline std::string* BrowserReport::mutable_browser_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserReport.browser_version)
+  return _internal_mutable_browser_version();
+}
+inline const std::string& BrowserReport::_internal_browser_version() const {
+  return browser_version_.GetNoArena();
+}
+inline void BrowserReport::_internal_set_browser_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BrowserReport::set_browser_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  browser_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BrowserReport.browser_version)
+}
+inline void BrowserReport::set_browser_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BrowserReport.browser_version)
+}
+inline void BrowserReport::set_browser_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BrowserReport.browser_version)
+}
+inline std::string* BrowserReport::_internal_mutable_browser_version() {
+  _has_bits_[0] |= 0x00000001u;
+  return browser_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BrowserReport::release_browser_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BrowserReport.browser_version)
+  if (!_internal_has_browser_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return browser_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BrowserReport::set_allocated_browser_version(std::string* browser_version) {
+  if (browser_version != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  browser_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), browser_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BrowserReport.browser_version)
+}
+
+// optional .enterprise_management.Channel channel = 2;
+inline bool BrowserReport::_internal_has_channel() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool BrowserReport::has_channel() const {
+  return _internal_has_channel();
+}
+inline void BrowserReport::clear_channel() {
+  channel_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::Channel BrowserReport::_internal_channel() const {
+  return static_cast< ::enterprise_management::Channel >(channel_);
+}
+inline ::enterprise_management::Channel BrowserReport::channel() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserReport.channel)
+  return _internal_channel();
+}
+inline void BrowserReport::_internal_set_channel(::enterprise_management::Channel value) {
+  assert(::enterprise_management::Channel_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  channel_ = value;
+}
+inline void BrowserReport::set_channel(::enterprise_management::Channel value) {
+  _internal_set_channel(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserReport.channel)
+}
+
+// optional string executable_path = 3;
+inline bool BrowserReport::_internal_has_executable_path() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BrowserReport::has_executable_path() const {
+  return _internal_has_executable_path();
+}
+inline void BrowserReport::clear_executable_path() {
+  executable_path_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& BrowserReport::executable_path() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserReport.executable_path)
+  return _internal_executable_path();
+}
+inline void BrowserReport::set_executable_path(const std::string& value) {
+  _internal_set_executable_path(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserReport.executable_path)
+}
+inline std::string* BrowserReport::mutable_executable_path() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserReport.executable_path)
+  return _internal_mutable_executable_path();
+}
+inline const std::string& BrowserReport::_internal_executable_path() const {
+  return executable_path_.GetNoArena();
+}
+inline void BrowserReport::_internal_set_executable_path(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  executable_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BrowserReport::set_executable_path(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  executable_path_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BrowserReport.executable_path)
+}
+inline void BrowserReport::set_executable_path(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  executable_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BrowserReport.executable_path)
+}
+inline void BrowserReport::set_executable_path(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  executable_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BrowserReport.executable_path)
+}
+inline std::string* BrowserReport::_internal_mutable_executable_path() {
+  _has_bits_[0] |= 0x00000002u;
+  return executable_path_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BrowserReport::release_executable_path() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BrowserReport.executable_path)
+  if (!_internal_has_executable_path()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return executable_path_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BrowserReport::set_allocated_executable_path(std::string* executable_path) {
+  if (executable_path != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  executable_path_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), executable_path);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BrowserReport.executable_path)
+}
+
+// repeated .enterprise_management.ChromeUserProfileReport chrome_user_profile_reports = 4;
+inline int BrowserReport::_internal_chrome_user_profile_reports_size() const {
+  return chrome_user_profile_reports_.size();
+}
+inline int BrowserReport::chrome_user_profile_reports_size() const {
+  return _internal_chrome_user_profile_reports_size();
+}
+inline void BrowserReport::clear_chrome_user_profile_reports() {
+  chrome_user_profile_reports_.Clear();
+}
+inline ::enterprise_management::ChromeUserProfileReport* BrowserReport::mutable_chrome_user_profile_reports(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserReport.chrome_user_profile_reports)
+  return chrome_user_profile_reports_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileReport >*
+BrowserReport::mutable_chrome_user_profile_reports() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.BrowserReport.chrome_user_profile_reports)
+  return &chrome_user_profile_reports_;
+}
+inline const ::enterprise_management::ChromeUserProfileReport& BrowserReport::_internal_chrome_user_profile_reports(int index) const {
+  return chrome_user_profile_reports_.Get(index);
+}
+inline const ::enterprise_management::ChromeUserProfileReport& BrowserReport::chrome_user_profile_reports(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserReport.chrome_user_profile_reports)
+  return _internal_chrome_user_profile_reports(index);
+}
+inline ::enterprise_management::ChromeUserProfileReport* BrowserReport::_internal_add_chrome_user_profile_reports() {
+  return chrome_user_profile_reports_.Add();
+}
+inline ::enterprise_management::ChromeUserProfileReport* BrowserReport::add_chrome_user_profile_reports() {
+  // @@protoc_insertion_point(field_add:enterprise_management.BrowserReport.chrome_user_profile_reports)
+  return _internal_add_chrome_user_profile_reports();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileReport >&
+BrowserReport::chrome_user_profile_reports() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.BrowserReport.chrome_user_profile_reports)
+  return chrome_user_profile_reports_;
+}
+
+// repeated .enterprise_management.ChromeUserProfileInfo chrome_user_profile_infos = 6;
+inline int BrowserReport::_internal_chrome_user_profile_infos_size() const {
+  return chrome_user_profile_infos_.size();
+}
+inline int BrowserReport::chrome_user_profile_infos_size() const {
+  return _internal_chrome_user_profile_infos_size();
+}
+inline void BrowserReport::clear_chrome_user_profile_infos() {
+  chrome_user_profile_infos_.Clear();
+}
+inline ::enterprise_management::ChromeUserProfileInfo* BrowserReport::mutable_chrome_user_profile_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserReport.chrome_user_profile_infos)
+  return chrome_user_profile_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileInfo >*
+BrowserReport::mutable_chrome_user_profile_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.BrowserReport.chrome_user_profile_infos)
+  return &chrome_user_profile_infos_;
+}
+inline const ::enterprise_management::ChromeUserProfileInfo& BrowserReport::_internal_chrome_user_profile_infos(int index) const {
+  return chrome_user_profile_infos_.Get(index);
+}
+inline const ::enterprise_management::ChromeUserProfileInfo& BrowserReport::chrome_user_profile_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserReport.chrome_user_profile_infos)
+  return _internal_chrome_user_profile_infos(index);
+}
+inline ::enterprise_management::ChromeUserProfileInfo* BrowserReport::_internal_add_chrome_user_profile_infos() {
+  return chrome_user_profile_infos_.Add();
+}
+inline ::enterprise_management::ChromeUserProfileInfo* BrowserReport::add_chrome_user_profile_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.BrowserReport.chrome_user_profile_infos)
+  return _internal_add_chrome_user_profile_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ChromeUserProfileInfo >&
+BrowserReport::chrome_user_profile_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.BrowserReport.chrome_user_profile_infos)
+  return chrome_user_profile_infos_;
+}
+
+// repeated .enterprise_management.Plugin plugins = 7;
+inline int BrowserReport::_internal_plugins_size() const {
+  return plugins_.size();
+}
+inline int BrowserReport::plugins_size() const {
+  return _internal_plugins_size();
+}
+inline void BrowserReport::clear_plugins() {
+  plugins_.Clear();
+}
+inline ::enterprise_management::Plugin* BrowserReport::mutable_plugins(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserReport.plugins)
+  return plugins_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Plugin >*
+BrowserReport::mutable_plugins() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.BrowserReport.plugins)
+  return &plugins_;
+}
+inline const ::enterprise_management::Plugin& BrowserReport::_internal_plugins(int index) const {
+  return plugins_.Get(index);
+}
+inline const ::enterprise_management::Plugin& BrowserReport::plugins(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserReport.plugins)
+  return _internal_plugins(index);
+}
+inline ::enterprise_management::Plugin* BrowserReport::_internal_add_plugins() {
+  return plugins_.Add();
+}
+inline ::enterprise_management::Plugin* BrowserReport::add_plugins() {
+  // @@protoc_insertion_point(field_add:enterprise_management.BrowserReport.plugins)
+  return _internal_add_plugins();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::Plugin >&
+BrowserReport::plugins() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.BrowserReport.plugins)
+  return plugins_;
+}
+
+// optional string installed_browser_version = 8;
+inline bool BrowserReport::_internal_has_installed_browser_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool BrowserReport::has_installed_browser_version() const {
+  return _internal_has_installed_browser_version();
+}
+inline void BrowserReport::clear_installed_browser_version() {
+  installed_browser_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& BrowserReport::installed_browser_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserReport.installed_browser_version)
+  return _internal_installed_browser_version();
+}
+inline void BrowserReport::set_installed_browser_version(const std::string& value) {
+  _internal_set_installed_browser_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserReport.installed_browser_version)
+}
+inline std::string* BrowserReport::mutable_installed_browser_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserReport.installed_browser_version)
+  return _internal_mutable_installed_browser_version();
+}
+inline const std::string& BrowserReport::_internal_installed_browser_version() const {
+  return installed_browser_version_.GetNoArena();
+}
+inline void BrowserReport::_internal_set_installed_browser_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  installed_browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BrowserReport::set_installed_browser_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  installed_browser_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BrowserReport.installed_browser_version)
+}
+inline void BrowserReport::set_installed_browser_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  installed_browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BrowserReport.installed_browser_version)
+}
+inline void BrowserReport::set_installed_browser_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  installed_browser_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BrowserReport.installed_browser_version)
+}
+inline std::string* BrowserReport::_internal_mutable_installed_browser_version() {
+  _has_bits_[0] |= 0x00000004u;
+  return installed_browser_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BrowserReport::release_installed_browser_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BrowserReport.installed_browser_version)
+  if (!_internal_has_installed_browser_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return installed_browser_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BrowserReport::set_allocated_installed_browser_version(std::string* installed_browser_version) {
+  if (installed_browser_version != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  installed_browser_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), installed_browser_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BrowserReport.installed_browser_version)
+}
+
+// optional bool is_extended_stable_channel = 9 [default = false];
+inline bool BrowserReport::_internal_has_is_extended_stable_channel() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool BrowserReport::has_is_extended_stable_channel() const {
+  return _internal_has_is_extended_stable_channel();
+}
+inline void BrowserReport::clear_is_extended_stable_channel() {
+  is_extended_stable_channel_ = false;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline bool BrowserReport::_internal_is_extended_stable_channel() const {
+  return is_extended_stable_channel_;
+}
+inline bool BrowserReport::is_extended_stable_channel() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserReport.is_extended_stable_channel)
+  return _internal_is_extended_stable_channel();
+}
+inline void BrowserReport::_internal_set_is_extended_stable_channel(bool value) {
+  _has_bits_[0] |= 0x00000010u;
+  is_extended_stable_channel_ = value;
+}
+inline void BrowserReport::set_is_extended_stable_channel(bool value) {
+  _internal_set_is_extended_stable_channel(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserReport.is_extended_stable_channel)
+}
+
+// -------------------------------------------------------------------
+
+// OSReport
+
+// optional string name = 1;
+inline bool OSReport::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool OSReport::has_name() const {
+  return _internal_has_name();
+}
+inline void OSReport::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& OSReport::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OSReport.name)
+  return _internal_name();
+}
+inline void OSReport::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OSReport.name)
+}
+inline std::string* OSReport::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OSReport.name)
+  return _internal_mutable_name();
+}
+inline const std::string& OSReport::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void OSReport::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OSReport::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OSReport.name)
+}
+inline void OSReport::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OSReport.name)
+}
+inline void OSReport::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OSReport.name)
+}
+inline std::string* OSReport::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OSReport::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OSReport.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OSReport::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OSReport.name)
+}
+
+// optional string arch = 2;
+inline bool OSReport::_internal_has_arch() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool OSReport::has_arch() const {
+  return _internal_has_arch();
+}
+inline void OSReport::clear_arch() {
+  arch_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& OSReport::arch() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OSReport.arch)
+  return _internal_arch();
+}
+inline void OSReport::set_arch(const std::string& value) {
+  _internal_set_arch(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OSReport.arch)
+}
+inline std::string* OSReport::mutable_arch() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OSReport.arch)
+  return _internal_mutable_arch();
+}
+inline const std::string& OSReport::_internal_arch() const {
+  return arch_.GetNoArena();
+}
+inline void OSReport::_internal_set_arch(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  arch_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OSReport::set_arch(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  arch_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OSReport.arch)
+}
+inline void OSReport::set_arch(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  arch_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OSReport.arch)
+}
+inline void OSReport::set_arch(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  arch_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OSReport.arch)
+}
+inline std::string* OSReport::_internal_mutable_arch() {
+  _has_bits_[0] |= 0x00000002u;
+  return arch_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OSReport::release_arch() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OSReport.arch)
+  if (!_internal_has_arch()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return arch_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OSReport::set_allocated_arch(std::string* arch) {
+  if (arch != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  arch_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), arch);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OSReport.arch)
+}
+
+// optional string version = 3;
+inline bool OSReport::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool OSReport::has_version() const {
+  return _internal_has_version();
+}
+inline void OSReport::clear_version() {
+  version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& OSReport::version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.OSReport.version)
+  return _internal_version();
+}
+inline void OSReport::set_version(const std::string& value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.OSReport.version)
+}
+inline std::string* OSReport::mutable_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.OSReport.version)
+  return _internal_mutable_version();
+}
+inline const std::string& OSReport::_internal_version() const {
+  return version_.GetNoArena();
+}
+inline void OSReport::_internal_set_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void OSReport::set_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.OSReport.version)
+}
+inline void OSReport::set_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.OSReport.version)
+}
+inline void OSReport::set_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.OSReport.version)
+}
+inline std::string* OSReport::_internal_mutable_version() {
+  _has_bits_[0] |= 0x00000004u;
+  return version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* OSReport::release_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.OSReport.version)
+  if (!_internal_has_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void OSReport::set_allocated_version(std::string* version) {
+  if (version != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.OSReport.version)
+}
+
+// -------------------------------------------------------------------
+
+// ChromeDesktopReportRequest
+
+// optional string machine_name = 1 [deprecated = true];
+inline bool ChromeDesktopReportRequest::_internal_has_machine_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_machine_name() const {
+  return _internal_has_machine_name();
+}
+inline void ChromeDesktopReportRequest::clear_machine_name() {
+  machine_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ChromeDesktopReportRequest::machine_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.machine_name)
+  return _internal_machine_name();
+}
+inline void ChromeDesktopReportRequest::set_machine_name(const std::string& value) {
+  _internal_set_machine_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.machine_name)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_machine_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.machine_name)
+  return _internal_mutable_machine_name();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_machine_name() const {
+  return machine_name_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_machine_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_machine_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.machine_name)
+}
+inline void ChromeDesktopReportRequest::set_machine_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.machine_name)
+}
+inline void ChromeDesktopReportRequest::set_machine_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.machine_name)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_machine_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return machine_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_machine_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.machine_name)
+  if (!_internal_has_machine_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return machine_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_machine_name(std::string* machine_name) {
+  if (machine_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  machine_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), machine_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.machine_name)
+}
+
+// optional string os_info = 2;
+inline bool ChromeDesktopReportRequest::_internal_has_os_info() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_os_info() const {
+  return _internal_has_os_info();
+}
+inline void ChromeDesktopReportRequest::clear_os_info() {
+  os_info_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ChromeDesktopReportRequest::os_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.os_info)
+  return _internal_os_info();
+}
+inline void ChromeDesktopReportRequest::set_os_info(const std::string& value) {
+  _internal_set_os_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.os_info)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_os_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.os_info)
+  return _internal_mutable_os_info();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_os_info() const {
+  return os_info_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_os_info(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  os_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_os_info(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  os_info_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.os_info)
+}
+inline void ChromeDesktopReportRequest::set_os_info(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  os_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.os_info)
+}
+inline void ChromeDesktopReportRequest::set_os_info(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  os_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.os_info)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_os_info() {
+  _has_bits_[0] |= 0x00000002u;
+  return os_info_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_os_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.os_info)
+  if (!_internal_has_os_info()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return os_info_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_os_info(std::string* os_info) {
+  if (os_info != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  os_info_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), os_info);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.os_info)
+}
+
+// optional string os_user = 3;
+inline bool ChromeDesktopReportRequest::_internal_has_os_user() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_os_user() const {
+  return _internal_has_os_user();
+}
+inline void ChromeDesktopReportRequest::clear_os_user() {
+  os_user_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& ChromeDesktopReportRequest::os_user() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.os_user)
+  return _internal_os_user();
+}
+inline void ChromeDesktopReportRequest::set_os_user(const std::string& value) {
+  _internal_set_os_user(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.os_user)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_os_user() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.os_user)
+  return _internal_mutable_os_user();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_os_user() const {
+  return os_user_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_os_user(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  os_user_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_os_user(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  os_user_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.os_user)
+}
+inline void ChromeDesktopReportRequest::set_os_user(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  os_user_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.os_user)
+}
+inline void ChromeDesktopReportRequest::set_os_user(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  os_user_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.os_user)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_os_user() {
+  _has_bits_[0] |= 0x00000004u;
+  return os_user_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_os_user() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.os_user)
+  if (!_internal_has_os_user()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return os_user_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_os_user(std::string* os_user) {
+  if (os_user != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  os_user_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), os_user);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.os_user)
+}
+
+// optional .enterprise_management.BrowserReport browser_report = 4;
+inline bool ChromeDesktopReportRequest::_internal_has_browser_report() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || browser_report_ != nullptr);
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_browser_report() const {
+  return _internal_has_browser_report();
+}
+inline void ChromeDesktopReportRequest::clear_browser_report() {
+  if (browser_report_ != nullptr) browser_report_->Clear();
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline const ::enterprise_management::BrowserReport& ChromeDesktopReportRequest::_internal_browser_report() const {
+  const ::enterprise_management::BrowserReport* p = browser_report_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserReport*>(
+      &::enterprise_management::_BrowserReport_default_instance_);
+}
+inline const ::enterprise_management::BrowserReport& ChromeDesktopReportRequest::browser_report() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.browser_report)
+  return _internal_browser_report();
+}
+inline ::enterprise_management::BrowserReport* ChromeDesktopReportRequest::release_browser_report() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.browser_report)
+  _has_bits_[0] &= ~0x00000200u;
+  ::enterprise_management::BrowserReport* temp = browser_report_;
+  browser_report_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserReport* ChromeDesktopReportRequest::_internal_mutable_browser_report() {
+  _has_bits_[0] |= 0x00000200u;
+  if (browser_report_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserReport>(GetArenaNoVirtual());
+    browser_report_ = p;
+  }
+  return browser_report_;
+}
+inline ::enterprise_management::BrowserReport* ChromeDesktopReportRequest::mutable_browser_report() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.browser_report)
+  return _internal_mutable_browser_report();
+}
+inline void ChromeDesktopReportRequest::set_allocated_browser_report(::enterprise_management::BrowserReport* browser_report) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_report_;
+  }
+  if (browser_report) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_report = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_report, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  browser_report_ = browser_report;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.browser_report)
+}
+
+// optional string serial_number = 5 [deprecated = true];
+inline bool ChromeDesktopReportRequest::_internal_has_serial_number() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_serial_number() const {
+  return _internal_has_serial_number();
+}
+inline void ChromeDesktopReportRequest::clear_serial_number() {
+  serial_number_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& ChromeDesktopReportRequest::serial_number() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.serial_number)
+  return _internal_serial_number();
+}
+inline void ChromeDesktopReportRequest::set_serial_number(const std::string& value) {
+  _internal_set_serial_number(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.serial_number)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_serial_number() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.serial_number)
+  return _internal_mutable_serial_number();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_serial_number() const {
+  return serial_number_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_serial_number(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_serial_number(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  serial_number_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.serial_number)
+}
+inline void ChromeDesktopReportRequest::set_serial_number(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.serial_number)
+}
+inline void ChromeDesktopReportRequest::set_serial_number(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.serial_number)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_serial_number() {
+  _has_bits_[0] |= 0x00000008u;
+  return serial_number_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_serial_number() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.serial_number)
+  if (!_internal_has_serial_number()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return serial_number_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_serial_number(std::string* serial_number) {
+  if (serial_number != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  serial_number_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), serial_number);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.serial_number)
+}
+
+// optional string computer_name = 6 [deprecated = true];
+inline bool ChromeDesktopReportRequest::_internal_has_computer_name() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_computer_name() const {
+  return _internal_has_computer_name();
+}
+inline void ChromeDesktopReportRequest::clear_computer_name() {
+  computer_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& ChromeDesktopReportRequest::computer_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.computer_name)
+  return _internal_computer_name();
+}
+inline void ChromeDesktopReportRequest::set_computer_name(const std::string& value) {
+  _internal_set_computer_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.computer_name)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_computer_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.computer_name)
+  return _internal_mutable_computer_name();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_computer_name() const {
+  return computer_name_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_computer_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  computer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_computer_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  computer_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.computer_name)
+}
+inline void ChromeDesktopReportRequest::set_computer_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  computer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.computer_name)
+}
+inline void ChromeDesktopReportRequest::set_computer_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  computer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.computer_name)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_computer_name() {
+  _has_bits_[0] |= 0x00000010u;
+  return computer_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_computer_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.computer_name)
+  if (!_internal_has_computer_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return computer_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_computer_name(std::string* computer_name) {
+  if (computer_name != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  computer_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), computer_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.computer_name)
+}
+
+// optional .enterprise_management.OSReport os_report = 7;
+inline bool ChromeDesktopReportRequest::_internal_has_os_report() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || os_report_ != nullptr);
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_os_report() const {
+  return _internal_has_os_report();
+}
+inline void ChromeDesktopReportRequest::clear_os_report() {
+  if (os_report_ != nullptr) os_report_->Clear();
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline const ::enterprise_management::OSReport& ChromeDesktopReportRequest::_internal_os_report() const {
+  const ::enterprise_management::OSReport* p = os_report_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OSReport*>(
+      &::enterprise_management::_OSReport_default_instance_);
+}
+inline const ::enterprise_management::OSReport& ChromeDesktopReportRequest::os_report() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.os_report)
+  return _internal_os_report();
+}
+inline ::enterprise_management::OSReport* ChromeDesktopReportRequest::release_os_report() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.os_report)
+  _has_bits_[0] &= ~0x00000400u;
+  ::enterprise_management::OSReport* temp = os_report_;
+  os_report_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OSReport* ChromeDesktopReportRequest::_internal_mutable_os_report() {
+  _has_bits_[0] |= 0x00000400u;
+  if (os_report_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OSReport>(GetArenaNoVirtual());
+    os_report_ = p;
+  }
+  return os_report_;
+}
+inline ::enterprise_management::OSReport* ChromeDesktopReportRequest::mutable_os_report() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.os_report)
+  return _internal_mutable_os_report();
+}
+inline void ChromeDesktopReportRequest::set_allocated_os_report(::enterprise_management::OSReport* os_report) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete os_report_;
+  }
+  if (os_report) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      os_report = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, os_report, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000400u;
+  } else {
+    _has_bits_[0] &= ~0x00000400u;
+  }
+  os_report_ = os_report;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.os_report)
+}
+
+// optional string os_user_name = 8;
+inline bool ChromeDesktopReportRequest::_internal_has_os_user_name() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_os_user_name() const {
+  return _internal_has_os_user_name();
+}
+inline void ChromeDesktopReportRequest::clear_os_user_name() {
+  os_user_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const std::string& ChromeDesktopReportRequest::os_user_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.os_user_name)
+  return _internal_os_user_name();
+}
+inline void ChromeDesktopReportRequest::set_os_user_name(const std::string& value) {
+  _internal_set_os_user_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.os_user_name)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_os_user_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.os_user_name)
+  return _internal_mutable_os_user_name();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_os_user_name() const {
+  return os_user_name_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_os_user_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000020u;
+  os_user_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_os_user_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000020u;
+  os_user_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.os_user_name)
+}
+inline void ChromeDesktopReportRequest::set_os_user_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000020u;
+  os_user_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.os_user_name)
+}
+inline void ChromeDesktopReportRequest::set_os_user_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000020u;
+  os_user_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.os_user_name)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_os_user_name() {
+  _has_bits_[0] |= 0x00000020u;
+  return os_user_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_os_user_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.os_user_name)
+  if (!_internal_has_os_user_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000020u;
+  return os_user_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_os_user_name(std::string* os_user_name) {
+  if (os_user_name != nullptr) {
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  os_user_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), os_user_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.os_user_name)
+}
+
+// optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 9;
+inline bool ChromeDesktopReportRequest::_internal_has_browser_device_identifier() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || browser_device_identifier_ != nullptr);
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_browser_device_identifier() const {
+  return _internal_has_browser_device_identifier();
+}
+inline void ChromeDesktopReportRequest::clear_browser_device_identifier() {
+  if (browser_device_identifier_ != nullptr) browser_device_identifier_->Clear();
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline const ::enterprise_management::BrowserDeviceIdentifier& ChromeDesktopReportRequest::_internal_browser_device_identifier() const {
+  const ::enterprise_management::BrowserDeviceIdentifier* p = browser_device_identifier_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserDeviceIdentifier*>(
+      &::enterprise_management::_BrowserDeviceIdentifier_default_instance_);
+}
+inline const ::enterprise_management::BrowserDeviceIdentifier& ChromeDesktopReportRequest::browser_device_identifier() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.browser_device_identifier)
+  return _internal_browser_device_identifier();
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* ChromeDesktopReportRequest::release_browser_device_identifier() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.browser_device_identifier)
+  _has_bits_[0] &= ~0x00000800u;
+  ::enterprise_management::BrowserDeviceIdentifier* temp = browser_device_identifier_;
+  browser_device_identifier_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* ChromeDesktopReportRequest::_internal_mutable_browser_device_identifier() {
+  _has_bits_[0] |= 0x00000800u;
+  if (browser_device_identifier_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserDeviceIdentifier>(GetArenaNoVirtual());
+    browser_device_identifier_ = p;
+  }
+  return browser_device_identifier_;
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* ChromeDesktopReportRequest::mutable_browser_device_identifier() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.browser_device_identifier)
+  return _internal_mutable_browser_device_identifier();
+}
+inline void ChromeDesktopReportRequest::set_allocated_browser_device_identifier(::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_device_identifier_;
+  }
+  if (browser_device_identifier) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_device_identifier = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_device_identifier, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000800u;
+  } else {
+    _has_bits_[0] &= ~0x00000800u;
+  }
+  browser_device_identifier_ = browser_device_identifier;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.browser_device_identifier)
+}
+
+// repeated .enterprise_management.PartialReportType partial_report_types = 10;
+inline int ChromeDesktopReportRequest::_internal_partial_report_types_size() const {
+  return partial_report_types_.size();
+}
+inline int ChromeDesktopReportRequest::partial_report_types_size() const {
+  return _internal_partial_report_types_size();
+}
+inline void ChromeDesktopReportRequest::clear_partial_report_types() {
+  partial_report_types_.Clear();
+}
+inline ::enterprise_management::PartialReportType ChromeDesktopReportRequest::_internal_partial_report_types(int index) const {
+  return static_cast< ::enterprise_management::PartialReportType >(partial_report_types_.Get(index));
+}
+inline ::enterprise_management::PartialReportType ChromeDesktopReportRequest::partial_report_types(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.partial_report_types)
+  return _internal_partial_report_types(index);
+}
+inline void ChromeDesktopReportRequest::set_partial_report_types(int index, ::enterprise_management::PartialReportType value) {
+  assert(::enterprise_management::PartialReportType_IsValid(value));
+  partial_report_types_.Set(index, value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.partial_report_types)
+}
+inline void ChromeDesktopReportRequest::_internal_add_partial_report_types(::enterprise_management::PartialReportType value) {
+  assert(::enterprise_management::PartialReportType_IsValid(value));
+  partial_report_types_.Add(value);
+}
+inline void ChromeDesktopReportRequest::add_partial_report_types(::enterprise_management::PartialReportType value) {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeDesktopReportRequest.partial_report_types)
+  _internal_add_partial_report_types(value);
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
+ChromeDesktopReportRequest::partial_report_types() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeDesktopReportRequest.partial_report_types)
+  return partial_report_types_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+ChromeDesktopReportRequest::_internal_mutable_partial_report_types() {
+  return &partial_report_types_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+ChromeDesktopReportRequest::mutable_partial_report_types() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeDesktopReportRequest.partial_report_types)
+  return _internal_mutable_partial_report_types();
+}
+
+// optional string machine_attestation_key = 11;
+inline bool ChromeDesktopReportRequest::_internal_has_machine_attestation_key() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_machine_attestation_key() const {
+  return _internal_has_machine_attestation_key();
+}
+inline void ChromeDesktopReportRequest::clear_machine_attestation_key() {
+  machine_attestation_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const std::string& ChromeDesktopReportRequest::machine_attestation_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.machine_attestation_key)
+  return _internal_machine_attestation_key();
+}
+inline void ChromeDesktopReportRequest::set_machine_attestation_key(const std::string& value) {
+  _internal_set_machine_attestation_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.machine_attestation_key)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_machine_attestation_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.machine_attestation_key)
+  return _internal_mutable_machine_attestation_key();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_machine_attestation_key() const {
+  return machine_attestation_key_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_machine_attestation_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000040u;
+  machine_attestation_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_machine_attestation_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000040u;
+  machine_attestation_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.machine_attestation_key)
+}
+inline void ChromeDesktopReportRequest::set_machine_attestation_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000040u;
+  machine_attestation_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.machine_attestation_key)
+}
+inline void ChromeDesktopReportRequest::set_machine_attestation_key(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000040u;
+  machine_attestation_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.machine_attestation_key)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_machine_attestation_key() {
+  _has_bits_[0] |= 0x00000040u;
+  return machine_attestation_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_machine_attestation_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.machine_attestation_key)
+  if (!_internal_has_machine_attestation_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000040u;
+  return machine_attestation_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_machine_attestation_key(std::string* machine_attestation_key) {
+  if (machine_attestation_key != nullptr) {
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  machine_attestation_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), machine_attestation_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.machine_attestation_key)
+}
+
+// optional string device_model = 12;
+inline bool ChromeDesktopReportRequest::_internal_has_device_model() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_device_model() const {
+  return _internal_has_device_model();
+}
+inline void ChromeDesktopReportRequest::clear_device_model() {
+  device_model_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const std::string& ChromeDesktopReportRequest::device_model() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.device_model)
+  return _internal_device_model();
+}
+inline void ChromeDesktopReportRequest::set_device_model(const std::string& value) {
+  _internal_set_device_model(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.device_model)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_device_model() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.device_model)
+  return _internal_mutable_device_model();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_device_model() const {
+  return device_model_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_device_model(const std::string& value) {
+  _has_bits_[0] |= 0x00000080u;
+  device_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_device_model(std::string&& value) {
+  _has_bits_[0] |= 0x00000080u;
+  device_model_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.device_model)
+}
+inline void ChromeDesktopReportRequest::set_device_model(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000080u;
+  device_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.device_model)
+}
+inline void ChromeDesktopReportRequest::set_device_model(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000080u;
+  device_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.device_model)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_device_model() {
+  _has_bits_[0] |= 0x00000080u;
+  return device_model_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_device_model() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.device_model)
+  if (!_internal_has_device_model()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000080u;
+  return device_model_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_device_model(std::string* device_model) {
+  if (device_model != nullptr) {
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  device_model_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_model);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.device_model)
+}
+
+// optional string brand_name = 13;
+inline bool ChromeDesktopReportRequest::_internal_has_brand_name() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool ChromeDesktopReportRequest::has_brand_name() const {
+  return _internal_has_brand_name();
+}
+inline void ChromeDesktopReportRequest::clear_brand_name() {
+  brand_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const std::string& ChromeDesktopReportRequest::brand_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeDesktopReportRequest.brand_name)
+  return _internal_brand_name();
+}
+inline void ChromeDesktopReportRequest::set_brand_name(const std::string& value) {
+  _internal_set_brand_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeDesktopReportRequest.brand_name)
+}
+inline std::string* ChromeDesktopReportRequest::mutable_brand_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeDesktopReportRequest.brand_name)
+  return _internal_mutable_brand_name();
+}
+inline const std::string& ChromeDesktopReportRequest::_internal_brand_name() const {
+  return brand_name_.GetNoArena();
+}
+inline void ChromeDesktopReportRequest::_internal_set_brand_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000100u;
+  brand_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChromeDesktopReportRequest::set_brand_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000100u;
+  brand_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChromeDesktopReportRequest.brand_name)
+}
+inline void ChromeDesktopReportRequest::set_brand_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000100u;
+  brand_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChromeDesktopReportRequest.brand_name)
+}
+inline void ChromeDesktopReportRequest::set_brand_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000100u;
+  brand_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChromeDesktopReportRequest.brand_name)
+}
+inline std::string* ChromeDesktopReportRequest::_internal_mutable_brand_name() {
+  _has_bits_[0] |= 0x00000100u;
+  return brand_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChromeDesktopReportRequest::release_brand_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeDesktopReportRequest.brand_name)
+  if (!_internal_has_brand_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000100u;
+  return brand_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChromeDesktopReportRequest::set_allocated_brand_name(std::string* brand_name) {
+  if (brand_name != nullptr) {
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  brand_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), brand_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeDesktopReportRequest.brand_name)
+}
+
+// -------------------------------------------------------------------
+
+// ChromeOsUserReportRequest
+
+// optional .enterprise_management.BrowserReport browser_report = 1;
+inline bool ChromeOsUserReportRequest::_internal_has_browser_report() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || browser_report_ != nullptr);
+  return value;
+}
+inline bool ChromeOsUserReportRequest::has_browser_report() const {
+  return _internal_has_browser_report();
+}
+inline void ChromeOsUserReportRequest::clear_browser_report() {
+  if (browser_report_ != nullptr) browser_report_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::BrowserReport& ChromeOsUserReportRequest::_internal_browser_report() const {
+  const ::enterprise_management::BrowserReport* p = browser_report_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserReport*>(
+      &::enterprise_management::_BrowserReport_default_instance_);
+}
+inline const ::enterprise_management::BrowserReport& ChromeOsUserReportRequest::browser_report() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeOsUserReportRequest.browser_report)
+  return _internal_browser_report();
+}
+inline ::enterprise_management::BrowserReport* ChromeOsUserReportRequest::release_browser_report() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeOsUserReportRequest.browser_report)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::BrowserReport* temp = browser_report_;
+  browser_report_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserReport* ChromeOsUserReportRequest::_internal_mutable_browser_report() {
+  _has_bits_[0] |= 0x00000001u;
+  if (browser_report_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserReport>(GetArenaNoVirtual());
+    browser_report_ = p;
+  }
+  return browser_report_;
+}
+inline ::enterprise_management::BrowserReport* ChromeOsUserReportRequest::mutable_browser_report() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeOsUserReportRequest.browser_report)
+  return _internal_mutable_browser_report();
+}
+inline void ChromeOsUserReportRequest::set_allocated_browser_report(::enterprise_management::BrowserReport* browser_report) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_report_;
+  }
+  if (browser_report) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_report = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_report, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  browser_report_ = browser_report;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeOsUserReportRequest.browser_report)
+}
+
+// repeated .enterprise_management.AndroidAppInfo android_app_infos = 2;
+inline int ChromeOsUserReportRequest::_internal_android_app_infos_size() const {
+  return android_app_infos_.size();
+}
+inline int ChromeOsUserReportRequest::android_app_infos_size() const {
+  return _internal_android_app_infos_size();
+}
+inline void ChromeOsUserReportRequest::clear_android_app_infos() {
+  android_app_infos_.Clear();
+}
+inline ::enterprise_management::AndroidAppInfo* ChromeOsUserReportRequest::mutable_android_app_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeOsUserReportRequest.android_app_infos)
+  return android_app_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppInfo >*
+ChromeOsUserReportRequest::mutable_android_app_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeOsUserReportRequest.android_app_infos)
+  return &android_app_infos_;
+}
+inline const ::enterprise_management::AndroidAppInfo& ChromeOsUserReportRequest::_internal_android_app_infos(int index) const {
+  return android_app_infos_.Get(index);
+}
+inline const ::enterprise_management::AndroidAppInfo& ChromeOsUserReportRequest::android_app_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeOsUserReportRequest.android_app_infos)
+  return _internal_android_app_infos(index);
+}
+inline ::enterprise_management::AndroidAppInfo* ChromeOsUserReportRequest::_internal_add_android_app_infos() {
+  return android_app_infos_.Add();
+}
+inline ::enterprise_management::AndroidAppInfo* ChromeOsUserReportRequest::add_android_app_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeOsUserReportRequest.android_app_infos)
+  return _internal_add_android_app_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AndroidAppInfo >&
+ChromeOsUserReportRequest::android_app_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeOsUserReportRequest.android_app_infos)
+  return android_app_infos_;
+}
+
+// repeated .enterprise_management.PartialReportType partial_report_types = 3;
+inline int ChromeOsUserReportRequest::_internal_partial_report_types_size() const {
+  return partial_report_types_.size();
+}
+inline int ChromeOsUserReportRequest::partial_report_types_size() const {
+  return _internal_partial_report_types_size();
+}
+inline void ChromeOsUserReportRequest::clear_partial_report_types() {
+  partial_report_types_.Clear();
+}
+inline ::enterprise_management::PartialReportType ChromeOsUserReportRequest::_internal_partial_report_types(int index) const {
+  return static_cast< ::enterprise_management::PartialReportType >(partial_report_types_.Get(index));
+}
+inline ::enterprise_management::PartialReportType ChromeOsUserReportRequest::partial_report_types(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeOsUserReportRequest.partial_report_types)
+  return _internal_partial_report_types(index);
+}
+inline void ChromeOsUserReportRequest::set_partial_report_types(int index, ::enterprise_management::PartialReportType value) {
+  assert(::enterprise_management::PartialReportType_IsValid(value));
+  partial_report_types_.Set(index, value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChromeOsUserReportRequest.partial_report_types)
+}
+inline void ChromeOsUserReportRequest::_internal_add_partial_report_types(::enterprise_management::PartialReportType value) {
+  assert(::enterprise_management::PartialReportType_IsValid(value));
+  partial_report_types_.Add(value);
+}
+inline void ChromeOsUserReportRequest::add_partial_report_types(::enterprise_management::PartialReportType value) {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChromeOsUserReportRequest.partial_report_types)
+  _internal_add_partial_report_types(value);
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
+ChromeOsUserReportRequest::partial_report_types() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChromeOsUserReportRequest.partial_report_types)
+  return partial_report_types_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+ChromeOsUserReportRequest::_internal_mutable_partial_report_types() {
+  return &partial_report_types_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+ChromeOsUserReportRequest::mutable_partial_report_types() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChromeOsUserReportRequest.partial_report_types)
+  return _internal_mutable_partial_report_types();
+}
+
+// -------------------------------------------------------------------
+
+// ChromeProfileReportRequest
+
+// optional .enterprise_management.BrowserReport browser_report = 1;
+inline bool ChromeProfileReportRequest::_internal_has_browser_report() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || browser_report_ != nullptr);
+  return value;
+}
+inline bool ChromeProfileReportRequest::has_browser_report() const {
+  return _internal_has_browser_report();
+}
+inline void ChromeProfileReportRequest::clear_browser_report() {
+  if (browser_report_ != nullptr) browser_report_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::BrowserReport& ChromeProfileReportRequest::_internal_browser_report() const {
+  const ::enterprise_management::BrowserReport* p = browser_report_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserReport*>(
+      &::enterprise_management::_BrowserReport_default_instance_);
+}
+inline const ::enterprise_management::BrowserReport& ChromeProfileReportRequest::browser_report() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeProfileReportRequest.browser_report)
+  return _internal_browser_report();
+}
+inline ::enterprise_management::BrowserReport* ChromeProfileReportRequest::release_browser_report() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeProfileReportRequest.browser_report)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::BrowserReport* temp = browser_report_;
+  browser_report_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserReport* ChromeProfileReportRequest::_internal_mutable_browser_report() {
+  _has_bits_[0] |= 0x00000001u;
+  if (browser_report_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserReport>(GetArenaNoVirtual());
+    browser_report_ = p;
+  }
+  return browser_report_;
+}
+inline ::enterprise_management::BrowserReport* ChromeProfileReportRequest::mutable_browser_report() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeProfileReportRequest.browser_report)
+  return _internal_mutable_browser_report();
+}
+inline void ChromeProfileReportRequest::set_allocated_browser_report(::enterprise_management::BrowserReport* browser_report) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_report_;
+  }
+  if (browser_report) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_report = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_report, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  browser_report_ = browser_report;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeProfileReportRequest.browser_report)
+}
+
+// optional .enterprise_management.OSReport os_report = 2;
+inline bool ChromeProfileReportRequest::_internal_has_os_report() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || os_report_ != nullptr);
+  return value;
+}
+inline bool ChromeProfileReportRequest::has_os_report() const {
+  return _internal_has_os_report();
+}
+inline void ChromeProfileReportRequest::clear_os_report() {
+  if (os_report_ != nullptr) os_report_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::OSReport& ChromeProfileReportRequest::_internal_os_report() const {
+  const ::enterprise_management::OSReport* p = os_report_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::OSReport*>(
+      &::enterprise_management::_OSReport_default_instance_);
+}
+inline const ::enterprise_management::OSReport& ChromeProfileReportRequest::os_report() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChromeProfileReportRequest.os_report)
+  return _internal_os_report();
+}
+inline ::enterprise_management::OSReport* ChromeProfileReportRequest::release_os_report() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChromeProfileReportRequest.os_report)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::OSReport* temp = os_report_;
+  os_report_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::OSReport* ChromeProfileReportRequest::_internal_mutable_os_report() {
+  _has_bits_[0] |= 0x00000002u;
+  if (os_report_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::OSReport>(GetArenaNoVirtual());
+    os_report_ = p;
+  }
+  return os_report_;
+}
+inline ::enterprise_management::OSReport* ChromeProfileReportRequest::mutable_os_report() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChromeProfileReportRequest.os_report)
+  return _internal_mutable_os_report();
+}
+inline void ChromeProfileReportRequest::set_allocated_os_report(::enterprise_management::OSReport* os_report) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete os_report_;
+  }
+  if (os_report) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      os_report = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, os_report, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  os_report_ = os_report;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChromeProfileReportRequest.os_report)
+}
+
+// -------------------------------------------------------------------
+
+// PolicyValueValidationIssue
+
+// optional string policy_name = 1;
+inline bool PolicyValueValidationIssue::_internal_has_policy_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PolicyValueValidationIssue::has_policy_name() const {
+  return _internal_has_policy_name();
+}
+inline void PolicyValueValidationIssue::clear_policy_name() {
+  policy_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PolicyValueValidationIssue::policy_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyValueValidationIssue.policy_name)
+  return _internal_policy_name();
+}
+inline void PolicyValueValidationIssue::set_policy_name(const std::string& value) {
+  _internal_set_policy_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyValueValidationIssue.policy_name)
+}
+inline std::string* PolicyValueValidationIssue::mutable_policy_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyValueValidationIssue.policy_name)
+  return _internal_mutable_policy_name();
+}
+inline const std::string& PolicyValueValidationIssue::_internal_policy_name() const {
+  return policy_name_.GetNoArena();
+}
+inline void PolicyValueValidationIssue::_internal_set_policy_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyValueValidationIssue::set_policy_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyValueValidationIssue.policy_name)
+}
+inline void PolicyValueValidationIssue::set_policy_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  policy_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyValueValidationIssue.policy_name)
+}
+inline void PolicyValueValidationIssue::set_policy_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyValueValidationIssue.policy_name)
+}
+inline std::string* PolicyValueValidationIssue::_internal_mutable_policy_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return policy_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyValueValidationIssue::release_policy_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyValueValidationIssue.policy_name)
+  if (!_internal_has_policy_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return policy_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyValueValidationIssue::set_allocated_policy_name(std::string* policy_name) {
+  if (policy_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  policy_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyValueValidationIssue.policy_name)
+}
+
+// optional .enterprise_management.PolicyValueValidationIssue.ValueValidationIssueSeverity severity = 2;
+inline bool PolicyValueValidationIssue::_internal_has_severity() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PolicyValueValidationIssue::has_severity() const {
+  return _internal_has_severity();
+}
+inline void PolicyValueValidationIssue::clear_severity() {
+  severity_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue::_internal_severity() const {
+  return static_cast< ::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity >(severity_);
+}
+inline ::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity PolicyValueValidationIssue::severity() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyValueValidationIssue.severity)
+  return _internal_severity();
+}
+inline void PolicyValueValidationIssue::_internal_set_severity(::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity value) {
+  assert(::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  severity_ = value;
+}
+inline void PolicyValueValidationIssue::set_severity(::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity value) {
+  _internal_set_severity(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyValueValidationIssue.severity)
+}
+
+// optional string debug_message = 3;
+inline bool PolicyValueValidationIssue::_internal_has_debug_message() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PolicyValueValidationIssue::has_debug_message() const {
+  return _internal_has_debug_message();
+}
+inline void PolicyValueValidationIssue::clear_debug_message() {
+  debug_message_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& PolicyValueValidationIssue::debug_message() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyValueValidationIssue.debug_message)
+  return _internal_debug_message();
+}
+inline void PolicyValueValidationIssue::set_debug_message(const std::string& value) {
+  _internal_set_debug_message(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyValueValidationIssue.debug_message)
+}
+inline std::string* PolicyValueValidationIssue::mutable_debug_message() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyValueValidationIssue.debug_message)
+  return _internal_mutable_debug_message();
+}
+inline const std::string& PolicyValueValidationIssue::_internal_debug_message() const {
+  return debug_message_.GetNoArena();
+}
+inline void PolicyValueValidationIssue::_internal_set_debug_message(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  debug_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyValueValidationIssue::set_debug_message(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  debug_message_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyValueValidationIssue.debug_message)
+}
+inline void PolicyValueValidationIssue::set_debug_message(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  debug_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyValueValidationIssue.debug_message)
+}
+inline void PolicyValueValidationIssue::set_debug_message(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  debug_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyValueValidationIssue.debug_message)
+}
+inline std::string* PolicyValueValidationIssue::_internal_mutable_debug_message() {
+  _has_bits_[0] |= 0x00000002u;
+  return debug_message_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyValueValidationIssue::release_debug_message() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyValueValidationIssue.debug_message)
+  if (!_internal_has_debug_message()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return debug_message_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyValueValidationIssue::set_allocated_debug_message(std::string* debug_message) {
+  if (debug_message != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  debug_message_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), debug_message);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyValueValidationIssue.debug_message)
+}
+
+// -------------------------------------------------------------------
+
+// PolicyValidationReportRequest
+
+// optional string policy_type = 1;
+inline bool PolicyValidationReportRequest::_internal_has_policy_type() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PolicyValidationReportRequest::has_policy_type() const {
+  return _internal_has_policy_type();
+}
+inline void PolicyValidationReportRequest::clear_policy_type() {
+  policy_type_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PolicyValidationReportRequest::policy_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyValidationReportRequest.policy_type)
+  return _internal_policy_type();
+}
+inline void PolicyValidationReportRequest::set_policy_type(const std::string& value) {
+  _internal_set_policy_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyValidationReportRequest.policy_type)
+}
+inline std::string* PolicyValidationReportRequest::mutable_policy_type() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyValidationReportRequest.policy_type)
+  return _internal_mutable_policy_type();
+}
+inline const std::string& PolicyValidationReportRequest::_internal_policy_type() const {
+  return policy_type_.GetNoArena();
+}
+inline void PolicyValidationReportRequest::_internal_set_policy_type(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyValidationReportRequest::set_policy_type(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyValidationReportRequest.policy_type)
+}
+inline void PolicyValidationReportRequest::set_policy_type(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyValidationReportRequest.policy_type)
+}
+inline void PolicyValidationReportRequest::set_policy_type(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  policy_type_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyValidationReportRequest.policy_type)
+}
+inline std::string* PolicyValidationReportRequest::_internal_mutable_policy_type() {
+  _has_bits_[0] |= 0x00000001u;
+  return policy_type_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyValidationReportRequest::release_policy_type() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyValidationReportRequest.policy_type)
+  if (!_internal_has_policy_type()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return policy_type_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyValidationReportRequest::set_allocated_policy_type(std::string* policy_type) {
+  if (policy_type != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  policy_type_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_type);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyValidationReportRequest.policy_type)
+}
+
+// optional string policy_token = 2;
+inline bool PolicyValidationReportRequest::_internal_has_policy_token() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PolicyValidationReportRequest::has_policy_token() const {
+  return _internal_has_policy_token();
+}
+inline void PolicyValidationReportRequest::clear_policy_token() {
+  policy_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& PolicyValidationReportRequest::policy_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyValidationReportRequest.policy_token)
+  return _internal_policy_token();
+}
+inline void PolicyValidationReportRequest::set_policy_token(const std::string& value) {
+  _internal_set_policy_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyValidationReportRequest.policy_token)
+}
+inline std::string* PolicyValidationReportRequest::mutable_policy_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyValidationReportRequest.policy_token)
+  return _internal_mutable_policy_token();
+}
+inline const std::string& PolicyValidationReportRequest::_internal_policy_token() const {
+  return policy_token_.GetNoArena();
+}
+inline void PolicyValidationReportRequest::_internal_set_policy_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  policy_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PolicyValidationReportRequest::set_policy_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  policy_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PolicyValidationReportRequest.policy_token)
+}
+inline void PolicyValidationReportRequest::set_policy_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  policy_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PolicyValidationReportRequest.policy_token)
+}
+inline void PolicyValidationReportRequest::set_policy_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  policy_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PolicyValidationReportRequest.policy_token)
+}
+inline std::string* PolicyValidationReportRequest::_internal_mutable_policy_token() {
+  _has_bits_[0] |= 0x00000002u;
+  return policy_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PolicyValidationReportRequest::release_policy_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PolicyValidationReportRequest.policy_token)
+  if (!_internal_has_policy_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return policy_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PolicyValidationReportRequest::set_allocated_policy_token(std::string* policy_token) {
+  if (policy_token != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  policy_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PolicyValidationReportRequest.policy_token)
+}
+
+// optional .enterprise_management.PolicyValidationReportRequest.ValidationResultType validation_result_type = 3;
+inline bool PolicyValidationReportRequest::_internal_has_validation_result_type() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PolicyValidationReportRequest::has_validation_result_type() const {
+  return _internal_has_validation_result_type();
+}
+inline void PolicyValidationReportRequest::clear_validation_result_type() {
+  validation_result_type_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::_internal_validation_result_type() const {
+  return static_cast< ::enterprise_management::PolicyValidationReportRequest_ValidationResultType >(validation_result_type_);
+}
+inline ::enterprise_management::PolicyValidationReportRequest_ValidationResultType PolicyValidationReportRequest::validation_result_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyValidationReportRequest.validation_result_type)
+  return _internal_validation_result_type();
+}
+inline void PolicyValidationReportRequest::_internal_set_validation_result_type(::enterprise_management::PolicyValidationReportRequest_ValidationResultType value) {
+  assert(::enterprise_management::PolicyValidationReportRequest_ValidationResultType_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  validation_result_type_ = value;
+}
+inline void PolicyValidationReportRequest::set_validation_result_type(::enterprise_management::PolicyValidationReportRequest_ValidationResultType value) {
+  _internal_set_validation_result_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyValidationReportRequest.validation_result_type)
+}
+
+// repeated .enterprise_management.PolicyValueValidationIssue policy_value_validation_issues = 4;
+inline int PolicyValidationReportRequest::_internal_policy_value_validation_issues_size() const {
+  return policy_value_validation_issues_.size();
+}
+inline int PolicyValidationReportRequest::policy_value_validation_issues_size() const {
+  return _internal_policy_value_validation_issues_size();
+}
+inline void PolicyValidationReportRequest::clear_policy_value_validation_issues() {
+  policy_value_validation_issues_.Clear();
+}
+inline ::enterprise_management::PolicyValueValidationIssue* PolicyValidationReportRequest::mutable_policy_value_validation_issues(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PolicyValidationReportRequest.policy_value_validation_issues)
+  return policy_value_validation_issues_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyValueValidationIssue >*
+PolicyValidationReportRequest::mutable_policy_value_validation_issues() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.PolicyValidationReportRequest.policy_value_validation_issues)
+  return &policy_value_validation_issues_;
+}
+inline const ::enterprise_management::PolicyValueValidationIssue& PolicyValidationReportRequest::_internal_policy_value_validation_issues(int index) const {
+  return policy_value_validation_issues_.Get(index);
+}
+inline const ::enterprise_management::PolicyValueValidationIssue& PolicyValidationReportRequest::policy_value_validation_issues(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyValidationReportRequest.policy_value_validation_issues)
+  return _internal_policy_value_validation_issues(index);
+}
+inline ::enterprise_management::PolicyValueValidationIssue* PolicyValidationReportRequest::_internal_add_policy_value_validation_issues() {
+  return policy_value_validation_issues_.Add();
+}
+inline ::enterprise_management::PolicyValueValidationIssue* PolicyValidationReportRequest::add_policy_value_validation_issues() {
+  // @@protoc_insertion_point(field_add:enterprise_management.PolicyValidationReportRequest.policy_value_validation_issues)
+  return _internal_add_policy_value_validation_issues();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::PolicyValueValidationIssue >&
+PolicyValidationReportRequest::policy_value_validation_issues() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.PolicyValidationReportRequest.policy_value_validation_issues)
+  return policy_value_validation_issues_;
+}
+
+// -------------------------------------------------------------------
+
+// PolicyValidationReportResponse
+
+// -------------------------------------------------------------------
+
+// AndroidStatus
+
+// optional string status_payload = 1;
+inline bool AndroidStatus::_internal_has_status_payload() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AndroidStatus::has_status_payload() const {
+  return _internal_has_status_payload();
+}
+inline void AndroidStatus::clear_status_payload() {
+  status_payload_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AndroidStatus::status_payload() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidStatus.status_payload)
+  return _internal_status_payload();
+}
+inline void AndroidStatus::set_status_payload(const std::string& value) {
+  _internal_set_status_payload(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidStatus.status_payload)
+}
+inline std::string* AndroidStatus::mutable_status_payload() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidStatus.status_payload)
+  return _internal_mutable_status_payload();
+}
+inline const std::string& AndroidStatus::_internal_status_payload() const {
+  return status_payload_.GetNoArena();
+}
+inline void AndroidStatus::_internal_set_status_payload(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  status_payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidStatus::set_status_payload(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  status_payload_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidStatus.status_payload)
+}
+inline void AndroidStatus::set_status_payload(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  status_payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidStatus.status_payload)
+}
+inline void AndroidStatus::set_status_payload(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  status_payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidStatus.status_payload)
+}
+inline std::string* AndroidStatus::_internal_mutable_status_payload() {
+  _has_bits_[0] |= 0x00000001u;
+  return status_payload_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidStatus::release_status_payload() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidStatus.status_payload)
+  if (!_internal_has_status_payload()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return status_payload_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidStatus::set_allocated_status_payload(std::string* status_payload) {
+  if (status_payload != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  status_payload_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), status_payload);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidStatus.status_payload)
+}
+
+// optional string droid_guard_info = 2;
+inline bool AndroidStatus::_internal_has_droid_guard_info() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AndroidStatus::has_droid_guard_info() const {
+  return _internal_has_droid_guard_info();
+}
+inline void AndroidStatus::clear_droid_guard_info() {
+  droid_guard_info_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& AndroidStatus::droid_guard_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AndroidStatus.droid_guard_info)
+  return _internal_droid_guard_info();
+}
+inline void AndroidStatus::set_droid_guard_info(const std::string& value) {
+  _internal_set_droid_guard_info(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AndroidStatus.droid_guard_info)
+}
+inline std::string* AndroidStatus::mutable_droid_guard_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AndroidStatus.droid_guard_info)
+  return _internal_mutable_droid_guard_info();
+}
+inline const std::string& AndroidStatus::_internal_droid_guard_info() const {
+  return droid_guard_info_.GetNoArena();
+}
+inline void AndroidStatus::_internal_set_droid_guard_info(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  droid_guard_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AndroidStatus::set_droid_guard_info(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  droid_guard_info_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AndroidStatus.droid_guard_info)
+}
+inline void AndroidStatus::set_droid_guard_info(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  droid_guard_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AndroidStatus.droid_guard_info)
+}
+inline void AndroidStatus::set_droid_guard_info(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  droid_guard_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AndroidStatus.droid_guard_info)
+}
+inline std::string* AndroidStatus::_internal_mutable_droid_guard_info() {
+  _has_bits_[0] |= 0x00000002u;
+  return droid_guard_info_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AndroidStatus::release_droid_guard_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AndroidStatus.droid_guard_info)
+  if (!_internal_has_droid_guard_info()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return droid_guard_info_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AndroidStatus::set_allocated_droid_guard_info(std::string* droid_guard_info) {
+  if (droid_guard_info != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  droid_guard_info_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), droid_guard_info);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AndroidStatus.droid_guard_info)
+}
+
+// -------------------------------------------------------------------
+
+// CrostiniApp
+
+// optional string app_name = 1;
+inline bool CrostiniApp::_internal_has_app_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CrostiniApp::has_app_name() const {
+  return _internal_has_app_name();
+}
+inline void CrostiniApp::clear_app_name() {
+  app_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CrostiniApp::app_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniApp.app_name)
+  return _internal_app_name();
+}
+inline void CrostiniApp::set_app_name(const std::string& value) {
+  _internal_set_app_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniApp.app_name)
+}
+inline std::string* CrostiniApp::mutable_app_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrostiniApp.app_name)
+  return _internal_mutable_app_name();
+}
+inline const std::string& CrostiniApp::_internal_app_name() const {
+  return app_name_.GetNoArena();
+}
+inline void CrostiniApp::_internal_set_app_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CrostiniApp::set_app_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CrostiniApp.app_name)
+}
+inline void CrostiniApp::set_app_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CrostiniApp.app_name)
+}
+inline void CrostiniApp::set_app_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  app_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CrostiniApp.app_name)
+}
+inline std::string* CrostiniApp::_internal_mutable_app_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return app_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CrostiniApp::release_app_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CrostiniApp.app_name)
+  if (!_internal_has_app_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return app_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CrostiniApp::set_allocated_app_name(std::string* app_name) {
+  if (app_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  app_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CrostiniApp.app_name)
+}
+
+// optional .enterprise_management.CrostiniAppType app_type = 2;
+inline bool CrostiniApp::_internal_has_app_type() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool CrostiniApp::has_app_type() const {
+  return _internal_has_app_type();
+}
+inline void CrostiniApp::clear_app_type() {
+  app_type_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::enterprise_management::CrostiniAppType CrostiniApp::_internal_app_type() const {
+  return static_cast< ::enterprise_management::CrostiniAppType >(app_type_);
+}
+inline ::enterprise_management::CrostiniAppType CrostiniApp::app_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniApp.app_type)
+  return _internal_app_type();
+}
+inline void CrostiniApp::_internal_set_app_type(::enterprise_management::CrostiniAppType value) {
+  assert(::enterprise_management::CrostiniAppType_IsValid(value));
+  _has_bits_[0] |= 0x00000020u;
+  app_type_ = value;
+}
+inline void CrostiniApp::set_app_type(::enterprise_management::CrostiniAppType value) {
+  _internal_set_app_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniApp.app_type)
+}
+
+// optional int64 last_launch_time_window_start_timestamp = 3;
+inline bool CrostiniApp::_internal_has_last_launch_time_window_start_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool CrostiniApp::has_last_launch_time_window_start_timestamp() const {
+  return _internal_has_last_launch_time_window_start_timestamp();
+}
+inline void CrostiniApp::clear_last_launch_time_window_start_timestamp() {
+  last_launch_time_window_start_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CrostiniApp::_internal_last_launch_time_window_start_timestamp() const {
+  return last_launch_time_window_start_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CrostiniApp::last_launch_time_window_start_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniApp.last_launch_time_window_start_timestamp)
+  return _internal_last_launch_time_window_start_timestamp();
+}
+inline void CrostiniApp::_internal_set_last_launch_time_window_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000010u;
+  last_launch_time_window_start_timestamp_ = value;
+}
+inline void CrostiniApp::set_last_launch_time_window_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_launch_time_window_start_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniApp.last_launch_time_window_start_timestamp)
+}
+
+// optional string package_name = 4;
+inline bool CrostiniApp::_internal_has_package_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CrostiniApp::has_package_name() const {
+  return _internal_has_package_name();
+}
+inline void CrostiniApp::clear_package_name() {
+  package_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& CrostiniApp::package_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniApp.package_name)
+  return _internal_package_name();
+}
+inline void CrostiniApp::set_package_name(const std::string& value) {
+  _internal_set_package_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniApp.package_name)
+}
+inline std::string* CrostiniApp::mutable_package_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrostiniApp.package_name)
+  return _internal_mutable_package_name();
+}
+inline const std::string& CrostiniApp::_internal_package_name() const {
+  return package_name_.GetNoArena();
+}
+inline void CrostiniApp::_internal_set_package_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CrostiniApp::set_package_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  package_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CrostiniApp.package_name)
+}
+inline void CrostiniApp::set_package_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CrostiniApp.package_name)
+}
+inline void CrostiniApp::set_package_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  package_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CrostiniApp.package_name)
+}
+inline std::string* CrostiniApp::_internal_mutable_package_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return package_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CrostiniApp::release_package_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CrostiniApp.package_name)
+  if (!_internal_has_package_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return package_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CrostiniApp::set_allocated_package_name(std::string* package_name) {
+  if (package_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  package_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), package_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CrostiniApp.package_name)
+}
+
+// optional string package_version = 5;
+inline bool CrostiniApp::_internal_has_package_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool CrostiniApp::has_package_version() const {
+  return _internal_has_package_version();
+}
+inline void CrostiniApp::clear_package_version() {
+  package_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& CrostiniApp::package_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniApp.package_version)
+  return _internal_package_version();
+}
+inline void CrostiniApp::set_package_version(const std::string& value) {
+  _internal_set_package_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniApp.package_version)
+}
+inline std::string* CrostiniApp::mutable_package_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrostiniApp.package_version)
+  return _internal_mutable_package_version();
+}
+inline const std::string& CrostiniApp::_internal_package_version() const {
+  return package_version_.GetNoArena();
+}
+inline void CrostiniApp::_internal_set_package_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  package_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CrostiniApp::set_package_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  package_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CrostiniApp.package_version)
+}
+inline void CrostiniApp::set_package_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  package_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CrostiniApp.package_version)
+}
+inline void CrostiniApp::set_package_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  package_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CrostiniApp.package_version)
+}
+inline std::string* CrostiniApp::_internal_mutable_package_version() {
+  _has_bits_[0] |= 0x00000004u;
+  return package_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CrostiniApp::release_package_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CrostiniApp.package_version)
+  if (!_internal_has_package_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return package_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CrostiniApp::set_allocated_package_version(std::string* package_version) {
+  if (package_version != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  package_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), package_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CrostiniApp.package_version)
+}
+
+// optional string package_hash = 6;
+inline bool CrostiniApp::_internal_has_package_hash() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool CrostiniApp::has_package_hash() const {
+  return _internal_has_package_hash();
+}
+inline void CrostiniApp::clear_package_hash() {
+  package_hash_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& CrostiniApp::package_hash() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniApp.package_hash)
+  return _internal_package_hash();
+}
+inline void CrostiniApp::set_package_hash(const std::string& value) {
+  _internal_set_package_hash(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniApp.package_hash)
+}
+inline std::string* CrostiniApp::mutable_package_hash() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrostiniApp.package_hash)
+  return _internal_mutable_package_hash();
+}
+inline const std::string& CrostiniApp::_internal_package_hash() const {
+  return package_hash_.GetNoArena();
+}
+inline void CrostiniApp::_internal_set_package_hash(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  package_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CrostiniApp::set_package_hash(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  package_hash_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CrostiniApp.package_hash)
+}
+inline void CrostiniApp::set_package_hash(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  package_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CrostiniApp.package_hash)
+}
+inline void CrostiniApp::set_package_hash(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  package_hash_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CrostiniApp.package_hash)
+}
+inline std::string* CrostiniApp::_internal_mutable_package_hash() {
+  _has_bits_[0] |= 0x00000008u;
+  return package_hash_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CrostiniApp::release_package_hash() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CrostiniApp.package_hash)
+  if (!_internal_has_package_hash()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return package_hash_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CrostiniApp::set_allocated_package_hash(std::string* package_hash) {
+  if (package_hash != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  package_hash_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), package_hash);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CrostiniApp.package_hash)
+}
+
+// -------------------------------------------------------------------
+
+// CrostiniStatus
+
+// optional int64 last_launch_time_window_start_timestamp = 1;
+inline bool CrostiniStatus::_internal_has_last_launch_time_window_start_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool CrostiniStatus::has_last_launch_time_window_start_timestamp() const {
+  return _internal_has_last_launch_time_window_start_timestamp();
+}
+inline void CrostiniStatus::clear_last_launch_time_window_start_timestamp() {
+  last_launch_time_window_start_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CrostiniStatus::_internal_last_launch_time_window_start_timestamp() const {
+  return last_launch_time_window_start_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 CrostiniStatus::last_launch_time_window_start_timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniStatus.last_launch_time_window_start_timestamp)
+  return _internal_last_launch_time_window_start_timestamp();
+}
+inline void CrostiniStatus::_internal_set_last_launch_time_window_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  last_launch_time_window_start_timestamp_ = value;
+}
+inline void CrostiniStatus::set_last_launch_time_window_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_launch_time_window_start_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniStatus.last_launch_time_window_start_timestamp)
+}
+
+// optional string last_launch_vm_image_version = 2;
+inline bool CrostiniStatus::_internal_has_last_launch_vm_image_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CrostiniStatus::has_last_launch_vm_image_version() const {
+  return _internal_has_last_launch_vm_image_version();
+}
+inline void CrostiniStatus::clear_last_launch_vm_image_version() {
+  last_launch_vm_image_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CrostiniStatus::last_launch_vm_image_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniStatus.last_launch_vm_image_version)
+  return _internal_last_launch_vm_image_version();
+}
+inline void CrostiniStatus::set_last_launch_vm_image_version(const std::string& value) {
+  _internal_set_last_launch_vm_image_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniStatus.last_launch_vm_image_version)
+}
+inline std::string* CrostiniStatus::mutable_last_launch_vm_image_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrostiniStatus.last_launch_vm_image_version)
+  return _internal_mutable_last_launch_vm_image_version();
+}
+inline const std::string& CrostiniStatus::_internal_last_launch_vm_image_version() const {
+  return last_launch_vm_image_version_.GetNoArena();
+}
+inline void CrostiniStatus::_internal_set_last_launch_vm_image_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  last_launch_vm_image_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CrostiniStatus::set_last_launch_vm_image_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  last_launch_vm_image_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CrostiniStatus.last_launch_vm_image_version)
+}
+inline void CrostiniStatus::set_last_launch_vm_image_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  last_launch_vm_image_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CrostiniStatus.last_launch_vm_image_version)
+}
+inline void CrostiniStatus::set_last_launch_vm_image_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  last_launch_vm_image_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CrostiniStatus.last_launch_vm_image_version)
+}
+inline std::string* CrostiniStatus::_internal_mutable_last_launch_vm_image_version() {
+  _has_bits_[0] |= 0x00000001u;
+  return last_launch_vm_image_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CrostiniStatus::release_last_launch_vm_image_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CrostiniStatus.last_launch_vm_image_version)
+  if (!_internal_has_last_launch_vm_image_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return last_launch_vm_image_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CrostiniStatus::set_allocated_last_launch_vm_image_version(std::string* last_launch_vm_image_version) {
+  if (last_launch_vm_image_version != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  last_launch_vm_image_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), last_launch_vm_image_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CrostiniStatus.last_launch_vm_image_version)
+}
+
+// optional string last_launch_vm_kernel_version = 3;
+inline bool CrostiniStatus::_internal_has_last_launch_vm_kernel_version() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CrostiniStatus::has_last_launch_vm_kernel_version() const {
+  return _internal_has_last_launch_vm_kernel_version();
+}
+inline void CrostiniStatus::clear_last_launch_vm_kernel_version() {
+  last_launch_vm_kernel_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& CrostiniStatus::last_launch_vm_kernel_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniStatus.last_launch_vm_kernel_version)
+  return _internal_last_launch_vm_kernel_version();
+}
+inline void CrostiniStatus::set_last_launch_vm_kernel_version(const std::string& value) {
+  _internal_set_last_launch_vm_kernel_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CrostiniStatus.last_launch_vm_kernel_version)
+}
+inline std::string* CrostiniStatus::mutable_last_launch_vm_kernel_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrostiniStatus.last_launch_vm_kernel_version)
+  return _internal_mutable_last_launch_vm_kernel_version();
+}
+inline const std::string& CrostiniStatus::_internal_last_launch_vm_kernel_version() const {
+  return last_launch_vm_kernel_version_.GetNoArena();
+}
+inline void CrostiniStatus::_internal_set_last_launch_vm_kernel_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  last_launch_vm_kernel_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CrostiniStatus::set_last_launch_vm_kernel_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  last_launch_vm_kernel_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CrostiniStatus.last_launch_vm_kernel_version)
+}
+inline void CrostiniStatus::set_last_launch_vm_kernel_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  last_launch_vm_kernel_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CrostiniStatus.last_launch_vm_kernel_version)
+}
+inline void CrostiniStatus::set_last_launch_vm_kernel_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  last_launch_vm_kernel_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CrostiniStatus.last_launch_vm_kernel_version)
+}
+inline std::string* CrostiniStatus::_internal_mutable_last_launch_vm_kernel_version() {
+  _has_bits_[0] |= 0x00000002u;
+  return last_launch_vm_kernel_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CrostiniStatus::release_last_launch_vm_kernel_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CrostiniStatus.last_launch_vm_kernel_version)
+  if (!_internal_has_last_launch_vm_kernel_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return last_launch_vm_kernel_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CrostiniStatus::set_allocated_last_launch_vm_kernel_version(std::string* last_launch_vm_kernel_version) {
+  if (last_launch_vm_kernel_version != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  last_launch_vm_kernel_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), last_launch_vm_kernel_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CrostiniStatus.last_launch_vm_kernel_version)
+}
+
+// repeated .enterprise_management.CrostiniApp installed_apps = 4;
+inline int CrostiniStatus::_internal_installed_apps_size() const {
+  return installed_apps_.size();
+}
+inline int CrostiniStatus::installed_apps_size() const {
+  return _internal_installed_apps_size();
+}
+inline void CrostiniStatus::clear_installed_apps() {
+  installed_apps_.Clear();
+}
+inline ::enterprise_management::CrostiniApp* CrostiniStatus::mutable_installed_apps(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CrostiniStatus.installed_apps)
+  return installed_apps_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrostiniApp >*
+CrostiniStatus::mutable_installed_apps() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.CrostiniStatus.installed_apps)
+  return &installed_apps_;
+}
+inline const ::enterprise_management::CrostiniApp& CrostiniStatus::_internal_installed_apps(int index) const {
+  return installed_apps_.Get(index);
+}
+inline const ::enterprise_management::CrostiniApp& CrostiniStatus::installed_apps(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CrostiniStatus.installed_apps)
+  return _internal_installed_apps(index);
+}
+inline ::enterprise_management::CrostiniApp* CrostiniStatus::_internal_add_installed_apps() {
+  return installed_apps_.Add();
+}
+inline ::enterprise_management::CrostiniApp* CrostiniStatus::add_installed_apps() {
+  // @@protoc_insertion_point(field_add:enterprise_management.CrostiniStatus.installed_apps)
+  return _internal_add_installed_apps();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::CrostiniApp >&
+CrostiniStatus::installed_apps() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.CrostiniStatus.installed_apps)
+  return installed_apps_;
+}
+
+// -------------------------------------------------------------------
+
+// SessionStatusReportRequest
+
+// optional string device_local_account_id = 4;
+inline bool SessionStatusReportRequest::_internal_has_device_local_account_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SessionStatusReportRequest::has_device_local_account_id() const {
+  return _internal_has_device_local_account_id();
+}
+inline void SessionStatusReportRequest::clear_device_local_account_id() {
+  device_local_account_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SessionStatusReportRequest::device_local_account_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportRequest.device_local_account_id)
+  return _internal_device_local_account_id();
+}
+inline void SessionStatusReportRequest::set_device_local_account_id(const std::string& value) {
+  _internal_set_device_local_account_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SessionStatusReportRequest.device_local_account_id)
+}
+inline std::string* SessionStatusReportRequest::mutable_device_local_account_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SessionStatusReportRequest.device_local_account_id)
+  return _internal_mutable_device_local_account_id();
+}
+inline const std::string& SessionStatusReportRequest::_internal_device_local_account_id() const {
+  return device_local_account_id_.GetNoArena();
+}
+inline void SessionStatusReportRequest::_internal_set_device_local_account_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_local_account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SessionStatusReportRequest::set_device_local_account_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_local_account_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SessionStatusReportRequest.device_local_account_id)
+}
+inline void SessionStatusReportRequest::set_device_local_account_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_local_account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SessionStatusReportRequest.device_local_account_id)
+}
+inline void SessionStatusReportRequest::set_device_local_account_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_local_account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SessionStatusReportRequest.device_local_account_id)
+}
+inline std::string* SessionStatusReportRequest::_internal_mutable_device_local_account_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_local_account_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SessionStatusReportRequest::release_device_local_account_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SessionStatusReportRequest.device_local_account_id)
+  if (!_internal_has_device_local_account_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_local_account_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SessionStatusReportRequest::set_allocated_device_local_account_id(std::string* device_local_account_id) {
+  if (device_local_account_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_local_account_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_local_account_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SessionStatusReportRequest.device_local_account_id)
+}
+
+// repeated .enterprise_management.AppStatus installed_apps = 5;
+inline int SessionStatusReportRequest::_internal_installed_apps_size() const {
+  return installed_apps_.size();
+}
+inline int SessionStatusReportRequest::installed_apps_size() const {
+  return _internal_installed_apps_size();
+}
+inline void SessionStatusReportRequest::clear_installed_apps() {
+  installed_apps_.Clear();
+}
+inline ::enterprise_management::AppStatus* SessionStatusReportRequest::mutable_installed_apps(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SessionStatusReportRequest.installed_apps)
+  return installed_apps_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppStatus >*
+SessionStatusReportRequest::mutable_installed_apps() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.SessionStatusReportRequest.installed_apps)
+  return &installed_apps_;
+}
+inline const ::enterprise_management::AppStatus& SessionStatusReportRequest::_internal_installed_apps(int index) const {
+  return installed_apps_.Get(index);
+}
+inline const ::enterprise_management::AppStatus& SessionStatusReportRequest::installed_apps(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportRequest.installed_apps)
+  return _internal_installed_apps(index);
+}
+inline ::enterprise_management::AppStatus* SessionStatusReportRequest::_internal_add_installed_apps() {
+  return installed_apps_.Add();
+}
+inline ::enterprise_management::AppStatus* SessionStatusReportRequest::add_installed_apps() {
+  // @@protoc_insertion_point(field_add:enterprise_management.SessionStatusReportRequest.installed_apps)
+  return _internal_add_installed_apps();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppStatus >&
+SessionStatusReportRequest::installed_apps() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.SessionStatusReportRequest.installed_apps)
+  return installed_apps_;
+}
+
+// optional .enterprise_management.AndroidStatus android_status = 7;
+inline bool SessionStatusReportRequest::_internal_has_android_status() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || android_status_ != nullptr);
+  return value;
+}
+inline bool SessionStatusReportRequest::has_android_status() const {
+  return _internal_has_android_status();
+}
+inline void SessionStatusReportRequest::clear_android_status() {
+  if (android_status_ != nullptr) android_status_->Clear();
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const ::enterprise_management::AndroidStatus& SessionStatusReportRequest::_internal_android_status() const {
+  const ::enterprise_management::AndroidStatus* p = android_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AndroidStatus*>(
+      &::enterprise_management::_AndroidStatus_default_instance_);
+}
+inline const ::enterprise_management::AndroidStatus& SessionStatusReportRequest::android_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportRequest.android_status)
+  return _internal_android_status();
+}
+inline ::enterprise_management::AndroidStatus* SessionStatusReportRequest::release_android_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SessionStatusReportRequest.android_status)
+  _has_bits_[0] &= ~0x00000008u;
+  ::enterprise_management::AndroidStatus* temp = android_status_;
+  android_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AndroidStatus* SessionStatusReportRequest::_internal_mutable_android_status() {
+  _has_bits_[0] |= 0x00000008u;
+  if (android_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AndroidStatus>(GetArenaNoVirtual());
+    android_status_ = p;
+  }
+  return android_status_;
+}
+inline ::enterprise_management::AndroidStatus* SessionStatusReportRequest::mutable_android_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SessionStatusReportRequest.android_status)
+  return _internal_mutable_android_status();
+}
+inline void SessionStatusReportRequest::set_allocated_android_status(::enterprise_management::AndroidStatus* android_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete android_status_;
+  }
+  if (android_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      android_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, android_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  android_status_ = android_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SessionStatusReportRequest.android_status)
+}
+
+// optional string user_dm_token = 8;
+inline bool SessionStatusReportRequest::_internal_has_user_dm_token() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SessionStatusReportRequest::has_user_dm_token() const {
+  return _internal_has_user_dm_token();
+}
+inline void SessionStatusReportRequest::clear_user_dm_token() {
+  user_dm_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SessionStatusReportRequest::user_dm_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportRequest.user_dm_token)
+  return _internal_user_dm_token();
+}
+inline void SessionStatusReportRequest::set_user_dm_token(const std::string& value) {
+  _internal_set_user_dm_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SessionStatusReportRequest.user_dm_token)
+}
+inline std::string* SessionStatusReportRequest::mutable_user_dm_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SessionStatusReportRequest.user_dm_token)
+  return _internal_mutable_user_dm_token();
+}
+inline const std::string& SessionStatusReportRequest::_internal_user_dm_token() const {
+  return user_dm_token_.GetNoArena();
+}
+inline void SessionStatusReportRequest::_internal_set_user_dm_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  user_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SessionStatusReportRequest::set_user_dm_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  user_dm_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SessionStatusReportRequest.user_dm_token)
+}
+inline void SessionStatusReportRequest::set_user_dm_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  user_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SessionStatusReportRequest.user_dm_token)
+}
+inline void SessionStatusReportRequest::set_user_dm_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  user_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SessionStatusReportRequest.user_dm_token)
+}
+inline std::string* SessionStatusReportRequest::_internal_mutable_user_dm_token() {
+  _has_bits_[0] |= 0x00000002u;
+  return user_dm_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SessionStatusReportRequest::release_user_dm_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SessionStatusReportRequest.user_dm_token)
+  if (!_internal_has_user_dm_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return user_dm_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SessionStatusReportRequest::set_allocated_user_dm_token(std::string* user_dm_token) {
+  if (user_dm_token != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  user_dm_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), user_dm_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SessionStatusReportRequest.user_dm_token)
+}
+
+// optional string time_zone = 9;
+inline bool SessionStatusReportRequest::_internal_has_time_zone() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SessionStatusReportRequest::has_time_zone() const {
+  return _internal_has_time_zone();
+}
+inline void SessionStatusReportRequest::clear_time_zone() {
+  time_zone_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SessionStatusReportRequest::time_zone() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportRequest.time_zone)
+  return _internal_time_zone();
+}
+inline void SessionStatusReportRequest::set_time_zone(const std::string& value) {
+  _internal_set_time_zone(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SessionStatusReportRequest.time_zone)
+}
+inline std::string* SessionStatusReportRequest::mutable_time_zone() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SessionStatusReportRequest.time_zone)
+  return _internal_mutable_time_zone();
+}
+inline const std::string& SessionStatusReportRequest::_internal_time_zone() const {
+  return time_zone_.GetNoArena();
+}
+inline void SessionStatusReportRequest::_internal_set_time_zone(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  time_zone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SessionStatusReportRequest::set_time_zone(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  time_zone_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SessionStatusReportRequest.time_zone)
+}
+inline void SessionStatusReportRequest::set_time_zone(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  time_zone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SessionStatusReportRequest.time_zone)
+}
+inline void SessionStatusReportRequest::set_time_zone(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  time_zone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SessionStatusReportRequest.time_zone)
+}
+inline std::string* SessionStatusReportRequest::_internal_mutable_time_zone() {
+  _has_bits_[0] |= 0x00000004u;
+  return time_zone_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SessionStatusReportRequest::release_time_zone() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SessionStatusReportRequest.time_zone)
+  if (!_internal_has_time_zone()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return time_zone_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SessionStatusReportRequest::set_allocated_time_zone(std::string* time_zone) {
+  if (time_zone != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  time_zone_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), time_zone);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SessionStatusReportRequest.time_zone)
+}
+
+// optional .enterprise_management.CrostiniStatus crostini_status = 10;
+inline bool SessionStatusReportRequest::_internal_has_crostini_status() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || crostini_status_ != nullptr);
+  return value;
+}
+inline bool SessionStatusReportRequest::has_crostini_status() const {
+  return _internal_has_crostini_status();
+}
+inline void SessionStatusReportRequest::clear_crostini_status() {
+  if (crostini_status_ != nullptr) crostini_status_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::enterprise_management::CrostiniStatus& SessionStatusReportRequest::_internal_crostini_status() const {
+  const ::enterprise_management::CrostiniStatus* p = crostini_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CrostiniStatus*>(
+      &::enterprise_management::_CrostiniStatus_default_instance_);
+}
+inline const ::enterprise_management::CrostiniStatus& SessionStatusReportRequest::crostini_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportRequest.crostini_status)
+  return _internal_crostini_status();
+}
+inline ::enterprise_management::CrostiniStatus* SessionStatusReportRequest::release_crostini_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SessionStatusReportRequest.crostini_status)
+  _has_bits_[0] &= ~0x00000010u;
+  ::enterprise_management::CrostiniStatus* temp = crostini_status_;
+  crostini_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CrostiniStatus* SessionStatusReportRequest::_internal_mutable_crostini_status() {
+  _has_bits_[0] |= 0x00000010u;
+  if (crostini_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CrostiniStatus>(GetArenaNoVirtual());
+    crostini_status_ = p;
+  }
+  return crostini_status_;
+}
+inline ::enterprise_management::CrostiniStatus* SessionStatusReportRequest::mutable_crostini_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SessionStatusReportRequest.crostini_status)
+  return _internal_mutable_crostini_status();
+}
+inline void SessionStatusReportRequest::set_allocated_crostini_status(::enterprise_management::CrostiniStatus* crostini_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete crostini_status_;
+  }
+  if (crostini_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      crostini_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, crostini_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  crostini_status_ = crostini_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SessionStatusReportRequest.crostini_status)
+}
+
+// repeated .enterprise_management.AppInfo app_infos = 11;
+inline int SessionStatusReportRequest::_internal_app_infos_size() const {
+  return app_infos_.size();
+}
+inline int SessionStatusReportRequest::app_infos_size() const {
+  return _internal_app_infos_size();
+}
+inline void SessionStatusReportRequest::clear_app_infos() {
+  app_infos_.Clear();
+}
+inline ::enterprise_management::AppInfo* SessionStatusReportRequest::mutable_app_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SessionStatusReportRequest.app_infos)
+  return app_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInfo >*
+SessionStatusReportRequest::mutable_app_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.SessionStatusReportRequest.app_infos)
+  return &app_infos_;
+}
+inline const ::enterprise_management::AppInfo& SessionStatusReportRequest::_internal_app_infos(int index) const {
+  return app_infos_.Get(index);
+}
+inline const ::enterprise_management::AppInfo& SessionStatusReportRequest::app_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportRequest.app_infos)
+  return _internal_app_infos(index);
+}
+inline ::enterprise_management::AppInfo* SessionStatusReportRequest::_internal_add_app_infos() {
+  return app_infos_.Add();
+}
+inline ::enterprise_management::AppInfo* SessionStatusReportRequest::add_app_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.SessionStatusReportRequest.app_infos)
+  return _internal_add_app_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInfo >&
+SessionStatusReportRequest::app_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.SessionStatusReportRequest.app_infos)
+  return app_infos_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceStatusReportResponse
+
+// optional int32 error_code = 1;
+inline bool DeviceStatusReportResponse::_internal_has_error_code() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportResponse::has_error_code() const {
+  return _internal_has_error_code();
+}
+inline void DeviceStatusReportResponse::clear_error_code() {
+  error_code_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceStatusReportResponse::_internal_error_code() const {
+  return error_code_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 DeviceStatusReportResponse::error_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportResponse.error_code)
+  return _internal_error_code();
+}
+inline void DeviceStatusReportResponse::_internal_set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  error_code_ = value;
+}
+inline void DeviceStatusReportResponse::set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_error_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportResponse.error_code)
+}
+
+// optional string error_message = 2;
+inline bool DeviceStatusReportResponse::_internal_has_error_message() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceStatusReportResponse::has_error_message() const {
+  return _internal_has_error_message();
+}
+inline void DeviceStatusReportResponse::clear_error_message() {
+  error_message_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceStatusReportResponse::error_message() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStatusReportResponse.error_message)
+  return _internal_error_message();
+}
+inline void DeviceStatusReportResponse::set_error_message(const std::string& value) {
+  _internal_set_error_message(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStatusReportResponse.error_message)
+}
+inline std::string* DeviceStatusReportResponse::mutable_error_message() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStatusReportResponse.error_message)
+  return _internal_mutable_error_message();
+}
+inline const std::string& DeviceStatusReportResponse::_internal_error_message() const {
+  return error_message_.GetNoArena();
+}
+inline void DeviceStatusReportResponse::_internal_set_error_message(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceStatusReportResponse::set_error_message(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceStatusReportResponse.error_message)
+}
+inline void DeviceStatusReportResponse::set_error_message(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceStatusReportResponse.error_message)
+}
+inline void DeviceStatusReportResponse::set_error_message(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceStatusReportResponse.error_message)
+}
+inline std::string* DeviceStatusReportResponse::_internal_mutable_error_message() {
+  _has_bits_[0] |= 0x00000001u;
+  return error_message_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceStatusReportResponse::release_error_message() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStatusReportResponse.error_message)
+  if (!_internal_has_error_message()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return error_message_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceStatusReportResponse::set_allocated_error_message(std::string* error_message) {
+  if (error_message != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  error_message_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), error_message);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStatusReportResponse.error_message)
+}
+
+// -------------------------------------------------------------------
+
+// ChromeDesktopReportResponse
+
+// -------------------------------------------------------------------
+
+// ChromeOsUserReportResponse
+
+// -------------------------------------------------------------------
+
+// ChromeProfileReportResponse
+
+// -------------------------------------------------------------------
+
+// SessionStatusReportResponse
+
+// optional int32 error_code = 1;
+inline bool SessionStatusReportResponse::_internal_has_error_code() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SessionStatusReportResponse::has_error_code() const {
+  return _internal_has_error_code();
+}
+inline void SessionStatusReportResponse::clear_error_code() {
+  error_code_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SessionStatusReportResponse::_internal_error_code() const {
+  return error_code_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SessionStatusReportResponse::error_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportResponse.error_code)
+  return _internal_error_code();
+}
+inline void SessionStatusReportResponse::_internal_set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  error_code_ = value;
+}
+inline void SessionStatusReportResponse::set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_error_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SessionStatusReportResponse.error_code)
+}
+
+// optional string error_message = 2;
+inline bool SessionStatusReportResponse::_internal_has_error_message() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SessionStatusReportResponse::has_error_message() const {
+  return _internal_has_error_message();
+}
+inline void SessionStatusReportResponse::clear_error_message() {
+  error_message_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SessionStatusReportResponse::error_message() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SessionStatusReportResponse.error_message)
+  return _internal_error_message();
+}
+inline void SessionStatusReportResponse::set_error_message(const std::string& value) {
+  _internal_set_error_message(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SessionStatusReportResponse.error_message)
+}
+inline std::string* SessionStatusReportResponse::mutable_error_message() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SessionStatusReportResponse.error_message)
+  return _internal_mutable_error_message();
+}
+inline const std::string& SessionStatusReportResponse::_internal_error_message() const {
+  return error_message_.GetNoArena();
+}
+inline void SessionStatusReportResponse::_internal_set_error_message(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SessionStatusReportResponse::set_error_message(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SessionStatusReportResponse.error_message)
+}
+inline void SessionStatusReportResponse::set_error_message(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SessionStatusReportResponse.error_message)
+}
+inline void SessionStatusReportResponse::set_error_message(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SessionStatusReportResponse.error_message)
+}
+inline std::string* SessionStatusReportResponse::_internal_mutable_error_message() {
+  _has_bits_[0] |= 0x00000001u;
+  return error_message_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SessionStatusReportResponse::release_error_message() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SessionStatusReportResponse.error_message)
+  if (!_internal_has_error_message()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return error_message_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SessionStatusReportResponse::set_allocated_error_message(std::string* error_message) {
+  if (error_message != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  error_message_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), error_message);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SessionStatusReportResponse.error_message)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateSetMembershipRequest
+
+// optional .enterprise_management.PrivateSetMembershipRlweRequest rlwe_request = 1;
+inline bool PrivateSetMembershipRequest::_internal_has_rlwe_request() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || rlwe_request_ != nullptr);
+  return value;
+}
+inline bool PrivateSetMembershipRequest::has_rlwe_request() const {
+  return _internal_has_rlwe_request();
+}
+inline void PrivateSetMembershipRequest::clear_rlwe_request() {
+  if (rlwe_request_ != nullptr) rlwe_request_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::PrivateSetMembershipRlweRequest& PrivateSetMembershipRequest::_internal_rlwe_request() const {
+  const ::enterprise_management::PrivateSetMembershipRlweRequest* p = rlwe_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PrivateSetMembershipRlweRequest*>(
+      &::enterprise_management::_PrivateSetMembershipRlweRequest_default_instance_);
+}
+inline const ::enterprise_management::PrivateSetMembershipRlweRequest& PrivateSetMembershipRequest::rlwe_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrivateSetMembershipRequest.rlwe_request)
+  return _internal_rlwe_request();
+}
+inline ::enterprise_management::PrivateSetMembershipRlweRequest* PrivateSetMembershipRequest::release_rlwe_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrivateSetMembershipRequest.rlwe_request)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::PrivateSetMembershipRlweRequest* temp = rlwe_request_;
+  rlwe_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PrivateSetMembershipRlweRequest* PrivateSetMembershipRequest::_internal_mutable_rlwe_request() {
+  _has_bits_[0] |= 0x00000001u;
+  if (rlwe_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PrivateSetMembershipRlweRequest>(GetArenaNoVirtual());
+    rlwe_request_ = p;
+  }
+  return rlwe_request_;
+}
+inline ::enterprise_management::PrivateSetMembershipRlweRequest* PrivateSetMembershipRequest::mutable_rlwe_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrivateSetMembershipRequest.rlwe_request)
+  return _internal_mutable_rlwe_request();
+}
+inline void PrivateSetMembershipRequest::set_allocated_rlwe_request(::enterprise_management::PrivateSetMembershipRlweRequest* rlwe_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete rlwe_request_;
+  }
+  if (rlwe_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      rlwe_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, rlwe_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  rlwe_request_ = rlwe_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrivateSetMembershipRequest.rlwe_request)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateSetMembershipResponse
+
+// optional .enterprise_management.PrivateSetMembershipRlweResponse rlwe_response = 1;
+inline bool PrivateSetMembershipResponse::_internal_has_rlwe_response() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || rlwe_response_ != nullptr);
+  return value;
+}
+inline bool PrivateSetMembershipResponse::has_rlwe_response() const {
+  return _internal_has_rlwe_response();
+}
+inline void PrivateSetMembershipResponse::clear_rlwe_response() {
+  if (rlwe_response_ != nullptr) rlwe_response_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::PrivateSetMembershipRlweResponse& PrivateSetMembershipResponse::_internal_rlwe_response() const {
+  const ::enterprise_management::PrivateSetMembershipRlweResponse* p = rlwe_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PrivateSetMembershipRlweResponse*>(
+      &::enterprise_management::_PrivateSetMembershipRlweResponse_default_instance_);
+}
+inline const ::enterprise_management::PrivateSetMembershipRlweResponse& PrivateSetMembershipResponse::rlwe_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrivateSetMembershipResponse.rlwe_response)
+  return _internal_rlwe_response();
+}
+inline ::enterprise_management::PrivateSetMembershipRlweResponse* PrivateSetMembershipResponse::release_rlwe_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrivateSetMembershipResponse.rlwe_response)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::PrivateSetMembershipRlweResponse* temp = rlwe_response_;
+  rlwe_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PrivateSetMembershipRlweResponse* PrivateSetMembershipResponse::_internal_mutable_rlwe_response() {
+  _has_bits_[0] |= 0x00000001u;
+  if (rlwe_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PrivateSetMembershipRlweResponse>(GetArenaNoVirtual());
+    rlwe_response_ = p;
+  }
+  return rlwe_response_;
+}
+inline ::enterprise_management::PrivateSetMembershipRlweResponse* PrivateSetMembershipResponse::mutable_rlwe_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrivateSetMembershipResponse.rlwe_response)
+  return _internal_mutable_rlwe_response();
+}
+inline void PrivateSetMembershipResponse::set_allocated_rlwe_response(::enterprise_management::PrivateSetMembershipRlweResponse* rlwe_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete rlwe_response_;
+  }
+  if (rlwe_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      rlwe_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, rlwe_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  rlwe_response_ = rlwe_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrivateSetMembershipResponse.rlwe_response)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateSetMembershipRlweRequest
+
+// optional .private_membership.rlwe.PrivateMembershipRlweOprfRequest oprf_request = 1;
+inline bool PrivateSetMembershipRlweRequest::_internal_has_oprf_request() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || oprf_request_ != nullptr);
+  return value;
+}
+inline bool PrivateSetMembershipRlweRequest::has_oprf_request() const {
+  return _internal_has_oprf_request();
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweOprfRequest& PrivateSetMembershipRlweRequest::_internal_oprf_request() const {
+  const ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* p = oprf_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::PrivateMembershipRlweOprfRequest*>(
+      &::private_membership::rlwe::_PrivateMembershipRlweOprfRequest_default_instance_);
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweOprfRequest& PrivateSetMembershipRlweRequest::oprf_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrivateSetMembershipRlweRequest.oprf_request)
+  return _internal_oprf_request();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* PrivateSetMembershipRlweRequest::release_oprf_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrivateSetMembershipRlweRequest.oprf_request)
+  _has_bits_[0] &= ~0x00000001u;
+  ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* temp = oprf_request_;
+  oprf_request_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* PrivateSetMembershipRlweRequest::_internal_mutable_oprf_request() {
+  _has_bits_[0] |= 0x00000001u;
+  if (oprf_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweOprfRequest>(GetArenaNoVirtual());
+    oprf_request_ = p;
+  }
+  return oprf_request_;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* PrivateSetMembershipRlweRequest::mutable_oprf_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrivateSetMembershipRlweRequest.oprf_request)
+  return _internal_mutable_oprf_request();
+}
+inline void PrivateSetMembershipRlweRequest::set_allocated_oprf_request(::private_membership::rlwe::PrivateMembershipRlweOprfRequest* oprf_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(oprf_request_);
+  }
+  if (oprf_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      oprf_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, oprf_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  oprf_request_ = oprf_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrivateSetMembershipRlweRequest.oprf_request)
+}
+
+// optional .private_membership.rlwe.PrivateMembershipRlweQueryRequest query_request = 2;
+inline bool PrivateSetMembershipRlweRequest::_internal_has_query_request() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || query_request_ != nullptr);
+  return value;
+}
+inline bool PrivateSetMembershipRlweRequest::has_query_request() const {
+  return _internal_has_query_request();
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweQueryRequest& PrivateSetMembershipRlweRequest::_internal_query_request() const {
+  const ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* p = query_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::PrivateMembershipRlweQueryRequest*>(
+      &::private_membership::rlwe::_PrivateMembershipRlweQueryRequest_default_instance_);
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweQueryRequest& PrivateSetMembershipRlweRequest::query_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrivateSetMembershipRlweRequest.query_request)
+  return _internal_query_request();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* PrivateSetMembershipRlweRequest::release_query_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrivateSetMembershipRlweRequest.query_request)
+  _has_bits_[0] &= ~0x00000002u;
+  ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* temp = query_request_;
+  query_request_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* PrivateSetMembershipRlweRequest::_internal_mutable_query_request() {
+  _has_bits_[0] |= 0x00000002u;
+  if (query_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweQueryRequest>(GetArenaNoVirtual());
+    query_request_ = p;
+  }
+  return query_request_;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* PrivateSetMembershipRlweRequest::mutable_query_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrivateSetMembershipRlweRequest.query_request)
+  return _internal_mutable_query_request();
+}
+inline void PrivateSetMembershipRlweRequest::set_allocated_query_request(::private_membership::rlwe::PrivateMembershipRlweQueryRequest* query_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(query_request_);
+  }
+  if (query_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      query_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, query_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  query_request_ = query_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrivateSetMembershipRlweRequest.query_request)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateSetMembershipRlweResponse
+
+// optional .private_membership.rlwe.PrivateMembershipRlweOprfResponse oprf_response = 1;
+inline bool PrivateSetMembershipRlweResponse::_internal_has_oprf_response() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || oprf_response_ != nullptr);
+  return value;
+}
+inline bool PrivateSetMembershipRlweResponse::has_oprf_response() const {
+  return _internal_has_oprf_response();
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweOprfResponse& PrivateSetMembershipRlweResponse::_internal_oprf_response() const {
+  const ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* p = oprf_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::PrivateMembershipRlweOprfResponse*>(
+      &::private_membership::rlwe::_PrivateMembershipRlweOprfResponse_default_instance_);
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweOprfResponse& PrivateSetMembershipRlweResponse::oprf_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrivateSetMembershipRlweResponse.oprf_response)
+  return _internal_oprf_response();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* PrivateSetMembershipRlweResponse::release_oprf_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrivateSetMembershipRlweResponse.oprf_response)
+  _has_bits_[0] &= ~0x00000001u;
+  ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* temp = oprf_response_;
+  oprf_response_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* PrivateSetMembershipRlweResponse::_internal_mutable_oprf_response() {
+  _has_bits_[0] |= 0x00000001u;
+  if (oprf_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweOprfResponse>(GetArenaNoVirtual());
+    oprf_response_ = p;
+  }
+  return oprf_response_;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* PrivateSetMembershipRlweResponse::mutable_oprf_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrivateSetMembershipRlweResponse.oprf_response)
+  return _internal_mutable_oprf_response();
+}
+inline void PrivateSetMembershipRlweResponse::set_allocated_oprf_response(::private_membership::rlwe::PrivateMembershipRlweOprfResponse* oprf_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(oprf_response_);
+  }
+  if (oprf_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      oprf_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, oprf_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  oprf_response_ = oprf_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrivateSetMembershipRlweResponse.oprf_response)
+}
+
+// optional .private_membership.rlwe.PrivateMembershipRlweQueryResponse query_response = 2;
+inline bool PrivateSetMembershipRlweResponse::_internal_has_query_response() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || query_response_ != nullptr);
+  return value;
+}
+inline bool PrivateSetMembershipRlweResponse::has_query_response() const {
+  return _internal_has_query_response();
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweQueryResponse& PrivateSetMembershipRlweResponse::_internal_query_response() const {
+  const ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* p = query_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::PrivateMembershipRlweQueryResponse*>(
+      &::private_membership::rlwe::_PrivateMembershipRlweQueryResponse_default_instance_);
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweQueryResponse& PrivateSetMembershipRlweResponse::query_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrivateSetMembershipRlweResponse.query_response)
+  return _internal_query_response();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* PrivateSetMembershipRlweResponse::release_query_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrivateSetMembershipRlweResponse.query_response)
+  _has_bits_[0] &= ~0x00000002u;
+  ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* temp = query_response_;
+  query_response_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* PrivateSetMembershipRlweResponse::_internal_mutable_query_response() {
+  _has_bits_[0] |= 0x00000002u;
+  if (query_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweQueryResponse>(GetArenaNoVirtual());
+    query_response_ = p;
+  }
+  return query_response_;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* PrivateSetMembershipRlweResponse::mutable_query_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrivateSetMembershipRlweResponse.query_response)
+  return _internal_mutable_query_response();
+}
+inline void PrivateSetMembershipRlweResponse::set_allocated_query_response(::private_membership::rlwe::PrivateMembershipRlweQueryResponse* query_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(query_response_);
+  }
+  if (query_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      query_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, query_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  query_response_ = query_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrivateSetMembershipRlweResponse.query_response)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceAutoEnrollmentRequest
+
+// optional int64 remainder = 1;
+inline bool DeviceAutoEnrollmentRequest::_internal_has_remainder() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceAutoEnrollmentRequest::has_remainder() const {
+  return _internal_has_remainder();
+}
+inline void DeviceAutoEnrollmentRequest::clear_remainder() {
+  remainder_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceAutoEnrollmentRequest::_internal_remainder() const {
+  return remainder_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceAutoEnrollmentRequest::remainder() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAutoEnrollmentRequest.remainder)
+  return _internal_remainder();
+}
+inline void DeviceAutoEnrollmentRequest::_internal_set_remainder(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  remainder_ = value;
+}
+inline void DeviceAutoEnrollmentRequest::set_remainder(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_remainder(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAutoEnrollmentRequest.remainder)
+}
+
+// optional int64 modulus = 2;
+inline bool DeviceAutoEnrollmentRequest::_internal_has_modulus() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceAutoEnrollmentRequest::has_modulus() const {
+  return _internal_has_modulus();
+}
+inline void DeviceAutoEnrollmentRequest::clear_modulus() {
+  modulus_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceAutoEnrollmentRequest::_internal_modulus() const {
+  return modulus_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceAutoEnrollmentRequest::modulus() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAutoEnrollmentRequest.modulus)
+  return _internal_modulus();
+}
+inline void DeviceAutoEnrollmentRequest::_internal_set_modulus(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  modulus_ = value;
+}
+inline void DeviceAutoEnrollmentRequest::set_modulus(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_modulus(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAutoEnrollmentRequest.modulus)
+}
+
+// optional .enterprise_management.DeviceAutoEnrollmentRequest.EnrollmentCheckType enrollment_check_type = 3 [default = ENROLLMENT_CHECK_TYPE_FRE];
+inline bool DeviceAutoEnrollmentRequest::_internal_has_enrollment_check_type() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceAutoEnrollmentRequest::has_enrollment_check_type() const {
+  return _internal_has_enrollment_check_type();
+}
+inline void DeviceAutoEnrollmentRequest::clear_enrollment_check_type() {
+  enrollment_check_type_ = 1;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest::_internal_enrollment_check_type() const {
+  return static_cast< ::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType >(enrollment_check_type_);
+}
+inline ::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType DeviceAutoEnrollmentRequest::enrollment_check_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAutoEnrollmentRequest.enrollment_check_type)
+  return _internal_enrollment_check_type();
+}
+inline void DeviceAutoEnrollmentRequest::_internal_set_enrollment_check_type(::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType value) {
+  assert(::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  enrollment_check_type_ = value;
+}
+inline void DeviceAutoEnrollmentRequest::set_enrollment_check_type(::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType value) {
+  _internal_set_enrollment_check_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAutoEnrollmentRequest.enrollment_check_type)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceAutoEnrollmentResponse
+
+// optional int64 expected_modulus = 1;
+inline bool DeviceAutoEnrollmentResponse::_internal_has_expected_modulus() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceAutoEnrollmentResponse::has_expected_modulus() const {
+  return _internal_has_expected_modulus();
+}
+inline void DeviceAutoEnrollmentResponse::clear_expected_modulus() {
+  expected_modulus_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceAutoEnrollmentResponse::_internal_expected_modulus() const {
+  return expected_modulus_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceAutoEnrollmentResponse::expected_modulus() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAutoEnrollmentResponse.expected_modulus)
+  return _internal_expected_modulus();
+}
+inline void DeviceAutoEnrollmentResponse::_internal_set_expected_modulus(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  expected_modulus_ = value;
+}
+inline void DeviceAutoEnrollmentResponse::set_expected_modulus(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_expected_modulus(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAutoEnrollmentResponse.expected_modulus)
+}
+
+// repeated bytes hashes = 2;
+inline int DeviceAutoEnrollmentResponse::_internal_hashes_size() const {
+  return hashes_.size();
+}
+inline int DeviceAutoEnrollmentResponse::hashes_size() const {
+  return _internal_hashes_size();
+}
+inline void DeviceAutoEnrollmentResponse::clear_hashes() {
+  hashes_.Clear();
+}
+inline std::string* DeviceAutoEnrollmentResponse::add_hashes() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+  return _internal_add_hashes();
+}
+inline const std::string& DeviceAutoEnrollmentResponse::_internal_hashes(int index) const {
+  return hashes_.Get(index);
+}
+inline const std::string& DeviceAutoEnrollmentResponse::hashes(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+  return _internal_hashes(index);
+}
+inline std::string* DeviceAutoEnrollmentResponse::mutable_hashes(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+  return hashes_.Mutable(index);
+}
+inline void DeviceAutoEnrollmentResponse::set_hashes(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+  hashes_.Mutable(index)->assign(value);
+}
+inline void DeviceAutoEnrollmentResponse::set_hashes(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+  hashes_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceAutoEnrollmentResponse::set_hashes(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  hashes_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+}
+inline void DeviceAutoEnrollmentResponse::set_hashes(int index, const void* value, size_t size) {
+  hashes_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+}
+inline std::string* DeviceAutoEnrollmentResponse::_internal_add_hashes() {
+  return hashes_.Add();
+}
+inline void DeviceAutoEnrollmentResponse::add_hashes(const std::string& value) {
+  hashes_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+}
+inline void DeviceAutoEnrollmentResponse::add_hashes(std::string&& value) {
+  hashes_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+}
+inline void DeviceAutoEnrollmentResponse::add_hashes(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  hashes_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+}
+inline void DeviceAutoEnrollmentResponse::add_hashes(const void* value, size_t size) {
+  hashes_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceAutoEnrollmentResponse::hashes() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+  return hashes_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceAutoEnrollmentResponse::mutable_hashes() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceAutoEnrollmentResponse.hashes)
+  return &hashes_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceStateRetrievalRequest
+
+// optional bytes server_backed_state_key = 1;
+inline bool DeviceStateRetrievalRequest::_internal_has_server_backed_state_key() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceStateRetrievalRequest::has_server_backed_state_key() const {
+  return _internal_has_server_backed_state_key();
+}
+inline void DeviceStateRetrievalRequest::clear_server_backed_state_key() {
+  server_backed_state_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceStateRetrievalRequest::server_backed_state_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStateRetrievalRequest.server_backed_state_key)
+  return _internal_server_backed_state_key();
+}
+inline void DeviceStateRetrievalRequest::set_server_backed_state_key(const std::string& value) {
+  _internal_set_server_backed_state_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStateRetrievalRequest.server_backed_state_key)
+}
+inline std::string* DeviceStateRetrievalRequest::mutable_server_backed_state_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStateRetrievalRequest.server_backed_state_key)
+  return _internal_mutable_server_backed_state_key();
+}
+inline const std::string& DeviceStateRetrievalRequest::_internal_server_backed_state_key() const {
+  return server_backed_state_key_.GetNoArena();
+}
+inline void DeviceStateRetrievalRequest::_internal_set_server_backed_state_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  server_backed_state_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceStateRetrievalRequest::set_server_backed_state_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  server_backed_state_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceStateRetrievalRequest.server_backed_state_key)
+}
+inline void DeviceStateRetrievalRequest::set_server_backed_state_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  server_backed_state_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceStateRetrievalRequest.server_backed_state_key)
+}
+inline void DeviceStateRetrievalRequest::set_server_backed_state_key(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  server_backed_state_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceStateRetrievalRequest.server_backed_state_key)
+}
+inline std::string* DeviceStateRetrievalRequest::_internal_mutable_server_backed_state_key() {
+  _has_bits_[0] |= 0x00000001u;
+  return server_backed_state_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceStateRetrievalRequest::release_server_backed_state_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStateRetrievalRequest.server_backed_state_key)
+  if (!_internal_has_server_backed_state_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return server_backed_state_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceStateRetrievalRequest::set_allocated_server_backed_state_key(std::string* server_backed_state_key) {
+  if (server_backed_state_key != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  server_backed_state_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), server_backed_state_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStateRetrievalRequest.server_backed_state_key)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceStateKeyUpdateRequest
+
+// repeated bytes server_backed_state_keys = 1;
+inline int DeviceStateKeyUpdateRequest::_internal_server_backed_state_keys_size() const {
+  return server_backed_state_keys_.size();
+}
+inline int DeviceStateKeyUpdateRequest::server_backed_state_keys_size() const {
+  return _internal_server_backed_state_keys_size();
+}
+inline void DeviceStateKeyUpdateRequest::clear_server_backed_state_keys() {
+  server_backed_state_keys_.Clear();
+}
+inline std::string* DeviceStateKeyUpdateRequest::add_server_backed_state_keys() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+  return _internal_add_server_backed_state_keys();
+}
+inline const std::string& DeviceStateKeyUpdateRequest::_internal_server_backed_state_keys(int index) const {
+  return server_backed_state_keys_.Get(index);
+}
+inline const std::string& DeviceStateKeyUpdateRequest::server_backed_state_keys(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+  return _internal_server_backed_state_keys(index);
+}
+inline std::string* DeviceStateKeyUpdateRequest::mutable_server_backed_state_keys(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+  return server_backed_state_keys_.Mutable(index);
+}
+inline void DeviceStateKeyUpdateRequest::set_server_backed_state_keys(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+  server_backed_state_keys_.Mutable(index)->assign(value);
+}
+inline void DeviceStateKeyUpdateRequest::set_server_backed_state_keys(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+  server_backed_state_keys_.Mutable(index)->assign(std::move(value));
+}
+inline void DeviceStateKeyUpdateRequest::set_server_backed_state_keys(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  server_backed_state_keys_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+}
+inline void DeviceStateKeyUpdateRequest::set_server_backed_state_keys(int index, const void* value, size_t size) {
+  server_backed_state_keys_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+}
+inline std::string* DeviceStateKeyUpdateRequest::_internal_add_server_backed_state_keys() {
+  return server_backed_state_keys_.Add();
+}
+inline void DeviceStateKeyUpdateRequest::add_server_backed_state_keys(const std::string& value) {
+  server_backed_state_keys_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+}
+inline void DeviceStateKeyUpdateRequest::add_server_backed_state_keys(std::string&& value) {
+  server_backed_state_keys_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+}
+inline void DeviceStateKeyUpdateRequest::add_server_backed_state_keys(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  server_backed_state_keys_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+}
+inline void DeviceStateKeyUpdateRequest::add_server_backed_state_keys(const void* value, size_t size) {
+  server_backed_state_keys_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+DeviceStateKeyUpdateRequest::server_backed_state_keys() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+  return server_backed_state_keys_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+DeviceStateKeyUpdateRequest::mutable_server_backed_state_keys() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceStateKeyUpdateRequest.server_backed_state_keys)
+  return &server_backed_state_keys_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceStateRetrievalResponse
+
+// optional .enterprise_management.DeviceStateRetrievalResponse.RestoreMode restore_mode = 1 [default = RESTORE_MODE_NONE];
+inline bool DeviceStateRetrievalResponse::_internal_has_restore_mode() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DeviceStateRetrievalResponse::has_restore_mode() const {
+  return _internal_has_restore_mode();
+}
+inline void DeviceStateRetrievalResponse::clear_restore_mode() {
+  restore_mode_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::_internal_restore_mode() const {
+  return static_cast< ::enterprise_management::DeviceStateRetrievalResponse_RestoreMode >(restore_mode_);
+}
+inline ::enterprise_management::DeviceStateRetrievalResponse_RestoreMode DeviceStateRetrievalResponse::restore_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStateRetrievalResponse.restore_mode)
+  return _internal_restore_mode();
+}
+inline void DeviceStateRetrievalResponse::_internal_set_restore_mode(::enterprise_management::DeviceStateRetrievalResponse_RestoreMode value) {
+  assert(::enterprise_management::DeviceStateRetrievalResponse_RestoreMode_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  restore_mode_ = value;
+}
+inline void DeviceStateRetrievalResponse::set_restore_mode(::enterprise_management::DeviceStateRetrievalResponse_RestoreMode value) {
+  _internal_set_restore_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStateRetrievalResponse.restore_mode)
+}
+
+// optional string management_domain = 2;
+inline bool DeviceStateRetrievalResponse::_internal_has_management_domain() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceStateRetrievalResponse::has_management_domain() const {
+  return _internal_has_management_domain();
+}
+inline void DeviceStateRetrievalResponse::clear_management_domain() {
+  management_domain_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceStateRetrievalResponse::management_domain() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStateRetrievalResponse.management_domain)
+  return _internal_management_domain();
+}
+inline void DeviceStateRetrievalResponse::set_management_domain(const std::string& value) {
+  _internal_set_management_domain(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStateRetrievalResponse.management_domain)
+}
+inline std::string* DeviceStateRetrievalResponse::mutable_management_domain() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStateRetrievalResponse.management_domain)
+  return _internal_mutable_management_domain();
+}
+inline const std::string& DeviceStateRetrievalResponse::_internal_management_domain() const {
+  return management_domain_.GetNoArena();
+}
+inline void DeviceStateRetrievalResponse::_internal_set_management_domain(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  management_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceStateRetrievalResponse::set_management_domain(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  management_domain_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceStateRetrievalResponse.management_domain)
+}
+inline void DeviceStateRetrievalResponse::set_management_domain(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  management_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceStateRetrievalResponse.management_domain)
+}
+inline void DeviceStateRetrievalResponse::set_management_domain(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  management_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceStateRetrievalResponse.management_domain)
+}
+inline std::string* DeviceStateRetrievalResponse::_internal_mutable_management_domain() {
+  _has_bits_[0] |= 0x00000001u;
+  return management_domain_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceStateRetrievalResponse::release_management_domain() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStateRetrievalResponse.management_domain)
+  if (!_internal_has_management_domain()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return management_domain_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceStateRetrievalResponse::set_allocated_management_domain(std::string* management_domain) {
+  if (management_domain != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  management_domain_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), management_domain);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStateRetrievalResponse.management_domain)
+}
+
+// optional .enterprise_management.DisabledState disabled_state = 3;
+inline bool DeviceStateRetrievalResponse::_internal_has_disabled_state() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || disabled_state_ != nullptr);
+  return value;
+}
+inline bool DeviceStateRetrievalResponse::has_disabled_state() const {
+  return _internal_has_disabled_state();
+}
+inline void DeviceStateRetrievalResponse::clear_disabled_state() {
+  if (disabled_state_ != nullptr) disabled_state_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::DisabledState& DeviceStateRetrievalResponse::_internal_disabled_state() const {
+  const ::enterprise_management::DisabledState* p = disabled_state_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DisabledState*>(
+      &::enterprise_management::_DisabledState_default_instance_);
+}
+inline const ::enterprise_management::DisabledState& DeviceStateRetrievalResponse::disabled_state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStateRetrievalResponse.disabled_state)
+  return _internal_disabled_state();
+}
+inline ::enterprise_management::DisabledState* DeviceStateRetrievalResponse::release_disabled_state() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStateRetrievalResponse.disabled_state)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::DisabledState* temp = disabled_state_;
+  disabled_state_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DisabledState* DeviceStateRetrievalResponse::_internal_mutable_disabled_state() {
+  _has_bits_[0] |= 0x00000002u;
+  if (disabled_state_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DisabledState>(GetArenaNoVirtual());
+    disabled_state_ = p;
+  }
+  return disabled_state_;
+}
+inline ::enterprise_management::DisabledState* DeviceStateRetrievalResponse::mutable_disabled_state() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStateRetrievalResponse.disabled_state)
+  return _internal_mutable_disabled_state();
+}
+inline void DeviceStateRetrievalResponse::set_allocated_disabled_state(::enterprise_management::DisabledState* disabled_state) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete disabled_state_;
+  }
+  if (disabled_state) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      disabled_state = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, disabled_state, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  disabled_state_ = disabled_state;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStateRetrievalResponse.disabled_state)
+}
+
+// optional .enterprise_management.DeviceInitialEnrollmentStateResponse initial_state_response = 4;
+inline bool DeviceStateRetrievalResponse::_internal_has_initial_state_response() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || initial_state_response_ != nullptr);
+  return value;
+}
+inline bool DeviceStateRetrievalResponse::has_initial_state_response() const {
+  return _internal_has_initial_state_response();
+}
+inline void DeviceStateRetrievalResponse::clear_initial_state_response() {
+  if (initial_state_response_ != nullptr) initial_state_response_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::DeviceInitialEnrollmentStateResponse& DeviceStateRetrievalResponse::_internal_initial_state_response() const {
+  const ::enterprise_management::DeviceInitialEnrollmentStateResponse* p = initial_state_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceInitialEnrollmentStateResponse*>(
+      &::enterprise_management::_DeviceInitialEnrollmentStateResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceInitialEnrollmentStateResponse& DeviceStateRetrievalResponse::initial_state_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStateRetrievalResponse.initial_state_response)
+  return _internal_initial_state_response();
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse* DeviceStateRetrievalResponse::release_initial_state_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceStateRetrievalResponse.initial_state_response)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* temp = initial_state_response_;
+  initial_state_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse* DeviceStateRetrievalResponse::_internal_mutable_initial_state_response() {
+  _has_bits_[0] |= 0x00000004u;
+  if (initial_state_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceInitialEnrollmentStateResponse>(GetArenaNoVirtual());
+    initial_state_response_ = p;
+  }
+  return initial_state_response_;
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse* DeviceStateRetrievalResponse::mutable_initial_state_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceStateRetrievalResponse.initial_state_response)
+  return _internal_mutable_initial_state_response();
+}
+inline void DeviceStateRetrievalResponse::set_allocated_initial_state_response(::enterprise_management::DeviceInitialEnrollmentStateResponse* initial_state_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete initial_state_response_;
+  }
+  if (initial_state_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      initial_state_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, initial_state_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  initial_state_response_ = initial_state_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceStateRetrievalResponse.initial_state_response)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceInitialEnrollmentStateRequest
+
+// optional string serial_number = 1;
+inline bool DeviceInitialEnrollmentStateRequest::_internal_has_serial_number() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceInitialEnrollmentStateRequest::has_serial_number() const {
+  return _internal_has_serial_number();
+}
+inline void DeviceInitialEnrollmentStateRequest::clear_serial_number() {
+  serial_number_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceInitialEnrollmentStateRequest::serial_number() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceInitialEnrollmentStateRequest.serial_number)
+  return _internal_serial_number();
+}
+inline void DeviceInitialEnrollmentStateRequest::set_serial_number(const std::string& value) {
+  _internal_set_serial_number(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceInitialEnrollmentStateRequest.serial_number)
+}
+inline std::string* DeviceInitialEnrollmentStateRequest::mutable_serial_number() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceInitialEnrollmentStateRequest.serial_number)
+  return _internal_mutable_serial_number();
+}
+inline const std::string& DeviceInitialEnrollmentStateRequest::_internal_serial_number() const {
+  return serial_number_.GetNoArena();
+}
+inline void DeviceInitialEnrollmentStateRequest::_internal_set_serial_number(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceInitialEnrollmentStateRequest::set_serial_number(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_number_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceInitialEnrollmentStateRequest.serial_number)
+}
+inline void DeviceInitialEnrollmentStateRequest::set_serial_number(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceInitialEnrollmentStateRequest.serial_number)
+}
+inline void DeviceInitialEnrollmentStateRequest::set_serial_number(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  serial_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceInitialEnrollmentStateRequest.serial_number)
+}
+inline std::string* DeviceInitialEnrollmentStateRequest::_internal_mutable_serial_number() {
+  _has_bits_[0] |= 0x00000001u;
+  return serial_number_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceInitialEnrollmentStateRequest::release_serial_number() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceInitialEnrollmentStateRequest.serial_number)
+  if (!_internal_has_serial_number()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return serial_number_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceInitialEnrollmentStateRequest::set_allocated_serial_number(std::string* serial_number) {
+  if (serial_number != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  serial_number_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), serial_number);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceInitialEnrollmentStateRequest.serial_number)
+}
+
+// optional string brand_code = 2;
+inline bool DeviceInitialEnrollmentStateRequest::_internal_has_brand_code() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceInitialEnrollmentStateRequest::has_brand_code() const {
+  return _internal_has_brand_code();
+}
+inline void DeviceInitialEnrollmentStateRequest::clear_brand_code() {
+  brand_code_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DeviceInitialEnrollmentStateRequest::brand_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceInitialEnrollmentStateRequest.brand_code)
+  return _internal_brand_code();
+}
+inline void DeviceInitialEnrollmentStateRequest::set_brand_code(const std::string& value) {
+  _internal_set_brand_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceInitialEnrollmentStateRequest.brand_code)
+}
+inline std::string* DeviceInitialEnrollmentStateRequest::mutable_brand_code() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceInitialEnrollmentStateRequest.brand_code)
+  return _internal_mutable_brand_code();
+}
+inline const std::string& DeviceInitialEnrollmentStateRequest::_internal_brand_code() const {
+  return brand_code_.GetNoArena();
+}
+inline void DeviceInitialEnrollmentStateRequest::_internal_set_brand_code(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceInitialEnrollmentStateRequest::set_brand_code(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  brand_code_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceInitialEnrollmentStateRequest.brand_code)
+}
+inline void DeviceInitialEnrollmentStateRequest::set_brand_code(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceInitialEnrollmentStateRequest.brand_code)
+}
+inline void DeviceInitialEnrollmentStateRequest::set_brand_code(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceInitialEnrollmentStateRequest.brand_code)
+}
+inline std::string* DeviceInitialEnrollmentStateRequest::_internal_mutable_brand_code() {
+  _has_bits_[0] |= 0x00000002u;
+  return brand_code_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceInitialEnrollmentStateRequest::release_brand_code() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceInitialEnrollmentStateRequest.brand_code)
+  if (!_internal_has_brand_code()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return brand_code_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceInitialEnrollmentStateRequest::set_allocated_brand_code(std::string* brand_code) {
+  if (brand_code != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  brand_code_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), brand_code);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceInitialEnrollmentStateRequest.brand_code)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceInitialEnrollmentStateResponse
+
+// optional .enterprise_management.DeviceInitialEnrollmentStateResponse.InitialEnrollmentMode initial_enrollment_mode = 1 [default = INITIAL_ENROLLMENT_MODE_NONE];
+inline bool DeviceInitialEnrollmentStateResponse::_internal_has_initial_enrollment_mode() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceInitialEnrollmentStateResponse::has_initial_enrollment_mode() const {
+  return _internal_has_initial_enrollment_mode();
+}
+inline void DeviceInitialEnrollmentStateResponse::clear_initial_enrollment_mode() {
+  initial_enrollment_mode_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse::_internal_initial_enrollment_mode() const {
+  return static_cast< ::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode >(initial_enrollment_mode_);
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode DeviceInitialEnrollmentStateResponse::initial_enrollment_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceInitialEnrollmentStateResponse.initial_enrollment_mode)
+  return _internal_initial_enrollment_mode();
+}
+inline void DeviceInitialEnrollmentStateResponse::_internal_set_initial_enrollment_mode(::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode value) {
+  assert(::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  initial_enrollment_mode_ = value;
+}
+inline void DeviceInitialEnrollmentStateResponse::set_initial_enrollment_mode(::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode value) {
+  _internal_set_initial_enrollment_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceInitialEnrollmentStateResponse.initial_enrollment_mode)
+}
+
+// optional string management_domain = 2;
+inline bool DeviceInitialEnrollmentStateResponse::_internal_has_management_domain() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceInitialEnrollmentStateResponse::has_management_domain() const {
+  return _internal_has_management_domain();
+}
+inline void DeviceInitialEnrollmentStateResponse::clear_management_domain() {
+  management_domain_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceInitialEnrollmentStateResponse::management_domain() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceInitialEnrollmentStateResponse.management_domain)
+  return _internal_management_domain();
+}
+inline void DeviceInitialEnrollmentStateResponse::set_management_domain(const std::string& value) {
+  _internal_set_management_domain(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceInitialEnrollmentStateResponse.management_domain)
+}
+inline std::string* DeviceInitialEnrollmentStateResponse::mutable_management_domain() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceInitialEnrollmentStateResponse.management_domain)
+  return _internal_mutable_management_domain();
+}
+inline const std::string& DeviceInitialEnrollmentStateResponse::_internal_management_domain() const {
+  return management_domain_.GetNoArena();
+}
+inline void DeviceInitialEnrollmentStateResponse::_internal_set_management_domain(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  management_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceInitialEnrollmentStateResponse::set_management_domain(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  management_domain_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceInitialEnrollmentStateResponse.management_domain)
+}
+inline void DeviceInitialEnrollmentStateResponse::set_management_domain(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  management_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceInitialEnrollmentStateResponse.management_domain)
+}
+inline void DeviceInitialEnrollmentStateResponse::set_management_domain(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  management_domain_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceInitialEnrollmentStateResponse.management_domain)
+}
+inline std::string* DeviceInitialEnrollmentStateResponse::_internal_mutable_management_domain() {
+  _has_bits_[0] |= 0x00000001u;
+  return management_domain_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceInitialEnrollmentStateResponse::release_management_domain() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceInitialEnrollmentStateResponse.management_domain)
+  if (!_internal_has_management_domain()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return management_domain_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceInitialEnrollmentStateResponse::set_allocated_management_domain(std::string* management_domain) {
+  if (management_domain != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  management_domain_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), management_domain);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceInitialEnrollmentStateResponse.management_domain)
+}
+
+// optional bool is_license_packaged_with_device = 3;
+inline bool DeviceInitialEnrollmentStateResponse::_internal_has_is_license_packaged_with_device() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool DeviceInitialEnrollmentStateResponse::has_is_license_packaged_with_device() const {
+  return _internal_has_is_license_packaged_with_device();
+}
+inline void DeviceInitialEnrollmentStateResponse::clear_is_license_packaged_with_device() {
+  is_license_packaged_with_device_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool DeviceInitialEnrollmentStateResponse::_internal_is_license_packaged_with_device() const {
+  return is_license_packaged_with_device_;
+}
+inline bool DeviceInitialEnrollmentStateResponse::is_license_packaged_with_device() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceInitialEnrollmentStateResponse.is_license_packaged_with_device)
+  return _internal_is_license_packaged_with_device();
+}
+inline void DeviceInitialEnrollmentStateResponse::_internal_set_is_license_packaged_with_device(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  is_license_packaged_with_device_ = value;
+}
+inline void DeviceInitialEnrollmentStateResponse::set_is_license_packaged_with_device(bool value) {
+  _internal_set_is_license_packaged_with_device(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceInitialEnrollmentStateResponse.is_license_packaged_with_device)
+}
+
+// optional .enterprise_management.DisabledState disabled_state = 4;
+inline bool DeviceInitialEnrollmentStateResponse::_internal_has_disabled_state() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || disabled_state_ != nullptr);
+  return value;
+}
+inline bool DeviceInitialEnrollmentStateResponse::has_disabled_state() const {
+  return _internal_has_disabled_state();
+}
+inline void DeviceInitialEnrollmentStateResponse::clear_disabled_state() {
+  if (disabled_state_ != nullptr) disabled_state_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::DisabledState& DeviceInitialEnrollmentStateResponse::_internal_disabled_state() const {
+  const ::enterprise_management::DisabledState* p = disabled_state_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DisabledState*>(
+      &::enterprise_management::_DisabledState_default_instance_);
+}
+inline const ::enterprise_management::DisabledState& DeviceInitialEnrollmentStateResponse::disabled_state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceInitialEnrollmentStateResponse.disabled_state)
+  return _internal_disabled_state();
+}
+inline ::enterprise_management::DisabledState* DeviceInitialEnrollmentStateResponse::release_disabled_state() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceInitialEnrollmentStateResponse.disabled_state)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::DisabledState* temp = disabled_state_;
+  disabled_state_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DisabledState* DeviceInitialEnrollmentStateResponse::_internal_mutable_disabled_state() {
+  _has_bits_[0] |= 0x00000002u;
+  if (disabled_state_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DisabledState>(GetArenaNoVirtual());
+    disabled_state_ = p;
+  }
+  return disabled_state_;
+}
+inline ::enterprise_management::DisabledState* DeviceInitialEnrollmentStateResponse::mutable_disabled_state() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceInitialEnrollmentStateResponse.disabled_state)
+  return _internal_mutable_disabled_state();
+}
+inline void DeviceInitialEnrollmentStateResponse::set_allocated_disabled_state(::enterprise_management::DisabledState* disabled_state) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete disabled_state_;
+  }
+  if (disabled_state) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      disabled_state = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, disabled_state, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  disabled_state_ = disabled_state;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceInitialEnrollmentStateResponse.disabled_state)
+}
+
+// optional .enterprise_management.DeviceInitialEnrollmentStateResponse.LicensePackagingSKU license_packaging_sku = 5;
+inline bool DeviceInitialEnrollmentStateResponse::_internal_has_license_packaging_sku() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool DeviceInitialEnrollmentStateResponse::has_license_packaging_sku() const {
+  return _internal_has_license_packaging_sku();
+}
+inline void DeviceInitialEnrollmentStateResponse::clear_license_packaging_sku() {
+  license_packaging_sku_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse::_internal_license_packaging_sku() const {
+  return static_cast< ::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU >(license_packaging_sku_);
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU DeviceInitialEnrollmentStateResponse::license_packaging_sku() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceInitialEnrollmentStateResponse.license_packaging_sku)
+  return _internal_license_packaging_sku();
+}
+inline void DeviceInitialEnrollmentStateResponse::_internal_set_license_packaging_sku(::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU value) {
+  assert(::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  license_packaging_sku_ = value;
+}
+inline void DeviceInitialEnrollmentStateResponse::set_license_packaging_sku(::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU value) {
+  _internal_set_license_packaging_sku(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceInitialEnrollmentStateResponse.license_packaging_sku)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePairingRequest
+
+// optional string host_device_id = 1;
+inline bool DevicePairingRequest::_internal_has_host_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePairingRequest::has_host_device_id() const {
+  return _internal_has_host_device_id();
+}
+inline void DevicePairingRequest::clear_host_device_id() {
+  host_device_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DevicePairingRequest::host_device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePairingRequest.host_device_id)
+  return _internal_host_device_id();
+}
+inline void DevicePairingRequest::set_host_device_id(const std::string& value) {
+  _internal_set_host_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePairingRequest.host_device_id)
+}
+inline std::string* DevicePairingRequest::mutable_host_device_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DevicePairingRequest.host_device_id)
+  return _internal_mutable_host_device_id();
+}
+inline const std::string& DevicePairingRequest::_internal_host_device_id() const {
+  return host_device_id_.GetNoArena();
+}
+inline void DevicePairingRequest::_internal_set_host_device_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  host_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DevicePairingRequest::set_host_device_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  host_device_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DevicePairingRequest.host_device_id)
+}
+inline void DevicePairingRequest::set_host_device_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  host_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DevicePairingRequest.host_device_id)
+}
+inline void DevicePairingRequest::set_host_device_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  host_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DevicePairingRequest.host_device_id)
+}
+inline std::string* DevicePairingRequest::_internal_mutable_host_device_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return host_device_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DevicePairingRequest::release_host_device_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DevicePairingRequest.host_device_id)
+  if (!_internal_has_host_device_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return host_device_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DevicePairingRequest::set_allocated_host_device_id(std::string* host_device_id) {
+  if (host_device_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  host_device_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), host_device_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DevicePairingRequest.host_device_id)
+}
+
+// optional string controller_device_id = 2;
+inline bool DevicePairingRequest::_internal_has_controller_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DevicePairingRequest::has_controller_device_id() const {
+  return _internal_has_controller_device_id();
+}
+inline void DevicePairingRequest::clear_controller_device_id() {
+  controller_device_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DevicePairingRequest::controller_device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePairingRequest.controller_device_id)
+  return _internal_controller_device_id();
+}
+inline void DevicePairingRequest::set_controller_device_id(const std::string& value) {
+  _internal_set_controller_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePairingRequest.controller_device_id)
+}
+inline std::string* DevicePairingRequest::mutable_controller_device_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DevicePairingRequest.controller_device_id)
+  return _internal_mutable_controller_device_id();
+}
+inline const std::string& DevicePairingRequest::_internal_controller_device_id() const {
+  return controller_device_id_.GetNoArena();
+}
+inline void DevicePairingRequest::_internal_set_controller_device_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  controller_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DevicePairingRequest::set_controller_device_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  controller_device_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DevicePairingRequest.controller_device_id)
+}
+inline void DevicePairingRequest::set_controller_device_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  controller_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DevicePairingRequest.controller_device_id)
+}
+inline void DevicePairingRequest::set_controller_device_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  controller_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DevicePairingRequest.controller_device_id)
+}
+inline std::string* DevicePairingRequest::_internal_mutable_controller_device_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return controller_device_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DevicePairingRequest::release_controller_device_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DevicePairingRequest.controller_device_id)
+  if (!_internal_has_controller_device_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return controller_device_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DevicePairingRequest::set_allocated_controller_device_id(std::string* controller_device_id) {
+  if (controller_device_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  controller_device_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), controller_device_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DevicePairingRequest.controller_device_id)
+}
+
+// -------------------------------------------------------------------
+
+// DevicePairingResponse
+
+// optional .enterprise_management.DevicePairingResponse.StatusCode status_code = 1 [default = FAILED];
+inline bool DevicePairingResponse::_internal_has_status_code() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DevicePairingResponse::has_status_code() const {
+  return _internal_has_status_code();
+}
+inline void DevicePairingResponse::clear_status_code() {
+  status_code_ = 1;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DevicePairingResponse_StatusCode DevicePairingResponse::_internal_status_code() const {
+  return static_cast< ::enterprise_management::DevicePairingResponse_StatusCode >(status_code_);
+}
+inline ::enterprise_management::DevicePairingResponse_StatusCode DevicePairingResponse::status_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DevicePairingResponse.status_code)
+  return _internal_status_code();
+}
+inline void DevicePairingResponse::_internal_set_status_code(::enterprise_management::DevicePairingResponse_StatusCode value) {
+  assert(::enterprise_management::DevicePairingResponse_StatusCode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  status_code_ = value;
+}
+inline void DevicePairingResponse::set_status_code(::enterprise_management::DevicePairingResponse_StatusCode value) {
+  _internal_set_status_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DevicePairingResponse.status_code)
+}
+
+// -------------------------------------------------------------------
+
+// CheckDevicePairingRequest
+
+// optional string host_device_id = 1;
+inline bool CheckDevicePairingRequest::_internal_has_host_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CheckDevicePairingRequest::has_host_device_id() const {
+  return _internal_has_host_device_id();
+}
+inline void CheckDevicePairingRequest::clear_host_device_id() {
+  host_device_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CheckDevicePairingRequest::host_device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CheckDevicePairingRequest.host_device_id)
+  return _internal_host_device_id();
+}
+inline void CheckDevicePairingRequest::set_host_device_id(const std::string& value) {
+  _internal_set_host_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CheckDevicePairingRequest.host_device_id)
+}
+inline std::string* CheckDevicePairingRequest::mutable_host_device_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CheckDevicePairingRequest.host_device_id)
+  return _internal_mutable_host_device_id();
+}
+inline const std::string& CheckDevicePairingRequest::_internal_host_device_id() const {
+  return host_device_id_.GetNoArena();
+}
+inline void CheckDevicePairingRequest::_internal_set_host_device_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  host_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CheckDevicePairingRequest::set_host_device_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  host_device_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CheckDevicePairingRequest.host_device_id)
+}
+inline void CheckDevicePairingRequest::set_host_device_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  host_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CheckDevicePairingRequest.host_device_id)
+}
+inline void CheckDevicePairingRequest::set_host_device_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  host_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CheckDevicePairingRequest.host_device_id)
+}
+inline std::string* CheckDevicePairingRequest::_internal_mutable_host_device_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return host_device_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CheckDevicePairingRequest::release_host_device_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CheckDevicePairingRequest.host_device_id)
+  if (!_internal_has_host_device_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return host_device_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CheckDevicePairingRequest::set_allocated_host_device_id(std::string* host_device_id) {
+  if (host_device_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  host_device_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), host_device_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CheckDevicePairingRequest.host_device_id)
+}
+
+// optional string controller_device_id = 2;
+inline bool CheckDevicePairingRequest::_internal_has_controller_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool CheckDevicePairingRequest::has_controller_device_id() const {
+  return _internal_has_controller_device_id();
+}
+inline void CheckDevicePairingRequest::clear_controller_device_id() {
+  controller_device_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& CheckDevicePairingRequest::controller_device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CheckDevicePairingRequest.controller_device_id)
+  return _internal_controller_device_id();
+}
+inline void CheckDevicePairingRequest::set_controller_device_id(const std::string& value) {
+  _internal_set_controller_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CheckDevicePairingRequest.controller_device_id)
+}
+inline std::string* CheckDevicePairingRequest::mutable_controller_device_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CheckDevicePairingRequest.controller_device_id)
+  return _internal_mutable_controller_device_id();
+}
+inline const std::string& CheckDevicePairingRequest::_internal_controller_device_id() const {
+  return controller_device_id_.GetNoArena();
+}
+inline void CheckDevicePairingRequest::_internal_set_controller_device_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  controller_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CheckDevicePairingRequest::set_controller_device_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  controller_device_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CheckDevicePairingRequest.controller_device_id)
+}
+inline void CheckDevicePairingRequest::set_controller_device_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  controller_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CheckDevicePairingRequest.controller_device_id)
+}
+inline void CheckDevicePairingRequest::set_controller_device_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  controller_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CheckDevicePairingRequest.controller_device_id)
+}
+inline std::string* CheckDevicePairingRequest::_internal_mutable_controller_device_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return controller_device_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CheckDevicePairingRequest::release_controller_device_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CheckDevicePairingRequest.controller_device_id)
+  if (!_internal_has_controller_device_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return controller_device_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CheckDevicePairingRequest::set_allocated_controller_device_id(std::string* controller_device_id) {
+  if (controller_device_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  controller_device_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), controller_device_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CheckDevicePairingRequest.controller_device_id)
+}
+
+// -------------------------------------------------------------------
+
+// CheckDevicePairingResponse
+
+// optional .enterprise_management.CheckDevicePairingResponse.StatusCode status_code = 1 [default = NOT_PAIRED];
+inline bool CheckDevicePairingResponse::_internal_has_status_code() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CheckDevicePairingResponse::has_status_code() const {
+  return _internal_has_status_code();
+}
+inline void CheckDevicePairingResponse::clear_status_code() {
+  status_code_ = 1;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::_internal_status_code() const {
+  return static_cast< ::enterprise_management::CheckDevicePairingResponse_StatusCode >(status_code_);
+}
+inline ::enterprise_management::CheckDevicePairingResponse_StatusCode CheckDevicePairingResponse::status_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CheckDevicePairingResponse.status_code)
+  return _internal_status_code();
+}
+inline void CheckDevicePairingResponse::_internal_set_status_code(::enterprise_management::CheckDevicePairingResponse_StatusCode value) {
+  assert(::enterprise_management::CheckDevicePairingResponse_StatusCode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  status_code_ = value;
+}
+inline void CheckDevicePairingResponse::set_status_code(::enterprise_management::CheckDevicePairingResponse_StatusCode value) {
+  _internal_set_status_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CheckDevicePairingResponse.status_code)
+}
+
+// -------------------------------------------------------------------
+
+// RemoteCommand
+
+// optional .enterprise_management.RemoteCommand.Type type = 1;
+inline bool RemoteCommand::_internal_has_type() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool RemoteCommand::has_type() const {
+  return _internal_has_type();
+}
+inline void RemoteCommand::clear_type() {
+  type_ = -1;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::RemoteCommand_Type RemoteCommand::_internal_type() const {
+  return static_cast< ::enterprise_management::RemoteCommand_Type >(type_);
+}
+inline ::enterprise_management::RemoteCommand_Type RemoteCommand::type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommand.type)
+  return _internal_type();
+}
+inline void RemoteCommand::_internal_set_type(::enterprise_management::RemoteCommand_Type value) {
+  assert(::enterprise_management::RemoteCommand_Type_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  type_ = value;
+}
+inline void RemoteCommand::set_type(::enterprise_management::RemoteCommand_Type value) {
+  _internal_set_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommand.type)
+}
+
+// optional int64 command_id = 2;
+inline bool RemoteCommand::_internal_has_command_id() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool RemoteCommand::has_command_id() const {
+  return _internal_has_command_id();
+}
+inline void RemoteCommand::clear_command_id() {
+  command_id_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 RemoteCommand::_internal_command_id() const {
+  return command_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 RemoteCommand::command_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommand.command_id)
+  return _internal_command_id();
+}
+inline void RemoteCommand::_internal_set_command_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  command_id_ = value;
+}
+inline void RemoteCommand::set_command_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_command_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommand.command_id)
+}
+
+// optional int64 age_of_command = 3;
+inline bool RemoteCommand::_internal_has_age_of_command() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool RemoteCommand::has_age_of_command() const {
+  return _internal_has_age_of_command();
+}
+inline void RemoteCommand::clear_age_of_command() {
+  age_of_command_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 RemoteCommand::_internal_age_of_command() const {
+  return age_of_command_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 RemoteCommand::age_of_command() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommand.age_of_command)
+  return _internal_age_of_command();
+}
+inline void RemoteCommand::_internal_set_age_of_command(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000008u;
+  age_of_command_ = value;
+}
+inline void RemoteCommand::set_age_of_command(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_age_of_command(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommand.age_of_command)
+}
+
+// optional string payload = 4;
+inline bool RemoteCommand::_internal_has_payload() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RemoteCommand::has_payload() const {
+  return _internal_has_payload();
+}
+inline void RemoteCommand::clear_payload() {
+  payload_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& RemoteCommand::payload() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommand.payload)
+  return _internal_payload();
+}
+inline void RemoteCommand::set_payload(const std::string& value) {
+  _internal_set_payload(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommand.payload)
+}
+inline std::string* RemoteCommand::mutable_payload() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RemoteCommand.payload)
+  return _internal_mutable_payload();
+}
+inline const std::string& RemoteCommand::_internal_payload() const {
+  return payload_.GetNoArena();
+}
+inline void RemoteCommand::_internal_set_payload(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RemoteCommand::set_payload(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  payload_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RemoteCommand.payload)
+}
+inline void RemoteCommand::set_payload(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RemoteCommand.payload)
+}
+inline void RemoteCommand::set_payload(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RemoteCommand.payload)
+}
+inline std::string* RemoteCommand::_internal_mutable_payload() {
+  _has_bits_[0] |= 0x00000001u;
+  return payload_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RemoteCommand::release_payload() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RemoteCommand.payload)
+  if (!_internal_has_payload()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return payload_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RemoteCommand::set_allocated_payload(std::string* payload) {
+  if (payload != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  payload_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), payload);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RemoteCommand.payload)
+}
+
+// optional string target_device_id = 5;
+inline bool RemoteCommand::_internal_has_target_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool RemoteCommand::has_target_device_id() const {
+  return _internal_has_target_device_id();
+}
+inline void RemoteCommand::clear_target_device_id() {
+  target_device_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& RemoteCommand::target_device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommand.target_device_id)
+  return _internal_target_device_id();
+}
+inline void RemoteCommand::set_target_device_id(const std::string& value) {
+  _internal_set_target_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommand.target_device_id)
+}
+inline std::string* RemoteCommand::mutable_target_device_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RemoteCommand.target_device_id)
+  return _internal_mutable_target_device_id();
+}
+inline const std::string& RemoteCommand::_internal_target_device_id() const {
+  return target_device_id_.GetNoArena();
+}
+inline void RemoteCommand::_internal_set_target_device_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  target_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RemoteCommand::set_target_device_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  target_device_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RemoteCommand.target_device_id)
+}
+inline void RemoteCommand::set_target_device_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  target_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RemoteCommand.target_device_id)
+}
+inline void RemoteCommand::set_target_device_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  target_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RemoteCommand.target_device_id)
+}
+inline std::string* RemoteCommand::_internal_mutable_target_device_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return target_device_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RemoteCommand::release_target_device_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RemoteCommand.target_device_id)
+  if (!_internal_has_target_device_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return target_device_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RemoteCommand::set_allocated_target_device_id(std::string* target_device_id) {
+  if (target_device_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  target_device_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), target_device_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RemoteCommand.target_device_id)
+}
+
+// -------------------------------------------------------------------
+
+// RemoteCommandResult
+
+// optional .enterprise_management.RemoteCommandResult.ResultType result = 1;
+inline bool RemoteCommandResult::_internal_has_result() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool RemoteCommandResult::has_result() const {
+  return _internal_has_result();
+}
+inline void RemoteCommandResult::clear_result() {
+  result_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::RemoteCommandResult_ResultType RemoteCommandResult::_internal_result() const {
+  return static_cast< ::enterprise_management::RemoteCommandResult_ResultType >(result_);
+}
+inline ::enterprise_management::RemoteCommandResult_ResultType RemoteCommandResult::result() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommandResult.result)
+  return _internal_result();
+}
+inline void RemoteCommandResult::_internal_set_result(::enterprise_management::RemoteCommandResult_ResultType value) {
+  assert(::enterprise_management::RemoteCommandResult_ResultType_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  result_ = value;
+}
+inline void RemoteCommandResult::set_result(::enterprise_management::RemoteCommandResult_ResultType value) {
+  _internal_set_result(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommandResult.result)
+}
+
+// optional int64 command_id = 2;
+inline bool RemoteCommandResult::_internal_has_command_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool RemoteCommandResult::has_command_id() const {
+  return _internal_has_command_id();
+}
+inline void RemoteCommandResult::clear_command_id() {
+  command_id_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 RemoteCommandResult::_internal_command_id() const {
+  return command_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 RemoteCommandResult::command_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommandResult.command_id)
+  return _internal_command_id();
+}
+inline void RemoteCommandResult::_internal_set_command_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  command_id_ = value;
+}
+inline void RemoteCommandResult::set_command_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_command_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommandResult.command_id)
+}
+
+// optional int64 timestamp = 3;
+inline bool RemoteCommandResult::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool RemoteCommandResult::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void RemoteCommandResult::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 RemoteCommandResult::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 RemoteCommandResult::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommandResult.timestamp)
+  return _internal_timestamp();
+}
+inline void RemoteCommandResult::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  timestamp_ = value;
+}
+inline void RemoteCommandResult::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommandResult.timestamp)
+}
+
+// optional string payload = 4;
+inline bool RemoteCommandResult::_internal_has_payload() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RemoteCommandResult::has_payload() const {
+  return _internal_has_payload();
+}
+inline void RemoteCommandResult::clear_payload() {
+  payload_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& RemoteCommandResult::payload() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RemoteCommandResult.payload)
+  return _internal_payload();
+}
+inline void RemoteCommandResult::set_payload(const std::string& value) {
+  _internal_set_payload(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RemoteCommandResult.payload)
+}
+inline std::string* RemoteCommandResult::mutable_payload() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RemoteCommandResult.payload)
+  return _internal_mutable_payload();
+}
+inline const std::string& RemoteCommandResult::_internal_payload() const {
+  return payload_.GetNoArena();
+}
+inline void RemoteCommandResult::_internal_set_payload(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RemoteCommandResult::set_payload(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  payload_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RemoteCommandResult.payload)
+}
+inline void RemoteCommandResult::set_payload(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RemoteCommandResult.payload)
+}
+inline void RemoteCommandResult::set_payload(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  payload_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RemoteCommandResult.payload)
+}
+inline std::string* RemoteCommandResult::_internal_mutable_payload() {
+  _has_bits_[0] |= 0x00000001u;
+  return payload_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RemoteCommandResult::release_payload() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RemoteCommandResult.payload)
+  if (!_internal_has_payload()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return payload_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RemoteCommandResult::set_allocated_payload(std::string* payload) {
+  if (payload != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  payload_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), payload);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RemoteCommandResult.payload)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceRemoteCommandRequest
+
+// optional int64 last_command_unique_id = 1;
+inline bool DeviceRemoteCommandRequest::_internal_has_last_command_unique_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceRemoteCommandRequest::has_last_command_unique_id() const {
+  return _internal_has_last_command_unique_id();
+}
+inline void DeviceRemoteCommandRequest::clear_last_command_unique_id() {
+  last_command_unique_id_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceRemoteCommandRequest::_internal_last_command_unique_id() const {
+  return last_command_unique_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 DeviceRemoteCommandRequest::last_command_unique_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRemoteCommandRequest.last_command_unique_id)
+  return _internal_last_command_unique_id();
+}
+inline void DeviceRemoteCommandRequest::_internal_set_last_command_unique_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  last_command_unique_id_ = value;
+}
+inline void DeviceRemoteCommandRequest::set_last_command_unique_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_command_unique_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRemoteCommandRequest.last_command_unique_id)
+}
+
+// repeated .enterprise_management.RemoteCommandResult command_results = 2;
+inline int DeviceRemoteCommandRequest::_internal_command_results_size() const {
+  return command_results_.size();
+}
+inline int DeviceRemoteCommandRequest::command_results_size() const {
+  return _internal_command_results_size();
+}
+inline void DeviceRemoteCommandRequest::clear_command_results() {
+  command_results_.Clear();
+}
+inline ::enterprise_management::RemoteCommandResult* DeviceRemoteCommandRequest::mutable_command_results(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRemoteCommandRequest.command_results)
+  return command_results_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommandResult >*
+DeviceRemoteCommandRequest::mutable_command_results() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceRemoteCommandRequest.command_results)
+  return &command_results_;
+}
+inline const ::enterprise_management::RemoteCommandResult& DeviceRemoteCommandRequest::_internal_command_results(int index) const {
+  return command_results_.Get(index);
+}
+inline const ::enterprise_management::RemoteCommandResult& DeviceRemoteCommandRequest::command_results(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRemoteCommandRequest.command_results)
+  return _internal_command_results(index);
+}
+inline ::enterprise_management::RemoteCommandResult* DeviceRemoteCommandRequest::_internal_add_command_results() {
+  return command_results_.Add();
+}
+inline ::enterprise_management::RemoteCommandResult* DeviceRemoteCommandRequest::add_command_results() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceRemoteCommandRequest.command_results)
+  return _internal_add_command_results();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommandResult >&
+DeviceRemoteCommandRequest::command_results() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceRemoteCommandRequest.command_results)
+  return command_results_;
+}
+
+// optional bool send_secure_commands = 3;
+inline bool DeviceRemoteCommandRequest::_internal_has_send_secure_commands() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceRemoteCommandRequest::has_send_secure_commands() const {
+  return _internal_has_send_secure_commands();
+}
+inline void DeviceRemoteCommandRequest::clear_send_secure_commands() {
+  send_secure_commands_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool DeviceRemoteCommandRequest::_internal_send_secure_commands() const {
+  return send_secure_commands_;
+}
+inline bool DeviceRemoteCommandRequest::send_secure_commands() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRemoteCommandRequest.send_secure_commands)
+  return _internal_send_secure_commands();
+}
+inline void DeviceRemoteCommandRequest::_internal_set_send_secure_commands(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  send_secure_commands_ = value;
+}
+inline void DeviceRemoteCommandRequest::set_send_secure_commands(bool value) {
+  _internal_set_send_secure_commands(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRemoteCommandRequest.send_secure_commands)
+}
+
+// optional .enterprise_management.PolicyFetchRequest.SignatureType signature_type = 4;
+inline bool DeviceRemoteCommandRequest::_internal_has_signature_type() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool DeviceRemoteCommandRequest::has_signature_type() const {
+  return _internal_has_signature_type();
+}
+inline void DeviceRemoteCommandRequest::clear_signature_type() {
+  signature_type_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::PolicyFetchRequest_SignatureType DeviceRemoteCommandRequest::_internal_signature_type() const {
+  return static_cast< ::enterprise_management::PolicyFetchRequest_SignatureType >(signature_type_);
+}
+inline ::enterprise_management::PolicyFetchRequest_SignatureType DeviceRemoteCommandRequest::signature_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRemoteCommandRequest.signature_type)
+  return _internal_signature_type();
+}
+inline void DeviceRemoteCommandRequest::_internal_set_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value) {
+  assert(::enterprise_management::PolicyFetchRequest_SignatureType_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  signature_type_ = value;
+}
+inline void DeviceRemoteCommandRequest::set_signature_type(::enterprise_management::PolicyFetchRequest_SignatureType value) {
+  _internal_set_signature_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRemoteCommandRequest.signature_type)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceRemoteCommandResponse
+
+// repeated .enterprise_management.RemoteCommand commands = 1;
+inline int DeviceRemoteCommandResponse::_internal_commands_size() const {
+  return commands_.size();
+}
+inline int DeviceRemoteCommandResponse::commands_size() const {
+  return _internal_commands_size();
+}
+inline void DeviceRemoteCommandResponse::clear_commands() {
+  commands_.Clear();
+}
+inline ::enterprise_management::RemoteCommand* DeviceRemoteCommandResponse::mutable_commands(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRemoteCommandResponse.commands)
+  return commands_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommand >*
+DeviceRemoteCommandResponse::mutable_commands() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceRemoteCommandResponse.commands)
+  return &commands_;
+}
+inline const ::enterprise_management::RemoteCommand& DeviceRemoteCommandResponse::_internal_commands(int index) const {
+  return commands_.Get(index);
+}
+inline const ::enterprise_management::RemoteCommand& DeviceRemoteCommandResponse::commands(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRemoteCommandResponse.commands)
+  return _internal_commands(index);
+}
+inline ::enterprise_management::RemoteCommand* DeviceRemoteCommandResponse::_internal_add_commands() {
+  return commands_.Add();
+}
+inline ::enterprise_management::RemoteCommand* DeviceRemoteCommandResponse::add_commands() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceRemoteCommandResponse.commands)
+  return _internal_add_commands();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::RemoteCommand >&
+DeviceRemoteCommandResponse::commands() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceRemoteCommandResponse.commands)
+  return commands_;
+}
+
+// repeated .enterprise_management.SignedData secure_commands = 2;
+inline int DeviceRemoteCommandResponse::_internal_secure_commands_size() const {
+  return secure_commands_.size();
+}
+inline int DeviceRemoteCommandResponse::secure_commands_size() const {
+  return _internal_secure_commands_size();
+}
+inline void DeviceRemoteCommandResponse::clear_secure_commands() {
+  secure_commands_.Clear();
+}
+inline ::enterprise_management::SignedData* DeviceRemoteCommandResponse::mutable_secure_commands(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRemoteCommandResponse.secure_commands)
+  return secure_commands_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SignedData >*
+DeviceRemoteCommandResponse::mutable_secure_commands() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceRemoteCommandResponse.secure_commands)
+  return &secure_commands_;
+}
+inline const ::enterprise_management::SignedData& DeviceRemoteCommandResponse::_internal_secure_commands(int index) const {
+  return secure_commands_.Get(index);
+}
+inline const ::enterprise_management::SignedData& DeviceRemoteCommandResponse::secure_commands(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRemoteCommandResponse.secure_commands)
+  return _internal_secure_commands(index);
+}
+inline ::enterprise_management::SignedData* DeviceRemoteCommandResponse::_internal_add_secure_commands() {
+  return secure_commands_.Add();
+}
+inline ::enterprise_management::SignedData* DeviceRemoteCommandResponse::add_secure_commands() {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceRemoteCommandResponse.secure_commands)
+  return _internal_add_secure_commands();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::SignedData >&
+DeviceRemoteCommandResponse::secure_commands() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceRemoteCommandResponse.secure_commands)
+  return secure_commands_;
+}
+
+// -------------------------------------------------------------------
+
+// DeviceAttributeUpdatePermissionRequest
+
+// -------------------------------------------------------------------
+
+// DeviceAttributeUpdatePermissionResponse
+
+// optional .enterprise_management.DeviceAttributeUpdatePermissionResponse.ResultType result = 1;
+inline bool DeviceAttributeUpdatePermissionResponse::_internal_has_result() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceAttributeUpdatePermissionResponse::has_result() const {
+  return _internal_has_result();
+}
+inline void DeviceAttributeUpdatePermissionResponse::clear_result() {
+  result_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType DeviceAttributeUpdatePermissionResponse::_internal_result() const {
+  return static_cast< ::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType >(result_);
+}
+inline ::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType DeviceAttributeUpdatePermissionResponse::result() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAttributeUpdatePermissionResponse.result)
+  return _internal_result();
+}
+inline void DeviceAttributeUpdatePermissionResponse::_internal_set_result(::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType value) {
+  assert(::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  result_ = value;
+}
+inline void DeviceAttributeUpdatePermissionResponse::set_result(::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType value) {
+  _internal_set_result(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAttributeUpdatePermissionResponse.result)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceAttributeUpdateRequest
+
+// optional string asset_id = 1;
+inline bool DeviceAttributeUpdateRequest::_internal_has_asset_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceAttributeUpdateRequest::has_asset_id() const {
+  return _internal_has_asset_id();
+}
+inline void DeviceAttributeUpdateRequest::clear_asset_id() {
+  asset_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceAttributeUpdateRequest::asset_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAttributeUpdateRequest.asset_id)
+  return _internal_asset_id();
+}
+inline void DeviceAttributeUpdateRequest::set_asset_id(const std::string& value) {
+  _internal_set_asset_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAttributeUpdateRequest.asset_id)
+}
+inline std::string* DeviceAttributeUpdateRequest::mutable_asset_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceAttributeUpdateRequest.asset_id)
+  return _internal_mutable_asset_id();
+}
+inline const std::string& DeviceAttributeUpdateRequest::_internal_asset_id() const {
+  return asset_id_.GetNoArena();
+}
+inline void DeviceAttributeUpdateRequest::_internal_set_asset_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  asset_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceAttributeUpdateRequest::set_asset_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  asset_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceAttributeUpdateRequest.asset_id)
+}
+inline void DeviceAttributeUpdateRequest::set_asset_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  asset_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceAttributeUpdateRequest.asset_id)
+}
+inline void DeviceAttributeUpdateRequest::set_asset_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  asset_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceAttributeUpdateRequest.asset_id)
+}
+inline std::string* DeviceAttributeUpdateRequest::_internal_mutable_asset_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return asset_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceAttributeUpdateRequest::release_asset_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceAttributeUpdateRequest.asset_id)
+  if (!_internal_has_asset_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return asset_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceAttributeUpdateRequest::set_allocated_asset_id(std::string* asset_id) {
+  if (asset_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  asset_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), asset_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceAttributeUpdateRequest.asset_id)
+}
+
+// optional string location = 2;
+inline bool DeviceAttributeUpdateRequest::_internal_has_location() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool DeviceAttributeUpdateRequest::has_location() const {
+  return _internal_has_location();
+}
+inline void DeviceAttributeUpdateRequest::clear_location() {
+  location_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& DeviceAttributeUpdateRequest::location() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAttributeUpdateRequest.location)
+  return _internal_location();
+}
+inline void DeviceAttributeUpdateRequest::set_location(const std::string& value) {
+  _internal_set_location(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAttributeUpdateRequest.location)
+}
+inline std::string* DeviceAttributeUpdateRequest::mutable_location() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceAttributeUpdateRequest.location)
+  return _internal_mutable_location();
+}
+inline const std::string& DeviceAttributeUpdateRequest::_internal_location() const {
+  return location_.GetNoArena();
+}
+inline void DeviceAttributeUpdateRequest::_internal_set_location(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  location_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceAttributeUpdateRequest::set_location(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  location_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceAttributeUpdateRequest.location)
+}
+inline void DeviceAttributeUpdateRequest::set_location(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  location_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceAttributeUpdateRequest.location)
+}
+inline void DeviceAttributeUpdateRequest::set_location(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  location_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceAttributeUpdateRequest.location)
+}
+inline std::string* DeviceAttributeUpdateRequest::_internal_mutable_location() {
+  _has_bits_[0] |= 0x00000002u;
+  return location_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceAttributeUpdateRequest::release_location() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceAttributeUpdateRequest.location)
+  if (!_internal_has_location()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return location_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceAttributeUpdateRequest::set_allocated_location(std::string* location) {
+  if (location != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  location_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), location);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceAttributeUpdateRequest.location)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceAttributeUpdateResponse
+
+// optional .enterprise_management.DeviceAttributeUpdateResponse.ResultType result = 1;
+inline bool DeviceAttributeUpdateResponse::_internal_has_result() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceAttributeUpdateResponse::has_result() const {
+  return _internal_has_result();
+}
+inline void DeviceAttributeUpdateResponse::clear_result() {
+  result_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::DeviceAttributeUpdateResponse_ResultType DeviceAttributeUpdateResponse::_internal_result() const {
+  return static_cast< ::enterprise_management::DeviceAttributeUpdateResponse_ResultType >(result_);
+}
+inline ::enterprise_management::DeviceAttributeUpdateResponse_ResultType DeviceAttributeUpdateResponse::result() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceAttributeUpdateResponse.result)
+  return _internal_result();
+}
+inline void DeviceAttributeUpdateResponse::_internal_set_result(::enterprise_management::DeviceAttributeUpdateResponse_ResultType value) {
+  assert(::enterprise_management::DeviceAttributeUpdateResponse_ResultType_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  result_ = value;
+}
+inline void DeviceAttributeUpdateResponse::set_result(::enterprise_management::DeviceAttributeUpdateResponse_ResultType value) {
+  _internal_set_result(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceAttributeUpdateResponse.result)
+}
+
+// -------------------------------------------------------------------
+
+// GcmIdUpdateRequest
+
+// optional string gcm_id = 1;
+inline bool GcmIdUpdateRequest::_internal_has_gcm_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool GcmIdUpdateRequest::has_gcm_id() const {
+  return _internal_has_gcm_id();
+}
+inline void GcmIdUpdateRequest::clear_gcm_id() {
+  gcm_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& GcmIdUpdateRequest::gcm_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.GcmIdUpdateRequest.gcm_id)
+  return _internal_gcm_id();
+}
+inline void GcmIdUpdateRequest::set_gcm_id(const std::string& value) {
+  _internal_set_gcm_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.GcmIdUpdateRequest.gcm_id)
+}
+inline std::string* GcmIdUpdateRequest::mutable_gcm_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.GcmIdUpdateRequest.gcm_id)
+  return _internal_mutable_gcm_id();
+}
+inline const std::string& GcmIdUpdateRequest::_internal_gcm_id() const {
+  return gcm_id_.GetNoArena();
+}
+inline void GcmIdUpdateRequest::_internal_set_gcm_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  gcm_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void GcmIdUpdateRequest::set_gcm_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  gcm_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.GcmIdUpdateRequest.gcm_id)
+}
+inline void GcmIdUpdateRequest::set_gcm_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  gcm_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.GcmIdUpdateRequest.gcm_id)
+}
+inline void GcmIdUpdateRequest::set_gcm_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  gcm_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.GcmIdUpdateRequest.gcm_id)
+}
+inline std::string* GcmIdUpdateRequest::_internal_mutable_gcm_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return gcm_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* GcmIdUpdateRequest::release_gcm_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.GcmIdUpdateRequest.gcm_id)
+  if (!_internal_has_gcm_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return gcm_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void GcmIdUpdateRequest::set_allocated_gcm_id(std::string* gcm_id) {
+  if (gcm_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  gcm_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), gcm_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.GcmIdUpdateRequest.gcm_id)
+}
+
+// -------------------------------------------------------------------
+
+// GcmIdUpdateResponse
+
+// -------------------------------------------------------------------
+
+// CheckAndroidManagementRequest
+
+// -------------------------------------------------------------------
+
+// CheckAndroidManagementResponse
+
+// -------------------------------------------------------------------
+
+// CertificateBasedDeviceRegisterRequest
+
+// optional .enterprise_management.SignedData signed_request = 1;
+inline bool CertificateBasedDeviceRegisterRequest::_internal_has_signed_request() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || signed_request_ != nullptr);
+  return value;
+}
+inline bool CertificateBasedDeviceRegisterRequest::has_signed_request() const {
+  return _internal_has_signed_request();
+}
+inline void CertificateBasedDeviceRegisterRequest::clear_signed_request() {
+  if (signed_request_ != nullptr) signed_request_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::SignedData& CertificateBasedDeviceRegisterRequest::_internal_signed_request() const {
+  const ::enterprise_management::SignedData* p = signed_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SignedData*>(
+      &::enterprise_management::_SignedData_default_instance_);
+}
+inline const ::enterprise_management::SignedData& CertificateBasedDeviceRegisterRequest::signed_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CertificateBasedDeviceRegisterRequest.signed_request)
+  return _internal_signed_request();
+}
+inline ::enterprise_management::SignedData* CertificateBasedDeviceRegisterRequest::release_signed_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CertificateBasedDeviceRegisterRequest.signed_request)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::SignedData* temp = signed_request_;
+  signed_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SignedData* CertificateBasedDeviceRegisterRequest::_internal_mutable_signed_request() {
+  _has_bits_[0] |= 0x00000001u;
+  if (signed_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SignedData>(GetArenaNoVirtual());
+    signed_request_ = p;
+  }
+  return signed_request_;
+}
+inline ::enterprise_management::SignedData* CertificateBasedDeviceRegisterRequest::mutable_signed_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CertificateBasedDeviceRegisterRequest.signed_request)
+  return _internal_mutable_signed_request();
+}
+inline void CertificateBasedDeviceRegisterRequest::set_allocated_signed_request(::enterprise_management::SignedData* signed_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete signed_request_;
+  }
+  if (signed_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      signed_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, signed_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  signed_request_ = signed_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CertificateBasedDeviceRegisterRequest.signed_request)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceRegisterConfiguration
+
+// optional string device_owner = 1;
+inline bool DeviceRegisterConfiguration::_internal_has_device_owner() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceRegisterConfiguration::has_device_owner() const {
+  return _internal_has_device_owner();
+}
+inline void DeviceRegisterConfiguration::clear_device_owner() {
+  device_owner_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceRegisterConfiguration::device_owner() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceRegisterConfiguration.device_owner)
+  return _internal_device_owner();
+}
+inline void DeviceRegisterConfiguration::set_device_owner(const std::string& value) {
+  _internal_set_device_owner(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceRegisterConfiguration.device_owner)
+}
+inline std::string* DeviceRegisterConfiguration::mutable_device_owner() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceRegisterConfiguration.device_owner)
+  return _internal_mutable_device_owner();
+}
+inline const std::string& DeviceRegisterConfiguration::_internal_device_owner() const {
+  return device_owner_.GetNoArena();
+}
+inline void DeviceRegisterConfiguration::_internal_set_device_owner(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_owner_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceRegisterConfiguration::set_device_owner(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_owner_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceRegisterConfiguration.device_owner)
+}
+inline void DeviceRegisterConfiguration::set_device_owner(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_owner_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceRegisterConfiguration.device_owner)
+}
+inline void DeviceRegisterConfiguration::set_device_owner(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_owner_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceRegisterConfiguration.device_owner)
+}
+inline std::string* DeviceRegisterConfiguration::_internal_mutable_device_owner() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_owner_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceRegisterConfiguration::release_device_owner() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceRegisterConfiguration.device_owner)
+  if (!_internal_has_device_owner()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_owner_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceRegisterConfiguration::set_allocated_device_owner(std::string* device_owner) {
+  if (device_owner != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_owner_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_owner);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceRegisterConfiguration.device_owner)
+}
+
+// -------------------------------------------------------------------
+
+// CertificateBasedDeviceRegistrationData
+
+// optional .enterprise_management.CertificateBasedDeviceRegistrationData.CertificateType certificate_type = 1;
+inline bool CertificateBasedDeviceRegistrationData::_internal_has_certificate_type() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool CertificateBasedDeviceRegistrationData::has_certificate_type() const {
+  return _internal_has_certificate_type();
+}
+inline void CertificateBasedDeviceRegistrationData::clear_certificate_type() {
+  certificate_type_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType CertificateBasedDeviceRegistrationData::_internal_certificate_type() const {
+  return static_cast< ::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType >(certificate_type_);
+}
+inline ::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType CertificateBasedDeviceRegistrationData::certificate_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CertificateBasedDeviceRegistrationData.certificate_type)
+  return _internal_certificate_type();
+}
+inline void CertificateBasedDeviceRegistrationData::_internal_set_certificate_type(::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType value) {
+  assert(::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  certificate_type_ = value;
+}
+inline void CertificateBasedDeviceRegistrationData::set_certificate_type(::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType value) {
+  _internal_set_certificate_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CertificateBasedDeviceRegistrationData.certificate_type)
+}
+
+// optional bytes device_certificate = 2;
+inline bool CertificateBasedDeviceRegistrationData::_internal_has_device_certificate() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CertificateBasedDeviceRegistrationData::has_device_certificate() const {
+  return _internal_has_device_certificate();
+}
+inline void CertificateBasedDeviceRegistrationData::clear_device_certificate() {
+  device_certificate_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& CertificateBasedDeviceRegistrationData::device_certificate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CertificateBasedDeviceRegistrationData.device_certificate)
+  return _internal_device_certificate();
+}
+inline void CertificateBasedDeviceRegistrationData::set_device_certificate(const std::string& value) {
+  _internal_set_device_certificate(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CertificateBasedDeviceRegistrationData.device_certificate)
+}
+inline std::string* CertificateBasedDeviceRegistrationData::mutable_device_certificate() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CertificateBasedDeviceRegistrationData.device_certificate)
+  return _internal_mutable_device_certificate();
+}
+inline const std::string& CertificateBasedDeviceRegistrationData::_internal_device_certificate() const {
+  return device_certificate_.GetNoArena();
+}
+inline void CertificateBasedDeviceRegistrationData::_internal_set_device_certificate(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void CertificateBasedDeviceRegistrationData::set_device_certificate(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  device_certificate_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.CertificateBasedDeviceRegistrationData.device_certificate)
+}
+inline void CertificateBasedDeviceRegistrationData::set_device_certificate(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  device_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.CertificateBasedDeviceRegistrationData.device_certificate)
+}
+inline void CertificateBasedDeviceRegistrationData::set_device_certificate(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  device_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.CertificateBasedDeviceRegistrationData.device_certificate)
+}
+inline std::string* CertificateBasedDeviceRegistrationData::_internal_mutable_device_certificate() {
+  _has_bits_[0] |= 0x00000001u;
+  return device_certificate_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* CertificateBasedDeviceRegistrationData::release_device_certificate() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CertificateBasedDeviceRegistrationData.device_certificate)
+  if (!_internal_has_device_certificate()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return device_certificate_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void CertificateBasedDeviceRegistrationData::set_allocated_device_certificate(std::string* device_certificate) {
+  if (device_certificate != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  device_certificate_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_certificate);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CertificateBasedDeviceRegistrationData.device_certificate)
+}
+
+// optional .enterprise_management.DeviceRegisterRequest device_register_request = 3;
+inline bool CertificateBasedDeviceRegistrationData::_internal_has_device_register_request() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || device_register_request_ != nullptr);
+  return value;
+}
+inline bool CertificateBasedDeviceRegistrationData::has_device_register_request() const {
+  return _internal_has_device_register_request();
+}
+inline void CertificateBasedDeviceRegistrationData::clear_device_register_request() {
+  if (device_register_request_ != nullptr) device_register_request_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::DeviceRegisterRequest& CertificateBasedDeviceRegistrationData::_internal_device_register_request() const {
+  const ::enterprise_management::DeviceRegisterRequest* p = device_register_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRegisterRequest*>(
+      &::enterprise_management::_DeviceRegisterRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceRegisterRequest& CertificateBasedDeviceRegistrationData::device_register_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CertificateBasedDeviceRegistrationData.device_register_request)
+  return _internal_device_register_request();
+}
+inline ::enterprise_management::DeviceRegisterRequest* CertificateBasedDeviceRegistrationData::release_device_register_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CertificateBasedDeviceRegistrationData.device_register_request)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::DeviceRegisterRequest* temp = device_register_request_;
+  device_register_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRegisterRequest* CertificateBasedDeviceRegistrationData::_internal_mutable_device_register_request() {
+  _has_bits_[0] |= 0x00000002u;
+  if (device_register_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRegisterRequest>(GetArenaNoVirtual());
+    device_register_request_ = p;
+  }
+  return device_register_request_;
+}
+inline ::enterprise_management::DeviceRegisterRequest* CertificateBasedDeviceRegistrationData::mutable_device_register_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CertificateBasedDeviceRegistrationData.device_register_request)
+  return _internal_mutable_device_register_request();
+}
+inline void CertificateBasedDeviceRegistrationData::set_allocated_device_register_request(::enterprise_management::DeviceRegisterRequest* device_register_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_register_request_;
+  }
+  if (device_register_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_register_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_register_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  device_register_request_ = device_register_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CertificateBasedDeviceRegistrationData.device_register_request)
+}
+
+// optional .enterprise_management.DeviceRegisterConfiguration device_register_configuration = 4;
+inline bool CertificateBasedDeviceRegistrationData::_internal_has_device_register_configuration() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || device_register_configuration_ != nullptr);
+  return value;
+}
+inline bool CertificateBasedDeviceRegistrationData::has_device_register_configuration() const {
+  return _internal_has_device_register_configuration();
+}
+inline void CertificateBasedDeviceRegistrationData::clear_device_register_configuration() {
+  if (device_register_configuration_ != nullptr) device_register_configuration_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::DeviceRegisterConfiguration& CertificateBasedDeviceRegistrationData::_internal_device_register_configuration() const {
+  const ::enterprise_management::DeviceRegisterConfiguration* p = device_register_configuration_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRegisterConfiguration*>(
+      &::enterprise_management::_DeviceRegisterConfiguration_default_instance_);
+}
+inline const ::enterprise_management::DeviceRegisterConfiguration& CertificateBasedDeviceRegistrationData::device_register_configuration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CertificateBasedDeviceRegistrationData.device_register_configuration)
+  return _internal_device_register_configuration();
+}
+inline ::enterprise_management::DeviceRegisterConfiguration* CertificateBasedDeviceRegistrationData::release_device_register_configuration() {
+  // @@protoc_insertion_point(field_release:enterprise_management.CertificateBasedDeviceRegistrationData.device_register_configuration)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::DeviceRegisterConfiguration* temp = device_register_configuration_;
+  device_register_configuration_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRegisterConfiguration* CertificateBasedDeviceRegistrationData::_internal_mutable_device_register_configuration() {
+  _has_bits_[0] |= 0x00000004u;
+  if (device_register_configuration_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRegisterConfiguration>(GetArenaNoVirtual());
+    device_register_configuration_ = p;
+  }
+  return device_register_configuration_;
+}
+inline ::enterprise_management::DeviceRegisterConfiguration* CertificateBasedDeviceRegistrationData::mutable_device_register_configuration() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CertificateBasedDeviceRegistrationData.device_register_configuration)
+  return _internal_mutable_device_register_configuration();
+}
+inline void CertificateBasedDeviceRegistrationData::set_allocated_device_register_configuration(::enterprise_management::DeviceRegisterConfiguration* device_register_configuration) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_register_configuration_;
+  }
+  if (device_register_configuration) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_register_configuration = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_register_configuration, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  device_register_configuration_ = device_register_configuration;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.CertificateBasedDeviceRegistrationData.device_register_configuration)
+}
+
+// -------------------------------------------------------------------
+
+// RegisterBrowserRequest
+
+// optional string machine_name = 1;
+inline bool RegisterBrowserRequest::_internal_has_machine_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RegisterBrowserRequest::has_machine_name() const {
+  return _internal_has_machine_name();
+}
+inline void RegisterBrowserRequest::clear_machine_name() {
+  machine_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& RegisterBrowserRequest::machine_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RegisterBrowserRequest.machine_name)
+  return _internal_machine_name();
+}
+inline void RegisterBrowserRequest::set_machine_name(const std::string& value) {
+  _internal_set_machine_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RegisterBrowserRequest.machine_name)
+}
+inline std::string* RegisterBrowserRequest::mutable_machine_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RegisterBrowserRequest.machine_name)
+  return _internal_mutable_machine_name();
+}
+inline const std::string& RegisterBrowserRequest::_internal_machine_name() const {
+  return machine_name_.GetNoArena();
+}
+inline void RegisterBrowserRequest::_internal_set_machine_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RegisterBrowserRequest::set_machine_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RegisterBrowserRequest.machine_name)
+}
+inline void RegisterBrowserRequest::set_machine_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RegisterBrowserRequest.machine_name)
+}
+inline void RegisterBrowserRequest::set_machine_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  machine_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RegisterBrowserRequest.machine_name)
+}
+inline std::string* RegisterBrowserRequest::_internal_mutable_machine_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return machine_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RegisterBrowserRequest::release_machine_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RegisterBrowserRequest.machine_name)
+  if (!_internal_has_machine_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return machine_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RegisterBrowserRequest::set_allocated_machine_name(std::string* machine_name) {
+  if (machine_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  machine_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), machine_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RegisterBrowserRequest.machine_name)
+}
+
+// optional string os_platform = 2;
+inline bool RegisterBrowserRequest::_internal_has_os_platform() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool RegisterBrowserRequest::has_os_platform() const {
+  return _internal_has_os_platform();
+}
+inline void RegisterBrowserRequest::clear_os_platform() {
+  os_platform_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& RegisterBrowserRequest::os_platform() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RegisterBrowserRequest.os_platform)
+  return _internal_os_platform();
+}
+inline void RegisterBrowserRequest::set_os_platform(const std::string& value) {
+  _internal_set_os_platform(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RegisterBrowserRequest.os_platform)
+}
+inline std::string* RegisterBrowserRequest::mutable_os_platform() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RegisterBrowserRequest.os_platform)
+  return _internal_mutable_os_platform();
+}
+inline const std::string& RegisterBrowserRequest::_internal_os_platform() const {
+  return os_platform_.GetNoArena();
+}
+inline void RegisterBrowserRequest::_internal_set_os_platform(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  os_platform_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RegisterBrowserRequest::set_os_platform(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  os_platform_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RegisterBrowserRequest.os_platform)
+}
+inline void RegisterBrowserRequest::set_os_platform(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  os_platform_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RegisterBrowserRequest.os_platform)
+}
+inline void RegisterBrowserRequest::set_os_platform(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  os_platform_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RegisterBrowserRequest.os_platform)
+}
+inline std::string* RegisterBrowserRequest::_internal_mutable_os_platform() {
+  _has_bits_[0] |= 0x00000002u;
+  return os_platform_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RegisterBrowserRequest::release_os_platform() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RegisterBrowserRequest.os_platform)
+  if (!_internal_has_os_platform()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return os_platform_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RegisterBrowserRequest::set_allocated_os_platform(std::string* os_platform) {
+  if (os_platform != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  os_platform_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), os_platform);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RegisterBrowserRequest.os_platform)
+}
+
+// optional string os_version = 3;
+inline bool RegisterBrowserRequest::_internal_has_os_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool RegisterBrowserRequest::has_os_version() const {
+  return _internal_has_os_version();
+}
+inline void RegisterBrowserRequest::clear_os_version() {
+  os_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& RegisterBrowserRequest::os_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RegisterBrowserRequest.os_version)
+  return _internal_os_version();
+}
+inline void RegisterBrowserRequest::set_os_version(const std::string& value) {
+  _internal_set_os_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RegisterBrowserRequest.os_version)
+}
+inline std::string* RegisterBrowserRequest::mutable_os_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RegisterBrowserRequest.os_version)
+  return _internal_mutable_os_version();
+}
+inline const std::string& RegisterBrowserRequest::_internal_os_version() const {
+  return os_version_.GetNoArena();
+}
+inline void RegisterBrowserRequest::_internal_set_os_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RegisterBrowserRequest::set_os_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  os_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RegisterBrowserRequest.os_version)
+}
+inline void RegisterBrowserRequest::set_os_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RegisterBrowserRequest.os_version)
+}
+inline void RegisterBrowserRequest::set_os_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RegisterBrowserRequest.os_version)
+}
+inline std::string* RegisterBrowserRequest::_internal_mutable_os_version() {
+  _has_bits_[0] |= 0x00000004u;
+  return os_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RegisterBrowserRequest::release_os_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RegisterBrowserRequest.os_version)
+  if (!_internal_has_os_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return os_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RegisterBrowserRequest::set_allocated_os_version(std::string* os_version) {
+  if (os_version != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  os_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), os_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RegisterBrowserRequest.os_version)
+}
+
+// optional .enterprise_management.BrowserDeviceIdentifier browser_device_identifier = 4;
+inline bool RegisterBrowserRequest::_internal_has_browser_device_identifier() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || browser_device_identifier_ != nullptr);
+  return value;
+}
+inline bool RegisterBrowserRequest::has_browser_device_identifier() const {
+  return _internal_has_browser_device_identifier();
+}
+inline void RegisterBrowserRequest::clear_browser_device_identifier() {
+  if (browser_device_identifier_ != nullptr) browser_device_identifier_->Clear();
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const ::enterprise_management::BrowserDeviceIdentifier& RegisterBrowserRequest::_internal_browser_device_identifier() const {
+  const ::enterprise_management::BrowserDeviceIdentifier* p = browser_device_identifier_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserDeviceIdentifier*>(
+      &::enterprise_management::_BrowserDeviceIdentifier_default_instance_);
+}
+inline const ::enterprise_management::BrowserDeviceIdentifier& RegisterBrowserRequest::browser_device_identifier() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RegisterBrowserRequest.browser_device_identifier)
+  return _internal_browser_device_identifier();
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* RegisterBrowserRequest::release_browser_device_identifier() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RegisterBrowserRequest.browser_device_identifier)
+  _has_bits_[0] &= ~0x00000020u;
+  ::enterprise_management::BrowserDeviceIdentifier* temp = browser_device_identifier_;
+  browser_device_identifier_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* RegisterBrowserRequest::_internal_mutable_browser_device_identifier() {
+  _has_bits_[0] |= 0x00000020u;
+  if (browser_device_identifier_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserDeviceIdentifier>(GetArenaNoVirtual());
+    browser_device_identifier_ = p;
+  }
+  return browser_device_identifier_;
+}
+inline ::enterprise_management::BrowserDeviceIdentifier* RegisterBrowserRequest::mutable_browser_device_identifier() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RegisterBrowserRequest.browser_device_identifier)
+  return _internal_mutable_browser_device_identifier();
+}
+inline void RegisterBrowserRequest::set_allocated_browser_device_identifier(::enterprise_management::BrowserDeviceIdentifier* browser_device_identifier) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_device_identifier_;
+  }
+  if (browser_device_identifier) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_device_identifier = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_device_identifier, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  browser_device_identifier_ = browser_device_identifier;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RegisterBrowserRequest.browser_device_identifier)
+}
+
+// optional string device_model = 5;
+inline bool RegisterBrowserRequest::_internal_has_device_model() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool RegisterBrowserRequest::has_device_model() const {
+  return _internal_has_device_model();
+}
+inline void RegisterBrowserRequest::clear_device_model() {
+  device_model_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& RegisterBrowserRequest::device_model() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RegisterBrowserRequest.device_model)
+  return _internal_device_model();
+}
+inline void RegisterBrowserRequest::set_device_model(const std::string& value) {
+  _internal_set_device_model(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RegisterBrowserRequest.device_model)
+}
+inline std::string* RegisterBrowserRequest::mutable_device_model() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RegisterBrowserRequest.device_model)
+  return _internal_mutable_device_model();
+}
+inline const std::string& RegisterBrowserRequest::_internal_device_model() const {
+  return device_model_.GetNoArena();
+}
+inline void RegisterBrowserRequest::_internal_set_device_model(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  device_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RegisterBrowserRequest::set_device_model(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  device_model_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RegisterBrowserRequest.device_model)
+}
+inline void RegisterBrowserRequest::set_device_model(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  device_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RegisterBrowserRequest.device_model)
+}
+inline void RegisterBrowserRequest::set_device_model(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  device_model_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RegisterBrowserRequest.device_model)
+}
+inline std::string* RegisterBrowserRequest::_internal_mutable_device_model() {
+  _has_bits_[0] |= 0x00000008u;
+  return device_model_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RegisterBrowserRequest::release_device_model() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RegisterBrowserRequest.device_model)
+  if (!_internal_has_device_model()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return device_model_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RegisterBrowserRequest::set_allocated_device_model(std::string* device_model) {
+  if (device_model != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  device_model_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_model);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RegisterBrowserRequest.device_model)
+}
+
+// optional string brand_name = 6;
+inline bool RegisterBrowserRequest::_internal_has_brand_name() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool RegisterBrowserRequest::has_brand_name() const {
+  return _internal_has_brand_name();
+}
+inline void RegisterBrowserRequest::clear_brand_name() {
+  brand_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& RegisterBrowserRequest::brand_name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RegisterBrowserRequest.brand_name)
+  return _internal_brand_name();
+}
+inline void RegisterBrowserRequest::set_brand_name(const std::string& value) {
+  _internal_set_brand_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RegisterBrowserRequest.brand_name)
+}
+inline std::string* RegisterBrowserRequest::mutable_brand_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RegisterBrowserRequest.brand_name)
+  return _internal_mutable_brand_name();
+}
+inline const std::string& RegisterBrowserRequest::_internal_brand_name() const {
+  return brand_name_.GetNoArena();
+}
+inline void RegisterBrowserRequest::_internal_set_brand_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  brand_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RegisterBrowserRequest::set_brand_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  brand_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RegisterBrowserRequest.brand_name)
+}
+inline void RegisterBrowserRequest::set_brand_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  brand_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RegisterBrowserRequest.brand_name)
+}
+inline void RegisterBrowserRequest::set_brand_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  brand_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RegisterBrowserRequest.brand_name)
+}
+inline std::string* RegisterBrowserRequest::_internal_mutable_brand_name() {
+  _has_bits_[0] |= 0x00000010u;
+  return brand_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RegisterBrowserRequest::release_brand_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RegisterBrowserRequest.brand_name)
+  if (!_internal_has_brand_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return brand_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RegisterBrowserRequest::set_allocated_brand_name(std::string* brand_name) {
+  if (brand_name != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  brand_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), brand_name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RegisterBrowserRequest.brand_name)
+}
+
+// -------------------------------------------------------------------
+
+// ActiveDirectoryEnrollPlayUserRequest
+
+// optional string auth_session_id = 1;
+inline bool ActiveDirectoryEnrollPlayUserRequest::_internal_has_auth_session_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ActiveDirectoryEnrollPlayUserRequest::has_auth_session_id() const {
+  return _internal_has_auth_session_id();
+}
+inline void ActiveDirectoryEnrollPlayUserRequest::clear_auth_session_id() {
+  auth_session_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ActiveDirectoryEnrollPlayUserRequest::auth_session_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveDirectoryEnrollPlayUserRequest.auth_session_id)
+  return _internal_auth_session_id();
+}
+inline void ActiveDirectoryEnrollPlayUserRequest::set_auth_session_id(const std::string& value) {
+  _internal_set_auth_session_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ActiveDirectoryEnrollPlayUserRequest.auth_session_id)
+}
+inline std::string* ActiveDirectoryEnrollPlayUserRequest::mutable_auth_session_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ActiveDirectoryEnrollPlayUserRequest.auth_session_id)
+  return _internal_mutable_auth_session_id();
+}
+inline const std::string& ActiveDirectoryEnrollPlayUserRequest::_internal_auth_session_id() const {
+  return auth_session_id_.GetNoArena();
+}
+inline void ActiveDirectoryEnrollPlayUserRequest::_internal_set_auth_session_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ActiveDirectoryEnrollPlayUserRequest::set_auth_session_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_session_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ActiveDirectoryEnrollPlayUserRequest.auth_session_id)
+}
+inline void ActiveDirectoryEnrollPlayUserRequest::set_auth_session_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  auth_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ActiveDirectoryEnrollPlayUserRequest.auth_session_id)
+}
+inline void ActiveDirectoryEnrollPlayUserRequest::set_auth_session_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ActiveDirectoryEnrollPlayUserRequest.auth_session_id)
+}
+inline std::string* ActiveDirectoryEnrollPlayUserRequest::_internal_mutable_auth_session_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return auth_session_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ActiveDirectoryEnrollPlayUserRequest::release_auth_session_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ActiveDirectoryEnrollPlayUserRequest.auth_session_id)
+  if (!_internal_has_auth_session_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return auth_session_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ActiveDirectoryEnrollPlayUserRequest::set_allocated_auth_session_id(std::string* auth_session_id) {
+  if (auth_session_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  auth_session_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), auth_session_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ActiveDirectoryEnrollPlayUserRequest.auth_session_id)
+}
+
+// -------------------------------------------------------------------
+
+// ActiveDirectoryEnrollPlayUserResponse
+
+// optional string enrollment_token = 1;
+inline bool ActiveDirectoryEnrollPlayUserResponse::_internal_has_enrollment_token() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ActiveDirectoryEnrollPlayUserResponse::has_enrollment_token() const {
+  return _internal_has_enrollment_token();
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::clear_enrollment_token() {
+  enrollment_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ActiveDirectoryEnrollPlayUserResponse::enrollment_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.enrollment_token)
+  return _internal_enrollment_token();
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_enrollment_token(const std::string& value) {
+  _internal_set_enrollment_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.enrollment_token)
+}
+inline std::string* ActiveDirectoryEnrollPlayUserResponse::mutable_enrollment_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.enrollment_token)
+  return _internal_mutable_enrollment_token();
+}
+inline const std::string& ActiveDirectoryEnrollPlayUserResponse::_internal_enrollment_token() const {
+  return enrollment_token_.GetNoArena();
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::_internal_set_enrollment_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  enrollment_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_enrollment_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  enrollment_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.enrollment_token)
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_enrollment_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  enrollment_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.enrollment_token)
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_enrollment_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  enrollment_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.enrollment_token)
+}
+inline std::string* ActiveDirectoryEnrollPlayUserResponse::_internal_mutable_enrollment_token() {
+  _has_bits_[0] |= 0x00000001u;
+  return enrollment_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ActiveDirectoryEnrollPlayUserResponse::release_enrollment_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.enrollment_token)
+  if (!_internal_has_enrollment_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return enrollment_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_allocated_enrollment_token(std::string* enrollment_token) {
+  if (enrollment_token != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  enrollment_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), enrollment_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.enrollment_token)
+}
+
+// optional string user_id = 2;
+inline bool ActiveDirectoryEnrollPlayUserResponse::_internal_has_user_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ActiveDirectoryEnrollPlayUserResponse::has_user_id() const {
+  return _internal_has_user_id();
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::clear_user_id() {
+  user_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ActiveDirectoryEnrollPlayUserResponse::user_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.user_id)
+  return _internal_user_id();
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_user_id(const std::string& value) {
+  _internal_set_user_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.user_id)
+}
+inline std::string* ActiveDirectoryEnrollPlayUserResponse::mutable_user_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.user_id)
+  return _internal_mutable_user_id();
+}
+inline const std::string& ActiveDirectoryEnrollPlayUserResponse::_internal_user_id() const {
+  return user_id_.GetNoArena();
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::_internal_set_user_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  user_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_user_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  user_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.user_id)
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_user_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  user_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.user_id)
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_user_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  user_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.user_id)
+}
+inline std::string* ActiveDirectoryEnrollPlayUserResponse::_internal_mutable_user_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return user_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ActiveDirectoryEnrollPlayUserResponse::release_user_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.user_id)
+  if (!_internal_has_user_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return user_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_allocated_user_id(std::string* user_id) {
+  if (user_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  user_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), user_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.user_id)
+}
+
+// optional .enterprise_management.SamlParametersProto saml_parameters = 3;
+inline bool ActiveDirectoryEnrollPlayUserResponse::_internal_has_saml_parameters() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || saml_parameters_ != nullptr);
+  return value;
+}
+inline bool ActiveDirectoryEnrollPlayUserResponse::has_saml_parameters() const {
+  return _internal_has_saml_parameters();
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::clear_saml_parameters() {
+  if (saml_parameters_ != nullptr) saml_parameters_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::SamlParametersProto& ActiveDirectoryEnrollPlayUserResponse::_internal_saml_parameters() const {
+  const ::enterprise_management::SamlParametersProto* p = saml_parameters_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SamlParametersProto*>(
+      &::enterprise_management::_SamlParametersProto_default_instance_);
+}
+inline const ::enterprise_management::SamlParametersProto& ActiveDirectoryEnrollPlayUserResponse::saml_parameters() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.saml_parameters)
+  return _internal_saml_parameters();
+}
+inline ::enterprise_management::SamlParametersProto* ActiveDirectoryEnrollPlayUserResponse::release_saml_parameters() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.saml_parameters)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::SamlParametersProto* temp = saml_parameters_;
+  saml_parameters_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SamlParametersProto* ActiveDirectoryEnrollPlayUserResponse::_internal_mutable_saml_parameters() {
+  _has_bits_[0] |= 0x00000004u;
+  if (saml_parameters_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SamlParametersProto>(GetArenaNoVirtual());
+    saml_parameters_ = p;
+  }
+  return saml_parameters_;
+}
+inline ::enterprise_management::SamlParametersProto* ActiveDirectoryEnrollPlayUserResponse::mutable_saml_parameters() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.saml_parameters)
+  return _internal_mutable_saml_parameters();
+}
+inline void ActiveDirectoryEnrollPlayUserResponse::set_allocated_saml_parameters(::enterprise_management::SamlParametersProto* saml_parameters) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete saml_parameters_;
+  }
+  if (saml_parameters) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      saml_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, saml_parameters, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  saml_parameters_ = saml_parameters;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ActiveDirectoryEnrollPlayUserResponse.saml_parameters)
+}
+
+// -------------------------------------------------------------------
+
+// SamlParametersProto
+
+// optional string auth_redirect_url = 1;
+inline bool SamlParametersProto::_internal_has_auth_redirect_url() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SamlParametersProto::has_auth_redirect_url() const {
+  return _internal_has_auth_redirect_url();
+}
+inline void SamlParametersProto::clear_auth_redirect_url() {
+  auth_redirect_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SamlParametersProto::auth_redirect_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SamlParametersProto.auth_redirect_url)
+  return _internal_auth_redirect_url();
+}
+inline void SamlParametersProto::set_auth_redirect_url(const std::string& value) {
+  _internal_set_auth_redirect_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SamlParametersProto.auth_redirect_url)
+}
+inline std::string* SamlParametersProto::mutable_auth_redirect_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SamlParametersProto.auth_redirect_url)
+  return _internal_mutable_auth_redirect_url();
+}
+inline const std::string& SamlParametersProto::_internal_auth_redirect_url() const {
+  return auth_redirect_url_.GetNoArena();
+}
+inline void SamlParametersProto::_internal_set_auth_redirect_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_redirect_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SamlParametersProto::set_auth_redirect_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_redirect_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SamlParametersProto.auth_redirect_url)
+}
+inline void SamlParametersProto::set_auth_redirect_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  auth_redirect_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SamlParametersProto.auth_redirect_url)
+}
+inline void SamlParametersProto::set_auth_redirect_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_redirect_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SamlParametersProto.auth_redirect_url)
+}
+inline std::string* SamlParametersProto::_internal_mutable_auth_redirect_url() {
+  _has_bits_[0] |= 0x00000001u;
+  return auth_redirect_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SamlParametersProto::release_auth_redirect_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SamlParametersProto.auth_redirect_url)
+  if (!_internal_has_auth_redirect_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return auth_redirect_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SamlParametersProto::set_allocated_auth_redirect_url(std::string* auth_redirect_url) {
+  if (auth_redirect_url != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  auth_redirect_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), auth_redirect_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SamlParametersProto.auth_redirect_url)
+}
+
+// optional string auth_session_id = 2;
+inline bool SamlParametersProto::_internal_has_auth_session_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SamlParametersProto::has_auth_session_id() const {
+  return _internal_has_auth_session_id();
+}
+inline void SamlParametersProto::clear_auth_session_id() {
+  auth_session_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SamlParametersProto::auth_session_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SamlParametersProto.auth_session_id)
+  return _internal_auth_session_id();
+}
+inline void SamlParametersProto::set_auth_session_id(const std::string& value) {
+  _internal_set_auth_session_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.SamlParametersProto.auth_session_id)
+}
+inline std::string* SamlParametersProto::mutable_auth_session_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SamlParametersProto.auth_session_id)
+  return _internal_mutable_auth_session_id();
+}
+inline const std::string& SamlParametersProto::_internal_auth_session_id() const {
+  return auth_session_id_.GetNoArena();
+}
+inline void SamlParametersProto::_internal_set_auth_session_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  auth_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SamlParametersProto::set_auth_session_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  auth_session_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.SamlParametersProto.auth_session_id)
+}
+inline void SamlParametersProto::set_auth_session_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  auth_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.SamlParametersProto.auth_session_id)
+}
+inline void SamlParametersProto::set_auth_session_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  auth_session_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.SamlParametersProto.auth_session_id)
+}
+inline std::string* SamlParametersProto::_internal_mutable_auth_session_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return auth_session_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SamlParametersProto::release_auth_session_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.SamlParametersProto.auth_session_id)
+  if (!_internal_has_auth_session_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return auth_session_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SamlParametersProto::set_allocated_auth_session_id(std::string* auth_session_id) {
+  if (auth_session_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  auth_session_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), auth_session_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.SamlParametersProto.auth_session_id)
+}
+
+// -------------------------------------------------------------------
+
+// PublicSamlUserRequest
+
+// optional string account_id = 1;
+inline bool PublicSamlUserRequest::_internal_has_account_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PublicSamlUserRequest::has_account_id() const {
+  return _internal_has_account_id();
+}
+inline void PublicSamlUserRequest::clear_account_id() {
+  account_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PublicSamlUserRequest::account_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PublicSamlUserRequest.account_id)
+  return _internal_account_id();
+}
+inline void PublicSamlUserRequest::set_account_id(const std::string& value) {
+  _internal_set_account_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PublicSamlUserRequest.account_id)
+}
+inline std::string* PublicSamlUserRequest::mutable_account_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PublicSamlUserRequest.account_id)
+  return _internal_mutable_account_id();
+}
+inline const std::string& PublicSamlUserRequest::_internal_account_id() const {
+  return account_id_.GetNoArena();
+}
+inline void PublicSamlUserRequest::_internal_set_account_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PublicSamlUserRequest::set_account_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  account_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PublicSamlUserRequest.account_id)
+}
+inline void PublicSamlUserRequest::set_account_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PublicSamlUserRequest.account_id)
+}
+inline void PublicSamlUserRequest::set_account_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  account_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PublicSamlUserRequest.account_id)
+}
+inline std::string* PublicSamlUserRequest::_internal_mutable_account_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return account_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PublicSamlUserRequest::release_account_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PublicSamlUserRequest.account_id)
+  if (!_internal_has_account_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return account_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PublicSamlUserRequest::set_allocated_account_id(std::string* account_id) {
+  if (account_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  account_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), account_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PublicSamlUserRequest.account_id)
+}
+
+// -------------------------------------------------------------------
+
+// PublicSamlUserResponse
+
+// optional .enterprise_management.SamlParametersProto saml_parameters = 1;
+inline bool PublicSamlUserResponse::_internal_has_saml_parameters() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || saml_parameters_ != nullptr);
+  return value;
+}
+inline bool PublicSamlUserResponse::has_saml_parameters() const {
+  return _internal_has_saml_parameters();
+}
+inline void PublicSamlUserResponse::clear_saml_parameters() {
+  if (saml_parameters_ != nullptr) saml_parameters_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::SamlParametersProto& PublicSamlUserResponse::_internal_saml_parameters() const {
+  const ::enterprise_management::SamlParametersProto* p = saml_parameters_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SamlParametersProto*>(
+      &::enterprise_management::_SamlParametersProto_default_instance_);
+}
+inline const ::enterprise_management::SamlParametersProto& PublicSamlUserResponse::saml_parameters() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PublicSamlUserResponse.saml_parameters)
+  return _internal_saml_parameters();
+}
+inline ::enterprise_management::SamlParametersProto* PublicSamlUserResponse::release_saml_parameters() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PublicSamlUserResponse.saml_parameters)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::SamlParametersProto* temp = saml_parameters_;
+  saml_parameters_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SamlParametersProto* PublicSamlUserResponse::_internal_mutable_saml_parameters() {
+  _has_bits_[0] |= 0x00000001u;
+  if (saml_parameters_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SamlParametersProto>(GetArenaNoVirtual());
+    saml_parameters_ = p;
+  }
+  return saml_parameters_;
+}
+inline ::enterprise_management::SamlParametersProto* PublicSamlUserResponse::mutable_saml_parameters() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PublicSamlUserResponse.saml_parameters)
+  return _internal_mutable_saml_parameters();
+}
+inline void PublicSamlUserResponse::set_allocated_saml_parameters(::enterprise_management::SamlParametersProto* saml_parameters) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete saml_parameters_;
+  }
+  if (saml_parameters) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      saml_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, saml_parameters, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  saml_parameters_ = saml_parameters;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PublicSamlUserResponse.saml_parameters)
+}
+
+// -------------------------------------------------------------------
+
+// ActiveDirectoryPlayActivityRequest
+
+// optional string user_id = 1;
+inline bool ActiveDirectoryPlayActivityRequest::_internal_has_user_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ActiveDirectoryPlayActivityRequest::has_user_id() const {
+  return _internal_has_user_id();
+}
+inline void ActiveDirectoryPlayActivityRequest::clear_user_id() {
+  user_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ActiveDirectoryPlayActivityRequest::user_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveDirectoryPlayActivityRequest.user_id)
+  return _internal_user_id();
+}
+inline void ActiveDirectoryPlayActivityRequest::set_user_id(const std::string& value) {
+  _internal_set_user_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ActiveDirectoryPlayActivityRequest.user_id)
+}
+inline std::string* ActiveDirectoryPlayActivityRequest::mutable_user_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ActiveDirectoryPlayActivityRequest.user_id)
+  return _internal_mutable_user_id();
+}
+inline const std::string& ActiveDirectoryPlayActivityRequest::_internal_user_id() const {
+  return user_id_.GetNoArena();
+}
+inline void ActiveDirectoryPlayActivityRequest::_internal_set_user_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  user_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ActiveDirectoryPlayActivityRequest::set_user_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  user_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ActiveDirectoryPlayActivityRequest.user_id)
+}
+inline void ActiveDirectoryPlayActivityRequest::set_user_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  user_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ActiveDirectoryPlayActivityRequest.user_id)
+}
+inline void ActiveDirectoryPlayActivityRequest::set_user_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  user_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ActiveDirectoryPlayActivityRequest.user_id)
+}
+inline std::string* ActiveDirectoryPlayActivityRequest::_internal_mutable_user_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return user_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ActiveDirectoryPlayActivityRequest::release_user_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ActiveDirectoryPlayActivityRequest.user_id)
+  if (!_internal_has_user_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return user_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ActiveDirectoryPlayActivityRequest::set_allocated_user_id(std::string* user_id) {
+  if (user_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  user_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), user_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ActiveDirectoryPlayActivityRequest.user_id)
+}
+
+// -------------------------------------------------------------------
+
+// ActiveDirectoryPlayActivityResponse
+
+// -------------------------------------------------------------------
+
+// CheckDeviceLicenseRequest
+
+// -------------------------------------------------------------------
+
+// LicenseAvailability
+
+// optional .enterprise_management.LicenseType license_type_deprecated = 1 [deprecated = true];
+inline bool LicenseAvailability::_internal_has_license_type_deprecated() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || license_type_deprecated_ != nullptr);
+  return value;
+}
+inline bool LicenseAvailability::has_license_type_deprecated() const {
+  return _internal_has_license_type_deprecated();
+}
+inline void LicenseAvailability::clear_license_type_deprecated() {
+  if (license_type_deprecated_ != nullptr) license_type_deprecated_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::LicenseType& LicenseAvailability::_internal_license_type_deprecated() const {
+  const ::enterprise_management::LicenseType* p = license_type_deprecated_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::LicenseType*>(
+      &::enterprise_management::_LicenseType_default_instance_);
+}
+inline const ::enterprise_management::LicenseType& LicenseAvailability::license_type_deprecated() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LicenseAvailability.license_type_deprecated)
+  return _internal_license_type_deprecated();
+}
+inline ::enterprise_management::LicenseType* LicenseAvailability::release_license_type_deprecated() {
+  // @@protoc_insertion_point(field_release:enterprise_management.LicenseAvailability.license_type_deprecated)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::LicenseType* temp = license_type_deprecated_;
+  license_type_deprecated_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::LicenseType* LicenseAvailability::_internal_mutable_license_type_deprecated() {
+  _has_bits_[0] |= 0x00000001u;
+  if (license_type_deprecated_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::LicenseType>(GetArenaNoVirtual());
+    license_type_deprecated_ = p;
+  }
+  return license_type_deprecated_;
+}
+inline ::enterprise_management::LicenseType* LicenseAvailability::mutable_license_type_deprecated() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.LicenseAvailability.license_type_deprecated)
+  return _internal_mutable_license_type_deprecated();
+}
+inline void LicenseAvailability::set_allocated_license_type_deprecated(::enterprise_management::LicenseType* license_type_deprecated) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete license_type_deprecated_;
+  }
+  if (license_type_deprecated) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      license_type_deprecated = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, license_type_deprecated, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  license_type_deprecated_ = license_type_deprecated;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.LicenseAvailability.license_type_deprecated)
+}
+
+// optional int32 available_licenses_deprecated = 2 [deprecated = true];
+inline bool LicenseAvailability::_internal_has_available_licenses_deprecated() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool LicenseAvailability::has_available_licenses_deprecated() const {
+  return _internal_has_available_licenses_deprecated();
+}
+inline void LicenseAvailability::clear_available_licenses_deprecated() {
+  available_licenses_deprecated_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 LicenseAvailability::_internal_available_licenses_deprecated() const {
+  return available_licenses_deprecated_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 LicenseAvailability::available_licenses_deprecated() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.LicenseAvailability.available_licenses_deprecated)
+  return _internal_available_licenses_deprecated();
+}
+inline void LicenseAvailability::_internal_set_available_licenses_deprecated(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  available_licenses_deprecated_ = value;
+}
+inline void LicenseAvailability::set_available_licenses_deprecated(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_available_licenses_deprecated(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.LicenseAvailability.available_licenses_deprecated)
+}
+
+// -------------------------------------------------------------------
+
+// CheckDeviceLicenseResponse
+
+// optional .enterprise_management.CheckDeviceLicenseResponse.LicenseSelectionMode license_selection_mode_deprecated = 1 [deprecated = true];
+inline bool CheckDeviceLicenseResponse::_internal_has_license_selection_mode_deprecated() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool CheckDeviceLicenseResponse::has_license_selection_mode_deprecated() const {
+  return _internal_has_license_selection_mode_deprecated();
+}
+inline void CheckDeviceLicenseResponse::clear_license_selection_mode_deprecated() {
+  license_selection_mode_deprecated_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse::_internal_license_selection_mode_deprecated() const {
+  return static_cast< ::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode >(license_selection_mode_deprecated_);
+}
+inline ::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode CheckDeviceLicenseResponse::license_selection_mode_deprecated() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CheckDeviceLicenseResponse.license_selection_mode_deprecated)
+  return _internal_license_selection_mode_deprecated();
+}
+inline void CheckDeviceLicenseResponse::_internal_set_license_selection_mode_deprecated(::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode value) {
+  assert(::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  license_selection_mode_deprecated_ = value;
+}
+inline void CheckDeviceLicenseResponse::set_license_selection_mode_deprecated(::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode value) {
+  _internal_set_license_selection_mode_deprecated(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.CheckDeviceLicenseResponse.license_selection_mode_deprecated)
+}
+
+// repeated .enterprise_management.LicenseAvailability license_availabilities_deprecated = 2 [deprecated = true];
+inline int CheckDeviceLicenseResponse::_internal_license_availabilities_deprecated_size() const {
+  return license_availabilities_deprecated_.size();
+}
+inline int CheckDeviceLicenseResponse::license_availabilities_deprecated_size() const {
+  return _internal_license_availabilities_deprecated_size();
+}
+inline void CheckDeviceLicenseResponse::clear_license_availabilities_deprecated() {
+  license_availabilities_deprecated_.Clear();
+}
+inline ::enterprise_management::LicenseAvailability* CheckDeviceLicenseResponse::mutable_license_availabilities_deprecated(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.CheckDeviceLicenseResponse.license_availabilities_deprecated)
+  return license_availabilities_deprecated_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LicenseAvailability >*
+CheckDeviceLicenseResponse::mutable_license_availabilities_deprecated() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.CheckDeviceLicenseResponse.license_availabilities_deprecated)
+  return &license_availabilities_deprecated_;
+}
+inline const ::enterprise_management::LicenseAvailability& CheckDeviceLicenseResponse::_internal_license_availabilities_deprecated(int index) const {
+  return license_availabilities_deprecated_.Get(index);
+}
+inline const ::enterprise_management::LicenseAvailability& CheckDeviceLicenseResponse::license_availabilities_deprecated(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.CheckDeviceLicenseResponse.license_availabilities_deprecated)
+  return _internal_license_availabilities_deprecated(index);
+}
+inline ::enterprise_management::LicenseAvailability* CheckDeviceLicenseResponse::_internal_add_license_availabilities_deprecated() {
+  return license_availabilities_deprecated_.Add();
+}
+inline ::enterprise_management::LicenseAvailability* CheckDeviceLicenseResponse::add_license_availabilities_deprecated() {
+  // @@protoc_insertion_point(field_add:enterprise_management.CheckDeviceLicenseResponse.license_availabilities_deprecated)
+  return _internal_add_license_availabilities_deprecated();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::LicenseAvailability >&
+CheckDeviceLicenseResponse::license_availabilities_deprecated() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.CheckDeviceLicenseResponse.license_availabilities_deprecated)
+  return license_availabilities_deprecated_;
+}
+
+// -------------------------------------------------------------------
+
+// ActiveDirectoryUserSigninRequest
+
+// -------------------------------------------------------------------
+
+// ActiveDirectoryUserSigninResponse
+
+// optional string auth_redirect_url = 1;
+inline bool ActiveDirectoryUserSigninResponse::_internal_has_auth_redirect_url() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ActiveDirectoryUserSigninResponse::has_auth_redirect_url() const {
+  return _internal_has_auth_redirect_url();
+}
+inline void ActiveDirectoryUserSigninResponse::clear_auth_redirect_url() {
+  auth_redirect_url_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ActiveDirectoryUserSigninResponse::auth_redirect_url() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ActiveDirectoryUserSigninResponse.auth_redirect_url)
+  return _internal_auth_redirect_url();
+}
+inline void ActiveDirectoryUserSigninResponse::set_auth_redirect_url(const std::string& value) {
+  _internal_set_auth_redirect_url(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ActiveDirectoryUserSigninResponse.auth_redirect_url)
+}
+inline std::string* ActiveDirectoryUserSigninResponse::mutable_auth_redirect_url() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ActiveDirectoryUserSigninResponse.auth_redirect_url)
+  return _internal_mutable_auth_redirect_url();
+}
+inline const std::string& ActiveDirectoryUserSigninResponse::_internal_auth_redirect_url() const {
+  return auth_redirect_url_.GetNoArena();
+}
+inline void ActiveDirectoryUserSigninResponse::_internal_set_auth_redirect_url(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_redirect_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ActiveDirectoryUserSigninResponse::set_auth_redirect_url(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_redirect_url_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ActiveDirectoryUserSigninResponse.auth_redirect_url)
+}
+inline void ActiveDirectoryUserSigninResponse::set_auth_redirect_url(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  auth_redirect_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ActiveDirectoryUserSigninResponse.auth_redirect_url)
+}
+inline void ActiveDirectoryUserSigninResponse::set_auth_redirect_url(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  auth_redirect_url_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ActiveDirectoryUserSigninResponse.auth_redirect_url)
+}
+inline std::string* ActiveDirectoryUserSigninResponse::_internal_mutable_auth_redirect_url() {
+  _has_bits_[0] |= 0x00000001u;
+  return auth_redirect_url_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ActiveDirectoryUserSigninResponse::release_auth_redirect_url() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ActiveDirectoryUserSigninResponse.auth_redirect_url)
+  if (!_internal_has_auth_redirect_url()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return auth_redirect_url_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ActiveDirectoryUserSigninResponse::set_allocated_auth_redirect_url(std::string* auth_redirect_url) {
+  if (auth_redirect_url != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  auth_redirect_url_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), auth_redirect_url);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ActiveDirectoryUserSigninResponse.auth_redirect_url)
+}
+
+// -------------------------------------------------------------------
+
+// TpmVersionInfo
+
+// optional uint32 family = 1;
+inline bool TpmVersionInfo::_internal_has_family() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool TpmVersionInfo::has_family() const {
+  return _internal_has_family();
+}
+inline void TpmVersionInfo::clear_family() {
+  family_ = 0u;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 TpmVersionInfo::_internal_family() const {
+  return family_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 TpmVersionInfo::family() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmVersionInfo.family)
+  return _internal_family();
+}
+inline void TpmVersionInfo::_internal_set_family(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  family_ = value;
+}
+inline void TpmVersionInfo::set_family(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_family(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmVersionInfo.family)
+}
+
+// optional uint64 spec_level = 2;
+inline bool TpmVersionInfo::_internal_has_spec_level() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool TpmVersionInfo::has_spec_level() const {
+  return _internal_has_spec_level();
+}
+inline void TpmVersionInfo::clear_spec_level() {
+  spec_level_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 TpmVersionInfo::_internal_spec_level() const {
+  return spec_level_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 TpmVersionInfo::spec_level() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmVersionInfo.spec_level)
+  return _internal_spec_level();
+}
+inline void TpmVersionInfo::_internal_set_spec_level(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  spec_level_ = value;
+}
+inline void TpmVersionInfo::set_spec_level(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_spec_level(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmVersionInfo.spec_level)
+}
+
+// optional uint32 manufacturer = 3;
+inline bool TpmVersionInfo::_internal_has_manufacturer() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool TpmVersionInfo::has_manufacturer() const {
+  return _internal_has_manufacturer();
+}
+inline void TpmVersionInfo::clear_manufacturer() {
+  manufacturer_ = 0u;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 TpmVersionInfo::_internal_manufacturer() const {
+  return manufacturer_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 TpmVersionInfo::manufacturer() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmVersionInfo.manufacturer)
+  return _internal_manufacturer();
+}
+inline void TpmVersionInfo::_internal_set_manufacturer(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  manufacturer_ = value;
+}
+inline void TpmVersionInfo::set_manufacturer(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_manufacturer(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmVersionInfo.manufacturer)
+}
+
+// optional uint32 tpm_model = 4;
+inline bool TpmVersionInfo::_internal_has_tpm_model() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool TpmVersionInfo::has_tpm_model() const {
+  return _internal_has_tpm_model();
+}
+inline void TpmVersionInfo::clear_tpm_model() {
+  tpm_model_ = 0u;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 TpmVersionInfo::_internal_tpm_model() const {
+  return tpm_model_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 TpmVersionInfo::tpm_model() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmVersionInfo.tpm_model)
+  return _internal_tpm_model();
+}
+inline void TpmVersionInfo::_internal_set_tpm_model(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000040u;
+  tpm_model_ = value;
+}
+inline void TpmVersionInfo::set_tpm_model(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_tpm_model(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmVersionInfo.tpm_model)
+}
+
+// optional uint64 firmware_version = 5;
+inline bool TpmVersionInfo::_internal_has_firmware_version() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool TpmVersionInfo::has_firmware_version() const {
+  return _internal_has_firmware_version();
+}
+inline void TpmVersionInfo::clear_firmware_version() {
+  firmware_version_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 TpmVersionInfo::_internal_firmware_version() const {
+  return firmware_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 TpmVersionInfo::firmware_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmVersionInfo.firmware_version)
+  return _internal_firmware_version();
+}
+inline void TpmVersionInfo::_internal_set_firmware_version(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000020u;
+  firmware_version_ = value;
+}
+inline void TpmVersionInfo::set_firmware_version(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_firmware_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmVersionInfo.firmware_version)
+}
+
+// optional string vendor_specific = 6;
+inline bool TpmVersionInfo::_internal_has_vendor_specific() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool TpmVersionInfo::has_vendor_specific() const {
+  return _internal_has_vendor_specific();
+}
+inline void TpmVersionInfo::clear_vendor_specific() {
+  vendor_specific_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& TpmVersionInfo::vendor_specific() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmVersionInfo.vendor_specific)
+  return _internal_vendor_specific();
+}
+inline void TpmVersionInfo::set_vendor_specific(const std::string& value) {
+  _internal_set_vendor_specific(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmVersionInfo.vendor_specific)
+}
+inline std::string* TpmVersionInfo::mutable_vendor_specific() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.TpmVersionInfo.vendor_specific)
+  return _internal_mutable_vendor_specific();
+}
+inline const std::string& TpmVersionInfo::_internal_vendor_specific() const {
+  return vendor_specific_.GetNoArena();
+}
+inline void TpmVersionInfo::_internal_set_vendor_specific(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_specific_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void TpmVersionInfo::set_vendor_specific(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_specific_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.TpmVersionInfo.vendor_specific)
+}
+inline void TpmVersionInfo::set_vendor_specific(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  vendor_specific_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.TpmVersionInfo.vendor_specific)
+}
+inline void TpmVersionInfo::set_vendor_specific(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_specific_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.TpmVersionInfo.vendor_specific)
+}
+inline std::string* TpmVersionInfo::_internal_mutable_vendor_specific() {
+  _has_bits_[0] |= 0x00000001u;
+  return vendor_specific_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* TpmVersionInfo::release_vendor_specific() {
+  // @@protoc_insertion_point(field_release:enterprise_management.TpmVersionInfo.vendor_specific)
+  if (!_internal_has_vendor_specific()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return vendor_specific_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void TpmVersionInfo::set_allocated_vendor_specific(std::string* vendor_specific) {
+  if (vendor_specific != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  vendor_specific_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), vendor_specific);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.TpmVersionInfo.vendor_specific)
+}
+
+// optional .enterprise_management.TpmVersionInfo.GscVersion gsc_version = 7;
+inline bool TpmVersionInfo::_internal_has_gsc_version() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool TpmVersionInfo::has_gsc_version() const {
+  return _internal_has_gsc_version();
+}
+inline void TpmVersionInfo::clear_gsc_version() {
+  gsc_version_ = 0;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::enterprise_management::TpmVersionInfo_GscVersion TpmVersionInfo::_internal_gsc_version() const {
+  return static_cast< ::enterprise_management::TpmVersionInfo_GscVersion >(gsc_version_);
+}
+inline ::enterprise_management::TpmVersionInfo_GscVersion TpmVersionInfo::gsc_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmVersionInfo.gsc_version)
+  return _internal_gsc_version();
+}
+inline void TpmVersionInfo::_internal_set_gsc_version(::enterprise_management::TpmVersionInfo_GscVersion value) {
+  assert(::enterprise_management::TpmVersionInfo_GscVersion_IsValid(value));
+  _has_bits_[0] |= 0x00000080u;
+  gsc_version_ = value;
+}
+inline void TpmVersionInfo::set_gsc_version(::enterprise_management::TpmVersionInfo_GscVersion value) {
+  _internal_set_gsc_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmVersionInfo.gsc_version)
+}
+
+// optional string did_vid = 8;
+inline bool TpmVersionInfo::_internal_has_did_vid() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool TpmVersionInfo::has_did_vid() const {
+  return _internal_has_did_vid();
+}
+inline void TpmVersionInfo::clear_did_vid() {
+  did_vid_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& TpmVersionInfo::did_vid() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmVersionInfo.did_vid)
+  return _internal_did_vid();
+}
+inline void TpmVersionInfo::set_did_vid(const std::string& value) {
+  _internal_set_did_vid(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmVersionInfo.did_vid)
+}
+inline std::string* TpmVersionInfo::mutable_did_vid() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.TpmVersionInfo.did_vid)
+  return _internal_mutable_did_vid();
+}
+inline const std::string& TpmVersionInfo::_internal_did_vid() const {
+  return did_vid_.GetNoArena();
+}
+inline void TpmVersionInfo::_internal_set_did_vid(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  did_vid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void TpmVersionInfo::set_did_vid(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  did_vid_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.TpmVersionInfo.did_vid)
+}
+inline void TpmVersionInfo::set_did_vid(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  did_vid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.TpmVersionInfo.did_vid)
+}
+inline void TpmVersionInfo::set_did_vid(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  did_vid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.TpmVersionInfo.did_vid)
+}
+inline std::string* TpmVersionInfo::_internal_mutable_did_vid() {
+  _has_bits_[0] |= 0x00000002u;
+  return did_vid_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* TpmVersionInfo::release_did_vid() {
+  // @@protoc_insertion_point(field_release:enterprise_management.TpmVersionInfo.did_vid)
+  if (!_internal_has_did_vid()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return did_vid_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void TpmVersionInfo::set_allocated_did_vid(std::string* did_vid) {
+  if (did_vid != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  did_vid_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), did_vid);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.TpmVersionInfo.did_vid)
+}
+
+// -------------------------------------------------------------------
+
+// TpmStatusInfo
+
+// optional bool enabled = 1;
+inline bool TpmStatusInfo::_internal_has_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_enabled() const {
+  return _internal_has_enabled();
+}
+inline void TpmStatusInfo::clear_enabled() {
+  enabled_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool TpmStatusInfo::_internal_enabled() const {
+  return enabled_;
+}
+inline bool TpmStatusInfo::enabled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.enabled)
+  return _internal_enabled();
+}
+inline void TpmStatusInfo::_internal_set_enabled(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  enabled_ = value;
+}
+inline void TpmStatusInfo::set_enabled(bool value) {
+  _internal_set_enabled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.enabled)
+}
+
+// optional bool owned = 2;
+inline bool TpmStatusInfo::_internal_has_owned() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_owned() const {
+  return _internal_has_owned();
+}
+inline void TpmStatusInfo::clear_owned() {
+  owned_ = false;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool TpmStatusInfo::_internal_owned() const {
+  return owned_;
+}
+inline bool TpmStatusInfo::owned() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.owned)
+  return _internal_owned();
+}
+inline void TpmStatusInfo::_internal_set_owned(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  owned_ = value;
+}
+inline void TpmStatusInfo::set_owned(bool value) {
+  _internal_set_owned(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.owned)
+}
+
+// optional bool tpm_initialized = 3;
+inline bool TpmStatusInfo::_internal_has_tpm_initialized() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_tpm_initialized() const {
+  return _internal_has_tpm_initialized();
+}
+inline void TpmStatusInfo::clear_tpm_initialized() {
+  tpm_initialized_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool TpmStatusInfo::_internal_tpm_initialized() const {
+  return tpm_initialized_;
+}
+inline bool TpmStatusInfo::tpm_initialized() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.tpm_initialized)
+  return _internal_tpm_initialized();
+}
+inline void TpmStatusInfo::_internal_set_tpm_initialized(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  tpm_initialized_ = value;
+}
+inline void TpmStatusInfo::set_tpm_initialized(bool value) {
+  _internal_set_tpm_initialized(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.tpm_initialized)
+}
+
+// optional bool attestation_prepared = 4;
+inline bool TpmStatusInfo::_internal_has_attestation_prepared() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_attestation_prepared() const {
+  return _internal_has_attestation_prepared();
+}
+inline void TpmStatusInfo::clear_attestation_prepared() {
+  attestation_prepared_ = false;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline bool TpmStatusInfo::_internal_attestation_prepared() const {
+  return attestation_prepared_;
+}
+inline bool TpmStatusInfo::attestation_prepared() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.attestation_prepared)
+  return _internal_attestation_prepared();
+}
+inline void TpmStatusInfo::_internal_set_attestation_prepared(bool value) {
+  _has_bits_[0] |= 0x00000010u;
+  attestation_prepared_ = value;
+}
+inline void TpmStatusInfo::set_attestation_prepared(bool value) {
+  _internal_set_attestation_prepared(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.attestation_prepared)
+}
+
+// optional bool attestation_enrolled = 5;
+inline bool TpmStatusInfo::_internal_has_attestation_enrolled() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_attestation_enrolled() const {
+  return _internal_has_attestation_enrolled();
+}
+inline void TpmStatusInfo::clear_attestation_enrolled() {
+  attestation_enrolled_ = false;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline bool TpmStatusInfo::_internal_attestation_enrolled() const {
+  return attestation_enrolled_;
+}
+inline bool TpmStatusInfo::attestation_enrolled() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.attestation_enrolled)
+  return _internal_attestation_enrolled();
+}
+inline void TpmStatusInfo::_internal_set_attestation_enrolled(bool value) {
+  _has_bits_[0] |= 0x00000080u;
+  attestation_enrolled_ = value;
+}
+inline void TpmStatusInfo::set_attestation_enrolled(bool value) {
+  _internal_set_attestation_enrolled(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.attestation_enrolled)
+}
+
+// optional int32 dictionary_attack_counter = 6;
+inline bool TpmStatusInfo::_internal_has_dictionary_attack_counter() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_dictionary_attack_counter() const {
+  return _internal_has_dictionary_attack_counter();
+}
+inline void TpmStatusInfo::clear_dictionary_attack_counter() {
+  dictionary_attack_counter_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 TpmStatusInfo::_internal_dictionary_attack_counter() const {
+  return dictionary_attack_counter_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 TpmStatusInfo::dictionary_attack_counter() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.dictionary_attack_counter)
+  return _internal_dictionary_attack_counter();
+}
+inline void TpmStatusInfo::_internal_set_dictionary_attack_counter(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  dictionary_attack_counter_ = value;
+}
+inline void TpmStatusInfo::set_dictionary_attack_counter(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_dictionary_attack_counter(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.dictionary_attack_counter)
+}
+
+// optional int32 dictionary_attack_threshold = 7;
+inline bool TpmStatusInfo::_internal_has_dictionary_attack_threshold() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_dictionary_attack_threshold() const {
+  return _internal_has_dictionary_attack_threshold();
+}
+inline void TpmStatusInfo::clear_dictionary_attack_threshold() {
+  dictionary_attack_threshold_ = 0;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 TpmStatusInfo::_internal_dictionary_attack_threshold() const {
+  return dictionary_attack_threshold_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 TpmStatusInfo::dictionary_attack_threshold() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.dictionary_attack_threshold)
+  return _internal_dictionary_attack_threshold();
+}
+inline void TpmStatusInfo::_internal_set_dictionary_attack_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000040u;
+  dictionary_attack_threshold_ = value;
+}
+inline void TpmStatusInfo::set_dictionary_attack_threshold(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_dictionary_attack_threshold(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.dictionary_attack_threshold)
+}
+
+// optional bool dictionary_attack_lockout_in_effect = 8;
+inline bool TpmStatusInfo::_internal_has_dictionary_attack_lockout_in_effect() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_dictionary_attack_lockout_in_effect() const {
+  return _internal_has_dictionary_attack_lockout_in_effect();
+}
+inline void TpmStatusInfo::clear_dictionary_attack_lockout_in_effect() {
+  dictionary_attack_lockout_in_effect_ = false;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline bool TpmStatusInfo::_internal_dictionary_attack_lockout_in_effect() const {
+  return dictionary_attack_lockout_in_effect_;
+}
+inline bool TpmStatusInfo::dictionary_attack_lockout_in_effect() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.dictionary_attack_lockout_in_effect)
+  return _internal_dictionary_attack_lockout_in_effect();
+}
+inline void TpmStatusInfo::_internal_set_dictionary_attack_lockout_in_effect(bool value) {
+  _has_bits_[0] |= 0x00000100u;
+  dictionary_attack_lockout_in_effect_ = value;
+}
+inline void TpmStatusInfo::set_dictionary_attack_lockout_in_effect(bool value) {
+  _internal_set_dictionary_attack_lockout_in_effect(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.dictionary_attack_lockout_in_effect)
+}
+
+// optional int32 dictionary_attack_lockout_seconds_remaining = 9;
+inline bool TpmStatusInfo::_internal_has_dictionary_attack_lockout_seconds_remaining() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_dictionary_attack_lockout_seconds_remaining() const {
+  return _internal_has_dictionary_attack_lockout_seconds_remaining();
+}
+inline void TpmStatusInfo::clear_dictionary_attack_lockout_seconds_remaining() {
+  dictionary_attack_lockout_seconds_remaining_ = 0;
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 TpmStatusInfo::_internal_dictionary_attack_lockout_seconds_remaining() const {
+  return dictionary_attack_lockout_seconds_remaining_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 TpmStatusInfo::dictionary_attack_lockout_seconds_remaining() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.dictionary_attack_lockout_seconds_remaining)
+  return _internal_dictionary_attack_lockout_seconds_remaining();
+}
+inline void TpmStatusInfo::_internal_set_dictionary_attack_lockout_seconds_remaining(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000800u;
+  dictionary_attack_lockout_seconds_remaining_ = value;
+}
+inline void TpmStatusInfo::set_dictionary_attack_lockout_seconds_remaining(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_dictionary_attack_lockout_seconds_remaining(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.dictionary_attack_lockout_seconds_remaining)
+}
+
+// optional bool boot_lockbox_finalized = 10 [deprecated = true];
+inline bool TpmStatusInfo::_internal_has_boot_lockbox_finalized() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_boot_lockbox_finalized() const {
+  return _internal_has_boot_lockbox_finalized();
+}
+inline void TpmStatusInfo::clear_boot_lockbox_finalized() {
+  boot_lockbox_finalized_ = false;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline bool TpmStatusInfo::_internal_boot_lockbox_finalized() const {
+  return boot_lockbox_finalized_;
+}
+inline bool TpmStatusInfo::boot_lockbox_finalized() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.boot_lockbox_finalized)
+  return _internal_boot_lockbox_finalized();
+}
+inline void TpmStatusInfo::_internal_set_boot_lockbox_finalized(bool value) {
+  _has_bits_[0] |= 0x00000200u;
+  boot_lockbox_finalized_ = value;
+}
+inline void TpmStatusInfo::set_boot_lockbox_finalized(bool value) {
+  _internal_set_boot_lockbox_finalized(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.boot_lockbox_finalized)
+}
+
+// optional bool owner_password_is_present = 11;
+inline bool TpmStatusInfo::_internal_has_owner_password_is_present() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool TpmStatusInfo::has_owner_password_is_present() const {
+  return _internal_has_owner_password_is_present();
+}
+inline void TpmStatusInfo::clear_owner_password_is_present() {
+  owner_password_is_present_ = false;
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline bool TpmStatusInfo::_internal_owner_password_is_present() const {
+  return owner_password_is_present_;
+}
+inline bool TpmStatusInfo::owner_password_is_present() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.owner_password_is_present)
+  return _internal_owner_password_is_present();
+}
+inline void TpmStatusInfo::_internal_set_owner_password_is_present(bool value) {
+  _has_bits_[0] |= 0x00000400u;
+  owner_password_is_present_ = value;
+}
+inline void TpmStatusInfo::set_owner_password_is_present(bool value) {
+  _internal_set_owner_password_is_present(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmStatusInfo.owner_password_is_present)
+}
+
+// optional .enterprise_management.TpmSupportedFeatures tpm_supported_features = 12;
+inline bool TpmStatusInfo::_internal_has_tpm_supported_features() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || tpm_supported_features_ != nullptr);
+  return value;
+}
+inline bool TpmStatusInfo::has_tpm_supported_features() const {
+  return _internal_has_tpm_supported_features();
+}
+inline void TpmStatusInfo::clear_tpm_supported_features() {
+  if (tpm_supported_features_ != nullptr) tpm_supported_features_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::TpmSupportedFeatures& TpmStatusInfo::_internal_tpm_supported_features() const {
+  const ::enterprise_management::TpmSupportedFeatures* p = tpm_supported_features_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::TpmSupportedFeatures*>(
+      &::enterprise_management::_TpmSupportedFeatures_default_instance_);
+}
+inline const ::enterprise_management::TpmSupportedFeatures& TpmStatusInfo::tpm_supported_features() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmStatusInfo.tpm_supported_features)
+  return _internal_tpm_supported_features();
+}
+inline ::enterprise_management::TpmSupportedFeatures* TpmStatusInfo::release_tpm_supported_features() {
+  // @@protoc_insertion_point(field_release:enterprise_management.TpmStatusInfo.tpm_supported_features)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::TpmSupportedFeatures* temp = tpm_supported_features_;
+  tpm_supported_features_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::TpmSupportedFeatures* TpmStatusInfo::_internal_mutable_tpm_supported_features() {
+  _has_bits_[0] |= 0x00000001u;
+  if (tpm_supported_features_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::TpmSupportedFeatures>(GetArenaNoVirtual());
+    tpm_supported_features_ = p;
+  }
+  return tpm_supported_features_;
+}
+inline ::enterprise_management::TpmSupportedFeatures* TpmStatusInfo::mutable_tpm_supported_features() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.TpmStatusInfo.tpm_supported_features)
+  return _internal_mutable_tpm_supported_features();
+}
+inline void TpmStatusInfo::set_allocated_tpm_supported_features(::enterprise_management::TpmSupportedFeatures* tpm_supported_features) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete tpm_supported_features_;
+  }
+  if (tpm_supported_features) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      tpm_supported_features = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, tpm_supported_features, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  tpm_supported_features_ = tpm_supported_features;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.TpmStatusInfo.tpm_supported_features)
+}
+
+// -------------------------------------------------------------------
+
+// TpmSupportedFeatures
+
+// optional bool is_allowed = 1;
+inline bool TpmSupportedFeatures::_internal_has_is_allowed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool TpmSupportedFeatures::has_is_allowed() const {
+  return _internal_has_is_allowed();
+}
+inline void TpmSupportedFeatures::clear_is_allowed() {
+  is_allowed_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool TpmSupportedFeatures::_internal_is_allowed() const {
+  return is_allowed_;
+}
+inline bool TpmSupportedFeatures::is_allowed() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmSupportedFeatures.is_allowed)
+  return _internal_is_allowed();
+}
+inline void TpmSupportedFeatures::_internal_set_is_allowed(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  is_allowed_ = value;
+}
+inline void TpmSupportedFeatures::set_is_allowed(bool value) {
+  _internal_set_is_allowed(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmSupportedFeatures.is_allowed)
+}
+
+// optional bool support_pinweaver = 2;
+inline bool TpmSupportedFeatures::_internal_has_support_pinweaver() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool TpmSupportedFeatures::has_support_pinweaver() const {
+  return _internal_has_support_pinweaver();
+}
+inline void TpmSupportedFeatures::clear_support_pinweaver() {
+  support_pinweaver_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool TpmSupportedFeatures::_internal_support_pinweaver() const {
+  return support_pinweaver_;
+}
+inline bool TpmSupportedFeatures::support_pinweaver() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmSupportedFeatures.support_pinweaver)
+  return _internal_support_pinweaver();
+}
+inline void TpmSupportedFeatures::_internal_set_support_pinweaver(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  support_pinweaver_ = value;
+}
+inline void TpmSupportedFeatures::set_support_pinweaver(bool value) {
+  _internal_set_support_pinweaver(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmSupportedFeatures.support_pinweaver)
+}
+
+// optional bool support_runtime_selection = 3;
+inline bool TpmSupportedFeatures::_internal_has_support_runtime_selection() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool TpmSupportedFeatures::has_support_runtime_selection() const {
+  return _internal_has_support_runtime_selection();
+}
+inline void TpmSupportedFeatures::clear_support_runtime_selection() {
+  support_runtime_selection_ = false;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool TpmSupportedFeatures::_internal_support_runtime_selection() const {
+  return support_runtime_selection_;
+}
+inline bool TpmSupportedFeatures::support_runtime_selection() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmSupportedFeatures.support_runtime_selection)
+  return _internal_support_runtime_selection();
+}
+inline void TpmSupportedFeatures::_internal_set_support_runtime_selection(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  support_runtime_selection_ = value;
+}
+inline void TpmSupportedFeatures::set_support_runtime_selection(bool value) {
+  _internal_set_support_runtime_selection(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmSupportedFeatures.support_runtime_selection)
+}
+
+// optional bool support_u2f = 4;
+inline bool TpmSupportedFeatures::_internal_has_support_u2f() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool TpmSupportedFeatures::has_support_u2f() const {
+  return _internal_has_support_u2f();
+}
+inline void TpmSupportedFeatures::clear_support_u2f() {
+  support_u2f_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool TpmSupportedFeatures::_internal_support_u2f() const {
+  return support_u2f_;
+}
+inline bool TpmSupportedFeatures::support_u2f() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.TpmSupportedFeatures.support_u2f)
+  return _internal_support_u2f();
+}
+inline void TpmSupportedFeatures::_internal_set_support_u2f(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  support_u2f_ = value;
+}
+inline void TpmSupportedFeatures::set_support_u2f(bool value) {
+  _internal_set_support_u2f(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.TpmSupportedFeatures.support_u2f)
+}
+
+// -------------------------------------------------------------------
+
+// SystemState
+
+// repeated .enterprise_management.VolumeInfo volume_infos = 1;
+inline int SystemState::_internal_volume_infos_size() const {
+  return volume_infos_.size();
+}
+inline int SystemState::volume_infos_size() const {
+  return _internal_volume_infos_size();
+}
+inline void SystemState::clear_volume_infos() {
+  volume_infos_.Clear();
+}
+inline ::enterprise_management::VolumeInfo* SystemState::mutable_volume_infos(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.SystemState.volume_infos)
+  return volume_infos_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo >*
+SystemState::mutable_volume_infos() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.SystemState.volume_infos)
+  return &volume_infos_;
+}
+inline const ::enterprise_management::VolumeInfo& SystemState::_internal_volume_infos(int index) const {
+  return volume_infos_.Get(index);
+}
+inline const ::enterprise_management::VolumeInfo& SystemState::volume_infos(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.SystemState.volume_infos)
+  return _internal_volume_infos(index);
+}
+inline ::enterprise_management::VolumeInfo* SystemState::_internal_add_volume_infos() {
+  return volume_infos_.Add();
+}
+inline ::enterprise_management::VolumeInfo* SystemState::add_volume_infos() {
+  // @@protoc_insertion_point(field_add:enterprise_management.SystemState.volume_infos)
+  return _internal_add_volume_infos();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::VolumeInfo >&
+SystemState::volume_infos() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.SystemState.volume_infos)
+  return volume_infos_;
+}
+
+// -------------------------------------------------------------------
+
+// ExtensionInstallReportLogEvent
+
+// optional int64 timestamp = 1;
+inline bool ExtensionInstallReportLogEvent::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void ExtensionInstallReportLogEvent::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionInstallReportLogEvent::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionInstallReportLogEvent::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.timestamp)
+  return _internal_timestamp();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  timestamp_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.timestamp)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.EventType event_type = 2;
+inline bool ExtensionInstallReportLogEvent::_internal_has_event_type() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_event_type() const {
+  return _internal_has_event_type();
+}
+inline void ExtensionInstallReportLogEvent::clear_event_type() {
+  event_type_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::_internal_event_type() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_EventType >(event_type_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_EventType ExtensionInstallReportLogEvent::event_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.event_type)
+  return _internal_event_type();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_event_type(::enterprise_management::ExtensionInstallReportLogEvent_EventType value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_EventType_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  event_type_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_event_type(::enterprise_management::ExtensionInstallReportLogEvent_EventType value) {
+  _internal_set_event_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.event_type)
+}
+
+// optional int64 stateful_total = 3;
+inline bool ExtensionInstallReportLogEvent::_internal_has_stateful_total() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_stateful_total() const {
+  return _internal_has_stateful_total();
+}
+inline void ExtensionInstallReportLogEvent::clear_stateful_total() {
+  stateful_total_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionInstallReportLogEvent::_internal_stateful_total() const {
+  return stateful_total_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionInstallReportLogEvent::stateful_total() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.stateful_total)
+  return _internal_stateful_total();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_stateful_total(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  stateful_total_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_stateful_total(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_stateful_total(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.stateful_total)
+}
+
+// optional int64 stateful_free = 4;
+inline bool ExtensionInstallReportLogEvent::_internal_has_stateful_free() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_stateful_free() const {
+  return _internal_has_stateful_free();
+}
+inline void ExtensionInstallReportLogEvent::clear_stateful_free() {
+  stateful_free_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionInstallReportLogEvent::_internal_stateful_free() const {
+  return stateful_free_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ExtensionInstallReportLogEvent::stateful_free() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.stateful_free)
+  return _internal_stateful_free();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_stateful_free(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  stateful_free_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_stateful_free(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_stateful_free(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.stateful_free)
+}
+
+// optional bool online = 5;
+inline bool ExtensionInstallReportLogEvent::_internal_has_online() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_online() const {
+  return _internal_has_online();
+}
+inline void ExtensionInstallReportLogEvent::clear_online() {
+  online_ = false;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline bool ExtensionInstallReportLogEvent::_internal_online() const {
+  return online_;
+}
+inline bool ExtensionInstallReportLogEvent::online() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.online)
+  return _internal_online();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_online(bool value) {
+  _has_bits_[0] |= 0x00000200u;
+  online_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_online(bool value) {
+  _internal_set_online(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.online)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.SessionStateChangeType session_state_change_type = 6;
+inline bool ExtensionInstallReportLogEvent::_internal_has_session_state_change_type() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_session_state_change_type() const {
+  return _internal_has_session_state_change_type();
+}
+inline void ExtensionInstallReportLogEvent::clear_session_state_change_type() {
+  session_state_change_type_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::_internal_session_state_change_type() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType >(session_state_change_type_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType ExtensionInstallReportLogEvent::session_state_change_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.session_state_change_type)
+  return _internal_session_state_change_type();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_session_state_change_type(::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  session_state_change_type_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_session_state_change_type(::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType value) {
+  _internal_set_session_state_change_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.session_state_change_type)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.FailureReason failure_reason = 7;
+inline bool ExtensionInstallReportLogEvent::_internal_has_failure_reason() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_failure_reason() const {
+  return _internal_has_failure_reason();
+}
+inline void ExtensionInstallReportLogEvent::clear_failure_reason() {
+  failure_reason_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::_internal_failure_reason() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_FailureReason >(failure_reason_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_FailureReason ExtensionInstallReportLogEvent::failure_reason() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.failure_reason)
+  return _internal_failure_reason();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_failure_reason(::enterprise_management::ExtensionInstallReportLogEvent_FailureReason value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_FailureReason_IsValid(value));
+  _has_bits_[0] |= 0x00000020u;
+  failure_reason_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_failure_reason(::enterprise_management::ExtensionInstallReportLogEvent_FailureReason value) {
+  _internal_set_failure_reason(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.failure_reason)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.InstallationStage installation_stage = 8;
+inline bool ExtensionInstallReportLogEvent::_internal_has_installation_stage() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_installation_stage() const {
+  return _internal_has_installation_stage();
+}
+inline void ExtensionInstallReportLogEvent::clear_installation_stage() {
+  installation_stage_ = 0;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::_internal_installation_stage() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage >(installation_stage_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage ExtensionInstallReportLogEvent::installation_stage() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.installation_stage)
+  return _internal_installation_stage();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_installation_stage(::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage_IsValid(value));
+  _has_bits_[0] |= 0x00000040u;
+  installation_stage_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_installation_stage(::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage value) {
+  _internal_set_installation_stage(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.installation_stage)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadingStage downloading_stage = 9;
+inline bool ExtensionInstallReportLogEvent::_internal_has_downloading_stage() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_downloading_stage() const {
+  return _internal_has_downloading_stage();
+}
+inline void ExtensionInstallReportLogEvent::clear_downloading_stage() {
+  downloading_stage_ = 0;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::_internal_downloading_stage() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage >(downloading_stage_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage ExtensionInstallReportLogEvent::downloading_stage() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.downloading_stage)
+  return _internal_downloading_stage();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_downloading_stage(::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage_IsValid(value));
+  _has_bits_[0] |= 0x00000080u;
+  downloading_stage_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_downloading_stage(::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage value) {
+  _internal_set_downloading_stage(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.downloading_stage)
+}
+
+// optional .enterprise_management.Extension.ExtensionType extension_type = 10;
+inline bool ExtensionInstallReportLogEvent::_internal_has_extension_type() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_extension_type() const {
+  return _internal_has_extension_type();
+}
+inline void ExtensionInstallReportLogEvent::clear_extension_type() {
+  extension_type_ = 0;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline ::enterprise_management::Extension_ExtensionType ExtensionInstallReportLogEvent::_internal_extension_type() const {
+  return static_cast< ::enterprise_management::Extension_ExtensionType >(extension_type_);
+}
+inline ::enterprise_management::Extension_ExtensionType ExtensionInstallReportLogEvent::extension_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.extension_type)
+  return _internal_extension_type();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_extension_type(::enterprise_management::Extension_ExtensionType value) {
+  assert(::enterprise_management::Extension_ExtensionType_IsValid(value));
+  _has_bits_[0] |= 0x00000100u;
+  extension_type_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_extension_type(::enterprise_management::Extension_ExtensionType value) {
+  _internal_set_extension_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.extension_type)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.UserType user_type = 11;
+inline bool ExtensionInstallReportLogEvent::_internal_has_user_type() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_user_type() const {
+  return _internal_has_user_type();
+}
+inline void ExtensionInstallReportLogEvent::clear_user_type() {
+  user_type_ = 0;
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::_internal_user_type() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_UserType >(user_type_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_UserType ExtensionInstallReportLogEvent::user_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.user_type)
+  return _internal_user_type();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_user_type(::enterprise_management::ExtensionInstallReportLogEvent_UserType value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_UserType_IsValid(value));
+  _has_bits_[0] |= 0x00001000u;
+  user_type_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_user_type(::enterprise_management::ExtensionInstallReportLogEvent_UserType value) {
+  _internal_set_user_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.user_type)
+}
+
+// optional bool is_new_user = 12;
+inline bool ExtensionInstallReportLogEvent::_internal_has_is_new_user() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_is_new_user() const {
+  return _internal_has_is_new_user();
+}
+inline void ExtensionInstallReportLogEvent::clear_is_new_user() {
+  is_new_user_ = false;
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline bool ExtensionInstallReportLogEvent::_internal_is_new_user() const {
+  return is_new_user_;
+}
+inline bool ExtensionInstallReportLogEvent::is_new_user() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.is_new_user)
+  return _internal_is_new_user();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_is_new_user(bool value) {
+  _has_bits_[0] |= 0x00000400u;
+  is_new_user_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_is_new_user(bool value) {
+  _internal_set_is_new_user(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.is_new_user)
+}
+
+// optional bool is_misconfiguration_failure = 13;
+inline bool ExtensionInstallReportLogEvent::_internal_has_is_misconfiguration_failure() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_is_misconfiguration_failure() const {
+  return _internal_has_is_misconfiguration_failure();
+}
+inline void ExtensionInstallReportLogEvent::clear_is_misconfiguration_failure() {
+  is_misconfiguration_failure_ = false;
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline bool ExtensionInstallReportLogEvent::_internal_is_misconfiguration_failure() const {
+  return is_misconfiguration_failure_;
+}
+inline bool ExtensionInstallReportLogEvent::is_misconfiguration_failure() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.is_misconfiguration_failure)
+  return _internal_is_misconfiguration_failure();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_is_misconfiguration_failure(bool value) {
+  _has_bits_[0] |= 0x00000800u;
+  is_misconfiguration_failure_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_is_misconfiguration_failure(bool value) {
+  _internal_set_is_misconfiguration_failure(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.is_misconfiguration_failure)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.InstallCreationStage install_creation_stage = 14;
+inline bool ExtensionInstallReportLogEvent::_internal_has_install_creation_stage() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_install_creation_stage() const {
+  return _internal_has_install_creation_stage();
+}
+inline void ExtensionInstallReportLogEvent::clear_install_creation_stage() {
+  install_creation_stage_ = 0;
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::_internal_install_creation_stage() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage >(install_creation_stage_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage ExtensionInstallReportLogEvent::install_creation_stage() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.install_creation_stage)
+  return _internal_install_creation_stage();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_install_creation_stage(::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage_IsValid(value));
+  _has_bits_[0] |= 0x00002000u;
+  install_creation_stage_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_install_creation_stage(::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage value) {
+  _internal_set_install_creation_stage(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.install_creation_stage)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.DownloadCacheStatus download_cache_status = 15;
+inline bool ExtensionInstallReportLogEvent::_internal_has_download_cache_status() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_download_cache_status() const {
+  return _internal_has_download_cache_status();
+}
+inline void ExtensionInstallReportLogEvent::clear_download_cache_status() {
+  download_cache_status_ = 0;
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::_internal_download_cache_status() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus >(download_cache_status_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus ExtensionInstallReportLogEvent::download_cache_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.download_cache_status)
+  return _internal_download_cache_status();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_download_cache_status(::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus_IsValid(value));
+  _has_bits_[0] |= 0x00004000u;
+  download_cache_status_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_download_cache_status(::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus value) {
+  _internal_set_download_cache_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.download_cache_status)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.SandboxedUnpackerFailureReason unpacker_failure_reason = 16;
+inline bool ExtensionInstallReportLogEvent::_internal_has_unpacker_failure_reason() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_unpacker_failure_reason() const {
+  return _internal_has_unpacker_failure_reason();
+}
+inline void ExtensionInstallReportLogEvent::clear_unpacker_failure_reason() {
+  unpacker_failure_reason_ = 0;
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::_internal_unpacker_failure_reason() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason >(unpacker_failure_reason_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason ExtensionInstallReportLogEvent::unpacker_failure_reason() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.unpacker_failure_reason)
+  return _internal_unpacker_failure_reason();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_unpacker_failure_reason(::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason_IsValid(value));
+  _has_bits_[0] |= 0x00008000u;
+  unpacker_failure_reason_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_unpacker_failure_reason(::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason value) {
+  _internal_set_unpacker_failure_reason(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.unpacker_failure_reason)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.ManifestInvalidError manifest_invalid_error = 17;
+inline bool ExtensionInstallReportLogEvent::_internal_has_manifest_invalid_error() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_manifest_invalid_error() const {
+  return _internal_has_manifest_invalid_error();
+}
+inline void ExtensionInstallReportLogEvent::clear_manifest_invalid_error() {
+  manifest_invalid_error_ = 0;
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::_internal_manifest_invalid_error() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError >(manifest_invalid_error_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError ExtensionInstallReportLogEvent::manifest_invalid_error() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.manifest_invalid_error)
+  return _internal_manifest_invalid_error();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_manifest_invalid_error(::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError_IsValid(value));
+  _has_bits_[0] |= 0x00010000u;
+  manifest_invalid_error_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_manifest_invalid_error(::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError value) {
+  _internal_set_manifest_invalid_error(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.manifest_invalid_error)
+}
+
+// optional .enterprise_management.ExtensionInstallReportLogEvent.CrxInstallErrorDetail crx_install_error_detail = 18;
+inline bool ExtensionInstallReportLogEvent::_internal_has_crx_install_error_detail() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_crx_install_error_detail() const {
+  return _internal_has_crx_install_error_detail();
+}
+inline void ExtensionInstallReportLogEvent::clear_crx_install_error_detail() {
+  crx_install_error_detail_ = 0;
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::_internal_crx_install_error_detail() const {
+  return static_cast< ::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail >(crx_install_error_detail_);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail ExtensionInstallReportLogEvent::crx_install_error_detail() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.crx_install_error_detail)
+  return _internal_crx_install_error_detail();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_crx_install_error_detail(::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail value) {
+  assert(::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail_IsValid(value));
+  _has_bits_[0] |= 0x00020000u;
+  crx_install_error_detail_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_crx_install_error_detail(::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail value) {
+  _internal_set_crx_install_error_detail(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.crx_install_error_detail)
+}
+
+// optional int32 fetch_error_code = 19;
+inline bool ExtensionInstallReportLogEvent::_internal_has_fetch_error_code() const {
+  bool value = (_has_bits_[0] & 0x00040000u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_fetch_error_code() const {
+  return _internal_has_fetch_error_code();
+}
+inline void ExtensionInstallReportLogEvent::clear_fetch_error_code() {
+  fetch_error_code_ = 0;
+  _has_bits_[0] &= ~0x00040000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ExtensionInstallReportLogEvent::_internal_fetch_error_code() const {
+  return fetch_error_code_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ExtensionInstallReportLogEvent::fetch_error_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.fetch_error_code)
+  return _internal_fetch_error_code();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_fetch_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00040000u;
+  fetch_error_code_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_fetch_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_fetch_error_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.fetch_error_code)
+}
+
+// optional int32 fetch_tries = 20;
+inline bool ExtensionInstallReportLogEvent::_internal_has_fetch_tries() const {
+  bool value = (_has_bits_[0] & 0x00080000u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReportLogEvent::has_fetch_tries() const {
+  return _internal_has_fetch_tries();
+}
+inline void ExtensionInstallReportLogEvent::clear_fetch_tries() {
+  fetch_tries_ = 0;
+  _has_bits_[0] &= ~0x00080000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ExtensionInstallReportLogEvent::_internal_fetch_tries() const {
+  return fetch_tries_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ExtensionInstallReportLogEvent::fetch_tries() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportLogEvent.fetch_tries)
+  return _internal_fetch_tries();
+}
+inline void ExtensionInstallReportLogEvent::_internal_set_fetch_tries(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00080000u;
+  fetch_tries_ = value;
+}
+inline void ExtensionInstallReportLogEvent::set_fetch_tries(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_fetch_tries(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReportLogEvent.fetch_tries)
+}
+
+// -------------------------------------------------------------------
+
+// AppInstallReportLogEvent
+
+// optional int64 timestamp = 1;
+inline bool AppInstallReportLogEvent::_internal_has_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_timestamp() const {
+  return _internal_has_timestamp();
+}
+inline void AppInstallReportLogEvent::clear_timestamp() {
+  timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInstallReportLogEvent::_internal_timestamp() const {
+  return timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInstallReportLogEvent::timestamp() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.timestamp)
+  return _internal_timestamp();
+}
+inline void AppInstallReportLogEvent::_internal_set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  timestamp_ = value;
+}
+inline void AppInstallReportLogEvent::set_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.timestamp)
+}
+
+// optional .enterprise_management.AppInstallReportLogEvent.EventType event_type = 2;
+inline bool AppInstallReportLogEvent::_internal_has_event_type() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_event_type() const {
+  return _internal_has_event_type();
+}
+inline void AppInstallReportLogEvent::clear_event_type() {
+  event_type_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::AppInstallReportLogEvent_EventType AppInstallReportLogEvent::_internal_event_type() const {
+  return static_cast< ::enterprise_management::AppInstallReportLogEvent_EventType >(event_type_);
+}
+inline ::enterprise_management::AppInstallReportLogEvent_EventType AppInstallReportLogEvent::event_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.event_type)
+  return _internal_event_type();
+}
+inline void AppInstallReportLogEvent::_internal_set_event_type(::enterprise_management::AppInstallReportLogEvent_EventType value) {
+  assert(::enterprise_management::AppInstallReportLogEvent_EventType_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  event_type_ = value;
+}
+inline void AppInstallReportLogEvent::set_event_type(::enterprise_management::AppInstallReportLogEvent_EventType value) {
+  _internal_set_event_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.event_type)
+}
+
+// optional int64 stateful_total = 3;
+inline bool AppInstallReportLogEvent::_internal_has_stateful_total() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_stateful_total() const {
+  return _internal_has_stateful_total();
+}
+inline void AppInstallReportLogEvent::clear_stateful_total() {
+  stateful_total_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInstallReportLogEvent::_internal_stateful_total() const {
+  return stateful_total_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInstallReportLogEvent::stateful_total() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.stateful_total)
+  return _internal_stateful_total();
+}
+inline void AppInstallReportLogEvent::_internal_set_stateful_total(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  stateful_total_ = value;
+}
+inline void AppInstallReportLogEvent::set_stateful_total(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_stateful_total(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.stateful_total)
+}
+
+// optional int64 stateful_free = 4;
+inline bool AppInstallReportLogEvent::_internal_has_stateful_free() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_stateful_free() const {
+  return _internal_has_stateful_free();
+}
+inline void AppInstallReportLogEvent::clear_stateful_free() {
+  stateful_free_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInstallReportLogEvent::_internal_stateful_free() const {
+  return stateful_free_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInstallReportLogEvent::stateful_free() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.stateful_free)
+  return _internal_stateful_free();
+}
+inline void AppInstallReportLogEvent::_internal_set_stateful_free(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000020u;
+  stateful_free_ = value;
+}
+inline void AppInstallReportLogEvent::set_stateful_free(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_stateful_free(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.stateful_free)
+}
+
+// optional int32 clouddps_response = 5;
+inline bool AppInstallReportLogEvent::_internal_has_clouddps_response() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_clouddps_response() const {
+  return _internal_has_clouddps_response();
+}
+inline void AppInstallReportLogEvent::clear_clouddps_response() {
+  clouddps_response_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 AppInstallReportLogEvent::_internal_clouddps_response() const {
+  return clouddps_response_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 AppInstallReportLogEvent::clouddps_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.clouddps_response)
+  return _internal_clouddps_response();
+}
+inline void AppInstallReportLogEvent::_internal_set_clouddps_response(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  clouddps_response_ = value;
+}
+inline void AppInstallReportLogEvent::set_clouddps_response(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_clouddps_response(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.clouddps_response)
+}
+
+// optional string phonesky_log = 6;
+inline bool AppInstallReportLogEvent::_internal_has_phonesky_log() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_phonesky_log() const {
+  return _internal_has_phonesky_log();
+}
+inline void AppInstallReportLogEvent::clear_phonesky_log() {
+  phonesky_log_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AppInstallReportLogEvent::phonesky_log() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.phonesky_log)
+  return _internal_phonesky_log();
+}
+inline void AppInstallReportLogEvent::set_phonesky_log(const std::string& value) {
+  _internal_set_phonesky_log(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.phonesky_log)
+}
+inline std::string* AppInstallReportLogEvent::mutable_phonesky_log() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppInstallReportLogEvent.phonesky_log)
+  return _internal_mutable_phonesky_log();
+}
+inline const std::string& AppInstallReportLogEvent::_internal_phonesky_log() const {
+  return phonesky_log_.GetNoArena();
+}
+inline void AppInstallReportLogEvent::_internal_set_phonesky_log(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  phonesky_log_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppInstallReportLogEvent::set_phonesky_log(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  phonesky_log_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppInstallReportLogEvent.phonesky_log)
+}
+inline void AppInstallReportLogEvent::set_phonesky_log(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  phonesky_log_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppInstallReportLogEvent.phonesky_log)
+}
+inline void AppInstallReportLogEvent::set_phonesky_log(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  phonesky_log_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppInstallReportLogEvent.phonesky_log)
+}
+inline std::string* AppInstallReportLogEvent::_internal_mutable_phonesky_log() {
+  _has_bits_[0] |= 0x00000001u;
+  return phonesky_log_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppInstallReportLogEvent::release_phonesky_log() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppInstallReportLogEvent.phonesky_log)
+  if (!_internal_has_phonesky_log()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return phonesky_log_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppInstallReportLogEvent::set_allocated_phonesky_log(std::string* phonesky_log) {
+  if (phonesky_log != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  phonesky_log_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), phonesky_log);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppInstallReportLogEvent.phonesky_log)
+}
+
+// optional bool online = 7;
+inline bool AppInstallReportLogEvent::_internal_has_online() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_online() const {
+  return _internal_has_online();
+}
+inline void AppInstallReportLogEvent::clear_online() {
+  online_ = false;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline bool AppInstallReportLogEvent::_internal_online() const {
+  return online_;
+}
+inline bool AppInstallReportLogEvent::online() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.online)
+  return _internal_online();
+}
+inline void AppInstallReportLogEvent::_internal_set_online(bool value) {
+  _has_bits_[0] |= 0x00000040u;
+  online_ = value;
+}
+inline void AppInstallReportLogEvent::set_online(bool value) {
+  _internal_set_online(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.online)
+}
+
+// optional .enterprise_management.AppInstallReportLogEvent.SessionStateChangeType session_state_change_type = 8;
+inline bool AppInstallReportLogEvent::_internal_has_session_state_change_type() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_session_state_change_type() const {
+  return _internal_has_session_state_change_type();
+}
+inline void AppInstallReportLogEvent::clear_session_state_change_type() {
+  session_state_change_type_ = 0;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::_internal_session_state_change_type() const {
+  return static_cast< ::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType >(session_state_change_type_);
+}
+inline ::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType AppInstallReportLogEvent::session_state_change_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.session_state_change_type)
+  return _internal_session_state_change_type();
+}
+inline void AppInstallReportLogEvent::_internal_set_session_state_change_type(::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType value) {
+  assert(::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType_IsValid(value));
+  _has_bits_[0] |= 0x00000080u;
+  session_state_change_type_ = value;
+}
+inline void AppInstallReportLogEvent::set_session_state_change_type(::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType value) {
+  _internal_set_session_state_change_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.session_state_change_type)
+}
+
+// optional int64 android_id = 9;
+inline bool AppInstallReportLogEvent::_internal_has_android_id() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool AppInstallReportLogEvent::has_android_id() const {
+  return _internal_has_android_id();
+}
+inline void AppInstallReportLogEvent::clear_android_id() {
+  android_id_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInstallReportLogEvent::_internal_android_id() const {
+  return android_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppInstallReportLogEvent::android_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportLogEvent.android_id)
+  return _internal_android_id();
+}
+inline void AppInstallReportLogEvent::_internal_set_android_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000100u;
+  android_id_ = value;
+}
+inline void AppInstallReportLogEvent::set_android_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_android_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReportLogEvent.android_id)
+}
+
+// -------------------------------------------------------------------
+
+// ExtensionInstallReport
+
+// optional string extension_id = 1;
+inline bool ExtensionInstallReport::_internal_has_extension_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReport::has_extension_id() const {
+  return _internal_has_extension_id();
+}
+inline void ExtensionInstallReport::clear_extension_id() {
+  extension_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ExtensionInstallReport::extension_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReport.extension_id)
+  return _internal_extension_id();
+}
+inline void ExtensionInstallReport::set_extension_id(const std::string& value) {
+  _internal_set_extension_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReport.extension_id)
+}
+inline std::string* ExtensionInstallReport::mutable_extension_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExtensionInstallReport.extension_id)
+  return _internal_mutable_extension_id();
+}
+inline const std::string& ExtensionInstallReport::_internal_extension_id() const {
+  return extension_id_.GetNoArena();
+}
+inline void ExtensionInstallReport::_internal_set_extension_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ExtensionInstallReport::set_extension_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  extension_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ExtensionInstallReport.extension_id)
+}
+inline void ExtensionInstallReport::set_extension_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ExtensionInstallReport.extension_id)
+}
+inline void ExtensionInstallReport::set_extension_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  extension_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ExtensionInstallReport.extension_id)
+}
+inline std::string* ExtensionInstallReport::_internal_mutable_extension_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return extension_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ExtensionInstallReport::release_extension_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ExtensionInstallReport.extension_id)
+  if (!_internal_has_extension_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return extension_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ExtensionInstallReport::set_allocated_extension_id(std::string* extension_id) {
+  if (extension_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  extension_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), extension_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ExtensionInstallReport.extension_id)
+}
+
+// optional bool incomplete = 2;
+inline bool ExtensionInstallReport::_internal_has_incomplete() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ExtensionInstallReport::has_incomplete() const {
+  return _internal_has_incomplete();
+}
+inline void ExtensionInstallReport::clear_incomplete() {
+  incomplete_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool ExtensionInstallReport::_internal_incomplete() const {
+  return incomplete_;
+}
+inline bool ExtensionInstallReport::incomplete() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReport.incomplete)
+  return _internal_incomplete();
+}
+inline void ExtensionInstallReport::_internal_set_incomplete(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  incomplete_ = value;
+}
+inline void ExtensionInstallReport::set_incomplete(bool value) {
+  _internal_set_incomplete(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ExtensionInstallReport.incomplete)
+}
+
+// repeated .enterprise_management.ExtensionInstallReportLogEvent logs = 3;
+inline int ExtensionInstallReport::_internal_logs_size() const {
+  return logs_.size();
+}
+inline int ExtensionInstallReport::logs_size() const {
+  return _internal_logs_size();
+}
+inline void ExtensionInstallReport::clear_logs() {
+  logs_.Clear();
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent* ExtensionInstallReport::mutable_logs(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExtensionInstallReport.logs)
+  return logs_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReportLogEvent >*
+ExtensionInstallReport::mutable_logs() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ExtensionInstallReport.logs)
+  return &logs_;
+}
+inline const ::enterprise_management::ExtensionInstallReportLogEvent& ExtensionInstallReport::_internal_logs(int index) const {
+  return logs_.Get(index);
+}
+inline const ::enterprise_management::ExtensionInstallReportLogEvent& ExtensionInstallReport::logs(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReport.logs)
+  return _internal_logs(index);
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent* ExtensionInstallReport::_internal_add_logs() {
+  return logs_.Add();
+}
+inline ::enterprise_management::ExtensionInstallReportLogEvent* ExtensionInstallReport::add_logs() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ExtensionInstallReport.logs)
+  return _internal_add_logs();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReportLogEvent >&
+ExtensionInstallReport::logs() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ExtensionInstallReport.logs)
+  return logs_;
+}
+
+// -------------------------------------------------------------------
+
+// AppInstallReport
+
+// optional string package = 1;
+inline bool AppInstallReport::_internal_has_package() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool AppInstallReport::has_package() const {
+  return _internal_has_package();
+}
+inline void AppInstallReport::clear_package() {
+  package_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& AppInstallReport::package() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReport.package)
+  return _internal_package();
+}
+inline void AppInstallReport::set_package(const std::string& value) {
+  _internal_set_package(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReport.package)
+}
+inline std::string* AppInstallReport::mutable_package() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppInstallReport.package)
+  return _internal_mutable_package();
+}
+inline const std::string& AppInstallReport::_internal_package() const {
+  return package_.GetNoArena();
+}
+inline void AppInstallReport::_internal_set_package(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  package_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void AppInstallReport::set_package(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  package_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.AppInstallReport.package)
+}
+inline void AppInstallReport::set_package(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  package_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.AppInstallReport.package)
+}
+inline void AppInstallReport::set_package(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  package_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.AppInstallReport.package)
+}
+inline std::string* AppInstallReport::_internal_mutable_package() {
+  _has_bits_[0] |= 0x00000001u;
+  return package_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* AppInstallReport::release_package() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppInstallReport.package)
+  if (!_internal_has_package()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return package_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void AppInstallReport::set_allocated_package(std::string* package) {
+  if (package != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  package_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), package);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppInstallReport.package)
+}
+
+// optional bool incomplete = 2;
+inline bool AppInstallReport::_internal_has_incomplete() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AppInstallReport::has_incomplete() const {
+  return _internal_has_incomplete();
+}
+inline void AppInstallReport::clear_incomplete() {
+  incomplete_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool AppInstallReport::_internal_incomplete() const {
+  return incomplete_;
+}
+inline bool AppInstallReport::incomplete() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReport.incomplete)
+  return _internal_incomplete();
+}
+inline void AppInstallReport::_internal_set_incomplete(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  incomplete_ = value;
+}
+inline void AppInstallReport::set_incomplete(bool value) {
+  _internal_set_incomplete(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppInstallReport.incomplete)
+}
+
+// repeated .enterprise_management.AppInstallReportLogEvent logs = 3;
+inline int AppInstallReport::_internal_logs_size() const {
+  return logs_.size();
+}
+inline int AppInstallReport::logs_size() const {
+  return _internal_logs_size();
+}
+inline void AppInstallReport::clear_logs() {
+  logs_.Clear();
+}
+inline ::enterprise_management::AppInstallReportLogEvent* AppInstallReport::mutable_logs(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppInstallReport.logs)
+  return logs_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReportLogEvent >*
+AppInstallReport::mutable_logs() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.AppInstallReport.logs)
+  return &logs_;
+}
+inline const ::enterprise_management::AppInstallReportLogEvent& AppInstallReport::_internal_logs(int index) const {
+  return logs_.Get(index);
+}
+inline const ::enterprise_management::AppInstallReportLogEvent& AppInstallReport::logs(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReport.logs)
+  return _internal_logs(index);
+}
+inline ::enterprise_management::AppInstallReportLogEvent* AppInstallReport::_internal_add_logs() {
+  return logs_.Add();
+}
+inline ::enterprise_management::AppInstallReportLogEvent* AppInstallReport::add_logs() {
+  // @@protoc_insertion_point(field_add:enterprise_management.AppInstallReport.logs)
+  return _internal_add_logs();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReportLogEvent >&
+AppInstallReport::logs() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.AppInstallReport.logs)
+  return logs_;
+}
+
+// -------------------------------------------------------------------
+
+// AppInstallReportRequest
+
+// repeated .enterprise_management.AppInstallReport app_install_reports = 1;
+inline int AppInstallReportRequest::_internal_app_install_reports_size() const {
+  return app_install_reports_.size();
+}
+inline int AppInstallReportRequest::app_install_reports_size() const {
+  return _internal_app_install_reports_size();
+}
+inline void AppInstallReportRequest::clear_app_install_reports() {
+  app_install_reports_.Clear();
+}
+inline ::enterprise_management::AppInstallReport* AppInstallReportRequest::mutable_app_install_reports(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppInstallReportRequest.app_install_reports)
+  return app_install_reports_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReport >*
+AppInstallReportRequest::mutable_app_install_reports() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.AppInstallReportRequest.app_install_reports)
+  return &app_install_reports_;
+}
+inline const ::enterprise_management::AppInstallReport& AppInstallReportRequest::_internal_app_install_reports(int index) const {
+  return app_install_reports_.Get(index);
+}
+inline const ::enterprise_management::AppInstallReport& AppInstallReportRequest::app_install_reports(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppInstallReportRequest.app_install_reports)
+  return _internal_app_install_reports(index);
+}
+inline ::enterprise_management::AppInstallReport* AppInstallReportRequest::_internal_add_app_install_reports() {
+  return app_install_reports_.Add();
+}
+inline ::enterprise_management::AppInstallReport* AppInstallReportRequest::add_app_install_reports() {
+  // @@protoc_insertion_point(field_add:enterprise_management.AppInstallReportRequest.app_install_reports)
+  return _internal_add_app_install_reports();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppInstallReport >&
+AppInstallReportRequest::app_install_reports() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.AppInstallReportRequest.app_install_reports)
+  return app_install_reports_;
+}
+
+// -------------------------------------------------------------------
+
+// ExtensionInstallReportRequest
+
+// repeated .enterprise_management.ExtensionInstallReport extension_install_reports = 1;
+inline int ExtensionInstallReportRequest::_internal_extension_install_reports_size() const {
+  return extension_install_reports_.size();
+}
+inline int ExtensionInstallReportRequest::extension_install_reports_size() const {
+  return _internal_extension_install_reports_size();
+}
+inline void ExtensionInstallReportRequest::clear_extension_install_reports() {
+  extension_install_reports_.Clear();
+}
+inline ::enterprise_management::ExtensionInstallReport* ExtensionInstallReportRequest::mutable_extension_install_reports(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ExtensionInstallReportRequest.extension_install_reports)
+  return extension_install_reports_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReport >*
+ExtensionInstallReportRequest::mutable_extension_install_reports() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ExtensionInstallReportRequest.extension_install_reports)
+  return &extension_install_reports_;
+}
+inline const ::enterprise_management::ExtensionInstallReport& ExtensionInstallReportRequest::_internal_extension_install_reports(int index) const {
+  return extension_install_reports_.Get(index);
+}
+inline const ::enterprise_management::ExtensionInstallReport& ExtensionInstallReportRequest::extension_install_reports(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ExtensionInstallReportRequest.extension_install_reports)
+  return _internal_extension_install_reports(index);
+}
+inline ::enterprise_management::ExtensionInstallReport* ExtensionInstallReportRequest::_internal_add_extension_install_reports() {
+  return extension_install_reports_.Add();
+}
+inline ::enterprise_management::ExtensionInstallReport* ExtensionInstallReportRequest::add_extension_install_reports() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ExtensionInstallReportRequest.extension_install_reports)
+  return _internal_add_extension_install_reports();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ExtensionInstallReport >&
+ExtensionInstallReportRequest::extension_install_reports() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ExtensionInstallReportRequest.extension_install_reports)
+  return extension_install_reports_;
+}
+
+// -------------------------------------------------------------------
+
+// AppInstallReportResponse
+
+// -------------------------------------------------------------------
+
+// RefreshAccountRequest
+
+// optional .enterprise_management.RefreshAccountRequest.AccountType account_type = 1;
+inline bool RefreshAccountRequest::_internal_has_account_type() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RefreshAccountRequest::has_account_type() const {
+  return _internal_has_account_type();
+}
+inline void RefreshAccountRequest::clear_account_type() {
+  account_type_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::RefreshAccountRequest_AccountType RefreshAccountRequest::_internal_account_type() const {
+  return static_cast< ::enterprise_management::RefreshAccountRequest_AccountType >(account_type_);
+}
+inline ::enterprise_management::RefreshAccountRequest_AccountType RefreshAccountRequest::account_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RefreshAccountRequest.account_type)
+  return _internal_account_type();
+}
+inline void RefreshAccountRequest::_internal_set_account_type(::enterprise_management::RefreshAccountRequest_AccountType value) {
+  assert(::enterprise_management::RefreshAccountRequest_AccountType_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  account_type_ = value;
+}
+inline void RefreshAccountRequest::set_account_type(::enterprise_management::RefreshAccountRequest_AccountType value) {
+  _internal_set_account_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RefreshAccountRequest.account_type)
+}
+
+// -------------------------------------------------------------------
+
+// RefreshAccountResponse
+
+// -------------------------------------------------------------------
+
+// RsuLookupKeyUploadRequest
+
+// optional bytes board_id = 1;
+inline bool RsuLookupKeyUploadRequest::_internal_has_board_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RsuLookupKeyUploadRequest::has_board_id() const {
+  return _internal_has_board_id();
+}
+inline void RsuLookupKeyUploadRequest::clear_board_id() {
+  board_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& RsuLookupKeyUploadRequest::board_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RsuLookupKeyUploadRequest.board_id)
+  return _internal_board_id();
+}
+inline void RsuLookupKeyUploadRequest::set_board_id(const std::string& value) {
+  _internal_set_board_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RsuLookupKeyUploadRequest.board_id)
+}
+inline std::string* RsuLookupKeyUploadRequest::mutable_board_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RsuLookupKeyUploadRequest.board_id)
+  return _internal_mutable_board_id();
+}
+inline const std::string& RsuLookupKeyUploadRequest::_internal_board_id() const {
+  return board_id_.GetNoArena();
+}
+inline void RsuLookupKeyUploadRequest::_internal_set_board_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  board_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RsuLookupKeyUploadRequest::set_board_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  board_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RsuLookupKeyUploadRequest.board_id)
+}
+inline void RsuLookupKeyUploadRequest::set_board_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  board_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RsuLookupKeyUploadRequest.board_id)
+}
+inline void RsuLookupKeyUploadRequest::set_board_id(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  board_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RsuLookupKeyUploadRequest.board_id)
+}
+inline std::string* RsuLookupKeyUploadRequest::_internal_mutable_board_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return board_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RsuLookupKeyUploadRequest::release_board_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RsuLookupKeyUploadRequest.board_id)
+  if (!_internal_has_board_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return board_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RsuLookupKeyUploadRequest::set_allocated_board_id(std::string* board_id) {
+  if (board_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  board_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), board_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RsuLookupKeyUploadRequest.board_id)
+}
+
+// optional bytes cr50_hashed_device_id = 2;
+inline bool RsuLookupKeyUploadRequest::_internal_has_cr50_hashed_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool RsuLookupKeyUploadRequest::has_cr50_hashed_device_id() const {
+  return _internal_has_cr50_hashed_device_id();
+}
+inline void RsuLookupKeyUploadRequest::clear_cr50_hashed_device_id() {
+  cr50_hashed_device_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& RsuLookupKeyUploadRequest::cr50_hashed_device_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RsuLookupKeyUploadRequest.cr50_hashed_device_id)
+  return _internal_cr50_hashed_device_id();
+}
+inline void RsuLookupKeyUploadRequest::set_cr50_hashed_device_id(const std::string& value) {
+  _internal_set_cr50_hashed_device_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RsuLookupKeyUploadRequest.cr50_hashed_device_id)
+}
+inline std::string* RsuLookupKeyUploadRequest::mutable_cr50_hashed_device_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.RsuLookupKeyUploadRequest.cr50_hashed_device_id)
+  return _internal_mutable_cr50_hashed_device_id();
+}
+inline const std::string& RsuLookupKeyUploadRequest::_internal_cr50_hashed_device_id() const {
+  return cr50_hashed_device_id_.GetNoArena();
+}
+inline void RsuLookupKeyUploadRequest::_internal_set_cr50_hashed_device_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  cr50_hashed_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RsuLookupKeyUploadRequest::set_cr50_hashed_device_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  cr50_hashed_device_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.RsuLookupKeyUploadRequest.cr50_hashed_device_id)
+}
+inline void RsuLookupKeyUploadRequest::set_cr50_hashed_device_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  cr50_hashed_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.RsuLookupKeyUploadRequest.cr50_hashed_device_id)
+}
+inline void RsuLookupKeyUploadRequest::set_cr50_hashed_device_id(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  cr50_hashed_device_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.RsuLookupKeyUploadRequest.cr50_hashed_device_id)
+}
+inline std::string* RsuLookupKeyUploadRequest::_internal_mutable_cr50_hashed_device_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return cr50_hashed_device_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RsuLookupKeyUploadRequest::release_cr50_hashed_device_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.RsuLookupKeyUploadRequest.cr50_hashed_device_id)
+  if (!_internal_has_cr50_hashed_device_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return cr50_hashed_device_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RsuLookupKeyUploadRequest::set_allocated_cr50_hashed_device_id(std::string* cr50_hashed_device_id) {
+  if (cr50_hashed_device_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  cr50_hashed_device_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), cr50_hashed_device_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.RsuLookupKeyUploadRequest.cr50_hashed_device_id)
+}
+
+// -------------------------------------------------------------------
+
+// RsuLookupKeyUploadResponse
+
+// optional bool rsu_lookup_key_updated = 1;
+inline bool RsuLookupKeyUploadResponse::_internal_has_rsu_lookup_key_updated() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool RsuLookupKeyUploadResponse::has_rsu_lookup_key_updated() const {
+  return _internal_has_rsu_lookup_key_updated();
+}
+inline void RsuLookupKeyUploadResponse::clear_rsu_lookup_key_updated() {
+  rsu_lookup_key_updated_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool RsuLookupKeyUploadResponse::_internal_rsu_lookup_key_updated() const {
+  return rsu_lookup_key_updated_;
+}
+inline bool RsuLookupKeyUploadResponse::rsu_lookup_key_updated() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.RsuLookupKeyUploadResponse.rsu_lookup_key_updated)
+  return _internal_rsu_lookup_key_updated();
+}
+inline void RsuLookupKeyUploadResponse::_internal_set_rsu_lookup_key_updated(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  rsu_lookup_key_updated_ = value;
+}
+inline void RsuLookupKeyUploadResponse::set_rsu_lookup_key_updated(bool value) {
+  _internal_set_rsu_lookup_key_updated(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.RsuLookupKeyUploadResponse.rsu_lookup_key_updated)
+}
+
+// -------------------------------------------------------------------
+
+// ESimProfileInfo
+
+// optional string iccid = 1;
+inline bool ESimProfileInfo::_internal_has_iccid() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ESimProfileInfo::has_iccid() const {
+  return _internal_has_iccid();
+}
+inline void ESimProfileInfo::clear_iccid() {
+  iccid_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ESimProfileInfo::iccid() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ESimProfileInfo.iccid)
+  return _internal_iccid();
+}
+inline void ESimProfileInfo::set_iccid(const std::string& value) {
+  _internal_set_iccid(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ESimProfileInfo.iccid)
+}
+inline std::string* ESimProfileInfo::mutable_iccid() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ESimProfileInfo.iccid)
+  return _internal_mutable_iccid();
+}
+inline const std::string& ESimProfileInfo::_internal_iccid() const {
+  return iccid_.GetNoArena();
+}
+inline void ESimProfileInfo::_internal_set_iccid(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  iccid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ESimProfileInfo::set_iccid(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  iccid_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ESimProfileInfo.iccid)
+}
+inline void ESimProfileInfo::set_iccid(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  iccid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ESimProfileInfo.iccid)
+}
+inline void ESimProfileInfo::set_iccid(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  iccid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ESimProfileInfo.iccid)
+}
+inline std::string* ESimProfileInfo::_internal_mutable_iccid() {
+  _has_bits_[0] |= 0x00000001u;
+  return iccid_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ESimProfileInfo::release_iccid() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ESimProfileInfo.iccid)
+  if (!_internal_has_iccid()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return iccid_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ESimProfileInfo::set_allocated_iccid(std::string* iccid) {
+  if (iccid != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  iccid_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), iccid);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ESimProfileInfo.iccid)
+}
+
+// optional string smdp_address = 2;
+inline bool ESimProfileInfo::_internal_has_smdp_address() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ESimProfileInfo::has_smdp_address() const {
+  return _internal_has_smdp_address();
+}
+inline void ESimProfileInfo::clear_smdp_address() {
+  smdp_address_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ESimProfileInfo::smdp_address() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ESimProfileInfo.smdp_address)
+  return _internal_smdp_address();
+}
+inline void ESimProfileInfo::set_smdp_address(const std::string& value) {
+  _internal_set_smdp_address(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ESimProfileInfo.smdp_address)
+}
+inline std::string* ESimProfileInfo::mutable_smdp_address() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ESimProfileInfo.smdp_address)
+  return _internal_mutable_smdp_address();
+}
+inline const std::string& ESimProfileInfo::_internal_smdp_address() const {
+  return smdp_address_.GetNoArena();
+}
+inline void ESimProfileInfo::_internal_set_smdp_address(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  smdp_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ESimProfileInfo::set_smdp_address(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  smdp_address_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ESimProfileInfo.smdp_address)
+}
+inline void ESimProfileInfo::set_smdp_address(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  smdp_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ESimProfileInfo.smdp_address)
+}
+inline void ESimProfileInfo::set_smdp_address(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  smdp_address_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ESimProfileInfo.smdp_address)
+}
+inline std::string* ESimProfileInfo::_internal_mutable_smdp_address() {
+  _has_bits_[0] |= 0x00000002u;
+  return smdp_address_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ESimProfileInfo::release_smdp_address() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ESimProfileInfo.smdp_address)
+  if (!_internal_has_smdp_address()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return smdp_address_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ESimProfileInfo::set_allocated_smdp_address(std::string* smdp_address) {
+  if (smdp_address != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  smdp_address_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), smdp_address);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ESimProfileInfo.smdp_address)
+}
+
+// -------------------------------------------------------------------
+
+// UploadEuiccInfoRequest
+
+// optional uint32 euicc_count = 1;
+inline bool UploadEuiccInfoRequest::_internal_has_euicc_count() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool UploadEuiccInfoRequest::has_euicc_count() const {
+  return _internal_has_euicc_count();
+}
+inline void UploadEuiccInfoRequest::clear_euicc_count() {
+  euicc_count_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 UploadEuiccInfoRequest::_internal_euicc_count() const {
+  return euicc_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 UploadEuiccInfoRequest::euicc_count() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UploadEuiccInfoRequest.euicc_count)
+  return _internal_euicc_count();
+}
+inline void UploadEuiccInfoRequest::_internal_set_euicc_count(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  euicc_count_ = value;
+}
+inline void UploadEuiccInfoRequest::set_euicc_count(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_euicc_count(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UploadEuiccInfoRequest.euicc_count)
+}
+
+// repeated .enterprise_management.ESimProfileInfo esim_profiles = 2;
+inline int UploadEuiccInfoRequest::_internal_esim_profiles_size() const {
+  return esim_profiles_.size();
+}
+inline int UploadEuiccInfoRequest::esim_profiles_size() const {
+  return _internal_esim_profiles_size();
+}
+inline void UploadEuiccInfoRequest::clear_esim_profiles() {
+  esim_profiles_.Clear();
+}
+inline ::enterprise_management::ESimProfileInfo* UploadEuiccInfoRequest::mutable_esim_profiles(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.UploadEuiccInfoRequest.esim_profiles)
+  return esim_profiles_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ESimProfileInfo >*
+UploadEuiccInfoRequest::mutable_esim_profiles() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.UploadEuiccInfoRequest.esim_profiles)
+  return &esim_profiles_;
+}
+inline const ::enterprise_management::ESimProfileInfo& UploadEuiccInfoRequest::_internal_esim_profiles(int index) const {
+  return esim_profiles_.Get(index);
+}
+inline const ::enterprise_management::ESimProfileInfo& UploadEuiccInfoRequest::esim_profiles(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UploadEuiccInfoRequest.esim_profiles)
+  return _internal_esim_profiles(index);
+}
+inline ::enterprise_management::ESimProfileInfo* UploadEuiccInfoRequest::_internal_add_esim_profiles() {
+  return esim_profiles_.Add();
+}
+inline ::enterprise_management::ESimProfileInfo* UploadEuiccInfoRequest::add_esim_profiles() {
+  // @@protoc_insertion_point(field_add:enterprise_management.UploadEuiccInfoRequest.esim_profiles)
+  return _internal_add_esim_profiles();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ESimProfileInfo >&
+UploadEuiccInfoRequest::esim_profiles() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.UploadEuiccInfoRequest.esim_profiles)
+  return esim_profiles_;
+}
+
+// optional bool clear_profile_list = 3;
+inline bool UploadEuiccInfoRequest::_internal_has_clear_profile_list() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool UploadEuiccInfoRequest::has_clear_profile_list() const {
+  return _internal_has_clear_profile_list();
+}
+inline void UploadEuiccInfoRequest::clear_clear_profile_list() {
+  clear_profile_list_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool UploadEuiccInfoRequest::_internal_clear_profile_list() const {
+  return clear_profile_list_;
+}
+inline bool UploadEuiccInfoRequest::clear_profile_list() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.UploadEuiccInfoRequest.clear_profile_list)
+  return _internal_clear_profile_list();
+}
+inline void UploadEuiccInfoRequest::_internal_set_clear_profile_list(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  clear_profile_list_ = value;
+}
+inline void UploadEuiccInfoRequest::set_clear_profile_list(bool value) {
+  _internal_set_clear_profile_list(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.UploadEuiccInfoRequest.clear_profile_list)
+}
+
+// -------------------------------------------------------------------
+
+// UploadEuiccInfoResponse
+
+// -------------------------------------------------------------------
+
+// PrintJobEvent_PrintJobConfiguration
+
+// optional string id = 1;
+inline bool PrintJobEvent_PrintJobConfiguration::_internal_has_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintJobConfiguration::has_id() const {
+  return _internal_has_id();
+}
+inline void PrintJobEvent_PrintJobConfiguration::clear_id() {
+  id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PrintJobEvent_PrintJobConfiguration::id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintJobConfiguration.id)
+  return _internal_id();
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_id(const std::string& value) {
+  _internal_set_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintJobConfiguration.id)
+}
+inline std::string* PrintJobEvent_PrintJobConfiguration::mutable_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.PrintJobConfiguration.id)
+  return _internal_mutable_id();
+}
+inline const std::string& PrintJobEvent_PrintJobConfiguration::_internal_id() const {
+  return id_.GetNoArena();
+}
+inline void PrintJobEvent_PrintJobConfiguration::_internal_set_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PrintJobEvent.PrintJobConfiguration.id)
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PrintJobEvent.PrintJobConfiguration.id)
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PrintJobEvent.PrintJobConfiguration.id)
+}
+inline std::string* PrintJobEvent_PrintJobConfiguration::_internal_mutable_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrintJobEvent_PrintJobConfiguration::release_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.PrintJobConfiguration.id)
+  if (!_internal_has_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_allocated_id(std::string* id) {
+  if (id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.PrintJobConfiguration.id)
+}
+
+// optional string title = 2;
+inline bool PrintJobEvent_PrintJobConfiguration::_internal_has_title() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintJobConfiguration::has_title() const {
+  return _internal_has_title();
+}
+inline void PrintJobEvent_PrintJobConfiguration::clear_title() {
+  title_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& PrintJobEvent_PrintJobConfiguration::title() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintJobConfiguration.title)
+  return _internal_title();
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_title(const std::string& value) {
+  _internal_set_title(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintJobConfiguration.title)
+}
+inline std::string* PrintJobEvent_PrintJobConfiguration::mutable_title() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.PrintJobConfiguration.title)
+  return _internal_mutable_title();
+}
+inline const std::string& PrintJobEvent_PrintJobConfiguration::_internal_title() const {
+  return title_.GetNoArena();
+}
+inline void PrintJobEvent_PrintJobConfiguration::_internal_set_title(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  title_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_title(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  title_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PrintJobEvent.PrintJobConfiguration.title)
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_title(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  title_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PrintJobEvent.PrintJobConfiguration.title)
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_title(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  title_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PrintJobEvent.PrintJobConfiguration.title)
+}
+inline std::string* PrintJobEvent_PrintJobConfiguration::_internal_mutable_title() {
+  _has_bits_[0] |= 0x00000002u;
+  return title_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrintJobEvent_PrintJobConfiguration::release_title() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.PrintJobConfiguration.title)
+  if (!_internal_has_title()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return title_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_allocated_title(std::string* title) {
+  if (title != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  title_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), title);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.PrintJobConfiguration.title)
+}
+
+// optional int32 status = 3;
+inline bool PrintJobEvent_PrintJobConfiguration::_internal_has_status() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintJobConfiguration::has_status() const {
+  return _internal_has_status();
+}
+inline void PrintJobEvent_PrintJobConfiguration::clear_status() {
+  status_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintJobConfiguration::_internal_status() const {
+  return status_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintJobConfiguration::status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintJobConfiguration.status)
+  return _internal_status();
+}
+inline void PrintJobEvent_PrintJobConfiguration::_internal_set_status(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  status_ = value;
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_status(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_status(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintJobConfiguration.status)
+}
+
+// optional int64 creation_timestamp_ms = 4;
+inline bool PrintJobEvent_PrintJobConfiguration::_internal_has_creation_timestamp_ms() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintJobConfiguration::has_creation_timestamp_ms() const {
+  return _internal_has_creation_timestamp_ms();
+}
+inline void PrintJobEvent_PrintJobConfiguration::clear_creation_timestamp_ms() {
+  creation_timestamp_ms_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PrintJobEvent_PrintJobConfiguration::_internal_creation_timestamp_ms() const {
+  return creation_timestamp_ms_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PrintJobEvent_PrintJobConfiguration::creation_timestamp_ms() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintJobConfiguration.creation_timestamp_ms)
+  return _internal_creation_timestamp_ms();
+}
+inline void PrintJobEvent_PrintJobConfiguration::_internal_set_creation_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000008u;
+  creation_timestamp_ms_ = value;
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_creation_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_creation_timestamp_ms(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintJobConfiguration.creation_timestamp_ms)
+}
+
+// optional int64 completion_timestamp_ms = 5;
+inline bool PrintJobEvent_PrintJobConfiguration::_internal_has_completion_timestamp_ms() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintJobConfiguration::has_completion_timestamp_ms() const {
+  return _internal_has_completion_timestamp_ms();
+}
+inline void PrintJobEvent_PrintJobConfiguration::clear_completion_timestamp_ms() {
+  completion_timestamp_ms_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PrintJobEvent_PrintJobConfiguration::_internal_completion_timestamp_ms() const {
+  return completion_timestamp_ms_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PrintJobEvent_PrintJobConfiguration::completion_timestamp_ms() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintJobConfiguration.completion_timestamp_ms)
+  return _internal_completion_timestamp_ms();
+}
+inline void PrintJobEvent_PrintJobConfiguration::_internal_set_completion_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000040u;
+  completion_timestamp_ms_ = value;
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_completion_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_completion_timestamp_ms(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintJobConfiguration.completion_timestamp_ms)
+}
+
+// optional int32 number_of_pages = 6;
+inline bool PrintJobEvent_PrintJobConfiguration::_internal_has_number_of_pages() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintJobConfiguration::has_number_of_pages() const {
+  return _internal_has_number_of_pages();
+}
+inline void PrintJobEvent_PrintJobConfiguration::clear_number_of_pages() {
+  number_of_pages_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintJobConfiguration::_internal_number_of_pages() const {
+  return number_of_pages_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintJobConfiguration::number_of_pages() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintJobConfiguration.number_of_pages)
+  return _internal_number_of_pages();
+}
+inline void PrintJobEvent_PrintJobConfiguration::_internal_set_number_of_pages(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  number_of_pages_ = value;
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_number_of_pages(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_number_of_pages(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintJobConfiguration.number_of_pages)
+}
+
+// optional .enterprise_management.PrintJobEvent.PrintSettings settings = 7;
+inline bool PrintJobEvent_PrintJobConfiguration::_internal_has_settings() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || settings_ != nullptr);
+  return value;
+}
+inline bool PrintJobEvent_PrintJobConfiguration::has_settings() const {
+  return _internal_has_settings();
+}
+inline void PrintJobEvent_PrintJobConfiguration::clear_settings() {
+  if (settings_ != nullptr) settings_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::PrintJobEvent_PrintSettings& PrintJobEvent_PrintJobConfiguration::_internal_settings() const {
+  const ::enterprise_management::PrintJobEvent_PrintSettings* p = settings_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PrintJobEvent_PrintSettings*>(
+      &::enterprise_management::_PrintJobEvent_PrintSettings_default_instance_);
+}
+inline const ::enterprise_management::PrintJobEvent_PrintSettings& PrintJobEvent_PrintJobConfiguration::settings() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintJobConfiguration.settings)
+  return _internal_settings();
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings* PrintJobEvent_PrintJobConfiguration::release_settings() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.PrintJobConfiguration.settings)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::PrintJobEvent_PrintSettings* temp = settings_;
+  settings_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings* PrintJobEvent_PrintJobConfiguration::_internal_mutable_settings() {
+  _has_bits_[0] |= 0x00000004u;
+  if (settings_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PrintJobEvent_PrintSettings>(GetArenaNoVirtual());
+    settings_ = p;
+  }
+  return settings_;
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings* PrintJobEvent_PrintJobConfiguration::mutable_settings() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.PrintJobConfiguration.settings)
+  return _internal_mutable_settings();
+}
+inline void PrintJobEvent_PrintJobConfiguration::set_allocated_settings(::enterprise_management::PrintJobEvent_PrintSettings* settings) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete settings_;
+  }
+  if (settings) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      settings = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, settings, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  settings_ = settings;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.PrintJobConfiguration.settings)
+}
+
+// -------------------------------------------------------------------
+
+// PrintJobEvent_Printer
+
+// optional string name = 1;
+inline bool PrintJobEvent_Printer::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_Printer::has_name() const {
+  return _internal_has_name();
+}
+inline void PrintJobEvent_Printer::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PrintJobEvent_Printer::name() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.Printer.name)
+  return _internal_name();
+}
+inline void PrintJobEvent_Printer::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.Printer.name)
+}
+inline std::string* PrintJobEvent_Printer::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.Printer.name)
+  return _internal_mutable_name();
+}
+inline const std::string& PrintJobEvent_Printer::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void PrintJobEvent_Printer::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrintJobEvent_Printer::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PrintJobEvent.Printer.name)
+}
+inline void PrintJobEvent_Printer::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PrintJobEvent.Printer.name)
+}
+inline void PrintJobEvent_Printer::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PrintJobEvent.Printer.name)
+}
+inline std::string* PrintJobEvent_Printer::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrintJobEvent_Printer::release_name() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.Printer.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrintJobEvent_Printer::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.Printer.name)
+}
+
+// optional string uri = 2;
+inline bool PrintJobEvent_Printer::_internal_has_uri() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_Printer::has_uri() const {
+  return _internal_has_uri();
+}
+inline void PrintJobEvent_Printer::clear_uri() {
+  uri_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& PrintJobEvent_Printer::uri() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.Printer.uri)
+  return _internal_uri();
+}
+inline void PrintJobEvent_Printer::set_uri(const std::string& value) {
+  _internal_set_uri(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.Printer.uri)
+}
+inline std::string* PrintJobEvent_Printer::mutable_uri() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.Printer.uri)
+  return _internal_mutable_uri();
+}
+inline const std::string& PrintJobEvent_Printer::_internal_uri() const {
+  return uri_.GetNoArena();
+}
+inline void PrintJobEvent_Printer::_internal_set_uri(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  uri_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrintJobEvent_Printer::set_uri(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  uri_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PrintJobEvent.Printer.uri)
+}
+inline void PrintJobEvent_Printer::set_uri(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  uri_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PrintJobEvent.Printer.uri)
+}
+inline void PrintJobEvent_Printer::set_uri(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  uri_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PrintJobEvent.Printer.uri)
+}
+inline std::string* PrintJobEvent_Printer::_internal_mutable_uri() {
+  _has_bits_[0] |= 0x00000002u;
+  return uri_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrintJobEvent_Printer::release_uri() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.Printer.uri)
+  if (!_internal_has_uri()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return uri_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrintJobEvent_Printer::set_allocated_uri(std::string* uri) {
+  if (uri != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  uri_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), uri);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.Printer.uri)
+}
+
+// optional string id = 3;
+inline bool PrintJobEvent_Printer::_internal_has_id() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_Printer::has_id() const {
+  return _internal_has_id();
+}
+inline void PrintJobEvent_Printer::clear_id() {
+  id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& PrintJobEvent_Printer::id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.Printer.id)
+  return _internal_id();
+}
+inline void PrintJobEvent_Printer::set_id(const std::string& value) {
+  _internal_set_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.Printer.id)
+}
+inline std::string* PrintJobEvent_Printer::mutable_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.Printer.id)
+  return _internal_mutable_id();
+}
+inline const std::string& PrintJobEvent_Printer::_internal_id() const {
+  return id_.GetNoArena();
+}
+inline void PrintJobEvent_Printer::_internal_set_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrintJobEvent_Printer::set_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PrintJobEvent.Printer.id)
+}
+inline void PrintJobEvent_Printer::set_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PrintJobEvent.Printer.id)
+}
+inline void PrintJobEvent_Printer::set_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PrintJobEvent.Printer.id)
+}
+inline std::string* PrintJobEvent_Printer::_internal_mutable_id() {
+  _has_bits_[0] |= 0x00000004u;
+  return id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrintJobEvent_Printer::release_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.Printer.id)
+  if (!_internal_has_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrintJobEvent_Printer::set_allocated_id(std::string* id) {
+  if (id != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.Printer.id)
+}
+
+// -------------------------------------------------------------------
+
+// PrintJobEvent_PrintSettings_MediaSize
+
+// optional int32 width = 1;
+inline bool PrintJobEvent_PrintSettings_MediaSize::_internal_has_width() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintSettings_MediaSize::has_width() const {
+  return _internal_has_width();
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::clear_width() {
+  width_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintSettings_MediaSize::_internal_width() const {
+  return width_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintSettings_MediaSize::width() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.width)
+  return _internal_width();
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::_internal_set_width(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  width_ = value;
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::set_width(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_width(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.width)
+}
+
+// optional int32 height = 2;
+inline bool PrintJobEvent_PrintSettings_MediaSize::_internal_has_height() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintSettings_MediaSize::has_height() const {
+  return _internal_has_height();
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::clear_height() {
+  height_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintSettings_MediaSize::_internal_height() const {
+  return height_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintSettings_MediaSize::height() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.height)
+  return _internal_height();
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::_internal_set_height(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  height_ = value;
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::set_height(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_height(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.height)
+}
+
+// optional string vendor_id = 3;
+inline bool PrintJobEvent_PrintSettings_MediaSize::_internal_has_vendor_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintSettings_MediaSize::has_vendor_id() const {
+  return _internal_has_vendor_id();
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::clear_vendor_id() {
+  vendor_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& PrintJobEvent_PrintSettings_MediaSize::vendor_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.vendor_id)
+  return _internal_vendor_id();
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::set_vendor_id(const std::string& value) {
+  _internal_set_vendor_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.vendor_id)
+}
+inline std::string* PrintJobEvent_PrintSettings_MediaSize::mutable_vendor_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.vendor_id)
+  return _internal_mutable_vendor_id();
+}
+inline const std::string& PrintJobEvent_PrintSettings_MediaSize::_internal_vendor_id() const {
+  return vendor_id_.GetNoArena();
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::_internal_set_vendor_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::set_vendor_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.vendor_id)
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::set_vendor_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  vendor_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.vendor_id)
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::set_vendor_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.vendor_id)
+}
+inline std::string* PrintJobEvent_PrintSettings_MediaSize::_internal_mutable_vendor_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return vendor_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrintJobEvent_PrintSettings_MediaSize::release_vendor_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.vendor_id)
+  if (!_internal_has_vendor_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return vendor_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrintJobEvent_PrintSettings_MediaSize::set_allocated_vendor_id(std::string* vendor_id) {
+  if (vendor_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  vendor_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), vendor_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.PrintSettings.MediaSize.vendor_id)
+}
+
+// -------------------------------------------------------------------
+
+// PrintJobEvent_PrintSettings
+
+// optional .enterprise_management.PrintJobEvent.PrintSettings.ColorMode color = 1;
+inline bool PrintJobEvent_PrintSettings::_internal_has_color() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintSettings::has_color() const {
+  return _internal_has_color();
+}
+inline void PrintJobEvent_PrintSettings::clear_color() {
+  color_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings::_internal_color() const {
+  return static_cast< ::enterprise_management::PrintJobEvent_PrintSettings_ColorMode >(color_);
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings_ColorMode PrintJobEvent_PrintSettings::color() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintSettings.color)
+  return _internal_color();
+}
+inline void PrintJobEvent_PrintSettings::_internal_set_color(::enterprise_management::PrintJobEvent_PrintSettings_ColorMode value) {
+  assert(::enterprise_management::PrintJobEvent_PrintSettings_ColorMode_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  color_ = value;
+}
+inline void PrintJobEvent_PrintSettings::set_color(::enterprise_management::PrintJobEvent_PrintSettings_ColorMode value) {
+  _internal_set_color(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintSettings.color)
+}
+
+// optional .enterprise_management.PrintJobEvent.PrintSettings.DuplexMode duplex = 2;
+inline bool PrintJobEvent_PrintSettings::_internal_has_duplex() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintSettings::has_duplex() const {
+  return _internal_has_duplex();
+}
+inline void PrintJobEvent_PrintSettings::clear_duplex() {
+  duplex_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings::_internal_duplex() const {
+  return static_cast< ::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode >(duplex_);
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode PrintJobEvent_PrintSettings::duplex() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintSettings.duplex)
+  return _internal_duplex();
+}
+inline void PrintJobEvent_PrintSettings::_internal_set_duplex(::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode value) {
+  assert(::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  duplex_ = value;
+}
+inline void PrintJobEvent_PrintSettings::set_duplex(::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode value) {
+  _internal_set_duplex(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintSettings.duplex)
+}
+
+// optional .enterprise_management.PrintJobEvent.PrintSettings.MediaSize media_size = 3;
+inline bool PrintJobEvent_PrintSettings::_internal_has_media_size() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || media_size_ != nullptr);
+  return value;
+}
+inline bool PrintJobEvent_PrintSettings::has_media_size() const {
+  return _internal_has_media_size();
+}
+inline void PrintJobEvent_PrintSettings::clear_media_size() {
+  if (media_size_ != nullptr) media_size_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize& PrintJobEvent_PrintSettings::_internal_media_size() const {
+  const ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* p = media_size_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize*>(
+      &::enterprise_management::_PrintJobEvent_PrintSettings_MediaSize_default_instance_);
+}
+inline const ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize& PrintJobEvent_PrintSettings::media_size() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintSettings.media_size)
+  return _internal_media_size();
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* PrintJobEvent_PrintSettings::release_media_size() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.PrintSettings.media_size)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* temp = media_size_;
+  media_size_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* PrintJobEvent_PrintSettings::_internal_mutable_media_size() {
+  _has_bits_[0] |= 0x00000001u;
+  if (media_size_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PrintJobEvent_PrintSettings_MediaSize>(GetArenaNoVirtual());
+    media_size_ = p;
+  }
+  return media_size_;
+}
+inline ::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* PrintJobEvent_PrintSettings::mutable_media_size() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.PrintSettings.media_size)
+  return _internal_mutable_media_size();
+}
+inline void PrintJobEvent_PrintSettings::set_allocated_media_size(::enterprise_management::PrintJobEvent_PrintSettings_MediaSize* media_size) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete media_size_;
+  }
+  if (media_size) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      media_size = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, media_size, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  media_size_ = media_size;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.PrintSettings.media_size)
+}
+
+// optional int32 copies = 4;
+inline bool PrintJobEvent_PrintSettings::_internal_has_copies() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool PrintJobEvent_PrintSettings::has_copies() const {
+  return _internal_has_copies();
+}
+inline void PrintJobEvent_PrintSettings::clear_copies() {
+  copies_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintSettings::_internal_copies() const {
+  return copies_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrintJobEvent_PrintSettings::copies() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.PrintSettings.copies)
+  return _internal_copies();
+}
+inline void PrintJobEvent_PrintSettings::_internal_set_copies(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  copies_ = value;
+}
+inline void PrintJobEvent_PrintSettings::set_copies(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_copies(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.PrintSettings.copies)
+}
+
+// -------------------------------------------------------------------
+
+// PrintJobEvent
+
+// optional .enterprise_management.PrintJobEvent.PrintJobConfiguration job_configuration = 1;
+inline bool PrintJobEvent::_internal_has_job_configuration() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || job_configuration_ != nullptr);
+  return value;
+}
+inline bool PrintJobEvent::has_job_configuration() const {
+  return _internal_has_job_configuration();
+}
+inline void PrintJobEvent::clear_job_configuration() {
+  if (job_configuration_ != nullptr) job_configuration_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::PrintJobEvent_PrintJobConfiguration& PrintJobEvent::_internal_job_configuration() const {
+  const ::enterprise_management::PrintJobEvent_PrintJobConfiguration* p = job_configuration_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PrintJobEvent_PrintJobConfiguration*>(
+      &::enterprise_management::_PrintJobEvent_PrintJobConfiguration_default_instance_);
+}
+inline const ::enterprise_management::PrintJobEvent_PrintJobConfiguration& PrintJobEvent::job_configuration() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.job_configuration)
+  return _internal_job_configuration();
+}
+inline ::enterprise_management::PrintJobEvent_PrintJobConfiguration* PrintJobEvent::release_job_configuration() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.job_configuration)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::PrintJobEvent_PrintJobConfiguration* temp = job_configuration_;
+  job_configuration_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PrintJobEvent_PrintJobConfiguration* PrintJobEvent::_internal_mutable_job_configuration() {
+  _has_bits_[0] |= 0x00000001u;
+  if (job_configuration_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PrintJobEvent_PrintJobConfiguration>(GetArenaNoVirtual());
+    job_configuration_ = p;
+  }
+  return job_configuration_;
+}
+inline ::enterprise_management::PrintJobEvent_PrintJobConfiguration* PrintJobEvent::mutable_job_configuration() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.job_configuration)
+  return _internal_mutable_job_configuration();
+}
+inline void PrintJobEvent::set_allocated_job_configuration(::enterprise_management::PrintJobEvent_PrintJobConfiguration* job_configuration) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete job_configuration_;
+  }
+  if (job_configuration) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      job_configuration = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, job_configuration, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  job_configuration_ = job_configuration;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.job_configuration)
+}
+
+// optional .enterprise_management.PrintJobEvent.UserType user_type = 2;
+inline bool PrintJobEvent::_internal_has_user_type() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool PrintJobEvent::has_user_type() const {
+  return _internal_has_user_type();
+}
+inline void PrintJobEvent::clear_user_type() {
+  user_type_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::PrintJobEvent_UserType PrintJobEvent::_internal_user_type() const {
+  return static_cast< ::enterprise_management::PrintJobEvent_UserType >(user_type_);
+}
+inline ::enterprise_management::PrintJobEvent_UserType PrintJobEvent::user_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.user_type)
+  return _internal_user_type();
+}
+inline void PrintJobEvent::_internal_set_user_type(::enterprise_management::PrintJobEvent_UserType value) {
+  assert(::enterprise_management::PrintJobEvent_UserType_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  user_type_ = value;
+}
+inline void PrintJobEvent::set_user_type(::enterprise_management::PrintJobEvent_UserType value) {
+  _internal_set_user_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PrintJobEvent.user_type)
+}
+
+// optional .enterprise_management.PrintJobEvent.Printer printer = 3;
+inline bool PrintJobEvent::_internal_has_printer() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || printer_ != nullptr);
+  return value;
+}
+inline bool PrintJobEvent::has_printer() const {
+  return _internal_has_printer();
+}
+inline void PrintJobEvent::clear_printer() {
+  if (printer_ != nullptr) printer_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::PrintJobEvent_Printer& PrintJobEvent::_internal_printer() const {
+  const ::enterprise_management::PrintJobEvent_Printer* p = printer_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PrintJobEvent_Printer*>(
+      &::enterprise_management::_PrintJobEvent_Printer_default_instance_);
+}
+inline const ::enterprise_management::PrintJobEvent_Printer& PrintJobEvent::printer() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PrintJobEvent.printer)
+  return _internal_printer();
+}
+inline ::enterprise_management::PrintJobEvent_Printer* PrintJobEvent::release_printer() {
+  // @@protoc_insertion_point(field_release:enterprise_management.PrintJobEvent.printer)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::PrintJobEvent_Printer* temp = printer_;
+  printer_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PrintJobEvent_Printer* PrintJobEvent::_internal_mutable_printer() {
+  _has_bits_[0] |= 0x00000002u;
+  if (printer_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PrintJobEvent_Printer>(GetArenaNoVirtual());
+    printer_ = p;
+  }
+  return printer_;
+}
+inline ::enterprise_management::PrintJobEvent_Printer* PrintJobEvent::mutable_printer() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.PrintJobEvent.printer)
+  return _internal_mutable_printer();
+}
+inline void PrintJobEvent::set_allocated_printer(::enterprise_management::PrintJobEvent_Printer* printer) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete printer_;
+  }
+  if (printer) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      printer = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, printer, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  printer_ = printer;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.PrintJobEvent.printer)
+}
+
+// -------------------------------------------------------------------
+
+// App
+
+// optional string app_id = 1;
+inline bool App::_internal_has_app_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool App::has_app_id() const {
+  return _internal_has_app_id();
+}
+inline void App::clear_app_id() {
+  app_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& App::app_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.App.app_id)
+  return _internal_app_id();
+}
+inline void App::set_app_id(const std::string& value) {
+  _internal_set_app_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.App.app_id)
+}
+inline std::string* App::mutable_app_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.App.app_id)
+  return _internal_mutable_app_id();
+}
+inline const std::string& App::_internal_app_id() const {
+  return app_id_.GetNoArena();
+}
+inline void App::_internal_set_app_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void App::set_app_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.App.app_id)
+}
+inline void App::set_app_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.App.app_id)
+}
+inline void App::set_app_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  app_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.App.app_id)
+}
+inline std::string* App::_internal_mutable_app_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return app_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* App::release_app_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.App.app_id)
+  if (!_internal_has_app_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return app_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void App::set_allocated_app_id(std::string* app_id) {
+  if (app_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  app_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.App.app_id)
+}
+
+// optional .enterprise_management.App.AppType app_type = 2;
+inline bool App::_internal_has_app_type() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool App::has_app_type() const {
+  return _internal_has_app_type();
+}
+inline void App::clear_app_type() {
+  app_type_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::enterprise_management::App_AppType App::_internal_app_type() const {
+  return static_cast< ::enterprise_management::App_AppType >(app_type_);
+}
+inline ::enterprise_management::App_AppType App::app_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.App.app_type)
+  return _internal_app_type();
+}
+inline void App::_internal_set_app_type(::enterprise_management::App_AppType value) {
+  assert(::enterprise_management::App_AppType_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  app_type_ = value;
+}
+inline void App::set_app_type(::enterprise_management::App_AppType value) {
+  _internal_set_app_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.App.app_type)
+}
+
+// repeated string additional_app_id = 3;
+inline int App::_internal_additional_app_id_size() const {
+  return additional_app_id_.size();
+}
+inline int App::additional_app_id_size() const {
+  return _internal_additional_app_id_size();
+}
+inline void App::clear_additional_app_id() {
+  additional_app_id_.Clear();
+}
+inline std::string* App::add_additional_app_id() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.App.additional_app_id)
+  return _internal_add_additional_app_id();
+}
+inline const std::string& App::_internal_additional_app_id(int index) const {
+  return additional_app_id_.Get(index);
+}
+inline const std::string& App::additional_app_id(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.App.additional_app_id)
+  return _internal_additional_app_id(index);
+}
+inline std::string* App::mutable_additional_app_id(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.App.additional_app_id)
+  return additional_app_id_.Mutable(index);
+}
+inline void App::set_additional_app_id(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.App.additional_app_id)
+  additional_app_id_.Mutable(index)->assign(value);
+}
+inline void App::set_additional_app_id(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.App.additional_app_id)
+  additional_app_id_.Mutable(index)->assign(std::move(value));
+}
+inline void App::set_additional_app_id(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  additional_app_id_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.App.additional_app_id)
+}
+inline void App::set_additional_app_id(int index, const char* value, size_t size) {
+  additional_app_id_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.App.additional_app_id)
+}
+inline std::string* App::_internal_add_additional_app_id() {
+  return additional_app_id_.Add();
+}
+inline void App::add_additional_app_id(const std::string& value) {
+  additional_app_id_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.App.additional_app_id)
+}
+inline void App::add_additional_app_id(std::string&& value) {
+  additional_app_id_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.App.additional_app_id)
+}
+inline void App::add_additional_app_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  additional_app_id_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.App.additional_app_id)
+}
+inline void App::add_additional_app_id(const char* value, size_t size) {
+  additional_app_id_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.App.additional_app_id)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+App::additional_app_id() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.App.additional_app_id)
+  return additional_app_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+App::mutable_additional_app_id() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.App.additional_app_id)
+  return &additional_app_id_;
+}
+
+// -------------------------------------------------------------------
+
+// AppActivity
+
+// optional .enterprise_management.App app_info = 1;
+inline bool AppActivity::_internal_has_app_info() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || app_info_ != nullptr);
+  return value;
+}
+inline bool AppActivity::has_app_info() const {
+  return _internal_has_app_info();
+}
+inline void AppActivity::clear_app_info() {
+  if (app_info_ != nullptr) app_info_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::App& AppActivity::_internal_app_info() const {
+  const ::enterprise_management::App* p = app_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::App*>(
+      &::enterprise_management::_App_default_instance_);
+}
+inline const ::enterprise_management::App& AppActivity::app_info() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppActivity.app_info)
+  return _internal_app_info();
+}
+inline ::enterprise_management::App* AppActivity::release_app_info() {
+  // @@protoc_insertion_point(field_release:enterprise_management.AppActivity.app_info)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::App* temp = app_info_;
+  app_info_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::App* AppActivity::_internal_mutable_app_info() {
+  _has_bits_[0] |= 0x00000001u;
+  if (app_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::App>(GetArenaNoVirtual());
+    app_info_ = p;
+  }
+  return app_info_;
+}
+inline ::enterprise_management::App* AppActivity::mutable_app_info() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppActivity.app_info)
+  return _internal_mutable_app_info();
+}
+inline void AppActivity::set_allocated_app_info(::enterprise_management::App* app_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete app_info_;
+  }
+  if (app_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      app_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, app_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  app_info_ = app_info;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.AppActivity.app_info)
+}
+
+// repeated .enterprise_management.TimePeriod active_time_periods = 2;
+inline int AppActivity::_internal_active_time_periods_size() const {
+  return active_time_periods_.size();
+}
+inline int AppActivity::active_time_periods_size() const {
+  return _internal_active_time_periods_size();
+}
+inline void AppActivity::clear_active_time_periods() {
+  active_time_periods_.Clear();
+}
+inline ::enterprise_management::TimePeriod* AppActivity::mutable_active_time_periods(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.AppActivity.active_time_periods)
+  return active_time_periods_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod >*
+AppActivity::mutable_active_time_periods() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.AppActivity.active_time_periods)
+  return &active_time_periods_;
+}
+inline const ::enterprise_management::TimePeriod& AppActivity::_internal_active_time_periods(int index) const {
+  return active_time_periods_.Get(index);
+}
+inline const ::enterprise_management::TimePeriod& AppActivity::active_time_periods(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppActivity.active_time_periods)
+  return _internal_active_time_periods(index);
+}
+inline ::enterprise_management::TimePeriod* AppActivity::_internal_add_active_time_periods() {
+  return active_time_periods_.Add();
+}
+inline ::enterprise_management::TimePeriod* AppActivity::add_active_time_periods() {
+  // @@protoc_insertion_point(field_add:enterprise_management.AppActivity.active_time_periods)
+  return _internal_add_active_time_periods();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::TimePeriod >&
+AppActivity::active_time_periods() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.AppActivity.active_time_periods)
+  return active_time_periods_;
+}
+
+// optional int64 populated_at = 3;
+inline bool AppActivity::_internal_has_populated_at() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool AppActivity::has_populated_at() const {
+  return _internal_has_populated_at();
+}
+inline void AppActivity::clear_populated_at() {
+  populated_at_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppActivity::_internal_populated_at() const {
+  return populated_at_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 AppActivity::populated_at() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppActivity.populated_at)
+  return _internal_populated_at();
+}
+inline void AppActivity::_internal_set_populated_at(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  populated_at_ = value;
+}
+inline void AppActivity::set_populated_at(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_populated_at(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppActivity.populated_at)
+}
+
+// optional .enterprise_management.AppActivity.AppState app_state = 4;
+inline bool AppActivity::_internal_has_app_state() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool AppActivity::has_app_state() const {
+  return _internal_has_app_state();
+}
+inline void AppActivity::clear_app_state() {
+  app_state_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::AppActivity_AppState AppActivity::_internal_app_state() const {
+  return static_cast< ::enterprise_management::AppActivity_AppState >(app_state_);
+}
+inline ::enterprise_management::AppActivity_AppState AppActivity::app_state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.AppActivity.app_state)
+  return _internal_app_state();
+}
+inline void AppActivity::_internal_set_app_state(::enterprise_management::AppActivity_AppState value) {
+  assert(::enterprise_management::AppActivity_AppState_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  app_state_ = value;
+}
+inline void AppActivity::set_app_state(::enterprise_management::AppActivity_AppState value) {
+  _internal_set_app_state(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.AppActivity.app_state)
+}
+
+// -------------------------------------------------------------------
+
+// ScreenTimeSpan
+
+// optional .enterprise_management.TimePeriod time_period = 1;
+inline bool ScreenTimeSpan::_internal_has_time_period() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || time_period_ != nullptr);
+  return value;
+}
+inline bool ScreenTimeSpan::has_time_period() const {
+  return _internal_has_time_period();
+}
+inline void ScreenTimeSpan::clear_time_period() {
+  if (time_period_ != nullptr) time_period_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::TimePeriod& ScreenTimeSpan::_internal_time_period() const {
+  const ::enterprise_management::TimePeriod* p = time_period_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::TimePeriod*>(
+      &::enterprise_management::_TimePeriod_default_instance_);
+}
+inline const ::enterprise_management::TimePeriod& ScreenTimeSpan::time_period() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ScreenTimeSpan.time_period)
+  return _internal_time_period();
+}
+inline ::enterprise_management::TimePeriod* ScreenTimeSpan::release_time_period() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ScreenTimeSpan.time_period)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::TimePeriod* temp = time_period_;
+  time_period_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::TimePeriod* ScreenTimeSpan::_internal_mutable_time_period() {
+  _has_bits_[0] |= 0x00000001u;
+  if (time_period_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::TimePeriod>(GetArenaNoVirtual());
+    time_period_ = p;
+  }
+  return time_period_;
+}
+inline ::enterprise_management::TimePeriod* ScreenTimeSpan::mutable_time_period() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ScreenTimeSpan.time_period)
+  return _internal_mutable_time_period();
+}
+inline void ScreenTimeSpan::set_allocated_time_period(::enterprise_management::TimePeriod* time_period) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete time_period_;
+  }
+  if (time_period) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      time_period = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, time_period, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  time_period_ = time_period;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ScreenTimeSpan.time_period)
+}
+
+// optional int64 active_duration_ms = 2;
+inline bool ScreenTimeSpan::_internal_has_active_duration_ms() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ScreenTimeSpan::has_active_duration_ms() const {
+  return _internal_has_active_duration_ms();
+}
+inline void ScreenTimeSpan::clear_active_duration_ms() {
+  active_duration_ms_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ScreenTimeSpan::_internal_active_duration_ms() const {
+  return active_duration_ms_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ScreenTimeSpan::active_duration_ms() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ScreenTimeSpan.active_duration_ms)
+  return _internal_active_duration_ms();
+}
+inline void ScreenTimeSpan::_internal_set_active_duration_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  active_duration_ms_ = value;
+}
+inline void ScreenTimeSpan::set_active_duration_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_active_duration_ms(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ScreenTimeSpan.active_duration_ms)
+}
+
+// -------------------------------------------------------------------
+
+// ChildStatusReportRequest
+
+// optional string user_dm_token = 1;
+inline bool ChildStatusReportRequest::_internal_has_user_dm_token() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ChildStatusReportRequest::has_user_dm_token() const {
+  return _internal_has_user_dm_token();
+}
+inline void ChildStatusReportRequest::clear_user_dm_token() {
+  user_dm_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ChildStatusReportRequest::user_dm_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.user_dm_token)
+  return _internal_user_dm_token();
+}
+inline void ChildStatusReportRequest::set_user_dm_token(const std::string& value) {
+  _internal_set_user_dm_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChildStatusReportRequest.user_dm_token)
+}
+inline std::string* ChildStatusReportRequest::mutable_user_dm_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportRequest.user_dm_token)
+  return _internal_mutable_user_dm_token();
+}
+inline const std::string& ChildStatusReportRequest::_internal_user_dm_token() const {
+  return user_dm_token_.GetNoArena();
+}
+inline void ChildStatusReportRequest::_internal_set_user_dm_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  user_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChildStatusReportRequest::set_user_dm_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  user_dm_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChildStatusReportRequest.user_dm_token)
+}
+inline void ChildStatusReportRequest::set_user_dm_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  user_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChildStatusReportRequest.user_dm_token)
+}
+inline void ChildStatusReportRequest::set_user_dm_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  user_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChildStatusReportRequest.user_dm_token)
+}
+inline std::string* ChildStatusReportRequest::_internal_mutable_user_dm_token() {
+  _has_bits_[0] |= 0x00000001u;
+  return user_dm_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChildStatusReportRequest::release_user_dm_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChildStatusReportRequest.user_dm_token)
+  if (!_internal_has_user_dm_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return user_dm_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChildStatusReportRequest::set_allocated_user_dm_token(std::string* user_dm_token) {
+  if (user_dm_token != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  user_dm_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), user_dm_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChildStatusReportRequest.user_dm_token)
+}
+
+// optional int64 timestamp_ms = 2;
+inline bool ChildStatusReportRequest::_internal_has_timestamp_ms() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool ChildStatusReportRequest::has_timestamp_ms() const {
+  return _internal_has_timestamp_ms();
+}
+inline void ChildStatusReportRequest::clear_timestamp_ms() {
+  timestamp_ms_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ChildStatusReportRequest::_internal_timestamp_ms() const {
+  return timestamp_ms_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ChildStatusReportRequest::timestamp_ms() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.timestamp_ms)
+  return _internal_timestamp_ms();
+}
+inline void ChildStatusReportRequest::_internal_set_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000020u;
+  timestamp_ms_ = value;
+}
+inline void ChildStatusReportRequest::set_timestamp_ms(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_timestamp_ms(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChildStatusReportRequest.timestamp_ms)
+}
+
+// optional string time_zone = 3;
+inline bool ChildStatusReportRequest::_internal_has_time_zone() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ChildStatusReportRequest::has_time_zone() const {
+  return _internal_has_time_zone();
+}
+inline void ChildStatusReportRequest::clear_time_zone() {
+  time_zone_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ChildStatusReportRequest::time_zone() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.time_zone)
+  return _internal_time_zone();
+}
+inline void ChildStatusReportRequest::set_time_zone(const std::string& value) {
+  _internal_set_time_zone(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChildStatusReportRequest.time_zone)
+}
+inline std::string* ChildStatusReportRequest::mutable_time_zone() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportRequest.time_zone)
+  return _internal_mutable_time_zone();
+}
+inline const std::string& ChildStatusReportRequest::_internal_time_zone() const {
+  return time_zone_.GetNoArena();
+}
+inline void ChildStatusReportRequest::_internal_set_time_zone(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  time_zone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChildStatusReportRequest::set_time_zone(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  time_zone_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChildStatusReportRequest.time_zone)
+}
+inline void ChildStatusReportRequest::set_time_zone(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  time_zone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChildStatusReportRequest.time_zone)
+}
+inline void ChildStatusReportRequest::set_time_zone(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  time_zone_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChildStatusReportRequest.time_zone)
+}
+inline std::string* ChildStatusReportRequest::_internal_mutable_time_zone() {
+  _has_bits_[0] |= 0x00000002u;
+  return time_zone_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChildStatusReportRequest::release_time_zone() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChildStatusReportRequest.time_zone)
+  if (!_internal_has_time_zone()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return time_zone_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChildStatusReportRequest::set_allocated_time_zone(std::string* time_zone) {
+  if (time_zone != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  time_zone_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), time_zone);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChildStatusReportRequest.time_zone)
+}
+
+// repeated .enterprise_management.ScreenTimeSpan screen_time_span = 4;
+inline int ChildStatusReportRequest::_internal_screen_time_span_size() const {
+  return screen_time_span_.size();
+}
+inline int ChildStatusReportRequest::screen_time_span_size() const {
+  return _internal_screen_time_span_size();
+}
+inline void ChildStatusReportRequest::clear_screen_time_span() {
+  screen_time_span_.Clear();
+}
+inline ::enterprise_management::ScreenTimeSpan* ChildStatusReportRequest::mutable_screen_time_span(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportRequest.screen_time_span)
+  return screen_time_span_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ScreenTimeSpan >*
+ChildStatusReportRequest::mutable_screen_time_span() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChildStatusReportRequest.screen_time_span)
+  return &screen_time_span_;
+}
+inline const ::enterprise_management::ScreenTimeSpan& ChildStatusReportRequest::_internal_screen_time_span(int index) const {
+  return screen_time_span_.Get(index);
+}
+inline const ::enterprise_management::ScreenTimeSpan& ChildStatusReportRequest::screen_time_span(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.screen_time_span)
+  return _internal_screen_time_span(index);
+}
+inline ::enterprise_management::ScreenTimeSpan* ChildStatusReportRequest::_internal_add_screen_time_span() {
+  return screen_time_span_.Add();
+}
+inline ::enterprise_management::ScreenTimeSpan* ChildStatusReportRequest::add_screen_time_span() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChildStatusReportRequest.screen_time_span)
+  return _internal_add_screen_time_span();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::ScreenTimeSpan >&
+ChildStatusReportRequest::screen_time_span() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChildStatusReportRequest.screen_time_span)
+  return screen_time_span_;
+}
+
+// optional .enterprise_management.AndroidStatus android_status = 5;
+inline bool ChildStatusReportRequest::_internal_has_android_status() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || android_status_ != nullptr);
+  return value;
+}
+inline bool ChildStatusReportRequest::has_android_status() const {
+  return _internal_has_android_status();
+}
+inline void ChildStatusReportRequest::clear_android_status() {
+  if (android_status_ != nullptr) android_status_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::enterprise_management::AndroidStatus& ChildStatusReportRequest::_internal_android_status() const {
+  const ::enterprise_management::AndroidStatus* p = android_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AndroidStatus*>(
+      &::enterprise_management::_AndroidStatus_default_instance_);
+}
+inline const ::enterprise_management::AndroidStatus& ChildStatusReportRequest::android_status() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.android_status)
+  return _internal_android_status();
+}
+inline ::enterprise_management::AndroidStatus* ChildStatusReportRequest::release_android_status() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChildStatusReportRequest.android_status)
+  _has_bits_[0] &= ~0x00000010u;
+  ::enterprise_management::AndroidStatus* temp = android_status_;
+  android_status_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AndroidStatus* ChildStatusReportRequest::_internal_mutable_android_status() {
+  _has_bits_[0] |= 0x00000010u;
+  if (android_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AndroidStatus>(GetArenaNoVirtual());
+    android_status_ = p;
+  }
+  return android_status_;
+}
+inline ::enterprise_management::AndroidStatus* ChildStatusReportRequest::mutable_android_status() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportRequest.android_status)
+  return _internal_mutable_android_status();
+}
+inline void ChildStatusReportRequest::set_allocated_android_status(::enterprise_management::AndroidStatus* android_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete android_status_;
+  }
+  if (android_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      android_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, android_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  android_status_ = android_status;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChildStatusReportRequest.android_status)
+}
+
+// optional string os_version = 6;
+inline bool ChildStatusReportRequest::_internal_has_os_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ChildStatusReportRequest::has_os_version() const {
+  return _internal_has_os_version();
+}
+inline void ChildStatusReportRequest::clear_os_version() {
+  os_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& ChildStatusReportRequest::os_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.os_version)
+  return _internal_os_version();
+}
+inline void ChildStatusReportRequest::set_os_version(const std::string& value) {
+  _internal_set_os_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChildStatusReportRequest.os_version)
+}
+inline std::string* ChildStatusReportRequest::mutable_os_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportRequest.os_version)
+  return _internal_mutable_os_version();
+}
+inline const std::string& ChildStatusReportRequest::_internal_os_version() const {
+  return os_version_.GetNoArena();
+}
+inline void ChildStatusReportRequest::_internal_set_os_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChildStatusReportRequest::set_os_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  os_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChildStatusReportRequest.os_version)
+}
+inline void ChildStatusReportRequest::set_os_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChildStatusReportRequest.os_version)
+}
+inline void ChildStatusReportRequest::set_os_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  os_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChildStatusReportRequest.os_version)
+}
+inline std::string* ChildStatusReportRequest::_internal_mutable_os_version() {
+  _has_bits_[0] |= 0x00000004u;
+  return os_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChildStatusReportRequest::release_os_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChildStatusReportRequest.os_version)
+  if (!_internal_has_os_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return os_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChildStatusReportRequest::set_allocated_os_version(std::string* os_version) {
+  if (os_version != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  os_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), os_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChildStatusReportRequest.os_version)
+}
+
+// optional string boot_mode = 7;
+inline bool ChildStatusReportRequest::_internal_has_boot_mode() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool ChildStatusReportRequest::has_boot_mode() const {
+  return _internal_has_boot_mode();
+}
+inline void ChildStatusReportRequest::clear_boot_mode() {
+  boot_mode_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& ChildStatusReportRequest::boot_mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.boot_mode)
+  return _internal_boot_mode();
+}
+inline void ChildStatusReportRequest::set_boot_mode(const std::string& value) {
+  _internal_set_boot_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChildStatusReportRequest.boot_mode)
+}
+inline std::string* ChildStatusReportRequest::mutable_boot_mode() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportRequest.boot_mode)
+  return _internal_mutable_boot_mode();
+}
+inline const std::string& ChildStatusReportRequest::_internal_boot_mode() const {
+  return boot_mode_.GetNoArena();
+}
+inline void ChildStatusReportRequest::_internal_set_boot_mode(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  boot_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChildStatusReportRequest::set_boot_mode(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  boot_mode_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChildStatusReportRequest.boot_mode)
+}
+inline void ChildStatusReportRequest::set_boot_mode(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  boot_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChildStatusReportRequest.boot_mode)
+}
+inline void ChildStatusReportRequest::set_boot_mode(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  boot_mode_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChildStatusReportRequest.boot_mode)
+}
+inline std::string* ChildStatusReportRequest::_internal_mutable_boot_mode() {
+  _has_bits_[0] |= 0x00000008u;
+  return boot_mode_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChildStatusReportRequest::release_boot_mode() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChildStatusReportRequest.boot_mode)
+  if (!_internal_has_boot_mode()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return boot_mode_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChildStatusReportRequest::set_allocated_boot_mode(std::string* boot_mode) {
+  if (boot_mode != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  boot_mode_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), boot_mode);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChildStatusReportRequest.boot_mode)
+}
+
+// repeated .enterprise_management.AppActivity app_activity = 8;
+inline int ChildStatusReportRequest::_internal_app_activity_size() const {
+  return app_activity_.size();
+}
+inline int ChildStatusReportRequest::app_activity_size() const {
+  return _internal_app_activity_size();
+}
+inline void ChildStatusReportRequest::clear_app_activity() {
+  app_activity_.Clear();
+}
+inline ::enterprise_management::AppActivity* ChildStatusReportRequest::mutable_app_activity(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportRequest.app_activity)
+  return app_activity_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppActivity >*
+ChildStatusReportRequest::mutable_app_activity() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChildStatusReportRequest.app_activity)
+  return &app_activity_;
+}
+inline const ::enterprise_management::AppActivity& ChildStatusReportRequest::_internal_app_activity(int index) const {
+  return app_activity_.Get(index);
+}
+inline const ::enterprise_management::AppActivity& ChildStatusReportRequest::app_activity(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.app_activity)
+  return _internal_app_activity(index);
+}
+inline ::enterprise_management::AppActivity* ChildStatusReportRequest::_internal_add_app_activity() {
+  return app_activity_.Add();
+}
+inline ::enterprise_management::AppActivity* ChildStatusReportRequest::add_app_activity() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChildStatusReportRequest.app_activity)
+  return _internal_add_app_activity();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::AppActivity >&
+ChildStatusReportRequest::app_activity() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChildStatusReportRequest.app_activity)
+  return app_activity_;
+}
+
+// repeated .enterprise_management.App hidden_app = 9;
+inline int ChildStatusReportRequest::_internal_hidden_app_size() const {
+  return hidden_app_.size();
+}
+inline int ChildStatusReportRequest::hidden_app_size() const {
+  return _internal_hidden_app_size();
+}
+inline void ChildStatusReportRequest::clear_hidden_app() {
+  hidden_app_.Clear();
+}
+inline ::enterprise_management::App* ChildStatusReportRequest::mutable_hidden_app(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportRequest.hidden_app)
+  return hidden_app_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::App >*
+ChildStatusReportRequest::mutable_hidden_app() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.ChildStatusReportRequest.hidden_app)
+  return &hidden_app_;
+}
+inline const ::enterprise_management::App& ChildStatusReportRequest::_internal_hidden_app(int index) const {
+  return hidden_app_.Get(index);
+}
+inline const ::enterprise_management::App& ChildStatusReportRequest::hidden_app(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportRequest.hidden_app)
+  return _internal_hidden_app(index);
+}
+inline ::enterprise_management::App* ChildStatusReportRequest::_internal_add_hidden_app() {
+  return hidden_app_.Add();
+}
+inline ::enterprise_management::App* ChildStatusReportRequest::add_hidden_app() {
+  // @@protoc_insertion_point(field_add:enterprise_management.ChildStatusReportRequest.hidden_app)
+  return _internal_add_hidden_app();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::enterprise_management::App >&
+ChildStatusReportRequest::hidden_app() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.ChildStatusReportRequest.hidden_app)
+  return hidden_app_;
+}
+
+// -------------------------------------------------------------------
+
+// ChildStatusReportResponse
+
+// optional int32 error_code = 1;
+inline bool ChildStatusReportResponse::_internal_has_error_code() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ChildStatusReportResponse::has_error_code() const {
+  return _internal_has_error_code();
+}
+inline void ChildStatusReportResponse::clear_error_code() {
+  error_code_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ChildStatusReportResponse::_internal_error_code() const {
+  return error_code_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ChildStatusReportResponse::error_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportResponse.error_code)
+  return _internal_error_code();
+}
+inline void ChildStatusReportResponse::_internal_set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  error_code_ = value;
+}
+inline void ChildStatusReportResponse::set_error_code(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_error_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChildStatusReportResponse.error_code)
+}
+
+// optional string error_message = 2;
+inline bool ChildStatusReportResponse::_internal_has_error_message() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ChildStatusReportResponse::has_error_message() const {
+  return _internal_has_error_message();
+}
+inline void ChildStatusReportResponse::clear_error_message() {
+  error_message_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ChildStatusReportResponse::error_message() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ChildStatusReportResponse.error_message)
+  return _internal_error_message();
+}
+inline void ChildStatusReportResponse::set_error_message(const std::string& value) {
+  _internal_set_error_message(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ChildStatusReportResponse.error_message)
+}
+inline std::string* ChildStatusReportResponse::mutable_error_message() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ChildStatusReportResponse.error_message)
+  return _internal_mutable_error_message();
+}
+inline const std::string& ChildStatusReportResponse::_internal_error_message() const {
+  return error_message_.GetNoArena();
+}
+inline void ChildStatusReportResponse::_internal_set_error_message(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ChildStatusReportResponse::set_error_message(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ChildStatusReportResponse.error_message)
+}
+inline void ChildStatusReportResponse::set_error_message(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ChildStatusReportResponse.error_message)
+}
+inline void ChildStatusReportResponse::set_error_message(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ChildStatusReportResponse.error_message)
+}
+inline std::string* ChildStatusReportResponse::_internal_mutable_error_message() {
+  _has_bits_[0] |= 0x00000001u;
+  return error_message_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ChildStatusReportResponse::release_error_message() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ChildStatusReportResponse.error_message)
+  if (!_internal_has_error_message()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return error_message_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ChildStatusReportResponse::set_allocated_error_message(std::string* error_message) {
+  if (error_message != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  error_message_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), error_message);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ChildStatusReportResponse.error_message)
+}
+
+// -------------------------------------------------------------------
+
+// StartCsrRequest
+
+// -------------------------------------------------------------------
+
+// StartCsrResponse
+
+// optional string invalidation_topic = 1;
+inline bool StartCsrResponse::_internal_has_invalidation_topic() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool StartCsrResponse::has_invalidation_topic() const {
+  return _internal_has_invalidation_topic();
+}
+inline void StartCsrResponse::clear_invalidation_topic() {
+  invalidation_topic_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& StartCsrResponse::invalidation_topic() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StartCsrResponse.invalidation_topic)
+  return _internal_invalidation_topic();
+}
+inline void StartCsrResponse::set_invalidation_topic(const std::string& value) {
+  _internal_set_invalidation_topic(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StartCsrResponse.invalidation_topic)
+}
+inline std::string* StartCsrResponse::mutable_invalidation_topic() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StartCsrResponse.invalidation_topic)
+  return _internal_mutable_invalidation_topic();
+}
+inline const std::string& StartCsrResponse::_internal_invalidation_topic() const {
+  return invalidation_topic_.GetNoArena();
+}
+inline void StartCsrResponse::_internal_set_invalidation_topic(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void StartCsrResponse::set_invalidation_topic(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  invalidation_topic_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.StartCsrResponse.invalidation_topic)
+}
+inline void StartCsrResponse::set_invalidation_topic(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.StartCsrResponse.invalidation_topic)
+}
+inline void StartCsrResponse::set_invalidation_topic(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  invalidation_topic_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.StartCsrResponse.invalidation_topic)
+}
+inline std::string* StartCsrResponse::_internal_mutable_invalidation_topic() {
+  _has_bits_[0] |= 0x00000001u;
+  return invalidation_topic_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* StartCsrResponse::release_invalidation_topic() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StartCsrResponse.invalidation_topic)
+  if (!_internal_has_invalidation_topic()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return invalidation_topic_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void StartCsrResponse::set_allocated_invalidation_topic(std::string* invalidation_topic) {
+  if (invalidation_topic != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  invalidation_topic_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), invalidation_topic);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StartCsrResponse.invalidation_topic)
+}
+
+// optional bytes va_challenge = 2;
+inline bool StartCsrResponse::_internal_has_va_challenge() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool StartCsrResponse::has_va_challenge() const {
+  return _internal_has_va_challenge();
+}
+inline void StartCsrResponse::clear_va_challenge() {
+  va_challenge_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& StartCsrResponse::va_challenge() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StartCsrResponse.va_challenge)
+  return _internal_va_challenge();
+}
+inline void StartCsrResponse::set_va_challenge(const std::string& value) {
+  _internal_set_va_challenge(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StartCsrResponse.va_challenge)
+}
+inline std::string* StartCsrResponse::mutable_va_challenge() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StartCsrResponse.va_challenge)
+  return _internal_mutable_va_challenge();
+}
+inline const std::string& StartCsrResponse::_internal_va_challenge() const {
+  return va_challenge_.GetNoArena();
+}
+inline void StartCsrResponse::_internal_set_va_challenge(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  va_challenge_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void StartCsrResponse::set_va_challenge(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  va_challenge_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.StartCsrResponse.va_challenge)
+}
+inline void StartCsrResponse::set_va_challenge(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  va_challenge_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.StartCsrResponse.va_challenge)
+}
+inline void StartCsrResponse::set_va_challenge(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  va_challenge_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.StartCsrResponse.va_challenge)
+}
+inline std::string* StartCsrResponse::_internal_mutable_va_challenge() {
+  _has_bits_[0] |= 0x00000002u;
+  return va_challenge_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* StartCsrResponse::release_va_challenge() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StartCsrResponse.va_challenge)
+  if (!_internal_has_va_challenge()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return va_challenge_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void StartCsrResponse::set_allocated_va_challenge(std::string* va_challenge) {
+  if (va_challenge != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  va_challenge_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), va_challenge);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StartCsrResponse.va_challenge)
+}
+
+// optional .enterprise_management.HashingAlgorithm hashing_algorithm = 5;
+inline bool StartCsrResponse::_internal_has_hashing_algorithm() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool StartCsrResponse::has_hashing_algorithm() const {
+  return _internal_has_hashing_algorithm();
+}
+inline void StartCsrResponse::clear_hashing_algorithm() {
+  hashing_algorithm_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::enterprise_management::HashingAlgorithm StartCsrResponse::_internal_hashing_algorithm() const {
+  return static_cast< ::enterprise_management::HashingAlgorithm >(hashing_algorithm_);
+}
+inline ::enterprise_management::HashingAlgorithm StartCsrResponse::hashing_algorithm() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StartCsrResponse.hashing_algorithm)
+  return _internal_hashing_algorithm();
+}
+inline void StartCsrResponse::_internal_set_hashing_algorithm(::enterprise_management::HashingAlgorithm value) {
+  assert(::enterprise_management::HashingAlgorithm_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  hashing_algorithm_ = value;
+}
+inline void StartCsrResponse::set_hashing_algorithm(::enterprise_management::HashingAlgorithm value) {
+  _internal_set_hashing_algorithm(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StartCsrResponse.hashing_algorithm)
+}
+
+// optional .enterprise_management.SigningAlgorithm signing_algorithm = 3;
+inline bool StartCsrResponse::_internal_has_signing_algorithm() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool StartCsrResponse::has_signing_algorithm() const {
+  return _internal_has_signing_algorithm();
+}
+inline void StartCsrResponse::clear_signing_algorithm() {
+  signing_algorithm_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::SigningAlgorithm StartCsrResponse::_internal_signing_algorithm() const {
+  return static_cast< ::enterprise_management::SigningAlgorithm >(signing_algorithm_);
+}
+inline ::enterprise_management::SigningAlgorithm StartCsrResponse::signing_algorithm() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StartCsrResponse.signing_algorithm)
+  return _internal_signing_algorithm();
+}
+inline void StartCsrResponse::_internal_set_signing_algorithm(::enterprise_management::SigningAlgorithm value) {
+  assert(::enterprise_management::SigningAlgorithm_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  signing_algorithm_ = value;
+}
+inline void StartCsrResponse::set_signing_algorithm(::enterprise_management::SigningAlgorithm value) {
+  _internal_set_signing_algorithm(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StartCsrResponse.signing_algorithm)
+}
+
+// optional bytes data_to_sign = 4;
+inline bool StartCsrResponse::_internal_has_data_to_sign() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool StartCsrResponse::has_data_to_sign() const {
+  return _internal_has_data_to_sign();
+}
+inline void StartCsrResponse::clear_data_to_sign() {
+  data_to_sign_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& StartCsrResponse::data_to_sign() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StartCsrResponse.data_to_sign)
+  return _internal_data_to_sign();
+}
+inline void StartCsrResponse::set_data_to_sign(const std::string& value) {
+  _internal_set_data_to_sign(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StartCsrResponse.data_to_sign)
+}
+inline std::string* StartCsrResponse::mutable_data_to_sign() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StartCsrResponse.data_to_sign)
+  return _internal_mutable_data_to_sign();
+}
+inline const std::string& StartCsrResponse::_internal_data_to_sign() const {
+  return data_to_sign_.GetNoArena();
+}
+inline void StartCsrResponse::_internal_set_data_to_sign(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  data_to_sign_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void StartCsrResponse::set_data_to_sign(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  data_to_sign_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.StartCsrResponse.data_to_sign)
+}
+inline void StartCsrResponse::set_data_to_sign(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  data_to_sign_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.StartCsrResponse.data_to_sign)
+}
+inline void StartCsrResponse::set_data_to_sign(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  data_to_sign_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.StartCsrResponse.data_to_sign)
+}
+inline std::string* StartCsrResponse::_internal_mutable_data_to_sign() {
+  _has_bits_[0] |= 0x00000004u;
+  return data_to_sign_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* StartCsrResponse::release_data_to_sign() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StartCsrResponse.data_to_sign)
+  if (!_internal_has_data_to_sign()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return data_to_sign_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void StartCsrResponse::set_allocated_data_to_sign(std::string* data_to_sign) {
+  if (data_to_sign != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  data_to_sign_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), data_to_sign);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StartCsrResponse.data_to_sign)
+}
+
+// -------------------------------------------------------------------
+
+// FinishCsrRequest
+
+// optional bytes va_challenge_response = 1;
+inline bool FinishCsrRequest::_internal_has_va_challenge_response() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool FinishCsrRequest::has_va_challenge_response() const {
+  return _internal_has_va_challenge_response();
+}
+inline void FinishCsrRequest::clear_va_challenge_response() {
+  va_challenge_response_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& FinishCsrRequest::va_challenge_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.FinishCsrRequest.va_challenge_response)
+  return _internal_va_challenge_response();
+}
+inline void FinishCsrRequest::set_va_challenge_response(const std::string& value) {
+  _internal_set_va_challenge_response(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.FinishCsrRequest.va_challenge_response)
+}
+inline std::string* FinishCsrRequest::mutable_va_challenge_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.FinishCsrRequest.va_challenge_response)
+  return _internal_mutable_va_challenge_response();
+}
+inline const std::string& FinishCsrRequest::_internal_va_challenge_response() const {
+  return va_challenge_response_.GetNoArena();
+}
+inline void FinishCsrRequest::_internal_set_va_challenge_response(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  va_challenge_response_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void FinishCsrRequest::set_va_challenge_response(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  va_challenge_response_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.FinishCsrRequest.va_challenge_response)
+}
+inline void FinishCsrRequest::set_va_challenge_response(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  va_challenge_response_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.FinishCsrRequest.va_challenge_response)
+}
+inline void FinishCsrRequest::set_va_challenge_response(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  va_challenge_response_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.FinishCsrRequest.va_challenge_response)
+}
+inline std::string* FinishCsrRequest::_internal_mutable_va_challenge_response() {
+  _has_bits_[0] |= 0x00000001u;
+  return va_challenge_response_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* FinishCsrRequest::release_va_challenge_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.FinishCsrRequest.va_challenge_response)
+  if (!_internal_has_va_challenge_response()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return va_challenge_response_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void FinishCsrRequest::set_allocated_va_challenge_response(std::string* va_challenge_response) {
+  if (va_challenge_response != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  va_challenge_response_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), va_challenge_response);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.FinishCsrRequest.va_challenge_response)
+}
+
+// optional bytes signature = 2;
+inline bool FinishCsrRequest::_internal_has_signature() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool FinishCsrRequest::has_signature() const {
+  return _internal_has_signature();
+}
+inline void FinishCsrRequest::clear_signature() {
+  signature_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& FinishCsrRequest::signature() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.FinishCsrRequest.signature)
+  return _internal_signature();
+}
+inline void FinishCsrRequest::set_signature(const std::string& value) {
+  _internal_set_signature(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.FinishCsrRequest.signature)
+}
+inline std::string* FinishCsrRequest::mutable_signature() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.FinishCsrRequest.signature)
+  return _internal_mutable_signature();
+}
+inline const std::string& FinishCsrRequest::_internal_signature() const {
+  return signature_.GetNoArena();
+}
+inline void FinishCsrRequest::_internal_set_signature(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void FinishCsrRequest::set_signature(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.FinishCsrRequest.signature)
+}
+inline void FinishCsrRequest::set_signature(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.FinishCsrRequest.signature)
+}
+inline void FinishCsrRequest::set_signature(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.FinishCsrRequest.signature)
+}
+inline std::string* FinishCsrRequest::_internal_mutable_signature() {
+  _has_bits_[0] |= 0x00000002u;
+  return signature_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* FinishCsrRequest::release_signature() {
+  // @@protoc_insertion_point(field_release:enterprise_management.FinishCsrRequest.signature)
+  if (!_internal_has_signature()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return signature_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void FinishCsrRequest::set_allocated_signature(std::string* signature) {
+  if (signature != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  signature_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), signature);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.FinishCsrRequest.signature)
+}
+
+// -------------------------------------------------------------------
+
+// FinishCsrResponse
+
+// -------------------------------------------------------------------
+
+// DownloadCertRequest
+
+// -------------------------------------------------------------------
+
+// DownloadCertResponse
+
+// optional string pem_encoded_certificate = 1;
+inline bool DownloadCertResponse::_internal_has_pem_encoded_certificate() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DownloadCertResponse::has_pem_encoded_certificate() const {
+  return _internal_has_pem_encoded_certificate();
+}
+inline void DownloadCertResponse::clear_pem_encoded_certificate() {
+  pem_encoded_certificate_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DownloadCertResponse::pem_encoded_certificate() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DownloadCertResponse.pem_encoded_certificate)
+  return _internal_pem_encoded_certificate();
+}
+inline void DownloadCertResponse::set_pem_encoded_certificate(const std::string& value) {
+  _internal_set_pem_encoded_certificate(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DownloadCertResponse.pem_encoded_certificate)
+}
+inline std::string* DownloadCertResponse::mutable_pem_encoded_certificate() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DownloadCertResponse.pem_encoded_certificate)
+  return _internal_mutable_pem_encoded_certificate();
+}
+inline const std::string& DownloadCertResponse::_internal_pem_encoded_certificate() const {
+  return pem_encoded_certificate_.GetNoArena();
+}
+inline void DownloadCertResponse::_internal_set_pem_encoded_certificate(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  pem_encoded_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DownloadCertResponse::set_pem_encoded_certificate(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  pem_encoded_certificate_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DownloadCertResponse.pem_encoded_certificate)
+}
+inline void DownloadCertResponse::set_pem_encoded_certificate(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  pem_encoded_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DownloadCertResponse.pem_encoded_certificate)
+}
+inline void DownloadCertResponse::set_pem_encoded_certificate(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  pem_encoded_certificate_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DownloadCertResponse.pem_encoded_certificate)
+}
+inline std::string* DownloadCertResponse::_internal_mutable_pem_encoded_certificate() {
+  _has_bits_[0] |= 0x00000001u;
+  return pem_encoded_certificate_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DownloadCertResponse::release_pem_encoded_certificate() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DownloadCertResponse.pem_encoded_certificate)
+  if (!_internal_has_pem_encoded_certificate()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return pem_encoded_certificate_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DownloadCertResponse::set_allocated_pem_encoded_certificate(std::string* pem_encoded_certificate) {
+  if (pem_encoded_certificate != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  pem_encoded_certificate_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), pem_encoded_certificate);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DownloadCertResponse.pem_encoded_certificate)
+}
+
+// -------------------------------------------------------------------
+
+// ClientCertificateProvisioningRequest
+
+// optional string certificate_scope = 1;
+inline bool ClientCertificateProvisioningRequest::_internal_has_certificate_scope() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ClientCertificateProvisioningRequest::has_certificate_scope() const {
+  return _internal_has_certificate_scope();
+}
+inline void ClientCertificateProvisioningRequest::clear_certificate_scope() {
+  certificate_scope_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& ClientCertificateProvisioningRequest::certificate_scope() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningRequest.certificate_scope)
+  return _internal_certificate_scope();
+}
+inline void ClientCertificateProvisioningRequest::set_certificate_scope(const std::string& value) {
+  _internal_set_certificate_scope(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ClientCertificateProvisioningRequest.certificate_scope)
+}
+inline std::string* ClientCertificateProvisioningRequest::mutable_certificate_scope() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningRequest.certificate_scope)
+  return _internal_mutable_certificate_scope();
+}
+inline const std::string& ClientCertificateProvisioningRequest::_internal_certificate_scope() const {
+  return certificate_scope_.GetNoArena();
+}
+inline void ClientCertificateProvisioningRequest::_internal_set_certificate_scope(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  certificate_scope_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ClientCertificateProvisioningRequest::set_certificate_scope(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  certificate_scope_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ClientCertificateProvisioningRequest.certificate_scope)
+}
+inline void ClientCertificateProvisioningRequest::set_certificate_scope(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  certificate_scope_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ClientCertificateProvisioningRequest.certificate_scope)
+}
+inline void ClientCertificateProvisioningRequest::set_certificate_scope(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  certificate_scope_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ClientCertificateProvisioningRequest.certificate_scope)
+}
+inline std::string* ClientCertificateProvisioningRequest::_internal_mutable_certificate_scope() {
+  _has_bits_[0] |= 0x00000001u;
+  return certificate_scope_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ClientCertificateProvisioningRequest::release_certificate_scope() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningRequest.certificate_scope)
+  if (!_internal_has_certificate_scope()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return certificate_scope_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ClientCertificateProvisioningRequest::set_allocated_certificate_scope(std::string* certificate_scope) {
+  if (certificate_scope != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  certificate_scope_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), certificate_scope);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningRequest.certificate_scope)
+}
+
+// optional string cert_profile_id = 2;
+inline bool ClientCertificateProvisioningRequest::_internal_has_cert_profile_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ClientCertificateProvisioningRequest::has_cert_profile_id() const {
+  return _internal_has_cert_profile_id();
+}
+inline void ClientCertificateProvisioningRequest::clear_cert_profile_id() {
+  cert_profile_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& ClientCertificateProvisioningRequest::cert_profile_id() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningRequest.cert_profile_id)
+  return _internal_cert_profile_id();
+}
+inline void ClientCertificateProvisioningRequest::set_cert_profile_id(const std::string& value) {
+  _internal_set_cert_profile_id(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ClientCertificateProvisioningRequest.cert_profile_id)
+}
+inline std::string* ClientCertificateProvisioningRequest::mutable_cert_profile_id() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningRequest.cert_profile_id)
+  return _internal_mutable_cert_profile_id();
+}
+inline const std::string& ClientCertificateProvisioningRequest::_internal_cert_profile_id() const {
+  return cert_profile_id_.GetNoArena();
+}
+inline void ClientCertificateProvisioningRequest::_internal_set_cert_profile_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  cert_profile_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ClientCertificateProvisioningRequest::set_cert_profile_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  cert_profile_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ClientCertificateProvisioningRequest.cert_profile_id)
+}
+inline void ClientCertificateProvisioningRequest::set_cert_profile_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  cert_profile_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ClientCertificateProvisioningRequest.cert_profile_id)
+}
+inline void ClientCertificateProvisioningRequest::set_cert_profile_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  cert_profile_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ClientCertificateProvisioningRequest.cert_profile_id)
+}
+inline std::string* ClientCertificateProvisioningRequest::_internal_mutable_cert_profile_id() {
+  _has_bits_[0] |= 0x00000002u;
+  return cert_profile_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ClientCertificateProvisioningRequest::release_cert_profile_id() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningRequest.cert_profile_id)
+  if (!_internal_has_cert_profile_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return cert_profile_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ClientCertificateProvisioningRequest::set_allocated_cert_profile_id(std::string* cert_profile_id) {
+  if (cert_profile_id != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  cert_profile_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), cert_profile_id);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningRequest.cert_profile_id)
+}
+
+// optional bytes public_key = 3;
+inline bool ClientCertificateProvisioningRequest::_internal_has_public_key() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ClientCertificateProvisioningRequest::has_public_key() const {
+  return _internal_has_public_key();
+}
+inline void ClientCertificateProvisioningRequest::clear_public_key() {
+  public_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& ClientCertificateProvisioningRequest::public_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningRequest.public_key)
+  return _internal_public_key();
+}
+inline void ClientCertificateProvisioningRequest::set_public_key(const std::string& value) {
+  _internal_set_public_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ClientCertificateProvisioningRequest.public_key)
+}
+inline std::string* ClientCertificateProvisioningRequest::mutable_public_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningRequest.public_key)
+  return _internal_mutable_public_key();
+}
+inline const std::string& ClientCertificateProvisioningRequest::_internal_public_key() const {
+  return public_key_.GetNoArena();
+}
+inline void ClientCertificateProvisioningRequest::_internal_set_public_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ClientCertificateProvisioningRequest::set_public_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  public_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ClientCertificateProvisioningRequest.public_key)
+}
+inline void ClientCertificateProvisioningRequest::set_public_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ClientCertificateProvisioningRequest.public_key)
+}
+inline void ClientCertificateProvisioningRequest::set_public_key(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ClientCertificateProvisioningRequest.public_key)
+}
+inline std::string* ClientCertificateProvisioningRequest::_internal_mutable_public_key() {
+  _has_bits_[0] |= 0x00000004u;
+  return public_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ClientCertificateProvisioningRequest::release_public_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningRequest.public_key)
+  if (!_internal_has_public_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return public_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ClientCertificateProvisioningRequest::set_allocated_public_key(std::string* public_key) {
+  if (public_key != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  public_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), public_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningRequest.public_key)
+}
+
+// optional string device_dm_token = 4;
+inline bool ClientCertificateProvisioningRequest::_internal_has_device_dm_token() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool ClientCertificateProvisioningRequest::has_device_dm_token() const {
+  return _internal_has_device_dm_token();
+}
+inline void ClientCertificateProvisioningRequest::clear_device_dm_token() {
+  device_dm_token_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& ClientCertificateProvisioningRequest::device_dm_token() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningRequest.device_dm_token)
+  return _internal_device_dm_token();
+}
+inline void ClientCertificateProvisioningRequest::set_device_dm_token(const std::string& value) {
+  _internal_set_device_dm_token(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ClientCertificateProvisioningRequest.device_dm_token)
+}
+inline std::string* ClientCertificateProvisioningRequest::mutable_device_dm_token() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningRequest.device_dm_token)
+  return _internal_mutable_device_dm_token();
+}
+inline const std::string& ClientCertificateProvisioningRequest::_internal_device_dm_token() const {
+  return device_dm_token_.GetNoArena();
+}
+inline void ClientCertificateProvisioningRequest::_internal_set_device_dm_token(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  device_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ClientCertificateProvisioningRequest::set_device_dm_token(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  device_dm_token_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ClientCertificateProvisioningRequest.device_dm_token)
+}
+inline void ClientCertificateProvisioningRequest::set_device_dm_token(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  device_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ClientCertificateProvisioningRequest.device_dm_token)
+}
+inline void ClientCertificateProvisioningRequest::set_device_dm_token(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  device_dm_token_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ClientCertificateProvisioningRequest.device_dm_token)
+}
+inline std::string* ClientCertificateProvisioningRequest::_internal_mutable_device_dm_token() {
+  _has_bits_[0] |= 0x00000008u;
+  return device_dm_token_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ClientCertificateProvisioningRequest::release_device_dm_token() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningRequest.device_dm_token)
+  if (!_internal_has_device_dm_token()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return device_dm_token_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ClientCertificateProvisioningRequest::set_allocated_device_dm_token(std::string* device_dm_token) {
+  if (device_dm_token != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  device_dm_token_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_dm_token);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningRequest.device_dm_token)
+}
+
+// optional .enterprise_management.StartCsrRequest start_csr_request = 5;
+inline bool ClientCertificateProvisioningRequest::_internal_has_start_csr_request() const {
+  return request_case() == kStartCsrRequest;
+}
+inline bool ClientCertificateProvisioningRequest::has_start_csr_request() const {
+  return _internal_has_start_csr_request();
+}
+inline void ClientCertificateProvisioningRequest::set_has_start_csr_request() {
+  _oneof_case_[0] = kStartCsrRequest;
+}
+inline void ClientCertificateProvisioningRequest::clear_start_csr_request() {
+  if (_internal_has_start_csr_request()) {
+    delete request_.start_csr_request_;
+    clear_has_request();
+  }
+}
+inline ::enterprise_management::StartCsrRequest* ClientCertificateProvisioningRequest::release_start_csr_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningRequest.start_csr_request)
+  if (_internal_has_start_csr_request()) {
+    clear_has_request();
+      ::enterprise_management::StartCsrRequest* temp = request_.start_csr_request_;
+    request_.start_csr_request_ = nullptr;
+    return temp;
+  } else {
+    return nullptr;
+  }
+}
+inline const ::enterprise_management::StartCsrRequest& ClientCertificateProvisioningRequest::_internal_start_csr_request() const {
+  return _internal_has_start_csr_request()
+      ? *request_.start_csr_request_
+      : *reinterpret_cast< ::enterprise_management::StartCsrRequest*>(&::enterprise_management::_StartCsrRequest_default_instance_);
+}
+inline const ::enterprise_management::StartCsrRequest& ClientCertificateProvisioningRequest::start_csr_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningRequest.start_csr_request)
+  return _internal_start_csr_request();
+}
+inline ::enterprise_management::StartCsrRequest* ClientCertificateProvisioningRequest::_internal_mutable_start_csr_request() {
+  if (!_internal_has_start_csr_request()) {
+    clear_request();
+    set_has_start_csr_request();
+    request_.start_csr_request_ = CreateMaybeMessage< ::enterprise_management::StartCsrRequest >(
+        GetArenaNoVirtual());
+  }
+  return request_.start_csr_request_;
+}
+inline ::enterprise_management::StartCsrRequest* ClientCertificateProvisioningRequest::mutable_start_csr_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningRequest.start_csr_request)
+  return _internal_mutable_start_csr_request();
+}
+
+// optional .enterprise_management.FinishCsrRequest finish_csr_request = 6;
+inline bool ClientCertificateProvisioningRequest::_internal_has_finish_csr_request() const {
+  return request_case() == kFinishCsrRequest;
+}
+inline bool ClientCertificateProvisioningRequest::has_finish_csr_request() const {
+  return _internal_has_finish_csr_request();
+}
+inline void ClientCertificateProvisioningRequest::set_has_finish_csr_request() {
+  _oneof_case_[0] = kFinishCsrRequest;
+}
+inline void ClientCertificateProvisioningRequest::clear_finish_csr_request() {
+  if (_internal_has_finish_csr_request()) {
+    delete request_.finish_csr_request_;
+    clear_has_request();
+  }
+}
+inline ::enterprise_management::FinishCsrRequest* ClientCertificateProvisioningRequest::release_finish_csr_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningRequest.finish_csr_request)
+  if (_internal_has_finish_csr_request()) {
+    clear_has_request();
+      ::enterprise_management::FinishCsrRequest* temp = request_.finish_csr_request_;
+    request_.finish_csr_request_ = nullptr;
+    return temp;
+  } else {
+    return nullptr;
+  }
+}
+inline const ::enterprise_management::FinishCsrRequest& ClientCertificateProvisioningRequest::_internal_finish_csr_request() const {
+  return _internal_has_finish_csr_request()
+      ? *request_.finish_csr_request_
+      : *reinterpret_cast< ::enterprise_management::FinishCsrRequest*>(&::enterprise_management::_FinishCsrRequest_default_instance_);
+}
+inline const ::enterprise_management::FinishCsrRequest& ClientCertificateProvisioningRequest::finish_csr_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningRequest.finish_csr_request)
+  return _internal_finish_csr_request();
+}
+inline ::enterprise_management::FinishCsrRequest* ClientCertificateProvisioningRequest::_internal_mutable_finish_csr_request() {
+  if (!_internal_has_finish_csr_request()) {
+    clear_request();
+    set_has_finish_csr_request();
+    request_.finish_csr_request_ = CreateMaybeMessage< ::enterprise_management::FinishCsrRequest >(
+        GetArenaNoVirtual());
+  }
+  return request_.finish_csr_request_;
+}
+inline ::enterprise_management::FinishCsrRequest* ClientCertificateProvisioningRequest::mutable_finish_csr_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningRequest.finish_csr_request)
+  return _internal_mutable_finish_csr_request();
+}
+
+// optional .enterprise_management.DownloadCertRequest download_cert_request = 7;
+inline bool ClientCertificateProvisioningRequest::_internal_has_download_cert_request() const {
+  return request_case() == kDownloadCertRequest;
+}
+inline bool ClientCertificateProvisioningRequest::has_download_cert_request() const {
+  return _internal_has_download_cert_request();
+}
+inline void ClientCertificateProvisioningRequest::set_has_download_cert_request() {
+  _oneof_case_[0] = kDownloadCertRequest;
+}
+inline void ClientCertificateProvisioningRequest::clear_download_cert_request() {
+  if (_internal_has_download_cert_request()) {
+    delete request_.download_cert_request_;
+    clear_has_request();
+  }
+}
+inline ::enterprise_management::DownloadCertRequest* ClientCertificateProvisioningRequest::release_download_cert_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningRequest.download_cert_request)
+  if (_internal_has_download_cert_request()) {
+    clear_has_request();
+      ::enterprise_management::DownloadCertRequest* temp = request_.download_cert_request_;
+    request_.download_cert_request_ = nullptr;
+    return temp;
+  } else {
+    return nullptr;
+  }
+}
+inline const ::enterprise_management::DownloadCertRequest& ClientCertificateProvisioningRequest::_internal_download_cert_request() const {
+  return _internal_has_download_cert_request()
+      ? *request_.download_cert_request_
+      : *reinterpret_cast< ::enterprise_management::DownloadCertRequest*>(&::enterprise_management::_DownloadCertRequest_default_instance_);
+}
+inline const ::enterprise_management::DownloadCertRequest& ClientCertificateProvisioningRequest::download_cert_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningRequest.download_cert_request)
+  return _internal_download_cert_request();
+}
+inline ::enterprise_management::DownloadCertRequest* ClientCertificateProvisioningRequest::_internal_mutable_download_cert_request() {
+  if (!_internal_has_download_cert_request()) {
+    clear_request();
+    set_has_download_cert_request();
+    request_.download_cert_request_ = CreateMaybeMessage< ::enterprise_management::DownloadCertRequest >(
+        GetArenaNoVirtual());
+  }
+  return request_.download_cert_request_;
+}
+inline ::enterprise_management::DownloadCertRequest* ClientCertificateProvisioningRequest::mutable_download_cert_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningRequest.download_cert_request)
+  return _internal_mutable_download_cert_request();
+}
+
+// optional bytes policy_version = 8;
+inline bool ClientCertificateProvisioningRequest::_internal_has_policy_version() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool ClientCertificateProvisioningRequest::has_policy_version() const {
+  return _internal_has_policy_version();
+}
+inline void ClientCertificateProvisioningRequest::clear_policy_version() {
+  policy_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const std::string& ClientCertificateProvisioningRequest::policy_version() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningRequest.policy_version)
+  return _internal_policy_version();
+}
+inline void ClientCertificateProvisioningRequest::set_policy_version(const std::string& value) {
+  _internal_set_policy_version(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ClientCertificateProvisioningRequest.policy_version)
+}
+inline std::string* ClientCertificateProvisioningRequest::mutable_policy_version() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningRequest.policy_version)
+  return _internal_mutable_policy_version();
+}
+inline const std::string& ClientCertificateProvisioningRequest::_internal_policy_version() const {
+  return policy_version_.GetNoArena();
+}
+inline void ClientCertificateProvisioningRequest::_internal_set_policy_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void ClientCertificateProvisioningRequest::set_policy_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.ClientCertificateProvisioningRequest.policy_version)
+}
+inline void ClientCertificateProvisioningRequest::set_policy_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000010u;
+  policy_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.ClientCertificateProvisioningRequest.policy_version)
+}
+inline void ClientCertificateProvisioningRequest::set_policy_version(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000010u;
+  policy_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.ClientCertificateProvisioningRequest.policy_version)
+}
+inline std::string* ClientCertificateProvisioningRequest::_internal_mutable_policy_version() {
+  _has_bits_[0] |= 0x00000010u;
+  return policy_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* ClientCertificateProvisioningRequest::release_policy_version() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningRequest.policy_version)
+  if (!_internal_has_policy_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000010u;
+  return policy_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void ClientCertificateProvisioningRequest::set_allocated_policy_version(std::string* policy_version) {
+  if (policy_version != nullptr) {
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  policy_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), policy_version);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.ClientCertificateProvisioningRequest.policy_version)
+}
+
+inline bool ClientCertificateProvisioningRequest::has_request() const {
+  return request_case() != REQUEST_NOT_SET;
+}
+inline void ClientCertificateProvisioningRequest::clear_has_request() {
+  _oneof_case_[0] = REQUEST_NOT_SET;
+}
+inline ClientCertificateProvisioningRequest::RequestCase ClientCertificateProvisioningRequest::request_case() const {
+  return ClientCertificateProvisioningRequest::RequestCase(_oneof_case_[0]);
+}
+// -------------------------------------------------------------------
+
+// ClientCertificateProvisioningResponse
+
+// optional int64 try_again_later = 1;
+inline bool ClientCertificateProvisioningResponse::_internal_has_try_again_later() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool ClientCertificateProvisioningResponse::has_try_again_later() const {
+  return _internal_has_try_again_later();
+}
+inline void ClientCertificateProvisioningResponse::clear_try_again_later() {
+  try_again_later_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ClientCertificateProvisioningResponse::_internal_try_again_later() const {
+  return try_again_later_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 ClientCertificateProvisioningResponse::try_again_later() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningResponse.try_again_later)
+  return _internal_try_again_later();
+}
+inline void ClientCertificateProvisioningResponse::_internal_set_try_again_later(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  try_again_later_ = value;
+}
+inline void ClientCertificateProvisioningResponse::set_try_again_later(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_try_again_later(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.ClientCertificateProvisioningResponse.try_again_later)
+}
+
+// optional .enterprise_management.ClientCertificateProvisioningResponse.Error error = 2;
+inline bool ClientCertificateProvisioningResponse::_internal_has_error() const {
+  return response_case() == kError;
+}
+inline bool ClientCertificateProvisioningResponse::has_error() const {
+  return _internal_has_error();
+}
+inline void ClientCertificateProvisioningResponse::set_has_error() {
+  _oneof_case_[0] = kError;
+}
+inline void ClientCertificateProvisioningResponse::clear_error() {
+  if (_internal_has_error()) {
+    response_.error_ = 0;
+    clear_has_response();
+  }
+}
+inline ::enterprise_management::ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::_internal_error() const {
+  if (_internal_has_error()) {
+    return static_cast< ::enterprise_management::ClientCertificateProvisioningResponse_Error >(response_.error_);
+  }
+  return static_cast< ::enterprise_management::ClientCertificateProvisioningResponse_Error >(0);
+}
+inline ::enterprise_management::ClientCertificateProvisioningResponse_Error ClientCertificateProvisioningResponse::error() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningResponse.error)
+  return _internal_error();
+}
+inline void ClientCertificateProvisioningResponse::_internal_set_error(::enterprise_management::ClientCertificateProvisioningResponse_Error value) {
+  assert(::enterprise_management::ClientCertificateProvisioningResponse_Error_IsValid(value));
+  if (!_internal_has_error()) {
+    clear_response();
+    set_has_error();
+  }
+  response_.error_ = value;
+}
+inline void ClientCertificateProvisioningResponse::set_error(::enterprise_management::ClientCertificateProvisioningResponse_Error value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.ClientCertificateProvisioningResponse.error)
+  _internal_set_error(value);
+}
+
+// optional .enterprise_management.StartCsrResponse start_csr_response = 3;
+inline bool ClientCertificateProvisioningResponse::_internal_has_start_csr_response() const {
+  return response_case() == kStartCsrResponse;
+}
+inline bool ClientCertificateProvisioningResponse::has_start_csr_response() const {
+  return _internal_has_start_csr_response();
+}
+inline void ClientCertificateProvisioningResponse::set_has_start_csr_response() {
+  _oneof_case_[0] = kStartCsrResponse;
+}
+inline void ClientCertificateProvisioningResponse::clear_start_csr_response() {
+  if (_internal_has_start_csr_response()) {
+    delete response_.start_csr_response_;
+    clear_has_response();
+  }
+}
+inline ::enterprise_management::StartCsrResponse* ClientCertificateProvisioningResponse::release_start_csr_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningResponse.start_csr_response)
+  if (_internal_has_start_csr_response()) {
+    clear_has_response();
+      ::enterprise_management::StartCsrResponse* temp = response_.start_csr_response_;
+    response_.start_csr_response_ = nullptr;
+    return temp;
+  } else {
+    return nullptr;
+  }
+}
+inline const ::enterprise_management::StartCsrResponse& ClientCertificateProvisioningResponse::_internal_start_csr_response() const {
+  return _internal_has_start_csr_response()
+      ? *response_.start_csr_response_
+      : *reinterpret_cast< ::enterprise_management::StartCsrResponse*>(&::enterprise_management::_StartCsrResponse_default_instance_);
+}
+inline const ::enterprise_management::StartCsrResponse& ClientCertificateProvisioningResponse::start_csr_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningResponse.start_csr_response)
+  return _internal_start_csr_response();
+}
+inline ::enterprise_management::StartCsrResponse* ClientCertificateProvisioningResponse::_internal_mutable_start_csr_response() {
+  if (!_internal_has_start_csr_response()) {
+    clear_response();
+    set_has_start_csr_response();
+    response_.start_csr_response_ = CreateMaybeMessage< ::enterprise_management::StartCsrResponse >(
+        GetArenaNoVirtual());
+  }
+  return response_.start_csr_response_;
+}
+inline ::enterprise_management::StartCsrResponse* ClientCertificateProvisioningResponse::mutable_start_csr_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningResponse.start_csr_response)
+  return _internal_mutable_start_csr_response();
+}
+
+// optional .enterprise_management.FinishCsrResponse finish_csr_response = 4;
+inline bool ClientCertificateProvisioningResponse::_internal_has_finish_csr_response() const {
+  return response_case() == kFinishCsrResponse;
+}
+inline bool ClientCertificateProvisioningResponse::has_finish_csr_response() const {
+  return _internal_has_finish_csr_response();
+}
+inline void ClientCertificateProvisioningResponse::set_has_finish_csr_response() {
+  _oneof_case_[0] = kFinishCsrResponse;
+}
+inline void ClientCertificateProvisioningResponse::clear_finish_csr_response() {
+  if (_internal_has_finish_csr_response()) {
+    delete response_.finish_csr_response_;
+    clear_has_response();
+  }
+}
+inline ::enterprise_management::FinishCsrResponse* ClientCertificateProvisioningResponse::release_finish_csr_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningResponse.finish_csr_response)
+  if (_internal_has_finish_csr_response()) {
+    clear_has_response();
+      ::enterprise_management::FinishCsrResponse* temp = response_.finish_csr_response_;
+    response_.finish_csr_response_ = nullptr;
+    return temp;
+  } else {
+    return nullptr;
+  }
+}
+inline const ::enterprise_management::FinishCsrResponse& ClientCertificateProvisioningResponse::_internal_finish_csr_response() const {
+  return _internal_has_finish_csr_response()
+      ? *response_.finish_csr_response_
+      : *reinterpret_cast< ::enterprise_management::FinishCsrResponse*>(&::enterprise_management::_FinishCsrResponse_default_instance_);
+}
+inline const ::enterprise_management::FinishCsrResponse& ClientCertificateProvisioningResponse::finish_csr_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningResponse.finish_csr_response)
+  return _internal_finish_csr_response();
+}
+inline ::enterprise_management::FinishCsrResponse* ClientCertificateProvisioningResponse::_internal_mutable_finish_csr_response() {
+  if (!_internal_has_finish_csr_response()) {
+    clear_response();
+    set_has_finish_csr_response();
+    response_.finish_csr_response_ = CreateMaybeMessage< ::enterprise_management::FinishCsrResponse >(
+        GetArenaNoVirtual());
+  }
+  return response_.finish_csr_response_;
+}
+inline ::enterprise_management::FinishCsrResponse* ClientCertificateProvisioningResponse::mutable_finish_csr_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningResponse.finish_csr_response)
+  return _internal_mutable_finish_csr_response();
+}
+
+// optional .enterprise_management.DownloadCertResponse download_cert_response = 5;
+inline bool ClientCertificateProvisioningResponse::_internal_has_download_cert_response() const {
+  return response_case() == kDownloadCertResponse;
+}
+inline bool ClientCertificateProvisioningResponse::has_download_cert_response() const {
+  return _internal_has_download_cert_response();
+}
+inline void ClientCertificateProvisioningResponse::set_has_download_cert_response() {
+  _oneof_case_[0] = kDownloadCertResponse;
+}
+inline void ClientCertificateProvisioningResponse::clear_download_cert_response() {
+  if (_internal_has_download_cert_response()) {
+    delete response_.download_cert_response_;
+    clear_has_response();
+  }
+}
+inline ::enterprise_management::DownloadCertResponse* ClientCertificateProvisioningResponse::release_download_cert_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.ClientCertificateProvisioningResponse.download_cert_response)
+  if (_internal_has_download_cert_response()) {
+    clear_has_response();
+      ::enterprise_management::DownloadCertResponse* temp = response_.download_cert_response_;
+    response_.download_cert_response_ = nullptr;
+    return temp;
+  } else {
+    return nullptr;
+  }
+}
+inline const ::enterprise_management::DownloadCertResponse& ClientCertificateProvisioningResponse::_internal_download_cert_response() const {
+  return _internal_has_download_cert_response()
+      ? *response_.download_cert_response_
+      : *reinterpret_cast< ::enterprise_management::DownloadCertResponse*>(&::enterprise_management::_DownloadCertResponse_default_instance_);
+}
+inline const ::enterprise_management::DownloadCertResponse& ClientCertificateProvisioningResponse::download_cert_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.ClientCertificateProvisioningResponse.download_cert_response)
+  return _internal_download_cert_response();
+}
+inline ::enterprise_management::DownloadCertResponse* ClientCertificateProvisioningResponse::_internal_mutable_download_cert_response() {
+  if (!_internal_has_download_cert_response()) {
+    clear_response();
+    set_has_download_cert_response();
+    response_.download_cert_response_ = CreateMaybeMessage< ::enterprise_management::DownloadCertResponse >(
+        GetArenaNoVirtual());
+  }
+  return response_.download_cert_response_;
+}
+inline ::enterprise_management::DownloadCertResponse* ClientCertificateProvisioningResponse::mutable_download_cert_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.ClientCertificateProvisioningResponse.download_cert_response)
+  return _internal_mutable_download_cert_response();
+}
+
+inline bool ClientCertificateProvisioningResponse::has_response() const {
+  return response_case() != RESPONSE_NOT_SET;
+}
+inline void ClientCertificateProvisioningResponse::clear_has_response() {
+  _oneof_case_[0] = RESPONSE_NOT_SET;
+}
+inline ClientCertificateProvisioningResponse::ResponseCase ClientCertificateProvisioningResponse::response_case() const {
+  return ClientCertificateProvisioningResponse::ResponseCase(_oneof_case_[0]);
+}
+// -------------------------------------------------------------------
+
+// BrowserPublicKeyUploadRequest
+
+// optional bytes public_key = 1;
+inline bool BrowserPublicKeyUploadRequest::_internal_has_public_key() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BrowserPublicKeyUploadRequest::has_public_key() const {
+  return _internal_has_public_key();
+}
+inline void BrowserPublicKeyUploadRequest::clear_public_key() {
+  public_key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& BrowserPublicKeyUploadRequest::public_key() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserPublicKeyUploadRequest.public_key)
+  return _internal_public_key();
+}
+inline void BrowserPublicKeyUploadRequest::set_public_key(const std::string& value) {
+  _internal_set_public_key(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserPublicKeyUploadRequest.public_key)
+}
+inline std::string* BrowserPublicKeyUploadRequest::mutable_public_key() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserPublicKeyUploadRequest.public_key)
+  return _internal_mutable_public_key();
+}
+inline const std::string& BrowserPublicKeyUploadRequest::_internal_public_key() const {
+  return public_key_.GetNoArena();
+}
+inline void BrowserPublicKeyUploadRequest::_internal_set_public_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BrowserPublicKeyUploadRequest::set_public_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  public_key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BrowserPublicKeyUploadRequest.public_key)
+}
+inline void BrowserPublicKeyUploadRequest::set_public_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BrowserPublicKeyUploadRequest.public_key)
+}
+inline void BrowserPublicKeyUploadRequest::set_public_key(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  public_key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BrowserPublicKeyUploadRequest.public_key)
+}
+inline std::string* BrowserPublicKeyUploadRequest::_internal_mutable_public_key() {
+  _has_bits_[0] |= 0x00000001u;
+  return public_key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BrowserPublicKeyUploadRequest::release_public_key() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BrowserPublicKeyUploadRequest.public_key)
+  if (!_internal_has_public_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return public_key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BrowserPublicKeyUploadRequest::set_allocated_public_key(std::string* public_key) {
+  if (public_key != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  public_key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), public_key);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BrowserPublicKeyUploadRequest.public_key)
+}
+
+// optional bytes signature = 2;
+inline bool BrowserPublicKeyUploadRequest::_internal_has_signature() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BrowserPublicKeyUploadRequest::has_signature() const {
+  return _internal_has_signature();
+}
+inline void BrowserPublicKeyUploadRequest::clear_signature() {
+  signature_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& BrowserPublicKeyUploadRequest::signature() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserPublicKeyUploadRequest.signature)
+  return _internal_signature();
+}
+inline void BrowserPublicKeyUploadRequest::set_signature(const std::string& value) {
+  _internal_set_signature(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserPublicKeyUploadRequest.signature)
+}
+inline std::string* BrowserPublicKeyUploadRequest::mutable_signature() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BrowserPublicKeyUploadRequest.signature)
+  return _internal_mutable_signature();
+}
+inline const std::string& BrowserPublicKeyUploadRequest::_internal_signature() const {
+  return signature_.GetNoArena();
+}
+inline void BrowserPublicKeyUploadRequest::_internal_set_signature(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void BrowserPublicKeyUploadRequest::set_signature(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.BrowserPublicKeyUploadRequest.signature)
+}
+inline void BrowserPublicKeyUploadRequest::set_signature(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.BrowserPublicKeyUploadRequest.signature)
+}
+inline void BrowserPublicKeyUploadRequest::set_signature(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.BrowserPublicKeyUploadRequest.signature)
+}
+inline std::string* BrowserPublicKeyUploadRequest::_internal_mutable_signature() {
+  _has_bits_[0] |= 0x00000002u;
+  return signature_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* BrowserPublicKeyUploadRequest::release_signature() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BrowserPublicKeyUploadRequest.signature)
+  if (!_internal_has_signature()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return signature_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void BrowserPublicKeyUploadRequest::set_allocated_signature(std::string* signature) {
+  if (signature != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  signature_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), signature);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BrowserPublicKeyUploadRequest.signature)
+}
+
+// optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyTrustLevel key_trust_level = 3;
+inline bool BrowserPublicKeyUploadRequest::_internal_has_key_trust_level() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool BrowserPublicKeyUploadRequest::has_key_trust_level() const {
+  return _internal_has_key_trust_level();
+}
+inline void BrowserPublicKeyUploadRequest::clear_key_trust_level() {
+  key_trust_level_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest::_internal_key_trust_level() const {
+  return static_cast< ::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel >(key_trust_level_);
+}
+inline ::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel BrowserPublicKeyUploadRequest::key_trust_level() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserPublicKeyUploadRequest.key_trust_level)
+  return _internal_key_trust_level();
+}
+inline void BrowserPublicKeyUploadRequest::_internal_set_key_trust_level(::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel value) {
+  assert(::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  key_trust_level_ = value;
+}
+inline void BrowserPublicKeyUploadRequest::set_key_trust_level(::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel value) {
+  _internal_set_key_trust_level(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserPublicKeyUploadRequest.key_trust_level)
+}
+
+// optional .enterprise_management.BrowserPublicKeyUploadRequest.KeyType key_type = 4;
+inline bool BrowserPublicKeyUploadRequest::_internal_has_key_type() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool BrowserPublicKeyUploadRequest::has_key_type() const {
+  return _internal_has_key_type();
+}
+inline void BrowserPublicKeyUploadRequest::clear_key_type() {
+  key_type_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::enterprise_management::BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest::_internal_key_type() const {
+  return static_cast< ::enterprise_management::BrowserPublicKeyUploadRequest_KeyType >(key_type_);
+}
+inline ::enterprise_management::BrowserPublicKeyUploadRequest_KeyType BrowserPublicKeyUploadRequest::key_type() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserPublicKeyUploadRequest.key_type)
+  return _internal_key_type();
+}
+inline void BrowserPublicKeyUploadRequest::_internal_set_key_type(::enterprise_management::BrowserPublicKeyUploadRequest_KeyType value) {
+  assert(::enterprise_management::BrowserPublicKeyUploadRequest_KeyType_IsValid(value));
+  _has_bits_[0] |= 0x00000008u;
+  key_type_ = value;
+}
+inline void BrowserPublicKeyUploadRequest::set_key_type(::enterprise_management::BrowserPublicKeyUploadRequest_KeyType value) {
+  _internal_set_key_type(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserPublicKeyUploadRequest.key_type)
+}
+
+// -------------------------------------------------------------------
+
+// BrowserPublicKeyUploadResponse
+
+// optional .enterprise_management.BrowserPublicKeyUploadResponse.ResponseCode response_code = 1;
+inline bool BrowserPublicKeyUploadResponse::_internal_has_response_code() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool BrowserPublicKeyUploadResponse::has_response_code() const {
+  return _internal_has_response_code();
+}
+inline void BrowserPublicKeyUploadResponse::clear_response_code() {
+  response_code_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse::_internal_response_code() const {
+  return static_cast< ::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode >(response_code_);
+}
+inline ::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode BrowserPublicKeyUploadResponse::response_code() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BrowserPublicKeyUploadResponse.response_code)
+  return _internal_response_code();
+}
+inline void BrowserPublicKeyUploadResponse::_internal_set_response_code(::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode value) {
+  assert(::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  response_code_ = value;
+}
+inline void BrowserPublicKeyUploadResponse::set_response_code(::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode value) {
+  _internal_set_response_code(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BrowserPublicKeyUploadResponse.response_code)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceManagementRequest
+
+// optional .enterprise_management.DeviceRegisterRequest register_request = 1;
+inline bool DeviceManagementRequest::_internal_has_register_request() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || register_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_register_request() const {
+  return _internal_has_register_request();
+}
+inline void DeviceManagementRequest::clear_register_request() {
+  if (register_request_ != nullptr) register_request_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::DeviceRegisterRequest& DeviceManagementRequest::_internal_register_request() const {
+  const ::enterprise_management::DeviceRegisterRequest* p = register_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRegisterRequest*>(
+      &::enterprise_management::_DeviceRegisterRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceRegisterRequest& DeviceManagementRequest::register_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.register_request)
+  return _internal_register_request();
+}
+inline ::enterprise_management::DeviceRegisterRequest* DeviceManagementRequest::release_register_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.register_request)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::DeviceRegisterRequest* temp = register_request_;
+  register_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRegisterRequest* DeviceManagementRequest::_internal_mutable_register_request() {
+  _has_bits_[0] |= 0x00000001u;
+  if (register_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRegisterRequest>(GetArenaNoVirtual());
+    register_request_ = p;
+  }
+  return register_request_;
+}
+inline ::enterprise_management::DeviceRegisterRequest* DeviceManagementRequest::mutable_register_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.register_request)
+  return _internal_mutable_register_request();
+}
+inline void DeviceManagementRequest::set_allocated_register_request(::enterprise_management::DeviceRegisterRequest* register_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete register_request_;
+  }
+  if (register_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      register_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, register_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  register_request_ = register_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.register_request)
+}
+
+// optional .enterprise_management.DeviceUnregisterRequest unregister_request = 2;
+inline bool DeviceManagementRequest::_internal_has_unregister_request() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || unregister_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_unregister_request() const {
+  return _internal_has_unregister_request();
+}
+inline void DeviceManagementRequest::clear_unregister_request() {
+  if (unregister_request_ != nullptr) unregister_request_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::DeviceUnregisterRequest& DeviceManagementRequest::_internal_unregister_request() const {
+  const ::enterprise_management::DeviceUnregisterRequest* p = unregister_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceUnregisterRequest*>(
+      &::enterprise_management::_DeviceUnregisterRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceUnregisterRequest& DeviceManagementRequest::unregister_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.unregister_request)
+  return _internal_unregister_request();
+}
+inline ::enterprise_management::DeviceUnregisterRequest* DeviceManagementRequest::release_unregister_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.unregister_request)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::DeviceUnregisterRequest* temp = unregister_request_;
+  unregister_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceUnregisterRequest* DeviceManagementRequest::_internal_mutable_unregister_request() {
+  _has_bits_[0] |= 0x00000002u;
+  if (unregister_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceUnregisterRequest>(GetArenaNoVirtual());
+    unregister_request_ = p;
+  }
+  return unregister_request_;
+}
+inline ::enterprise_management::DeviceUnregisterRequest* DeviceManagementRequest::mutable_unregister_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.unregister_request)
+  return _internal_mutable_unregister_request();
+}
+inline void DeviceManagementRequest::set_allocated_unregister_request(::enterprise_management::DeviceUnregisterRequest* unregister_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete unregister_request_;
+  }
+  if (unregister_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      unregister_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, unregister_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  unregister_request_ = unregister_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.unregister_request)
+}
+
+// optional .enterprise_management.DevicePolicyRequest policy_request = 3;
+inline bool DeviceManagementRequest::_internal_has_policy_request() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || policy_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_policy_request() const {
+  return _internal_has_policy_request();
+}
+inline void DeviceManagementRequest::clear_policy_request() {
+  if (policy_request_ != nullptr) policy_request_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::DevicePolicyRequest& DeviceManagementRequest::_internal_policy_request() const {
+  const ::enterprise_management::DevicePolicyRequest* p = policy_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePolicyRequest*>(
+      &::enterprise_management::_DevicePolicyRequest_default_instance_);
+}
+inline const ::enterprise_management::DevicePolicyRequest& DeviceManagementRequest::policy_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.policy_request)
+  return _internal_policy_request();
+}
+inline ::enterprise_management::DevicePolicyRequest* DeviceManagementRequest::release_policy_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.policy_request)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::DevicePolicyRequest* temp = policy_request_;
+  policy_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePolicyRequest* DeviceManagementRequest::_internal_mutable_policy_request() {
+  _has_bits_[0] |= 0x00000004u;
+  if (policy_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePolicyRequest>(GetArenaNoVirtual());
+    policy_request_ = p;
+  }
+  return policy_request_;
+}
+inline ::enterprise_management::DevicePolicyRequest* DeviceManagementRequest::mutable_policy_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.policy_request)
+  return _internal_mutable_policy_request();
+}
+inline void DeviceManagementRequest::set_allocated_policy_request(::enterprise_management::DevicePolicyRequest* policy_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete policy_request_;
+  }
+  if (policy_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      policy_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, policy_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  policy_request_ = policy_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.policy_request)
+}
+
+// optional .enterprise_management.DeviceStatusReportRequest device_status_report_request = 4;
+inline bool DeviceManagementRequest::_internal_has_device_status_report_request() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || device_status_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_device_status_report_request() const {
+  return _internal_has_device_status_report_request();
+}
+inline void DeviceManagementRequest::clear_device_status_report_request() {
+  if (device_status_report_request_ != nullptr) device_status_report_request_->Clear();
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const ::enterprise_management::DeviceStatusReportRequest& DeviceManagementRequest::_internal_device_status_report_request() const {
+  const ::enterprise_management::DeviceStatusReportRequest* p = device_status_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceStatusReportRequest*>(
+      &::enterprise_management::_DeviceStatusReportRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceStatusReportRequest& DeviceManagementRequest::device_status_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.device_status_report_request)
+  return _internal_device_status_report_request();
+}
+inline ::enterprise_management::DeviceStatusReportRequest* DeviceManagementRequest::release_device_status_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.device_status_report_request)
+  _has_bits_[0] &= ~0x00000008u;
+  ::enterprise_management::DeviceStatusReportRequest* temp = device_status_report_request_;
+  device_status_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceStatusReportRequest* DeviceManagementRequest::_internal_mutable_device_status_report_request() {
+  _has_bits_[0] |= 0x00000008u;
+  if (device_status_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceStatusReportRequest>(GetArenaNoVirtual());
+    device_status_report_request_ = p;
+  }
+  return device_status_report_request_;
+}
+inline ::enterprise_management::DeviceStatusReportRequest* DeviceManagementRequest::mutable_device_status_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.device_status_report_request)
+  return _internal_mutable_device_status_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_device_status_report_request(::enterprise_management::DeviceStatusReportRequest* device_status_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_status_report_request_;
+  }
+  if (device_status_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_status_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_status_report_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  device_status_report_request_ = device_status_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.device_status_report_request)
+}
+
+// optional .enterprise_management.SessionStatusReportRequest session_status_report_request = 5;
+inline bool DeviceManagementRequest::_internal_has_session_status_report_request() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || session_status_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_session_status_report_request() const {
+  return _internal_has_session_status_report_request();
+}
+inline void DeviceManagementRequest::clear_session_status_report_request() {
+  if (session_status_report_request_ != nullptr) session_status_report_request_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::enterprise_management::SessionStatusReportRequest& DeviceManagementRequest::_internal_session_status_report_request() const {
+  const ::enterprise_management::SessionStatusReportRequest* p = session_status_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SessionStatusReportRequest*>(
+      &::enterprise_management::_SessionStatusReportRequest_default_instance_);
+}
+inline const ::enterprise_management::SessionStatusReportRequest& DeviceManagementRequest::session_status_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.session_status_report_request)
+  return _internal_session_status_report_request();
+}
+inline ::enterprise_management::SessionStatusReportRequest* DeviceManagementRequest::release_session_status_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.session_status_report_request)
+  _has_bits_[0] &= ~0x00000010u;
+  ::enterprise_management::SessionStatusReportRequest* temp = session_status_report_request_;
+  session_status_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SessionStatusReportRequest* DeviceManagementRequest::_internal_mutable_session_status_report_request() {
+  _has_bits_[0] |= 0x00000010u;
+  if (session_status_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SessionStatusReportRequest>(GetArenaNoVirtual());
+    session_status_report_request_ = p;
+  }
+  return session_status_report_request_;
+}
+inline ::enterprise_management::SessionStatusReportRequest* DeviceManagementRequest::mutable_session_status_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.session_status_report_request)
+  return _internal_mutable_session_status_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_session_status_report_request(::enterprise_management::SessionStatusReportRequest* session_status_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete session_status_report_request_;
+  }
+  if (session_status_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      session_status_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, session_status_report_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  session_status_report_request_ = session_status_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.session_status_report_request)
+}
+
+// optional .enterprise_management.ChildStatusReportRequest child_status_report_request = 30;
+inline bool DeviceManagementRequest::_internal_has_child_status_report_request() const {
+  bool value = (_has_bits_[0] & 0x10000000u) != 0;
+  PROTOBUF_ASSUME(!value || child_status_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_child_status_report_request() const {
+  return _internal_has_child_status_report_request();
+}
+inline void DeviceManagementRequest::clear_child_status_report_request() {
+  if (child_status_report_request_ != nullptr) child_status_report_request_->Clear();
+  _has_bits_[0] &= ~0x10000000u;
+}
+inline const ::enterprise_management::ChildStatusReportRequest& DeviceManagementRequest::_internal_child_status_report_request() const {
+  const ::enterprise_management::ChildStatusReportRequest* p = child_status_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChildStatusReportRequest*>(
+      &::enterprise_management::_ChildStatusReportRequest_default_instance_);
+}
+inline const ::enterprise_management::ChildStatusReportRequest& DeviceManagementRequest::child_status_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.child_status_report_request)
+  return _internal_child_status_report_request();
+}
+inline ::enterprise_management::ChildStatusReportRequest* DeviceManagementRequest::release_child_status_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.child_status_report_request)
+  _has_bits_[0] &= ~0x10000000u;
+  ::enterprise_management::ChildStatusReportRequest* temp = child_status_report_request_;
+  child_status_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChildStatusReportRequest* DeviceManagementRequest::_internal_mutable_child_status_report_request() {
+  _has_bits_[0] |= 0x10000000u;
+  if (child_status_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChildStatusReportRequest>(GetArenaNoVirtual());
+    child_status_report_request_ = p;
+  }
+  return child_status_report_request_;
+}
+inline ::enterprise_management::ChildStatusReportRequest* DeviceManagementRequest::mutable_child_status_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.child_status_report_request)
+  return _internal_mutable_child_status_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_child_status_report_request(::enterprise_management::ChildStatusReportRequest* child_status_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete child_status_report_request_;
+  }
+  if (child_status_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      child_status_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, child_status_report_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x10000000u;
+  } else {
+    _has_bits_[0] &= ~0x10000000u;
+  }
+  child_status_report_request_ = child_status_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.child_status_report_request)
+}
+
+// optional .enterprise_management.DeviceAutoEnrollmentRequest auto_enrollment_request = 6;
+inline bool DeviceManagementRequest::_internal_has_auto_enrollment_request() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || auto_enrollment_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_auto_enrollment_request() const {
+  return _internal_has_auto_enrollment_request();
+}
+inline void DeviceManagementRequest::clear_auto_enrollment_request() {
+  if (auto_enrollment_request_ != nullptr) auto_enrollment_request_->Clear();
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const ::enterprise_management::DeviceAutoEnrollmentRequest& DeviceManagementRequest::_internal_auto_enrollment_request() const {
+  const ::enterprise_management::DeviceAutoEnrollmentRequest* p = auto_enrollment_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAutoEnrollmentRequest*>(
+      &::enterprise_management::_DeviceAutoEnrollmentRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceAutoEnrollmentRequest& DeviceManagementRequest::auto_enrollment_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.auto_enrollment_request)
+  return _internal_auto_enrollment_request();
+}
+inline ::enterprise_management::DeviceAutoEnrollmentRequest* DeviceManagementRequest::release_auto_enrollment_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.auto_enrollment_request)
+  _has_bits_[0] &= ~0x00000020u;
+  ::enterprise_management::DeviceAutoEnrollmentRequest* temp = auto_enrollment_request_;
+  auto_enrollment_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAutoEnrollmentRequest* DeviceManagementRequest::_internal_mutable_auto_enrollment_request() {
+  _has_bits_[0] |= 0x00000020u;
+  if (auto_enrollment_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAutoEnrollmentRequest>(GetArenaNoVirtual());
+    auto_enrollment_request_ = p;
+  }
+  return auto_enrollment_request_;
+}
+inline ::enterprise_management::DeviceAutoEnrollmentRequest* DeviceManagementRequest::mutable_auto_enrollment_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.auto_enrollment_request)
+  return _internal_mutable_auto_enrollment_request();
+}
+inline void DeviceManagementRequest::set_allocated_auto_enrollment_request(::enterprise_management::DeviceAutoEnrollmentRequest* auto_enrollment_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete auto_enrollment_request_;
+  }
+  if (auto_enrollment_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      auto_enrollment_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, auto_enrollment_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  auto_enrollment_request_ = auto_enrollment_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.auto_enrollment_request)
+}
+
+// optional .enterprise_management.DeviceCertUploadRequest cert_upload_request = 7;
+inline bool DeviceManagementRequest::_internal_has_cert_upload_request() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || cert_upload_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_cert_upload_request() const {
+  return _internal_has_cert_upload_request();
+}
+inline void DeviceManagementRequest::clear_cert_upload_request() {
+  if (cert_upload_request_ != nullptr) cert_upload_request_->Clear();
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const ::enterprise_management::DeviceCertUploadRequest& DeviceManagementRequest::_internal_cert_upload_request() const {
+  const ::enterprise_management::DeviceCertUploadRequest* p = cert_upload_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceCertUploadRequest*>(
+      &::enterprise_management::_DeviceCertUploadRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceCertUploadRequest& DeviceManagementRequest::cert_upload_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.cert_upload_request)
+  return _internal_cert_upload_request();
+}
+inline ::enterprise_management::DeviceCertUploadRequest* DeviceManagementRequest::release_cert_upload_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.cert_upload_request)
+  _has_bits_[0] &= ~0x00000040u;
+  ::enterprise_management::DeviceCertUploadRequest* temp = cert_upload_request_;
+  cert_upload_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceCertUploadRequest* DeviceManagementRequest::_internal_mutable_cert_upload_request() {
+  _has_bits_[0] |= 0x00000040u;
+  if (cert_upload_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceCertUploadRequest>(GetArenaNoVirtual());
+    cert_upload_request_ = p;
+  }
+  return cert_upload_request_;
+}
+inline ::enterprise_management::DeviceCertUploadRequest* DeviceManagementRequest::mutable_cert_upload_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.cert_upload_request)
+  return _internal_mutable_cert_upload_request();
+}
+inline void DeviceManagementRequest::set_allocated_cert_upload_request(::enterprise_management::DeviceCertUploadRequest* cert_upload_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete cert_upload_request_;
+  }
+  if (cert_upload_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      cert_upload_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, cert_upload_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  cert_upload_request_ = cert_upload_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.cert_upload_request)
+}
+
+// optional .enterprise_management.DeviceServiceApiAccessRequest service_api_access_request = 8;
+inline bool DeviceManagementRequest::_internal_has_service_api_access_request() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || service_api_access_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_service_api_access_request() const {
+  return _internal_has_service_api_access_request();
+}
+inline void DeviceManagementRequest::clear_service_api_access_request() {
+  if (service_api_access_request_ != nullptr) service_api_access_request_->Clear();
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const ::enterprise_management::DeviceServiceApiAccessRequest& DeviceManagementRequest::_internal_service_api_access_request() const {
+  const ::enterprise_management::DeviceServiceApiAccessRequest* p = service_api_access_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceServiceApiAccessRequest*>(
+      &::enterprise_management::_DeviceServiceApiAccessRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceServiceApiAccessRequest& DeviceManagementRequest::service_api_access_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.service_api_access_request)
+  return _internal_service_api_access_request();
+}
+inline ::enterprise_management::DeviceServiceApiAccessRequest* DeviceManagementRequest::release_service_api_access_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.service_api_access_request)
+  _has_bits_[0] &= ~0x00000080u;
+  ::enterprise_management::DeviceServiceApiAccessRequest* temp = service_api_access_request_;
+  service_api_access_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceServiceApiAccessRequest* DeviceManagementRequest::_internal_mutable_service_api_access_request() {
+  _has_bits_[0] |= 0x00000080u;
+  if (service_api_access_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceServiceApiAccessRequest>(GetArenaNoVirtual());
+    service_api_access_request_ = p;
+  }
+  return service_api_access_request_;
+}
+inline ::enterprise_management::DeviceServiceApiAccessRequest* DeviceManagementRequest::mutable_service_api_access_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.service_api_access_request)
+  return _internal_mutable_service_api_access_request();
+}
+inline void DeviceManagementRequest::set_allocated_service_api_access_request(::enterprise_management::DeviceServiceApiAccessRequest* service_api_access_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete service_api_access_request_;
+  }
+  if (service_api_access_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      service_api_access_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, service_api_access_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  service_api_access_request_ = service_api_access_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.service_api_access_request)
+}
+
+// optional .enterprise_management.DeviceStateRetrievalRequest device_state_retrieval_request = 9;
+inline bool DeviceManagementRequest::_internal_has_device_state_retrieval_request() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || device_state_retrieval_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_device_state_retrieval_request() const {
+  return _internal_has_device_state_retrieval_request();
+}
+inline void DeviceManagementRequest::clear_device_state_retrieval_request() {
+  if (device_state_retrieval_request_ != nullptr) device_state_retrieval_request_->Clear();
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const ::enterprise_management::DeviceStateRetrievalRequest& DeviceManagementRequest::_internal_device_state_retrieval_request() const {
+  const ::enterprise_management::DeviceStateRetrievalRequest* p = device_state_retrieval_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceStateRetrievalRequest*>(
+      &::enterprise_management::_DeviceStateRetrievalRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceStateRetrievalRequest& DeviceManagementRequest::device_state_retrieval_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.device_state_retrieval_request)
+  return _internal_device_state_retrieval_request();
+}
+inline ::enterprise_management::DeviceStateRetrievalRequest* DeviceManagementRequest::release_device_state_retrieval_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.device_state_retrieval_request)
+  _has_bits_[0] &= ~0x00000100u;
+  ::enterprise_management::DeviceStateRetrievalRequest* temp = device_state_retrieval_request_;
+  device_state_retrieval_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceStateRetrievalRequest* DeviceManagementRequest::_internal_mutable_device_state_retrieval_request() {
+  _has_bits_[0] |= 0x00000100u;
+  if (device_state_retrieval_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceStateRetrievalRequest>(GetArenaNoVirtual());
+    device_state_retrieval_request_ = p;
+  }
+  return device_state_retrieval_request_;
+}
+inline ::enterprise_management::DeviceStateRetrievalRequest* DeviceManagementRequest::mutable_device_state_retrieval_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.device_state_retrieval_request)
+  return _internal_mutable_device_state_retrieval_request();
+}
+inline void DeviceManagementRequest::set_allocated_device_state_retrieval_request(::enterprise_management::DeviceStateRetrievalRequest* device_state_retrieval_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_state_retrieval_request_;
+  }
+  if (device_state_retrieval_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_state_retrieval_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_state_retrieval_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  device_state_retrieval_request_ = device_state_retrieval_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.device_state_retrieval_request)
+}
+
+// optional .enterprise_management.DeviceStateKeyUpdateRequest device_state_key_update_request = 10;
+inline bool DeviceManagementRequest::_internal_has_device_state_key_update_request() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || device_state_key_update_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_device_state_key_update_request() const {
+  return _internal_has_device_state_key_update_request();
+}
+inline void DeviceManagementRequest::clear_device_state_key_update_request() {
+  if (device_state_key_update_request_ != nullptr) device_state_key_update_request_->Clear();
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline const ::enterprise_management::DeviceStateKeyUpdateRequest& DeviceManagementRequest::_internal_device_state_key_update_request() const {
+  const ::enterprise_management::DeviceStateKeyUpdateRequest* p = device_state_key_update_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceStateKeyUpdateRequest*>(
+      &::enterprise_management::_DeviceStateKeyUpdateRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceStateKeyUpdateRequest& DeviceManagementRequest::device_state_key_update_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.device_state_key_update_request)
+  return _internal_device_state_key_update_request();
+}
+inline ::enterprise_management::DeviceStateKeyUpdateRequest* DeviceManagementRequest::release_device_state_key_update_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.device_state_key_update_request)
+  _has_bits_[0] &= ~0x00000200u;
+  ::enterprise_management::DeviceStateKeyUpdateRequest* temp = device_state_key_update_request_;
+  device_state_key_update_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceStateKeyUpdateRequest* DeviceManagementRequest::_internal_mutable_device_state_key_update_request() {
+  _has_bits_[0] |= 0x00000200u;
+  if (device_state_key_update_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceStateKeyUpdateRequest>(GetArenaNoVirtual());
+    device_state_key_update_request_ = p;
+  }
+  return device_state_key_update_request_;
+}
+inline ::enterprise_management::DeviceStateKeyUpdateRequest* DeviceManagementRequest::mutable_device_state_key_update_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.device_state_key_update_request)
+  return _internal_mutable_device_state_key_update_request();
+}
+inline void DeviceManagementRequest::set_allocated_device_state_key_update_request(::enterprise_management::DeviceStateKeyUpdateRequest* device_state_key_update_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_state_key_update_request_;
+  }
+  if (device_state_key_update_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_state_key_update_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_state_key_update_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  device_state_key_update_request_ = device_state_key_update_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.device_state_key_update_request)
+}
+
+// optional .enterprise_management.DevicePairingRequest device_pairing_request = 11;
+inline bool DeviceManagementRequest::_internal_has_device_pairing_request() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || device_pairing_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_device_pairing_request() const {
+  return _internal_has_device_pairing_request();
+}
+inline void DeviceManagementRequest::clear_device_pairing_request() {
+  if (device_pairing_request_ != nullptr) device_pairing_request_->Clear();
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline const ::enterprise_management::DevicePairingRequest& DeviceManagementRequest::_internal_device_pairing_request() const {
+  const ::enterprise_management::DevicePairingRequest* p = device_pairing_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePairingRequest*>(
+      &::enterprise_management::_DevicePairingRequest_default_instance_);
+}
+inline const ::enterprise_management::DevicePairingRequest& DeviceManagementRequest::device_pairing_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.device_pairing_request)
+  return _internal_device_pairing_request();
+}
+inline ::enterprise_management::DevicePairingRequest* DeviceManagementRequest::release_device_pairing_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.device_pairing_request)
+  _has_bits_[0] &= ~0x00000400u;
+  ::enterprise_management::DevicePairingRequest* temp = device_pairing_request_;
+  device_pairing_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePairingRequest* DeviceManagementRequest::_internal_mutable_device_pairing_request() {
+  _has_bits_[0] |= 0x00000400u;
+  if (device_pairing_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePairingRequest>(GetArenaNoVirtual());
+    device_pairing_request_ = p;
+  }
+  return device_pairing_request_;
+}
+inline ::enterprise_management::DevicePairingRequest* DeviceManagementRequest::mutable_device_pairing_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.device_pairing_request)
+  return _internal_mutable_device_pairing_request();
+}
+inline void DeviceManagementRequest::set_allocated_device_pairing_request(::enterprise_management::DevicePairingRequest* device_pairing_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_pairing_request_;
+  }
+  if (device_pairing_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_pairing_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_pairing_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000400u;
+  } else {
+    _has_bits_[0] &= ~0x00000400u;
+  }
+  device_pairing_request_ = device_pairing_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.device_pairing_request)
+}
+
+// optional .enterprise_management.CheckDevicePairingRequest check_device_pairing_request = 12;
+inline bool DeviceManagementRequest::_internal_has_check_device_pairing_request() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || check_device_pairing_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_check_device_pairing_request() const {
+  return _internal_has_check_device_pairing_request();
+}
+inline void DeviceManagementRequest::clear_check_device_pairing_request() {
+  if (check_device_pairing_request_ != nullptr) check_device_pairing_request_->Clear();
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline const ::enterprise_management::CheckDevicePairingRequest& DeviceManagementRequest::_internal_check_device_pairing_request() const {
+  const ::enterprise_management::CheckDevicePairingRequest* p = check_device_pairing_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CheckDevicePairingRequest*>(
+      &::enterprise_management::_CheckDevicePairingRequest_default_instance_);
+}
+inline const ::enterprise_management::CheckDevicePairingRequest& DeviceManagementRequest::check_device_pairing_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.check_device_pairing_request)
+  return _internal_check_device_pairing_request();
+}
+inline ::enterprise_management::CheckDevicePairingRequest* DeviceManagementRequest::release_check_device_pairing_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.check_device_pairing_request)
+  _has_bits_[0] &= ~0x00000800u;
+  ::enterprise_management::CheckDevicePairingRequest* temp = check_device_pairing_request_;
+  check_device_pairing_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CheckDevicePairingRequest* DeviceManagementRequest::_internal_mutable_check_device_pairing_request() {
+  _has_bits_[0] |= 0x00000800u;
+  if (check_device_pairing_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CheckDevicePairingRequest>(GetArenaNoVirtual());
+    check_device_pairing_request_ = p;
+  }
+  return check_device_pairing_request_;
+}
+inline ::enterprise_management::CheckDevicePairingRequest* DeviceManagementRequest::mutable_check_device_pairing_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.check_device_pairing_request)
+  return _internal_mutable_check_device_pairing_request();
+}
+inline void DeviceManagementRequest::set_allocated_check_device_pairing_request(::enterprise_management::CheckDevicePairingRequest* check_device_pairing_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete check_device_pairing_request_;
+  }
+  if (check_device_pairing_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      check_device_pairing_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, check_device_pairing_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000800u;
+  } else {
+    _has_bits_[0] &= ~0x00000800u;
+  }
+  check_device_pairing_request_ = check_device_pairing_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.check_device_pairing_request)
+}
+
+// optional .enterprise_management.DeviceRemoteCommandRequest remote_command_request = 13;
+inline bool DeviceManagementRequest::_internal_has_remote_command_request() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  PROTOBUF_ASSUME(!value || remote_command_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_remote_command_request() const {
+  return _internal_has_remote_command_request();
+}
+inline void DeviceManagementRequest::clear_remote_command_request() {
+  if (remote_command_request_ != nullptr) remote_command_request_->Clear();
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline const ::enterprise_management::DeviceRemoteCommandRequest& DeviceManagementRequest::_internal_remote_command_request() const {
+  const ::enterprise_management::DeviceRemoteCommandRequest* p = remote_command_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRemoteCommandRequest*>(
+      &::enterprise_management::_DeviceRemoteCommandRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceRemoteCommandRequest& DeviceManagementRequest::remote_command_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.remote_command_request)
+  return _internal_remote_command_request();
+}
+inline ::enterprise_management::DeviceRemoteCommandRequest* DeviceManagementRequest::release_remote_command_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.remote_command_request)
+  _has_bits_[0] &= ~0x00001000u;
+  ::enterprise_management::DeviceRemoteCommandRequest* temp = remote_command_request_;
+  remote_command_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRemoteCommandRequest* DeviceManagementRequest::_internal_mutable_remote_command_request() {
+  _has_bits_[0] |= 0x00001000u;
+  if (remote_command_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRemoteCommandRequest>(GetArenaNoVirtual());
+    remote_command_request_ = p;
+  }
+  return remote_command_request_;
+}
+inline ::enterprise_management::DeviceRemoteCommandRequest* DeviceManagementRequest::mutable_remote_command_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.remote_command_request)
+  return _internal_mutable_remote_command_request();
+}
+inline void DeviceManagementRequest::set_allocated_remote_command_request(::enterprise_management::DeviceRemoteCommandRequest* remote_command_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete remote_command_request_;
+  }
+  if (remote_command_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      remote_command_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, remote_command_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00001000u;
+  } else {
+    _has_bits_[0] &= ~0x00001000u;
+  }
+  remote_command_request_ = remote_command_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.remote_command_request)
+}
+
+// optional .enterprise_management.DeviceAttributeUpdatePermissionRequest device_attribute_update_permission_request = 14;
+inline bool DeviceManagementRequest::_internal_has_device_attribute_update_permission_request() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  PROTOBUF_ASSUME(!value || device_attribute_update_permission_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_device_attribute_update_permission_request() const {
+  return _internal_has_device_attribute_update_permission_request();
+}
+inline void DeviceManagementRequest::clear_device_attribute_update_permission_request() {
+  if (device_attribute_update_permission_request_ != nullptr) device_attribute_update_permission_request_->Clear();
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline const ::enterprise_management::DeviceAttributeUpdatePermissionRequest& DeviceManagementRequest::_internal_device_attribute_update_permission_request() const {
+  const ::enterprise_management::DeviceAttributeUpdatePermissionRequest* p = device_attribute_update_permission_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAttributeUpdatePermissionRequest*>(
+      &::enterprise_management::_DeviceAttributeUpdatePermissionRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceAttributeUpdatePermissionRequest& DeviceManagementRequest::device_attribute_update_permission_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.device_attribute_update_permission_request)
+  return _internal_device_attribute_update_permission_request();
+}
+inline ::enterprise_management::DeviceAttributeUpdatePermissionRequest* DeviceManagementRequest::release_device_attribute_update_permission_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.device_attribute_update_permission_request)
+  _has_bits_[0] &= ~0x00002000u;
+  ::enterprise_management::DeviceAttributeUpdatePermissionRequest* temp = device_attribute_update_permission_request_;
+  device_attribute_update_permission_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAttributeUpdatePermissionRequest* DeviceManagementRequest::_internal_mutable_device_attribute_update_permission_request() {
+  _has_bits_[0] |= 0x00002000u;
+  if (device_attribute_update_permission_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAttributeUpdatePermissionRequest>(GetArenaNoVirtual());
+    device_attribute_update_permission_request_ = p;
+  }
+  return device_attribute_update_permission_request_;
+}
+inline ::enterprise_management::DeviceAttributeUpdatePermissionRequest* DeviceManagementRequest::mutable_device_attribute_update_permission_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.device_attribute_update_permission_request)
+  return _internal_mutable_device_attribute_update_permission_request();
+}
+inline void DeviceManagementRequest::set_allocated_device_attribute_update_permission_request(::enterprise_management::DeviceAttributeUpdatePermissionRequest* device_attribute_update_permission_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_attribute_update_permission_request_;
+  }
+  if (device_attribute_update_permission_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_attribute_update_permission_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_attribute_update_permission_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00002000u;
+  } else {
+    _has_bits_[0] &= ~0x00002000u;
+  }
+  device_attribute_update_permission_request_ = device_attribute_update_permission_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.device_attribute_update_permission_request)
+}
+
+// optional .enterprise_management.DeviceAttributeUpdateRequest device_attribute_update_request = 15;
+inline bool DeviceManagementRequest::_internal_has_device_attribute_update_request() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  PROTOBUF_ASSUME(!value || device_attribute_update_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_device_attribute_update_request() const {
+  return _internal_has_device_attribute_update_request();
+}
+inline void DeviceManagementRequest::clear_device_attribute_update_request() {
+  if (device_attribute_update_request_ != nullptr) device_attribute_update_request_->Clear();
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline const ::enterprise_management::DeviceAttributeUpdateRequest& DeviceManagementRequest::_internal_device_attribute_update_request() const {
+  const ::enterprise_management::DeviceAttributeUpdateRequest* p = device_attribute_update_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAttributeUpdateRequest*>(
+      &::enterprise_management::_DeviceAttributeUpdateRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceAttributeUpdateRequest& DeviceManagementRequest::device_attribute_update_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.device_attribute_update_request)
+  return _internal_device_attribute_update_request();
+}
+inline ::enterprise_management::DeviceAttributeUpdateRequest* DeviceManagementRequest::release_device_attribute_update_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.device_attribute_update_request)
+  _has_bits_[0] &= ~0x00004000u;
+  ::enterprise_management::DeviceAttributeUpdateRequest* temp = device_attribute_update_request_;
+  device_attribute_update_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAttributeUpdateRequest* DeviceManagementRequest::_internal_mutable_device_attribute_update_request() {
+  _has_bits_[0] |= 0x00004000u;
+  if (device_attribute_update_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAttributeUpdateRequest>(GetArenaNoVirtual());
+    device_attribute_update_request_ = p;
+  }
+  return device_attribute_update_request_;
+}
+inline ::enterprise_management::DeviceAttributeUpdateRequest* DeviceManagementRequest::mutable_device_attribute_update_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.device_attribute_update_request)
+  return _internal_mutable_device_attribute_update_request();
+}
+inline void DeviceManagementRequest::set_allocated_device_attribute_update_request(::enterprise_management::DeviceAttributeUpdateRequest* device_attribute_update_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_attribute_update_request_;
+  }
+  if (device_attribute_update_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_attribute_update_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_attribute_update_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00004000u;
+  } else {
+    _has_bits_[0] &= ~0x00004000u;
+  }
+  device_attribute_update_request_ = device_attribute_update_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.device_attribute_update_request)
+}
+
+// optional .enterprise_management.GcmIdUpdateRequest gcm_id_update_request = 16;
+inline bool DeviceManagementRequest::_internal_has_gcm_id_update_request() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  PROTOBUF_ASSUME(!value || gcm_id_update_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_gcm_id_update_request() const {
+  return _internal_has_gcm_id_update_request();
+}
+inline void DeviceManagementRequest::clear_gcm_id_update_request() {
+  if (gcm_id_update_request_ != nullptr) gcm_id_update_request_->Clear();
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline const ::enterprise_management::GcmIdUpdateRequest& DeviceManagementRequest::_internal_gcm_id_update_request() const {
+  const ::enterprise_management::GcmIdUpdateRequest* p = gcm_id_update_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::GcmIdUpdateRequest*>(
+      &::enterprise_management::_GcmIdUpdateRequest_default_instance_);
+}
+inline const ::enterprise_management::GcmIdUpdateRequest& DeviceManagementRequest::gcm_id_update_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.gcm_id_update_request)
+  return _internal_gcm_id_update_request();
+}
+inline ::enterprise_management::GcmIdUpdateRequest* DeviceManagementRequest::release_gcm_id_update_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.gcm_id_update_request)
+  _has_bits_[0] &= ~0x00008000u;
+  ::enterprise_management::GcmIdUpdateRequest* temp = gcm_id_update_request_;
+  gcm_id_update_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::GcmIdUpdateRequest* DeviceManagementRequest::_internal_mutable_gcm_id_update_request() {
+  _has_bits_[0] |= 0x00008000u;
+  if (gcm_id_update_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::GcmIdUpdateRequest>(GetArenaNoVirtual());
+    gcm_id_update_request_ = p;
+  }
+  return gcm_id_update_request_;
+}
+inline ::enterprise_management::GcmIdUpdateRequest* DeviceManagementRequest::mutable_gcm_id_update_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.gcm_id_update_request)
+  return _internal_mutable_gcm_id_update_request();
+}
+inline void DeviceManagementRequest::set_allocated_gcm_id_update_request(::enterprise_management::GcmIdUpdateRequest* gcm_id_update_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete gcm_id_update_request_;
+  }
+  if (gcm_id_update_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      gcm_id_update_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, gcm_id_update_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00008000u;
+  } else {
+    _has_bits_[0] &= ~0x00008000u;
+  }
+  gcm_id_update_request_ = gcm_id_update_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.gcm_id_update_request)
+}
+
+// optional .enterprise_management.CheckAndroidManagementRequest check_android_management_request = 17;
+inline bool DeviceManagementRequest::_internal_has_check_android_management_request() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  PROTOBUF_ASSUME(!value || check_android_management_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_check_android_management_request() const {
+  return _internal_has_check_android_management_request();
+}
+inline void DeviceManagementRequest::clear_check_android_management_request() {
+  if (check_android_management_request_ != nullptr) check_android_management_request_->Clear();
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline const ::enterprise_management::CheckAndroidManagementRequest& DeviceManagementRequest::_internal_check_android_management_request() const {
+  const ::enterprise_management::CheckAndroidManagementRequest* p = check_android_management_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CheckAndroidManagementRequest*>(
+      &::enterprise_management::_CheckAndroidManagementRequest_default_instance_);
+}
+inline const ::enterprise_management::CheckAndroidManagementRequest& DeviceManagementRequest::check_android_management_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.check_android_management_request)
+  return _internal_check_android_management_request();
+}
+inline ::enterprise_management::CheckAndroidManagementRequest* DeviceManagementRequest::release_check_android_management_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.check_android_management_request)
+  _has_bits_[0] &= ~0x00010000u;
+  ::enterprise_management::CheckAndroidManagementRequest* temp = check_android_management_request_;
+  check_android_management_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CheckAndroidManagementRequest* DeviceManagementRequest::_internal_mutable_check_android_management_request() {
+  _has_bits_[0] |= 0x00010000u;
+  if (check_android_management_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CheckAndroidManagementRequest>(GetArenaNoVirtual());
+    check_android_management_request_ = p;
+  }
+  return check_android_management_request_;
+}
+inline ::enterprise_management::CheckAndroidManagementRequest* DeviceManagementRequest::mutable_check_android_management_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.check_android_management_request)
+  return _internal_mutable_check_android_management_request();
+}
+inline void DeviceManagementRequest::set_allocated_check_android_management_request(::enterprise_management::CheckAndroidManagementRequest* check_android_management_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete check_android_management_request_;
+  }
+  if (check_android_management_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      check_android_management_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, check_android_management_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00010000u;
+  } else {
+    _has_bits_[0] &= ~0x00010000u;
+  }
+  check_android_management_request_ = check_android_management_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.check_android_management_request)
+}
+
+// optional .enterprise_management.CertificateBasedDeviceRegisterRequest certificate_based_register_request = 18;
+inline bool DeviceManagementRequest::_internal_has_certificate_based_register_request() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  PROTOBUF_ASSUME(!value || certificate_based_register_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_certificate_based_register_request() const {
+  return _internal_has_certificate_based_register_request();
+}
+inline void DeviceManagementRequest::clear_certificate_based_register_request() {
+  if (certificate_based_register_request_ != nullptr) certificate_based_register_request_->Clear();
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline const ::enterprise_management::CertificateBasedDeviceRegisterRequest& DeviceManagementRequest::_internal_certificate_based_register_request() const {
+  const ::enterprise_management::CertificateBasedDeviceRegisterRequest* p = certificate_based_register_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CertificateBasedDeviceRegisterRequest*>(
+      &::enterprise_management::_CertificateBasedDeviceRegisterRequest_default_instance_);
+}
+inline const ::enterprise_management::CertificateBasedDeviceRegisterRequest& DeviceManagementRequest::certificate_based_register_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.certificate_based_register_request)
+  return _internal_certificate_based_register_request();
+}
+inline ::enterprise_management::CertificateBasedDeviceRegisterRequest* DeviceManagementRequest::release_certificate_based_register_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.certificate_based_register_request)
+  _has_bits_[0] &= ~0x00020000u;
+  ::enterprise_management::CertificateBasedDeviceRegisterRequest* temp = certificate_based_register_request_;
+  certificate_based_register_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CertificateBasedDeviceRegisterRequest* DeviceManagementRequest::_internal_mutable_certificate_based_register_request() {
+  _has_bits_[0] |= 0x00020000u;
+  if (certificate_based_register_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CertificateBasedDeviceRegisterRequest>(GetArenaNoVirtual());
+    certificate_based_register_request_ = p;
+  }
+  return certificate_based_register_request_;
+}
+inline ::enterprise_management::CertificateBasedDeviceRegisterRequest* DeviceManagementRequest::mutable_certificate_based_register_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.certificate_based_register_request)
+  return _internal_mutable_certificate_based_register_request();
+}
+inline void DeviceManagementRequest::set_allocated_certificate_based_register_request(::enterprise_management::CertificateBasedDeviceRegisterRequest* certificate_based_register_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete certificate_based_register_request_;
+  }
+  if (certificate_based_register_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      certificate_based_register_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, certificate_based_register_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00020000u;
+  } else {
+    _has_bits_[0] &= ~0x00020000u;
+  }
+  certificate_based_register_request_ = certificate_based_register_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.certificate_based_register_request)
+}
+
+// optional .enterprise_management.ActiveDirectoryEnrollPlayUserRequest active_directory_enroll_play_user_request = 19;
+inline bool DeviceManagementRequest::_internal_has_active_directory_enroll_play_user_request() const {
+  bool value = (_has_bits_[0] & 0x00040000u) != 0;
+  PROTOBUF_ASSUME(!value || active_directory_enroll_play_user_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_active_directory_enroll_play_user_request() const {
+  return _internal_has_active_directory_enroll_play_user_request();
+}
+inline void DeviceManagementRequest::clear_active_directory_enroll_play_user_request() {
+  if (active_directory_enroll_play_user_request_ != nullptr) active_directory_enroll_play_user_request_->Clear();
+  _has_bits_[0] &= ~0x00040000u;
+}
+inline const ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest& DeviceManagementRequest::_internal_active_directory_enroll_play_user_request() const {
+  const ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* p = active_directory_enroll_play_user_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest*>(
+      &::enterprise_management::_ActiveDirectoryEnrollPlayUserRequest_default_instance_);
+}
+inline const ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest& DeviceManagementRequest::active_directory_enroll_play_user_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.active_directory_enroll_play_user_request)
+  return _internal_active_directory_enroll_play_user_request();
+}
+inline ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* DeviceManagementRequest::release_active_directory_enroll_play_user_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.active_directory_enroll_play_user_request)
+  _has_bits_[0] &= ~0x00040000u;
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* temp = active_directory_enroll_play_user_request_;
+  active_directory_enroll_play_user_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* DeviceManagementRequest::_internal_mutable_active_directory_enroll_play_user_request() {
+  _has_bits_[0] |= 0x00040000u;
+  if (active_directory_enroll_play_user_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ActiveDirectoryEnrollPlayUserRequest>(GetArenaNoVirtual());
+    active_directory_enroll_play_user_request_ = p;
+  }
+  return active_directory_enroll_play_user_request_;
+}
+inline ::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* DeviceManagementRequest::mutable_active_directory_enroll_play_user_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.active_directory_enroll_play_user_request)
+  return _internal_mutable_active_directory_enroll_play_user_request();
+}
+inline void DeviceManagementRequest::set_allocated_active_directory_enroll_play_user_request(::enterprise_management::ActiveDirectoryEnrollPlayUserRequest* active_directory_enroll_play_user_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete active_directory_enroll_play_user_request_;
+  }
+  if (active_directory_enroll_play_user_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      active_directory_enroll_play_user_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, active_directory_enroll_play_user_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00040000u;
+  } else {
+    _has_bits_[0] &= ~0x00040000u;
+  }
+  active_directory_enroll_play_user_request_ = active_directory_enroll_play_user_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.active_directory_enroll_play_user_request)
+}
+
+// optional .enterprise_management.ActiveDirectoryPlayActivityRequest active_directory_play_activity_request = 20;
+inline bool DeviceManagementRequest::_internal_has_active_directory_play_activity_request() const {
+  bool value = (_has_bits_[0] & 0x00080000u) != 0;
+  PROTOBUF_ASSUME(!value || active_directory_play_activity_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_active_directory_play_activity_request() const {
+  return _internal_has_active_directory_play_activity_request();
+}
+inline void DeviceManagementRequest::clear_active_directory_play_activity_request() {
+  if (active_directory_play_activity_request_ != nullptr) active_directory_play_activity_request_->Clear();
+  _has_bits_[0] &= ~0x00080000u;
+}
+inline const ::enterprise_management::ActiveDirectoryPlayActivityRequest& DeviceManagementRequest::_internal_active_directory_play_activity_request() const {
+  const ::enterprise_management::ActiveDirectoryPlayActivityRequest* p = active_directory_play_activity_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ActiveDirectoryPlayActivityRequest*>(
+      &::enterprise_management::_ActiveDirectoryPlayActivityRequest_default_instance_);
+}
+inline const ::enterprise_management::ActiveDirectoryPlayActivityRequest& DeviceManagementRequest::active_directory_play_activity_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.active_directory_play_activity_request)
+  return _internal_active_directory_play_activity_request();
+}
+inline ::enterprise_management::ActiveDirectoryPlayActivityRequest* DeviceManagementRequest::release_active_directory_play_activity_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.active_directory_play_activity_request)
+  _has_bits_[0] &= ~0x00080000u;
+  ::enterprise_management::ActiveDirectoryPlayActivityRequest* temp = active_directory_play_activity_request_;
+  active_directory_play_activity_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ActiveDirectoryPlayActivityRequest* DeviceManagementRequest::_internal_mutable_active_directory_play_activity_request() {
+  _has_bits_[0] |= 0x00080000u;
+  if (active_directory_play_activity_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ActiveDirectoryPlayActivityRequest>(GetArenaNoVirtual());
+    active_directory_play_activity_request_ = p;
+  }
+  return active_directory_play_activity_request_;
+}
+inline ::enterprise_management::ActiveDirectoryPlayActivityRequest* DeviceManagementRequest::mutable_active_directory_play_activity_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.active_directory_play_activity_request)
+  return _internal_mutable_active_directory_play_activity_request();
+}
+inline void DeviceManagementRequest::set_allocated_active_directory_play_activity_request(::enterprise_management::ActiveDirectoryPlayActivityRequest* active_directory_play_activity_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete active_directory_play_activity_request_;
+  }
+  if (active_directory_play_activity_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      active_directory_play_activity_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, active_directory_play_activity_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00080000u;
+  } else {
+    _has_bits_[0] &= ~0x00080000u;
+  }
+  active_directory_play_activity_request_ = active_directory_play_activity_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.active_directory_play_activity_request)
+}
+
+// optional .enterprise_management.CheckDeviceLicenseRequest check_device_license_request_deprecated = 21 [deprecated = true];
+inline bool DeviceManagementRequest::_internal_has_check_device_license_request_deprecated() const {
+  bool value = (_has_bits_[0] & 0x00100000u) != 0;
+  PROTOBUF_ASSUME(!value || check_device_license_request_deprecated_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_check_device_license_request_deprecated() const {
+  return _internal_has_check_device_license_request_deprecated();
+}
+inline void DeviceManagementRequest::clear_check_device_license_request_deprecated() {
+  if (check_device_license_request_deprecated_ != nullptr) check_device_license_request_deprecated_->Clear();
+  _has_bits_[0] &= ~0x00100000u;
+}
+inline const ::enterprise_management::CheckDeviceLicenseRequest& DeviceManagementRequest::_internal_check_device_license_request_deprecated() const {
+  const ::enterprise_management::CheckDeviceLicenseRequest* p = check_device_license_request_deprecated_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CheckDeviceLicenseRequest*>(
+      &::enterprise_management::_CheckDeviceLicenseRequest_default_instance_);
+}
+inline const ::enterprise_management::CheckDeviceLicenseRequest& DeviceManagementRequest::check_device_license_request_deprecated() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.check_device_license_request_deprecated)
+  return _internal_check_device_license_request_deprecated();
+}
+inline ::enterprise_management::CheckDeviceLicenseRequest* DeviceManagementRequest::release_check_device_license_request_deprecated() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.check_device_license_request_deprecated)
+  _has_bits_[0] &= ~0x00100000u;
+  ::enterprise_management::CheckDeviceLicenseRequest* temp = check_device_license_request_deprecated_;
+  check_device_license_request_deprecated_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CheckDeviceLicenseRequest* DeviceManagementRequest::_internal_mutable_check_device_license_request_deprecated() {
+  _has_bits_[0] |= 0x00100000u;
+  if (check_device_license_request_deprecated_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CheckDeviceLicenseRequest>(GetArenaNoVirtual());
+    check_device_license_request_deprecated_ = p;
+  }
+  return check_device_license_request_deprecated_;
+}
+inline ::enterprise_management::CheckDeviceLicenseRequest* DeviceManagementRequest::mutable_check_device_license_request_deprecated() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.check_device_license_request_deprecated)
+  return _internal_mutable_check_device_license_request_deprecated();
+}
+inline void DeviceManagementRequest::set_allocated_check_device_license_request_deprecated(::enterprise_management::CheckDeviceLicenseRequest* check_device_license_request_deprecated) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete check_device_license_request_deprecated_;
+  }
+  if (check_device_license_request_deprecated) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      check_device_license_request_deprecated = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, check_device_license_request_deprecated, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00100000u;
+  } else {
+    _has_bits_[0] &= ~0x00100000u;
+  }
+  check_device_license_request_deprecated_ = check_device_license_request_deprecated;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.check_device_license_request_deprecated)
+}
+
+// optional .enterprise_management.ActiveDirectoryUserSigninRequest active_directory_user_signin_request = 22;
+inline bool DeviceManagementRequest::_internal_has_active_directory_user_signin_request() const {
+  bool value = (_has_bits_[0] & 0x00200000u) != 0;
+  PROTOBUF_ASSUME(!value || active_directory_user_signin_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_active_directory_user_signin_request() const {
+  return _internal_has_active_directory_user_signin_request();
+}
+inline void DeviceManagementRequest::clear_active_directory_user_signin_request() {
+  if (active_directory_user_signin_request_ != nullptr) active_directory_user_signin_request_->Clear();
+  _has_bits_[0] &= ~0x00200000u;
+}
+inline const ::enterprise_management::ActiveDirectoryUserSigninRequest& DeviceManagementRequest::_internal_active_directory_user_signin_request() const {
+  const ::enterprise_management::ActiveDirectoryUserSigninRequest* p = active_directory_user_signin_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ActiveDirectoryUserSigninRequest*>(
+      &::enterprise_management::_ActiveDirectoryUserSigninRequest_default_instance_);
+}
+inline const ::enterprise_management::ActiveDirectoryUserSigninRequest& DeviceManagementRequest::active_directory_user_signin_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.active_directory_user_signin_request)
+  return _internal_active_directory_user_signin_request();
+}
+inline ::enterprise_management::ActiveDirectoryUserSigninRequest* DeviceManagementRequest::release_active_directory_user_signin_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.active_directory_user_signin_request)
+  _has_bits_[0] &= ~0x00200000u;
+  ::enterprise_management::ActiveDirectoryUserSigninRequest* temp = active_directory_user_signin_request_;
+  active_directory_user_signin_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ActiveDirectoryUserSigninRequest* DeviceManagementRequest::_internal_mutable_active_directory_user_signin_request() {
+  _has_bits_[0] |= 0x00200000u;
+  if (active_directory_user_signin_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ActiveDirectoryUserSigninRequest>(GetArenaNoVirtual());
+    active_directory_user_signin_request_ = p;
+  }
+  return active_directory_user_signin_request_;
+}
+inline ::enterprise_management::ActiveDirectoryUserSigninRequest* DeviceManagementRequest::mutable_active_directory_user_signin_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.active_directory_user_signin_request)
+  return _internal_mutable_active_directory_user_signin_request();
+}
+inline void DeviceManagementRequest::set_allocated_active_directory_user_signin_request(::enterprise_management::ActiveDirectoryUserSigninRequest* active_directory_user_signin_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete active_directory_user_signin_request_;
+  }
+  if (active_directory_user_signin_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      active_directory_user_signin_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, active_directory_user_signin_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00200000u;
+  } else {
+    _has_bits_[0] &= ~0x00200000u;
+  }
+  active_directory_user_signin_request_ = active_directory_user_signin_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.active_directory_user_signin_request)
+}
+
+// optional .enterprise_management.RegisterBrowserRequest register_browser_request = 23;
+inline bool DeviceManagementRequest::_internal_has_register_browser_request() const {
+  bool value = (_has_bits_[0] & 0x00400000u) != 0;
+  PROTOBUF_ASSUME(!value || register_browser_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_register_browser_request() const {
+  return _internal_has_register_browser_request();
+}
+inline void DeviceManagementRequest::clear_register_browser_request() {
+  if (register_browser_request_ != nullptr) register_browser_request_->Clear();
+  _has_bits_[0] &= ~0x00400000u;
+}
+inline const ::enterprise_management::RegisterBrowserRequest& DeviceManagementRequest::_internal_register_browser_request() const {
+  const ::enterprise_management::RegisterBrowserRequest* p = register_browser_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::RegisterBrowserRequest*>(
+      &::enterprise_management::_RegisterBrowserRequest_default_instance_);
+}
+inline const ::enterprise_management::RegisterBrowserRequest& DeviceManagementRequest::register_browser_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.register_browser_request)
+  return _internal_register_browser_request();
+}
+inline ::enterprise_management::RegisterBrowserRequest* DeviceManagementRequest::release_register_browser_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.register_browser_request)
+  _has_bits_[0] &= ~0x00400000u;
+  ::enterprise_management::RegisterBrowserRequest* temp = register_browser_request_;
+  register_browser_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::RegisterBrowserRequest* DeviceManagementRequest::_internal_mutable_register_browser_request() {
+  _has_bits_[0] |= 0x00400000u;
+  if (register_browser_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::RegisterBrowserRequest>(GetArenaNoVirtual());
+    register_browser_request_ = p;
+  }
+  return register_browser_request_;
+}
+inline ::enterprise_management::RegisterBrowserRequest* DeviceManagementRequest::mutable_register_browser_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.register_browser_request)
+  return _internal_mutable_register_browser_request();
+}
+inline void DeviceManagementRequest::set_allocated_register_browser_request(::enterprise_management::RegisterBrowserRequest* register_browser_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete register_browser_request_;
+  }
+  if (register_browser_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      register_browser_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, register_browser_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00400000u;
+  } else {
+    _has_bits_[0] &= ~0x00400000u;
+  }
+  register_browser_request_ = register_browser_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.register_browser_request)
+}
+
+// optional .enterprise_management.AppInstallReportRequest app_install_report_request = 25;
+inline bool DeviceManagementRequest::_internal_has_app_install_report_request() const {
+  bool value = (_has_bits_[0] & 0x00800000u) != 0;
+  PROTOBUF_ASSUME(!value || app_install_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_app_install_report_request() const {
+  return _internal_has_app_install_report_request();
+}
+inline void DeviceManagementRequest::clear_app_install_report_request() {
+  if (app_install_report_request_ != nullptr) app_install_report_request_->Clear();
+  _has_bits_[0] &= ~0x00800000u;
+}
+inline const ::enterprise_management::AppInstallReportRequest& DeviceManagementRequest::_internal_app_install_report_request() const {
+  const ::enterprise_management::AppInstallReportRequest* p = app_install_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AppInstallReportRequest*>(
+      &::enterprise_management::_AppInstallReportRequest_default_instance_);
+}
+inline const ::enterprise_management::AppInstallReportRequest& DeviceManagementRequest::app_install_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.app_install_report_request)
+  return _internal_app_install_report_request();
+}
+inline ::enterprise_management::AppInstallReportRequest* DeviceManagementRequest::release_app_install_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.app_install_report_request)
+  _has_bits_[0] &= ~0x00800000u;
+  ::enterprise_management::AppInstallReportRequest* temp = app_install_report_request_;
+  app_install_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AppInstallReportRequest* DeviceManagementRequest::_internal_mutable_app_install_report_request() {
+  _has_bits_[0] |= 0x00800000u;
+  if (app_install_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AppInstallReportRequest>(GetArenaNoVirtual());
+    app_install_report_request_ = p;
+  }
+  return app_install_report_request_;
+}
+inline ::enterprise_management::AppInstallReportRequest* DeviceManagementRequest::mutable_app_install_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.app_install_report_request)
+  return _internal_mutable_app_install_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_app_install_report_request(::enterprise_management::AppInstallReportRequest* app_install_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete app_install_report_request_;
+  }
+  if (app_install_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      app_install_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, app_install_report_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00800000u;
+  } else {
+    _has_bits_[0] &= ~0x00800000u;
+  }
+  app_install_report_request_ = app_install_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.app_install_report_request)
+}
+
+// optional .enterprise_management.ChromeDesktopReportRequest chrome_desktop_report_request = 26;
+inline bool DeviceManagementRequest::_internal_has_chrome_desktop_report_request() const {
+  bool value = (_has_bits_[0] & 0x01000000u) != 0;
+  PROTOBUF_ASSUME(!value || chrome_desktop_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_chrome_desktop_report_request() const {
+  return _internal_has_chrome_desktop_report_request();
+}
+inline void DeviceManagementRequest::clear_chrome_desktop_report_request() {
+  if (chrome_desktop_report_request_ != nullptr) chrome_desktop_report_request_->Clear();
+  _has_bits_[0] &= ~0x01000000u;
+}
+inline const ::enterprise_management::ChromeDesktopReportRequest& DeviceManagementRequest::_internal_chrome_desktop_report_request() const {
+  const ::enterprise_management::ChromeDesktopReportRequest* p = chrome_desktop_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChromeDesktopReportRequest*>(
+      &::enterprise_management::_ChromeDesktopReportRequest_default_instance_);
+}
+inline const ::enterprise_management::ChromeDesktopReportRequest& DeviceManagementRequest::chrome_desktop_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.chrome_desktop_report_request)
+  return _internal_chrome_desktop_report_request();
+}
+inline ::enterprise_management::ChromeDesktopReportRequest* DeviceManagementRequest::release_chrome_desktop_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.chrome_desktop_report_request)
+  _has_bits_[0] &= ~0x01000000u;
+  ::enterprise_management::ChromeDesktopReportRequest* temp = chrome_desktop_report_request_;
+  chrome_desktop_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChromeDesktopReportRequest* DeviceManagementRequest::_internal_mutable_chrome_desktop_report_request() {
+  _has_bits_[0] |= 0x01000000u;
+  if (chrome_desktop_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChromeDesktopReportRequest>(GetArenaNoVirtual());
+    chrome_desktop_report_request_ = p;
+  }
+  return chrome_desktop_report_request_;
+}
+inline ::enterprise_management::ChromeDesktopReportRequest* DeviceManagementRequest::mutable_chrome_desktop_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.chrome_desktop_report_request)
+  return _internal_mutable_chrome_desktop_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_chrome_desktop_report_request(::enterprise_management::ChromeDesktopReportRequest* chrome_desktop_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete chrome_desktop_report_request_;
+  }
+  if (chrome_desktop_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      chrome_desktop_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, chrome_desktop_report_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x01000000u;
+  } else {
+    _has_bits_[0] &= ~0x01000000u;
+  }
+  chrome_desktop_report_request_ = chrome_desktop_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.chrome_desktop_report_request)
+}
+
+// optional .enterprise_management.PolicyValidationReportRequest policy_validation_report_request = 27;
+inline bool DeviceManagementRequest::_internal_has_policy_validation_report_request() const {
+  bool value = (_has_bits_[0] & 0x02000000u) != 0;
+  PROTOBUF_ASSUME(!value || policy_validation_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_policy_validation_report_request() const {
+  return _internal_has_policy_validation_report_request();
+}
+inline void DeviceManagementRequest::clear_policy_validation_report_request() {
+  if (policy_validation_report_request_ != nullptr) policy_validation_report_request_->Clear();
+  _has_bits_[0] &= ~0x02000000u;
+}
+inline const ::enterprise_management::PolicyValidationReportRequest& DeviceManagementRequest::_internal_policy_validation_report_request() const {
+  const ::enterprise_management::PolicyValidationReportRequest* p = policy_validation_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyValidationReportRequest*>(
+      &::enterprise_management::_PolicyValidationReportRequest_default_instance_);
+}
+inline const ::enterprise_management::PolicyValidationReportRequest& DeviceManagementRequest::policy_validation_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.policy_validation_report_request)
+  return _internal_policy_validation_report_request();
+}
+inline ::enterprise_management::PolicyValidationReportRequest* DeviceManagementRequest::release_policy_validation_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.policy_validation_report_request)
+  _has_bits_[0] &= ~0x02000000u;
+  ::enterprise_management::PolicyValidationReportRequest* temp = policy_validation_report_request_;
+  policy_validation_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyValidationReportRequest* DeviceManagementRequest::_internal_mutable_policy_validation_report_request() {
+  _has_bits_[0] |= 0x02000000u;
+  if (policy_validation_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyValidationReportRequest>(GetArenaNoVirtual());
+    policy_validation_report_request_ = p;
+  }
+  return policy_validation_report_request_;
+}
+inline ::enterprise_management::PolicyValidationReportRequest* DeviceManagementRequest::mutable_policy_validation_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.policy_validation_report_request)
+  return _internal_mutable_policy_validation_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_policy_validation_report_request(::enterprise_management::PolicyValidationReportRequest* policy_validation_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete policy_validation_report_request_;
+  }
+  if (policy_validation_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      policy_validation_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, policy_validation_report_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x02000000u;
+  } else {
+    _has_bits_[0] &= ~0x02000000u;
+  }
+  policy_validation_report_request_ = policy_validation_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.policy_validation_report_request)
+}
+
+// optional .enterprise_management.DeviceInitialEnrollmentStateRequest device_initial_enrollment_state_request = 28;
+inline bool DeviceManagementRequest::_internal_has_device_initial_enrollment_state_request() const {
+  bool value = (_has_bits_[0] & 0x04000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_initial_enrollment_state_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_device_initial_enrollment_state_request() const {
+  return _internal_has_device_initial_enrollment_state_request();
+}
+inline void DeviceManagementRequest::clear_device_initial_enrollment_state_request() {
+  if (device_initial_enrollment_state_request_ != nullptr) device_initial_enrollment_state_request_->Clear();
+  _has_bits_[0] &= ~0x04000000u;
+}
+inline const ::enterprise_management::DeviceInitialEnrollmentStateRequest& DeviceManagementRequest::_internal_device_initial_enrollment_state_request() const {
+  const ::enterprise_management::DeviceInitialEnrollmentStateRequest* p = device_initial_enrollment_state_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceInitialEnrollmentStateRequest*>(
+      &::enterprise_management::_DeviceInitialEnrollmentStateRequest_default_instance_);
+}
+inline const ::enterprise_management::DeviceInitialEnrollmentStateRequest& DeviceManagementRequest::device_initial_enrollment_state_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.device_initial_enrollment_state_request)
+  return _internal_device_initial_enrollment_state_request();
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateRequest* DeviceManagementRequest::release_device_initial_enrollment_state_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.device_initial_enrollment_state_request)
+  _has_bits_[0] &= ~0x04000000u;
+  ::enterprise_management::DeviceInitialEnrollmentStateRequest* temp = device_initial_enrollment_state_request_;
+  device_initial_enrollment_state_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateRequest* DeviceManagementRequest::_internal_mutable_device_initial_enrollment_state_request() {
+  _has_bits_[0] |= 0x04000000u;
+  if (device_initial_enrollment_state_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceInitialEnrollmentStateRequest>(GetArenaNoVirtual());
+    device_initial_enrollment_state_request_ = p;
+  }
+  return device_initial_enrollment_state_request_;
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateRequest* DeviceManagementRequest::mutable_device_initial_enrollment_state_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.device_initial_enrollment_state_request)
+  return _internal_mutable_device_initial_enrollment_state_request();
+}
+inline void DeviceManagementRequest::set_allocated_device_initial_enrollment_state_request(::enterprise_management::DeviceInitialEnrollmentStateRequest* device_initial_enrollment_state_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_initial_enrollment_state_request_;
+  }
+  if (device_initial_enrollment_state_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_initial_enrollment_state_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_initial_enrollment_state_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x04000000u;
+  } else {
+    _has_bits_[0] &= ~0x04000000u;
+  }
+  device_initial_enrollment_state_request_ = device_initial_enrollment_state_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.device_initial_enrollment_state_request)
+}
+
+// optional .enterprise_management.RefreshAccountRequest refresh_account_request = 29;
+inline bool DeviceManagementRequest::_internal_has_refresh_account_request() const {
+  bool value = (_has_bits_[0] & 0x08000000u) != 0;
+  PROTOBUF_ASSUME(!value || refresh_account_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_refresh_account_request() const {
+  return _internal_has_refresh_account_request();
+}
+inline void DeviceManagementRequest::clear_refresh_account_request() {
+  if (refresh_account_request_ != nullptr) refresh_account_request_->Clear();
+  _has_bits_[0] &= ~0x08000000u;
+}
+inline const ::enterprise_management::RefreshAccountRequest& DeviceManagementRequest::_internal_refresh_account_request() const {
+  const ::enterprise_management::RefreshAccountRequest* p = refresh_account_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::RefreshAccountRequest*>(
+      &::enterprise_management::_RefreshAccountRequest_default_instance_);
+}
+inline const ::enterprise_management::RefreshAccountRequest& DeviceManagementRequest::refresh_account_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.refresh_account_request)
+  return _internal_refresh_account_request();
+}
+inline ::enterprise_management::RefreshAccountRequest* DeviceManagementRequest::release_refresh_account_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.refresh_account_request)
+  _has_bits_[0] &= ~0x08000000u;
+  ::enterprise_management::RefreshAccountRequest* temp = refresh_account_request_;
+  refresh_account_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::RefreshAccountRequest* DeviceManagementRequest::_internal_mutable_refresh_account_request() {
+  _has_bits_[0] |= 0x08000000u;
+  if (refresh_account_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::RefreshAccountRequest>(GetArenaNoVirtual());
+    refresh_account_request_ = p;
+  }
+  return refresh_account_request_;
+}
+inline ::enterprise_management::RefreshAccountRequest* DeviceManagementRequest::mutable_refresh_account_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.refresh_account_request)
+  return _internal_mutable_refresh_account_request();
+}
+inline void DeviceManagementRequest::set_allocated_refresh_account_request(::enterprise_management::RefreshAccountRequest* refresh_account_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete refresh_account_request_;
+  }
+  if (refresh_account_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      refresh_account_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, refresh_account_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x08000000u;
+  } else {
+    _has_bits_[0] &= ~0x08000000u;
+  }
+  refresh_account_request_ = refresh_account_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.refresh_account_request)
+}
+
+// optional .enterprise_management.RsuLookupKeyUploadRequest rsu_lookup_key_upload_request = 31;
+inline bool DeviceManagementRequest::_internal_has_rsu_lookup_key_upload_request() const {
+  bool value = (_has_bits_[0] & 0x20000000u) != 0;
+  PROTOBUF_ASSUME(!value || rsu_lookup_key_upload_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_rsu_lookup_key_upload_request() const {
+  return _internal_has_rsu_lookup_key_upload_request();
+}
+inline void DeviceManagementRequest::clear_rsu_lookup_key_upload_request() {
+  if (rsu_lookup_key_upload_request_ != nullptr) rsu_lookup_key_upload_request_->Clear();
+  _has_bits_[0] &= ~0x20000000u;
+}
+inline const ::enterprise_management::RsuLookupKeyUploadRequest& DeviceManagementRequest::_internal_rsu_lookup_key_upload_request() const {
+  const ::enterprise_management::RsuLookupKeyUploadRequest* p = rsu_lookup_key_upload_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::RsuLookupKeyUploadRequest*>(
+      &::enterprise_management::_RsuLookupKeyUploadRequest_default_instance_);
+}
+inline const ::enterprise_management::RsuLookupKeyUploadRequest& DeviceManagementRequest::rsu_lookup_key_upload_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.rsu_lookup_key_upload_request)
+  return _internal_rsu_lookup_key_upload_request();
+}
+inline ::enterprise_management::RsuLookupKeyUploadRequest* DeviceManagementRequest::release_rsu_lookup_key_upload_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.rsu_lookup_key_upload_request)
+  _has_bits_[0] &= ~0x20000000u;
+  ::enterprise_management::RsuLookupKeyUploadRequest* temp = rsu_lookup_key_upload_request_;
+  rsu_lookup_key_upload_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::RsuLookupKeyUploadRequest* DeviceManagementRequest::_internal_mutable_rsu_lookup_key_upload_request() {
+  _has_bits_[0] |= 0x20000000u;
+  if (rsu_lookup_key_upload_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::RsuLookupKeyUploadRequest>(GetArenaNoVirtual());
+    rsu_lookup_key_upload_request_ = p;
+  }
+  return rsu_lookup_key_upload_request_;
+}
+inline ::enterprise_management::RsuLookupKeyUploadRequest* DeviceManagementRequest::mutable_rsu_lookup_key_upload_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.rsu_lookup_key_upload_request)
+  return _internal_mutable_rsu_lookup_key_upload_request();
+}
+inline void DeviceManagementRequest::set_allocated_rsu_lookup_key_upload_request(::enterprise_management::RsuLookupKeyUploadRequest* rsu_lookup_key_upload_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete rsu_lookup_key_upload_request_;
+  }
+  if (rsu_lookup_key_upload_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      rsu_lookup_key_upload_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, rsu_lookup_key_upload_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x20000000u;
+  } else {
+    _has_bits_[0] &= ~0x20000000u;
+  }
+  rsu_lookup_key_upload_request_ = rsu_lookup_key_upload_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.rsu_lookup_key_upload_request)
+}
+
+// optional .enterprise_management.PublicSamlUserRequest public_saml_user_request = 32;
+inline bool DeviceManagementRequest::_internal_has_public_saml_user_request() const {
+  bool value = (_has_bits_[0] & 0x40000000u) != 0;
+  PROTOBUF_ASSUME(!value || public_saml_user_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_public_saml_user_request() const {
+  return _internal_has_public_saml_user_request();
+}
+inline void DeviceManagementRequest::clear_public_saml_user_request() {
+  if (public_saml_user_request_ != nullptr) public_saml_user_request_->Clear();
+  _has_bits_[0] &= ~0x40000000u;
+}
+inline const ::enterprise_management::PublicSamlUserRequest& DeviceManagementRequest::_internal_public_saml_user_request() const {
+  const ::enterprise_management::PublicSamlUserRequest* p = public_saml_user_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PublicSamlUserRequest*>(
+      &::enterprise_management::_PublicSamlUserRequest_default_instance_);
+}
+inline const ::enterprise_management::PublicSamlUserRequest& DeviceManagementRequest::public_saml_user_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.public_saml_user_request)
+  return _internal_public_saml_user_request();
+}
+inline ::enterprise_management::PublicSamlUserRequest* DeviceManagementRequest::release_public_saml_user_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.public_saml_user_request)
+  _has_bits_[0] &= ~0x40000000u;
+  ::enterprise_management::PublicSamlUserRequest* temp = public_saml_user_request_;
+  public_saml_user_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PublicSamlUserRequest* DeviceManagementRequest::_internal_mutable_public_saml_user_request() {
+  _has_bits_[0] |= 0x40000000u;
+  if (public_saml_user_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PublicSamlUserRequest>(GetArenaNoVirtual());
+    public_saml_user_request_ = p;
+  }
+  return public_saml_user_request_;
+}
+inline ::enterprise_management::PublicSamlUserRequest* DeviceManagementRequest::mutable_public_saml_user_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.public_saml_user_request)
+  return _internal_mutable_public_saml_user_request();
+}
+inline void DeviceManagementRequest::set_allocated_public_saml_user_request(::enterprise_management::PublicSamlUserRequest* public_saml_user_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete public_saml_user_request_;
+  }
+  if (public_saml_user_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      public_saml_user_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, public_saml_user_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x40000000u;
+  } else {
+    _has_bits_[0] &= ~0x40000000u;
+  }
+  public_saml_user_request_ = public_saml_user_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.public_saml_user_request)
+}
+
+// optional .enterprise_management.ChromeOsUserReportRequest chrome_os_user_report_request = 33;
+inline bool DeviceManagementRequest::_internal_has_chrome_os_user_report_request() const {
+  bool value = (_has_bits_[0] & 0x80000000u) != 0;
+  PROTOBUF_ASSUME(!value || chrome_os_user_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_chrome_os_user_report_request() const {
+  return _internal_has_chrome_os_user_report_request();
+}
+inline void DeviceManagementRequest::clear_chrome_os_user_report_request() {
+  if (chrome_os_user_report_request_ != nullptr) chrome_os_user_report_request_->Clear();
+  _has_bits_[0] &= ~0x80000000u;
+}
+inline const ::enterprise_management::ChromeOsUserReportRequest& DeviceManagementRequest::_internal_chrome_os_user_report_request() const {
+  const ::enterprise_management::ChromeOsUserReportRequest* p = chrome_os_user_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChromeOsUserReportRequest*>(
+      &::enterprise_management::_ChromeOsUserReportRequest_default_instance_);
+}
+inline const ::enterprise_management::ChromeOsUserReportRequest& DeviceManagementRequest::chrome_os_user_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.chrome_os_user_report_request)
+  return _internal_chrome_os_user_report_request();
+}
+inline ::enterprise_management::ChromeOsUserReportRequest* DeviceManagementRequest::release_chrome_os_user_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.chrome_os_user_report_request)
+  _has_bits_[0] &= ~0x80000000u;
+  ::enterprise_management::ChromeOsUserReportRequest* temp = chrome_os_user_report_request_;
+  chrome_os_user_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChromeOsUserReportRequest* DeviceManagementRequest::_internal_mutable_chrome_os_user_report_request() {
+  _has_bits_[0] |= 0x80000000u;
+  if (chrome_os_user_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChromeOsUserReportRequest>(GetArenaNoVirtual());
+    chrome_os_user_report_request_ = p;
+  }
+  return chrome_os_user_report_request_;
+}
+inline ::enterprise_management::ChromeOsUserReportRequest* DeviceManagementRequest::mutable_chrome_os_user_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.chrome_os_user_report_request)
+  return _internal_mutable_chrome_os_user_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_chrome_os_user_report_request(::enterprise_management::ChromeOsUserReportRequest* chrome_os_user_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete chrome_os_user_report_request_;
+  }
+  if (chrome_os_user_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      chrome_os_user_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, chrome_os_user_report_request, submessage_arena);
+    }
+    _has_bits_[0] |= 0x80000000u;
+  } else {
+    _has_bits_[0] &= ~0x80000000u;
+  }
+  chrome_os_user_report_request_ = chrome_os_user_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.chrome_os_user_report_request)
+}
+
+// optional .enterprise_management.ClientCertificateProvisioningRequest client_certificate_provisioning_request = 34;
+inline bool DeviceManagementRequest::_internal_has_client_certificate_provisioning_request() const {
+  bool value = (_has_bits_[1] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || client_certificate_provisioning_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_client_certificate_provisioning_request() const {
+  return _internal_has_client_certificate_provisioning_request();
+}
+inline void DeviceManagementRequest::clear_client_certificate_provisioning_request() {
+  if (client_certificate_provisioning_request_ != nullptr) client_certificate_provisioning_request_->Clear();
+  _has_bits_[1] &= ~0x00000001u;
+}
+inline const ::enterprise_management::ClientCertificateProvisioningRequest& DeviceManagementRequest::_internal_client_certificate_provisioning_request() const {
+  const ::enterprise_management::ClientCertificateProvisioningRequest* p = client_certificate_provisioning_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ClientCertificateProvisioningRequest*>(
+      &::enterprise_management::_ClientCertificateProvisioningRequest_default_instance_);
+}
+inline const ::enterprise_management::ClientCertificateProvisioningRequest& DeviceManagementRequest::client_certificate_provisioning_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.client_certificate_provisioning_request)
+  return _internal_client_certificate_provisioning_request();
+}
+inline ::enterprise_management::ClientCertificateProvisioningRequest* DeviceManagementRequest::release_client_certificate_provisioning_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.client_certificate_provisioning_request)
+  _has_bits_[1] &= ~0x00000001u;
+  ::enterprise_management::ClientCertificateProvisioningRequest* temp = client_certificate_provisioning_request_;
+  client_certificate_provisioning_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ClientCertificateProvisioningRequest* DeviceManagementRequest::_internal_mutable_client_certificate_provisioning_request() {
+  _has_bits_[1] |= 0x00000001u;
+  if (client_certificate_provisioning_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ClientCertificateProvisioningRequest>(GetArenaNoVirtual());
+    client_certificate_provisioning_request_ = p;
+  }
+  return client_certificate_provisioning_request_;
+}
+inline ::enterprise_management::ClientCertificateProvisioningRequest* DeviceManagementRequest::mutable_client_certificate_provisioning_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.client_certificate_provisioning_request)
+  return _internal_mutable_client_certificate_provisioning_request();
+}
+inline void DeviceManagementRequest::set_allocated_client_certificate_provisioning_request(::enterprise_management::ClientCertificateProvisioningRequest* client_certificate_provisioning_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete client_certificate_provisioning_request_;
+  }
+  if (client_certificate_provisioning_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      client_certificate_provisioning_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, client_certificate_provisioning_request, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000001u;
+  } else {
+    _has_bits_[1] &= ~0x00000001u;
+  }
+  client_certificate_provisioning_request_ = client_certificate_provisioning_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.client_certificate_provisioning_request)
+}
+
+// optional .enterprise_management.ExtensionInstallReportRequest extension_install_report_request = 35;
+inline bool DeviceManagementRequest::_internal_has_extension_install_report_request() const {
+  bool value = (_has_bits_[1] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || extension_install_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_extension_install_report_request() const {
+  return _internal_has_extension_install_report_request();
+}
+inline void DeviceManagementRequest::clear_extension_install_report_request() {
+  if (extension_install_report_request_ != nullptr) extension_install_report_request_->Clear();
+  _has_bits_[1] &= ~0x00000002u;
+}
+inline const ::enterprise_management::ExtensionInstallReportRequest& DeviceManagementRequest::_internal_extension_install_report_request() const {
+  const ::enterprise_management::ExtensionInstallReportRequest* p = extension_install_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ExtensionInstallReportRequest*>(
+      &::enterprise_management::_ExtensionInstallReportRequest_default_instance_);
+}
+inline const ::enterprise_management::ExtensionInstallReportRequest& DeviceManagementRequest::extension_install_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.extension_install_report_request)
+  return _internal_extension_install_report_request();
+}
+inline ::enterprise_management::ExtensionInstallReportRequest* DeviceManagementRequest::release_extension_install_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.extension_install_report_request)
+  _has_bits_[1] &= ~0x00000002u;
+  ::enterprise_management::ExtensionInstallReportRequest* temp = extension_install_report_request_;
+  extension_install_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ExtensionInstallReportRequest* DeviceManagementRequest::_internal_mutable_extension_install_report_request() {
+  _has_bits_[1] |= 0x00000002u;
+  if (extension_install_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ExtensionInstallReportRequest>(GetArenaNoVirtual());
+    extension_install_report_request_ = p;
+  }
+  return extension_install_report_request_;
+}
+inline ::enterprise_management::ExtensionInstallReportRequest* DeviceManagementRequest::mutable_extension_install_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.extension_install_report_request)
+  return _internal_mutable_extension_install_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_extension_install_report_request(::enterprise_management::ExtensionInstallReportRequest* extension_install_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete extension_install_report_request_;
+  }
+  if (extension_install_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      extension_install_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, extension_install_report_request, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000002u;
+  } else {
+    _has_bits_[1] &= ~0x00000002u;
+  }
+  extension_install_report_request_ = extension_install_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.extension_install_report_request)
+}
+
+// optional .enterprise_management.CheckUserAccountRequest check_user_account_request = 36;
+inline bool DeviceManagementRequest::_internal_has_check_user_account_request() const {
+  bool value = (_has_bits_[1] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || check_user_account_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_check_user_account_request() const {
+  return _internal_has_check_user_account_request();
+}
+inline void DeviceManagementRequest::clear_check_user_account_request() {
+  if (check_user_account_request_ != nullptr) check_user_account_request_->Clear();
+  _has_bits_[1] &= ~0x00000004u;
+}
+inline const ::enterprise_management::CheckUserAccountRequest& DeviceManagementRequest::_internal_check_user_account_request() const {
+  const ::enterprise_management::CheckUserAccountRequest* p = check_user_account_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CheckUserAccountRequest*>(
+      &::enterprise_management::_CheckUserAccountRequest_default_instance_);
+}
+inline const ::enterprise_management::CheckUserAccountRequest& DeviceManagementRequest::check_user_account_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.check_user_account_request)
+  return _internal_check_user_account_request();
+}
+inline ::enterprise_management::CheckUserAccountRequest* DeviceManagementRequest::release_check_user_account_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.check_user_account_request)
+  _has_bits_[1] &= ~0x00000004u;
+  ::enterprise_management::CheckUserAccountRequest* temp = check_user_account_request_;
+  check_user_account_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CheckUserAccountRequest* DeviceManagementRequest::_internal_mutable_check_user_account_request() {
+  _has_bits_[1] |= 0x00000004u;
+  if (check_user_account_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CheckUserAccountRequest>(GetArenaNoVirtual());
+    check_user_account_request_ = p;
+  }
+  return check_user_account_request_;
+}
+inline ::enterprise_management::CheckUserAccountRequest* DeviceManagementRequest::mutable_check_user_account_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.check_user_account_request)
+  return _internal_mutable_check_user_account_request();
+}
+inline void DeviceManagementRequest::set_allocated_check_user_account_request(::enterprise_management::CheckUserAccountRequest* check_user_account_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete check_user_account_request_;
+  }
+  if (check_user_account_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      check_user_account_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, check_user_account_request, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000004u;
+  } else {
+    _has_bits_[1] &= ~0x00000004u;
+  }
+  check_user_account_request_ = check_user_account_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.check_user_account_request)
+}
+
+// optional .enterprise_management.PrivateSetMembershipRequest private_set_membership_request = 37;
+inline bool DeviceManagementRequest::_internal_has_private_set_membership_request() const {
+  bool value = (_has_bits_[1] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || private_set_membership_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_private_set_membership_request() const {
+  return _internal_has_private_set_membership_request();
+}
+inline void DeviceManagementRequest::clear_private_set_membership_request() {
+  if (private_set_membership_request_ != nullptr) private_set_membership_request_->Clear();
+  _has_bits_[1] &= ~0x00000008u;
+}
+inline const ::enterprise_management::PrivateSetMembershipRequest& DeviceManagementRequest::_internal_private_set_membership_request() const {
+  const ::enterprise_management::PrivateSetMembershipRequest* p = private_set_membership_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PrivateSetMembershipRequest*>(
+      &::enterprise_management::_PrivateSetMembershipRequest_default_instance_);
+}
+inline const ::enterprise_management::PrivateSetMembershipRequest& DeviceManagementRequest::private_set_membership_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.private_set_membership_request)
+  return _internal_private_set_membership_request();
+}
+inline ::enterprise_management::PrivateSetMembershipRequest* DeviceManagementRequest::release_private_set_membership_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.private_set_membership_request)
+  _has_bits_[1] &= ~0x00000008u;
+  ::enterprise_management::PrivateSetMembershipRequest* temp = private_set_membership_request_;
+  private_set_membership_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PrivateSetMembershipRequest* DeviceManagementRequest::_internal_mutable_private_set_membership_request() {
+  _has_bits_[1] |= 0x00000008u;
+  if (private_set_membership_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PrivateSetMembershipRequest>(GetArenaNoVirtual());
+    private_set_membership_request_ = p;
+  }
+  return private_set_membership_request_;
+}
+inline ::enterprise_management::PrivateSetMembershipRequest* DeviceManagementRequest::mutable_private_set_membership_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.private_set_membership_request)
+  return _internal_mutable_private_set_membership_request();
+}
+inline void DeviceManagementRequest::set_allocated_private_set_membership_request(::enterprise_management::PrivateSetMembershipRequest* private_set_membership_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete private_set_membership_request_;
+  }
+  if (private_set_membership_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      private_set_membership_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, private_set_membership_request, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000008u;
+  } else {
+    _has_bits_[1] &= ~0x00000008u;
+  }
+  private_set_membership_request_ = private_set_membership_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.private_set_membership_request)
+}
+
+// optional .enterprise_management.BrowserPublicKeyUploadRequest browser_public_key_upload_request = 38;
+inline bool DeviceManagementRequest::_internal_has_browser_public_key_upload_request() const {
+  bool value = (_has_bits_[1] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || browser_public_key_upload_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_browser_public_key_upload_request() const {
+  return _internal_has_browser_public_key_upload_request();
+}
+inline void DeviceManagementRequest::clear_browser_public_key_upload_request() {
+  if (browser_public_key_upload_request_ != nullptr) browser_public_key_upload_request_->Clear();
+  _has_bits_[1] &= ~0x00000010u;
+}
+inline const ::enterprise_management::BrowserPublicKeyUploadRequest& DeviceManagementRequest::_internal_browser_public_key_upload_request() const {
+  const ::enterprise_management::BrowserPublicKeyUploadRequest* p = browser_public_key_upload_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserPublicKeyUploadRequest*>(
+      &::enterprise_management::_BrowserPublicKeyUploadRequest_default_instance_);
+}
+inline const ::enterprise_management::BrowserPublicKeyUploadRequest& DeviceManagementRequest::browser_public_key_upload_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.browser_public_key_upload_request)
+  return _internal_browser_public_key_upload_request();
+}
+inline ::enterprise_management::BrowserPublicKeyUploadRequest* DeviceManagementRequest::release_browser_public_key_upload_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.browser_public_key_upload_request)
+  _has_bits_[1] &= ~0x00000010u;
+  ::enterprise_management::BrowserPublicKeyUploadRequest* temp = browser_public_key_upload_request_;
+  browser_public_key_upload_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserPublicKeyUploadRequest* DeviceManagementRequest::_internal_mutable_browser_public_key_upload_request() {
+  _has_bits_[1] |= 0x00000010u;
+  if (browser_public_key_upload_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserPublicKeyUploadRequest>(GetArenaNoVirtual());
+    browser_public_key_upload_request_ = p;
+  }
+  return browser_public_key_upload_request_;
+}
+inline ::enterprise_management::BrowserPublicKeyUploadRequest* DeviceManagementRequest::mutable_browser_public_key_upload_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.browser_public_key_upload_request)
+  return _internal_mutable_browser_public_key_upload_request();
+}
+inline void DeviceManagementRequest::set_allocated_browser_public_key_upload_request(::enterprise_management::BrowserPublicKeyUploadRequest* browser_public_key_upload_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_public_key_upload_request_;
+  }
+  if (browser_public_key_upload_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_public_key_upload_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_public_key_upload_request, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000010u;
+  } else {
+    _has_bits_[1] &= ~0x00000010u;
+  }
+  browser_public_key_upload_request_ = browser_public_key_upload_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.browser_public_key_upload_request)
+}
+
+// optional .enterprise_management.UploadEuiccInfoRequest upload_euicc_info_request = 39;
+inline bool DeviceManagementRequest::_internal_has_upload_euicc_info_request() const {
+  bool value = (_has_bits_[1] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || upload_euicc_info_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_upload_euicc_info_request() const {
+  return _internal_has_upload_euicc_info_request();
+}
+inline void DeviceManagementRequest::clear_upload_euicc_info_request() {
+  if (upload_euicc_info_request_ != nullptr) upload_euicc_info_request_->Clear();
+  _has_bits_[1] &= ~0x00000020u;
+}
+inline const ::enterprise_management::UploadEuiccInfoRequest& DeviceManagementRequest::_internal_upload_euicc_info_request() const {
+  const ::enterprise_management::UploadEuiccInfoRequest* p = upload_euicc_info_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::UploadEuiccInfoRequest*>(
+      &::enterprise_management::_UploadEuiccInfoRequest_default_instance_);
+}
+inline const ::enterprise_management::UploadEuiccInfoRequest& DeviceManagementRequest::upload_euicc_info_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.upload_euicc_info_request)
+  return _internal_upload_euicc_info_request();
+}
+inline ::enterprise_management::UploadEuiccInfoRequest* DeviceManagementRequest::release_upload_euicc_info_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.upload_euicc_info_request)
+  _has_bits_[1] &= ~0x00000020u;
+  ::enterprise_management::UploadEuiccInfoRequest* temp = upload_euicc_info_request_;
+  upload_euicc_info_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::UploadEuiccInfoRequest* DeviceManagementRequest::_internal_mutable_upload_euicc_info_request() {
+  _has_bits_[1] |= 0x00000020u;
+  if (upload_euicc_info_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::UploadEuiccInfoRequest>(GetArenaNoVirtual());
+    upload_euicc_info_request_ = p;
+  }
+  return upload_euicc_info_request_;
+}
+inline ::enterprise_management::UploadEuiccInfoRequest* DeviceManagementRequest::mutable_upload_euicc_info_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.upload_euicc_info_request)
+  return _internal_mutable_upload_euicc_info_request();
+}
+inline void DeviceManagementRequest::set_allocated_upload_euicc_info_request(::enterprise_management::UploadEuiccInfoRequest* upload_euicc_info_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete upload_euicc_info_request_;
+  }
+  if (upload_euicc_info_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      upload_euicc_info_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, upload_euicc_info_request, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000020u;
+  } else {
+    _has_bits_[1] &= ~0x00000020u;
+  }
+  upload_euicc_info_request_ = upload_euicc_info_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.upload_euicc_info_request)
+}
+
+// optional .enterprise_management.ChromeProfileReportRequest chrome_profile_report_request = 40;
+inline bool DeviceManagementRequest::_internal_has_chrome_profile_report_request() const {
+  bool value = (_has_bits_[1] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || chrome_profile_report_request_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementRequest::has_chrome_profile_report_request() const {
+  return _internal_has_chrome_profile_report_request();
+}
+inline void DeviceManagementRequest::clear_chrome_profile_report_request() {
+  if (chrome_profile_report_request_ != nullptr) chrome_profile_report_request_->Clear();
+  _has_bits_[1] &= ~0x00000040u;
+}
+inline const ::enterprise_management::ChromeProfileReportRequest& DeviceManagementRequest::_internal_chrome_profile_report_request() const {
+  const ::enterprise_management::ChromeProfileReportRequest* p = chrome_profile_report_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChromeProfileReportRequest*>(
+      &::enterprise_management::_ChromeProfileReportRequest_default_instance_);
+}
+inline const ::enterprise_management::ChromeProfileReportRequest& DeviceManagementRequest::chrome_profile_report_request() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementRequest.chrome_profile_report_request)
+  return _internal_chrome_profile_report_request();
+}
+inline ::enterprise_management::ChromeProfileReportRequest* DeviceManagementRequest::release_chrome_profile_report_request() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementRequest.chrome_profile_report_request)
+  _has_bits_[1] &= ~0x00000040u;
+  ::enterprise_management::ChromeProfileReportRequest* temp = chrome_profile_report_request_;
+  chrome_profile_report_request_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChromeProfileReportRequest* DeviceManagementRequest::_internal_mutable_chrome_profile_report_request() {
+  _has_bits_[1] |= 0x00000040u;
+  if (chrome_profile_report_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChromeProfileReportRequest>(GetArenaNoVirtual());
+    chrome_profile_report_request_ = p;
+  }
+  return chrome_profile_report_request_;
+}
+inline ::enterprise_management::ChromeProfileReportRequest* DeviceManagementRequest::mutable_chrome_profile_report_request() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementRequest.chrome_profile_report_request)
+  return _internal_mutable_chrome_profile_report_request();
+}
+inline void DeviceManagementRequest::set_allocated_chrome_profile_report_request(::enterprise_management::ChromeProfileReportRequest* chrome_profile_report_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete chrome_profile_report_request_;
+  }
+  if (chrome_profile_report_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      chrome_profile_report_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, chrome_profile_report_request, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000040u;
+  } else {
+    _has_bits_[1] &= ~0x00000040u;
+  }
+  chrome_profile_report_request_ = chrome_profile_report_request;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementRequest.chrome_profile_report_request)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceManagementResponse
+
+// optional string error_message = 2;
+inline bool DeviceManagementResponse::_internal_has_error_message() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceManagementResponse::has_error_message() const {
+  return _internal_has_error_message();
+}
+inline void DeviceManagementResponse::clear_error_message() {
+  error_message_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& DeviceManagementResponse::error_message() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.error_message)
+  return _internal_error_message();
+}
+inline void DeviceManagementResponse::set_error_message(const std::string& value) {
+  _internal_set_error_message(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceManagementResponse.error_message)
+}
+inline std::string* DeviceManagementResponse::mutable_error_message() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.error_message)
+  return _internal_mutable_error_message();
+}
+inline const std::string& DeviceManagementResponse::_internal_error_message() const {
+  return error_message_.GetNoArena();
+}
+inline void DeviceManagementResponse::_internal_set_error_message(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DeviceManagementResponse::set_error_message(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.DeviceManagementResponse.error_message)
+}
+inline void DeviceManagementResponse::set_error_message(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.DeviceManagementResponse.error_message)
+}
+inline void DeviceManagementResponse::set_error_message(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  error_message_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.DeviceManagementResponse.error_message)
+}
+inline std::string* DeviceManagementResponse::_internal_mutable_error_message() {
+  _has_bits_[0] |= 0x00000001u;
+  return error_message_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DeviceManagementResponse::release_error_message() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.error_message)
+  if (!_internal_has_error_message()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return error_message_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DeviceManagementResponse::set_allocated_error_message(std::string* error_message) {
+  if (error_message != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  error_message_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), error_message);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.error_message)
+}
+
+// repeated .enterprise_management.DeviceManagementErrorDetail error_detail = 39;
+inline int DeviceManagementResponse::_internal_error_detail_size() const {
+  return error_detail_.size();
+}
+inline int DeviceManagementResponse::error_detail_size() const {
+  return _internal_error_detail_size();
+}
+inline void DeviceManagementResponse::clear_error_detail() {
+  error_detail_.Clear();
+}
+inline ::enterprise_management::DeviceManagementErrorDetail DeviceManagementResponse::_internal_error_detail(int index) const {
+  return static_cast< ::enterprise_management::DeviceManagementErrorDetail >(error_detail_.Get(index));
+}
+inline ::enterprise_management::DeviceManagementErrorDetail DeviceManagementResponse::error_detail(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.error_detail)
+  return _internal_error_detail(index);
+}
+inline void DeviceManagementResponse::set_error_detail(int index, ::enterprise_management::DeviceManagementErrorDetail value) {
+  assert(::enterprise_management::DeviceManagementErrorDetail_IsValid(value));
+  error_detail_.Set(index, value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceManagementResponse.error_detail)
+}
+inline void DeviceManagementResponse::_internal_add_error_detail(::enterprise_management::DeviceManagementErrorDetail value) {
+  assert(::enterprise_management::DeviceManagementErrorDetail_IsValid(value));
+  error_detail_.Add(value);
+}
+inline void DeviceManagementResponse::add_error_detail(::enterprise_management::DeviceManagementErrorDetail value) {
+  // @@protoc_insertion_point(field_add:enterprise_management.DeviceManagementResponse.error_detail)
+  _internal_add_error_detail(value);
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
+DeviceManagementResponse::error_detail() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.DeviceManagementResponse.error_detail)
+  return error_detail_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+DeviceManagementResponse::_internal_mutable_error_detail() {
+  return &error_detail_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+DeviceManagementResponse::mutable_error_detail() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.DeviceManagementResponse.error_detail)
+  return _internal_mutable_error_detail();
+}
+
+// optional .enterprise_management.DeviceRegisterResponse register_response = 3;
+inline bool DeviceManagementResponse::_internal_has_register_response() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || register_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_register_response() const {
+  return _internal_has_register_response();
+}
+inline void DeviceManagementResponse::clear_register_response() {
+  if (register_response_ != nullptr) register_response_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::DeviceRegisterResponse& DeviceManagementResponse::_internal_register_response() const {
+  const ::enterprise_management::DeviceRegisterResponse* p = register_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRegisterResponse*>(
+      &::enterprise_management::_DeviceRegisterResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceRegisterResponse& DeviceManagementResponse::register_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.register_response)
+  return _internal_register_response();
+}
+inline ::enterprise_management::DeviceRegisterResponse* DeviceManagementResponse::release_register_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.register_response)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::DeviceRegisterResponse* temp = register_response_;
+  register_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRegisterResponse* DeviceManagementResponse::_internal_mutable_register_response() {
+  _has_bits_[0] |= 0x00000002u;
+  if (register_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRegisterResponse>(GetArenaNoVirtual());
+    register_response_ = p;
+  }
+  return register_response_;
+}
+inline ::enterprise_management::DeviceRegisterResponse* DeviceManagementResponse::mutable_register_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.register_response)
+  return _internal_mutable_register_response();
+}
+inline void DeviceManagementResponse::set_allocated_register_response(::enterprise_management::DeviceRegisterResponse* register_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete register_response_;
+  }
+  if (register_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      register_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, register_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  register_response_ = register_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.register_response)
+}
+
+// optional .enterprise_management.DeviceUnregisterResponse unregister_response = 4;
+inline bool DeviceManagementResponse::_internal_has_unregister_response() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || unregister_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_unregister_response() const {
+  return _internal_has_unregister_response();
+}
+inline void DeviceManagementResponse::clear_unregister_response() {
+  if (unregister_response_ != nullptr) unregister_response_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::enterprise_management::DeviceUnregisterResponse& DeviceManagementResponse::_internal_unregister_response() const {
+  const ::enterprise_management::DeviceUnregisterResponse* p = unregister_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceUnregisterResponse*>(
+      &::enterprise_management::_DeviceUnregisterResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceUnregisterResponse& DeviceManagementResponse::unregister_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.unregister_response)
+  return _internal_unregister_response();
+}
+inline ::enterprise_management::DeviceUnregisterResponse* DeviceManagementResponse::release_unregister_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.unregister_response)
+  _has_bits_[0] &= ~0x00000004u;
+  ::enterprise_management::DeviceUnregisterResponse* temp = unregister_response_;
+  unregister_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceUnregisterResponse* DeviceManagementResponse::_internal_mutable_unregister_response() {
+  _has_bits_[0] |= 0x00000004u;
+  if (unregister_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceUnregisterResponse>(GetArenaNoVirtual());
+    unregister_response_ = p;
+  }
+  return unregister_response_;
+}
+inline ::enterprise_management::DeviceUnregisterResponse* DeviceManagementResponse::mutable_unregister_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.unregister_response)
+  return _internal_mutable_unregister_response();
+}
+inline void DeviceManagementResponse::set_allocated_unregister_response(::enterprise_management::DeviceUnregisterResponse* unregister_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete unregister_response_;
+  }
+  if (unregister_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      unregister_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, unregister_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  unregister_response_ = unregister_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.unregister_response)
+}
+
+// optional .enterprise_management.DevicePolicyResponse policy_response = 5;
+inline bool DeviceManagementResponse::_internal_has_policy_response() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || policy_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_policy_response() const {
+  return _internal_has_policy_response();
+}
+inline void DeviceManagementResponse::clear_policy_response() {
+  if (policy_response_ != nullptr) policy_response_->Clear();
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const ::enterprise_management::DevicePolicyResponse& DeviceManagementResponse::_internal_policy_response() const {
+  const ::enterprise_management::DevicePolicyResponse* p = policy_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePolicyResponse*>(
+      &::enterprise_management::_DevicePolicyResponse_default_instance_);
+}
+inline const ::enterprise_management::DevicePolicyResponse& DeviceManagementResponse::policy_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.policy_response)
+  return _internal_policy_response();
+}
+inline ::enterprise_management::DevicePolicyResponse* DeviceManagementResponse::release_policy_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.policy_response)
+  _has_bits_[0] &= ~0x00000008u;
+  ::enterprise_management::DevicePolicyResponse* temp = policy_response_;
+  policy_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePolicyResponse* DeviceManagementResponse::_internal_mutable_policy_response() {
+  _has_bits_[0] |= 0x00000008u;
+  if (policy_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePolicyResponse>(GetArenaNoVirtual());
+    policy_response_ = p;
+  }
+  return policy_response_;
+}
+inline ::enterprise_management::DevicePolicyResponse* DeviceManagementResponse::mutable_policy_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.policy_response)
+  return _internal_mutable_policy_response();
+}
+inline void DeviceManagementResponse::set_allocated_policy_response(::enterprise_management::DevicePolicyResponse* policy_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete policy_response_;
+  }
+  if (policy_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      policy_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, policy_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  policy_response_ = policy_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.policy_response)
+}
+
+// optional .enterprise_management.DeviceStatusReportResponse device_status_report_response = 6;
+inline bool DeviceManagementResponse::_internal_has_device_status_report_response() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || device_status_report_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_device_status_report_response() const {
+  return _internal_has_device_status_report_response();
+}
+inline void DeviceManagementResponse::clear_device_status_report_response() {
+  if (device_status_report_response_ != nullptr) device_status_report_response_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::enterprise_management::DeviceStatusReportResponse& DeviceManagementResponse::_internal_device_status_report_response() const {
+  const ::enterprise_management::DeviceStatusReportResponse* p = device_status_report_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceStatusReportResponse*>(
+      &::enterprise_management::_DeviceStatusReportResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceStatusReportResponse& DeviceManagementResponse::device_status_report_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.device_status_report_response)
+  return _internal_device_status_report_response();
+}
+inline ::enterprise_management::DeviceStatusReportResponse* DeviceManagementResponse::release_device_status_report_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.device_status_report_response)
+  _has_bits_[0] &= ~0x00000010u;
+  ::enterprise_management::DeviceStatusReportResponse* temp = device_status_report_response_;
+  device_status_report_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceStatusReportResponse* DeviceManagementResponse::_internal_mutable_device_status_report_response() {
+  _has_bits_[0] |= 0x00000010u;
+  if (device_status_report_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceStatusReportResponse>(GetArenaNoVirtual());
+    device_status_report_response_ = p;
+  }
+  return device_status_report_response_;
+}
+inline ::enterprise_management::DeviceStatusReportResponse* DeviceManagementResponse::mutable_device_status_report_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.device_status_report_response)
+  return _internal_mutable_device_status_report_response();
+}
+inline void DeviceManagementResponse::set_allocated_device_status_report_response(::enterprise_management::DeviceStatusReportResponse* device_status_report_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_status_report_response_;
+  }
+  if (device_status_report_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_status_report_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_status_report_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  device_status_report_response_ = device_status_report_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.device_status_report_response)
+}
+
+// optional .enterprise_management.SessionStatusReportResponse session_status_report_response = 7;
+inline bool DeviceManagementResponse::_internal_has_session_status_report_response() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || session_status_report_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_session_status_report_response() const {
+  return _internal_has_session_status_report_response();
+}
+inline void DeviceManagementResponse::clear_session_status_report_response() {
+  if (session_status_report_response_ != nullptr) session_status_report_response_->Clear();
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const ::enterprise_management::SessionStatusReportResponse& DeviceManagementResponse::_internal_session_status_report_response() const {
+  const ::enterprise_management::SessionStatusReportResponse* p = session_status_report_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::SessionStatusReportResponse*>(
+      &::enterprise_management::_SessionStatusReportResponse_default_instance_);
+}
+inline const ::enterprise_management::SessionStatusReportResponse& DeviceManagementResponse::session_status_report_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.session_status_report_response)
+  return _internal_session_status_report_response();
+}
+inline ::enterprise_management::SessionStatusReportResponse* DeviceManagementResponse::release_session_status_report_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.session_status_report_response)
+  _has_bits_[0] &= ~0x00000020u;
+  ::enterprise_management::SessionStatusReportResponse* temp = session_status_report_response_;
+  session_status_report_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::SessionStatusReportResponse* DeviceManagementResponse::_internal_mutable_session_status_report_response() {
+  _has_bits_[0] |= 0x00000020u;
+  if (session_status_report_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::SessionStatusReportResponse>(GetArenaNoVirtual());
+    session_status_report_response_ = p;
+  }
+  return session_status_report_response_;
+}
+inline ::enterprise_management::SessionStatusReportResponse* DeviceManagementResponse::mutable_session_status_report_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.session_status_report_response)
+  return _internal_mutable_session_status_report_response();
+}
+inline void DeviceManagementResponse::set_allocated_session_status_report_response(::enterprise_management::SessionStatusReportResponse* session_status_report_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete session_status_report_response_;
+  }
+  if (session_status_report_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      session_status_report_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, session_status_report_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  session_status_report_response_ = session_status_report_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.session_status_report_response)
+}
+
+// optional .enterprise_management.ChildStatusReportResponse child_status_report_response = 29;
+inline bool DeviceManagementResponse::_internal_has_child_status_report_response() const {
+  bool value = (_has_bits_[0] & 0x04000000u) != 0;
+  PROTOBUF_ASSUME(!value || child_status_report_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_child_status_report_response() const {
+  return _internal_has_child_status_report_response();
+}
+inline void DeviceManagementResponse::clear_child_status_report_response() {
+  if (child_status_report_response_ != nullptr) child_status_report_response_->Clear();
+  _has_bits_[0] &= ~0x04000000u;
+}
+inline const ::enterprise_management::ChildStatusReportResponse& DeviceManagementResponse::_internal_child_status_report_response() const {
+  const ::enterprise_management::ChildStatusReportResponse* p = child_status_report_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChildStatusReportResponse*>(
+      &::enterprise_management::_ChildStatusReportResponse_default_instance_);
+}
+inline const ::enterprise_management::ChildStatusReportResponse& DeviceManagementResponse::child_status_report_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.child_status_report_response)
+  return _internal_child_status_report_response();
+}
+inline ::enterprise_management::ChildStatusReportResponse* DeviceManagementResponse::release_child_status_report_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.child_status_report_response)
+  _has_bits_[0] &= ~0x04000000u;
+  ::enterprise_management::ChildStatusReportResponse* temp = child_status_report_response_;
+  child_status_report_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChildStatusReportResponse* DeviceManagementResponse::_internal_mutable_child_status_report_response() {
+  _has_bits_[0] |= 0x04000000u;
+  if (child_status_report_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChildStatusReportResponse>(GetArenaNoVirtual());
+    child_status_report_response_ = p;
+  }
+  return child_status_report_response_;
+}
+inline ::enterprise_management::ChildStatusReportResponse* DeviceManagementResponse::mutable_child_status_report_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.child_status_report_response)
+  return _internal_mutable_child_status_report_response();
+}
+inline void DeviceManagementResponse::set_allocated_child_status_report_response(::enterprise_management::ChildStatusReportResponse* child_status_report_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete child_status_report_response_;
+  }
+  if (child_status_report_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      child_status_report_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, child_status_report_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x04000000u;
+  } else {
+    _has_bits_[0] &= ~0x04000000u;
+  }
+  child_status_report_response_ = child_status_report_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.child_status_report_response)
+}
+
+// optional .enterprise_management.DeviceAutoEnrollmentResponse auto_enrollment_response = 8;
+inline bool DeviceManagementResponse::_internal_has_auto_enrollment_response() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || auto_enrollment_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_auto_enrollment_response() const {
+  return _internal_has_auto_enrollment_response();
+}
+inline void DeviceManagementResponse::clear_auto_enrollment_response() {
+  if (auto_enrollment_response_ != nullptr) auto_enrollment_response_->Clear();
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const ::enterprise_management::DeviceAutoEnrollmentResponse& DeviceManagementResponse::_internal_auto_enrollment_response() const {
+  const ::enterprise_management::DeviceAutoEnrollmentResponse* p = auto_enrollment_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAutoEnrollmentResponse*>(
+      &::enterprise_management::_DeviceAutoEnrollmentResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceAutoEnrollmentResponse& DeviceManagementResponse::auto_enrollment_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.auto_enrollment_response)
+  return _internal_auto_enrollment_response();
+}
+inline ::enterprise_management::DeviceAutoEnrollmentResponse* DeviceManagementResponse::release_auto_enrollment_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.auto_enrollment_response)
+  _has_bits_[0] &= ~0x00000040u;
+  ::enterprise_management::DeviceAutoEnrollmentResponse* temp = auto_enrollment_response_;
+  auto_enrollment_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAutoEnrollmentResponse* DeviceManagementResponse::_internal_mutable_auto_enrollment_response() {
+  _has_bits_[0] |= 0x00000040u;
+  if (auto_enrollment_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAutoEnrollmentResponse>(GetArenaNoVirtual());
+    auto_enrollment_response_ = p;
+  }
+  return auto_enrollment_response_;
+}
+inline ::enterprise_management::DeviceAutoEnrollmentResponse* DeviceManagementResponse::mutable_auto_enrollment_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.auto_enrollment_response)
+  return _internal_mutable_auto_enrollment_response();
+}
+inline void DeviceManagementResponse::set_allocated_auto_enrollment_response(::enterprise_management::DeviceAutoEnrollmentResponse* auto_enrollment_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete auto_enrollment_response_;
+  }
+  if (auto_enrollment_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      auto_enrollment_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, auto_enrollment_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  auto_enrollment_response_ = auto_enrollment_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.auto_enrollment_response)
+}
+
+// optional .enterprise_management.DeviceCertUploadResponse cert_upload_response = 9;
+inline bool DeviceManagementResponse::_internal_has_cert_upload_response() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || cert_upload_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_cert_upload_response() const {
+  return _internal_has_cert_upload_response();
+}
+inline void DeviceManagementResponse::clear_cert_upload_response() {
+  if (cert_upload_response_ != nullptr) cert_upload_response_->Clear();
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const ::enterprise_management::DeviceCertUploadResponse& DeviceManagementResponse::_internal_cert_upload_response() const {
+  const ::enterprise_management::DeviceCertUploadResponse* p = cert_upload_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceCertUploadResponse*>(
+      &::enterprise_management::_DeviceCertUploadResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceCertUploadResponse& DeviceManagementResponse::cert_upload_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.cert_upload_response)
+  return _internal_cert_upload_response();
+}
+inline ::enterprise_management::DeviceCertUploadResponse* DeviceManagementResponse::release_cert_upload_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.cert_upload_response)
+  _has_bits_[0] &= ~0x00000080u;
+  ::enterprise_management::DeviceCertUploadResponse* temp = cert_upload_response_;
+  cert_upload_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceCertUploadResponse* DeviceManagementResponse::_internal_mutable_cert_upload_response() {
+  _has_bits_[0] |= 0x00000080u;
+  if (cert_upload_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceCertUploadResponse>(GetArenaNoVirtual());
+    cert_upload_response_ = p;
+  }
+  return cert_upload_response_;
+}
+inline ::enterprise_management::DeviceCertUploadResponse* DeviceManagementResponse::mutable_cert_upload_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.cert_upload_response)
+  return _internal_mutable_cert_upload_response();
+}
+inline void DeviceManagementResponse::set_allocated_cert_upload_response(::enterprise_management::DeviceCertUploadResponse* cert_upload_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete cert_upload_response_;
+  }
+  if (cert_upload_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      cert_upload_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, cert_upload_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  cert_upload_response_ = cert_upload_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.cert_upload_response)
+}
+
+// optional .enterprise_management.DeviceServiceApiAccessResponse service_api_access_response = 10;
+inline bool DeviceManagementResponse::_internal_has_service_api_access_response() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || service_api_access_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_service_api_access_response() const {
+  return _internal_has_service_api_access_response();
+}
+inline void DeviceManagementResponse::clear_service_api_access_response() {
+  if (service_api_access_response_ != nullptr) service_api_access_response_->Clear();
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const ::enterprise_management::DeviceServiceApiAccessResponse& DeviceManagementResponse::_internal_service_api_access_response() const {
+  const ::enterprise_management::DeviceServiceApiAccessResponse* p = service_api_access_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceServiceApiAccessResponse*>(
+      &::enterprise_management::_DeviceServiceApiAccessResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceServiceApiAccessResponse& DeviceManagementResponse::service_api_access_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.service_api_access_response)
+  return _internal_service_api_access_response();
+}
+inline ::enterprise_management::DeviceServiceApiAccessResponse* DeviceManagementResponse::release_service_api_access_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.service_api_access_response)
+  _has_bits_[0] &= ~0x00000100u;
+  ::enterprise_management::DeviceServiceApiAccessResponse* temp = service_api_access_response_;
+  service_api_access_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceServiceApiAccessResponse* DeviceManagementResponse::_internal_mutable_service_api_access_response() {
+  _has_bits_[0] |= 0x00000100u;
+  if (service_api_access_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceServiceApiAccessResponse>(GetArenaNoVirtual());
+    service_api_access_response_ = p;
+  }
+  return service_api_access_response_;
+}
+inline ::enterprise_management::DeviceServiceApiAccessResponse* DeviceManagementResponse::mutable_service_api_access_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.service_api_access_response)
+  return _internal_mutable_service_api_access_response();
+}
+inline void DeviceManagementResponse::set_allocated_service_api_access_response(::enterprise_management::DeviceServiceApiAccessResponse* service_api_access_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete service_api_access_response_;
+  }
+  if (service_api_access_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      service_api_access_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, service_api_access_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  service_api_access_response_ = service_api_access_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.service_api_access_response)
+}
+
+// optional .enterprise_management.DeviceStateRetrievalResponse device_state_retrieval_response = 11;
+inline bool DeviceManagementResponse::_internal_has_device_state_retrieval_response() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || device_state_retrieval_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_device_state_retrieval_response() const {
+  return _internal_has_device_state_retrieval_response();
+}
+inline void DeviceManagementResponse::clear_device_state_retrieval_response() {
+  if (device_state_retrieval_response_ != nullptr) device_state_retrieval_response_->Clear();
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline const ::enterprise_management::DeviceStateRetrievalResponse& DeviceManagementResponse::_internal_device_state_retrieval_response() const {
+  const ::enterprise_management::DeviceStateRetrievalResponse* p = device_state_retrieval_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceStateRetrievalResponse*>(
+      &::enterprise_management::_DeviceStateRetrievalResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceStateRetrievalResponse& DeviceManagementResponse::device_state_retrieval_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.device_state_retrieval_response)
+  return _internal_device_state_retrieval_response();
+}
+inline ::enterprise_management::DeviceStateRetrievalResponse* DeviceManagementResponse::release_device_state_retrieval_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.device_state_retrieval_response)
+  _has_bits_[0] &= ~0x00000200u;
+  ::enterprise_management::DeviceStateRetrievalResponse* temp = device_state_retrieval_response_;
+  device_state_retrieval_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceStateRetrievalResponse* DeviceManagementResponse::_internal_mutable_device_state_retrieval_response() {
+  _has_bits_[0] |= 0x00000200u;
+  if (device_state_retrieval_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceStateRetrievalResponse>(GetArenaNoVirtual());
+    device_state_retrieval_response_ = p;
+  }
+  return device_state_retrieval_response_;
+}
+inline ::enterprise_management::DeviceStateRetrievalResponse* DeviceManagementResponse::mutable_device_state_retrieval_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.device_state_retrieval_response)
+  return _internal_mutable_device_state_retrieval_response();
+}
+inline void DeviceManagementResponse::set_allocated_device_state_retrieval_response(::enterprise_management::DeviceStateRetrievalResponse* device_state_retrieval_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_state_retrieval_response_;
+  }
+  if (device_state_retrieval_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_state_retrieval_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_state_retrieval_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  device_state_retrieval_response_ = device_state_retrieval_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.device_state_retrieval_response)
+}
+
+// optional .enterprise_management.DevicePairingResponse device_pairing_response = 12;
+inline bool DeviceManagementResponse::_internal_has_device_pairing_response() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  PROTOBUF_ASSUME(!value || device_pairing_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_device_pairing_response() const {
+  return _internal_has_device_pairing_response();
+}
+inline void DeviceManagementResponse::clear_device_pairing_response() {
+  if (device_pairing_response_ != nullptr) device_pairing_response_->Clear();
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline const ::enterprise_management::DevicePairingResponse& DeviceManagementResponse::_internal_device_pairing_response() const {
+  const ::enterprise_management::DevicePairingResponse* p = device_pairing_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DevicePairingResponse*>(
+      &::enterprise_management::_DevicePairingResponse_default_instance_);
+}
+inline const ::enterprise_management::DevicePairingResponse& DeviceManagementResponse::device_pairing_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.device_pairing_response)
+  return _internal_device_pairing_response();
+}
+inline ::enterprise_management::DevicePairingResponse* DeviceManagementResponse::release_device_pairing_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.device_pairing_response)
+  _has_bits_[0] &= ~0x00000400u;
+  ::enterprise_management::DevicePairingResponse* temp = device_pairing_response_;
+  device_pairing_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DevicePairingResponse* DeviceManagementResponse::_internal_mutable_device_pairing_response() {
+  _has_bits_[0] |= 0x00000400u;
+  if (device_pairing_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DevicePairingResponse>(GetArenaNoVirtual());
+    device_pairing_response_ = p;
+  }
+  return device_pairing_response_;
+}
+inline ::enterprise_management::DevicePairingResponse* DeviceManagementResponse::mutable_device_pairing_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.device_pairing_response)
+  return _internal_mutable_device_pairing_response();
+}
+inline void DeviceManagementResponse::set_allocated_device_pairing_response(::enterprise_management::DevicePairingResponse* device_pairing_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_pairing_response_;
+  }
+  if (device_pairing_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_pairing_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_pairing_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000400u;
+  } else {
+    _has_bits_[0] &= ~0x00000400u;
+  }
+  device_pairing_response_ = device_pairing_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.device_pairing_response)
+}
+
+// optional .enterprise_management.CheckDevicePairingResponse check_device_pairing_response = 13;
+inline bool DeviceManagementResponse::_internal_has_check_device_pairing_response() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  PROTOBUF_ASSUME(!value || check_device_pairing_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_check_device_pairing_response() const {
+  return _internal_has_check_device_pairing_response();
+}
+inline void DeviceManagementResponse::clear_check_device_pairing_response() {
+  if (check_device_pairing_response_ != nullptr) check_device_pairing_response_->Clear();
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline const ::enterprise_management::CheckDevicePairingResponse& DeviceManagementResponse::_internal_check_device_pairing_response() const {
+  const ::enterprise_management::CheckDevicePairingResponse* p = check_device_pairing_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CheckDevicePairingResponse*>(
+      &::enterprise_management::_CheckDevicePairingResponse_default_instance_);
+}
+inline const ::enterprise_management::CheckDevicePairingResponse& DeviceManagementResponse::check_device_pairing_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.check_device_pairing_response)
+  return _internal_check_device_pairing_response();
+}
+inline ::enterprise_management::CheckDevicePairingResponse* DeviceManagementResponse::release_check_device_pairing_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.check_device_pairing_response)
+  _has_bits_[0] &= ~0x00000800u;
+  ::enterprise_management::CheckDevicePairingResponse* temp = check_device_pairing_response_;
+  check_device_pairing_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CheckDevicePairingResponse* DeviceManagementResponse::_internal_mutable_check_device_pairing_response() {
+  _has_bits_[0] |= 0x00000800u;
+  if (check_device_pairing_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CheckDevicePairingResponse>(GetArenaNoVirtual());
+    check_device_pairing_response_ = p;
+  }
+  return check_device_pairing_response_;
+}
+inline ::enterprise_management::CheckDevicePairingResponse* DeviceManagementResponse::mutable_check_device_pairing_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.check_device_pairing_response)
+  return _internal_mutable_check_device_pairing_response();
+}
+inline void DeviceManagementResponse::set_allocated_check_device_pairing_response(::enterprise_management::CheckDevicePairingResponse* check_device_pairing_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete check_device_pairing_response_;
+  }
+  if (check_device_pairing_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      check_device_pairing_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, check_device_pairing_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000800u;
+  } else {
+    _has_bits_[0] &= ~0x00000800u;
+  }
+  check_device_pairing_response_ = check_device_pairing_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.check_device_pairing_response)
+}
+
+// optional .enterprise_management.DeviceRemoteCommandResponse remote_command_response = 14;
+inline bool DeviceManagementResponse::_internal_has_remote_command_response() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  PROTOBUF_ASSUME(!value || remote_command_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_remote_command_response() const {
+  return _internal_has_remote_command_response();
+}
+inline void DeviceManagementResponse::clear_remote_command_response() {
+  if (remote_command_response_ != nullptr) remote_command_response_->Clear();
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline const ::enterprise_management::DeviceRemoteCommandResponse& DeviceManagementResponse::_internal_remote_command_response() const {
+  const ::enterprise_management::DeviceRemoteCommandResponse* p = remote_command_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceRemoteCommandResponse*>(
+      &::enterprise_management::_DeviceRemoteCommandResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceRemoteCommandResponse& DeviceManagementResponse::remote_command_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.remote_command_response)
+  return _internal_remote_command_response();
+}
+inline ::enterprise_management::DeviceRemoteCommandResponse* DeviceManagementResponse::release_remote_command_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.remote_command_response)
+  _has_bits_[0] &= ~0x00001000u;
+  ::enterprise_management::DeviceRemoteCommandResponse* temp = remote_command_response_;
+  remote_command_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceRemoteCommandResponse* DeviceManagementResponse::_internal_mutable_remote_command_response() {
+  _has_bits_[0] |= 0x00001000u;
+  if (remote_command_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceRemoteCommandResponse>(GetArenaNoVirtual());
+    remote_command_response_ = p;
+  }
+  return remote_command_response_;
+}
+inline ::enterprise_management::DeviceRemoteCommandResponse* DeviceManagementResponse::mutable_remote_command_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.remote_command_response)
+  return _internal_mutable_remote_command_response();
+}
+inline void DeviceManagementResponse::set_allocated_remote_command_response(::enterprise_management::DeviceRemoteCommandResponse* remote_command_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete remote_command_response_;
+  }
+  if (remote_command_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      remote_command_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, remote_command_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00001000u;
+  } else {
+    _has_bits_[0] &= ~0x00001000u;
+  }
+  remote_command_response_ = remote_command_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.remote_command_response)
+}
+
+// optional .enterprise_management.DeviceAttributeUpdatePermissionResponse device_attribute_update_permission_response = 15;
+inline bool DeviceManagementResponse::_internal_has_device_attribute_update_permission_response() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  PROTOBUF_ASSUME(!value || device_attribute_update_permission_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_device_attribute_update_permission_response() const {
+  return _internal_has_device_attribute_update_permission_response();
+}
+inline void DeviceManagementResponse::clear_device_attribute_update_permission_response() {
+  if (device_attribute_update_permission_response_ != nullptr) device_attribute_update_permission_response_->Clear();
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline const ::enterprise_management::DeviceAttributeUpdatePermissionResponse& DeviceManagementResponse::_internal_device_attribute_update_permission_response() const {
+  const ::enterprise_management::DeviceAttributeUpdatePermissionResponse* p = device_attribute_update_permission_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAttributeUpdatePermissionResponse*>(
+      &::enterprise_management::_DeviceAttributeUpdatePermissionResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceAttributeUpdatePermissionResponse& DeviceManagementResponse::device_attribute_update_permission_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.device_attribute_update_permission_response)
+  return _internal_device_attribute_update_permission_response();
+}
+inline ::enterprise_management::DeviceAttributeUpdatePermissionResponse* DeviceManagementResponse::release_device_attribute_update_permission_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.device_attribute_update_permission_response)
+  _has_bits_[0] &= ~0x00002000u;
+  ::enterprise_management::DeviceAttributeUpdatePermissionResponse* temp = device_attribute_update_permission_response_;
+  device_attribute_update_permission_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAttributeUpdatePermissionResponse* DeviceManagementResponse::_internal_mutable_device_attribute_update_permission_response() {
+  _has_bits_[0] |= 0x00002000u;
+  if (device_attribute_update_permission_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAttributeUpdatePermissionResponse>(GetArenaNoVirtual());
+    device_attribute_update_permission_response_ = p;
+  }
+  return device_attribute_update_permission_response_;
+}
+inline ::enterprise_management::DeviceAttributeUpdatePermissionResponse* DeviceManagementResponse::mutable_device_attribute_update_permission_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.device_attribute_update_permission_response)
+  return _internal_mutable_device_attribute_update_permission_response();
+}
+inline void DeviceManagementResponse::set_allocated_device_attribute_update_permission_response(::enterprise_management::DeviceAttributeUpdatePermissionResponse* device_attribute_update_permission_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_attribute_update_permission_response_;
+  }
+  if (device_attribute_update_permission_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_attribute_update_permission_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_attribute_update_permission_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00002000u;
+  } else {
+    _has_bits_[0] &= ~0x00002000u;
+  }
+  device_attribute_update_permission_response_ = device_attribute_update_permission_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.device_attribute_update_permission_response)
+}
+
+// optional .enterprise_management.DeviceAttributeUpdateResponse device_attribute_update_response = 16;
+inline bool DeviceManagementResponse::_internal_has_device_attribute_update_response() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  PROTOBUF_ASSUME(!value || device_attribute_update_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_device_attribute_update_response() const {
+  return _internal_has_device_attribute_update_response();
+}
+inline void DeviceManagementResponse::clear_device_attribute_update_response() {
+  if (device_attribute_update_response_ != nullptr) device_attribute_update_response_->Clear();
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline const ::enterprise_management::DeviceAttributeUpdateResponse& DeviceManagementResponse::_internal_device_attribute_update_response() const {
+  const ::enterprise_management::DeviceAttributeUpdateResponse* p = device_attribute_update_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceAttributeUpdateResponse*>(
+      &::enterprise_management::_DeviceAttributeUpdateResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceAttributeUpdateResponse& DeviceManagementResponse::device_attribute_update_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.device_attribute_update_response)
+  return _internal_device_attribute_update_response();
+}
+inline ::enterprise_management::DeviceAttributeUpdateResponse* DeviceManagementResponse::release_device_attribute_update_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.device_attribute_update_response)
+  _has_bits_[0] &= ~0x00004000u;
+  ::enterprise_management::DeviceAttributeUpdateResponse* temp = device_attribute_update_response_;
+  device_attribute_update_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceAttributeUpdateResponse* DeviceManagementResponse::_internal_mutable_device_attribute_update_response() {
+  _has_bits_[0] |= 0x00004000u;
+  if (device_attribute_update_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceAttributeUpdateResponse>(GetArenaNoVirtual());
+    device_attribute_update_response_ = p;
+  }
+  return device_attribute_update_response_;
+}
+inline ::enterprise_management::DeviceAttributeUpdateResponse* DeviceManagementResponse::mutable_device_attribute_update_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.device_attribute_update_response)
+  return _internal_mutable_device_attribute_update_response();
+}
+inline void DeviceManagementResponse::set_allocated_device_attribute_update_response(::enterprise_management::DeviceAttributeUpdateResponse* device_attribute_update_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_attribute_update_response_;
+  }
+  if (device_attribute_update_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_attribute_update_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_attribute_update_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00004000u;
+  } else {
+    _has_bits_[0] &= ~0x00004000u;
+  }
+  device_attribute_update_response_ = device_attribute_update_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.device_attribute_update_response)
+}
+
+// optional .enterprise_management.GcmIdUpdateResponse gcm_id_update_response = 17;
+inline bool DeviceManagementResponse::_internal_has_gcm_id_update_response() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  PROTOBUF_ASSUME(!value || gcm_id_update_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_gcm_id_update_response() const {
+  return _internal_has_gcm_id_update_response();
+}
+inline void DeviceManagementResponse::clear_gcm_id_update_response() {
+  if (gcm_id_update_response_ != nullptr) gcm_id_update_response_->Clear();
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline const ::enterprise_management::GcmIdUpdateResponse& DeviceManagementResponse::_internal_gcm_id_update_response() const {
+  const ::enterprise_management::GcmIdUpdateResponse* p = gcm_id_update_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::GcmIdUpdateResponse*>(
+      &::enterprise_management::_GcmIdUpdateResponse_default_instance_);
+}
+inline const ::enterprise_management::GcmIdUpdateResponse& DeviceManagementResponse::gcm_id_update_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.gcm_id_update_response)
+  return _internal_gcm_id_update_response();
+}
+inline ::enterprise_management::GcmIdUpdateResponse* DeviceManagementResponse::release_gcm_id_update_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.gcm_id_update_response)
+  _has_bits_[0] &= ~0x00008000u;
+  ::enterprise_management::GcmIdUpdateResponse* temp = gcm_id_update_response_;
+  gcm_id_update_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::GcmIdUpdateResponse* DeviceManagementResponse::_internal_mutable_gcm_id_update_response() {
+  _has_bits_[0] |= 0x00008000u;
+  if (gcm_id_update_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::GcmIdUpdateResponse>(GetArenaNoVirtual());
+    gcm_id_update_response_ = p;
+  }
+  return gcm_id_update_response_;
+}
+inline ::enterprise_management::GcmIdUpdateResponse* DeviceManagementResponse::mutable_gcm_id_update_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.gcm_id_update_response)
+  return _internal_mutable_gcm_id_update_response();
+}
+inline void DeviceManagementResponse::set_allocated_gcm_id_update_response(::enterprise_management::GcmIdUpdateResponse* gcm_id_update_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete gcm_id_update_response_;
+  }
+  if (gcm_id_update_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      gcm_id_update_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, gcm_id_update_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00008000u;
+  } else {
+    _has_bits_[0] &= ~0x00008000u;
+  }
+  gcm_id_update_response_ = gcm_id_update_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.gcm_id_update_response)
+}
+
+// optional .enterprise_management.CheckAndroidManagementResponse check_android_management_response = 18;
+inline bool DeviceManagementResponse::_internal_has_check_android_management_response() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  PROTOBUF_ASSUME(!value || check_android_management_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_check_android_management_response() const {
+  return _internal_has_check_android_management_response();
+}
+inline void DeviceManagementResponse::clear_check_android_management_response() {
+  if (check_android_management_response_ != nullptr) check_android_management_response_->Clear();
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline const ::enterprise_management::CheckAndroidManagementResponse& DeviceManagementResponse::_internal_check_android_management_response() const {
+  const ::enterprise_management::CheckAndroidManagementResponse* p = check_android_management_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CheckAndroidManagementResponse*>(
+      &::enterprise_management::_CheckAndroidManagementResponse_default_instance_);
+}
+inline const ::enterprise_management::CheckAndroidManagementResponse& DeviceManagementResponse::check_android_management_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.check_android_management_response)
+  return _internal_check_android_management_response();
+}
+inline ::enterprise_management::CheckAndroidManagementResponse* DeviceManagementResponse::release_check_android_management_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.check_android_management_response)
+  _has_bits_[0] &= ~0x00010000u;
+  ::enterprise_management::CheckAndroidManagementResponse* temp = check_android_management_response_;
+  check_android_management_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CheckAndroidManagementResponse* DeviceManagementResponse::_internal_mutable_check_android_management_response() {
+  _has_bits_[0] |= 0x00010000u;
+  if (check_android_management_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CheckAndroidManagementResponse>(GetArenaNoVirtual());
+    check_android_management_response_ = p;
+  }
+  return check_android_management_response_;
+}
+inline ::enterprise_management::CheckAndroidManagementResponse* DeviceManagementResponse::mutable_check_android_management_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.check_android_management_response)
+  return _internal_mutable_check_android_management_response();
+}
+inline void DeviceManagementResponse::set_allocated_check_android_management_response(::enterprise_management::CheckAndroidManagementResponse* check_android_management_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete check_android_management_response_;
+  }
+  if (check_android_management_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      check_android_management_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, check_android_management_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00010000u;
+  } else {
+    _has_bits_[0] &= ~0x00010000u;
+  }
+  check_android_management_response_ = check_android_management_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.check_android_management_response)
+}
+
+// optional .enterprise_management.ActiveDirectoryEnrollPlayUserResponse active_directory_enroll_play_user_response = 19;
+inline bool DeviceManagementResponse::_internal_has_active_directory_enroll_play_user_response() const {
+  bool value = (_has_bits_[0] & 0x00020000u) != 0;
+  PROTOBUF_ASSUME(!value || active_directory_enroll_play_user_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_active_directory_enroll_play_user_response() const {
+  return _internal_has_active_directory_enroll_play_user_response();
+}
+inline void DeviceManagementResponse::clear_active_directory_enroll_play_user_response() {
+  if (active_directory_enroll_play_user_response_ != nullptr) active_directory_enroll_play_user_response_->Clear();
+  _has_bits_[0] &= ~0x00020000u;
+}
+inline const ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse& DeviceManagementResponse::_internal_active_directory_enroll_play_user_response() const {
+  const ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* p = active_directory_enroll_play_user_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse*>(
+      &::enterprise_management::_ActiveDirectoryEnrollPlayUserResponse_default_instance_);
+}
+inline const ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse& DeviceManagementResponse::active_directory_enroll_play_user_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.active_directory_enroll_play_user_response)
+  return _internal_active_directory_enroll_play_user_response();
+}
+inline ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* DeviceManagementResponse::release_active_directory_enroll_play_user_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.active_directory_enroll_play_user_response)
+  _has_bits_[0] &= ~0x00020000u;
+  ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* temp = active_directory_enroll_play_user_response_;
+  active_directory_enroll_play_user_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* DeviceManagementResponse::_internal_mutable_active_directory_enroll_play_user_response() {
+  _has_bits_[0] |= 0x00020000u;
+  if (active_directory_enroll_play_user_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ActiveDirectoryEnrollPlayUserResponse>(GetArenaNoVirtual());
+    active_directory_enroll_play_user_response_ = p;
+  }
+  return active_directory_enroll_play_user_response_;
+}
+inline ::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* DeviceManagementResponse::mutable_active_directory_enroll_play_user_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.active_directory_enroll_play_user_response)
+  return _internal_mutable_active_directory_enroll_play_user_response();
+}
+inline void DeviceManagementResponse::set_allocated_active_directory_enroll_play_user_response(::enterprise_management::ActiveDirectoryEnrollPlayUserResponse* active_directory_enroll_play_user_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete active_directory_enroll_play_user_response_;
+  }
+  if (active_directory_enroll_play_user_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      active_directory_enroll_play_user_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, active_directory_enroll_play_user_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00020000u;
+  } else {
+    _has_bits_[0] &= ~0x00020000u;
+  }
+  active_directory_enroll_play_user_response_ = active_directory_enroll_play_user_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.active_directory_enroll_play_user_response)
+}
+
+// optional .enterprise_management.ActiveDirectoryPlayActivityResponse active_directory_play_activity_response = 20;
+inline bool DeviceManagementResponse::_internal_has_active_directory_play_activity_response() const {
+  bool value = (_has_bits_[0] & 0x00040000u) != 0;
+  PROTOBUF_ASSUME(!value || active_directory_play_activity_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_active_directory_play_activity_response() const {
+  return _internal_has_active_directory_play_activity_response();
+}
+inline void DeviceManagementResponse::clear_active_directory_play_activity_response() {
+  if (active_directory_play_activity_response_ != nullptr) active_directory_play_activity_response_->Clear();
+  _has_bits_[0] &= ~0x00040000u;
+}
+inline const ::enterprise_management::ActiveDirectoryPlayActivityResponse& DeviceManagementResponse::_internal_active_directory_play_activity_response() const {
+  const ::enterprise_management::ActiveDirectoryPlayActivityResponse* p = active_directory_play_activity_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ActiveDirectoryPlayActivityResponse*>(
+      &::enterprise_management::_ActiveDirectoryPlayActivityResponse_default_instance_);
+}
+inline const ::enterprise_management::ActiveDirectoryPlayActivityResponse& DeviceManagementResponse::active_directory_play_activity_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.active_directory_play_activity_response)
+  return _internal_active_directory_play_activity_response();
+}
+inline ::enterprise_management::ActiveDirectoryPlayActivityResponse* DeviceManagementResponse::release_active_directory_play_activity_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.active_directory_play_activity_response)
+  _has_bits_[0] &= ~0x00040000u;
+  ::enterprise_management::ActiveDirectoryPlayActivityResponse* temp = active_directory_play_activity_response_;
+  active_directory_play_activity_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ActiveDirectoryPlayActivityResponse* DeviceManagementResponse::_internal_mutable_active_directory_play_activity_response() {
+  _has_bits_[0] |= 0x00040000u;
+  if (active_directory_play_activity_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ActiveDirectoryPlayActivityResponse>(GetArenaNoVirtual());
+    active_directory_play_activity_response_ = p;
+  }
+  return active_directory_play_activity_response_;
+}
+inline ::enterprise_management::ActiveDirectoryPlayActivityResponse* DeviceManagementResponse::mutable_active_directory_play_activity_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.active_directory_play_activity_response)
+  return _internal_mutable_active_directory_play_activity_response();
+}
+inline void DeviceManagementResponse::set_allocated_active_directory_play_activity_response(::enterprise_management::ActiveDirectoryPlayActivityResponse* active_directory_play_activity_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete active_directory_play_activity_response_;
+  }
+  if (active_directory_play_activity_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      active_directory_play_activity_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, active_directory_play_activity_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00040000u;
+  } else {
+    _has_bits_[0] &= ~0x00040000u;
+  }
+  active_directory_play_activity_response_ = active_directory_play_activity_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.active_directory_play_activity_response)
+}
+
+// optional .enterprise_management.CheckDeviceLicenseResponse check_device_license_response_deprecated = 21 [deprecated = true];
+inline bool DeviceManagementResponse::_internal_has_check_device_license_response_deprecated() const {
+  bool value = (_has_bits_[0] & 0x00080000u) != 0;
+  PROTOBUF_ASSUME(!value || check_device_license_response_deprecated_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_check_device_license_response_deprecated() const {
+  return _internal_has_check_device_license_response_deprecated();
+}
+inline void DeviceManagementResponse::clear_check_device_license_response_deprecated() {
+  if (check_device_license_response_deprecated_ != nullptr) check_device_license_response_deprecated_->Clear();
+  _has_bits_[0] &= ~0x00080000u;
+}
+inline const ::enterprise_management::CheckDeviceLicenseResponse& DeviceManagementResponse::_internal_check_device_license_response_deprecated() const {
+  const ::enterprise_management::CheckDeviceLicenseResponse* p = check_device_license_response_deprecated_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CheckDeviceLicenseResponse*>(
+      &::enterprise_management::_CheckDeviceLicenseResponse_default_instance_);
+}
+inline const ::enterprise_management::CheckDeviceLicenseResponse& DeviceManagementResponse::check_device_license_response_deprecated() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.check_device_license_response_deprecated)
+  return _internal_check_device_license_response_deprecated();
+}
+inline ::enterprise_management::CheckDeviceLicenseResponse* DeviceManagementResponse::release_check_device_license_response_deprecated() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.check_device_license_response_deprecated)
+  _has_bits_[0] &= ~0x00080000u;
+  ::enterprise_management::CheckDeviceLicenseResponse* temp = check_device_license_response_deprecated_;
+  check_device_license_response_deprecated_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CheckDeviceLicenseResponse* DeviceManagementResponse::_internal_mutable_check_device_license_response_deprecated() {
+  _has_bits_[0] |= 0x00080000u;
+  if (check_device_license_response_deprecated_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CheckDeviceLicenseResponse>(GetArenaNoVirtual());
+    check_device_license_response_deprecated_ = p;
+  }
+  return check_device_license_response_deprecated_;
+}
+inline ::enterprise_management::CheckDeviceLicenseResponse* DeviceManagementResponse::mutable_check_device_license_response_deprecated() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.check_device_license_response_deprecated)
+  return _internal_mutable_check_device_license_response_deprecated();
+}
+inline void DeviceManagementResponse::set_allocated_check_device_license_response_deprecated(::enterprise_management::CheckDeviceLicenseResponse* check_device_license_response_deprecated) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete check_device_license_response_deprecated_;
+  }
+  if (check_device_license_response_deprecated) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      check_device_license_response_deprecated = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, check_device_license_response_deprecated, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00080000u;
+  } else {
+    _has_bits_[0] &= ~0x00080000u;
+  }
+  check_device_license_response_deprecated_ = check_device_license_response_deprecated;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.check_device_license_response_deprecated)
+}
+
+// optional .enterprise_management.ActiveDirectoryUserSigninResponse active_directory_user_signin_response = 22;
+inline bool DeviceManagementResponse::_internal_has_active_directory_user_signin_response() const {
+  bool value = (_has_bits_[0] & 0x00100000u) != 0;
+  PROTOBUF_ASSUME(!value || active_directory_user_signin_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_active_directory_user_signin_response() const {
+  return _internal_has_active_directory_user_signin_response();
+}
+inline void DeviceManagementResponse::clear_active_directory_user_signin_response() {
+  if (active_directory_user_signin_response_ != nullptr) active_directory_user_signin_response_->Clear();
+  _has_bits_[0] &= ~0x00100000u;
+}
+inline const ::enterprise_management::ActiveDirectoryUserSigninResponse& DeviceManagementResponse::_internal_active_directory_user_signin_response() const {
+  const ::enterprise_management::ActiveDirectoryUserSigninResponse* p = active_directory_user_signin_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ActiveDirectoryUserSigninResponse*>(
+      &::enterprise_management::_ActiveDirectoryUserSigninResponse_default_instance_);
+}
+inline const ::enterprise_management::ActiveDirectoryUserSigninResponse& DeviceManagementResponse::active_directory_user_signin_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.active_directory_user_signin_response)
+  return _internal_active_directory_user_signin_response();
+}
+inline ::enterprise_management::ActiveDirectoryUserSigninResponse* DeviceManagementResponse::release_active_directory_user_signin_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.active_directory_user_signin_response)
+  _has_bits_[0] &= ~0x00100000u;
+  ::enterprise_management::ActiveDirectoryUserSigninResponse* temp = active_directory_user_signin_response_;
+  active_directory_user_signin_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ActiveDirectoryUserSigninResponse* DeviceManagementResponse::_internal_mutable_active_directory_user_signin_response() {
+  _has_bits_[0] |= 0x00100000u;
+  if (active_directory_user_signin_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ActiveDirectoryUserSigninResponse>(GetArenaNoVirtual());
+    active_directory_user_signin_response_ = p;
+  }
+  return active_directory_user_signin_response_;
+}
+inline ::enterprise_management::ActiveDirectoryUserSigninResponse* DeviceManagementResponse::mutable_active_directory_user_signin_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.active_directory_user_signin_response)
+  return _internal_mutable_active_directory_user_signin_response();
+}
+inline void DeviceManagementResponse::set_allocated_active_directory_user_signin_response(::enterprise_management::ActiveDirectoryUserSigninResponse* active_directory_user_signin_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete active_directory_user_signin_response_;
+  }
+  if (active_directory_user_signin_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      active_directory_user_signin_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, active_directory_user_signin_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00100000u;
+  } else {
+    _has_bits_[0] &= ~0x00100000u;
+  }
+  active_directory_user_signin_response_ = active_directory_user_signin_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.active_directory_user_signin_response)
+}
+
+// optional .enterprise_management.ChromeDesktopReportResponse chrome_desktop_report_response = 23;
+inline bool DeviceManagementResponse::_internal_has_chrome_desktop_report_response() const {
+  bool value = (_has_bits_[0] & 0x00200000u) != 0;
+  PROTOBUF_ASSUME(!value || chrome_desktop_report_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_chrome_desktop_report_response() const {
+  return _internal_has_chrome_desktop_report_response();
+}
+inline void DeviceManagementResponse::clear_chrome_desktop_report_response() {
+  if (chrome_desktop_report_response_ != nullptr) chrome_desktop_report_response_->Clear();
+  _has_bits_[0] &= ~0x00200000u;
+}
+inline const ::enterprise_management::ChromeDesktopReportResponse& DeviceManagementResponse::_internal_chrome_desktop_report_response() const {
+  const ::enterprise_management::ChromeDesktopReportResponse* p = chrome_desktop_report_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChromeDesktopReportResponse*>(
+      &::enterprise_management::_ChromeDesktopReportResponse_default_instance_);
+}
+inline const ::enterprise_management::ChromeDesktopReportResponse& DeviceManagementResponse::chrome_desktop_report_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.chrome_desktop_report_response)
+  return _internal_chrome_desktop_report_response();
+}
+inline ::enterprise_management::ChromeDesktopReportResponse* DeviceManagementResponse::release_chrome_desktop_report_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.chrome_desktop_report_response)
+  _has_bits_[0] &= ~0x00200000u;
+  ::enterprise_management::ChromeDesktopReportResponse* temp = chrome_desktop_report_response_;
+  chrome_desktop_report_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChromeDesktopReportResponse* DeviceManagementResponse::_internal_mutable_chrome_desktop_report_response() {
+  _has_bits_[0] |= 0x00200000u;
+  if (chrome_desktop_report_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChromeDesktopReportResponse>(GetArenaNoVirtual());
+    chrome_desktop_report_response_ = p;
+  }
+  return chrome_desktop_report_response_;
+}
+inline ::enterprise_management::ChromeDesktopReportResponse* DeviceManagementResponse::mutable_chrome_desktop_report_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.chrome_desktop_report_response)
+  return _internal_mutable_chrome_desktop_report_response();
+}
+inline void DeviceManagementResponse::set_allocated_chrome_desktop_report_response(::enterprise_management::ChromeDesktopReportResponse* chrome_desktop_report_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete chrome_desktop_report_response_;
+  }
+  if (chrome_desktop_report_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      chrome_desktop_report_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, chrome_desktop_report_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00200000u;
+  } else {
+    _has_bits_[0] &= ~0x00200000u;
+  }
+  chrome_desktop_report_response_ = chrome_desktop_report_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.chrome_desktop_report_response)
+}
+
+// optional .enterprise_management.AppInstallReportResponse app_install_report_response = 25;
+inline bool DeviceManagementResponse::_internal_has_app_install_report_response() const {
+  bool value = (_has_bits_[0] & 0x00400000u) != 0;
+  PROTOBUF_ASSUME(!value || app_install_report_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_app_install_report_response() const {
+  return _internal_has_app_install_report_response();
+}
+inline void DeviceManagementResponse::clear_app_install_report_response() {
+  if (app_install_report_response_ != nullptr) app_install_report_response_->Clear();
+  _has_bits_[0] &= ~0x00400000u;
+}
+inline const ::enterprise_management::AppInstallReportResponse& DeviceManagementResponse::_internal_app_install_report_response() const {
+  const ::enterprise_management::AppInstallReportResponse* p = app_install_report_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::AppInstallReportResponse*>(
+      &::enterprise_management::_AppInstallReportResponse_default_instance_);
+}
+inline const ::enterprise_management::AppInstallReportResponse& DeviceManagementResponse::app_install_report_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.app_install_report_response)
+  return _internal_app_install_report_response();
+}
+inline ::enterprise_management::AppInstallReportResponse* DeviceManagementResponse::release_app_install_report_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.app_install_report_response)
+  _has_bits_[0] &= ~0x00400000u;
+  ::enterprise_management::AppInstallReportResponse* temp = app_install_report_response_;
+  app_install_report_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::AppInstallReportResponse* DeviceManagementResponse::_internal_mutable_app_install_report_response() {
+  _has_bits_[0] |= 0x00400000u;
+  if (app_install_report_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::AppInstallReportResponse>(GetArenaNoVirtual());
+    app_install_report_response_ = p;
+  }
+  return app_install_report_response_;
+}
+inline ::enterprise_management::AppInstallReportResponse* DeviceManagementResponse::mutable_app_install_report_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.app_install_report_response)
+  return _internal_mutable_app_install_report_response();
+}
+inline void DeviceManagementResponse::set_allocated_app_install_report_response(::enterprise_management::AppInstallReportResponse* app_install_report_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete app_install_report_response_;
+  }
+  if (app_install_report_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      app_install_report_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, app_install_report_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00400000u;
+  } else {
+    _has_bits_[0] &= ~0x00400000u;
+  }
+  app_install_report_response_ = app_install_report_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.app_install_report_response)
+}
+
+// optional .enterprise_management.PolicyValidationReportResponse policy_validation_report_response = 26;
+inline bool DeviceManagementResponse::_internal_has_policy_validation_report_response() const {
+  bool value = (_has_bits_[0] & 0x00800000u) != 0;
+  PROTOBUF_ASSUME(!value || policy_validation_report_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_policy_validation_report_response() const {
+  return _internal_has_policy_validation_report_response();
+}
+inline void DeviceManagementResponse::clear_policy_validation_report_response() {
+  if (policy_validation_report_response_ != nullptr) policy_validation_report_response_->Clear();
+  _has_bits_[0] &= ~0x00800000u;
+}
+inline const ::enterprise_management::PolicyValidationReportResponse& DeviceManagementResponse::_internal_policy_validation_report_response() const {
+  const ::enterprise_management::PolicyValidationReportResponse* p = policy_validation_report_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyValidationReportResponse*>(
+      &::enterprise_management::_PolicyValidationReportResponse_default_instance_);
+}
+inline const ::enterprise_management::PolicyValidationReportResponse& DeviceManagementResponse::policy_validation_report_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.policy_validation_report_response)
+  return _internal_policy_validation_report_response();
+}
+inline ::enterprise_management::PolicyValidationReportResponse* DeviceManagementResponse::release_policy_validation_report_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.policy_validation_report_response)
+  _has_bits_[0] &= ~0x00800000u;
+  ::enterprise_management::PolicyValidationReportResponse* temp = policy_validation_report_response_;
+  policy_validation_report_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyValidationReportResponse* DeviceManagementResponse::_internal_mutable_policy_validation_report_response() {
+  _has_bits_[0] |= 0x00800000u;
+  if (policy_validation_report_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyValidationReportResponse>(GetArenaNoVirtual());
+    policy_validation_report_response_ = p;
+  }
+  return policy_validation_report_response_;
+}
+inline ::enterprise_management::PolicyValidationReportResponse* DeviceManagementResponse::mutable_policy_validation_report_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.policy_validation_report_response)
+  return _internal_mutable_policy_validation_report_response();
+}
+inline void DeviceManagementResponse::set_allocated_policy_validation_report_response(::enterprise_management::PolicyValidationReportResponse* policy_validation_report_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete policy_validation_report_response_;
+  }
+  if (policy_validation_report_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      policy_validation_report_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, policy_validation_report_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00800000u;
+  } else {
+    _has_bits_[0] &= ~0x00800000u;
+  }
+  policy_validation_report_response_ = policy_validation_report_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.policy_validation_report_response)
+}
+
+// optional .enterprise_management.DeviceInitialEnrollmentStateResponse device_initial_enrollment_state_response = 27;
+inline bool DeviceManagementResponse::_internal_has_device_initial_enrollment_state_response() const {
+  bool value = (_has_bits_[0] & 0x01000000u) != 0;
+  PROTOBUF_ASSUME(!value || device_initial_enrollment_state_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_device_initial_enrollment_state_response() const {
+  return _internal_has_device_initial_enrollment_state_response();
+}
+inline void DeviceManagementResponse::clear_device_initial_enrollment_state_response() {
+  if (device_initial_enrollment_state_response_ != nullptr) device_initial_enrollment_state_response_->Clear();
+  _has_bits_[0] &= ~0x01000000u;
+}
+inline const ::enterprise_management::DeviceInitialEnrollmentStateResponse& DeviceManagementResponse::_internal_device_initial_enrollment_state_response() const {
+  const ::enterprise_management::DeviceInitialEnrollmentStateResponse* p = device_initial_enrollment_state_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::DeviceInitialEnrollmentStateResponse*>(
+      &::enterprise_management::_DeviceInitialEnrollmentStateResponse_default_instance_);
+}
+inline const ::enterprise_management::DeviceInitialEnrollmentStateResponse& DeviceManagementResponse::device_initial_enrollment_state_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.device_initial_enrollment_state_response)
+  return _internal_device_initial_enrollment_state_response();
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse* DeviceManagementResponse::release_device_initial_enrollment_state_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.device_initial_enrollment_state_response)
+  _has_bits_[0] &= ~0x01000000u;
+  ::enterprise_management::DeviceInitialEnrollmentStateResponse* temp = device_initial_enrollment_state_response_;
+  device_initial_enrollment_state_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse* DeviceManagementResponse::_internal_mutable_device_initial_enrollment_state_response() {
+  _has_bits_[0] |= 0x01000000u;
+  if (device_initial_enrollment_state_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::DeviceInitialEnrollmentStateResponse>(GetArenaNoVirtual());
+    device_initial_enrollment_state_response_ = p;
+  }
+  return device_initial_enrollment_state_response_;
+}
+inline ::enterprise_management::DeviceInitialEnrollmentStateResponse* DeviceManagementResponse::mutable_device_initial_enrollment_state_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.device_initial_enrollment_state_response)
+  return _internal_mutable_device_initial_enrollment_state_response();
+}
+inline void DeviceManagementResponse::set_allocated_device_initial_enrollment_state_response(::enterprise_management::DeviceInitialEnrollmentStateResponse* device_initial_enrollment_state_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete device_initial_enrollment_state_response_;
+  }
+  if (device_initial_enrollment_state_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      device_initial_enrollment_state_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, device_initial_enrollment_state_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x01000000u;
+  } else {
+    _has_bits_[0] &= ~0x01000000u;
+  }
+  device_initial_enrollment_state_response_ = device_initial_enrollment_state_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.device_initial_enrollment_state_response)
+}
+
+// optional .enterprise_management.RefreshAccountResponse refresh_account_response = 28;
+inline bool DeviceManagementResponse::_internal_has_refresh_account_response() const {
+  bool value = (_has_bits_[0] & 0x02000000u) != 0;
+  PROTOBUF_ASSUME(!value || refresh_account_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_refresh_account_response() const {
+  return _internal_has_refresh_account_response();
+}
+inline void DeviceManagementResponse::clear_refresh_account_response() {
+  if (refresh_account_response_ != nullptr) refresh_account_response_->Clear();
+  _has_bits_[0] &= ~0x02000000u;
+}
+inline const ::enterprise_management::RefreshAccountResponse& DeviceManagementResponse::_internal_refresh_account_response() const {
+  const ::enterprise_management::RefreshAccountResponse* p = refresh_account_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::RefreshAccountResponse*>(
+      &::enterprise_management::_RefreshAccountResponse_default_instance_);
+}
+inline const ::enterprise_management::RefreshAccountResponse& DeviceManagementResponse::refresh_account_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.refresh_account_response)
+  return _internal_refresh_account_response();
+}
+inline ::enterprise_management::RefreshAccountResponse* DeviceManagementResponse::release_refresh_account_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.refresh_account_response)
+  _has_bits_[0] &= ~0x02000000u;
+  ::enterprise_management::RefreshAccountResponse* temp = refresh_account_response_;
+  refresh_account_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::RefreshAccountResponse* DeviceManagementResponse::_internal_mutable_refresh_account_response() {
+  _has_bits_[0] |= 0x02000000u;
+  if (refresh_account_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::RefreshAccountResponse>(GetArenaNoVirtual());
+    refresh_account_response_ = p;
+  }
+  return refresh_account_response_;
+}
+inline ::enterprise_management::RefreshAccountResponse* DeviceManagementResponse::mutable_refresh_account_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.refresh_account_response)
+  return _internal_mutable_refresh_account_response();
+}
+inline void DeviceManagementResponse::set_allocated_refresh_account_response(::enterprise_management::RefreshAccountResponse* refresh_account_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete refresh_account_response_;
+  }
+  if (refresh_account_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      refresh_account_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, refresh_account_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x02000000u;
+  } else {
+    _has_bits_[0] &= ~0x02000000u;
+  }
+  refresh_account_response_ = refresh_account_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.refresh_account_response)
+}
+
+// optional .enterprise_management.RsuLookupKeyUploadResponse rsu_lookup_key_upload_response = 30;
+inline bool DeviceManagementResponse::_internal_has_rsu_lookup_key_upload_response() const {
+  bool value = (_has_bits_[0] & 0x08000000u) != 0;
+  PROTOBUF_ASSUME(!value || rsu_lookup_key_upload_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_rsu_lookup_key_upload_response() const {
+  return _internal_has_rsu_lookup_key_upload_response();
+}
+inline void DeviceManagementResponse::clear_rsu_lookup_key_upload_response() {
+  if (rsu_lookup_key_upload_response_ != nullptr) rsu_lookup_key_upload_response_->Clear();
+  _has_bits_[0] &= ~0x08000000u;
+}
+inline const ::enterprise_management::RsuLookupKeyUploadResponse& DeviceManagementResponse::_internal_rsu_lookup_key_upload_response() const {
+  const ::enterprise_management::RsuLookupKeyUploadResponse* p = rsu_lookup_key_upload_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::RsuLookupKeyUploadResponse*>(
+      &::enterprise_management::_RsuLookupKeyUploadResponse_default_instance_);
+}
+inline const ::enterprise_management::RsuLookupKeyUploadResponse& DeviceManagementResponse::rsu_lookup_key_upload_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.rsu_lookup_key_upload_response)
+  return _internal_rsu_lookup_key_upload_response();
+}
+inline ::enterprise_management::RsuLookupKeyUploadResponse* DeviceManagementResponse::release_rsu_lookup_key_upload_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.rsu_lookup_key_upload_response)
+  _has_bits_[0] &= ~0x08000000u;
+  ::enterprise_management::RsuLookupKeyUploadResponse* temp = rsu_lookup_key_upload_response_;
+  rsu_lookup_key_upload_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::RsuLookupKeyUploadResponse* DeviceManagementResponse::_internal_mutable_rsu_lookup_key_upload_response() {
+  _has_bits_[0] |= 0x08000000u;
+  if (rsu_lookup_key_upload_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::RsuLookupKeyUploadResponse>(GetArenaNoVirtual());
+    rsu_lookup_key_upload_response_ = p;
+  }
+  return rsu_lookup_key_upload_response_;
+}
+inline ::enterprise_management::RsuLookupKeyUploadResponse* DeviceManagementResponse::mutable_rsu_lookup_key_upload_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.rsu_lookup_key_upload_response)
+  return _internal_mutable_rsu_lookup_key_upload_response();
+}
+inline void DeviceManagementResponse::set_allocated_rsu_lookup_key_upload_response(::enterprise_management::RsuLookupKeyUploadResponse* rsu_lookup_key_upload_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete rsu_lookup_key_upload_response_;
+  }
+  if (rsu_lookup_key_upload_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      rsu_lookup_key_upload_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, rsu_lookup_key_upload_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x08000000u;
+  } else {
+    _has_bits_[0] &= ~0x08000000u;
+  }
+  rsu_lookup_key_upload_response_ = rsu_lookup_key_upload_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.rsu_lookup_key_upload_response)
+}
+
+// optional .enterprise_management.PublicSamlUserResponse public_saml_user_response = 31;
+inline bool DeviceManagementResponse::_internal_has_public_saml_user_response() const {
+  bool value = (_has_bits_[0] & 0x10000000u) != 0;
+  PROTOBUF_ASSUME(!value || public_saml_user_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_public_saml_user_response() const {
+  return _internal_has_public_saml_user_response();
+}
+inline void DeviceManagementResponse::clear_public_saml_user_response() {
+  if (public_saml_user_response_ != nullptr) public_saml_user_response_->Clear();
+  _has_bits_[0] &= ~0x10000000u;
+}
+inline const ::enterprise_management::PublicSamlUserResponse& DeviceManagementResponse::_internal_public_saml_user_response() const {
+  const ::enterprise_management::PublicSamlUserResponse* p = public_saml_user_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PublicSamlUserResponse*>(
+      &::enterprise_management::_PublicSamlUserResponse_default_instance_);
+}
+inline const ::enterprise_management::PublicSamlUserResponse& DeviceManagementResponse::public_saml_user_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.public_saml_user_response)
+  return _internal_public_saml_user_response();
+}
+inline ::enterprise_management::PublicSamlUserResponse* DeviceManagementResponse::release_public_saml_user_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.public_saml_user_response)
+  _has_bits_[0] &= ~0x10000000u;
+  ::enterprise_management::PublicSamlUserResponse* temp = public_saml_user_response_;
+  public_saml_user_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PublicSamlUserResponse* DeviceManagementResponse::_internal_mutable_public_saml_user_response() {
+  _has_bits_[0] |= 0x10000000u;
+  if (public_saml_user_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PublicSamlUserResponse>(GetArenaNoVirtual());
+    public_saml_user_response_ = p;
+  }
+  return public_saml_user_response_;
+}
+inline ::enterprise_management::PublicSamlUserResponse* DeviceManagementResponse::mutable_public_saml_user_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.public_saml_user_response)
+  return _internal_mutable_public_saml_user_response();
+}
+inline void DeviceManagementResponse::set_allocated_public_saml_user_response(::enterprise_management::PublicSamlUserResponse* public_saml_user_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete public_saml_user_response_;
+  }
+  if (public_saml_user_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      public_saml_user_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, public_saml_user_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x10000000u;
+  } else {
+    _has_bits_[0] &= ~0x10000000u;
+  }
+  public_saml_user_response_ = public_saml_user_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.public_saml_user_response)
+}
+
+// optional .enterprise_management.ChromeOsUserReportResponse chrome_os_user_report_response = 32;
+inline bool DeviceManagementResponse::_internal_has_chrome_os_user_report_response() const {
+  bool value = (_has_bits_[0] & 0x20000000u) != 0;
+  PROTOBUF_ASSUME(!value || chrome_os_user_report_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_chrome_os_user_report_response() const {
+  return _internal_has_chrome_os_user_report_response();
+}
+inline void DeviceManagementResponse::clear_chrome_os_user_report_response() {
+  if (chrome_os_user_report_response_ != nullptr) chrome_os_user_report_response_->Clear();
+  _has_bits_[0] &= ~0x20000000u;
+}
+inline const ::enterprise_management::ChromeOsUserReportResponse& DeviceManagementResponse::_internal_chrome_os_user_report_response() const {
+  const ::enterprise_management::ChromeOsUserReportResponse* p = chrome_os_user_report_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChromeOsUserReportResponse*>(
+      &::enterprise_management::_ChromeOsUserReportResponse_default_instance_);
+}
+inline const ::enterprise_management::ChromeOsUserReportResponse& DeviceManagementResponse::chrome_os_user_report_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.chrome_os_user_report_response)
+  return _internal_chrome_os_user_report_response();
+}
+inline ::enterprise_management::ChromeOsUserReportResponse* DeviceManagementResponse::release_chrome_os_user_report_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.chrome_os_user_report_response)
+  _has_bits_[0] &= ~0x20000000u;
+  ::enterprise_management::ChromeOsUserReportResponse* temp = chrome_os_user_report_response_;
+  chrome_os_user_report_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChromeOsUserReportResponse* DeviceManagementResponse::_internal_mutable_chrome_os_user_report_response() {
+  _has_bits_[0] |= 0x20000000u;
+  if (chrome_os_user_report_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChromeOsUserReportResponse>(GetArenaNoVirtual());
+    chrome_os_user_report_response_ = p;
+  }
+  return chrome_os_user_report_response_;
+}
+inline ::enterprise_management::ChromeOsUserReportResponse* DeviceManagementResponse::mutable_chrome_os_user_report_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.chrome_os_user_report_response)
+  return _internal_mutable_chrome_os_user_report_response();
+}
+inline void DeviceManagementResponse::set_allocated_chrome_os_user_report_response(::enterprise_management::ChromeOsUserReportResponse* chrome_os_user_report_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete chrome_os_user_report_response_;
+  }
+  if (chrome_os_user_report_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      chrome_os_user_report_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, chrome_os_user_report_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x20000000u;
+  } else {
+    _has_bits_[0] &= ~0x20000000u;
+  }
+  chrome_os_user_report_response_ = chrome_os_user_report_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.chrome_os_user_report_response)
+}
+
+// optional .enterprise_management.ClientCertificateProvisioningResponse client_certificate_provisioning_response = 33;
+inline bool DeviceManagementResponse::_internal_has_client_certificate_provisioning_response() const {
+  bool value = (_has_bits_[0] & 0x40000000u) != 0;
+  PROTOBUF_ASSUME(!value || client_certificate_provisioning_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_client_certificate_provisioning_response() const {
+  return _internal_has_client_certificate_provisioning_response();
+}
+inline void DeviceManagementResponse::clear_client_certificate_provisioning_response() {
+  if (client_certificate_provisioning_response_ != nullptr) client_certificate_provisioning_response_->Clear();
+  _has_bits_[0] &= ~0x40000000u;
+}
+inline const ::enterprise_management::ClientCertificateProvisioningResponse& DeviceManagementResponse::_internal_client_certificate_provisioning_response() const {
+  const ::enterprise_management::ClientCertificateProvisioningResponse* p = client_certificate_provisioning_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ClientCertificateProvisioningResponse*>(
+      &::enterprise_management::_ClientCertificateProvisioningResponse_default_instance_);
+}
+inline const ::enterprise_management::ClientCertificateProvisioningResponse& DeviceManagementResponse::client_certificate_provisioning_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.client_certificate_provisioning_response)
+  return _internal_client_certificate_provisioning_response();
+}
+inline ::enterprise_management::ClientCertificateProvisioningResponse* DeviceManagementResponse::release_client_certificate_provisioning_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.client_certificate_provisioning_response)
+  _has_bits_[0] &= ~0x40000000u;
+  ::enterprise_management::ClientCertificateProvisioningResponse* temp = client_certificate_provisioning_response_;
+  client_certificate_provisioning_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ClientCertificateProvisioningResponse* DeviceManagementResponse::_internal_mutable_client_certificate_provisioning_response() {
+  _has_bits_[0] |= 0x40000000u;
+  if (client_certificate_provisioning_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ClientCertificateProvisioningResponse>(GetArenaNoVirtual());
+    client_certificate_provisioning_response_ = p;
+  }
+  return client_certificate_provisioning_response_;
+}
+inline ::enterprise_management::ClientCertificateProvisioningResponse* DeviceManagementResponse::mutable_client_certificate_provisioning_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.client_certificate_provisioning_response)
+  return _internal_mutable_client_certificate_provisioning_response();
+}
+inline void DeviceManagementResponse::set_allocated_client_certificate_provisioning_response(::enterprise_management::ClientCertificateProvisioningResponse* client_certificate_provisioning_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete client_certificate_provisioning_response_;
+  }
+  if (client_certificate_provisioning_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      client_certificate_provisioning_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, client_certificate_provisioning_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x40000000u;
+  } else {
+    _has_bits_[0] &= ~0x40000000u;
+  }
+  client_certificate_provisioning_response_ = client_certificate_provisioning_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.client_certificate_provisioning_response)
+}
+
+// optional .enterprise_management.CheckUserAccountResponse check_user_account_response = 34;
+inline bool DeviceManagementResponse::_internal_has_check_user_account_response() const {
+  bool value = (_has_bits_[0] & 0x80000000u) != 0;
+  PROTOBUF_ASSUME(!value || check_user_account_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_check_user_account_response() const {
+  return _internal_has_check_user_account_response();
+}
+inline void DeviceManagementResponse::clear_check_user_account_response() {
+  if (check_user_account_response_ != nullptr) check_user_account_response_->Clear();
+  _has_bits_[0] &= ~0x80000000u;
+}
+inline const ::enterprise_management::CheckUserAccountResponse& DeviceManagementResponse::_internal_check_user_account_response() const {
+  const ::enterprise_management::CheckUserAccountResponse* p = check_user_account_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::CheckUserAccountResponse*>(
+      &::enterprise_management::_CheckUserAccountResponse_default_instance_);
+}
+inline const ::enterprise_management::CheckUserAccountResponse& DeviceManagementResponse::check_user_account_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.check_user_account_response)
+  return _internal_check_user_account_response();
+}
+inline ::enterprise_management::CheckUserAccountResponse* DeviceManagementResponse::release_check_user_account_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.check_user_account_response)
+  _has_bits_[0] &= ~0x80000000u;
+  ::enterprise_management::CheckUserAccountResponse* temp = check_user_account_response_;
+  check_user_account_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::CheckUserAccountResponse* DeviceManagementResponse::_internal_mutable_check_user_account_response() {
+  _has_bits_[0] |= 0x80000000u;
+  if (check_user_account_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::CheckUserAccountResponse>(GetArenaNoVirtual());
+    check_user_account_response_ = p;
+  }
+  return check_user_account_response_;
+}
+inline ::enterprise_management::CheckUserAccountResponse* DeviceManagementResponse::mutable_check_user_account_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.check_user_account_response)
+  return _internal_mutable_check_user_account_response();
+}
+inline void DeviceManagementResponse::set_allocated_check_user_account_response(::enterprise_management::CheckUserAccountResponse* check_user_account_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete check_user_account_response_;
+  }
+  if (check_user_account_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      check_user_account_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, check_user_account_response, submessage_arena);
+    }
+    _has_bits_[0] |= 0x80000000u;
+  } else {
+    _has_bits_[0] &= ~0x80000000u;
+  }
+  check_user_account_response_ = check_user_account_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.check_user_account_response)
+}
+
+// optional .enterprise_management.PrivateSetMembershipResponse private_set_membership_response = 35;
+inline bool DeviceManagementResponse::_internal_has_private_set_membership_response() const {
+  bool value = (_has_bits_[1] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || private_set_membership_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_private_set_membership_response() const {
+  return _internal_has_private_set_membership_response();
+}
+inline void DeviceManagementResponse::clear_private_set_membership_response() {
+  if (private_set_membership_response_ != nullptr) private_set_membership_response_->Clear();
+  _has_bits_[1] &= ~0x00000001u;
+}
+inline const ::enterprise_management::PrivateSetMembershipResponse& DeviceManagementResponse::_internal_private_set_membership_response() const {
+  const ::enterprise_management::PrivateSetMembershipResponse* p = private_set_membership_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PrivateSetMembershipResponse*>(
+      &::enterprise_management::_PrivateSetMembershipResponse_default_instance_);
+}
+inline const ::enterprise_management::PrivateSetMembershipResponse& DeviceManagementResponse::private_set_membership_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.private_set_membership_response)
+  return _internal_private_set_membership_response();
+}
+inline ::enterprise_management::PrivateSetMembershipResponse* DeviceManagementResponse::release_private_set_membership_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.private_set_membership_response)
+  _has_bits_[1] &= ~0x00000001u;
+  ::enterprise_management::PrivateSetMembershipResponse* temp = private_set_membership_response_;
+  private_set_membership_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PrivateSetMembershipResponse* DeviceManagementResponse::_internal_mutable_private_set_membership_response() {
+  _has_bits_[1] |= 0x00000001u;
+  if (private_set_membership_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PrivateSetMembershipResponse>(GetArenaNoVirtual());
+    private_set_membership_response_ = p;
+  }
+  return private_set_membership_response_;
+}
+inline ::enterprise_management::PrivateSetMembershipResponse* DeviceManagementResponse::mutable_private_set_membership_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.private_set_membership_response)
+  return _internal_mutable_private_set_membership_response();
+}
+inline void DeviceManagementResponse::set_allocated_private_set_membership_response(::enterprise_management::PrivateSetMembershipResponse* private_set_membership_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete private_set_membership_response_;
+  }
+  if (private_set_membership_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      private_set_membership_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, private_set_membership_response, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000001u;
+  } else {
+    _has_bits_[1] &= ~0x00000001u;
+  }
+  private_set_membership_response_ = private_set_membership_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.private_set_membership_response)
+}
+
+// optional .enterprise_management.BrowserPublicKeyUploadResponse browser_public_key_upload_response = 36;
+inline bool DeviceManagementResponse::_internal_has_browser_public_key_upload_response() const {
+  bool value = (_has_bits_[1] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || browser_public_key_upload_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_browser_public_key_upload_response() const {
+  return _internal_has_browser_public_key_upload_response();
+}
+inline void DeviceManagementResponse::clear_browser_public_key_upload_response() {
+  if (browser_public_key_upload_response_ != nullptr) browser_public_key_upload_response_->Clear();
+  _has_bits_[1] &= ~0x00000002u;
+}
+inline const ::enterprise_management::BrowserPublicKeyUploadResponse& DeviceManagementResponse::_internal_browser_public_key_upload_response() const {
+  const ::enterprise_management::BrowserPublicKeyUploadResponse* p = browser_public_key_upload_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::BrowserPublicKeyUploadResponse*>(
+      &::enterprise_management::_BrowserPublicKeyUploadResponse_default_instance_);
+}
+inline const ::enterprise_management::BrowserPublicKeyUploadResponse& DeviceManagementResponse::browser_public_key_upload_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.browser_public_key_upload_response)
+  return _internal_browser_public_key_upload_response();
+}
+inline ::enterprise_management::BrowserPublicKeyUploadResponse* DeviceManagementResponse::release_browser_public_key_upload_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.browser_public_key_upload_response)
+  _has_bits_[1] &= ~0x00000002u;
+  ::enterprise_management::BrowserPublicKeyUploadResponse* temp = browser_public_key_upload_response_;
+  browser_public_key_upload_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::BrowserPublicKeyUploadResponse* DeviceManagementResponse::_internal_mutable_browser_public_key_upload_response() {
+  _has_bits_[1] |= 0x00000002u;
+  if (browser_public_key_upload_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::BrowserPublicKeyUploadResponse>(GetArenaNoVirtual());
+    browser_public_key_upload_response_ = p;
+  }
+  return browser_public_key_upload_response_;
+}
+inline ::enterprise_management::BrowserPublicKeyUploadResponse* DeviceManagementResponse::mutable_browser_public_key_upload_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.browser_public_key_upload_response)
+  return _internal_mutable_browser_public_key_upload_response();
+}
+inline void DeviceManagementResponse::set_allocated_browser_public_key_upload_response(::enterprise_management::BrowserPublicKeyUploadResponse* browser_public_key_upload_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete browser_public_key_upload_response_;
+  }
+  if (browser_public_key_upload_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      browser_public_key_upload_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, browser_public_key_upload_response, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000002u;
+  } else {
+    _has_bits_[1] &= ~0x00000002u;
+  }
+  browser_public_key_upload_response_ = browser_public_key_upload_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.browser_public_key_upload_response)
+}
+
+// optional .enterprise_management.UploadEuiccInfoResponse upload_euicc_info_response = 37;
+inline bool DeviceManagementResponse::_internal_has_upload_euicc_info_response() const {
+  bool value = (_has_bits_[1] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || upload_euicc_info_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_upload_euicc_info_response() const {
+  return _internal_has_upload_euicc_info_response();
+}
+inline void DeviceManagementResponse::clear_upload_euicc_info_response() {
+  if (upload_euicc_info_response_ != nullptr) upload_euicc_info_response_->Clear();
+  _has_bits_[1] &= ~0x00000004u;
+}
+inline const ::enterprise_management::UploadEuiccInfoResponse& DeviceManagementResponse::_internal_upload_euicc_info_response() const {
+  const ::enterprise_management::UploadEuiccInfoResponse* p = upload_euicc_info_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::UploadEuiccInfoResponse*>(
+      &::enterprise_management::_UploadEuiccInfoResponse_default_instance_);
+}
+inline const ::enterprise_management::UploadEuiccInfoResponse& DeviceManagementResponse::upload_euicc_info_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.upload_euicc_info_response)
+  return _internal_upload_euicc_info_response();
+}
+inline ::enterprise_management::UploadEuiccInfoResponse* DeviceManagementResponse::release_upload_euicc_info_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.upload_euicc_info_response)
+  _has_bits_[1] &= ~0x00000004u;
+  ::enterprise_management::UploadEuiccInfoResponse* temp = upload_euicc_info_response_;
+  upload_euicc_info_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::UploadEuiccInfoResponse* DeviceManagementResponse::_internal_mutable_upload_euicc_info_response() {
+  _has_bits_[1] |= 0x00000004u;
+  if (upload_euicc_info_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::UploadEuiccInfoResponse>(GetArenaNoVirtual());
+    upload_euicc_info_response_ = p;
+  }
+  return upload_euicc_info_response_;
+}
+inline ::enterprise_management::UploadEuiccInfoResponse* DeviceManagementResponse::mutable_upload_euicc_info_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.upload_euicc_info_response)
+  return _internal_mutable_upload_euicc_info_response();
+}
+inline void DeviceManagementResponse::set_allocated_upload_euicc_info_response(::enterprise_management::UploadEuiccInfoResponse* upload_euicc_info_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete upload_euicc_info_response_;
+  }
+  if (upload_euicc_info_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      upload_euicc_info_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, upload_euicc_info_response, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000004u;
+  } else {
+    _has_bits_[1] &= ~0x00000004u;
+  }
+  upload_euicc_info_response_ = upload_euicc_info_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.upload_euicc_info_response)
+}
+
+// optional .enterprise_management.ChromeProfileReportResponse chrome_profile_report_response = 38;
+inline bool DeviceManagementResponse::_internal_has_chrome_profile_report_response() const {
+  bool value = (_has_bits_[1] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || chrome_profile_report_response_ != nullptr);
+  return value;
+}
+inline bool DeviceManagementResponse::has_chrome_profile_report_response() const {
+  return _internal_has_chrome_profile_report_response();
+}
+inline void DeviceManagementResponse::clear_chrome_profile_report_response() {
+  if (chrome_profile_report_response_ != nullptr) chrome_profile_report_response_->Clear();
+  _has_bits_[1] &= ~0x00000008u;
+}
+inline const ::enterprise_management::ChromeProfileReportResponse& DeviceManagementResponse::_internal_chrome_profile_report_response() const {
+  const ::enterprise_management::ChromeProfileReportResponse* p = chrome_profile_report_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::ChromeProfileReportResponse*>(
+      &::enterprise_management::_ChromeProfileReportResponse_default_instance_);
+}
+inline const ::enterprise_management::ChromeProfileReportResponse& DeviceManagementResponse::chrome_profile_report_response() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceManagementResponse.chrome_profile_report_response)
+  return _internal_chrome_profile_report_response();
+}
+inline ::enterprise_management::ChromeProfileReportResponse* DeviceManagementResponse::release_chrome_profile_report_response() {
+  // @@protoc_insertion_point(field_release:enterprise_management.DeviceManagementResponse.chrome_profile_report_response)
+  _has_bits_[1] &= ~0x00000008u;
+  ::enterprise_management::ChromeProfileReportResponse* temp = chrome_profile_report_response_;
+  chrome_profile_report_response_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::ChromeProfileReportResponse* DeviceManagementResponse::_internal_mutable_chrome_profile_report_response() {
+  _has_bits_[1] |= 0x00000008u;
+  if (chrome_profile_report_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::ChromeProfileReportResponse>(GetArenaNoVirtual());
+    chrome_profile_report_response_ = p;
+  }
+  return chrome_profile_report_response_;
+}
+inline ::enterprise_management::ChromeProfileReportResponse* DeviceManagementResponse::mutable_chrome_profile_report_response() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.DeviceManagementResponse.chrome_profile_report_response)
+  return _internal_mutable_chrome_profile_report_response();
+}
+inline void DeviceManagementResponse::set_allocated_chrome_profile_report_response(::enterprise_management::ChromeProfileReportResponse* chrome_profile_report_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete chrome_profile_report_response_;
+  }
+  if (chrome_profile_report_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      chrome_profile_report_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, chrome_profile_report_response, submessage_arena);
+    }
+    _has_bits_[1] |= 0x00000008u;
+  } else {
+    _has_bits_[1] &= ~0x00000008u;
+  }
+  chrome_profile_report_response_ = chrome_profile_report_response;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.DeviceManagementResponse.chrome_profile_report_response)
+}
+
+// -------------------------------------------------------------------
+
+// DeviceStateRetrievalInfo
+
+// optional bool has_initial_state = 1;
+inline bool DeviceStateRetrievalInfo::_internal_has_has_initial_state() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool DeviceStateRetrievalInfo::has_has_initial_state() const {
+  return _internal_has_has_initial_state();
+}
+inline void DeviceStateRetrievalInfo::clear_has_initial_state() {
+  has_initial_state_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool DeviceStateRetrievalInfo::_internal_has_initial_state() const {
+  return has_initial_state_;
+}
+inline bool DeviceStateRetrievalInfo::has_initial_state() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.DeviceStateRetrievalInfo.has_initial_state)
+  return _internal_has_initial_state();
+}
+inline void DeviceStateRetrievalInfo::_internal_set_has_initial_state(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  has_initial_state_ = value;
+}
+inline void DeviceStateRetrievalInfo::set_has_initial_state(bool value) {
+  _internal_set_has_initial_state(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.DeviceStateRetrievalInfo.has_initial_state)
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace enterprise_management
+
+PROTOBUF_NAMESPACE_OPEN
+
+template <> struct is_proto_enum< ::enterprise_management::LicenseType_LicenseTypeEnum> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceRegisterRequest_Type> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceRegisterRequest_Flavor> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceRegisterRequest_Lifetime> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceRegisterRequest_PsmExecutionResult> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::CheckUserAccountResponse_UserAccountType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceRegisterResponse_DeviceMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceCertUploadRequest_CertificateType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceServiceApiAccessRequest_DeviceType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PolicyFetchRequest_SignatureType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceState_DeviceMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PolicyData_AssociationState> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PolicyData_ManagementMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PolicyData_MarketSegment> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PolicyData_MetricsLogSegment> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ActiveTimePeriod_SessionType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::NetworkInterface_NetworkDeviceType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::NetworkState_ConnectionState> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceUser_UserType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PowerStatus_PowerSource> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DiskInfo_DevicePurpose> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::CpuInfo_Architecture> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::CrashReportInfo_CrashReportUploadStatus> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::BootInfo_BootMethod> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::OsUpdateStatus_UpdateStatus> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AppInfo_AppType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AppInfo_Status> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AndroidAppInfo_AndroidAppStatus> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AndroidAppInfo_InstalledSource> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::Extension_ExtensionType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::Extension_InstallType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::Policy_PolicyLevel> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::Policy_PolicyScope> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::Policy_PolicySource> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PolicyValueValidationIssue_ValueValidationIssueSeverity> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PolicyValidationReportRequest_ValidationResultType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceAutoEnrollmentRequest_EnrollmentCheckType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceStateRetrievalResponse_RestoreMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceInitialEnrollmentStateResponse_InitialEnrollmentMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceInitialEnrollmentStateResponse_LicensePackagingSKU> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DevicePairingResponse_StatusCode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::CheckDevicePairingResponse_StatusCode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::RemoteCommand_Type> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::RemoteCommandResult_ResultType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceAttributeUpdatePermissionResponse_ResultType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceAttributeUpdateResponse_ResultType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::CertificateBasedDeviceRegistrationData_CertificateType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::CheckDeviceLicenseResponse_LicenseSelectionMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::TpmVersionInfo_GscVersion> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_EventType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_SessionStateChangeType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_FailureReason> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_InstallationStage> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_UserType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_DownloadingStage> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_InstallCreationStage> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_DownloadCacheStatus> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_SandboxedUnpackerFailureReason> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_ManifestInvalidError> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ExtensionInstallReportLogEvent_CrxInstallErrorDetail> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AppInstallReportLogEvent_EventType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AppInstallReportLogEvent_SessionStateChangeType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::RefreshAccountRequest_AccountType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PrintJobEvent_PrintSettings_ColorMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PrintJobEvent_PrintSettings_DuplexMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PrintJobEvent_UserType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::App_AppType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::AppActivity_AppState> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::ClientCertificateProvisioningResponse_Error> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::BrowserPublicKeyUploadRequest_KeyTrustLevel> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::BrowserPublicKeyUploadRequest_KeyType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::BrowserPublicKeyUploadResponse_ResponseCode> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::Channel> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::BusDeviceClass> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::BusType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::PartialReportType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::CrostiniAppType> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::HashingAlgorithm> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::SigningAlgorithm> : ::std::true_type {};
+template <> struct is_proto_enum< ::enterprise_management::DeviceManagementErrorDetail> : ::std::true_type {};
+
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_device_5fmanagement_5fbackend_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/install_attributes.pb.cc b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/install_attributes.pb.cc
new file mode 100644
index 0000000..df1ee4d
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/install_attributes.pb.cc
@@ -0,0 +1,537 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: install_attributes.proto
+
+#include "install_attributes.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_install_5fattributes_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SerializedInstallAttributes_Attribute_install_5fattributes_2eproto;
+namespace cryptohome {
+class SerializedInstallAttributes_AttributeDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SerializedInstallAttributes_Attribute> _instance;
+} _SerializedInstallAttributes_Attribute_default_instance_;
+class SerializedInstallAttributesDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SerializedInstallAttributes> _instance;
+} _SerializedInstallAttributes_default_instance_;
+}  // namespace cryptohome
+static void InitDefaultsscc_info_SerializedInstallAttributes_install_5fattributes_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::cryptohome::_SerializedInstallAttributes_default_instance_;
+    new (ptr) ::cryptohome::SerializedInstallAttributes();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::cryptohome::SerializedInstallAttributes::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SerializedInstallAttributes_install_5fattributes_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SerializedInstallAttributes_install_5fattributes_2eproto}, {
+      &scc_info_SerializedInstallAttributes_Attribute_install_5fattributes_2eproto.base,}};
+
+static void InitDefaultsscc_info_SerializedInstallAttributes_Attribute_install_5fattributes_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::cryptohome::_SerializedInstallAttributes_Attribute_default_instance_;
+    new (ptr) ::cryptohome::SerializedInstallAttributes_Attribute();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::cryptohome::SerializedInstallAttributes_Attribute::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SerializedInstallAttributes_Attribute_install_5fattributes_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SerializedInstallAttributes_Attribute_install_5fattributes_2eproto}, {}};
+
+namespace cryptohome {
+
+// ===================================================================
+
+void SerializedInstallAttributes_Attribute::InitAsDefaultInstance() {
+}
+class SerializedInstallAttributes_Attribute::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SerializedInstallAttributes_Attribute>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_value(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+SerializedInstallAttributes_Attribute::SerializedInstallAttributes_Attribute()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:cryptohome.SerializedInstallAttributes.Attribute)
+}
+SerializedInstallAttributes_Attribute::SerializedInstallAttributes_Attribute(const SerializedInstallAttributes_Attribute& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_value()) {
+    value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.value_);
+  }
+  // @@protoc_insertion_point(copy_constructor:cryptohome.SerializedInstallAttributes.Attribute)
+}
+
+void SerializedInstallAttributes_Attribute::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SerializedInstallAttributes_Attribute_install_5fattributes_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+SerializedInstallAttributes_Attribute::~SerializedInstallAttributes_Attribute() {
+  // @@protoc_insertion_point(destructor:cryptohome.SerializedInstallAttributes.Attribute)
+  SharedDtor();
+}
+
+void SerializedInstallAttributes_Attribute::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  value_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SerializedInstallAttributes_Attribute::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SerializedInstallAttributes_Attribute& SerializedInstallAttributes_Attribute::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SerializedInstallAttributes_Attribute_install_5fattributes_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SerializedInstallAttributes_Attribute::Clear() {
+// @@protoc_insertion_point(message_clear_start:cryptohome.SerializedInstallAttributes.Attribute)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      value_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SerializedInstallAttributes_Attribute::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // required string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // required bytes value = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_value();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SerializedInstallAttributes_Attribute::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:cryptohome.SerializedInstallAttributes.Attribute)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // required string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // required bytes value = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_value(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:cryptohome.SerializedInstallAttributes.Attribute)
+  return target;
+}
+
+size_t SerializedInstallAttributes_Attribute::RequiredFieldsByteSizeFallback() const {
+// @@protoc_insertion_point(required_fields_byte_size_fallback_start:cryptohome.SerializedInstallAttributes.Attribute)
+  size_t total_size = 0;
+
+  if (_internal_has_name()) {
+    // required string name = 1;
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_name());
+  }
+
+  if (_internal_has_value()) {
+    // required bytes value = 2;
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_value());
+  }
+
+  return total_size;
+}
+size_t SerializedInstallAttributes_Attribute::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:cryptohome.SerializedInstallAttributes.Attribute)
+  size_t total_size = 0;
+
+  if (((_has_bits_[0] & 0x00000003) ^ 0x00000003) == 0) {  // All required fields are present.
+    // required string name = 1;
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_name());
+
+    // required bytes value = 2;
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_value());
+
+  } else {
+    total_size += RequiredFieldsByteSizeFallback();
+  }
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SerializedInstallAttributes_Attribute::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SerializedInstallAttributes_Attribute*>(
+      &from));
+}
+
+void SerializedInstallAttributes_Attribute::MergeFrom(const SerializedInstallAttributes_Attribute& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:cryptohome.SerializedInstallAttributes.Attribute)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.value_);
+    }
+  }
+}
+
+void SerializedInstallAttributes_Attribute::CopyFrom(const SerializedInstallAttributes_Attribute& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:cryptohome.SerializedInstallAttributes.Attribute)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SerializedInstallAttributes_Attribute::IsInitialized() const {
+  if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false;
+  return true;
+}
+
+void SerializedInstallAttributes_Attribute::InternalSwap(SerializedInstallAttributes_Attribute* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  value_.Swap(&other->value_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string SerializedInstallAttributes_Attribute::GetTypeName() const {
+  return "cryptohome.SerializedInstallAttributes.Attribute";
+}
+
+
+// ===================================================================
+
+void SerializedInstallAttributes::InitAsDefaultInstance() {
+}
+class SerializedInstallAttributes::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SerializedInstallAttributes>()._has_bits_);
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SerializedInstallAttributes::SerializedInstallAttributes()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:cryptohome.SerializedInstallAttributes)
+}
+SerializedInstallAttributes::SerializedInstallAttributes(const SerializedInstallAttributes& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      attributes_(from.attributes_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  version_ = from.version_;
+  // @@protoc_insertion_point(copy_constructor:cryptohome.SerializedInstallAttributes)
+}
+
+void SerializedInstallAttributes::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SerializedInstallAttributes_install_5fattributes_2eproto.base);
+  version_ = 1u;
+}
+
+SerializedInstallAttributes::~SerializedInstallAttributes() {
+  // @@protoc_insertion_point(destructor:cryptohome.SerializedInstallAttributes)
+  SharedDtor();
+}
+
+void SerializedInstallAttributes::SharedDtor() {
+}
+
+void SerializedInstallAttributes::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SerializedInstallAttributes& SerializedInstallAttributes::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SerializedInstallAttributes_install_5fattributes_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SerializedInstallAttributes::Clear() {
+// @@protoc_insertion_point(message_clear_start:cryptohome.SerializedInstallAttributes)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  attributes_.Clear();
+  version_ = 1u;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SerializedInstallAttributes::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 version = 1 [default = 1];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_version(&has_bits);
+          version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .cryptohome.SerializedInstallAttributes.Attribute attributes = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_attributes(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SerializedInstallAttributes::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:cryptohome.SerializedInstallAttributes)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 version = 1 [default = 1];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_version(), target);
+  }
+
+  // repeated .cryptohome.SerializedInstallAttributes.Attribute attributes = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_attributes_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_attributes(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:cryptohome.SerializedInstallAttributes)
+  return target;
+}
+
+size_t SerializedInstallAttributes::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:cryptohome.SerializedInstallAttributes)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .cryptohome.SerializedInstallAttributes.Attribute attributes = 2;
+  total_size += 1UL * this->_internal_attributes_size();
+  for (const auto& msg : this->attributes_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // optional uint32 version = 1 [default = 1];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+        this->_internal_version());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SerializedInstallAttributes::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SerializedInstallAttributes*>(
+      &from));
+}
+
+void SerializedInstallAttributes::MergeFrom(const SerializedInstallAttributes& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:cryptohome.SerializedInstallAttributes)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  attributes_.MergeFrom(from.attributes_);
+  if (from._internal_has_version()) {
+    _internal_set_version(from._internal_version());
+  }
+}
+
+void SerializedInstallAttributes::CopyFrom(const SerializedInstallAttributes& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:cryptohome.SerializedInstallAttributes)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SerializedInstallAttributes::IsInitialized() const {
+  if (!::PROTOBUF_NAMESPACE_ID::internal::AllAreInitialized(attributes_)) return false;
+  return true;
+}
+
+void SerializedInstallAttributes::InternalSwap(SerializedInstallAttributes* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  attributes_.InternalSwap(&other->attributes_);
+  swap(version_, other->version_);
+}
+
+std::string SerializedInstallAttributes::GetTypeName() const {
+  return "cryptohome.SerializedInstallAttributes";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace cryptohome
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::cryptohome::SerializedInstallAttributes_Attribute* Arena::CreateMaybeMessage< ::cryptohome::SerializedInstallAttributes_Attribute >(Arena* arena) {
+  return Arena::CreateInternal< ::cryptohome::SerializedInstallAttributes_Attribute >(arena);
+}
+template<> PROTOBUF_NOINLINE ::cryptohome::SerializedInstallAttributes* Arena::CreateMaybeMessage< ::cryptohome::SerializedInstallAttributes >(Arena* arena) {
+  return Arena::CreateInternal< ::cryptohome::SerializedInstallAttributes >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/install_attributes.pb.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/install_attributes.pb.h
new file mode 100644
index 0000000..6e56599
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/install_attributes.pb.h
@@ -0,0 +1,609 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: install_attributes.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_install_5fattributes_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_install_5fattributes_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_install_5fattributes_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_install_5fattributes_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[2]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace cryptohome {
+class SerializedInstallAttributes;
+class SerializedInstallAttributesDefaultTypeInternal;
+extern SerializedInstallAttributesDefaultTypeInternal _SerializedInstallAttributes_default_instance_;
+class SerializedInstallAttributes_Attribute;
+class SerializedInstallAttributes_AttributeDefaultTypeInternal;
+extern SerializedInstallAttributes_AttributeDefaultTypeInternal _SerializedInstallAttributes_Attribute_default_instance_;
+}  // namespace cryptohome
+PROTOBUF_NAMESPACE_OPEN
+template<> ::cryptohome::SerializedInstallAttributes* Arena::CreateMaybeMessage<::cryptohome::SerializedInstallAttributes>(Arena*);
+template<> ::cryptohome::SerializedInstallAttributes_Attribute* Arena::CreateMaybeMessage<::cryptohome::SerializedInstallAttributes_Attribute>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace cryptohome {
+
+// ===================================================================
+
+class SerializedInstallAttributes_Attribute :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:cryptohome.SerializedInstallAttributes.Attribute) */ {
+ public:
+  SerializedInstallAttributes_Attribute();
+  virtual ~SerializedInstallAttributes_Attribute();
+
+  SerializedInstallAttributes_Attribute(const SerializedInstallAttributes_Attribute& from);
+  SerializedInstallAttributes_Attribute(SerializedInstallAttributes_Attribute&& from) noexcept
+    : SerializedInstallAttributes_Attribute() {
+    *this = ::std::move(from);
+  }
+
+  inline SerializedInstallAttributes_Attribute& operator=(const SerializedInstallAttributes_Attribute& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SerializedInstallAttributes_Attribute& operator=(SerializedInstallAttributes_Attribute&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SerializedInstallAttributes_Attribute& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SerializedInstallAttributes_Attribute* internal_default_instance() {
+    return reinterpret_cast<const SerializedInstallAttributes_Attribute*>(
+               &_SerializedInstallAttributes_Attribute_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(SerializedInstallAttributes_Attribute& a, SerializedInstallAttributes_Attribute& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SerializedInstallAttributes_Attribute* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SerializedInstallAttributes_Attribute* New() const final {
+    return CreateMaybeMessage<SerializedInstallAttributes_Attribute>(nullptr);
+  }
+
+  SerializedInstallAttributes_Attribute* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SerializedInstallAttributes_Attribute>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SerializedInstallAttributes_Attribute& from);
+  void MergeFrom(const SerializedInstallAttributes_Attribute& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SerializedInstallAttributes_Attribute* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "cryptohome.SerializedInstallAttributes.Attribute";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kValueFieldNumber = 2,
+  };
+  // required string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // required bytes value = 2;
+  bool has_value() const;
+  private:
+  bool _internal_has_value() const;
+  public:
+  void clear_value();
+  const std::string& value() const;
+  void set_value(const std::string& value);
+  void set_value(std::string&& value);
+  void set_value(const char* value);
+  void set_value(const void* value, size_t size);
+  std::string* mutable_value();
+  std::string* release_value();
+  void set_allocated_value(std::string* value);
+  private:
+  const std::string& _internal_value() const;
+  void _internal_set_value(const std::string& value);
+  std::string* _internal_mutable_value();
+  public:
+
+  // @@protoc_insertion_point(class_scope:cryptohome.SerializedInstallAttributes.Attribute)
+ private:
+  class _Internal;
+
+  // helper for ByteSizeLong()
+  size_t RequiredFieldsByteSizeFallback() const;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_;
+  friend struct ::TableStruct_install_5fattributes_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SerializedInstallAttributes :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:cryptohome.SerializedInstallAttributes) */ {
+ public:
+  SerializedInstallAttributes();
+  virtual ~SerializedInstallAttributes();
+
+  SerializedInstallAttributes(const SerializedInstallAttributes& from);
+  SerializedInstallAttributes(SerializedInstallAttributes&& from) noexcept
+    : SerializedInstallAttributes() {
+    *this = ::std::move(from);
+  }
+
+  inline SerializedInstallAttributes& operator=(const SerializedInstallAttributes& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SerializedInstallAttributes& operator=(SerializedInstallAttributes&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SerializedInstallAttributes& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SerializedInstallAttributes* internal_default_instance() {
+    return reinterpret_cast<const SerializedInstallAttributes*>(
+               &_SerializedInstallAttributes_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(SerializedInstallAttributes& a, SerializedInstallAttributes& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SerializedInstallAttributes* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SerializedInstallAttributes* New() const final {
+    return CreateMaybeMessage<SerializedInstallAttributes>(nullptr);
+  }
+
+  SerializedInstallAttributes* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SerializedInstallAttributes>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SerializedInstallAttributes& from);
+  void MergeFrom(const SerializedInstallAttributes& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SerializedInstallAttributes* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "cryptohome.SerializedInstallAttributes";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SerializedInstallAttributes_Attribute Attribute;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAttributesFieldNumber = 2,
+    kVersionFieldNumber = 1,
+  };
+  // repeated .cryptohome.SerializedInstallAttributes.Attribute attributes = 2;
+  int attributes_size() const;
+  private:
+  int _internal_attributes_size() const;
+  public:
+  void clear_attributes();
+  ::cryptohome::SerializedInstallAttributes_Attribute* mutable_attributes(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::cryptohome::SerializedInstallAttributes_Attribute >*
+      mutable_attributes();
+  private:
+  const ::cryptohome::SerializedInstallAttributes_Attribute& _internal_attributes(int index) const;
+  ::cryptohome::SerializedInstallAttributes_Attribute* _internal_add_attributes();
+  public:
+  const ::cryptohome::SerializedInstallAttributes_Attribute& attributes(int index) const;
+  ::cryptohome::SerializedInstallAttributes_Attribute* add_attributes();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::cryptohome::SerializedInstallAttributes_Attribute >&
+      attributes() const;
+
+  // optional uint32 version = 1 [default = 1];
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  ::PROTOBUF_NAMESPACE_ID::uint32 version() const;
+  void set_version(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_version() const;
+  void _internal_set_version(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:cryptohome.SerializedInstallAttributes)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::cryptohome::SerializedInstallAttributes_Attribute > attributes_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 version_;
+  friend struct ::TableStruct_install_5fattributes_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// SerializedInstallAttributes_Attribute
+
+// required string name = 1;
+inline bool SerializedInstallAttributes_Attribute::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SerializedInstallAttributes_Attribute::has_name() const {
+  return _internal_has_name();
+}
+inline void SerializedInstallAttributes_Attribute::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SerializedInstallAttributes_Attribute::name() const {
+  // @@protoc_insertion_point(field_get:cryptohome.SerializedInstallAttributes.Attribute.name)
+  return _internal_name();
+}
+inline void SerializedInstallAttributes_Attribute::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:cryptohome.SerializedInstallAttributes.Attribute.name)
+}
+inline std::string* SerializedInstallAttributes_Attribute::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:cryptohome.SerializedInstallAttributes.Attribute.name)
+  return _internal_mutable_name();
+}
+inline const std::string& SerializedInstallAttributes_Attribute::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void SerializedInstallAttributes_Attribute::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SerializedInstallAttributes_Attribute::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:cryptohome.SerializedInstallAttributes.Attribute.name)
+}
+inline void SerializedInstallAttributes_Attribute::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:cryptohome.SerializedInstallAttributes.Attribute.name)
+}
+inline void SerializedInstallAttributes_Attribute::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:cryptohome.SerializedInstallAttributes.Attribute.name)
+}
+inline std::string* SerializedInstallAttributes_Attribute::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SerializedInstallAttributes_Attribute::release_name() {
+  // @@protoc_insertion_point(field_release:cryptohome.SerializedInstallAttributes.Attribute.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SerializedInstallAttributes_Attribute::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:cryptohome.SerializedInstallAttributes.Attribute.name)
+}
+
+// required bytes value = 2;
+inline bool SerializedInstallAttributes_Attribute::_internal_has_value() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SerializedInstallAttributes_Attribute::has_value() const {
+  return _internal_has_value();
+}
+inline void SerializedInstallAttributes_Attribute::clear_value() {
+  value_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SerializedInstallAttributes_Attribute::value() const {
+  // @@protoc_insertion_point(field_get:cryptohome.SerializedInstallAttributes.Attribute.value)
+  return _internal_value();
+}
+inline void SerializedInstallAttributes_Attribute::set_value(const std::string& value) {
+  _internal_set_value(value);
+  // @@protoc_insertion_point(field_set:cryptohome.SerializedInstallAttributes.Attribute.value)
+}
+inline std::string* SerializedInstallAttributes_Attribute::mutable_value() {
+  // @@protoc_insertion_point(field_mutable:cryptohome.SerializedInstallAttributes.Attribute.value)
+  return _internal_mutable_value();
+}
+inline const std::string& SerializedInstallAttributes_Attribute::_internal_value() const {
+  return value_.GetNoArena();
+}
+inline void SerializedInstallAttributes_Attribute::_internal_set_value(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SerializedInstallAttributes_Attribute::set_value(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  value_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:cryptohome.SerializedInstallAttributes.Attribute.value)
+}
+inline void SerializedInstallAttributes_Attribute::set_value(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:cryptohome.SerializedInstallAttributes.Attribute.value)
+}
+inline void SerializedInstallAttributes_Attribute::set_value(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:cryptohome.SerializedInstallAttributes.Attribute.value)
+}
+inline std::string* SerializedInstallAttributes_Attribute::_internal_mutable_value() {
+  _has_bits_[0] |= 0x00000002u;
+  return value_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SerializedInstallAttributes_Attribute::release_value() {
+  // @@protoc_insertion_point(field_release:cryptohome.SerializedInstallAttributes.Attribute.value)
+  if (!_internal_has_value()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return value_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SerializedInstallAttributes_Attribute::set_allocated_value(std::string* value) {
+  if (value != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  value_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+  // @@protoc_insertion_point(field_set_allocated:cryptohome.SerializedInstallAttributes.Attribute.value)
+}
+
+// -------------------------------------------------------------------
+
+// SerializedInstallAttributes
+
+// optional uint32 version = 1 [default = 1];
+inline bool SerializedInstallAttributes::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SerializedInstallAttributes::has_version() const {
+  return _internal_has_version();
+}
+inline void SerializedInstallAttributes::clear_version() {
+  version_ = 1u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SerializedInstallAttributes::_internal_version() const {
+  return version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SerializedInstallAttributes::version() const {
+  // @@protoc_insertion_point(field_get:cryptohome.SerializedInstallAttributes.version)
+  return _internal_version();
+}
+inline void SerializedInstallAttributes::_internal_set_version(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  version_ = value;
+}
+inline void SerializedInstallAttributes::set_version(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:cryptohome.SerializedInstallAttributes.version)
+}
+
+// repeated .cryptohome.SerializedInstallAttributes.Attribute attributes = 2;
+inline int SerializedInstallAttributes::_internal_attributes_size() const {
+  return attributes_.size();
+}
+inline int SerializedInstallAttributes::attributes_size() const {
+  return _internal_attributes_size();
+}
+inline void SerializedInstallAttributes::clear_attributes() {
+  attributes_.Clear();
+}
+inline ::cryptohome::SerializedInstallAttributes_Attribute* SerializedInstallAttributes::mutable_attributes(int index) {
+  // @@protoc_insertion_point(field_mutable:cryptohome.SerializedInstallAttributes.attributes)
+  return attributes_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::cryptohome::SerializedInstallAttributes_Attribute >*
+SerializedInstallAttributes::mutable_attributes() {
+  // @@protoc_insertion_point(field_mutable_list:cryptohome.SerializedInstallAttributes.attributes)
+  return &attributes_;
+}
+inline const ::cryptohome::SerializedInstallAttributes_Attribute& SerializedInstallAttributes::_internal_attributes(int index) const {
+  return attributes_.Get(index);
+}
+inline const ::cryptohome::SerializedInstallAttributes_Attribute& SerializedInstallAttributes::attributes(int index) const {
+  // @@protoc_insertion_point(field_get:cryptohome.SerializedInstallAttributes.attributes)
+  return _internal_attributes(index);
+}
+inline ::cryptohome::SerializedInstallAttributes_Attribute* SerializedInstallAttributes::_internal_add_attributes() {
+  return attributes_.Add();
+}
+inline ::cryptohome::SerializedInstallAttributes_Attribute* SerializedInstallAttributes::add_attributes() {
+  // @@protoc_insertion_point(field_add:cryptohome.SerializedInstallAttributes.attributes)
+  return _internal_add_attributes();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::cryptohome::SerializedInstallAttributes_Attribute >&
+SerializedInstallAttributes::attributes() const {
+  // @@protoc_insertion_point(field_list:cryptohome.SerializedInstallAttributes.attributes)
+  return attributes_;
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace cryptohome
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_install_5fattributes_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/policy_common_definitions.pb.cc b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/policy_common_definitions.pb.cc
new file mode 100644
index 0000000..da7b308
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/policy_common_definitions.pb.cc
@@ -0,0 +1,1554 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: policy_common_definitions.proto
+
+#include "policy_common_definitions.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_policy_5fcommon_5fdefinitions_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_policy_5fcommon_5fdefinitions_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StringList_policy_5fcommon_5fdefinitions_2eproto;
+namespace enterprise_management {
+class StringListDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StringList> _instance;
+} _StringList_default_instance_;
+class PolicyOptionsDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PolicyOptions> _instance;
+} _PolicyOptions_default_instance_;
+class BooleanPolicyProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<BooleanPolicyProto> _instance;
+} _BooleanPolicyProto_default_instance_;
+class IntegerPolicyProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<IntegerPolicyProto> _instance;
+} _IntegerPolicyProto_default_instance_;
+class StringPolicyProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StringPolicyProto> _instance;
+} _StringPolicyProto_default_instance_;
+class StringListPolicyProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StringListPolicyProto> _instance;
+} _StringListPolicyProto_default_instance_;
+}  // namespace enterprise_management
+static void InitDefaultsscc_info_BooleanPolicyProto_policy_5fcommon_5fdefinitions_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_BooleanPolicyProto_default_instance_;
+    new (ptr) ::enterprise_management::BooleanPolicyProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::BooleanPolicyProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_BooleanPolicyProto_policy_5fcommon_5fdefinitions_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_BooleanPolicyProto_policy_5fcommon_5fdefinitions_2eproto}, {
+      &scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto.base,}};
+
+static void InitDefaultsscc_info_IntegerPolicyProto_policy_5fcommon_5fdefinitions_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_IntegerPolicyProto_default_instance_;
+    new (ptr) ::enterprise_management::IntegerPolicyProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::IntegerPolicyProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_IntegerPolicyProto_policy_5fcommon_5fdefinitions_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_IntegerPolicyProto_policy_5fcommon_5fdefinitions_2eproto}, {
+      &scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto.base,}};
+
+static void InitDefaultsscc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_PolicyOptions_default_instance_;
+    new (ptr) ::enterprise_management::PolicyOptions();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::PolicyOptions::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto}, {}};
+
+static void InitDefaultsscc_info_StringList_policy_5fcommon_5fdefinitions_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_StringList_default_instance_;
+    new (ptr) ::enterprise_management::StringList();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::StringList::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StringList_policy_5fcommon_5fdefinitions_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_StringList_policy_5fcommon_5fdefinitions_2eproto}, {}};
+
+static void InitDefaultsscc_info_StringListPolicyProto_policy_5fcommon_5fdefinitions_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_StringListPolicyProto_default_instance_;
+    new (ptr) ::enterprise_management::StringListPolicyProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::StringListPolicyProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_StringListPolicyProto_policy_5fcommon_5fdefinitions_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_StringListPolicyProto_policy_5fcommon_5fdefinitions_2eproto}, {
+      &scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto.base,
+      &scc_info_StringList_policy_5fcommon_5fdefinitions_2eproto.base,}};
+
+static void InitDefaultsscc_info_StringPolicyProto_policy_5fcommon_5fdefinitions_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::enterprise_management::_StringPolicyProto_default_instance_;
+    new (ptr) ::enterprise_management::StringPolicyProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::enterprise_management::StringPolicyProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_StringPolicyProto_policy_5fcommon_5fdefinitions_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_StringPolicyProto_policy_5fcommon_5fdefinitions_2eproto}, {
+      &scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto.base,}};
+
+namespace enterprise_management {
+bool PolicyOptions_PolicyMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> PolicyOptions_PolicyMode_strings[3] = {};
+
+static const char PolicyOptions_PolicyMode_names[] =
+  "MANDATORY"
+  "RECOMMENDED"
+  "UNSET";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry PolicyOptions_PolicyMode_entries[] = {
+  { {PolicyOptions_PolicyMode_names + 0, 9}, 0 },
+  { {PolicyOptions_PolicyMode_names + 9, 11}, 1 },
+  { {PolicyOptions_PolicyMode_names + 20, 5}, 2 },
+};
+
+static const int PolicyOptions_PolicyMode_entries_by_number[] = {
+  0, // 0 -> MANDATORY
+  1, // 1 -> RECOMMENDED
+  2, // 2 -> UNSET
+};
+
+const std::string& PolicyOptions_PolicyMode_Name(
+    PolicyOptions_PolicyMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          PolicyOptions_PolicyMode_entries,
+          PolicyOptions_PolicyMode_entries_by_number,
+          3, PolicyOptions_PolicyMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      PolicyOptions_PolicyMode_entries,
+      PolicyOptions_PolicyMode_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     PolicyOptions_PolicyMode_strings[idx].get();
+}
+bool PolicyOptions_PolicyMode_Parse(
+    const std::string& name, PolicyOptions_PolicyMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      PolicyOptions_PolicyMode_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<PolicyOptions_PolicyMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr PolicyOptions_PolicyMode PolicyOptions::MANDATORY;
+constexpr PolicyOptions_PolicyMode PolicyOptions::RECOMMENDED;
+constexpr PolicyOptions_PolicyMode PolicyOptions::UNSET;
+constexpr PolicyOptions_PolicyMode PolicyOptions::PolicyMode_MIN;
+constexpr PolicyOptions_PolicyMode PolicyOptions::PolicyMode_MAX;
+constexpr int PolicyOptions::PolicyMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+
+// ===================================================================
+
+void StringList::InitAsDefaultInstance() {
+}
+class StringList::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StringList>()._has_bits_);
+};
+
+StringList::StringList()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.StringList)
+}
+StringList::StringList(const StringList& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      entries_(from.entries_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.StringList)
+}
+
+void StringList::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StringList_policy_5fcommon_5fdefinitions_2eproto.base);
+}
+
+StringList::~StringList() {
+  // @@protoc_insertion_point(destructor:enterprise_management.StringList)
+  SharedDtor();
+}
+
+void StringList::SharedDtor() {
+}
+
+void StringList::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StringList& StringList::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StringList_policy_5fcommon_5fdefinitions_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StringList::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.StringList)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  entries_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StringList::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated string entries = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_entries();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StringList::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.StringList)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated string entries = 1;
+  for (int i = 0, n = this->_internal_entries_size(); i < n; i++) {
+    const auto& s = this->_internal_entries(i);
+    target = stream->WriteString(1, s, target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.StringList)
+  return target;
+}
+
+size_t StringList::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.StringList)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated string entries = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(entries_.size());
+  for (int i = 0, n = entries_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+      entries_.Get(i));
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StringList::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StringList*>(
+      &from));
+}
+
+void StringList::MergeFrom(const StringList& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.StringList)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  entries_.MergeFrom(from.entries_);
+}
+
+void StringList::CopyFrom(const StringList& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.StringList)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StringList::IsInitialized() const {
+  return true;
+}
+
+void StringList::InternalSwap(StringList* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  entries_.InternalSwap(&other->entries_);
+}
+
+std::string StringList::GetTypeName() const {
+  return "enterprise_management.StringList";
+}
+
+
+// ===================================================================
+
+void PolicyOptions::InitAsDefaultInstance() {
+}
+class PolicyOptions::_Internal {
+ public:
+  using HasBits = decltype(std::declval<PolicyOptions>()._has_bits_);
+  static void set_has_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+PolicyOptions::PolicyOptions()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.PolicyOptions)
+}
+PolicyOptions::PolicyOptions(const PolicyOptions& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  mode_ = from.mode_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.PolicyOptions)
+}
+
+void PolicyOptions::SharedCtor() {
+  mode_ = 0;
+}
+
+PolicyOptions::~PolicyOptions() {
+  // @@protoc_insertion_point(destructor:enterprise_management.PolicyOptions)
+  SharedDtor();
+}
+
+void PolicyOptions::SharedDtor() {
+}
+
+void PolicyOptions::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PolicyOptions& PolicyOptions::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PolicyOptions_policy_5fcommon_5fdefinitions_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PolicyOptions::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.PolicyOptions)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  mode_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PolicyOptions::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PolicyOptions.PolicyMode mode = 1 [default = MANDATORY];
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::enterprise_management::PolicyOptions_PolicyMode_IsValid(val))) {
+            _internal_set_mode(static_cast<::enterprise_management::PolicyOptions_PolicyMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PolicyOptions::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.PolicyOptions)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PolicyOptions.PolicyMode mode = 1 [default = MANDATORY];
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_mode(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.PolicyOptions)
+  return target;
+}
+
+size_t PolicyOptions::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.PolicyOptions)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .enterprise_management.PolicyOptions.PolicyMode mode = 1 [default = MANDATORY];
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_mode());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PolicyOptions::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PolicyOptions*>(
+      &from));
+}
+
+void PolicyOptions::MergeFrom(const PolicyOptions& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.PolicyOptions)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_mode()) {
+    _internal_set_mode(from._internal_mode());
+  }
+}
+
+void PolicyOptions::CopyFrom(const PolicyOptions& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.PolicyOptions)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PolicyOptions::IsInitialized() const {
+  return true;
+}
+
+void PolicyOptions::InternalSwap(PolicyOptions* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(mode_, other->mode_);
+}
+
+std::string PolicyOptions::GetTypeName() const {
+  return "enterprise_management.PolicyOptions";
+}
+
+
+// ===================================================================
+
+void BooleanPolicyProto::InitAsDefaultInstance() {
+  ::enterprise_management::_BooleanPolicyProto_default_instance_._instance.get_mutable()->policy_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+}
+class BooleanPolicyProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<BooleanPolicyProto>()._has_bits_);
+  static const ::enterprise_management::PolicyOptions& policy_options(const BooleanPolicyProto* msg);
+  static void set_has_policy_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_value(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::PolicyOptions&
+BooleanPolicyProto::_Internal::policy_options(const BooleanPolicyProto* msg) {
+  return *msg->policy_options_;
+}
+BooleanPolicyProto::BooleanPolicyProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.BooleanPolicyProto)
+}
+BooleanPolicyProto::BooleanPolicyProto(const BooleanPolicyProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_policy_options()) {
+    policy_options_ = new ::enterprise_management::PolicyOptions(*from.policy_options_);
+  } else {
+    policy_options_ = nullptr;
+  }
+  value_ = from.value_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.BooleanPolicyProto)
+}
+
+void BooleanPolicyProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_BooleanPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base);
+  ::memset(&policy_options_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&value_) -
+      reinterpret_cast<char*>(&policy_options_)) + sizeof(value_));
+}
+
+BooleanPolicyProto::~BooleanPolicyProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.BooleanPolicyProto)
+  SharedDtor();
+}
+
+void BooleanPolicyProto::SharedDtor() {
+  if (this != internal_default_instance()) delete policy_options_;
+}
+
+void BooleanPolicyProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const BooleanPolicyProto& BooleanPolicyProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_BooleanPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void BooleanPolicyProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.BooleanPolicyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(policy_options_ != nullptr);
+    policy_options_->Clear();
+  }
+  value_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* BooleanPolicyProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PolicyOptions policy_options = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_policy_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool value = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_value(&has_bits);
+          value_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* BooleanPolicyProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.BooleanPolicyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PolicyOptions policy_options = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::policy_options(this), target, stream);
+  }
+
+  // optional bool value = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_value(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.BooleanPolicyProto)
+  return target;
+}
+
+size_t BooleanPolicyProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.BooleanPolicyProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.PolicyOptions policy_options = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *policy_options_);
+    }
+
+    // optional bool value = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void BooleanPolicyProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const BooleanPolicyProto*>(
+      &from));
+}
+
+void BooleanPolicyProto::MergeFrom(const BooleanPolicyProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.BooleanPolicyProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_policy_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_policy_options());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      value_ = from.value_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void BooleanPolicyProto::CopyFrom(const BooleanPolicyProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.BooleanPolicyProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool BooleanPolicyProto::IsInitialized() const {
+  return true;
+}
+
+void BooleanPolicyProto::InternalSwap(BooleanPolicyProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(policy_options_, other->policy_options_);
+  swap(value_, other->value_);
+}
+
+std::string BooleanPolicyProto::GetTypeName() const {
+  return "enterprise_management.BooleanPolicyProto";
+}
+
+
+// ===================================================================
+
+void IntegerPolicyProto::InitAsDefaultInstance() {
+  ::enterprise_management::_IntegerPolicyProto_default_instance_._instance.get_mutable()->policy_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+}
+class IntegerPolicyProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<IntegerPolicyProto>()._has_bits_);
+  static const ::enterprise_management::PolicyOptions& policy_options(const IntegerPolicyProto* msg);
+  static void set_has_policy_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_value(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::PolicyOptions&
+IntegerPolicyProto::_Internal::policy_options(const IntegerPolicyProto* msg) {
+  return *msg->policy_options_;
+}
+IntegerPolicyProto::IntegerPolicyProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.IntegerPolicyProto)
+}
+IntegerPolicyProto::IntegerPolicyProto(const IntegerPolicyProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_policy_options()) {
+    policy_options_ = new ::enterprise_management::PolicyOptions(*from.policy_options_);
+  } else {
+    policy_options_ = nullptr;
+  }
+  value_ = from.value_;
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.IntegerPolicyProto)
+}
+
+void IntegerPolicyProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_IntegerPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base);
+  ::memset(&policy_options_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&value_) -
+      reinterpret_cast<char*>(&policy_options_)) + sizeof(value_));
+}
+
+IntegerPolicyProto::~IntegerPolicyProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.IntegerPolicyProto)
+  SharedDtor();
+}
+
+void IntegerPolicyProto::SharedDtor() {
+  if (this != internal_default_instance()) delete policy_options_;
+}
+
+void IntegerPolicyProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const IntegerPolicyProto& IntegerPolicyProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_IntegerPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void IntegerPolicyProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.IntegerPolicyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(policy_options_ != nullptr);
+    policy_options_->Clear();
+  }
+  value_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* IntegerPolicyProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PolicyOptions policy_options = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_policy_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 value = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_value(&has_bits);
+          value_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* IntegerPolicyProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.IntegerPolicyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PolicyOptions policy_options = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::policy_options(this), target, stream);
+  }
+
+  // optional int64 value = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_value(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.IntegerPolicyProto)
+  return target;
+}
+
+size_t IntegerPolicyProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.IntegerPolicyProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.PolicyOptions policy_options = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *policy_options_);
+    }
+
+    // optional int64 value = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_value());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void IntegerPolicyProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const IntegerPolicyProto*>(
+      &from));
+}
+
+void IntegerPolicyProto::MergeFrom(const IntegerPolicyProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.IntegerPolicyProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_policy_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_policy_options());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      value_ = from.value_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void IntegerPolicyProto::CopyFrom(const IntegerPolicyProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.IntegerPolicyProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool IntegerPolicyProto::IsInitialized() const {
+  return true;
+}
+
+void IntegerPolicyProto::InternalSwap(IntegerPolicyProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(policy_options_, other->policy_options_);
+  swap(value_, other->value_);
+}
+
+std::string IntegerPolicyProto::GetTypeName() const {
+  return "enterprise_management.IntegerPolicyProto";
+}
+
+
+// ===================================================================
+
+void StringPolicyProto::InitAsDefaultInstance() {
+  ::enterprise_management::_StringPolicyProto_default_instance_._instance.get_mutable()->policy_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+}
+class StringPolicyProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StringPolicyProto>()._has_bits_);
+  static const ::enterprise_management::PolicyOptions& policy_options(const StringPolicyProto* msg);
+  static void set_has_policy_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_value(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::enterprise_management::PolicyOptions&
+StringPolicyProto::_Internal::policy_options(const StringPolicyProto* msg) {
+  return *msg->policy_options_;
+}
+StringPolicyProto::StringPolicyProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.StringPolicyProto)
+}
+StringPolicyProto::StringPolicyProto(const StringPolicyProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_value()) {
+    value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.value_);
+  }
+  if (from._internal_has_policy_options()) {
+    policy_options_ = new ::enterprise_management::PolicyOptions(*from.policy_options_);
+  } else {
+    policy_options_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.StringPolicyProto)
+}
+
+void StringPolicyProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StringPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base);
+  value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  policy_options_ = nullptr;
+}
+
+StringPolicyProto::~StringPolicyProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.StringPolicyProto)
+  SharedDtor();
+}
+
+void StringPolicyProto::SharedDtor() {
+  value_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete policy_options_;
+}
+
+void StringPolicyProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StringPolicyProto& StringPolicyProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StringPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StringPolicyProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.StringPolicyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      value_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(policy_options_ != nullptr);
+      policy_options_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StringPolicyProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PolicyOptions policy_options = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_policy_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string value = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_value();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StringPolicyProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.StringPolicyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PolicyOptions policy_options = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::policy_options(this), target, stream);
+  }
+
+  // optional string value = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_value(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.StringPolicyProto)
+  return target;
+}
+
+size_t StringPolicyProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.StringPolicyProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional string value = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_value());
+    }
+
+    // optional .enterprise_management.PolicyOptions policy_options = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *policy_options_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StringPolicyProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StringPolicyProto*>(
+      &from));
+}
+
+void StringPolicyProto::MergeFrom(const StringPolicyProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.StringPolicyProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.value_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_policy_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_policy_options());
+    }
+  }
+}
+
+void StringPolicyProto::CopyFrom(const StringPolicyProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.StringPolicyProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StringPolicyProto::IsInitialized() const {
+  return true;
+}
+
+void StringPolicyProto::InternalSwap(StringPolicyProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  value_.Swap(&other->value_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(policy_options_, other->policy_options_);
+}
+
+std::string StringPolicyProto::GetTypeName() const {
+  return "enterprise_management.StringPolicyProto";
+}
+
+
+// ===================================================================
+
+void StringListPolicyProto::InitAsDefaultInstance() {
+  ::enterprise_management::_StringListPolicyProto_default_instance_._instance.get_mutable()->policy_options_ = const_cast< ::enterprise_management::PolicyOptions*>(
+      ::enterprise_management::PolicyOptions::internal_default_instance());
+  ::enterprise_management::_StringListPolicyProto_default_instance_._instance.get_mutable()->value_ = const_cast< ::enterprise_management::StringList*>(
+      ::enterprise_management::StringList::internal_default_instance());
+}
+class StringListPolicyProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StringListPolicyProto>()._has_bits_);
+  static const ::enterprise_management::PolicyOptions& policy_options(const StringListPolicyProto* msg);
+  static void set_has_policy_options(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::enterprise_management::StringList& value(const StringListPolicyProto* msg);
+  static void set_has_value(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::enterprise_management::PolicyOptions&
+StringListPolicyProto::_Internal::policy_options(const StringListPolicyProto* msg) {
+  return *msg->policy_options_;
+}
+const ::enterprise_management::StringList&
+StringListPolicyProto::_Internal::value(const StringListPolicyProto* msg) {
+  return *msg->value_;
+}
+StringListPolicyProto::StringListPolicyProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:enterprise_management.StringListPolicyProto)
+}
+StringListPolicyProto::StringListPolicyProto(const StringListPolicyProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_policy_options()) {
+    policy_options_ = new ::enterprise_management::PolicyOptions(*from.policy_options_);
+  } else {
+    policy_options_ = nullptr;
+  }
+  if (from._internal_has_value()) {
+    value_ = new ::enterprise_management::StringList(*from.value_);
+  } else {
+    value_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:enterprise_management.StringListPolicyProto)
+}
+
+void StringListPolicyProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StringListPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base);
+  ::memset(&policy_options_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&value_) -
+      reinterpret_cast<char*>(&policy_options_)) + sizeof(value_));
+}
+
+StringListPolicyProto::~StringListPolicyProto() {
+  // @@protoc_insertion_point(destructor:enterprise_management.StringListPolicyProto)
+  SharedDtor();
+}
+
+void StringListPolicyProto::SharedDtor() {
+  if (this != internal_default_instance()) delete policy_options_;
+  if (this != internal_default_instance()) delete value_;
+}
+
+void StringListPolicyProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StringListPolicyProto& StringListPolicyProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StringListPolicyProto_policy_5fcommon_5fdefinitions_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StringListPolicyProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:enterprise_management.StringListPolicyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(policy_options_ != nullptr);
+      policy_options_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(value_ != nullptr);
+      value_->Clear();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StringListPolicyProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .enterprise_management.PolicyOptions policy_options = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_policy_options(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .enterprise_management.StringList value = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_value(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StringListPolicyProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:enterprise_management.StringListPolicyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .enterprise_management.PolicyOptions policy_options = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::policy_options(this), target, stream);
+  }
+
+  // optional .enterprise_management.StringList value = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::value(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:enterprise_management.StringListPolicyProto)
+  return target;
+}
+
+size_t StringListPolicyProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:enterprise_management.StringListPolicyProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional .enterprise_management.PolicyOptions policy_options = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *policy_options_);
+    }
+
+    // optional .enterprise_management.StringList value = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *value_);
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StringListPolicyProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StringListPolicyProto*>(
+      &from));
+}
+
+void StringListPolicyProto::MergeFrom(const StringListPolicyProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:enterprise_management.StringListPolicyProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_policy_options()->::enterprise_management::PolicyOptions::MergeFrom(from._internal_policy_options());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_value()->::enterprise_management::StringList::MergeFrom(from._internal_value());
+    }
+  }
+}
+
+void StringListPolicyProto::CopyFrom(const StringListPolicyProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:enterprise_management.StringListPolicyProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StringListPolicyProto::IsInitialized() const {
+  return true;
+}
+
+void StringListPolicyProto::InternalSwap(StringListPolicyProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(policy_options_, other->policy_options_);
+  swap(value_, other->value_);
+}
+
+std::string StringListPolicyProto::GetTypeName() const {
+  return "enterprise_management.StringListPolicyProto";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace enterprise_management
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::enterprise_management::StringList* Arena::CreateMaybeMessage< ::enterprise_management::StringList >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::StringList >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::PolicyOptions* Arena::CreateMaybeMessage< ::enterprise_management::PolicyOptions >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::PolicyOptions >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::BooleanPolicyProto* Arena::CreateMaybeMessage< ::enterprise_management::BooleanPolicyProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::BooleanPolicyProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::IntegerPolicyProto* Arena::CreateMaybeMessage< ::enterprise_management::IntegerPolicyProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::IntegerPolicyProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::StringPolicyProto* Arena::CreateMaybeMessage< ::enterprise_management::StringPolicyProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::StringPolicyProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::enterprise_management::StringListPolicyProto* Arena::CreateMaybeMessage< ::enterprise_management::StringListPolicyProto >(Arena* arena) {
+  return Arena::CreateInternal< ::enterprise_management::StringListPolicyProto >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/policy_common_definitions.pb.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/policy_common_definitions.pb.h
new file mode 100644
index 0000000..c035a33
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/policy_common_definitions.pb.h
@@ -0,0 +1,1559 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: policy_common_definitions.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_policy_5fcommon_5fdefinitions_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_policy_5fcommon_5fdefinitions_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/generated_enum_util.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_policy_5fcommon_5fdefinitions_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_policy_5fcommon_5fdefinitions_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[6]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace enterprise_management {
+class BooleanPolicyProto;
+class BooleanPolicyProtoDefaultTypeInternal;
+extern BooleanPolicyProtoDefaultTypeInternal _BooleanPolicyProto_default_instance_;
+class IntegerPolicyProto;
+class IntegerPolicyProtoDefaultTypeInternal;
+extern IntegerPolicyProtoDefaultTypeInternal _IntegerPolicyProto_default_instance_;
+class PolicyOptions;
+class PolicyOptionsDefaultTypeInternal;
+extern PolicyOptionsDefaultTypeInternal _PolicyOptions_default_instance_;
+class StringList;
+class StringListDefaultTypeInternal;
+extern StringListDefaultTypeInternal _StringList_default_instance_;
+class StringListPolicyProto;
+class StringListPolicyProtoDefaultTypeInternal;
+extern StringListPolicyProtoDefaultTypeInternal _StringListPolicyProto_default_instance_;
+class StringPolicyProto;
+class StringPolicyProtoDefaultTypeInternal;
+extern StringPolicyProtoDefaultTypeInternal _StringPolicyProto_default_instance_;
+}  // namespace enterprise_management
+PROTOBUF_NAMESPACE_OPEN
+template<> ::enterprise_management::BooleanPolicyProto* Arena::CreateMaybeMessage<::enterprise_management::BooleanPolicyProto>(Arena*);
+template<> ::enterprise_management::IntegerPolicyProto* Arena::CreateMaybeMessage<::enterprise_management::IntegerPolicyProto>(Arena*);
+template<> ::enterprise_management::PolicyOptions* Arena::CreateMaybeMessage<::enterprise_management::PolicyOptions>(Arena*);
+template<> ::enterprise_management::StringList* Arena::CreateMaybeMessage<::enterprise_management::StringList>(Arena*);
+template<> ::enterprise_management::StringListPolicyProto* Arena::CreateMaybeMessage<::enterprise_management::StringListPolicyProto>(Arena*);
+template<> ::enterprise_management::StringPolicyProto* Arena::CreateMaybeMessage<::enterprise_management::StringPolicyProto>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace enterprise_management {
+
+enum PolicyOptions_PolicyMode : int {
+  PolicyOptions_PolicyMode_MANDATORY = 0,
+  PolicyOptions_PolicyMode_RECOMMENDED = 1,
+  PolicyOptions_PolicyMode_UNSET = 2
+};
+bool PolicyOptions_PolicyMode_IsValid(int value);
+constexpr PolicyOptions_PolicyMode PolicyOptions_PolicyMode_PolicyMode_MIN = PolicyOptions_PolicyMode_MANDATORY;
+constexpr PolicyOptions_PolicyMode PolicyOptions_PolicyMode_PolicyMode_MAX = PolicyOptions_PolicyMode_UNSET;
+constexpr int PolicyOptions_PolicyMode_PolicyMode_ARRAYSIZE = PolicyOptions_PolicyMode_PolicyMode_MAX + 1;
+
+const std::string& PolicyOptions_PolicyMode_Name(PolicyOptions_PolicyMode value);
+template<typename T>
+inline const std::string& PolicyOptions_PolicyMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, PolicyOptions_PolicyMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function PolicyOptions_PolicyMode_Name.");
+  return PolicyOptions_PolicyMode_Name(static_cast<PolicyOptions_PolicyMode>(enum_t_value));
+}
+bool PolicyOptions_PolicyMode_Parse(
+    const std::string& name, PolicyOptions_PolicyMode* value);
+// ===================================================================
+
+class StringList :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.StringList) */ {
+ public:
+  StringList();
+  virtual ~StringList();
+
+  StringList(const StringList& from);
+  StringList(StringList&& from) noexcept
+    : StringList() {
+    *this = ::std::move(from);
+  }
+
+  inline StringList& operator=(const StringList& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StringList& operator=(StringList&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StringList& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StringList* internal_default_instance() {
+    return reinterpret_cast<const StringList*>(
+               &_StringList_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(StringList& a, StringList& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StringList* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StringList* New() const final {
+    return CreateMaybeMessage<StringList>(nullptr);
+  }
+
+  StringList* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StringList>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StringList& from);
+  void MergeFrom(const StringList& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StringList* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.StringList";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEntriesFieldNumber = 1,
+  };
+  // repeated string entries = 1;
+  int entries_size() const;
+  private:
+  int _internal_entries_size() const;
+  public:
+  void clear_entries();
+  const std::string& entries(int index) const;
+  std::string* mutable_entries(int index);
+  void set_entries(int index, const std::string& value);
+  void set_entries(int index, std::string&& value);
+  void set_entries(int index, const char* value);
+  void set_entries(int index, const char* value, size_t size);
+  std::string* add_entries();
+  void add_entries(const std::string& value);
+  void add_entries(std::string&& value);
+  void add_entries(const char* value);
+  void add_entries(const char* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& entries() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_entries();
+  private:
+  const std::string& _internal_entries(int index) const;
+  std::string* _internal_add_entries();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.StringList)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> entries_;
+  friend struct ::TableStruct_policy_5fcommon_5fdefinitions_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PolicyOptions :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.PolicyOptions) */ {
+ public:
+  PolicyOptions();
+  virtual ~PolicyOptions();
+
+  PolicyOptions(const PolicyOptions& from);
+  PolicyOptions(PolicyOptions&& from) noexcept
+    : PolicyOptions() {
+    *this = ::std::move(from);
+  }
+
+  inline PolicyOptions& operator=(const PolicyOptions& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PolicyOptions& operator=(PolicyOptions&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const PolicyOptions& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PolicyOptions* internal_default_instance() {
+    return reinterpret_cast<const PolicyOptions*>(
+               &_PolicyOptions_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(PolicyOptions& a, PolicyOptions& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PolicyOptions* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PolicyOptions* New() const final {
+    return CreateMaybeMessage<PolicyOptions>(nullptr);
+  }
+
+  PolicyOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PolicyOptions>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PolicyOptions& from);
+  void MergeFrom(const PolicyOptions& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PolicyOptions* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.PolicyOptions";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PolicyOptions_PolicyMode PolicyMode;
+  static constexpr PolicyMode MANDATORY =
+    PolicyOptions_PolicyMode_MANDATORY;
+  static constexpr PolicyMode RECOMMENDED =
+    PolicyOptions_PolicyMode_RECOMMENDED;
+  static constexpr PolicyMode UNSET =
+    PolicyOptions_PolicyMode_UNSET;
+  static inline bool PolicyMode_IsValid(int value) {
+    return PolicyOptions_PolicyMode_IsValid(value);
+  }
+  static constexpr PolicyMode PolicyMode_MIN =
+    PolicyOptions_PolicyMode_PolicyMode_MIN;
+  static constexpr PolicyMode PolicyMode_MAX =
+    PolicyOptions_PolicyMode_PolicyMode_MAX;
+  static constexpr int PolicyMode_ARRAYSIZE =
+    PolicyOptions_PolicyMode_PolicyMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& PolicyMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, PolicyMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function PolicyMode_Name.");
+    return PolicyOptions_PolicyMode_Name(enum_t_value);
+  }
+  static inline bool PolicyMode_Parse(const std::string& name,
+      PolicyMode* value) {
+    return PolicyOptions_PolicyMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kModeFieldNumber = 1,
+  };
+  // optional .enterprise_management.PolicyOptions.PolicyMode mode = 1 [default = MANDATORY];
+  bool has_mode() const;
+  private:
+  bool _internal_has_mode() const;
+  public:
+  void clear_mode();
+  ::enterprise_management::PolicyOptions_PolicyMode mode() const;
+  void set_mode(::enterprise_management::PolicyOptions_PolicyMode value);
+  private:
+  ::enterprise_management::PolicyOptions_PolicyMode _internal_mode() const;
+  void _internal_set_mode(::enterprise_management::PolicyOptions_PolicyMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.PolicyOptions)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  int mode_;
+  friend struct ::TableStruct_policy_5fcommon_5fdefinitions_2eproto;
+};
+// -------------------------------------------------------------------
+
+class BooleanPolicyProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.BooleanPolicyProto) */ {
+ public:
+  BooleanPolicyProto();
+  virtual ~BooleanPolicyProto();
+
+  BooleanPolicyProto(const BooleanPolicyProto& from);
+  BooleanPolicyProto(BooleanPolicyProto&& from) noexcept
+    : BooleanPolicyProto() {
+    *this = ::std::move(from);
+  }
+
+  inline BooleanPolicyProto& operator=(const BooleanPolicyProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline BooleanPolicyProto& operator=(BooleanPolicyProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const BooleanPolicyProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const BooleanPolicyProto* internal_default_instance() {
+    return reinterpret_cast<const BooleanPolicyProto*>(
+               &_BooleanPolicyProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    2;
+
+  friend void swap(BooleanPolicyProto& a, BooleanPolicyProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(BooleanPolicyProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline BooleanPolicyProto* New() const final {
+    return CreateMaybeMessage<BooleanPolicyProto>(nullptr);
+  }
+
+  BooleanPolicyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<BooleanPolicyProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const BooleanPolicyProto& from);
+  void MergeFrom(const BooleanPolicyProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(BooleanPolicyProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.BooleanPolicyProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPolicyOptionsFieldNumber = 1,
+    kValueFieldNumber = 2,
+  };
+  // optional .enterprise_management.PolicyOptions policy_options = 1;
+  bool has_policy_options() const;
+  private:
+  bool _internal_has_policy_options() const;
+  public:
+  void clear_policy_options();
+  const ::enterprise_management::PolicyOptions& policy_options() const;
+  ::enterprise_management::PolicyOptions* release_policy_options();
+  ::enterprise_management::PolicyOptions* mutable_policy_options();
+  void set_allocated_policy_options(::enterprise_management::PolicyOptions* policy_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_policy_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_policy_options();
+  public:
+
+  // optional bool value = 2;
+  bool has_value() const;
+  private:
+  bool _internal_has_value() const;
+  public:
+  void clear_value();
+  bool value() const;
+  void set_value(bool value);
+  private:
+  bool _internal_value() const;
+  void _internal_set_value(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.BooleanPolicyProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::PolicyOptions* policy_options_;
+  bool value_;
+  friend struct ::TableStruct_policy_5fcommon_5fdefinitions_2eproto;
+};
+// -------------------------------------------------------------------
+
+class IntegerPolicyProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.IntegerPolicyProto) */ {
+ public:
+  IntegerPolicyProto();
+  virtual ~IntegerPolicyProto();
+
+  IntegerPolicyProto(const IntegerPolicyProto& from);
+  IntegerPolicyProto(IntegerPolicyProto&& from) noexcept
+    : IntegerPolicyProto() {
+    *this = ::std::move(from);
+  }
+
+  inline IntegerPolicyProto& operator=(const IntegerPolicyProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline IntegerPolicyProto& operator=(IntegerPolicyProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const IntegerPolicyProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const IntegerPolicyProto* internal_default_instance() {
+    return reinterpret_cast<const IntegerPolicyProto*>(
+               &_IntegerPolicyProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    3;
+
+  friend void swap(IntegerPolicyProto& a, IntegerPolicyProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(IntegerPolicyProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline IntegerPolicyProto* New() const final {
+    return CreateMaybeMessage<IntegerPolicyProto>(nullptr);
+  }
+
+  IntegerPolicyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<IntegerPolicyProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const IntegerPolicyProto& from);
+  void MergeFrom(const IntegerPolicyProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(IntegerPolicyProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.IntegerPolicyProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPolicyOptionsFieldNumber = 1,
+    kValueFieldNumber = 2,
+  };
+  // optional .enterprise_management.PolicyOptions policy_options = 1;
+  bool has_policy_options() const;
+  private:
+  bool _internal_has_policy_options() const;
+  public:
+  void clear_policy_options();
+  const ::enterprise_management::PolicyOptions& policy_options() const;
+  ::enterprise_management::PolicyOptions* release_policy_options();
+  ::enterprise_management::PolicyOptions* mutable_policy_options();
+  void set_allocated_policy_options(::enterprise_management::PolicyOptions* policy_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_policy_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_policy_options();
+  public:
+
+  // optional int64 value = 2;
+  bool has_value() const;
+  private:
+  bool _internal_has_value() const;
+  public:
+  void clear_value();
+  ::PROTOBUF_NAMESPACE_ID::int64 value() const;
+  void set_value(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_value() const;
+  void _internal_set_value(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.IntegerPolicyProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::PolicyOptions* policy_options_;
+  ::PROTOBUF_NAMESPACE_ID::int64 value_;
+  friend struct ::TableStruct_policy_5fcommon_5fdefinitions_2eproto;
+};
+// -------------------------------------------------------------------
+
+class StringPolicyProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.StringPolicyProto) */ {
+ public:
+  StringPolicyProto();
+  virtual ~StringPolicyProto();
+
+  StringPolicyProto(const StringPolicyProto& from);
+  StringPolicyProto(StringPolicyProto&& from) noexcept
+    : StringPolicyProto() {
+    *this = ::std::move(from);
+  }
+
+  inline StringPolicyProto& operator=(const StringPolicyProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StringPolicyProto& operator=(StringPolicyProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StringPolicyProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StringPolicyProto* internal_default_instance() {
+    return reinterpret_cast<const StringPolicyProto*>(
+               &_StringPolicyProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    4;
+
+  friend void swap(StringPolicyProto& a, StringPolicyProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StringPolicyProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StringPolicyProto* New() const final {
+    return CreateMaybeMessage<StringPolicyProto>(nullptr);
+  }
+
+  StringPolicyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StringPolicyProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StringPolicyProto& from);
+  void MergeFrom(const StringPolicyProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StringPolicyProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.StringPolicyProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kValueFieldNumber = 2,
+    kPolicyOptionsFieldNumber = 1,
+  };
+  // optional string value = 2;
+  bool has_value() const;
+  private:
+  bool _internal_has_value() const;
+  public:
+  void clear_value();
+  const std::string& value() const;
+  void set_value(const std::string& value);
+  void set_value(std::string&& value);
+  void set_value(const char* value);
+  void set_value(const char* value, size_t size);
+  std::string* mutable_value();
+  std::string* release_value();
+  void set_allocated_value(std::string* value);
+  private:
+  const std::string& _internal_value() const;
+  void _internal_set_value(const std::string& value);
+  std::string* _internal_mutable_value();
+  public:
+
+  // optional .enterprise_management.PolicyOptions policy_options = 1;
+  bool has_policy_options() const;
+  private:
+  bool _internal_has_policy_options() const;
+  public:
+  void clear_policy_options();
+  const ::enterprise_management::PolicyOptions& policy_options() const;
+  ::enterprise_management::PolicyOptions* release_policy_options();
+  ::enterprise_management::PolicyOptions* mutable_policy_options();
+  void set_allocated_policy_options(::enterprise_management::PolicyOptions* policy_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_policy_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_policy_options();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.StringPolicyProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_;
+  ::enterprise_management::PolicyOptions* policy_options_;
+  friend struct ::TableStruct_policy_5fcommon_5fdefinitions_2eproto;
+};
+// -------------------------------------------------------------------
+
+class StringListPolicyProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:enterprise_management.StringListPolicyProto) */ {
+ public:
+  StringListPolicyProto();
+  virtual ~StringListPolicyProto();
+
+  StringListPolicyProto(const StringListPolicyProto& from);
+  StringListPolicyProto(StringListPolicyProto&& from) noexcept
+    : StringListPolicyProto() {
+    *this = ::std::move(from);
+  }
+
+  inline StringListPolicyProto& operator=(const StringListPolicyProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StringListPolicyProto& operator=(StringListPolicyProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StringListPolicyProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StringListPolicyProto* internal_default_instance() {
+    return reinterpret_cast<const StringListPolicyProto*>(
+               &_StringListPolicyProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    5;
+
+  friend void swap(StringListPolicyProto& a, StringListPolicyProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StringListPolicyProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StringListPolicyProto* New() const final {
+    return CreateMaybeMessage<StringListPolicyProto>(nullptr);
+  }
+
+  StringListPolicyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StringListPolicyProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StringListPolicyProto& from);
+  void MergeFrom(const StringListPolicyProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StringListPolicyProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "enterprise_management.StringListPolicyProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPolicyOptionsFieldNumber = 1,
+    kValueFieldNumber = 2,
+  };
+  // optional .enterprise_management.PolicyOptions policy_options = 1;
+  bool has_policy_options() const;
+  private:
+  bool _internal_has_policy_options() const;
+  public:
+  void clear_policy_options();
+  const ::enterprise_management::PolicyOptions& policy_options() const;
+  ::enterprise_management::PolicyOptions* release_policy_options();
+  ::enterprise_management::PolicyOptions* mutable_policy_options();
+  void set_allocated_policy_options(::enterprise_management::PolicyOptions* policy_options);
+  private:
+  const ::enterprise_management::PolicyOptions& _internal_policy_options() const;
+  ::enterprise_management::PolicyOptions* _internal_mutable_policy_options();
+  public:
+
+  // optional .enterprise_management.StringList value = 2;
+  bool has_value() const;
+  private:
+  bool _internal_has_value() const;
+  public:
+  void clear_value();
+  const ::enterprise_management::StringList& value() const;
+  ::enterprise_management::StringList* release_value();
+  ::enterprise_management::StringList* mutable_value();
+  void set_allocated_value(::enterprise_management::StringList* value);
+  private:
+  const ::enterprise_management::StringList& _internal_value() const;
+  ::enterprise_management::StringList* _internal_mutable_value();
+  public:
+
+  // @@protoc_insertion_point(class_scope:enterprise_management.StringListPolicyProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::enterprise_management::PolicyOptions* policy_options_;
+  ::enterprise_management::StringList* value_;
+  friend struct ::TableStruct_policy_5fcommon_5fdefinitions_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// StringList
+
+// repeated string entries = 1;
+inline int StringList::_internal_entries_size() const {
+  return entries_.size();
+}
+inline int StringList::entries_size() const {
+  return _internal_entries_size();
+}
+inline void StringList::clear_entries() {
+  entries_.Clear();
+}
+inline std::string* StringList::add_entries() {
+  // @@protoc_insertion_point(field_add_mutable:enterprise_management.StringList.entries)
+  return _internal_add_entries();
+}
+inline const std::string& StringList::_internal_entries(int index) const {
+  return entries_.Get(index);
+}
+inline const std::string& StringList::entries(int index) const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StringList.entries)
+  return _internal_entries(index);
+}
+inline std::string* StringList::mutable_entries(int index) {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StringList.entries)
+  return entries_.Mutable(index);
+}
+inline void StringList::set_entries(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.StringList.entries)
+  entries_.Mutable(index)->assign(value);
+}
+inline void StringList::set_entries(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:enterprise_management.StringList.entries)
+  entries_.Mutable(index)->assign(std::move(value));
+}
+inline void StringList::set_entries(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  entries_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:enterprise_management.StringList.entries)
+}
+inline void StringList::set_entries(int index, const char* value, size_t size) {
+  entries_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.StringList.entries)
+}
+inline std::string* StringList::_internal_add_entries() {
+  return entries_.Add();
+}
+inline void StringList::add_entries(const std::string& value) {
+  entries_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:enterprise_management.StringList.entries)
+}
+inline void StringList::add_entries(std::string&& value) {
+  entries_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:enterprise_management.StringList.entries)
+}
+inline void StringList::add_entries(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  entries_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:enterprise_management.StringList.entries)
+}
+inline void StringList::add_entries(const char* value, size_t size) {
+  entries_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:enterprise_management.StringList.entries)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+StringList::entries() const {
+  // @@protoc_insertion_point(field_list:enterprise_management.StringList.entries)
+  return entries_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+StringList::mutable_entries() {
+  // @@protoc_insertion_point(field_mutable_list:enterprise_management.StringList.entries)
+  return &entries_;
+}
+
+// -------------------------------------------------------------------
+
+// PolicyOptions
+
+// optional .enterprise_management.PolicyOptions.PolicyMode mode = 1 [default = MANDATORY];
+inline bool PolicyOptions::_internal_has_mode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool PolicyOptions::has_mode() const {
+  return _internal_has_mode();
+}
+inline void PolicyOptions::clear_mode() {
+  mode_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::enterprise_management::PolicyOptions_PolicyMode PolicyOptions::_internal_mode() const {
+  return static_cast< ::enterprise_management::PolicyOptions_PolicyMode >(mode_);
+}
+inline ::enterprise_management::PolicyOptions_PolicyMode PolicyOptions::mode() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.PolicyOptions.mode)
+  return _internal_mode();
+}
+inline void PolicyOptions::_internal_set_mode(::enterprise_management::PolicyOptions_PolicyMode value) {
+  assert(::enterprise_management::PolicyOptions_PolicyMode_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  mode_ = value;
+}
+inline void PolicyOptions::set_mode(::enterprise_management::PolicyOptions_PolicyMode value) {
+  _internal_set_mode(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.PolicyOptions.mode)
+}
+
+// -------------------------------------------------------------------
+
+// BooleanPolicyProto
+
+// optional .enterprise_management.PolicyOptions policy_options = 1;
+inline bool BooleanPolicyProto::_internal_has_policy_options() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || policy_options_ != nullptr);
+  return value;
+}
+inline bool BooleanPolicyProto::has_policy_options() const {
+  return _internal_has_policy_options();
+}
+inline void BooleanPolicyProto::clear_policy_options() {
+  if (policy_options_ != nullptr) policy_options_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::PolicyOptions& BooleanPolicyProto::_internal_policy_options() const {
+  const ::enterprise_management::PolicyOptions* p = policy_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& BooleanPolicyProto::policy_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BooleanPolicyProto.policy_options)
+  return _internal_policy_options();
+}
+inline ::enterprise_management::PolicyOptions* BooleanPolicyProto::release_policy_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.BooleanPolicyProto.policy_options)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::PolicyOptions* temp = policy_options_;
+  policy_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* BooleanPolicyProto::_internal_mutable_policy_options() {
+  _has_bits_[0] |= 0x00000001u;
+  if (policy_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    policy_options_ = p;
+  }
+  return policy_options_;
+}
+inline ::enterprise_management::PolicyOptions* BooleanPolicyProto::mutable_policy_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.BooleanPolicyProto.policy_options)
+  return _internal_mutable_policy_options();
+}
+inline void BooleanPolicyProto::set_allocated_policy_options(::enterprise_management::PolicyOptions* policy_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete policy_options_;
+  }
+  if (policy_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      policy_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, policy_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  policy_options_ = policy_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.BooleanPolicyProto.policy_options)
+}
+
+// optional bool value = 2;
+inline bool BooleanPolicyProto::_internal_has_value() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool BooleanPolicyProto::has_value() const {
+  return _internal_has_value();
+}
+inline void BooleanPolicyProto::clear_value() {
+  value_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool BooleanPolicyProto::_internal_value() const {
+  return value_;
+}
+inline bool BooleanPolicyProto::value() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.BooleanPolicyProto.value)
+  return _internal_value();
+}
+inline void BooleanPolicyProto::_internal_set_value(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  value_ = value;
+}
+inline void BooleanPolicyProto::set_value(bool value) {
+  _internal_set_value(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.BooleanPolicyProto.value)
+}
+
+// -------------------------------------------------------------------
+
+// IntegerPolicyProto
+
+// optional .enterprise_management.PolicyOptions policy_options = 1;
+inline bool IntegerPolicyProto::_internal_has_policy_options() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || policy_options_ != nullptr);
+  return value;
+}
+inline bool IntegerPolicyProto::has_policy_options() const {
+  return _internal_has_policy_options();
+}
+inline void IntegerPolicyProto::clear_policy_options() {
+  if (policy_options_ != nullptr) policy_options_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::PolicyOptions& IntegerPolicyProto::_internal_policy_options() const {
+  const ::enterprise_management::PolicyOptions* p = policy_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& IntegerPolicyProto::policy_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.IntegerPolicyProto.policy_options)
+  return _internal_policy_options();
+}
+inline ::enterprise_management::PolicyOptions* IntegerPolicyProto::release_policy_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.IntegerPolicyProto.policy_options)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::PolicyOptions* temp = policy_options_;
+  policy_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* IntegerPolicyProto::_internal_mutable_policy_options() {
+  _has_bits_[0] |= 0x00000001u;
+  if (policy_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    policy_options_ = p;
+  }
+  return policy_options_;
+}
+inline ::enterprise_management::PolicyOptions* IntegerPolicyProto::mutable_policy_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.IntegerPolicyProto.policy_options)
+  return _internal_mutable_policy_options();
+}
+inline void IntegerPolicyProto::set_allocated_policy_options(::enterprise_management::PolicyOptions* policy_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete policy_options_;
+  }
+  if (policy_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      policy_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, policy_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  policy_options_ = policy_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.IntegerPolicyProto.policy_options)
+}
+
+// optional int64 value = 2;
+inline bool IntegerPolicyProto::_internal_has_value() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool IntegerPolicyProto::has_value() const {
+  return _internal_has_value();
+}
+inline void IntegerPolicyProto::clear_value() {
+  value_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 IntegerPolicyProto::_internal_value() const {
+  return value_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 IntegerPolicyProto::value() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.IntegerPolicyProto.value)
+  return _internal_value();
+}
+inline void IntegerPolicyProto::_internal_set_value(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  value_ = value;
+}
+inline void IntegerPolicyProto::set_value(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_value(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.IntegerPolicyProto.value)
+}
+
+// -------------------------------------------------------------------
+
+// StringPolicyProto
+
+// optional .enterprise_management.PolicyOptions policy_options = 1;
+inline bool StringPolicyProto::_internal_has_policy_options() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || policy_options_ != nullptr);
+  return value;
+}
+inline bool StringPolicyProto::has_policy_options() const {
+  return _internal_has_policy_options();
+}
+inline void StringPolicyProto::clear_policy_options() {
+  if (policy_options_ != nullptr) policy_options_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::PolicyOptions& StringPolicyProto::_internal_policy_options() const {
+  const ::enterprise_management::PolicyOptions* p = policy_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& StringPolicyProto::policy_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StringPolicyProto.policy_options)
+  return _internal_policy_options();
+}
+inline ::enterprise_management::PolicyOptions* StringPolicyProto::release_policy_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StringPolicyProto.policy_options)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::PolicyOptions* temp = policy_options_;
+  policy_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* StringPolicyProto::_internal_mutable_policy_options() {
+  _has_bits_[0] |= 0x00000002u;
+  if (policy_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    policy_options_ = p;
+  }
+  return policy_options_;
+}
+inline ::enterprise_management::PolicyOptions* StringPolicyProto::mutable_policy_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StringPolicyProto.policy_options)
+  return _internal_mutable_policy_options();
+}
+inline void StringPolicyProto::set_allocated_policy_options(::enterprise_management::PolicyOptions* policy_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete policy_options_;
+  }
+  if (policy_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      policy_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, policy_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  policy_options_ = policy_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StringPolicyProto.policy_options)
+}
+
+// optional string value = 2;
+inline bool StringPolicyProto::_internal_has_value() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool StringPolicyProto::has_value() const {
+  return _internal_has_value();
+}
+inline void StringPolicyProto::clear_value() {
+  value_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& StringPolicyProto::value() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StringPolicyProto.value)
+  return _internal_value();
+}
+inline void StringPolicyProto::set_value(const std::string& value) {
+  _internal_set_value(value);
+  // @@protoc_insertion_point(field_set:enterprise_management.StringPolicyProto.value)
+}
+inline std::string* StringPolicyProto::mutable_value() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StringPolicyProto.value)
+  return _internal_mutable_value();
+}
+inline const std::string& StringPolicyProto::_internal_value() const {
+  return value_.GetNoArena();
+}
+inline void StringPolicyProto::_internal_set_value(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void StringPolicyProto::set_value(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  value_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:enterprise_management.StringPolicyProto.value)
+}
+inline void StringPolicyProto::set_value(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:enterprise_management.StringPolicyProto.value)
+}
+inline void StringPolicyProto::set_value(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:enterprise_management.StringPolicyProto.value)
+}
+inline std::string* StringPolicyProto::_internal_mutable_value() {
+  _has_bits_[0] |= 0x00000001u;
+  return value_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* StringPolicyProto::release_value() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StringPolicyProto.value)
+  if (!_internal_has_value()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return value_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void StringPolicyProto::set_allocated_value(std::string* value) {
+  if (value != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  value_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StringPolicyProto.value)
+}
+
+// -------------------------------------------------------------------
+
+// StringListPolicyProto
+
+// optional .enterprise_management.PolicyOptions policy_options = 1;
+inline bool StringListPolicyProto::_internal_has_policy_options() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || policy_options_ != nullptr);
+  return value;
+}
+inline bool StringListPolicyProto::has_policy_options() const {
+  return _internal_has_policy_options();
+}
+inline void StringListPolicyProto::clear_policy_options() {
+  if (policy_options_ != nullptr) policy_options_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::enterprise_management::PolicyOptions& StringListPolicyProto::_internal_policy_options() const {
+  const ::enterprise_management::PolicyOptions* p = policy_options_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::PolicyOptions*>(
+      &::enterprise_management::_PolicyOptions_default_instance_);
+}
+inline const ::enterprise_management::PolicyOptions& StringListPolicyProto::policy_options() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StringListPolicyProto.policy_options)
+  return _internal_policy_options();
+}
+inline ::enterprise_management::PolicyOptions* StringListPolicyProto::release_policy_options() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StringListPolicyProto.policy_options)
+  _has_bits_[0] &= ~0x00000001u;
+  ::enterprise_management::PolicyOptions* temp = policy_options_;
+  policy_options_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::PolicyOptions* StringListPolicyProto::_internal_mutable_policy_options() {
+  _has_bits_[0] |= 0x00000001u;
+  if (policy_options_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::PolicyOptions>(GetArenaNoVirtual());
+    policy_options_ = p;
+  }
+  return policy_options_;
+}
+inline ::enterprise_management::PolicyOptions* StringListPolicyProto::mutable_policy_options() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StringListPolicyProto.policy_options)
+  return _internal_mutable_policy_options();
+}
+inline void StringListPolicyProto::set_allocated_policy_options(::enterprise_management::PolicyOptions* policy_options) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete policy_options_;
+  }
+  if (policy_options) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      policy_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, policy_options, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  policy_options_ = policy_options;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StringListPolicyProto.policy_options)
+}
+
+// optional .enterprise_management.StringList value = 2;
+inline bool StringListPolicyProto::_internal_has_value() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || value_ != nullptr);
+  return value;
+}
+inline bool StringListPolicyProto::has_value() const {
+  return _internal_has_value();
+}
+inline void StringListPolicyProto::clear_value() {
+  if (value_ != nullptr) value_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::enterprise_management::StringList& StringListPolicyProto::_internal_value() const {
+  const ::enterprise_management::StringList* p = value_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::enterprise_management::StringList*>(
+      &::enterprise_management::_StringList_default_instance_);
+}
+inline const ::enterprise_management::StringList& StringListPolicyProto::value() const {
+  // @@protoc_insertion_point(field_get:enterprise_management.StringListPolicyProto.value)
+  return _internal_value();
+}
+inline ::enterprise_management::StringList* StringListPolicyProto::release_value() {
+  // @@protoc_insertion_point(field_release:enterprise_management.StringListPolicyProto.value)
+  _has_bits_[0] &= ~0x00000002u;
+  ::enterprise_management::StringList* temp = value_;
+  value_ = nullptr;
+  return temp;
+}
+inline ::enterprise_management::StringList* StringListPolicyProto::_internal_mutable_value() {
+  _has_bits_[0] |= 0x00000002u;
+  if (value_ == nullptr) {
+    auto* p = CreateMaybeMessage<::enterprise_management::StringList>(GetArenaNoVirtual());
+    value_ = p;
+  }
+  return value_;
+}
+inline ::enterprise_management::StringList* StringListPolicyProto::mutable_value() {
+  // @@protoc_insertion_point(field_mutable:enterprise_management.StringListPolicyProto.value)
+  return _internal_mutable_value();
+}
+inline void StringListPolicyProto::set_allocated_value(::enterprise_management::StringList* value) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete value_;
+  }
+  if (value) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      value = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, value, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  value_ = value;
+  // @@protoc_insertion_point(field_set_allocated:enterprise_management.StringListPolicyProto.value)
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace enterprise_management
+
+PROTOBUF_NAMESPACE_OPEN
+
+template <> struct is_proto_enum< ::enterprise_management::PolicyOptions_PolicyMode> : ::std::true_type {};
+
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_policy_5fcommon_5fdefinitions_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership.pb.cc b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership.pb.cc
new file mode 100644
index 0000000..67967f3
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership.pb.cc
@@ -0,0 +1,594 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: private_membership.proto
+
+#include "private_membership.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+namespace private_membership {
+class DoublyEncryptedIdDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<DoublyEncryptedId> _instance;
+} _DoublyEncryptedId_default_instance_;
+class MembershipResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<MembershipResponse> _instance;
+} _MembershipResponse_default_instance_;
+}  // namespace private_membership
+static void InitDefaultsscc_info_DoublyEncryptedId_private_5fmembership_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::_DoublyEncryptedId_default_instance_;
+    new (ptr) ::private_membership::DoublyEncryptedId();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::DoublyEncryptedId::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DoublyEncryptedId_private_5fmembership_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_DoublyEncryptedId_private_5fmembership_2eproto}, {}};
+
+static void InitDefaultsscc_info_MembershipResponse_private_5fmembership_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::_MembershipResponse_default_instance_;
+    new (ptr) ::private_membership::MembershipResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::MembershipResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_MembershipResponse_private_5fmembership_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_MembershipResponse_private_5fmembership_2eproto}, {}};
+
+namespace private_membership {
+bool HashType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> HashType_strings[3] = {};
+
+static const char HashType_names[] =
+  "HASH_TYPE_UNDEFINED"
+  "SHA256"
+  "TEST_HASH_TYPE";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry HashType_entries[] = {
+  { {HashType_names + 0, 19}, 0 },
+  { {HashType_names + 19, 6}, 2 },
+  { {HashType_names + 25, 14}, 1 },
+};
+
+static const int HashType_entries_by_number[] = {
+  0, // 0 -> HASH_TYPE_UNDEFINED
+  2, // 1 -> TEST_HASH_TYPE
+  1, // 2 -> SHA256
+};
+
+const std::string& HashType_Name(
+    HashType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          HashType_entries,
+          HashType_entries_by_number,
+          3, HashType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      HashType_entries,
+      HashType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     HashType_strings[idx].get();
+}
+bool HashType_Parse(
+    const std::string& name, HashType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      HashType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<HashType>(int_value);
+  }
+  return success;
+}
+bool EncryptedBucketHashType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> EncryptedBucketHashType_strings[3] = {};
+
+static const char EncryptedBucketHashType_names[] =
+  "ENCRYPTED_BUCKET_HASH_TYPE_UNDEFINED"
+  "ENCRYPTED_BUCKET_TEST_HASH_TYPE"
+  "SHA256_NON_SENSITIVE_AND_SENSITIVE_ID";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry EncryptedBucketHashType_entries[] = {
+  { {EncryptedBucketHashType_names + 0, 36}, 0 },
+  { {EncryptedBucketHashType_names + 36, 31}, 3 },
+  { {EncryptedBucketHashType_names + 67, 37}, 1 },
+};
+
+static const int EncryptedBucketHashType_entries_by_number[] = {
+  0, // 0 -> ENCRYPTED_BUCKET_HASH_TYPE_UNDEFINED
+  2, // 1 -> SHA256_NON_SENSITIVE_AND_SENSITIVE_ID
+  1, // 3 -> ENCRYPTED_BUCKET_TEST_HASH_TYPE
+};
+
+const std::string& EncryptedBucketHashType_Name(
+    EncryptedBucketHashType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          EncryptedBucketHashType_entries,
+          EncryptedBucketHashType_entries_by_number,
+          3, EncryptedBucketHashType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      EncryptedBucketHashType_entries,
+      EncryptedBucketHashType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     EncryptedBucketHashType_strings[idx].get();
+}
+bool EncryptedBucketHashType_Parse(
+    const std::string& name, EncryptedBucketHashType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      EncryptedBucketHashType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<EncryptedBucketHashType>(int_value);
+  }
+  return success;
+}
+
+// ===================================================================
+
+void DoublyEncryptedId::InitAsDefaultInstance() {
+}
+class DoublyEncryptedId::_Internal {
+ public:
+};
+
+DoublyEncryptedId::DoublyEncryptedId()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.DoublyEncryptedId)
+}
+DoublyEncryptedId::DoublyEncryptedId(const DoublyEncryptedId& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  queried_encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_queried_encrypted_id().empty()) {
+    queried_encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.queried_encrypted_id_);
+  }
+  doubly_encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_doubly_encrypted_id().empty()) {
+    doubly_encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.doubly_encrypted_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:private_membership.DoublyEncryptedId)
+}
+
+void DoublyEncryptedId::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DoublyEncryptedId_private_5fmembership_2eproto.base);
+  queried_encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  doubly_encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+DoublyEncryptedId::~DoublyEncryptedId() {
+  // @@protoc_insertion_point(destructor:private_membership.DoublyEncryptedId)
+  SharedDtor();
+}
+
+void DoublyEncryptedId::SharedDtor() {
+  queried_encrypted_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  doubly_encrypted_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void DoublyEncryptedId::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const DoublyEncryptedId& DoublyEncryptedId::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_DoublyEncryptedId_private_5fmembership_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void DoublyEncryptedId::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.DoublyEncryptedId)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  queried_encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  doubly_encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _internal_metadata_.Clear();
+}
+
+const char* DoublyEncryptedId::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // bytes queried_encrypted_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_queried_encrypted_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // bytes doubly_encrypted_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_doubly_encrypted_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* DoublyEncryptedId::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.DoublyEncryptedId)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // bytes queried_encrypted_id = 1;
+  if (this->queried_encrypted_id().size() > 0) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_queried_encrypted_id(), target);
+  }
+
+  // bytes doubly_encrypted_id = 2;
+  if (this->doubly_encrypted_id().size() > 0) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_doubly_encrypted_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.DoublyEncryptedId)
+  return target;
+}
+
+size_t DoublyEncryptedId::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.DoublyEncryptedId)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // bytes queried_encrypted_id = 1;
+  if (this->queried_encrypted_id().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_queried_encrypted_id());
+  }
+
+  // bytes doubly_encrypted_id = 2;
+  if (this->doubly_encrypted_id().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_doubly_encrypted_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void DoublyEncryptedId::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const DoublyEncryptedId*>(
+      &from));
+}
+
+void DoublyEncryptedId::MergeFrom(const DoublyEncryptedId& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.DoublyEncryptedId)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.queried_encrypted_id().size() > 0) {
+
+    queried_encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.queried_encrypted_id_);
+  }
+  if (from.doubly_encrypted_id().size() > 0) {
+
+    doubly_encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.doubly_encrypted_id_);
+  }
+}
+
+void DoublyEncryptedId::CopyFrom(const DoublyEncryptedId& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.DoublyEncryptedId)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool DoublyEncryptedId::IsInitialized() const {
+  return true;
+}
+
+void DoublyEncryptedId::InternalSwap(DoublyEncryptedId* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  queried_encrypted_id_.Swap(&other->queried_encrypted_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  doubly_encrypted_id_.Swap(&other->doubly_encrypted_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string DoublyEncryptedId::GetTypeName() const {
+  return "private_membership.DoublyEncryptedId";
+}
+
+
+// ===================================================================
+
+void MembershipResponse::InitAsDefaultInstance() {
+}
+class MembershipResponse::_Internal {
+ public:
+};
+
+MembershipResponse::MembershipResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.MembershipResponse)
+}
+MembershipResponse::MembershipResponse(const MembershipResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_value().empty()) {
+    value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.value_);
+  }
+  is_member_ = from.is_member_;
+  // @@protoc_insertion_point(copy_constructor:private_membership.MembershipResponse)
+}
+
+void MembershipResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_MembershipResponse_private_5fmembership_2eproto.base);
+  value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  is_member_ = false;
+}
+
+MembershipResponse::~MembershipResponse() {
+  // @@protoc_insertion_point(destructor:private_membership.MembershipResponse)
+  SharedDtor();
+}
+
+void MembershipResponse::SharedDtor() {
+  value_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void MembershipResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const MembershipResponse& MembershipResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_MembershipResponse_private_5fmembership_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void MembershipResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.MembershipResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  value_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  is_member_ = false;
+  _internal_metadata_.Clear();
+}
+
+const char* MembershipResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // bool is_member = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          is_member_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // string value = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_value();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, nullptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* MembershipResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.MembershipResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // bool is_member = 1;
+  if (this->is_member() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_is_member(), target);
+  }
+
+  // string value = 2;
+  if (this->value().size() > 0) {
+    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
+      this->_internal_value().data(), static_cast<int>(this->_internal_value().length()),
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
+      "private_membership.MembershipResponse.value");
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_value(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.MembershipResponse)
+  return target;
+}
+
+size_t MembershipResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.MembershipResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // string value = 2;
+  if (this->value().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_value());
+  }
+
+  // bool is_member = 1;
+  if (this->is_member() != 0) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void MembershipResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const MembershipResponse*>(
+      &from));
+}
+
+void MembershipResponse::MergeFrom(const MembershipResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.MembershipResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.value().size() > 0) {
+
+    value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.value_);
+  }
+  if (from.is_member() != 0) {
+    _internal_set_is_member(from._internal_is_member());
+  }
+}
+
+void MembershipResponse::CopyFrom(const MembershipResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.MembershipResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool MembershipResponse::IsInitialized() const {
+  return true;
+}
+
+void MembershipResponse::InternalSwap(MembershipResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  value_.Swap(&other->value_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(is_member_, other->is_member_);
+}
+
+std::string MembershipResponse::GetTypeName() const {
+  return "private_membership.MembershipResponse";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace private_membership
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::private_membership::DoublyEncryptedId* Arena::CreateMaybeMessage< ::private_membership::DoublyEncryptedId >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::DoublyEncryptedId >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::MembershipResponse* Arena::CreateMaybeMessage< ::private_membership::MembershipResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::MembershipResponse >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership.pb.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership.pb.h
new file mode 100644
index 0000000..ec1fef8
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership.pb.h
@@ -0,0 +1,617 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: private_membership.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_private_5fmembership_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_private_5fmembership_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/generated_enum_util.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_private_5fmembership_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_private_5fmembership_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[2]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace private_membership {
+class DoublyEncryptedId;
+class DoublyEncryptedIdDefaultTypeInternal;
+extern DoublyEncryptedIdDefaultTypeInternal _DoublyEncryptedId_default_instance_;
+class MembershipResponse;
+class MembershipResponseDefaultTypeInternal;
+extern MembershipResponseDefaultTypeInternal _MembershipResponse_default_instance_;
+}  // namespace private_membership
+PROTOBUF_NAMESPACE_OPEN
+template<> ::private_membership::DoublyEncryptedId* Arena::CreateMaybeMessage<::private_membership::DoublyEncryptedId>(Arena*);
+template<> ::private_membership::MembershipResponse* Arena::CreateMaybeMessage<::private_membership::MembershipResponse>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace private_membership {
+
+enum HashType : int {
+  HASH_TYPE_UNDEFINED = 0,
+  TEST_HASH_TYPE = 1,
+  SHA256 = 2,
+  HashType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
+  HashType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
+};
+bool HashType_IsValid(int value);
+constexpr HashType HashType_MIN = HASH_TYPE_UNDEFINED;
+constexpr HashType HashType_MAX = SHA256;
+constexpr int HashType_ARRAYSIZE = HashType_MAX + 1;
+
+const std::string& HashType_Name(HashType value);
+template<typename T>
+inline const std::string& HashType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, HashType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function HashType_Name.");
+  return HashType_Name(static_cast<HashType>(enum_t_value));
+}
+bool HashType_Parse(
+    const std::string& name, HashType* value);
+enum EncryptedBucketHashType : int {
+  ENCRYPTED_BUCKET_HASH_TYPE_UNDEFINED = 0,
+  ENCRYPTED_BUCKET_TEST_HASH_TYPE = 3,
+  SHA256_NON_SENSITIVE_AND_SENSITIVE_ID = 1,
+  EncryptedBucketHashType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
+  EncryptedBucketHashType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
+};
+bool EncryptedBucketHashType_IsValid(int value);
+constexpr EncryptedBucketHashType EncryptedBucketHashType_MIN = ENCRYPTED_BUCKET_HASH_TYPE_UNDEFINED;
+constexpr EncryptedBucketHashType EncryptedBucketHashType_MAX = ENCRYPTED_BUCKET_TEST_HASH_TYPE;
+constexpr int EncryptedBucketHashType_ARRAYSIZE = EncryptedBucketHashType_MAX + 1;
+
+const std::string& EncryptedBucketHashType_Name(EncryptedBucketHashType value);
+template<typename T>
+inline const std::string& EncryptedBucketHashType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, EncryptedBucketHashType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function EncryptedBucketHashType_Name.");
+  return EncryptedBucketHashType_Name(static_cast<EncryptedBucketHashType>(enum_t_value));
+}
+bool EncryptedBucketHashType_Parse(
+    const std::string& name, EncryptedBucketHashType* value);
+// ===================================================================
+
+class DoublyEncryptedId :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.DoublyEncryptedId) */ {
+ public:
+  DoublyEncryptedId();
+  virtual ~DoublyEncryptedId();
+
+  DoublyEncryptedId(const DoublyEncryptedId& from);
+  DoublyEncryptedId(DoublyEncryptedId&& from) noexcept
+    : DoublyEncryptedId() {
+    *this = ::std::move(from);
+  }
+
+  inline DoublyEncryptedId& operator=(const DoublyEncryptedId& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline DoublyEncryptedId& operator=(DoublyEncryptedId&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const DoublyEncryptedId& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const DoublyEncryptedId* internal_default_instance() {
+    return reinterpret_cast<const DoublyEncryptedId*>(
+               &_DoublyEncryptedId_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(DoublyEncryptedId& a, DoublyEncryptedId& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(DoublyEncryptedId* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline DoublyEncryptedId* New() const final {
+    return CreateMaybeMessage<DoublyEncryptedId>(nullptr);
+  }
+
+  DoublyEncryptedId* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<DoublyEncryptedId>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const DoublyEncryptedId& from);
+  void MergeFrom(const DoublyEncryptedId& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(DoublyEncryptedId* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.DoublyEncryptedId";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kQueriedEncryptedIdFieldNumber = 1,
+    kDoublyEncryptedIdFieldNumber = 2,
+  };
+  // bytes queried_encrypted_id = 1;
+  void clear_queried_encrypted_id();
+  const std::string& queried_encrypted_id() const;
+  void set_queried_encrypted_id(const std::string& value);
+  void set_queried_encrypted_id(std::string&& value);
+  void set_queried_encrypted_id(const char* value);
+  void set_queried_encrypted_id(const void* value, size_t size);
+  std::string* mutable_queried_encrypted_id();
+  std::string* release_queried_encrypted_id();
+  void set_allocated_queried_encrypted_id(std::string* queried_encrypted_id);
+  private:
+  const std::string& _internal_queried_encrypted_id() const;
+  void _internal_set_queried_encrypted_id(const std::string& value);
+  std::string* _internal_mutable_queried_encrypted_id();
+  public:
+
+  // bytes doubly_encrypted_id = 2;
+  void clear_doubly_encrypted_id();
+  const std::string& doubly_encrypted_id() const;
+  void set_doubly_encrypted_id(const std::string& value);
+  void set_doubly_encrypted_id(std::string&& value);
+  void set_doubly_encrypted_id(const char* value);
+  void set_doubly_encrypted_id(const void* value, size_t size);
+  std::string* mutable_doubly_encrypted_id();
+  std::string* release_doubly_encrypted_id();
+  void set_allocated_doubly_encrypted_id(std::string* doubly_encrypted_id);
+  private:
+  const std::string& _internal_doubly_encrypted_id() const;
+  void _internal_set_doubly_encrypted_id(const std::string& value);
+  std::string* _internal_mutable_doubly_encrypted_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.DoublyEncryptedId)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr queried_encrypted_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr doubly_encrypted_id_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_2eproto;
+};
+// -------------------------------------------------------------------
+
+class MembershipResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.MembershipResponse) */ {
+ public:
+  MembershipResponse();
+  virtual ~MembershipResponse();
+
+  MembershipResponse(const MembershipResponse& from);
+  MembershipResponse(MembershipResponse&& from) noexcept
+    : MembershipResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline MembershipResponse& operator=(const MembershipResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline MembershipResponse& operator=(MembershipResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const MembershipResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const MembershipResponse* internal_default_instance() {
+    return reinterpret_cast<const MembershipResponse*>(
+               &_MembershipResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(MembershipResponse& a, MembershipResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(MembershipResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline MembershipResponse* New() const final {
+    return CreateMaybeMessage<MembershipResponse>(nullptr);
+  }
+
+  MembershipResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<MembershipResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const MembershipResponse& from);
+  void MergeFrom(const MembershipResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(MembershipResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.MembershipResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kValueFieldNumber = 2,
+    kIsMemberFieldNumber = 1,
+  };
+  // string value = 2;
+  void clear_value();
+  const std::string& value() const;
+  void set_value(const std::string& value);
+  void set_value(std::string&& value);
+  void set_value(const char* value);
+  void set_value(const char* value, size_t size);
+  std::string* mutable_value();
+  std::string* release_value();
+  void set_allocated_value(std::string* value);
+  private:
+  const std::string& _internal_value() const;
+  void _internal_set_value(const std::string& value);
+  std::string* _internal_mutable_value();
+  public:
+
+  // bool is_member = 1;
+  void clear_is_member();
+  bool is_member() const;
+  void set_is_member(bool value);
+  private:
+  bool _internal_is_member() const;
+  void _internal_set_is_member(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.MembershipResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_;
+  bool is_member_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// DoublyEncryptedId
+
+// bytes queried_encrypted_id = 1;
+inline void DoublyEncryptedId::clear_queried_encrypted_id() {
+  queried_encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& DoublyEncryptedId::queried_encrypted_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.DoublyEncryptedId.queried_encrypted_id)
+  return _internal_queried_encrypted_id();
+}
+inline void DoublyEncryptedId::set_queried_encrypted_id(const std::string& value) {
+  _internal_set_queried_encrypted_id(value);
+  // @@protoc_insertion_point(field_set:private_membership.DoublyEncryptedId.queried_encrypted_id)
+}
+inline std::string* DoublyEncryptedId::mutable_queried_encrypted_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.DoublyEncryptedId.queried_encrypted_id)
+  return _internal_mutable_queried_encrypted_id();
+}
+inline const std::string& DoublyEncryptedId::_internal_queried_encrypted_id() const {
+  return queried_encrypted_id_.GetNoArena();
+}
+inline void DoublyEncryptedId::_internal_set_queried_encrypted_id(const std::string& value) {
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DoublyEncryptedId::set_queried_encrypted_id(std::string&& value) {
+  
+  queried_encrypted_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.DoublyEncryptedId.queried_encrypted_id)
+}
+inline void DoublyEncryptedId::set_queried_encrypted_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.DoublyEncryptedId.queried_encrypted_id)
+}
+inline void DoublyEncryptedId::set_queried_encrypted_id(const void* value, size_t size) {
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.DoublyEncryptedId.queried_encrypted_id)
+}
+inline std::string* DoublyEncryptedId::_internal_mutable_queried_encrypted_id() {
+  
+  return queried_encrypted_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DoublyEncryptedId::release_queried_encrypted_id() {
+  // @@protoc_insertion_point(field_release:private_membership.DoublyEncryptedId.queried_encrypted_id)
+  
+  return queried_encrypted_id_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DoublyEncryptedId::set_allocated_queried_encrypted_id(std::string* queried_encrypted_id) {
+  if (queried_encrypted_id != nullptr) {
+    
+  } else {
+    
+  }
+  queried_encrypted_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), queried_encrypted_id);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.DoublyEncryptedId.queried_encrypted_id)
+}
+
+// bytes doubly_encrypted_id = 2;
+inline void DoublyEncryptedId::clear_doubly_encrypted_id() {
+  doubly_encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& DoublyEncryptedId::doubly_encrypted_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.DoublyEncryptedId.doubly_encrypted_id)
+  return _internal_doubly_encrypted_id();
+}
+inline void DoublyEncryptedId::set_doubly_encrypted_id(const std::string& value) {
+  _internal_set_doubly_encrypted_id(value);
+  // @@protoc_insertion_point(field_set:private_membership.DoublyEncryptedId.doubly_encrypted_id)
+}
+inline std::string* DoublyEncryptedId::mutable_doubly_encrypted_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.DoublyEncryptedId.doubly_encrypted_id)
+  return _internal_mutable_doubly_encrypted_id();
+}
+inline const std::string& DoublyEncryptedId::_internal_doubly_encrypted_id() const {
+  return doubly_encrypted_id_.GetNoArena();
+}
+inline void DoublyEncryptedId::_internal_set_doubly_encrypted_id(const std::string& value) {
+  
+  doubly_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void DoublyEncryptedId::set_doubly_encrypted_id(std::string&& value) {
+  
+  doubly_encrypted_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.DoublyEncryptedId.doubly_encrypted_id)
+}
+inline void DoublyEncryptedId::set_doubly_encrypted_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  doubly_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.DoublyEncryptedId.doubly_encrypted_id)
+}
+inline void DoublyEncryptedId::set_doubly_encrypted_id(const void* value, size_t size) {
+  
+  doubly_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.DoublyEncryptedId.doubly_encrypted_id)
+}
+inline std::string* DoublyEncryptedId::_internal_mutable_doubly_encrypted_id() {
+  
+  return doubly_encrypted_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* DoublyEncryptedId::release_doubly_encrypted_id() {
+  // @@protoc_insertion_point(field_release:private_membership.DoublyEncryptedId.doubly_encrypted_id)
+  
+  return doubly_encrypted_id_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void DoublyEncryptedId::set_allocated_doubly_encrypted_id(std::string* doubly_encrypted_id) {
+  if (doubly_encrypted_id != nullptr) {
+    
+  } else {
+    
+  }
+  doubly_encrypted_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), doubly_encrypted_id);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.DoublyEncryptedId.doubly_encrypted_id)
+}
+
+// -------------------------------------------------------------------
+
+// MembershipResponse
+
+// bool is_member = 1;
+inline void MembershipResponse::clear_is_member() {
+  is_member_ = false;
+}
+inline bool MembershipResponse::_internal_is_member() const {
+  return is_member_;
+}
+inline bool MembershipResponse::is_member() const {
+  // @@protoc_insertion_point(field_get:private_membership.MembershipResponse.is_member)
+  return _internal_is_member();
+}
+inline void MembershipResponse::_internal_set_is_member(bool value) {
+  
+  is_member_ = value;
+}
+inline void MembershipResponse::set_is_member(bool value) {
+  _internal_set_is_member(value);
+  // @@protoc_insertion_point(field_set:private_membership.MembershipResponse.is_member)
+}
+
+// string value = 2;
+inline void MembershipResponse::clear_value() {
+  value_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& MembershipResponse::value() const {
+  // @@protoc_insertion_point(field_get:private_membership.MembershipResponse.value)
+  return _internal_value();
+}
+inline void MembershipResponse::set_value(const std::string& value) {
+  _internal_set_value(value);
+  // @@protoc_insertion_point(field_set:private_membership.MembershipResponse.value)
+}
+inline std::string* MembershipResponse::mutable_value() {
+  // @@protoc_insertion_point(field_mutable:private_membership.MembershipResponse.value)
+  return _internal_mutable_value();
+}
+inline const std::string& MembershipResponse::_internal_value() const {
+  return value_.GetNoArena();
+}
+inline void MembershipResponse::_internal_set_value(const std::string& value) {
+  
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void MembershipResponse::set_value(std::string&& value) {
+  
+  value_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.MembershipResponse.value)
+}
+inline void MembershipResponse::set_value(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.MembershipResponse.value)
+}
+inline void MembershipResponse::set_value(const char* value, size_t size) {
+  
+  value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.MembershipResponse.value)
+}
+inline std::string* MembershipResponse::_internal_mutable_value() {
+  
+  return value_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* MembershipResponse::release_value() {
+  // @@protoc_insertion_point(field_release:private_membership.MembershipResponse.value)
+  
+  return value_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void MembershipResponse::set_allocated_value(std::string* value) {
+  if (value != nullptr) {
+    
+  } else {
+    
+  }
+  value_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.MembershipResponse.value)
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace private_membership
+
+PROTOBUF_NAMESPACE_OPEN
+
+template <> struct is_proto_enum< ::private_membership::HashType> : ::std::true_type {};
+template <> struct is_proto_enum< ::private_membership::EncryptedBucketHashType> : ::std::true_type {};
+
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_private_5fmembership_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership_rlwe.pb.cc b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership_rlwe.pb.cc
new file mode 100644
index 0000000..dbad102
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership_rlwe.pb.cc
@@ -0,0 +1,4462 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: private_membership_rlwe.proto
+
+#include "private_membership_rlwe.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DoublyEncryptedId_private_5fmembership_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_MembershipResponse_private_5fmembership_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EncryptedBucket_EncryptedIdValuePair_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EncryptedBucketsParameters_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_HashedBucketsParameters_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PirRequest_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PirResponse_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateMembershipRlwePirResponse_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_PrivateMembershipRlweQuery_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PrivateMembershipRlweQuery_HashedBucketId_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_RlweMembershipResponses_MembershipResponseEntry_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_RlweParameters_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RlwePlaintextId_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Uint128_private_5fmembership_5frlwe_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_serialization_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SerializedNttPolynomial_serialization_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_serialization_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SerializedSymmetricRlweCiphertext_serialization_2eproto;
+namespace private_membership {
+namespace rlwe {
+class PrivateMembershipRlweOprfRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateMembershipRlweOprfRequest> _instance;
+} _PrivateMembershipRlweOprfRequest_default_instance_;
+class PrivateMembershipRlweOprfResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateMembershipRlweOprfResponse> _instance;
+} _PrivateMembershipRlweOprfResponse_default_instance_;
+class PrivateMembershipRlweQueryRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateMembershipRlweQueryRequest> _instance;
+} _PrivateMembershipRlweQueryRequest_default_instance_;
+class PrivateMembershipRlweQueryResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateMembershipRlweQueryResponse> _instance;
+} _PrivateMembershipRlweQueryResponse_default_instance_;
+class RlwePlaintextIdDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RlwePlaintextId> _instance;
+} _RlwePlaintextId_default_instance_;
+class HashedBucketsParametersDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<HashedBucketsParameters> _instance;
+} _HashedBucketsParameters_default_instance_;
+class EncryptedBucketsParametersDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<EncryptedBucketsParameters> _instance;
+} _EncryptedBucketsParameters_default_instance_;
+class RlweParametersDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RlweParameters> _instance;
+} _RlweParameters_default_instance_;
+class Uint128DefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<Uint128> _instance;
+} _Uint128_default_instance_;
+class PrivateMembershipRlweQuery_HashedBucketIdDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateMembershipRlweQuery_HashedBucketId> _instance;
+} _PrivateMembershipRlweQuery_HashedBucketId_default_instance_;
+class PrivateMembershipRlweQueryDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateMembershipRlweQuery> _instance;
+} _PrivateMembershipRlweQuery_default_instance_;
+class PrivateMembershipRlwePirResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PrivateMembershipRlwePirResponse> _instance;
+} _PrivateMembershipRlwePirResponse_default_instance_;
+class PirRequestDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PirRequest> _instance;
+} _PirRequest_default_instance_;
+class PirResponseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<PirResponse> _instance;
+} _PirResponse_default_instance_;
+class EncryptedBucket_EncryptedIdValuePairDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<EncryptedBucket_EncryptedIdValuePair> _instance;
+} _EncryptedBucket_EncryptedIdValuePair_default_instance_;
+class EncryptedBucketDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<EncryptedBucket> _instance;
+} _EncryptedBucket_default_instance_;
+class RlweMembershipResponses_MembershipResponseEntryDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RlweMembershipResponses_MembershipResponseEntry> _instance;
+} _RlweMembershipResponses_MembershipResponseEntry_default_instance_;
+class RlweMembershipResponsesDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<RlweMembershipResponses> _instance;
+} _RlweMembershipResponses_default_instance_;
+}  // namespace rlwe
+}  // namespace private_membership
+static void InitDefaultsscc_info_EncryptedBucket_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_EncryptedBucket_default_instance_;
+    new (ptr) ::private_membership::rlwe::EncryptedBucket();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::EncryptedBucket::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EncryptedBucket_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_EncryptedBucket_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_EncryptedBucket_EncryptedIdValuePair_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_EncryptedBucket_EncryptedIdValuePair_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_EncryptedBucket_EncryptedIdValuePair_default_instance_;
+    new (ptr) ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EncryptedBucket_EncryptedIdValuePair_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_EncryptedBucket_EncryptedIdValuePair_private_5fmembership_5frlwe_2eproto}, {}};
+
+static void InitDefaultsscc_info_EncryptedBucketsParameters_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_EncryptedBucketsParameters_default_instance_;
+    new (ptr) ::private_membership::rlwe::EncryptedBucketsParameters();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::EncryptedBucketsParameters::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EncryptedBucketsParameters_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_EncryptedBucketsParameters_private_5fmembership_5frlwe_2eproto}, {}};
+
+static void InitDefaultsscc_info_HashedBucketsParameters_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_HashedBucketsParameters_default_instance_;
+    new (ptr) ::private_membership::rlwe::HashedBucketsParameters();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::HashedBucketsParameters::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_HashedBucketsParameters_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_HashedBucketsParameters_private_5fmembership_5frlwe_2eproto}, {}};
+
+static void InitDefaultsscc_info_PirRequest_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PirRequest_default_instance_;
+    new (ptr) ::private_membership::rlwe::PirRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PirRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PirRequest_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PirRequest_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_SerializedNttPolynomial_serialization_2eproto.base,}};
+
+static void InitDefaultsscc_info_PirResponse_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PirResponse_default_instance_;
+    new (ptr) ::private_membership::rlwe::PirResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PirResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PirResponse_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PirResponse_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_SerializedSymmetricRlweCiphertext_serialization_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrivateMembershipRlweOprfRequest_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PrivateMembershipRlweOprfRequest_default_instance_;
+    new (ptr) ::private_membership::rlwe::PrivateMembershipRlweOprfRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PrivateMembershipRlweOprfRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PrivateMembershipRlweOprfRequest_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PrivateMembershipRlweOprfRequest_private_5fmembership_5frlwe_2eproto}, {}};
+
+static void InitDefaultsscc_info_PrivateMembershipRlweOprfResponse_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PrivateMembershipRlweOprfResponse_default_instance_;
+    new (ptr) ::private_membership::rlwe::PrivateMembershipRlweOprfResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PrivateMembershipRlweOprfResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<4> scc_info_PrivateMembershipRlweOprfResponse_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 4, 0, InitDefaultsscc_info_PrivateMembershipRlweOprfResponse_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_DoublyEncryptedId_private_5fmembership_2eproto.base,
+      &scc_info_HashedBucketsParameters_private_5fmembership_5frlwe_2eproto.base,
+      &scc_info_EncryptedBucketsParameters_private_5fmembership_5frlwe_2eproto.base,
+      &scc_info_RlweParameters_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrivateMembershipRlwePirResponse_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PrivateMembershipRlwePirResponse_default_instance_;
+    new (ptr) ::private_membership::rlwe::PrivateMembershipRlwePirResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PrivateMembershipRlwePirResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateMembershipRlwePirResponse_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PrivateMembershipRlwePirResponse_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_PirResponse_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrivateMembershipRlweQuery_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PrivateMembershipRlweQuery_default_instance_;
+    new (ptr) ::private_membership::rlwe::PrivateMembershipRlweQuery();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PrivateMembershipRlweQuery::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_PrivateMembershipRlweQuery_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_PrivateMembershipRlweQuery_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_PirRequest_private_5fmembership_5frlwe_2eproto.base,
+      &scc_info_PrivateMembershipRlweQuery_HashedBucketId_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrivateMembershipRlweQuery_HashedBucketId_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PrivateMembershipRlweQuery_HashedBucketId_default_instance_;
+    new (ptr) ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_PrivateMembershipRlweQuery_HashedBucketId_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_PrivateMembershipRlweQuery_HashedBucketId_private_5fmembership_5frlwe_2eproto}, {}};
+
+static void InitDefaultsscc_info_PrivateMembershipRlweQueryRequest_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PrivateMembershipRlweQueryRequest_default_instance_;
+    new (ptr) ::private_membership::rlwe::PrivateMembershipRlweQueryRequest();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PrivateMembershipRlweQueryRequest::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateMembershipRlweQueryRequest_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PrivateMembershipRlweQueryRequest_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_PrivateMembershipRlweQuery_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_PrivateMembershipRlweQueryResponse_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_PrivateMembershipRlweQueryResponse_default_instance_;
+    new (ptr) ::private_membership::rlwe::PrivateMembershipRlweQueryResponse();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::PrivateMembershipRlweQueryResponse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_PrivateMembershipRlweQueryResponse_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_PrivateMembershipRlweQueryResponse_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_PrivateMembershipRlwePirResponse_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_RlweMembershipResponses_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_RlweMembershipResponses_default_instance_;
+    new (ptr) ::private_membership::rlwe::RlweMembershipResponses();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::RlweMembershipResponses::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_RlweMembershipResponses_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_RlweMembershipResponses_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_RlweMembershipResponses_MembershipResponseEntry_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_RlweMembershipResponses_MembershipResponseEntry_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_RlweMembershipResponses_MembershipResponseEntry_default_instance_;
+    new (ptr) ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_RlweMembershipResponses_MembershipResponseEntry_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_RlweMembershipResponses_MembershipResponseEntry_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_RlwePlaintextId_private_5fmembership_5frlwe_2eproto.base,
+      &scc_info_MembershipResponse_private_5fmembership_2eproto.base,}};
+
+static void InitDefaultsscc_info_RlweParameters_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_RlweParameters_default_instance_;
+    new (ptr) ::private_membership::rlwe::RlweParameters();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::RlweParameters::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_RlweParameters_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_RlweParameters_private_5fmembership_5frlwe_2eproto}, {
+      &scc_info_Uint128_private_5fmembership_5frlwe_2eproto.base,}};
+
+static void InitDefaultsscc_info_RlwePlaintextId_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_RlwePlaintextId_default_instance_;
+    new (ptr) ::private_membership::rlwe::RlwePlaintextId();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::RlwePlaintextId::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_RlwePlaintextId_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_RlwePlaintextId_private_5fmembership_5frlwe_2eproto}, {}};
+
+static void InitDefaultsscc_info_Uint128_private_5fmembership_5frlwe_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::private_membership::rlwe::_Uint128_default_instance_;
+    new (ptr) ::private_membership::rlwe::Uint128();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::private_membership::rlwe::Uint128::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Uint128_private_5fmembership_5frlwe_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_Uint128_private_5fmembership_5frlwe_2eproto}, {}};
+
+namespace private_membership {
+namespace rlwe {
+bool RlweUseCase_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 5:
+    case 12:
+    case 13:
+    case 14:
+    case 15:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> RlweUseCase_strings[9] = {};
+
+static const char RlweUseCase_names[] =
+  "CROS_DEVICE_SECONDARY_STATE"
+  "CROS_DEVICE_STATE"
+  "CROS_FRESNEL_ALL_TIME"
+  "CROS_FRESNEL_DAILY"
+  "CROS_FRESNEL_MONTHLY"
+  "RLWE_USE_CASE_UNDEFINED"
+  "TEST_USE_CASE"
+  "TEST_USE_CASE2"
+  "TEST_USE_CASE3";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry RlweUseCase_entries[] = {
+  { {RlweUseCase_names + 0, 27}, 12 },
+  { {RlweUseCase_names + 27, 17}, 5 },
+  { {RlweUseCase_names + 44, 21}, 15 },
+  { {RlweUseCase_names + 65, 18}, 13 },
+  { {RlweUseCase_names + 83, 20}, 14 },
+  { {RlweUseCase_names + 103, 23}, 0 },
+  { {RlweUseCase_names + 126, 13}, 1 },
+  { {RlweUseCase_names + 139, 14}, 2 },
+  { {RlweUseCase_names + 153, 14}, 3 },
+};
+
+static const int RlweUseCase_entries_by_number[] = {
+  5, // 0 -> RLWE_USE_CASE_UNDEFINED
+  6, // 1 -> TEST_USE_CASE
+  7, // 2 -> TEST_USE_CASE2
+  8, // 3 -> TEST_USE_CASE3
+  1, // 5 -> CROS_DEVICE_STATE
+  0, // 12 -> CROS_DEVICE_SECONDARY_STATE
+  3, // 13 -> CROS_FRESNEL_DAILY
+  4, // 14 -> CROS_FRESNEL_MONTHLY
+  2, // 15 -> CROS_FRESNEL_ALL_TIME
+};
+
+const std::string& RlweUseCase_Name(
+    RlweUseCase value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          RlweUseCase_entries,
+          RlweUseCase_entries_by_number,
+          9, RlweUseCase_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      RlweUseCase_entries,
+      RlweUseCase_entries_by_number,
+      9, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     RlweUseCase_strings[idx].get();
+}
+bool RlweUseCase_Parse(
+    const std::string& name, RlweUseCase* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      RlweUseCase_entries, 9, name, &int_value);
+  if (success) {
+    *value = static_cast<RlweUseCase>(int_value);
+  }
+  return success;
+}
+
+// ===================================================================
+
+void PrivateMembershipRlweOprfRequest::InitAsDefaultInstance() {
+}
+class PrivateMembershipRlweOprfRequest::_Internal {
+ public:
+};
+
+PrivateMembershipRlweOprfRequest::PrivateMembershipRlweOprfRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+}
+PrivateMembershipRlweOprfRequest::PrivateMembershipRlweOprfRequest(const PrivateMembershipRlweOprfRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      encrypted_ids_(from.encrypted_ids_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  use_case_ = from.use_case_;
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+}
+
+void PrivateMembershipRlweOprfRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateMembershipRlweOprfRequest_private_5fmembership_5frlwe_2eproto.base);
+  use_case_ = 0;
+}
+
+PrivateMembershipRlweOprfRequest::~PrivateMembershipRlweOprfRequest() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+  SharedDtor();
+}
+
+void PrivateMembershipRlweOprfRequest::SharedDtor() {
+}
+
+void PrivateMembershipRlweOprfRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateMembershipRlweOprfRequest& PrivateMembershipRlweOprfRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateMembershipRlweOprfRequest_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateMembershipRlweOprfRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  encrypted_ids_.Clear();
+  use_case_ = 0;
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateMembershipRlweOprfRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated bytes encrypted_ids = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            auto str = _internal_add_encrypted_ids();
+            ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.rlwe.RlweUseCase use_case = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          _internal_set_use_case(static_cast<::private_membership::rlwe::RlweUseCase>(val));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateMembershipRlweOprfRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated bytes encrypted_ids = 1;
+  for (int i = 0, n = this->_internal_encrypted_ids_size(); i < n; i++) {
+    const auto& s = this->_internal_encrypted_ids(i);
+    target = stream->WriteBytes(1, s, target);
+  }
+
+  // .private_membership.rlwe.RlweUseCase use_case = 2;
+  if (this->use_case() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_use_case(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+  return target;
+}
+
+size_t PrivateMembershipRlweOprfRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated bytes encrypted_ids = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(encrypted_ids_.size());
+  for (int i = 0, n = encrypted_ids_.size(); i < n; i++) {
+    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+      encrypted_ids_.Get(i));
+  }
+
+  // .private_membership.rlwe.RlweUseCase use_case = 2;
+  if (this->use_case() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_case());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateMembershipRlweOprfRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateMembershipRlweOprfRequest*>(
+      &from));
+}
+
+void PrivateMembershipRlweOprfRequest::MergeFrom(const PrivateMembershipRlweOprfRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  encrypted_ids_.MergeFrom(from.encrypted_ids_);
+  if (from.use_case() != 0) {
+    _internal_set_use_case(from._internal_use_case());
+  }
+}
+
+void PrivateMembershipRlweOprfRequest::CopyFrom(const PrivateMembershipRlweOprfRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateMembershipRlweOprfRequest::IsInitialized() const {
+  return true;
+}
+
+void PrivateMembershipRlweOprfRequest::InternalSwap(PrivateMembershipRlweOprfRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  encrypted_ids_.InternalSwap(&other->encrypted_ids_);
+  swap(use_case_, other->use_case_);
+}
+
+std::string PrivateMembershipRlweOprfRequest::GetTypeName() const {
+  return "private_membership.rlwe.PrivateMembershipRlweOprfRequest";
+}
+
+
+// ===================================================================
+
+void PrivateMembershipRlweOprfResponse::InitAsDefaultInstance() {
+  ::private_membership::rlwe::_PrivateMembershipRlweOprfResponse_default_instance_._instance.get_mutable()->hashed_buckets_parameters_ = const_cast< ::private_membership::rlwe::HashedBucketsParameters*>(
+      ::private_membership::rlwe::HashedBucketsParameters::internal_default_instance());
+  ::private_membership::rlwe::_PrivateMembershipRlweOprfResponse_default_instance_._instance.get_mutable()->encrypted_buckets_parameters_ = const_cast< ::private_membership::rlwe::EncryptedBucketsParameters*>(
+      ::private_membership::rlwe::EncryptedBucketsParameters::internal_default_instance());
+  ::private_membership::rlwe::_PrivateMembershipRlweOprfResponse_default_instance_._instance.get_mutable()->rlwe_parameters_ = const_cast< ::private_membership::rlwe::RlweParameters*>(
+      ::private_membership::rlwe::RlweParameters::internal_default_instance());
+}
+class PrivateMembershipRlweOprfResponse::_Internal {
+ public:
+  static const ::private_membership::rlwe::HashedBucketsParameters& hashed_buckets_parameters(const PrivateMembershipRlweOprfResponse* msg);
+  static const ::private_membership::rlwe::EncryptedBucketsParameters& encrypted_buckets_parameters(const PrivateMembershipRlweOprfResponse* msg);
+  static const ::private_membership::rlwe::RlweParameters& rlwe_parameters(const PrivateMembershipRlweOprfResponse* msg);
+};
+
+const ::private_membership::rlwe::HashedBucketsParameters&
+PrivateMembershipRlweOprfResponse::_Internal::hashed_buckets_parameters(const PrivateMembershipRlweOprfResponse* msg) {
+  return *msg->hashed_buckets_parameters_;
+}
+const ::private_membership::rlwe::EncryptedBucketsParameters&
+PrivateMembershipRlweOprfResponse::_Internal::encrypted_buckets_parameters(const PrivateMembershipRlweOprfResponse* msg) {
+  return *msg->encrypted_buckets_parameters_;
+}
+const ::private_membership::rlwe::RlweParameters&
+PrivateMembershipRlweOprfResponse::_Internal::rlwe_parameters(const PrivateMembershipRlweOprfResponse* msg) {
+  return *msg->rlwe_parameters_;
+}
+void PrivateMembershipRlweOprfResponse::clear_doubly_encrypted_ids() {
+  doubly_encrypted_ids_.Clear();
+}
+PrivateMembershipRlweOprfResponse::PrivateMembershipRlweOprfResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+}
+PrivateMembershipRlweOprfResponse::PrivateMembershipRlweOprfResponse(const PrivateMembershipRlweOprfResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      doubly_encrypted_ids_(from.doubly_encrypted_ids_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_hashed_buckets_parameters()) {
+    hashed_buckets_parameters_ = new ::private_membership::rlwe::HashedBucketsParameters(*from.hashed_buckets_parameters_);
+  } else {
+    hashed_buckets_parameters_ = nullptr;
+  }
+  if (from._internal_has_encrypted_buckets_parameters()) {
+    encrypted_buckets_parameters_ = new ::private_membership::rlwe::EncryptedBucketsParameters(*from.encrypted_buckets_parameters_);
+  } else {
+    encrypted_buckets_parameters_ = nullptr;
+  }
+  if (from._internal_has_rlwe_parameters()) {
+    rlwe_parameters_ = new ::private_membership::rlwe::RlweParameters(*from.rlwe_parameters_);
+  } else {
+    rlwe_parameters_ = nullptr;
+  }
+  key_version_ = from.key_version_;
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+}
+
+void PrivateMembershipRlweOprfResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateMembershipRlweOprfResponse_private_5fmembership_5frlwe_2eproto.base);
+  ::memset(&hashed_buckets_parameters_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&key_version_) -
+      reinterpret_cast<char*>(&hashed_buckets_parameters_)) + sizeof(key_version_));
+}
+
+PrivateMembershipRlweOprfResponse::~PrivateMembershipRlweOprfResponse() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+  SharedDtor();
+}
+
+void PrivateMembershipRlweOprfResponse::SharedDtor() {
+  if (this != internal_default_instance()) delete hashed_buckets_parameters_;
+  if (this != internal_default_instance()) delete encrypted_buckets_parameters_;
+  if (this != internal_default_instance()) delete rlwe_parameters_;
+}
+
+void PrivateMembershipRlweOprfResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateMembershipRlweOprfResponse& PrivateMembershipRlweOprfResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateMembershipRlweOprfResponse_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateMembershipRlweOprfResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  doubly_encrypted_ids_.Clear();
+  if (GetArenaNoVirtual() == nullptr && hashed_buckets_parameters_ != nullptr) {
+    delete hashed_buckets_parameters_;
+  }
+  hashed_buckets_parameters_ = nullptr;
+  if (GetArenaNoVirtual() == nullptr && encrypted_buckets_parameters_ != nullptr) {
+    delete encrypted_buckets_parameters_;
+  }
+  encrypted_buckets_parameters_ = nullptr;
+  if (GetArenaNoVirtual() == nullptr && rlwe_parameters_ != nullptr) {
+    delete rlwe_parameters_;
+  }
+  rlwe_parameters_ = nullptr;
+  key_version_ = PROTOBUF_LONGLONG(0);
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateMembershipRlweOprfResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .private_membership.DoublyEncryptedId doubly_encrypted_ids = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_doubly_encrypted_ids(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.rlwe.HashedBucketsParameters hashed_buckets_parameters = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_hashed_buckets_parameters(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.rlwe.EncryptedBucketsParameters encrypted_buckets_parameters = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_encrypted_buckets_parameters(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.rlwe.RlweParameters rlwe_parameters = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_rlwe_parameters(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // int64 key_version = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          key_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateMembershipRlweOprfResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .private_membership.DoublyEncryptedId doubly_encrypted_ids = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_doubly_encrypted_ids_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_doubly_encrypted_ids(i), target, stream);
+  }
+
+  // .private_membership.rlwe.HashedBucketsParameters hashed_buckets_parameters = 2;
+  if (this->has_hashed_buckets_parameters()) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::hashed_buckets_parameters(this), target, stream);
+  }
+
+  // .private_membership.rlwe.EncryptedBucketsParameters encrypted_buckets_parameters = 3;
+  if (this->has_encrypted_buckets_parameters()) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::encrypted_buckets_parameters(this), target, stream);
+  }
+
+  // .private_membership.rlwe.RlweParameters rlwe_parameters = 4;
+  if (this->has_rlwe_parameters()) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::rlwe_parameters(this), target, stream);
+  }
+
+  // int64 key_version = 5;
+  if (this->key_version() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(5, this->_internal_key_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+  return target;
+}
+
+size_t PrivateMembershipRlweOprfResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .private_membership.DoublyEncryptedId doubly_encrypted_ids = 1;
+  total_size += 1UL * this->_internal_doubly_encrypted_ids_size();
+  for (const auto& msg : this->doubly_encrypted_ids_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // .private_membership.rlwe.HashedBucketsParameters hashed_buckets_parameters = 2;
+  if (this->has_hashed_buckets_parameters()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *hashed_buckets_parameters_);
+  }
+
+  // .private_membership.rlwe.EncryptedBucketsParameters encrypted_buckets_parameters = 3;
+  if (this->has_encrypted_buckets_parameters()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *encrypted_buckets_parameters_);
+  }
+
+  // .private_membership.rlwe.RlweParameters rlwe_parameters = 4;
+  if (this->has_rlwe_parameters()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *rlwe_parameters_);
+  }
+
+  // int64 key_version = 5;
+  if (this->key_version() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+        this->_internal_key_version());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateMembershipRlweOprfResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateMembershipRlweOprfResponse*>(
+      &from));
+}
+
+void PrivateMembershipRlweOprfResponse::MergeFrom(const PrivateMembershipRlweOprfResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  doubly_encrypted_ids_.MergeFrom(from.doubly_encrypted_ids_);
+  if (from.has_hashed_buckets_parameters()) {
+    _internal_mutable_hashed_buckets_parameters()->::private_membership::rlwe::HashedBucketsParameters::MergeFrom(from._internal_hashed_buckets_parameters());
+  }
+  if (from.has_encrypted_buckets_parameters()) {
+    _internal_mutable_encrypted_buckets_parameters()->::private_membership::rlwe::EncryptedBucketsParameters::MergeFrom(from._internal_encrypted_buckets_parameters());
+  }
+  if (from.has_rlwe_parameters()) {
+    _internal_mutable_rlwe_parameters()->::private_membership::rlwe::RlweParameters::MergeFrom(from._internal_rlwe_parameters());
+  }
+  if (from.key_version() != 0) {
+    _internal_set_key_version(from._internal_key_version());
+  }
+}
+
+void PrivateMembershipRlweOprfResponse::CopyFrom(const PrivateMembershipRlweOprfResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateMembershipRlweOprfResponse::IsInitialized() const {
+  return true;
+}
+
+void PrivateMembershipRlweOprfResponse::InternalSwap(PrivateMembershipRlweOprfResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  doubly_encrypted_ids_.InternalSwap(&other->doubly_encrypted_ids_);
+  swap(hashed_buckets_parameters_, other->hashed_buckets_parameters_);
+  swap(encrypted_buckets_parameters_, other->encrypted_buckets_parameters_);
+  swap(rlwe_parameters_, other->rlwe_parameters_);
+  swap(key_version_, other->key_version_);
+}
+
+std::string PrivateMembershipRlweOprfResponse::GetTypeName() const {
+  return "private_membership.rlwe.PrivateMembershipRlweOprfResponse";
+}
+
+
+// ===================================================================
+
+void PrivateMembershipRlweQueryRequest::InitAsDefaultInstance() {
+}
+class PrivateMembershipRlweQueryRequest::_Internal {
+ public:
+};
+
+PrivateMembershipRlweQueryRequest::PrivateMembershipRlweQueryRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+}
+PrivateMembershipRlweQueryRequest::PrivateMembershipRlweQueryRequest(const PrivateMembershipRlweQueryRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      queries_(from.queries_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&key_version_, &from.key_version_,
+    static_cast<size_t>(reinterpret_cast<char*>(&use_case_) -
+    reinterpret_cast<char*>(&key_version_)) + sizeof(use_case_));
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+}
+
+void PrivateMembershipRlweQueryRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateMembershipRlweQueryRequest_private_5fmembership_5frlwe_2eproto.base);
+  ::memset(&key_version_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&use_case_) -
+      reinterpret_cast<char*>(&key_version_)) + sizeof(use_case_));
+}
+
+PrivateMembershipRlweQueryRequest::~PrivateMembershipRlweQueryRequest() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+  SharedDtor();
+}
+
+void PrivateMembershipRlweQueryRequest::SharedDtor() {
+}
+
+void PrivateMembershipRlweQueryRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateMembershipRlweQueryRequest& PrivateMembershipRlweQueryRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateMembershipRlweQueryRequest_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateMembershipRlweQueryRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  queries_.Clear();
+  ::memset(&key_version_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&use_case_) -
+      reinterpret_cast<char*>(&key_version_)) + sizeof(use_case_));
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateMembershipRlweQueryRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .private_membership.rlwe.PrivateMembershipRlweQuery queries = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_queries(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.rlwe.RlweUseCase use_case = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          _internal_set_use_case(static_cast<::private_membership::rlwe::RlweUseCase>(val));
+        } else goto handle_unusual;
+        continue;
+      // int64 key_version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          key_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateMembershipRlweQueryRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.PrivateMembershipRlweQuery queries = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_queries_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_queries(i), target, stream);
+  }
+
+  // .private_membership.rlwe.RlweUseCase use_case = 2;
+  if (this->use_case() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_use_case(), target);
+  }
+
+  // int64 key_version = 3;
+  if (this->key_version() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_key_version(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+  return target;
+}
+
+size_t PrivateMembershipRlweQueryRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.PrivateMembershipRlweQuery queries = 1;
+  total_size += 1UL * this->_internal_queries_size();
+  for (const auto& msg : this->queries_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // int64 key_version = 3;
+  if (this->key_version() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+        this->_internal_key_version());
+  }
+
+  // .private_membership.rlwe.RlweUseCase use_case = 2;
+  if (this->use_case() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_use_case());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateMembershipRlweQueryRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateMembershipRlweQueryRequest*>(
+      &from));
+}
+
+void PrivateMembershipRlweQueryRequest::MergeFrom(const PrivateMembershipRlweQueryRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  queries_.MergeFrom(from.queries_);
+  if (from.key_version() != 0) {
+    _internal_set_key_version(from._internal_key_version());
+  }
+  if (from.use_case() != 0) {
+    _internal_set_use_case(from._internal_use_case());
+  }
+}
+
+void PrivateMembershipRlweQueryRequest::CopyFrom(const PrivateMembershipRlweQueryRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateMembershipRlweQueryRequest::IsInitialized() const {
+  return true;
+}
+
+void PrivateMembershipRlweQueryRequest::InternalSwap(PrivateMembershipRlweQueryRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  queries_.InternalSwap(&other->queries_);
+  swap(key_version_, other->key_version_);
+  swap(use_case_, other->use_case_);
+}
+
+std::string PrivateMembershipRlweQueryRequest::GetTypeName() const {
+  return "private_membership.rlwe.PrivateMembershipRlweQueryRequest";
+}
+
+
+// ===================================================================
+
+void PrivateMembershipRlweQueryResponse::InitAsDefaultInstance() {
+}
+class PrivateMembershipRlweQueryResponse::_Internal {
+ public:
+};
+
+PrivateMembershipRlweQueryResponse::PrivateMembershipRlweQueryResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+}
+PrivateMembershipRlweQueryResponse::PrivateMembershipRlweQueryResponse(const PrivateMembershipRlweQueryResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      pir_responses_(from.pir_responses_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+}
+
+void PrivateMembershipRlweQueryResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateMembershipRlweQueryResponse_private_5fmembership_5frlwe_2eproto.base);
+}
+
+PrivateMembershipRlweQueryResponse::~PrivateMembershipRlweQueryResponse() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+  SharedDtor();
+}
+
+void PrivateMembershipRlweQueryResponse::SharedDtor() {
+}
+
+void PrivateMembershipRlweQueryResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateMembershipRlweQueryResponse& PrivateMembershipRlweQueryResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateMembershipRlweQueryResponse_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateMembershipRlweQueryResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  pir_responses_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateMembershipRlweQueryResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .private_membership.rlwe.PrivateMembershipRlwePirResponse pir_responses = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_pir_responses(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateMembershipRlweQueryResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.PrivateMembershipRlwePirResponse pir_responses = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_pir_responses_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_pir_responses(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+  return target;
+}
+
+size_t PrivateMembershipRlweQueryResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.PrivateMembershipRlwePirResponse pir_responses = 1;
+  total_size += 1UL * this->_internal_pir_responses_size();
+  for (const auto& msg : this->pir_responses_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateMembershipRlweQueryResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateMembershipRlweQueryResponse*>(
+      &from));
+}
+
+void PrivateMembershipRlweQueryResponse::MergeFrom(const PrivateMembershipRlweQueryResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  pir_responses_.MergeFrom(from.pir_responses_);
+}
+
+void PrivateMembershipRlweQueryResponse::CopyFrom(const PrivateMembershipRlweQueryResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateMembershipRlweQueryResponse::IsInitialized() const {
+  return true;
+}
+
+void PrivateMembershipRlweQueryResponse::InternalSwap(PrivateMembershipRlweQueryResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  pir_responses_.InternalSwap(&other->pir_responses_);
+}
+
+std::string PrivateMembershipRlweQueryResponse::GetTypeName() const {
+  return "private_membership.rlwe.PrivateMembershipRlweQueryResponse";
+}
+
+
+// ===================================================================
+
+void RlwePlaintextId::InitAsDefaultInstance() {
+}
+class RlwePlaintextId::_Internal {
+ public:
+};
+
+RlwePlaintextId::RlwePlaintextId()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.RlwePlaintextId)
+}
+RlwePlaintextId::RlwePlaintextId(const RlwePlaintextId& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  non_sensitive_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_non_sensitive_id().empty()) {
+    non_sensitive_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.non_sensitive_id_);
+  }
+  sensitive_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_sensitive_id().empty()) {
+    sensitive_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sensitive_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.RlwePlaintextId)
+}
+
+void RlwePlaintextId::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RlwePlaintextId_private_5fmembership_5frlwe_2eproto.base);
+  non_sensitive_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  sensitive_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+RlwePlaintextId::~RlwePlaintextId() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.RlwePlaintextId)
+  SharedDtor();
+}
+
+void RlwePlaintextId::SharedDtor() {
+  non_sensitive_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  sensitive_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void RlwePlaintextId::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RlwePlaintextId& RlwePlaintextId::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RlwePlaintextId_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RlwePlaintextId::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.RlwePlaintextId)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  non_sensitive_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  sensitive_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _internal_metadata_.Clear();
+}
+
+const char* RlwePlaintextId::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // string non_sensitive_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_non_sensitive_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, nullptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // string sensitive_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_sensitive_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, nullptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RlwePlaintextId::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.RlwePlaintextId)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // string non_sensitive_id = 1;
+  if (this->non_sensitive_id().size() > 0) {
+    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
+      this->_internal_non_sensitive_id().data(), static_cast<int>(this->_internal_non_sensitive_id().length()),
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
+      "private_membership.rlwe.RlwePlaintextId.non_sensitive_id");
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_non_sensitive_id(), target);
+  }
+
+  // string sensitive_id = 2;
+  if (this->sensitive_id().size() > 0) {
+    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
+      this->_internal_sensitive_id().data(), static_cast<int>(this->_internal_sensitive_id().length()),
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
+      "private_membership.rlwe.RlwePlaintextId.sensitive_id");
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_sensitive_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.RlwePlaintextId)
+  return target;
+}
+
+size_t RlwePlaintextId::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.RlwePlaintextId)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // string non_sensitive_id = 1;
+  if (this->non_sensitive_id().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_non_sensitive_id());
+  }
+
+  // string sensitive_id = 2;
+  if (this->sensitive_id().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_sensitive_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RlwePlaintextId::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RlwePlaintextId*>(
+      &from));
+}
+
+void RlwePlaintextId::MergeFrom(const RlwePlaintextId& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.RlwePlaintextId)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.non_sensitive_id().size() > 0) {
+
+    non_sensitive_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.non_sensitive_id_);
+  }
+  if (from.sensitive_id().size() > 0) {
+
+    sensitive_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.sensitive_id_);
+  }
+}
+
+void RlwePlaintextId::CopyFrom(const RlwePlaintextId& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.RlwePlaintextId)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RlwePlaintextId::IsInitialized() const {
+  return true;
+}
+
+void RlwePlaintextId::InternalSwap(RlwePlaintextId* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  non_sensitive_id_.Swap(&other->non_sensitive_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  sensitive_id_.Swap(&other->sensitive_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string RlwePlaintextId::GetTypeName() const {
+  return "private_membership.rlwe.RlwePlaintextId";
+}
+
+
+// ===================================================================
+
+void HashedBucketsParameters::InitAsDefaultInstance() {
+}
+class HashedBucketsParameters::_Internal {
+ public:
+};
+
+HashedBucketsParameters::HashedBucketsParameters()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.HashedBucketsParameters)
+}
+HashedBucketsParameters::HashedBucketsParameters(const HashedBucketsParameters& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&hashed_bucket_id_length_, &from.hashed_bucket_id_length_,
+    static_cast<size_t>(reinterpret_cast<char*>(&non_sensitive_id_hash_type_) -
+    reinterpret_cast<char*>(&hashed_bucket_id_length_)) + sizeof(non_sensitive_id_hash_type_));
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.HashedBucketsParameters)
+}
+
+void HashedBucketsParameters::SharedCtor() {
+  ::memset(&hashed_bucket_id_length_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&non_sensitive_id_hash_type_) -
+      reinterpret_cast<char*>(&hashed_bucket_id_length_)) + sizeof(non_sensitive_id_hash_type_));
+}
+
+HashedBucketsParameters::~HashedBucketsParameters() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.HashedBucketsParameters)
+  SharedDtor();
+}
+
+void HashedBucketsParameters::SharedDtor() {
+}
+
+void HashedBucketsParameters::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const HashedBucketsParameters& HashedBucketsParameters::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_HashedBucketsParameters_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void HashedBucketsParameters::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.HashedBucketsParameters)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  ::memset(&hashed_bucket_id_length_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&non_sensitive_id_hash_type_) -
+      reinterpret_cast<char*>(&hashed_bucket_id_length_)) + sizeof(non_sensitive_id_hash_type_));
+  _internal_metadata_.Clear();
+}
+
+const char* HashedBucketsParameters::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // int32 hashed_bucket_id_length = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          hashed_bucket_id_length_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.HashType non_sensitive_id_hash_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          _internal_set_non_sensitive_id_hash_type(static_cast<::private_membership::HashType>(val));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* HashedBucketsParameters::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.HashedBucketsParameters)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // int32 hashed_bucket_id_length = 1;
+  if (this->hashed_bucket_id_length() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_hashed_bucket_id_length(), target);
+  }
+
+  // .private_membership.HashType non_sensitive_id_hash_type = 2;
+  if (this->non_sensitive_id_hash_type() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_non_sensitive_id_hash_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.HashedBucketsParameters)
+  return target;
+}
+
+size_t HashedBucketsParameters::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.HashedBucketsParameters)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // int32 hashed_bucket_id_length = 1;
+  if (this->hashed_bucket_id_length() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_hashed_bucket_id_length());
+  }
+
+  // .private_membership.HashType non_sensitive_id_hash_type = 2;
+  if (this->non_sensitive_id_hash_type() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_non_sensitive_id_hash_type());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void HashedBucketsParameters::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const HashedBucketsParameters*>(
+      &from));
+}
+
+void HashedBucketsParameters::MergeFrom(const HashedBucketsParameters& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.HashedBucketsParameters)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.hashed_bucket_id_length() != 0) {
+    _internal_set_hashed_bucket_id_length(from._internal_hashed_bucket_id_length());
+  }
+  if (from.non_sensitive_id_hash_type() != 0) {
+    _internal_set_non_sensitive_id_hash_type(from._internal_non_sensitive_id_hash_type());
+  }
+}
+
+void HashedBucketsParameters::CopyFrom(const HashedBucketsParameters& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.HashedBucketsParameters)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool HashedBucketsParameters::IsInitialized() const {
+  return true;
+}
+
+void HashedBucketsParameters::InternalSwap(HashedBucketsParameters* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(hashed_bucket_id_length_, other->hashed_bucket_id_length_);
+  swap(non_sensitive_id_hash_type_, other->non_sensitive_id_hash_type_);
+}
+
+std::string HashedBucketsParameters::GetTypeName() const {
+  return "private_membership.rlwe.HashedBucketsParameters";
+}
+
+
+// ===================================================================
+
+void EncryptedBucketsParameters::InitAsDefaultInstance() {
+}
+class EncryptedBucketsParameters::_Internal {
+ public:
+};
+
+EncryptedBucketsParameters::EncryptedBucketsParameters()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.EncryptedBucketsParameters)
+}
+EncryptedBucketsParameters::EncryptedBucketsParameters(const EncryptedBucketsParameters& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&encrypted_bucket_id_length_, &from.encrypted_bucket_id_length_,
+    static_cast<size_t>(reinterpret_cast<char*>(&sensitive_id_hash_type_) -
+    reinterpret_cast<char*>(&encrypted_bucket_id_length_)) + sizeof(sensitive_id_hash_type_));
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.EncryptedBucketsParameters)
+}
+
+void EncryptedBucketsParameters::SharedCtor() {
+  ::memset(&encrypted_bucket_id_length_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&sensitive_id_hash_type_) -
+      reinterpret_cast<char*>(&encrypted_bucket_id_length_)) + sizeof(sensitive_id_hash_type_));
+}
+
+EncryptedBucketsParameters::~EncryptedBucketsParameters() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.EncryptedBucketsParameters)
+  SharedDtor();
+}
+
+void EncryptedBucketsParameters::SharedDtor() {
+}
+
+void EncryptedBucketsParameters::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const EncryptedBucketsParameters& EncryptedBucketsParameters::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_EncryptedBucketsParameters_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void EncryptedBucketsParameters::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.EncryptedBucketsParameters)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  ::memset(&encrypted_bucket_id_length_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&sensitive_id_hash_type_) -
+      reinterpret_cast<char*>(&encrypted_bucket_id_length_)) + sizeof(sensitive_id_hash_type_));
+  _internal_metadata_.Clear();
+}
+
+const char* EncryptedBucketsParameters::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // int32 encrypted_bucket_id_length = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          encrypted_bucket_id_length_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.EncryptedBucketHashType sensitive_id_hash_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          _internal_set_sensitive_id_hash_type(static_cast<::private_membership::EncryptedBucketHashType>(val));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* EncryptedBucketsParameters::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.EncryptedBucketsParameters)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // int32 encrypted_bucket_id_length = 1;
+  if (this->encrypted_bucket_id_length() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_encrypted_bucket_id_length(), target);
+  }
+
+  // .private_membership.EncryptedBucketHashType sensitive_id_hash_type = 2;
+  if (this->sensitive_id_hash_type() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_sensitive_id_hash_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.EncryptedBucketsParameters)
+  return target;
+}
+
+size_t EncryptedBucketsParameters::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.EncryptedBucketsParameters)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // int32 encrypted_bucket_id_length = 1;
+  if (this->encrypted_bucket_id_length() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_encrypted_bucket_id_length());
+  }
+
+  // .private_membership.EncryptedBucketHashType sensitive_id_hash_type = 2;
+  if (this->sensitive_id_hash_type() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_sensitive_id_hash_type());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void EncryptedBucketsParameters::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const EncryptedBucketsParameters*>(
+      &from));
+}
+
+void EncryptedBucketsParameters::MergeFrom(const EncryptedBucketsParameters& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.EncryptedBucketsParameters)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.encrypted_bucket_id_length() != 0) {
+    _internal_set_encrypted_bucket_id_length(from._internal_encrypted_bucket_id_length());
+  }
+  if (from.sensitive_id_hash_type() != 0) {
+    _internal_set_sensitive_id_hash_type(from._internal_sensitive_id_hash_type());
+  }
+}
+
+void EncryptedBucketsParameters::CopyFrom(const EncryptedBucketsParameters& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.EncryptedBucketsParameters)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool EncryptedBucketsParameters::IsInitialized() const {
+  return true;
+}
+
+void EncryptedBucketsParameters::InternalSwap(EncryptedBucketsParameters* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(encrypted_bucket_id_length_, other->encrypted_bucket_id_length_);
+  swap(sensitive_id_hash_type_, other->sensitive_id_hash_type_);
+}
+
+std::string EncryptedBucketsParameters::GetTypeName() const {
+  return "private_membership.rlwe.EncryptedBucketsParameters";
+}
+
+
+// ===================================================================
+
+void RlweParameters::InitAsDefaultInstance() {
+}
+class RlweParameters::_Internal {
+ public:
+};
+
+RlweParameters::RlweParameters()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.RlweParameters)
+}
+RlweParameters::RlweParameters(const RlweParameters& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      modulus_(from.modulus_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&log_degree_, &from.log_degree_,
+    static_cast<size_t>(reinterpret_cast<char*>(&levels_of_recursion_) -
+    reinterpret_cast<char*>(&log_degree_)) + sizeof(levels_of_recursion_));
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.RlweParameters)
+}
+
+void RlweParameters::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RlweParameters_private_5fmembership_5frlwe_2eproto.base);
+  ::memset(&log_degree_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&levels_of_recursion_) -
+      reinterpret_cast<char*>(&log_degree_)) + sizeof(levels_of_recursion_));
+}
+
+RlweParameters::~RlweParameters() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.RlweParameters)
+  SharedDtor();
+}
+
+void RlweParameters::SharedDtor() {
+}
+
+void RlweParameters::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RlweParameters& RlweParameters::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RlweParameters_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RlweParameters::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.RlweParameters)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  modulus_.Clear();
+  ::memset(&log_degree_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&levels_of_recursion_) -
+      reinterpret_cast<char*>(&log_degree_)) + sizeof(levels_of_recursion_));
+  _internal_metadata_.Clear();
+}
+
+const char* RlweParameters::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .private_membership.rlwe.Uint128 modulus = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_modulus(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // int32 log_degree = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          log_degree_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // int32 log_t = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          log_t_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // int32 variance = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          variance_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // int32 levels_of_recursion = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          levels_of_recursion_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RlweParameters::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.RlweParameters)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.Uint128 modulus = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_modulus_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_modulus(i), target, stream);
+  }
+
+  // int32 log_degree = 2;
+  if (this->log_degree() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_log_degree(), target);
+  }
+
+  // int32 log_t = 3;
+  if (this->log_t() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_log_t(), target);
+  }
+
+  // int32 variance = 4;
+  if (this->variance() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_variance(), target);
+  }
+
+  // int32 levels_of_recursion = 5;
+  if (this->levels_of_recursion() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_levels_of_recursion(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.RlweParameters)
+  return target;
+}
+
+size_t RlweParameters::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.RlweParameters)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.Uint128 modulus = 1;
+  total_size += 1UL * this->_internal_modulus_size();
+  for (const auto& msg : this->modulus_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // int32 log_degree = 2;
+  if (this->log_degree() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_log_degree());
+  }
+
+  // int32 log_t = 3;
+  if (this->log_t() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_log_t());
+  }
+
+  // int32 variance = 4;
+  if (this->variance() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_variance());
+  }
+
+  // int32 levels_of_recursion = 5;
+  if (this->levels_of_recursion() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_levels_of_recursion());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RlweParameters::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RlweParameters*>(
+      &from));
+}
+
+void RlweParameters::MergeFrom(const RlweParameters& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.RlweParameters)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  modulus_.MergeFrom(from.modulus_);
+  if (from.log_degree() != 0) {
+    _internal_set_log_degree(from._internal_log_degree());
+  }
+  if (from.log_t() != 0) {
+    _internal_set_log_t(from._internal_log_t());
+  }
+  if (from.variance() != 0) {
+    _internal_set_variance(from._internal_variance());
+  }
+  if (from.levels_of_recursion() != 0) {
+    _internal_set_levels_of_recursion(from._internal_levels_of_recursion());
+  }
+}
+
+void RlweParameters::CopyFrom(const RlweParameters& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.RlweParameters)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RlweParameters::IsInitialized() const {
+  return true;
+}
+
+void RlweParameters::InternalSwap(RlweParameters* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  modulus_.InternalSwap(&other->modulus_);
+  swap(log_degree_, other->log_degree_);
+  swap(log_t_, other->log_t_);
+  swap(variance_, other->variance_);
+  swap(levels_of_recursion_, other->levels_of_recursion_);
+}
+
+std::string RlweParameters::GetTypeName() const {
+  return "private_membership.rlwe.RlweParameters";
+}
+
+
+// ===================================================================
+
+void Uint128::InitAsDefaultInstance() {
+}
+class Uint128::_Internal {
+ public:
+};
+
+Uint128::Uint128()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.Uint128)
+}
+Uint128::Uint128(const Uint128& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&lo_, &from.lo_,
+    static_cast<size_t>(reinterpret_cast<char*>(&hi_) -
+    reinterpret_cast<char*>(&lo_)) + sizeof(hi_));
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.Uint128)
+}
+
+void Uint128::SharedCtor() {
+  ::memset(&lo_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&hi_) -
+      reinterpret_cast<char*>(&lo_)) + sizeof(hi_));
+}
+
+Uint128::~Uint128() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.Uint128)
+  SharedDtor();
+}
+
+void Uint128::SharedDtor() {
+}
+
+void Uint128::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const Uint128& Uint128::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_Uint128_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void Uint128::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.Uint128)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  ::memset(&lo_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&hi_) -
+      reinterpret_cast<char*>(&lo_)) + sizeof(hi_));
+  _internal_metadata_.Clear();
+}
+
+const char* Uint128::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // uint64 lo = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          lo_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // uint64 hi = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          hi_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* Uint128::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.Uint128)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // uint64 lo = 1;
+  if (this->lo() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(1, this->_internal_lo(), target);
+  }
+
+  // uint64 hi = 2;
+  if (this->hi() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(2, this->_internal_hi(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.Uint128)
+  return target;
+}
+
+size_t Uint128::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.Uint128)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // uint64 lo = 1;
+  if (this->lo() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+        this->_internal_lo());
+  }
+
+  // uint64 hi = 2;
+  if (this->hi() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
+        this->_internal_hi());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void Uint128::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const Uint128*>(
+      &from));
+}
+
+void Uint128::MergeFrom(const Uint128& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.Uint128)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.lo() != 0) {
+    _internal_set_lo(from._internal_lo());
+  }
+  if (from.hi() != 0) {
+    _internal_set_hi(from._internal_hi());
+  }
+}
+
+void Uint128::CopyFrom(const Uint128& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.Uint128)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool Uint128::IsInitialized() const {
+  return true;
+}
+
+void Uint128::InternalSwap(Uint128* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(lo_, other->lo_);
+  swap(hi_, other->hi_);
+}
+
+std::string Uint128::GetTypeName() const {
+  return "private_membership.rlwe.Uint128";
+}
+
+
+// ===================================================================
+
+void PrivateMembershipRlweQuery_HashedBucketId::InitAsDefaultInstance() {
+}
+class PrivateMembershipRlweQuery_HashedBucketId::_Internal {
+ public:
+};
+
+PrivateMembershipRlweQuery_HashedBucketId::PrivateMembershipRlweQuery_HashedBucketId()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+}
+PrivateMembershipRlweQuery_HashedBucketId::PrivateMembershipRlweQuery_HashedBucketId(const PrivateMembershipRlweQuery_HashedBucketId& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  hashed_bucket_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_hashed_bucket_id().empty()) {
+    hashed_bucket_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.hashed_bucket_id_);
+  }
+  bit_length_ = from.bit_length_;
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+}
+
+void PrivateMembershipRlweQuery_HashedBucketId::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateMembershipRlweQuery_HashedBucketId_private_5fmembership_5frlwe_2eproto.base);
+  hashed_bucket_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  bit_length_ = 0;
+}
+
+PrivateMembershipRlweQuery_HashedBucketId::~PrivateMembershipRlweQuery_HashedBucketId() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+  SharedDtor();
+}
+
+void PrivateMembershipRlweQuery_HashedBucketId::SharedDtor() {
+  hashed_bucket_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PrivateMembershipRlweQuery_HashedBucketId::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateMembershipRlweQuery_HashedBucketId& PrivateMembershipRlweQuery_HashedBucketId::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateMembershipRlweQuery_HashedBucketId_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateMembershipRlweQuery_HashedBucketId::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  hashed_bucket_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  bit_length_ = 0;
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateMembershipRlweQuery_HashedBucketId::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // bytes hashed_bucket_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_hashed_bucket_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // int32 bit_length = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          bit_length_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateMembershipRlweQuery_HashedBucketId::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // bytes hashed_bucket_id = 1;
+  if (this->hashed_bucket_id().size() > 0) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_hashed_bucket_id(), target);
+  }
+
+  // int32 bit_length = 2;
+  if (this->bit_length() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_bit_length(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+  return target;
+}
+
+size_t PrivateMembershipRlweQuery_HashedBucketId::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // bytes hashed_bucket_id = 1;
+  if (this->hashed_bucket_id().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_hashed_bucket_id());
+  }
+
+  // int32 bit_length = 2;
+  if (this->bit_length() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_bit_length());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateMembershipRlweQuery_HashedBucketId::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateMembershipRlweQuery_HashedBucketId*>(
+      &from));
+}
+
+void PrivateMembershipRlweQuery_HashedBucketId::MergeFrom(const PrivateMembershipRlweQuery_HashedBucketId& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.hashed_bucket_id().size() > 0) {
+
+    hashed_bucket_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.hashed_bucket_id_);
+  }
+  if (from.bit_length() != 0) {
+    _internal_set_bit_length(from._internal_bit_length());
+  }
+}
+
+void PrivateMembershipRlweQuery_HashedBucketId::CopyFrom(const PrivateMembershipRlweQuery_HashedBucketId& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateMembershipRlweQuery_HashedBucketId::IsInitialized() const {
+  return true;
+}
+
+void PrivateMembershipRlweQuery_HashedBucketId::InternalSwap(PrivateMembershipRlweQuery_HashedBucketId* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  hashed_bucket_id_.Swap(&other->hashed_bucket_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(bit_length_, other->bit_length_);
+}
+
+std::string PrivateMembershipRlweQuery_HashedBucketId::GetTypeName() const {
+  return "private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId";
+}
+
+
+// ===================================================================
+
+void PrivateMembershipRlweQuery::InitAsDefaultInstance() {
+  ::private_membership::rlwe::_PrivateMembershipRlweQuery_default_instance_._instance.get_mutable()->pir_request_ = const_cast< ::private_membership::rlwe::PirRequest*>(
+      ::private_membership::rlwe::PirRequest::internal_default_instance());
+  ::private_membership::rlwe::_PrivateMembershipRlweQuery_default_instance_._instance.get_mutable()->hashed_bucket_id_ = const_cast< ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId*>(
+      ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId::internal_default_instance());
+}
+class PrivateMembershipRlweQuery::_Internal {
+ public:
+  static const ::private_membership::rlwe::PirRequest& pir_request(const PrivateMembershipRlweQuery* msg);
+  static const ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId& hashed_bucket_id(const PrivateMembershipRlweQuery* msg);
+};
+
+const ::private_membership::rlwe::PirRequest&
+PrivateMembershipRlweQuery::_Internal::pir_request(const PrivateMembershipRlweQuery* msg) {
+  return *msg->pir_request_;
+}
+const ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId&
+PrivateMembershipRlweQuery::_Internal::hashed_bucket_id(const PrivateMembershipRlweQuery* msg) {
+  return *msg->hashed_bucket_id_;
+}
+PrivateMembershipRlweQuery::PrivateMembershipRlweQuery()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PrivateMembershipRlweQuery)
+}
+PrivateMembershipRlweQuery::PrivateMembershipRlweQuery(const PrivateMembershipRlweQuery& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  queried_encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_queried_encrypted_id().empty()) {
+    queried_encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.queried_encrypted_id_);
+  }
+  if (from._internal_has_pir_request()) {
+    pir_request_ = new ::private_membership::rlwe::PirRequest(*from.pir_request_);
+  } else {
+    pir_request_ = nullptr;
+  }
+  if (from._internal_has_hashed_bucket_id()) {
+    hashed_bucket_id_ = new ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId(*from.hashed_bucket_id_);
+  } else {
+    hashed_bucket_id_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PrivateMembershipRlweQuery)
+}
+
+void PrivateMembershipRlweQuery::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateMembershipRlweQuery_private_5fmembership_5frlwe_2eproto.base);
+  queried_encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&pir_request_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&hashed_bucket_id_) -
+      reinterpret_cast<char*>(&pir_request_)) + sizeof(hashed_bucket_id_));
+}
+
+PrivateMembershipRlweQuery::~PrivateMembershipRlweQuery() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PrivateMembershipRlweQuery)
+  SharedDtor();
+}
+
+void PrivateMembershipRlweQuery::SharedDtor() {
+  queried_encrypted_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete pir_request_;
+  if (this != internal_default_instance()) delete hashed_bucket_id_;
+}
+
+void PrivateMembershipRlweQuery::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateMembershipRlweQuery& PrivateMembershipRlweQuery::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateMembershipRlweQuery_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateMembershipRlweQuery::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PrivateMembershipRlweQuery)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  queried_encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (GetArenaNoVirtual() == nullptr && pir_request_ != nullptr) {
+    delete pir_request_;
+  }
+  pir_request_ = nullptr;
+  if (GetArenaNoVirtual() == nullptr && hashed_bucket_id_ != nullptr) {
+    delete hashed_bucket_id_;
+  }
+  hashed_bucket_id_ = nullptr;
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateMembershipRlweQuery::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // bytes queried_encrypted_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_queried_encrypted_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.rlwe.PirRequest pir_request = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_pir_request(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId hashed_bucket_id = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_hashed_bucket_id(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateMembershipRlweQuery::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PrivateMembershipRlweQuery)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // bytes queried_encrypted_id = 1;
+  if (this->queried_encrypted_id().size() > 0) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_queried_encrypted_id(), target);
+  }
+
+  // .private_membership.rlwe.PirRequest pir_request = 2;
+  if (this->has_pir_request()) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::pir_request(this), target, stream);
+  }
+
+  // .private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId hashed_bucket_id = 3;
+  if (this->has_hashed_bucket_id()) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::hashed_bucket_id(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PrivateMembershipRlweQuery)
+  return target;
+}
+
+size_t PrivateMembershipRlweQuery::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PrivateMembershipRlweQuery)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // bytes queried_encrypted_id = 1;
+  if (this->queried_encrypted_id().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_queried_encrypted_id());
+  }
+
+  // .private_membership.rlwe.PirRequest pir_request = 2;
+  if (this->has_pir_request()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *pir_request_);
+  }
+
+  // .private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId hashed_bucket_id = 3;
+  if (this->has_hashed_bucket_id()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *hashed_bucket_id_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateMembershipRlweQuery::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateMembershipRlweQuery*>(
+      &from));
+}
+
+void PrivateMembershipRlweQuery::MergeFrom(const PrivateMembershipRlweQuery& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PrivateMembershipRlweQuery)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.queried_encrypted_id().size() > 0) {
+
+    queried_encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.queried_encrypted_id_);
+  }
+  if (from.has_pir_request()) {
+    _internal_mutable_pir_request()->::private_membership::rlwe::PirRequest::MergeFrom(from._internal_pir_request());
+  }
+  if (from.has_hashed_bucket_id()) {
+    _internal_mutable_hashed_bucket_id()->::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId::MergeFrom(from._internal_hashed_bucket_id());
+  }
+}
+
+void PrivateMembershipRlweQuery::CopyFrom(const PrivateMembershipRlweQuery& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PrivateMembershipRlweQuery)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateMembershipRlweQuery::IsInitialized() const {
+  return true;
+}
+
+void PrivateMembershipRlweQuery::InternalSwap(PrivateMembershipRlweQuery* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  queried_encrypted_id_.Swap(&other->queried_encrypted_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(pir_request_, other->pir_request_);
+  swap(hashed_bucket_id_, other->hashed_bucket_id_);
+}
+
+std::string PrivateMembershipRlweQuery::GetTypeName() const {
+  return "private_membership.rlwe.PrivateMembershipRlweQuery";
+}
+
+
+// ===================================================================
+
+void PrivateMembershipRlwePirResponse::InitAsDefaultInstance() {
+  ::private_membership::rlwe::_PrivateMembershipRlwePirResponse_default_instance_._instance.get_mutable()->pir_response_ = const_cast< ::private_membership::rlwe::PirResponse*>(
+      ::private_membership::rlwe::PirResponse::internal_default_instance());
+}
+class PrivateMembershipRlwePirResponse::_Internal {
+ public:
+  static const ::private_membership::rlwe::PirResponse& pir_response(const PrivateMembershipRlwePirResponse* msg);
+};
+
+const ::private_membership::rlwe::PirResponse&
+PrivateMembershipRlwePirResponse::_Internal::pir_response(const PrivateMembershipRlwePirResponse* msg) {
+  return *msg->pir_response_;
+}
+PrivateMembershipRlwePirResponse::PrivateMembershipRlwePirResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+}
+PrivateMembershipRlwePirResponse::PrivateMembershipRlwePirResponse(const PrivateMembershipRlwePirResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  queried_encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_queried_encrypted_id().empty()) {
+    queried_encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.queried_encrypted_id_);
+  }
+  if (from._internal_has_pir_response()) {
+    pir_response_ = new ::private_membership::rlwe::PirResponse(*from.pir_response_);
+  } else {
+    pir_response_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+}
+
+void PrivateMembershipRlwePirResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PrivateMembershipRlwePirResponse_private_5fmembership_5frlwe_2eproto.base);
+  queried_encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  pir_response_ = nullptr;
+}
+
+PrivateMembershipRlwePirResponse::~PrivateMembershipRlwePirResponse() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+  SharedDtor();
+}
+
+void PrivateMembershipRlwePirResponse::SharedDtor() {
+  queried_encrypted_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete pir_response_;
+}
+
+void PrivateMembershipRlwePirResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PrivateMembershipRlwePirResponse& PrivateMembershipRlwePirResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PrivateMembershipRlwePirResponse_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PrivateMembershipRlwePirResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  queried_encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (GetArenaNoVirtual() == nullptr && pir_response_ != nullptr) {
+    delete pir_response_;
+  }
+  pir_response_ = nullptr;
+  _internal_metadata_.Clear();
+}
+
+const char* PrivateMembershipRlwePirResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // bytes queried_encrypted_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_queried_encrypted_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.rlwe.PirResponse pir_response = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_pir_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PrivateMembershipRlwePirResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // bytes queried_encrypted_id = 1;
+  if (this->queried_encrypted_id().size() > 0) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_queried_encrypted_id(), target);
+  }
+
+  // .private_membership.rlwe.PirResponse pir_response = 2;
+  if (this->has_pir_response()) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::pir_response(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+  return target;
+}
+
+size_t PrivateMembershipRlwePirResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // bytes queried_encrypted_id = 1;
+  if (this->queried_encrypted_id().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_queried_encrypted_id());
+  }
+
+  // .private_membership.rlwe.PirResponse pir_response = 2;
+  if (this->has_pir_response()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *pir_response_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PrivateMembershipRlwePirResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PrivateMembershipRlwePirResponse*>(
+      &from));
+}
+
+void PrivateMembershipRlwePirResponse::MergeFrom(const PrivateMembershipRlwePirResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.queried_encrypted_id().size() > 0) {
+
+    queried_encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.queried_encrypted_id_);
+  }
+  if (from.has_pir_response()) {
+    _internal_mutable_pir_response()->::private_membership::rlwe::PirResponse::MergeFrom(from._internal_pir_response());
+  }
+}
+
+void PrivateMembershipRlwePirResponse::CopyFrom(const PrivateMembershipRlwePirResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PrivateMembershipRlwePirResponse::IsInitialized() const {
+  return true;
+}
+
+void PrivateMembershipRlwePirResponse::InternalSwap(PrivateMembershipRlwePirResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  queried_encrypted_id_.Swap(&other->queried_encrypted_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(pir_response_, other->pir_response_);
+}
+
+std::string PrivateMembershipRlwePirResponse::GetTypeName() const {
+  return "private_membership.rlwe.PrivateMembershipRlwePirResponse";
+}
+
+
+// ===================================================================
+
+void PirRequest::InitAsDefaultInstance() {
+}
+class PirRequest::_Internal {
+ public:
+};
+
+void PirRequest::clear_request() {
+  request_.Clear();
+}
+PirRequest::PirRequest()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PirRequest)
+}
+PirRequest::PirRequest(const PirRequest& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      request_(from.request_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  prng_seed_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_prng_seed().empty()) {
+    prng_seed_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.prng_seed_);
+  }
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PirRequest)
+}
+
+void PirRequest::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PirRequest_private_5fmembership_5frlwe_2eproto.base);
+  prng_seed_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+PirRequest::~PirRequest() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PirRequest)
+  SharedDtor();
+}
+
+void PirRequest::SharedDtor() {
+  prng_seed_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void PirRequest::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PirRequest& PirRequest::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PirRequest_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PirRequest::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PirRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  request_.Clear();
+  prng_seed_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _internal_metadata_.Clear();
+}
+
+const char* PirRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .rlwe.SerializedNttPolynomial request = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_request(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // bytes prng_seed = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_prng_seed();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PirRequest::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PirRequest)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .rlwe.SerializedNttPolynomial request = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_request_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_request(i), target, stream);
+  }
+
+  // bytes prng_seed = 2;
+  if (this->prng_seed().size() > 0) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_prng_seed(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PirRequest)
+  return target;
+}
+
+size_t PirRequest::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PirRequest)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .rlwe.SerializedNttPolynomial request = 1;
+  total_size += 1UL * this->_internal_request_size();
+  for (const auto& msg : this->request_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // bytes prng_seed = 2;
+  if (this->prng_seed().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_prng_seed());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PirRequest::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PirRequest*>(
+      &from));
+}
+
+void PirRequest::MergeFrom(const PirRequest& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PirRequest)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  request_.MergeFrom(from.request_);
+  if (from.prng_seed().size() > 0) {
+
+    prng_seed_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.prng_seed_);
+  }
+}
+
+void PirRequest::CopyFrom(const PirRequest& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PirRequest)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PirRequest::IsInitialized() const {
+  return true;
+}
+
+void PirRequest::InternalSwap(PirRequest* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  request_.InternalSwap(&other->request_);
+  prng_seed_.Swap(&other->prng_seed_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string PirRequest::GetTypeName() const {
+  return "private_membership.rlwe.PirRequest";
+}
+
+
+// ===================================================================
+
+void PirResponse::InitAsDefaultInstance() {
+}
+class PirResponse::_Internal {
+ public:
+};
+
+void PirResponse::clear_response() {
+  response_.Clear();
+}
+PirResponse::PirResponse()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.PirResponse)
+}
+PirResponse::PirResponse(const PirResponse& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      response_(from.response_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  plaintext_entry_size_ = from.plaintext_entry_size_;
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.PirResponse)
+}
+
+void PirResponse::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_PirResponse_private_5fmembership_5frlwe_2eproto.base);
+  plaintext_entry_size_ = 0;
+}
+
+PirResponse::~PirResponse() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.PirResponse)
+  SharedDtor();
+}
+
+void PirResponse::SharedDtor() {
+}
+
+void PirResponse::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const PirResponse& PirResponse::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_PirResponse_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void PirResponse::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.PirResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  response_.Clear();
+  plaintext_entry_size_ = 0;
+  _internal_metadata_.Clear();
+}
+
+const char* PirResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .rlwe.SerializedSymmetricRlweCiphertext response = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_response(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // int32 plaintext_entry_size = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          plaintext_entry_size_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* PirResponse::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.PirResponse)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .rlwe.SerializedSymmetricRlweCiphertext response = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_response_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_response(i), target, stream);
+  }
+
+  // int32 plaintext_entry_size = 2;
+  if (this->plaintext_entry_size() != 0) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_plaintext_entry_size(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.PirResponse)
+  return target;
+}
+
+size_t PirResponse::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.PirResponse)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .rlwe.SerializedSymmetricRlweCiphertext response = 1;
+  total_size += 1UL * this->_internal_response_size();
+  for (const auto& msg : this->response_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // int32 plaintext_entry_size = 2;
+  if (this->plaintext_entry_size() != 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+        this->_internal_plaintext_entry_size());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void PirResponse::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const PirResponse*>(
+      &from));
+}
+
+void PirResponse::MergeFrom(const PirResponse& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.PirResponse)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  response_.MergeFrom(from.response_);
+  if (from.plaintext_entry_size() != 0) {
+    _internal_set_plaintext_entry_size(from._internal_plaintext_entry_size());
+  }
+}
+
+void PirResponse::CopyFrom(const PirResponse& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.PirResponse)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool PirResponse::IsInitialized() const {
+  return true;
+}
+
+void PirResponse::InternalSwap(PirResponse* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  response_.InternalSwap(&other->response_);
+  swap(plaintext_entry_size_, other->plaintext_entry_size_);
+}
+
+std::string PirResponse::GetTypeName() const {
+  return "private_membership.rlwe.PirResponse";
+}
+
+
+// ===================================================================
+
+void EncryptedBucket_EncryptedIdValuePair::InitAsDefaultInstance() {
+}
+class EncryptedBucket_EncryptedIdValuePair::_Internal {
+ public:
+};
+
+EncryptedBucket_EncryptedIdValuePair::EncryptedBucket_EncryptedIdValuePair()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+}
+EncryptedBucket_EncryptedIdValuePair::EncryptedBucket_EncryptedIdValuePair(const EncryptedBucket_EncryptedIdValuePair& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_encrypted_id().empty()) {
+    encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.encrypted_id_);
+  }
+  encrypted_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (!from._internal_encrypted_value().empty()) {
+    encrypted_value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.encrypted_value_);
+  }
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+}
+
+void EncryptedBucket_EncryptedIdValuePair::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EncryptedBucket_EncryptedIdValuePair_private_5fmembership_5frlwe_2eproto.base);
+  encrypted_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  encrypted_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+EncryptedBucket_EncryptedIdValuePair::~EncryptedBucket_EncryptedIdValuePair() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+  SharedDtor();
+}
+
+void EncryptedBucket_EncryptedIdValuePair::SharedDtor() {
+  encrypted_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  encrypted_value_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void EncryptedBucket_EncryptedIdValuePair::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const EncryptedBucket_EncryptedIdValuePair& EncryptedBucket_EncryptedIdValuePair::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_EncryptedBucket_EncryptedIdValuePair_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void EncryptedBucket_EncryptedIdValuePair::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  encrypted_value_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _internal_metadata_.Clear();
+}
+
+const char* EncryptedBucket_EncryptedIdValuePair::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // bytes encrypted_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_encrypted_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // bytes encrypted_value = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_encrypted_value();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* EncryptedBucket_EncryptedIdValuePair::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // bytes encrypted_id = 1;
+  if (this->encrypted_id().size() > 0) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_encrypted_id(), target);
+  }
+
+  // bytes encrypted_value = 2;
+  if (this->encrypted_value().size() > 0) {
+    target = stream->WriteBytesMaybeAliased(
+        2, this->_internal_encrypted_value(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+  return target;
+}
+
+size_t EncryptedBucket_EncryptedIdValuePair::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // bytes encrypted_id = 1;
+  if (this->encrypted_id().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_encrypted_id());
+  }
+
+  // bytes encrypted_value = 2;
+  if (this->encrypted_value().size() > 0) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+        this->_internal_encrypted_value());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void EncryptedBucket_EncryptedIdValuePair::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const EncryptedBucket_EncryptedIdValuePair*>(
+      &from));
+}
+
+void EncryptedBucket_EncryptedIdValuePair::MergeFrom(const EncryptedBucket_EncryptedIdValuePair& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.encrypted_id().size() > 0) {
+
+    encrypted_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.encrypted_id_);
+  }
+  if (from.encrypted_value().size() > 0) {
+
+    encrypted_value_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.encrypted_value_);
+  }
+}
+
+void EncryptedBucket_EncryptedIdValuePair::CopyFrom(const EncryptedBucket_EncryptedIdValuePair& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool EncryptedBucket_EncryptedIdValuePair::IsInitialized() const {
+  return true;
+}
+
+void EncryptedBucket_EncryptedIdValuePair::InternalSwap(EncryptedBucket_EncryptedIdValuePair* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  encrypted_id_.Swap(&other->encrypted_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  encrypted_value_.Swap(&other->encrypted_value_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string EncryptedBucket_EncryptedIdValuePair::GetTypeName() const {
+  return "private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair";
+}
+
+
+// ===================================================================
+
+void EncryptedBucket::InitAsDefaultInstance() {
+}
+class EncryptedBucket::_Internal {
+ public:
+};
+
+EncryptedBucket::EncryptedBucket()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.EncryptedBucket)
+}
+EncryptedBucket::EncryptedBucket(const EncryptedBucket& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      encrypted_id_value_pairs_(from.encrypted_id_value_pairs_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.EncryptedBucket)
+}
+
+void EncryptedBucket::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EncryptedBucket_private_5fmembership_5frlwe_2eproto.base);
+}
+
+EncryptedBucket::~EncryptedBucket() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.EncryptedBucket)
+  SharedDtor();
+}
+
+void EncryptedBucket::SharedDtor() {
+}
+
+void EncryptedBucket::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const EncryptedBucket& EncryptedBucket::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_EncryptedBucket_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void EncryptedBucket::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.EncryptedBucket)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  encrypted_id_value_pairs_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* EncryptedBucket::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair encrypted_id_value_pairs = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_encrypted_id_value_pairs(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* EncryptedBucket::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.EncryptedBucket)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair encrypted_id_value_pairs = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_encrypted_id_value_pairs_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_encrypted_id_value_pairs(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.EncryptedBucket)
+  return target;
+}
+
+size_t EncryptedBucket::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.EncryptedBucket)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair encrypted_id_value_pairs = 1;
+  total_size += 1UL * this->_internal_encrypted_id_value_pairs_size();
+  for (const auto& msg : this->encrypted_id_value_pairs_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void EncryptedBucket::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const EncryptedBucket*>(
+      &from));
+}
+
+void EncryptedBucket::MergeFrom(const EncryptedBucket& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.EncryptedBucket)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  encrypted_id_value_pairs_.MergeFrom(from.encrypted_id_value_pairs_);
+}
+
+void EncryptedBucket::CopyFrom(const EncryptedBucket& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.EncryptedBucket)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool EncryptedBucket::IsInitialized() const {
+  return true;
+}
+
+void EncryptedBucket::InternalSwap(EncryptedBucket* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  encrypted_id_value_pairs_.InternalSwap(&other->encrypted_id_value_pairs_);
+}
+
+std::string EncryptedBucket::GetTypeName() const {
+  return "private_membership.rlwe.EncryptedBucket";
+}
+
+
+// ===================================================================
+
+void RlweMembershipResponses_MembershipResponseEntry::InitAsDefaultInstance() {
+  ::private_membership::rlwe::_RlweMembershipResponses_MembershipResponseEntry_default_instance_._instance.get_mutable()->plaintext_id_ = const_cast< ::private_membership::rlwe::RlwePlaintextId*>(
+      ::private_membership::rlwe::RlwePlaintextId::internal_default_instance());
+  ::private_membership::rlwe::_RlweMembershipResponses_MembershipResponseEntry_default_instance_._instance.get_mutable()->membership_response_ = const_cast< ::private_membership::MembershipResponse*>(
+      ::private_membership::MembershipResponse::internal_default_instance());
+}
+class RlweMembershipResponses_MembershipResponseEntry::_Internal {
+ public:
+  static const ::private_membership::rlwe::RlwePlaintextId& plaintext_id(const RlweMembershipResponses_MembershipResponseEntry* msg);
+  static const ::private_membership::MembershipResponse& membership_response(const RlweMembershipResponses_MembershipResponseEntry* msg);
+};
+
+const ::private_membership::rlwe::RlwePlaintextId&
+RlweMembershipResponses_MembershipResponseEntry::_Internal::plaintext_id(const RlweMembershipResponses_MembershipResponseEntry* msg) {
+  return *msg->plaintext_id_;
+}
+const ::private_membership::MembershipResponse&
+RlweMembershipResponses_MembershipResponseEntry::_Internal::membership_response(const RlweMembershipResponses_MembershipResponseEntry* msg) {
+  return *msg->membership_response_;
+}
+void RlweMembershipResponses_MembershipResponseEntry::clear_membership_response() {
+  if (GetArenaNoVirtual() == nullptr && membership_response_ != nullptr) {
+    delete membership_response_;
+  }
+  membership_response_ = nullptr;
+}
+RlweMembershipResponses_MembershipResponseEntry::RlweMembershipResponses_MembershipResponseEntry()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+}
+RlweMembershipResponses_MembershipResponseEntry::RlweMembershipResponses_MembershipResponseEntry(const RlweMembershipResponses_MembershipResponseEntry& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_plaintext_id()) {
+    plaintext_id_ = new ::private_membership::rlwe::RlwePlaintextId(*from.plaintext_id_);
+  } else {
+    plaintext_id_ = nullptr;
+  }
+  if (from._internal_has_membership_response()) {
+    membership_response_ = new ::private_membership::MembershipResponse(*from.membership_response_);
+  } else {
+    membership_response_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+}
+
+void RlweMembershipResponses_MembershipResponseEntry::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RlweMembershipResponses_MembershipResponseEntry_private_5fmembership_5frlwe_2eproto.base);
+  ::memset(&plaintext_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&membership_response_) -
+      reinterpret_cast<char*>(&plaintext_id_)) + sizeof(membership_response_));
+}
+
+RlweMembershipResponses_MembershipResponseEntry::~RlweMembershipResponses_MembershipResponseEntry() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+  SharedDtor();
+}
+
+void RlweMembershipResponses_MembershipResponseEntry::SharedDtor() {
+  if (this != internal_default_instance()) delete plaintext_id_;
+  if (this != internal_default_instance()) delete membership_response_;
+}
+
+void RlweMembershipResponses_MembershipResponseEntry::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RlweMembershipResponses_MembershipResponseEntry& RlweMembershipResponses_MembershipResponseEntry::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RlweMembershipResponses_MembershipResponseEntry_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RlweMembershipResponses_MembershipResponseEntry::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  if (GetArenaNoVirtual() == nullptr && plaintext_id_ != nullptr) {
+    delete plaintext_id_;
+  }
+  plaintext_id_ = nullptr;
+  if (GetArenaNoVirtual() == nullptr && membership_response_ != nullptr) {
+    delete membership_response_;
+  }
+  membership_response_ = nullptr;
+  _internal_metadata_.Clear();
+}
+
+const char* RlweMembershipResponses_MembershipResponseEntry::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // .private_membership.rlwe.RlwePlaintextId plaintext_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_plaintext_id(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // .private_membership.MembershipResponse membership_response = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr = ctx->ParseMessage(_internal_mutable_membership_response(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RlweMembershipResponses_MembershipResponseEntry::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // .private_membership.rlwe.RlwePlaintextId plaintext_id = 1;
+  if (this->has_plaintext_id()) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::plaintext_id(this), target, stream);
+  }
+
+  // .private_membership.MembershipResponse membership_response = 2;
+  if (this->has_membership_response()) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        2, _Internal::membership_response(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+  return target;
+}
+
+size_t RlweMembershipResponses_MembershipResponseEntry::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // .private_membership.rlwe.RlwePlaintextId plaintext_id = 1;
+  if (this->has_plaintext_id()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *plaintext_id_);
+  }
+
+  // .private_membership.MembershipResponse membership_response = 2;
+  if (this->has_membership_response()) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *membership_response_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RlweMembershipResponses_MembershipResponseEntry::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RlweMembershipResponses_MembershipResponseEntry*>(
+      &from));
+}
+
+void RlweMembershipResponses_MembershipResponseEntry::MergeFrom(const RlweMembershipResponses_MembershipResponseEntry& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from.has_plaintext_id()) {
+    _internal_mutable_plaintext_id()->::private_membership::rlwe::RlwePlaintextId::MergeFrom(from._internal_plaintext_id());
+  }
+  if (from.has_membership_response()) {
+    _internal_mutable_membership_response()->::private_membership::MembershipResponse::MergeFrom(from._internal_membership_response());
+  }
+}
+
+void RlweMembershipResponses_MembershipResponseEntry::CopyFrom(const RlweMembershipResponses_MembershipResponseEntry& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RlweMembershipResponses_MembershipResponseEntry::IsInitialized() const {
+  return true;
+}
+
+void RlweMembershipResponses_MembershipResponseEntry::InternalSwap(RlweMembershipResponses_MembershipResponseEntry* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(plaintext_id_, other->plaintext_id_);
+  swap(membership_response_, other->membership_response_);
+}
+
+std::string RlweMembershipResponses_MembershipResponseEntry::GetTypeName() const {
+  return "private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry";
+}
+
+
+// ===================================================================
+
+void RlweMembershipResponses::InitAsDefaultInstance() {
+}
+class RlweMembershipResponses::_Internal {
+ public:
+};
+
+RlweMembershipResponses::RlweMembershipResponses()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:private_membership.rlwe.RlweMembershipResponses)
+}
+RlweMembershipResponses::RlweMembershipResponses(const RlweMembershipResponses& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      membership_responses_(from.membership_responses_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:private_membership.rlwe.RlweMembershipResponses)
+}
+
+void RlweMembershipResponses::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_RlweMembershipResponses_private_5fmembership_5frlwe_2eproto.base);
+}
+
+RlweMembershipResponses::~RlweMembershipResponses() {
+  // @@protoc_insertion_point(destructor:private_membership.rlwe.RlweMembershipResponses)
+  SharedDtor();
+}
+
+void RlweMembershipResponses::SharedDtor() {
+}
+
+void RlweMembershipResponses::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const RlweMembershipResponses& RlweMembershipResponses::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_RlweMembershipResponses_private_5fmembership_5frlwe_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void RlweMembershipResponses::Clear() {
+// @@protoc_insertion_point(message_clear_start:private_membership.rlwe.RlweMembershipResponses)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  membership_responses_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* RlweMembershipResponses::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry membership_responses = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_membership_responses(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* RlweMembershipResponses::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:private_membership.rlwe.RlweMembershipResponses)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry membership_responses = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_membership_responses_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_membership_responses(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:private_membership.rlwe.RlweMembershipResponses)
+  return target;
+}
+
+size_t RlweMembershipResponses::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:private_membership.rlwe.RlweMembershipResponses)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry membership_responses = 1;
+  total_size += 1UL * this->_internal_membership_responses_size();
+  for (const auto& msg : this->membership_responses_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void RlweMembershipResponses::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const RlweMembershipResponses*>(
+      &from));
+}
+
+void RlweMembershipResponses::MergeFrom(const RlweMembershipResponses& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:private_membership.rlwe.RlweMembershipResponses)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  membership_responses_.MergeFrom(from.membership_responses_);
+}
+
+void RlweMembershipResponses::CopyFrom(const RlweMembershipResponses& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:private_membership.rlwe.RlweMembershipResponses)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool RlweMembershipResponses::IsInitialized() const {
+  return true;
+}
+
+void RlweMembershipResponses::InternalSwap(RlweMembershipResponses* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  membership_responses_.InternalSwap(&other->membership_responses_);
+}
+
+std::string RlweMembershipResponses::GetTypeName() const {
+  return "private_membership.rlwe.RlweMembershipResponses";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace rlwe
+}  // namespace private_membership
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* Arena::CreateMaybeMessage< ::private_membership::rlwe::PrivateMembershipRlweOprfRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PrivateMembershipRlweOprfRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* Arena::CreateMaybeMessage< ::private_membership::rlwe::PrivateMembershipRlweOprfResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PrivateMembershipRlweOprfResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* Arena::CreateMaybeMessage< ::private_membership::rlwe::PrivateMembershipRlweQueryRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PrivateMembershipRlweQueryRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* Arena::CreateMaybeMessage< ::private_membership::rlwe::PrivateMembershipRlweQueryResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PrivateMembershipRlweQueryResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::RlwePlaintextId* Arena::CreateMaybeMessage< ::private_membership::rlwe::RlwePlaintextId >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::RlwePlaintextId >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::HashedBucketsParameters* Arena::CreateMaybeMessage< ::private_membership::rlwe::HashedBucketsParameters >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::HashedBucketsParameters >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::EncryptedBucketsParameters* Arena::CreateMaybeMessage< ::private_membership::rlwe::EncryptedBucketsParameters >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::EncryptedBucketsParameters >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::RlweParameters* Arena::CreateMaybeMessage< ::private_membership::rlwe::RlweParameters >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::RlweParameters >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::Uint128* Arena::CreateMaybeMessage< ::private_membership::rlwe::Uint128 >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::Uint128 >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* Arena::CreateMaybeMessage< ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PrivateMembershipRlweQuery* Arena::CreateMaybeMessage< ::private_membership::rlwe::PrivateMembershipRlweQuery >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PrivateMembershipRlweQuery >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PrivateMembershipRlwePirResponse* Arena::CreateMaybeMessage< ::private_membership::rlwe::PrivateMembershipRlwePirResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PrivateMembershipRlwePirResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PirRequest* Arena::CreateMaybeMessage< ::private_membership::rlwe::PirRequest >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PirRequest >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::PirResponse* Arena::CreateMaybeMessage< ::private_membership::rlwe::PirResponse >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::PirResponse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair* Arena::CreateMaybeMessage< ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::EncryptedBucket* Arena::CreateMaybeMessage< ::private_membership::rlwe::EncryptedBucket >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::EncryptedBucket >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry* Arena::CreateMaybeMessage< ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry >(arena);
+}
+template<> PROTOBUF_NOINLINE ::private_membership::rlwe::RlweMembershipResponses* Arena::CreateMaybeMessage< ::private_membership::rlwe::RlweMembershipResponses >(Arena* arena) {
+  return Arena::CreateInternal< ::private_membership::rlwe::RlweMembershipResponses >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership_rlwe.pb.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership_rlwe.pb.h
new file mode 100644
index 0000000..7bd4193
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/private_membership_rlwe.pb.h
@@ -0,0 +1,4432 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: private_membership_rlwe.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_private_5fmembership_5frlwe_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_private_5fmembership_5frlwe_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/generated_enum_util.h>
+#include "private_membership.pb.h"
+#include "serialization.pb.h"
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_private_5fmembership_5frlwe_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_private_5fmembership_5frlwe_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[18]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace private_membership {
+namespace rlwe {
+class EncryptedBucket;
+class EncryptedBucketDefaultTypeInternal;
+extern EncryptedBucketDefaultTypeInternal _EncryptedBucket_default_instance_;
+class EncryptedBucket_EncryptedIdValuePair;
+class EncryptedBucket_EncryptedIdValuePairDefaultTypeInternal;
+extern EncryptedBucket_EncryptedIdValuePairDefaultTypeInternal _EncryptedBucket_EncryptedIdValuePair_default_instance_;
+class EncryptedBucketsParameters;
+class EncryptedBucketsParametersDefaultTypeInternal;
+extern EncryptedBucketsParametersDefaultTypeInternal _EncryptedBucketsParameters_default_instance_;
+class HashedBucketsParameters;
+class HashedBucketsParametersDefaultTypeInternal;
+extern HashedBucketsParametersDefaultTypeInternal _HashedBucketsParameters_default_instance_;
+class PirRequest;
+class PirRequestDefaultTypeInternal;
+extern PirRequestDefaultTypeInternal _PirRequest_default_instance_;
+class PirResponse;
+class PirResponseDefaultTypeInternal;
+extern PirResponseDefaultTypeInternal _PirResponse_default_instance_;
+class PrivateMembershipRlweOprfRequest;
+class PrivateMembershipRlweOprfRequestDefaultTypeInternal;
+extern PrivateMembershipRlweOprfRequestDefaultTypeInternal _PrivateMembershipRlweOprfRequest_default_instance_;
+class PrivateMembershipRlweOprfResponse;
+class PrivateMembershipRlweOprfResponseDefaultTypeInternal;
+extern PrivateMembershipRlweOprfResponseDefaultTypeInternal _PrivateMembershipRlweOprfResponse_default_instance_;
+class PrivateMembershipRlwePirResponse;
+class PrivateMembershipRlwePirResponseDefaultTypeInternal;
+extern PrivateMembershipRlwePirResponseDefaultTypeInternal _PrivateMembershipRlwePirResponse_default_instance_;
+class PrivateMembershipRlweQuery;
+class PrivateMembershipRlweQueryDefaultTypeInternal;
+extern PrivateMembershipRlweQueryDefaultTypeInternal _PrivateMembershipRlweQuery_default_instance_;
+class PrivateMembershipRlweQueryRequest;
+class PrivateMembershipRlweQueryRequestDefaultTypeInternal;
+extern PrivateMembershipRlweQueryRequestDefaultTypeInternal _PrivateMembershipRlweQueryRequest_default_instance_;
+class PrivateMembershipRlweQueryResponse;
+class PrivateMembershipRlweQueryResponseDefaultTypeInternal;
+extern PrivateMembershipRlweQueryResponseDefaultTypeInternal _PrivateMembershipRlweQueryResponse_default_instance_;
+class PrivateMembershipRlweQuery_HashedBucketId;
+class PrivateMembershipRlweQuery_HashedBucketIdDefaultTypeInternal;
+extern PrivateMembershipRlweQuery_HashedBucketIdDefaultTypeInternal _PrivateMembershipRlweQuery_HashedBucketId_default_instance_;
+class RlweMembershipResponses;
+class RlweMembershipResponsesDefaultTypeInternal;
+extern RlweMembershipResponsesDefaultTypeInternal _RlweMembershipResponses_default_instance_;
+class RlweMembershipResponses_MembershipResponseEntry;
+class RlweMembershipResponses_MembershipResponseEntryDefaultTypeInternal;
+extern RlweMembershipResponses_MembershipResponseEntryDefaultTypeInternal _RlweMembershipResponses_MembershipResponseEntry_default_instance_;
+class RlweParameters;
+class RlweParametersDefaultTypeInternal;
+extern RlweParametersDefaultTypeInternal _RlweParameters_default_instance_;
+class RlwePlaintextId;
+class RlwePlaintextIdDefaultTypeInternal;
+extern RlwePlaintextIdDefaultTypeInternal _RlwePlaintextId_default_instance_;
+class Uint128;
+class Uint128DefaultTypeInternal;
+extern Uint128DefaultTypeInternal _Uint128_default_instance_;
+}  // namespace rlwe
+}  // namespace private_membership
+PROTOBUF_NAMESPACE_OPEN
+template<> ::private_membership::rlwe::EncryptedBucket* Arena::CreateMaybeMessage<::private_membership::rlwe::EncryptedBucket>(Arena*);
+template<> ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair* Arena::CreateMaybeMessage<::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair>(Arena*);
+template<> ::private_membership::rlwe::EncryptedBucketsParameters* Arena::CreateMaybeMessage<::private_membership::rlwe::EncryptedBucketsParameters>(Arena*);
+template<> ::private_membership::rlwe::HashedBucketsParameters* Arena::CreateMaybeMessage<::private_membership::rlwe::HashedBucketsParameters>(Arena*);
+template<> ::private_membership::rlwe::PirRequest* Arena::CreateMaybeMessage<::private_membership::rlwe::PirRequest>(Arena*);
+template<> ::private_membership::rlwe::PirResponse* Arena::CreateMaybeMessage<::private_membership::rlwe::PirResponse>(Arena*);
+template<> ::private_membership::rlwe::PrivateMembershipRlweOprfRequest* Arena::CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweOprfRequest>(Arena*);
+template<> ::private_membership::rlwe::PrivateMembershipRlweOprfResponse* Arena::CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweOprfResponse>(Arena*);
+template<> ::private_membership::rlwe::PrivateMembershipRlwePirResponse* Arena::CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlwePirResponse>(Arena*);
+template<> ::private_membership::rlwe::PrivateMembershipRlweQuery* Arena::CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweQuery>(Arena*);
+template<> ::private_membership::rlwe::PrivateMembershipRlweQueryRequest* Arena::CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweQueryRequest>(Arena*);
+template<> ::private_membership::rlwe::PrivateMembershipRlweQueryResponse* Arena::CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweQueryResponse>(Arena*);
+template<> ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* Arena::CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId>(Arena*);
+template<> ::private_membership::rlwe::RlweMembershipResponses* Arena::CreateMaybeMessage<::private_membership::rlwe::RlweMembershipResponses>(Arena*);
+template<> ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry* Arena::CreateMaybeMessage<::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry>(Arena*);
+template<> ::private_membership::rlwe::RlweParameters* Arena::CreateMaybeMessage<::private_membership::rlwe::RlweParameters>(Arena*);
+template<> ::private_membership::rlwe::RlwePlaintextId* Arena::CreateMaybeMessage<::private_membership::rlwe::RlwePlaintextId>(Arena*);
+template<> ::private_membership::rlwe::Uint128* Arena::CreateMaybeMessage<::private_membership::rlwe::Uint128>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace private_membership {
+namespace rlwe {
+
+enum RlweUseCase : int {
+  RLWE_USE_CASE_UNDEFINED = 0,
+  TEST_USE_CASE = 1,
+  TEST_USE_CASE2 = 2,
+  TEST_USE_CASE3 = 3,
+  CROS_DEVICE_STATE = 5,
+  CROS_DEVICE_SECONDARY_STATE = 12,
+  CROS_FRESNEL_DAILY = 13,
+  CROS_FRESNEL_MONTHLY = 14,
+  CROS_FRESNEL_ALL_TIME = 15,
+  RlweUseCase_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
+  RlweUseCase_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
+};
+bool RlweUseCase_IsValid(int value);
+constexpr RlweUseCase RlweUseCase_MIN = RLWE_USE_CASE_UNDEFINED;
+constexpr RlweUseCase RlweUseCase_MAX = CROS_FRESNEL_ALL_TIME;
+constexpr int RlweUseCase_ARRAYSIZE = RlweUseCase_MAX + 1;
+
+const std::string& RlweUseCase_Name(RlweUseCase value);
+template<typename T>
+inline const std::string& RlweUseCase_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, RlweUseCase>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function RlweUseCase_Name.");
+  return RlweUseCase_Name(static_cast<RlweUseCase>(enum_t_value));
+}
+bool RlweUseCase_Parse(
+    const std::string& name, RlweUseCase* value);
+// ===================================================================
+
+class PrivateMembershipRlweOprfRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PrivateMembershipRlweOprfRequest) */ {
+ public:
+  PrivateMembershipRlweOprfRequest();
+  virtual ~PrivateMembershipRlweOprfRequest();
+
+  PrivateMembershipRlweOprfRequest(const PrivateMembershipRlweOprfRequest& from);
+  PrivateMembershipRlweOprfRequest(PrivateMembershipRlweOprfRequest&& from) noexcept
+    : PrivateMembershipRlweOprfRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateMembershipRlweOprfRequest& operator=(const PrivateMembershipRlweOprfRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateMembershipRlweOprfRequest& operator=(PrivateMembershipRlweOprfRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PrivateMembershipRlweOprfRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateMembershipRlweOprfRequest* internal_default_instance() {
+    return reinterpret_cast<const PrivateMembershipRlweOprfRequest*>(
+               &_PrivateMembershipRlweOprfRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(PrivateMembershipRlweOprfRequest& a, PrivateMembershipRlweOprfRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateMembershipRlweOprfRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateMembershipRlweOprfRequest* New() const final {
+    return CreateMaybeMessage<PrivateMembershipRlweOprfRequest>(nullptr);
+  }
+
+  PrivateMembershipRlweOprfRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateMembershipRlweOprfRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateMembershipRlweOprfRequest& from);
+  void MergeFrom(const PrivateMembershipRlweOprfRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateMembershipRlweOprfRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PrivateMembershipRlweOprfRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEncryptedIdsFieldNumber = 1,
+    kUseCaseFieldNumber = 2,
+  };
+  // repeated bytes encrypted_ids = 1;
+  int encrypted_ids_size() const;
+  private:
+  int _internal_encrypted_ids_size() const;
+  public:
+  void clear_encrypted_ids();
+  const std::string& encrypted_ids(int index) const;
+  std::string* mutable_encrypted_ids(int index);
+  void set_encrypted_ids(int index, const std::string& value);
+  void set_encrypted_ids(int index, std::string&& value);
+  void set_encrypted_ids(int index, const char* value);
+  void set_encrypted_ids(int index, const void* value, size_t size);
+  std::string* add_encrypted_ids();
+  void add_encrypted_ids(const std::string& value);
+  void add_encrypted_ids(std::string&& value);
+  void add_encrypted_ids(const char* value);
+  void add_encrypted_ids(const void* value, size_t size);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& encrypted_ids() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_encrypted_ids();
+  private:
+  const std::string& _internal_encrypted_ids(int index) const;
+  std::string* _internal_add_encrypted_ids();
+  public:
+
+  // .private_membership.rlwe.RlweUseCase use_case = 2;
+  void clear_use_case();
+  ::private_membership::rlwe::RlweUseCase use_case() const;
+  void set_use_case(::private_membership::rlwe::RlweUseCase value);
+  private:
+  ::private_membership::rlwe::RlweUseCase _internal_use_case() const;
+  void _internal_set_use_case(::private_membership::rlwe::RlweUseCase value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PrivateMembershipRlweOprfRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> encrypted_ids_;
+  int use_case_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateMembershipRlweOprfResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PrivateMembershipRlweOprfResponse) */ {
+ public:
+  PrivateMembershipRlweOprfResponse();
+  virtual ~PrivateMembershipRlweOprfResponse();
+
+  PrivateMembershipRlweOprfResponse(const PrivateMembershipRlweOprfResponse& from);
+  PrivateMembershipRlweOprfResponse(PrivateMembershipRlweOprfResponse&& from) noexcept
+    : PrivateMembershipRlweOprfResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateMembershipRlweOprfResponse& operator=(const PrivateMembershipRlweOprfResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateMembershipRlweOprfResponse& operator=(PrivateMembershipRlweOprfResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PrivateMembershipRlweOprfResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateMembershipRlweOprfResponse* internal_default_instance() {
+    return reinterpret_cast<const PrivateMembershipRlweOprfResponse*>(
+               &_PrivateMembershipRlweOprfResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(PrivateMembershipRlweOprfResponse& a, PrivateMembershipRlweOprfResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateMembershipRlweOprfResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateMembershipRlweOprfResponse* New() const final {
+    return CreateMaybeMessage<PrivateMembershipRlweOprfResponse>(nullptr);
+  }
+
+  PrivateMembershipRlweOprfResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateMembershipRlweOprfResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateMembershipRlweOprfResponse& from);
+  void MergeFrom(const PrivateMembershipRlweOprfResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateMembershipRlweOprfResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PrivateMembershipRlweOprfResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDoublyEncryptedIdsFieldNumber = 1,
+    kHashedBucketsParametersFieldNumber = 2,
+    kEncryptedBucketsParametersFieldNumber = 3,
+    kRlweParametersFieldNumber = 4,
+    kKeyVersionFieldNumber = 5,
+  };
+  // repeated .private_membership.DoublyEncryptedId doubly_encrypted_ids = 1;
+  int doubly_encrypted_ids_size() const;
+  private:
+  int _internal_doubly_encrypted_ids_size() const;
+  public:
+  void clear_doubly_encrypted_ids();
+  ::private_membership::DoublyEncryptedId* mutable_doubly_encrypted_ids(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::DoublyEncryptedId >*
+      mutable_doubly_encrypted_ids();
+  private:
+  const ::private_membership::DoublyEncryptedId& _internal_doubly_encrypted_ids(int index) const;
+  ::private_membership::DoublyEncryptedId* _internal_add_doubly_encrypted_ids();
+  public:
+  const ::private_membership::DoublyEncryptedId& doubly_encrypted_ids(int index) const;
+  ::private_membership::DoublyEncryptedId* add_doubly_encrypted_ids();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::DoublyEncryptedId >&
+      doubly_encrypted_ids() const;
+
+  // .private_membership.rlwe.HashedBucketsParameters hashed_buckets_parameters = 2;
+  bool has_hashed_buckets_parameters() const;
+  private:
+  bool _internal_has_hashed_buckets_parameters() const;
+  public:
+  void clear_hashed_buckets_parameters();
+  const ::private_membership::rlwe::HashedBucketsParameters& hashed_buckets_parameters() const;
+  ::private_membership::rlwe::HashedBucketsParameters* release_hashed_buckets_parameters();
+  ::private_membership::rlwe::HashedBucketsParameters* mutable_hashed_buckets_parameters();
+  void set_allocated_hashed_buckets_parameters(::private_membership::rlwe::HashedBucketsParameters* hashed_buckets_parameters);
+  private:
+  const ::private_membership::rlwe::HashedBucketsParameters& _internal_hashed_buckets_parameters() const;
+  ::private_membership::rlwe::HashedBucketsParameters* _internal_mutable_hashed_buckets_parameters();
+  public:
+
+  // .private_membership.rlwe.EncryptedBucketsParameters encrypted_buckets_parameters = 3;
+  bool has_encrypted_buckets_parameters() const;
+  private:
+  bool _internal_has_encrypted_buckets_parameters() const;
+  public:
+  void clear_encrypted_buckets_parameters();
+  const ::private_membership::rlwe::EncryptedBucketsParameters& encrypted_buckets_parameters() const;
+  ::private_membership::rlwe::EncryptedBucketsParameters* release_encrypted_buckets_parameters();
+  ::private_membership::rlwe::EncryptedBucketsParameters* mutable_encrypted_buckets_parameters();
+  void set_allocated_encrypted_buckets_parameters(::private_membership::rlwe::EncryptedBucketsParameters* encrypted_buckets_parameters);
+  private:
+  const ::private_membership::rlwe::EncryptedBucketsParameters& _internal_encrypted_buckets_parameters() const;
+  ::private_membership::rlwe::EncryptedBucketsParameters* _internal_mutable_encrypted_buckets_parameters();
+  public:
+
+  // .private_membership.rlwe.RlweParameters rlwe_parameters = 4;
+  bool has_rlwe_parameters() const;
+  private:
+  bool _internal_has_rlwe_parameters() const;
+  public:
+  void clear_rlwe_parameters();
+  const ::private_membership::rlwe::RlweParameters& rlwe_parameters() const;
+  ::private_membership::rlwe::RlweParameters* release_rlwe_parameters();
+  ::private_membership::rlwe::RlweParameters* mutable_rlwe_parameters();
+  void set_allocated_rlwe_parameters(::private_membership::rlwe::RlweParameters* rlwe_parameters);
+  private:
+  const ::private_membership::rlwe::RlweParameters& _internal_rlwe_parameters() const;
+  ::private_membership::rlwe::RlweParameters* _internal_mutable_rlwe_parameters();
+  public:
+
+  // int64 key_version = 5;
+  void clear_key_version();
+  ::PROTOBUF_NAMESPACE_ID::int64 key_version() const;
+  void set_key_version(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_key_version() const;
+  void _internal_set_key_version(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PrivateMembershipRlweOprfResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::DoublyEncryptedId > doubly_encrypted_ids_;
+  ::private_membership::rlwe::HashedBucketsParameters* hashed_buckets_parameters_;
+  ::private_membership::rlwe::EncryptedBucketsParameters* encrypted_buckets_parameters_;
+  ::private_membership::rlwe::RlweParameters* rlwe_parameters_;
+  ::PROTOBUF_NAMESPACE_ID::int64 key_version_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateMembershipRlweQueryRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PrivateMembershipRlweQueryRequest) */ {
+ public:
+  PrivateMembershipRlweQueryRequest();
+  virtual ~PrivateMembershipRlweQueryRequest();
+
+  PrivateMembershipRlweQueryRequest(const PrivateMembershipRlweQueryRequest& from);
+  PrivateMembershipRlweQueryRequest(PrivateMembershipRlweQueryRequest&& from) noexcept
+    : PrivateMembershipRlweQueryRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateMembershipRlweQueryRequest& operator=(const PrivateMembershipRlweQueryRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateMembershipRlweQueryRequest& operator=(PrivateMembershipRlweQueryRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PrivateMembershipRlweQueryRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateMembershipRlweQueryRequest* internal_default_instance() {
+    return reinterpret_cast<const PrivateMembershipRlweQueryRequest*>(
+               &_PrivateMembershipRlweQueryRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    2;
+
+  friend void swap(PrivateMembershipRlweQueryRequest& a, PrivateMembershipRlweQueryRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateMembershipRlweQueryRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateMembershipRlweQueryRequest* New() const final {
+    return CreateMaybeMessage<PrivateMembershipRlweQueryRequest>(nullptr);
+  }
+
+  PrivateMembershipRlweQueryRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateMembershipRlweQueryRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateMembershipRlweQueryRequest& from);
+  void MergeFrom(const PrivateMembershipRlweQueryRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateMembershipRlweQueryRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PrivateMembershipRlweQueryRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kQueriesFieldNumber = 1,
+    kKeyVersionFieldNumber = 3,
+    kUseCaseFieldNumber = 2,
+  };
+  // repeated .private_membership.rlwe.PrivateMembershipRlweQuery queries = 1;
+  int queries_size() const;
+  private:
+  int _internal_queries_size() const;
+  public:
+  void clear_queries();
+  ::private_membership::rlwe::PrivateMembershipRlweQuery* mutable_queries(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlweQuery >*
+      mutable_queries();
+  private:
+  const ::private_membership::rlwe::PrivateMembershipRlweQuery& _internal_queries(int index) const;
+  ::private_membership::rlwe::PrivateMembershipRlweQuery* _internal_add_queries();
+  public:
+  const ::private_membership::rlwe::PrivateMembershipRlweQuery& queries(int index) const;
+  ::private_membership::rlwe::PrivateMembershipRlweQuery* add_queries();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlweQuery >&
+      queries() const;
+
+  // int64 key_version = 3;
+  void clear_key_version();
+  ::PROTOBUF_NAMESPACE_ID::int64 key_version() const;
+  void set_key_version(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_key_version() const;
+  void _internal_set_key_version(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // .private_membership.rlwe.RlweUseCase use_case = 2;
+  void clear_use_case();
+  ::private_membership::rlwe::RlweUseCase use_case() const;
+  void set_use_case(::private_membership::rlwe::RlweUseCase value);
+  private:
+  ::private_membership::rlwe::RlweUseCase _internal_use_case() const;
+  void _internal_set_use_case(::private_membership::rlwe::RlweUseCase value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PrivateMembershipRlweQueryRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlweQuery > queries_;
+  ::PROTOBUF_NAMESPACE_ID::int64 key_version_;
+  int use_case_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateMembershipRlweQueryResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PrivateMembershipRlweQueryResponse) */ {
+ public:
+  PrivateMembershipRlweQueryResponse();
+  virtual ~PrivateMembershipRlweQueryResponse();
+
+  PrivateMembershipRlweQueryResponse(const PrivateMembershipRlweQueryResponse& from);
+  PrivateMembershipRlweQueryResponse(PrivateMembershipRlweQueryResponse&& from) noexcept
+    : PrivateMembershipRlweQueryResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateMembershipRlweQueryResponse& operator=(const PrivateMembershipRlweQueryResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateMembershipRlweQueryResponse& operator=(PrivateMembershipRlweQueryResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PrivateMembershipRlweQueryResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateMembershipRlweQueryResponse* internal_default_instance() {
+    return reinterpret_cast<const PrivateMembershipRlweQueryResponse*>(
+               &_PrivateMembershipRlweQueryResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    3;
+
+  friend void swap(PrivateMembershipRlweQueryResponse& a, PrivateMembershipRlweQueryResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateMembershipRlweQueryResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateMembershipRlweQueryResponse* New() const final {
+    return CreateMaybeMessage<PrivateMembershipRlweQueryResponse>(nullptr);
+  }
+
+  PrivateMembershipRlweQueryResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateMembershipRlweQueryResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateMembershipRlweQueryResponse& from);
+  void MergeFrom(const PrivateMembershipRlweQueryResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateMembershipRlweQueryResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PrivateMembershipRlweQueryResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPirResponsesFieldNumber = 1,
+  };
+  // repeated .private_membership.rlwe.PrivateMembershipRlwePirResponse pir_responses = 1;
+  int pir_responses_size() const;
+  private:
+  int _internal_pir_responses_size() const;
+  public:
+  void clear_pir_responses();
+  ::private_membership::rlwe::PrivateMembershipRlwePirResponse* mutable_pir_responses(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlwePirResponse >*
+      mutable_pir_responses();
+  private:
+  const ::private_membership::rlwe::PrivateMembershipRlwePirResponse& _internal_pir_responses(int index) const;
+  ::private_membership::rlwe::PrivateMembershipRlwePirResponse* _internal_add_pir_responses();
+  public:
+  const ::private_membership::rlwe::PrivateMembershipRlwePirResponse& pir_responses(int index) const;
+  ::private_membership::rlwe::PrivateMembershipRlwePirResponse* add_pir_responses();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlwePirResponse >&
+      pir_responses() const;
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PrivateMembershipRlweQueryResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlwePirResponse > pir_responses_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RlwePlaintextId :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.RlwePlaintextId) */ {
+ public:
+  RlwePlaintextId();
+  virtual ~RlwePlaintextId();
+
+  RlwePlaintextId(const RlwePlaintextId& from);
+  RlwePlaintextId(RlwePlaintextId&& from) noexcept
+    : RlwePlaintextId() {
+    *this = ::std::move(from);
+  }
+
+  inline RlwePlaintextId& operator=(const RlwePlaintextId& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RlwePlaintextId& operator=(RlwePlaintextId&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const RlwePlaintextId& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RlwePlaintextId* internal_default_instance() {
+    return reinterpret_cast<const RlwePlaintextId*>(
+               &_RlwePlaintextId_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    4;
+
+  friend void swap(RlwePlaintextId& a, RlwePlaintextId& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RlwePlaintextId* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RlwePlaintextId* New() const final {
+    return CreateMaybeMessage<RlwePlaintextId>(nullptr);
+  }
+
+  RlwePlaintextId* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RlwePlaintextId>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RlwePlaintextId& from);
+  void MergeFrom(const RlwePlaintextId& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RlwePlaintextId* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.RlwePlaintextId";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNonSensitiveIdFieldNumber = 1,
+    kSensitiveIdFieldNumber = 2,
+  };
+  // string non_sensitive_id = 1;
+  void clear_non_sensitive_id();
+  const std::string& non_sensitive_id() const;
+  void set_non_sensitive_id(const std::string& value);
+  void set_non_sensitive_id(std::string&& value);
+  void set_non_sensitive_id(const char* value);
+  void set_non_sensitive_id(const char* value, size_t size);
+  std::string* mutable_non_sensitive_id();
+  std::string* release_non_sensitive_id();
+  void set_allocated_non_sensitive_id(std::string* non_sensitive_id);
+  private:
+  const std::string& _internal_non_sensitive_id() const;
+  void _internal_set_non_sensitive_id(const std::string& value);
+  std::string* _internal_mutable_non_sensitive_id();
+  public:
+
+  // string sensitive_id = 2;
+  void clear_sensitive_id();
+  const std::string& sensitive_id() const;
+  void set_sensitive_id(const std::string& value);
+  void set_sensitive_id(std::string&& value);
+  void set_sensitive_id(const char* value);
+  void set_sensitive_id(const char* value, size_t size);
+  std::string* mutable_sensitive_id();
+  std::string* release_sensitive_id();
+  void set_allocated_sensitive_id(std::string* sensitive_id);
+  private:
+  const std::string& _internal_sensitive_id() const;
+  void _internal_set_sensitive_id(const std::string& value);
+  std::string* _internal_mutable_sensitive_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.RlwePlaintextId)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr non_sensitive_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr sensitive_id_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class HashedBucketsParameters :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.HashedBucketsParameters) */ {
+ public:
+  HashedBucketsParameters();
+  virtual ~HashedBucketsParameters();
+
+  HashedBucketsParameters(const HashedBucketsParameters& from);
+  HashedBucketsParameters(HashedBucketsParameters&& from) noexcept
+    : HashedBucketsParameters() {
+    *this = ::std::move(from);
+  }
+
+  inline HashedBucketsParameters& operator=(const HashedBucketsParameters& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline HashedBucketsParameters& operator=(HashedBucketsParameters&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const HashedBucketsParameters& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const HashedBucketsParameters* internal_default_instance() {
+    return reinterpret_cast<const HashedBucketsParameters*>(
+               &_HashedBucketsParameters_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    5;
+
+  friend void swap(HashedBucketsParameters& a, HashedBucketsParameters& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(HashedBucketsParameters* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline HashedBucketsParameters* New() const final {
+    return CreateMaybeMessage<HashedBucketsParameters>(nullptr);
+  }
+
+  HashedBucketsParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<HashedBucketsParameters>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const HashedBucketsParameters& from);
+  void MergeFrom(const HashedBucketsParameters& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(HashedBucketsParameters* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.HashedBucketsParameters";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHashedBucketIdLengthFieldNumber = 1,
+    kNonSensitiveIdHashTypeFieldNumber = 2,
+  };
+  // int32 hashed_bucket_id_length = 1;
+  void clear_hashed_bucket_id_length();
+  ::PROTOBUF_NAMESPACE_ID::int32 hashed_bucket_id_length() const;
+  void set_hashed_bucket_id_length(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_hashed_bucket_id_length() const;
+  void _internal_set_hashed_bucket_id_length(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // .private_membership.HashType non_sensitive_id_hash_type = 2;
+  void clear_non_sensitive_id_hash_type();
+  ::private_membership::HashType non_sensitive_id_hash_type() const;
+  void set_non_sensitive_id_hash_type(::private_membership::HashType value);
+  private:
+  ::private_membership::HashType _internal_non_sensitive_id_hash_type() const;
+  void _internal_set_non_sensitive_id_hash_type(::private_membership::HashType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.HashedBucketsParameters)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::int32 hashed_bucket_id_length_;
+  int non_sensitive_id_hash_type_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class EncryptedBucketsParameters :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.EncryptedBucketsParameters) */ {
+ public:
+  EncryptedBucketsParameters();
+  virtual ~EncryptedBucketsParameters();
+
+  EncryptedBucketsParameters(const EncryptedBucketsParameters& from);
+  EncryptedBucketsParameters(EncryptedBucketsParameters&& from) noexcept
+    : EncryptedBucketsParameters() {
+    *this = ::std::move(from);
+  }
+
+  inline EncryptedBucketsParameters& operator=(const EncryptedBucketsParameters& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline EncryptedBucketsParameters& operator=(EncryptedBucketsParameters&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const EncryptedBucketsParameters& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const EncryptedBucketsParameters* internal_default_instance() {
+    return reinterpret_cast<const EncryptedBucketsParameters*>(
+               &_EncryptedBucketsParameters_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    6;
+
+  friend void swap(EncryptedBucketsParameters& a, EncryptedBucketsParameters& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(EncryptedBucketsParameters* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline EncryptedBucketsParameters* New() const final {
+    return CreateMaybeMessage<EncryptedBucketsParameters>(nullptr);
+  }
+
+  EncryptedBucketsParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<EncryptedBucketsParameters>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const EncryptedBucketsParameters& from);
+  void MergeFrom(const EncryptedBucketsParameters& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(EncryptedBucketsParameters* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.EncryptedBucketsParameters";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEncryptedBucketIdLengthFieldNumber = 1,
+    kSensitiveIdHashTypeFieldNumber = 2,
+  };
+  // int32 encrypted_bucket_id_length = 1;
+  void clear_encrypted_bucket_id_length();
+  ::PROTOBUF_NAMESPACE_ID::int32 encrypted_bucket_id_length() const;
+  void set_encrypted_bucket_id_length(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_encrypted_bucket_id_length() const;
+  void _internal_set_encrypted_bucket_id_length(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // .private_membership.EncryptedBucketHashType sensitive_id_hash_type = 2;
+  void clear_sensitive_id_hash_type();
+  ::private_membership::EncryptedBucketHashType sensitive_id_hash_type() const;
+  void set_sensitive_id_hash_type(::private_membership::EncryptedBucketHashType value);
+  private:
+  ::private_membership::EncryptedBucketHashType _internal_sensitive_id_hash_type() const;
+  void _internal_set_sensitive_id_hash_type(::private_membership::EncryptedBucketHashType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.EncryptedBucketsParameters)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::int32 encrypted_bucket_id_length_;
+  int sensitive_id_hash_type_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RlweParameters :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.RlweParameters) */ {
+ public:
+  RlweParameters();
+  virtual ~RlweParameters();
+
+  RlweParameters(const RlweParameters& from);
+  RlweParameters(RlweParameters&& from) noexcept
+    : RlweParameters() {
+    *this = ::std::move(from);
+  }
+
+  inline RlweParameters& operator=(const RlweParameters& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RlweParameters& operator=(RlweParameters&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const RlweParameters& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RlweParameters* internal_default_instance() {
+    return reinterpret_cast<const RlweParameters*>(
+               &_RlweParameters_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    7;
+
+  friend void swap(RlweParameters& a, RlweParameters& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RlweParameters* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RlweParameters* New() const final {
+    return CreateMaybeMessage<RlweParameters>(nullptr);
+  }
+
+  RlweParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RlweParameters>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RlweParameters& from);
+  void MergeFrom(const RlweParameters& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RlweParameters* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.RlweParameters";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kModulusFieldNumber = 1,
+    kLogDegreeFieldNumber = 2,
+    kLogTFieldNumber = 3,
+    kVarianceFieldNumber = 4,
+    kLevelsOfRecursionFieldNumber = 5,
+  };
+  // repeated .private_membership.rlwe.Uint128 modulus = 1;
+  int modulus_size() const;
+  private:
+  int _internal_modulus_size() const;
+  public:
+  void clear_modulus();
+  ::private_membership::rlwe::Uint128* mutable_modulus(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::Uint128 >*
+      mutable_modulus();
+  private:
+  const ::private_membership::rlwe::Uint128& _internal_modulus(int index) const;
+  ::private_membership::rlwe::Uint128* _internal_add_modulus();
+  public:
+  const ::private_membership::rlwe::Uint128& modulus(int index) const;
+  ::private_membership::rlwe::Uint128* add_modulus();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::Uint128 >&
+      modulus() const;
+
+  // int32 log_degree = 2;
+  void clear_log_degree();
+  ::PROTOBUF_NAMESPACE_ID::int32 log_degree() const;
+  void set_log_degree(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_log_degree() const;
+  void _internal_set_log_degree(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // int32 log_t = 3;
+  void clear_log_t();
+  ::PROTOBUF_NAMESPACE_ID::int32 log_t() const;
+  void set_log_t(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_log_t() const;
+  void _internal_set_log_t(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // int32 variance = 4;
+  void clear_variance();
+  ::PROTOBUF_NAMESPACE_ID::int32 variance() const;
+  void set_variance(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_variance() const;
+  void _internal_set_variance(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // int32 levels_of_recursion = 5;
+  void clear_levels_of_recursion();
+  ::PROTOBUF_NAMESPACE_ID::int32 levels_of_recursion() const;
+  void set_levels_of_recursion(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_levels_of_recursion() const;
+  void _internal_set_levels_of_recursion(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.RlweParameters)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::Uint128 > modulus_;
+  ::PROTOBUF_NAMESPACE_ID::int32 log_degree_;
+  ::PROTOBUF_NAMESPACE_ID::int32 log_t_;
+  ::PROTOBUF_NAMESPACE_ID::int32 variance_;
+  ::PROTOBUF_NAMESPACE_ID::int32 levels_of_recursion_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class Uint128 :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.Uint128) */ {
+ public:
+  Uint128();
+  virtual ~Uint128();
+
+  Uint128(const Uint128& from);
+  Uint128(Uint128&& from) noexcept
+    : Uint128() {
+    *this = ::std::move(from);
+  }
+
+  inline Uint128& operator=(const Uint128& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline Uint128& operator=(Uint128&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const Uint128& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const Uint128* internal_default_instance() {
+    return reinterpret_cast<const Uint128*>(
+               &_Uint128_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    8;
+
+  friend void swap(Uint128& a, Uint128& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(Uint128* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline Uint128* New() const final {
+    return CreateMaybeMessage<Uint128>(nullptr);
+  }
+
+  Uint128* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<Uint128>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const Uint128& from);
+  void MergeFrom(const Uint128& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(Uint128* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.Uint128";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kLoFieldNumber = 1,
+    kHiFieldNumber = 2,
+  };
+  // uint64 lo = 1;
+  void clear_lo();
+  ::PROTOBUF_NAMESPACE_ID::uint64 lo() const;
+  void set_lo(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_lo() const;
+  void _internal_set_lo(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // uint64 hi = 2;
+  void clear_hi();
+  ::PROTOBUF_NAMESPACE_ID::uint64 hi() const;
+  void set_hi(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_hi() const;
+  void _internal_set_hi(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.Uint128)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 lo_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 hi_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateMembershipRlweQuery_HashedBucketId :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId) */ {
+ public:
+  PrivateMembershipRlweQuery_HashedBucketId();
+  virtual ~PrivateMembershipRlweQuery_HashedBucketId();
+
+  PrivateMembershipRlweQuery_HashedBucketId(const PrivateMembershipRlweQuery_HashedBucketId& from);
+  PrivateMembershipRlweQuery_HashedBucketId(PrivateMembershipRlweQuery_HashedBucketId&& from) noexcept
+    : PrivateMembershipRlweQuery_HashedBucketId() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateMembershipRlweQuery_HashedBucketId& operator=(const PrivateMembershipRlweQuery_HashedBucketId& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateMembershipRlweQuery_HashedBucketId& operator=(PrivateMembershipRlweQuery_HashedBucketId&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PrivateMembershipRlweQuery_HashedBucketId& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateMembershipRlweQuery_HashedBucketId* internal_default_instance() {
+    return reinterpret_cast<const PrivateMembershipRlweQuery_HashedBucketId*>(
+               &_PrivateMembershipRlweQuery_HashedBucketId_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    9;
+
+  friend void swap(PrivateMembershipRlweQuery_HashedBucketId& a, PrivateMembershipRlweQuery_HashedBucketId& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateMembershipRlweQuery_HashedBucketId* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateMembershipRlweQuery_HashedBucketId* New() const final {
+    return CreateMaybeMessage<PrivateMembershipRlweQuery_HashedBucketId>(nullptr);
+  }
+
+  PrivateMembershipRlweQuery_HashedBucketId* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateMembershipRlweQuery_HashedBucketId>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateMembershipRlweQuery_HashedBucketId& from);
+  void MergeFrom(const PrivateMembershipRlweQuery_HashedBucketId& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateMembershipRlweQuery_HashedBucketId* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHashedBucketIdFieldNumber = 1,
+    kBitLengthFieldNumber = 2,
+  };
+  // bytes hashed_bucket_id = 1;
+  void clear_hashed_bucket_id();
+  const std::string& hashed_bucket_id() const;
+  void set_hashed_bucket_id(const std::string& value);
+  void set_hashed_bucket_id(std::string&& value);
+  void set_hashed_bucket_id(const char* value);
+  void set_hashed_bucket_id(const void* value, size_t size);
+  std::string* mutable_hashed_bucket_id();
+  std::string* release_hashed_bucket_id();
+  void set_allocated_hashed_bucket_id(std::string* hashed_bucket_id);
+  private:
+  const std::string& _internal_hashed_bucket_id() const;
+  void _internal_set_hashed_bucket_id(const std::string& value);
+  std::string* _internal_mutable_hashed_bucket_id();
+  public:
+
+  // int32 bit_length = 2;
+  void clear_bit_length();
+  ::PROTOBUF_NAMESPACE_ID::int32 bit_length() const;
+  void set_bit_length(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_bit_length() const;
+  void _internal_set_bit_length(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr hashed_bucket_id_;
+  ::PROTOBUF_NAMESPACE_ID::int32 bit_length_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateMembershipRlweQuery :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PrivateMembershipRlweQuery) */ {
+ public:
+  PrivateMembershipRlweQuery();
+  virtual ~PrivateMembershipRlweQuery();
+
+  PrivateMembershipRlweQuery(const PrivateMembershipRlweQuery& from);
+  PrivateMembershipRlweQuery(PrivateMembershipRlweQuery&& from) noexcept
+    : PrivateMembershipRlweQuery() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateMembershipRlweQuery& operator=(const PrivateMembershipRlweQuery& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateMembershipRlweQuery& operator=(PrivateMembershipRlweQuery&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PrivateMembershipRlweQuery& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateMembershipRlweQuery* internal_default_instance() {
+    return reinterpret_cast<const PrivateMembershipRlweQuery*>(
+               &_PrivateMembershipRlweQuery_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    10;
+
+  friend void swap(PrivateMembershipRlweQuery& a, PrivateMembershipRlweQuery& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateMembershipRlweQuery* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateMembershipRlweQuery* New() const final {
+    return CreateMaybeMessage<PrivateMembershipRlweQuery>(nullptr);
+  }
+
+  PrivateMembershipRlweQuery* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateMembershipRlweQuery>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateMembershipRlweQuery& from);
+  void MergeFrom(const PrivateMembershipRlweQuery& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateMembershipRlweQuery* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PrivateMembershipRlweQuery";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef PrivateMembershipRlweQuery_HashedBucketId HashedBucketId;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kQueriedEncryptedIdFieldNumber = 1,
+    kPirRequestFieldNumber = 2,
+    kHashedBucketIdFieldNumber = 3,
+  };
+  // bytes queried_encrypted_id = 1;
+  void clear_queried_encrypted_id();
+  const std::string& queried_encrypted_id() const;
+  void set_queried_encrypted_id(const std::string& value);
+  void set_queried_encrypted_id(std::string&& value);
+  void set_queried_encrypted_id(const char* value);
+  void set_queried_encrypted_id(const void* value, size_t size);
+  std::string* mutable_queried_encrypted_id();
+  std::string* release_queried_encrypted_id();
+  void set_allocated_queried_encrypted_id(std::string* queried_encrypted_id);
+  private:
+  const std::string& _internal_queried_encrypted_id() const;
+  void _internal_set_queried_encrypted_id(const std::string& value);
+  std::string* _internal_mutable_queried_encrypted_id();
+  public:
+
+  // .private_membership.rlwe.PirRequest pir_request = 2;
+  bool has_pir_request() const;
+  private:
+  bool _internal_has_pir_request() const;
+  public:
+  void clear_pir_request();
+  const ::private_membership::rlwe::PirRequest& pir_request() const;
+  ::private_membership::rlwe::PirRequest* release_pir_request();
+  ::private_membership::rlwe::PirRequest* mutable_pir_request();
+  void set_allocated_pir_request(::private_membership::rlwe::PirRequest* pir_request);
+  private:
+  const ::private_membership::rlwe::PirRequest& _internal_pir_request() const;
+  ::private_membership::rlwe::PirRequest* _internal_mutable_pir_request();
+  public:
+
+  // .private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId hashed_bucket_id = 3;
+  bool has_hashed_bucket_id() const;
+  private:
+  bool _internal_has_hashed_bucket_id() const;
+  public:
+  void clear_hashed_bucket_id();
+  const ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId& hashed_bucket_id() const;
+  ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* release_hashed_bucket_id();
+  ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* mutable_hashed_bucket_id();
+  void set_allocated_hashed_bucket_id(::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* hashed_bucket_id);
+  private:
+  const ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId& _internal_hashed_bucket_id() const;
+  ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* _internal_mutable_hashed_bucket_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PrivateMembershipRlweQuery)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr queried_encrypted_id_;
+  ::private_membership::rlwe::PirRequest* pir_request_;
+  ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* hashed_bucket_id_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PrivateMembershipRlwePirResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PrivateMembershipRlwePirResponse) */ {
+ public:
+  PrivateMembershipRlwePirResponse();
+  virtual ~PrivateMembershipRlwePirResponse();
+
+  PrivateMembershipRlwePirResponse(const PrivateMembershipRlwePirResponse& from);
+  PrivateMembershipRlwePirResponse(PrivateMembershipRlwePirResponse&& from) noexcept
+    : PrivateMembershipRlwePirResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PrivateMembershipRlwePirResponse& operator=(const PrivateMembershipRlwePirResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PrivateMembershipRlwePirResponse& operator=(PrivateMembershipRlwePirResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PrivateMembershipRlwePirResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PrivateMembershipRlwePirResponse* internal_default_instance() {
+    return reinterpret_cast<const PrivateMembershipRlwePirResponse*>(
+               &_PrivateMembershipRlwePirResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    11;
+
+  friend void swap(PrivateMembershipRlwePirResponse& a, PrivateMembershipRlwePirResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PrivateMembershipRlwePirResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PrivateMembershipRlwePirResponse* New() const final {
+    return CreateMaybeMessage<PrivateMembershipRlwePirResponse>(nullptr);
+  }
+
+  PrivateMembershipRlwePirResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PrivateMembershipRlwePirResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PrivateMembershipRlwePirResponse& from);
+  void MergeFrom(const PrivateMembershipRlwePirResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PrivateMembershipRlwePirResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PrivateMembershipRlwePirResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kQueriedEncryptedIdFieldNumber = 1,
+    kPirResponseFieldNumber = 2,
+  };
+  // bytes queried_encrypted_id = 1;
+  void clear_queried_encrypted_id();
+  const std::string& queried_encrypted_id() const;
+  void set_queried_encrypted_id(const std::string& value);
+  void set_queried_encrypted_id(std::string&& value);
+  void set_queried_encrypted_id(const char* value);
+  void set_queried_encrypted_id(const void* value, size_t size);
+  std::string* mutable_queried_encrypted_id();
+  std::string* release_queried_encrypted_id();
+  void set_allocated_queried_encrypted_id(std::string* queried_encrypted_id);
+  private:
+  const std::string& _internal_queried_encrypted_id() const;
+  void _internal_set_queried_encrypted_id(const std::string& value);
+  std::string* _internal_mutable_queried_encrypted_id();
+  public:
+
+  // .private_membership.rlwe.PirResponse pir_response = 2;
+  bool has_pir_response() const;
+  private:
+  bool _internal_has_pir_response() const;
+  public:
+  void clear_pir_response();
+  const ::private_membership::rlwe::PirResponse& pir_response() const;
+  ::private_membership::rlwe::PirResponse* release_pir_response();
+  ::private_membership::rlwe::PirResponse* mutable_pir_response();
+  void set_allocated_pir_response(::private_membership::rlwe::PirResponse* pir_response);
+  private:
+  const ::private_membership::rlwe::PirResponse& _internal_pir_response() const;
+  ::private_membership::rlwe::PirResponse* _internal_mutable_pir_response();
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PrivateMembershipRlwePirResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr queried_encrypted_id_;
+  ::private_membership::rlwe::PirResponse* pir_response_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PirRequest :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PirRequest) */ {
+ public:
+  PirRequest();
+  virtual ~PirRequest();
+
+  PirRequest(const PirRequest& from);
+  PirRequest(PirRequest&& from) noexcept
+    : PirRequest() {
+    *this = ::std::move(from);
+  }
+
+  inline PirRequest& operator=(const PirRequest& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PirRequest& operator=(PirRequest&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PirRequest& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PirRequest* internal_default_instance() {
+    return reinterpret_cast<const PirRequest*>(
+               &_PirRequest_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    12;
+
+  friend void swap(PirRequest& a, PirRequest& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PirRequest* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PirRequest* New() const final {
+    return CreateMaybeMessage<PirRequest>(nullptr);
+  }
+
+  PirRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PirRequest>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PirRequest& from);
+  void MergeFrom(const PirRequest& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PirRequest* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PirRequest";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kRequestFieldNumber = 1,
+    kPrngSeedFieldNumber = 2,
+  };
+  // repeated .rlwe.SerializedNttPolynomial request = 1;
+  int request_size() const;
+  private:
+  int _internal_request_size() const;
+  public:
+  void clear_request();
+  ::rlwe::SerializedNttPolynomial* mutable_request(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >*
+      mutable_request();
+  private:
+  const ::rlwe::SerializedNttPolynomial& _internal_request(int index) const;
+  ::rlwe::SerializedNttPolynomial* _internal_add_request();
+  public:
+  const ::rlwe::SerializedNttPolynomial& request(int index) const;
+  ::rlwe::SerializedNttPolynomial* add_request();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >&
+      request() const;
+
+  // bytes prng_seed = 2;
+  void clear_prng_seed();
+  const std::string& prng_seed() const;
+  void set_prng_seed(const std::string& value);
+  void set_prng_seed(std::string&& value);
+  void set_prng_seed(const char* value);
+  void set_prng_seed(const void* value, size_t size);
+  std::string* mutable_prng_seed();
+  std::string* release_prng_seed();
+  void set_allocated_prng_seed(std::string* prng_seed);
+  private:
+  const std::string& _internal_prng_seed() const;
+  void _internal_set_prng_seed(const std::string& value);
+  std::string* _internal_mutable_prng_seed();
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PirRequest)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial > request_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr prng_seed_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class PirResponse :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.PirResponse) */ {
+ public:
+  PirResponse();
+  virtual ~PirResponse();
+
+  PirResponse(const PirResponse& from);
+  PirResponse(PirResponse&& from) noexcept
+    : PirResponse() {
+    *this = ::std::move(from);
+  }
+
+  inline PirResponse& operator=(const PirResponse& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline PirResponse& operator=(PirResponse&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const PirResponse& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const PirResponse* internal_default_instance() {
+    return reinterpret_cast<const PirResponse*>(
+               &_PirResponse_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    13;
+
+  friend void swap(PirResponse& a, PirResponse& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(PirResponse* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline PirResponse* New() const final {
+    return CreateMaybeMessage<PirResponse>(nullptr);
+  }
+
+  PirResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<PirResponse>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const PirResponse& from);
+  void MergeFrom(const PirResponse& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(PirResponse* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.PirResponse";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kResponseFieldNumber = 1,
+    kPlaintextEntrySizeFieldNumber = 2,
+  };
+  // repeated .rlwe.SerializedSymmetricRlweCiphertext response = 1;
+  int response_size() const;
+  private:
+  int _internal_response_size() const;
+  public:
+  void clear_response();
+  ::rlwe::SerializedSymmetricRlweCiphertext* mutable_response(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedSymmetricRlweCiphertext >*
+      mutable_response();
+  private:
+  const ::rlwe::SerializedSymmetricRlweCiphertext& _internal_response(int index) const;
+  ::rlwe::SerializedSymmetricRlweCiphertext* _internal_add_response();
+  public:
+  const ::rlwe::SerializedSymmetricRlweCiphertext& response(int index) const;
+  ::rlwe::SerializedSymmetricRlweCiphertext* add_response();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedSymmetricRlweCiphertext >&
+      response() const;
+
+  // int32 plaintext_entry_size = 2;
+  void clear_plaintext_entry_size();
+  ::PROTOBUF_NAMESPACE_ID::int32 plaintext_entry_size() const;
+  void set_plaintext_entry_size(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_plaintext_entry_size() const;
+  void _internal_set_plaintext_entry_size(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.PirResponse)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedSymmetricRlweCiphertext > response_;
+  ::PROTOBUF_NAMESPACE_ID::int32 plaintext_entry_size_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class EncryptedBucket_EncryptedIdValuePair :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair) */ {
+ public:
+  EncryptedBucket_EncryptedIdValuePair();
+  virtual ~EncryptedBucket_EncryptedIdValuePair();
+
+  EncryptedBucket_EncryptedIdValuePair(const EncryptedBucket_EncryptedIdValuePair& from);
+  EncryptedBucket_EncryptedIdValuePair(EncryptedBucket_EncryptedIdValuePair&& from) noexcept
+    : EncryptedBucket_EncryptedIdValuePair() {
+    *this = ::std::move(from);
+  }
+
+  inline EncryptedBucket_EncryptedIdValuePair& operator=(const EncryptedBucket_EncryptedIdValuePair& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline EncryptedBucket_EncryptedIdValuePair& operator=(EncryptedBucket_EncryptedIdValuePair&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const EncryptedBucket_EncryptedIdValuePair& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const EncryptedBucket_EncryptedIdValuePair* internal_default_instance() {
+    return reinterpret_cast<const EncryptedBucket_EncryptedIdValuePair*>(
+               &_EncryptedBucket_EncryptedIdValuePair_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    14;
+
+  friend void swap(EncryptedBucket_EncryptedIdValuePair& a, EncryptedBucket_EncryptedIdValuePair& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(EncryptedBucket_EncryptedIdValuePair* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline EncryptedBucket_EncryptedIdValuePair* New() const final {
+    return CreateMaybeMessage<EncryptedBucket_EncryptedIdValuePair>(nullptr);
+  }
+
+  EncryptedBucket_EncryptedIdValuePair* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<EncryptedBucket_EncryptedIdValuePair>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const EncryptedBucket_EncryptedIdValuePair& from);
+  void MergeFrom(const EncryptedBucket_EncryptedIdValuePair& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(EncryptedBucket_EncryptedIdValuePair* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEncryptedIdFieldNumber = 1,
+    kEncryptedValueFieldNumber = 2,
+  };
+  // bytes encrypted_id = 1;
+  void clear_encrypted_id();
+  const std::string& encrypted_id() const;
+  void set_encrypted_id(const std::string& value);
+  void set_encrypted_id(std::string&& value);
+  void set_encrypted_id(const char* value);
+  void set_encrypted_id(const void* value, size_t size);
+  std::string* mutable_encrypted_id();
+  std::string* release_encrypted_id();
+  void set_allocated_encrypted_id(std::string* encrypted_id);
+  private:
+  const std::string& _internal_encrypted_id() const;
+  void _internal_set_encrypted_id(const std::string& value);
+  std::string* _internal_mutable_encrypted_id();
+  public:
+
+  // bytes encrypted_value = 2;
+  void clear_encrypted_value();
+  const std::string& encrypted_value() const;
+  void set_encrypted_value(const std::string& value);
+  void set_encrypted_value(std::string&& value);
+  void set_encrypted_value(const char* value);
+  void set_encrypted_value(const void* value, size_t size);
+  std::string* mutable_encrypted_value();
+  std::string* release_encrypted_value();
+  void set_allocated_encrypted_value(std::string* encrypted_value);
+  private:
+  const std::string& _internal_encrypted_value() const;
+  void _internal_set_encrypted_value(const std::string& value);
+  std::string* _internal_mutable_encrypted_value();
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr encrypted_id_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr encrypted_value_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class EncryptedBucket :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.EncryptedBucket) */ {
+ public:
+  EncryptedBucket();
+  virtual ~EncryptedBucket();
+
+  EncryptedBucket(const EncryptedBucket& from);
+  EncryptedBucket(EncryptedBucket&& from) noexcept
+    : EncryptedBucket() {
+    *this = ::std::move(from);
+  }
+
+  inline EncryptedBucket& operator=(const EncryptedBucket& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline EncryptedBucket& operator=(EncryptedBucket&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const EncryptedBucket& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const EncryptedBucket* internal_default_instance() {
+    return reinterpret_cast<const EncryptedBucket*>(
+               &_EncryptedBucket_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    15;
+
+  friend void swap(EncryptedBucket& a, EncryptedBucket& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(EncryptedBucket* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline EncryptedBucket* New() const final {
+    return CreateMaybeMessage<EncryptedBucket>(nullptr);
+  }
+
+  EncryptedBucket* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<EncryptedBucket>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const EncryptedBucket& from);
+  void MergeFrom(const EncryptedBucket& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(EncryptedBucket* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.EncryptedBucket";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef EncryptedBucket_EncryptedIdValuePair EncryptedIdValuePair;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEncryptedIdValuePairsFieldNumber = 1,
+  };
+  // repeated .private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair encrypted_id_value_pairs = 1;
+  int encrypted_id_value_pairs_size() const;
+  private:
+  int _internal_encrypted_id_value_pairs_size() const;
+  public:
+  void clear_encrypted_id_value_pairs();
+  ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair* mutable_encrypted_id_value_pairs(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair >*
+      mutable_encrypted_id_value_pairs();
+  private:
+  const ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair& _internal_encrypted_id_value_pairs(int index) const;
+  ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair* _internal_add_encrypted_id_value_pairs();
+  public:
+  const ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair& encrypted_id_value_pairs(int index) const;
+  ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair* add_encrypted_id_value_pairs();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair >&
+      encrypted_id_value_pairs() const;
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.EncryptedBucket)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair > encrypted_id_value_pairs_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RlweMembershipResponses_MembershipResponseEntry :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry) */ {
+ public:
+  RlweMembershipResponses_MembershipResponseEntry();
+  virtual ~RlweMembershipResponses_MembershipResponseEntry();
+
+  RlweMembershipResponses_MembershipResponseEntry(const RlweMembershipResponses_MembershipResponseEntry& from);
+  RlweMembershipResponses_MembershipResponseEntry(RlweMembershipResponses_MembershipResponseEntry&& from) noexcept
+    : RlweMembershipResponses_MembershipResponseEntry() {
+    *this = ::std::move(from);
+  }
+
+  inline RlweMembershipResponses_MembershipResponseEntry& operator=(const RlweMembershipResponses_MembershipResponseEntry& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RlweMembershipResponses_MembershipResponseEntry& operator=(RlweMembershipResponses_MembershipResponseEntry&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const RlweMembershipResponses_MembershipResponseEntry& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RlweMembershipResponses_MembershipResponseEntry* internal_default_instance() {
+    return reinterpret_cast<const RlweMembershipResponses_MembershipResponseEntry*>(
+               &_RlweMembershipResponses_MembershipResponseEntry_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    16;
+
+  friend void swap(RlweMembershipResponses_MembershipResponseEntry& a, RlweMembershipResponses_MembershipResponseEntry& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RlweMembershipResponses_MembershipResponseEntry* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RlweMembershipResponses_MembershipResponseEntry* New() const final {
+    return CreateMaybeMessage<RlweMembershipResponses_MembershipResponseEntry>(nullptr);
+  }
+
+  RlweMembershipResponses_MembershipResponseEntry* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RlweMembershipResponses_MembershipResponseEntry>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RlweMembershipResponses_MembershipResponseEntry& from);
+  void MergeFrom(const RlweMembershipResponses_MembershipResponseEntry& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RlweMembershipResponses_MembershipResponseEntry* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPlaintextIdFieldNumber = 1,
+    kMembershipResponseFieldNumber = 2,
+  };
+  // .private_membership.rlwe.RlwePlaintextId plaintext_id = 1;
+  bool has_plaintext_id() const;
+  private:
+  bool _internal_has_plaintext_id() const;
+  public:
+  void clear_plaintext_id();
+  const ::private_membership::rlwe::RlwePlaintextId& plaintext_id() const;
+  ::private_membership::rlwe::RlwePlaintextId* release_plaintext_id();
+  ::private_membership::rlwe::RlwePlaintextId* mutable_plaintext_id();
+  void set_allocated_plaintext_id(::private_membership::rlwe::RlwePlaintextId* plaintext_id);
+  private:
+  const ::private_membership::rlwe::RlwePlaintextId& _internal_plaintext_id() const;
+  ::private_membership::rlwe::RlwePlaintextId* _internal_mutable_plaintext_id();
+  public:
+
+  // .private_membership.MembershipResponse membership_response = 2;
+  bool has_membership_response() const;
+  private:
+  bool _internal_has_membership_response() const;
+  public:
+  void clear_membership_response();
+  const ::private_membership::MembershipResponse& membership_response() const;
+  ::private_membership::MembershipResponse* release_membership_response();
+  ::private_membership::MembershipResponse* mutable_membership_response();
+  void set_allocated_membership_response(::private_membership::MembershipResponse* membership_response);
+  private:
+  const ::private_membership::MembershipResponse& _internal_membership_response() const;
+  ::private_membership::MembershipResponse* _internal_mutable_membership_response();
+  public:
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::private_membership::rlwe::RlwePlaintextId* plaintext_id_;
+  ::private_membership::MembershipResponse* membership_response_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// -------------------------------------------------------------------
+
+class RlweMembershipResponses :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:private_membership.rlwe.RlweMembershipResponses) */ {
+ public:
+  RlweMembershipResponses();
+  virtual ~RlweMembershipResponses();
+
+  RlweMembershipResponses(const RlweMembershipResponses& from);
+  RlweMembershipResponses(RlweMembershipResponses&& from) noexcept
+    : RlweMembershipResponses() {
+    *this = ::std::move(from);
+  }
+
+  inline RlweMembershipResponses& operator=(const RlweMembershipResponses& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline RlweMembershipResponses& operator=(RlweMembershipResponses&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  static const RlweMembershipResponses& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const RlweMembershipResponses* internal_default_instance() {
+    return reinterpret_cast<const RlweMembershipResponses*>(
+               &_RlweMembershipResponses_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    17;
+
+  friend void swap(RlweMembershipResponses& a, RlweMembershipResponses& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(RlweMembershipResponses* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline RlweMembershipResponses* New() const final {
+    return CreateMaybeMessage<RlweMembershipResponses>(nullptr);
+  }
+
+  RlweMembershipResponses* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<RlweMembershipResponses>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const RlweMembershipResponses& from);
+  void MergeFrom(const RlweMembershipResponses& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(RlweMembershipResponses* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "private_membership.rlwe.RlweMembershipResponses";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef RlweMembershipResponses_MembershipResponseEntry MembershipResponseEntry;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMembershipResponsesFieldNumber = 1,
+  };
+  // repeated .private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry membership_responses = 1;
+  int membership_responses_size() const;
+  private:
+  int _internal_membership_responses_size() const;
+  public:
+  void clear_membership_responses();
+  ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry* mutable_membership_responses(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry >*
+      mutable_membership_responses();
+  private:
+  const ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry& _internal_membership_responses(int index) const;
+  ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry* _internal_add_membership_responses();
+  public:
+  const ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry& membership_responses(int index) const;
+  ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry* add_membership_responses();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry >&
+      membership_responses() const;
+
+  // @@protoc_insertion_point(class_scope:private_membership.rlwe.RlweMembershipResponses)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry > membership_responses_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  friend struct ::TableStruct_private_5fmembership_5frlwe_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// PrivateMembershipRlweOprfRequest
+
+// repeated bytes encrypted_ids = 1;
+inline int PrivateMembershipRlweOprfRequest::_internal_encrypted_ids_size() const {
+  return encrypted_ids_.size();
+}
+inline int PrivateMembershipRlweOprfRequest::encrypted_ids_size() const {
+  return _internal_encrypted_ids_size();
+}
+inline void PrivateMembershipRlweOprfRequest::clear_encrypted_ids() {
+  encrypted_ids_.Clear();
+}
+inline std::string* PrivateMembershipRlweOprfRequest::add_encrypted_ids() {
+  // @@protoc_insertion_point(field_add_mutable:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+  return _internal_add_encrypted_ids();
+}
+inline const std::string& PrivateMembershipRlweOprfRequest::_internal_encrypted_ids(int index) const {
+  return encrypted_ids_.Get(index);
+}
+inline const std::string& PrivateMembershipRlweOprfRequest::encrypted_ids(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+  return _internal_encrypted_ids(index);
+}
+inline std::string* PrivateMembershipRlweOprfRequest::mutable_encrypted_ids(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+  return encrypted_ids_.Mutable(index);
+}
+inline void PrivateMembershipRlweOprfRequest::set_encrypted_ids(int index, const std::string& value) {
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+  encrypted_ids_.Mutable(index)->assign(value);
+}
+inline void PrivateMembershipRlweOprfRequest::set_encrypted_ids(int index, std::string&& value) {
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+  encrypted_ids_.Mutable(index)->assign(std::move(value));
+}
+inline void PrivateMembershipRlweOprfRequest::set_encrypted_ids(int index, const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  encrypted_ids_.Mutable(index)->assign(value);
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+}
+inline void PrivateMembershipRlweOprfRequest::set_encrypted_ids(int index, const void* value, size_t size) {
+  encrypted_ids_.Mutable(index)->assign(
+    reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+}
+inline std::string* PrivateMembershipRlweOprfRequest::_internal_add_encrypted_ids() {
+  return encrypted_ids_.Add();
+}
+inline void PrivateMembershipRlweOprfRequest::add_encrypted_ids(const std::string& value) {
+  encrypted_ids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+}
+inline void PrivateMembershipRlweOprfRequest::add_encrypted_ids(std::string&& value) {
+  encrypted_ids_.Add(std::move(value));
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+}
+inline void PrivateMembershipRlweOprfRequest::add_encrypted_ids(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  encrypted_ids_.Add()->assign(value);
+  // @@protoc_insertion_point(field_add_char:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+}
+inline void PrivateMembershipRlweOprfRequest::add_encrypted_ids(const void* value, size_t size) {
+  encrypted_ids_.Add()->assign(reinterpret_cast<const char*>(value), size);
+  // @@protoc_insertion_point(field_add_pointer:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
+PrivateMembershipRlweOprfRequest::encrypted_ids() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+  return encrypted_ids_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
+PrivateMembershipRlweOprfRequest::mutable_encrypted_ids() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.PrivateMembershipRlweOprfRequest.encrypted_ids)
+  return &encrypted_ids_;
+}
+
+// .private_membership.rlwe.RlweUseCase use_case = 2;
+inline void PrivateMembershipRlweOprfRequest::clear_use_case() {
+  use_case_ = 0;
+}
+inline ::private_membership::rlwe::RlweUseCase PrivateMembershipRlweOprfRequest::_internal_use_case() const {
+  return static_cast< ::private_membership::rlwe::RlweUseCase >(use_case_);
+}
+inline ::private_membership::rlwe::RlweUseCase PrivateMembershipRlweOprfRequest::use_case() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweOprfRequest.use_case)
+  return _internal_use_case();
+}
+inline void PrivateMembershipRlweOprfRequest::_internal_set_use_case(::private_membership::rlwe::RlweUseCase value) {
+  
+  use_case_ = value;
+}
+inline void PrivateMembershipRlweOprfRequest::set_use_case(::private_membership::rlwe::RlweUseCase value) {
+  _internal_set_use_case(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweOprfRequest.use_case)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateMembershipRlweOprfResponse
+
+// repeated .private_membership.DoublyEncryptedId doubly_encrypted_ids = 1;
+inline int PrivateMembershipRlweOprfResponse::_internal_doubly_encrypted_ids_size() const {
+  return doubly_encrypted_ids_.size();
+}
+inline int PrivateMembershipRlweOprfResponse::doubly_encrypted_ids_size() const {
+  return _internal_doubly_encrypted_ids_size();
+}
+inline ::private_membership::DoublyEncryptedId* PrivateMembershipRlweOprfResponse::mutable_doubly_encrypted_ids(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweOprfResponse.doubly_encrypted_ids)
+  return doubly_encrypted_ids_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::DoublyEncryptedId >*
+PrivateMembershipRlweOprfResponse::mutable_doubly_encrypted_ids() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.PrivateMembershipRlweOprfResponse.doubly_encrypted_ids)
+  return &doubly_encrypted_ids_;
+}
+inline const ::private_membership::DoublyEncryptedId& PrivateMembershipRlweOprfResponse::_internal_doubly_encrypted_ids(int index) const {
+  return doubly_encrypted_ids_.Get(index);
+}
+inline const ::private_membership::DoublyEncryptedId& PrivateMembershipRlweOprfResponse::doubly_encrypted_ids(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweOprfResponse.doubly_encrypted_ids)
+  return _internal_doubly_encrypted_ids(index);
+}
+inline ::private_membership::DoublyEncryptedId* PrivateMembershipRlweOprfResponse::_internal_add_doubly_encrypted_ids() {
+  return doubly_encrypted_ids_.Add();
+}
+inline ::private_membership::DoublyEncryptedId* PrivateMembershipRlweOprfResponse::add_doubly_encrypted_ids() {
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.PrivateMembershipRlweOprfResponse.doubly_encrypted_ids)
+  return _internal_add_doubly_encrypted_ids();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::DoublyEncryptedId >&
+PrivateMembershipRlweOprfResponse::doubly_encrypted_ids() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.PrivateMembershipRlweOprfResponse.doubly_encrypted_ids)
+  return doubly_encrypted_ids_;
+}
+
+// .private_membership.rlwe.HashedBucketsParameters hashed_buckets_parameters = 2;
+inline bool PrivateMembershipRlweOprfResponse::_internal_has_hashed_buckets_parameters() const {
+  return this != internal_default_instance() && hashed_buckets_parameters_ != nullptr;
+}
+inline bool PrivateMembershipRlweOprfResponse::has_hashed_buckets_parameters() const {
+  return _internal_has_hashed_buckets_parameters();
+}
+inline void PrivateMembershipRlweOprfResponse::clear_hashed_buckets_parameters() {
+  if (GetArenaNoVirtual() == nullptr && hashed_buckets_parameters_ != nullptr) {
+    delete hashed_buckets_parameters_;
+  }
+  hashed_buckets_parameters_ = nullptr;
+}
+inline const ::private_membership::rlwe::HashedBucketsParameters& PrivateMembershipRlweOprfResponse::_internal_hashed_buckets_parameters() const {
+  const ::private_membership::rlwe::HashedBucketsParameters* p = hashed_buckets_parameters_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::HashedBucketsParameters*>(
+      &::private_membership::rlwe::_HashedBucketsParameters_default_instance_);
+}
+inline const ::private_membership::rlwe::HashedBucketsParameters& PrivateMembershipRlweOprfResponse::hashed_buckets_parameters() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweOprfResponse.hashed_buckets_parameters)
+  return _internal_hashed_buckets_parameters();
+}
+inline ::private_membership::rlwe::HashedBucketsParameters* PrivateMembershipRlweOprfResponse::release_hashed_buckets_parameters() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlweOprfResponse.hashed_buckets_parameters)
+  
+  ::private_membership::rlwe::HashedBucketsParameters* temp = hashed_buckets_parameters_;
+  hashed_buckets_parameters_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::HashedBucketsParameters* PrivateMembershipRlweOprfResponse::_internal_mutable_hashed_buckets_parameters() {
+  
+  if (hashed_buckets_parameters_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::HashedBucketsParameters>(GetArenaNoVirtual());
+    hashed_buckets_parameters_ = p;
+  }
+  return hashed_buckets_parameters_;
+}
+inline ::private_membership::rlwe::HashedBucketsParameters* PrivateMembershipRlweOprfResponse::mutable_hashed_buckets_parameters() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweOprfResponse.hashed_buckets_parameters)
+  return _internal_mutable_hashed_buckets_parameters();
+}
+inline void PrivateMembershipRlweOprfResponse::set_allocated_hashed_buckets_parameters(::private_membership::rlwe::HashedBucketsParameters* hashed_buckets_parameters) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete hashed_buckets_parameters_;
+  }
+  if (hashed_buckets_parameters) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      hashed_buckets_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, hashed_buckets_parameters, submessage_arena);
+    }
+    
+  } else {
+    
+  }
+  hashed_buckets_parameters_ = hashed_buckets_parameters;
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlweOprfResponse.hashed_buckets_parameters)
+}
+
+// .private_membership.rlwe.EncryptedBucketsParameters encrypted_buckets_parameters = 3;
+inline bool PrivateMembershipRlweOprfResponse::_internal_has_encrypted_buckets_parameters() const {
+  return this != internal_default_instance() && encrypted_buckets_parameters_ != nullptr;
+}
+inline bool PrivateMembershipRlweOprfResponse::has_encrypted_buckets_parameters() const {
+  return _internal_has_encrypted_buckets_parameters();
+}
+inline void PrivateMembershipRlweOprfResponse::clear_encrypted_buckets_parameters() {
+  if (GetArenaNoVirtual() == nullptr && encrypted_buckets_parameters_ != nullptr) {
+    delete encrypted_buckets_parameters_;
+  }
+  encrypted_buckets_parameters_ = nullptr;
+}
+inline const ::private_membership::rlwe::EncryptedBucketsParameters& PrivateMembershipRlweOprfResponse::_internal_encrypted_buckets_parameters() const {
+  const ::private_membership::rlwe::EncryptedBucketsParameters* p = encrypted_buckets_parameters_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::EncryptedBucketsParameters*>(
+      &::private_membership::rlwe::_EncryptedBucketsParameters_default_instance_);
+}
+inline const ::private_membership::rlwe::EncryptedBucketsParameters& PrivateMembershipRlweOprfResponse::encrypted_buckets_parameters() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweOprfResponse.encrypted_buckets_parameters)
+  return _internal_encrypted_buckets_parameters();
+}
+inline ::private_membership::rlwe::EncryptedBucketsParameters* PrivateMembershipRlweOprfResponse::release_encrypted_buckets_parameters() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlweOprfResponse.encrypted_buckets_parameters)
+  
+  ::private_membership::rlwe::EncryptedBucketsParameters* temp = encrypted_buckets_parameters_;
+  encrypted_buckets_parameters_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::EncryptedBucketsParameters* PrivateMembershipRlweOprfResponse::_internal_mutable_encrypted_buckets_parameters() {
+  
+  if (encrypted_buckets_parameters_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::EncryptedBucketsParameters>(GetArenaNoVirtual());
+    encrypted_buckets_parameters_ = p;
+  }
+  return encrypted_buckets_parameters_;
+}
+inline ::private_membership::rlwe::EncryptedBucketsParameters* PrivateMembershipRlweOprfResponse::mutable_encrypted_buckets_parameters() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweOprfResponse.encrypted_buckets_parameters)
+  return _internal_mutable_encrypted_buckets_parameters();
+}
+inline void PrivateMembershipRlweOprfResponse::set_allocated_encrypted_buckets_parameters(::private_membership::rlwe::EncryptedBucketsParameters* encrypted_buckets_parameters) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete encrypted_buckets_parameters_;
+  }
+  if (encrypted_buckets_parameters) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      encrypted_buckets_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, encrypted_buckets_parameters, submessage_arena);
+    }
+    
+  } else {
+    
+  }
+  encrypted_buckets_parameters_ = encrypted_buckets_parameters;
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlweOprfResponse.encrypted_buckets_parameters)
+}
+
+// .private_membership.rlwe.RlweParameters rlwe_parameters = 4;
+inline bool PrivateMembershipRlweOprfResponse::_internal_has_rlwe_parameters() const {
+  return this != internal_default_instance() && rlwe_parameters_ != nullptr;
+}
+inline bool PrivateMembershipRlweOprfResponse::has_rlwe_parameters() const {
+  return _internal_has_rlwe_parameters();
+}
+inline void PrivateMembershipRlweOprfResponse::clear_rlwe_parameters() {
+  if (GetArenaNoVirtual() == nullptr && rlwe_parameters_ != nullptr) {
+    delete rlwe_parameters_;
+  }
+  rlwe_parameters_ = nullptr;
+}
+inline const ::private_membership::rlwe::RlweParameters& PrivateMembershipRlweOprfResponse::_internal_rlwe_parameters() const {
+  const ::private_membership::rlwe::RlweParameters* p = rlwe_parameters_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::RlweParameters*>(
+      &::private_membership::rlwe::_RlweParameters_default_instance_);
+}
+inline const ::private_membership::rlwe::RlweParameters& PrivateMembershipRlweOprfResponse::rlwe_parameters() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweOprfResponse.rlwe_parameters)
+  return _internal_rlwe_parameters();
+}
+inline ::private_membership::rlwe::RlweParameters* PrivateMembershipRlweOprfResponse::release_rlwe_parameters() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlweOprfResponse.rlwe_parameters)
+  
+  ::private_membership::rlwe::RlweParameters* temp = rlwe_parameters_;
+  rlwe_parameters_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::RlweParameters* PrivateMembershipRlweOprfResponse::_internal_mutable_rlwe_parameters() {
+  
+  if (rlwe_parameters_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::RlweParameters>(GetArenaNoVirtual());
+    rlwe_parameters_ = p;
+  }
+  return rlwe_parameters_;
+}
+inline ::private_membership::rlwe::RlweParameters* PrivateMembershipRlweOprfResponse::mutable_rlwe_parameters() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweOprfResponse.rlwe_parameters)
+  return _internal_mutable_rlwe_parameters();
+}
+inline void PrivateMembershipRlweOprfResponse::set_allocated_rlwe_parameters(::private_membership::rlwe::RlweParameters* rlwe_parameters) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete rlwe_parameters_;
+  }
+  if (rlwe_parameters) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      rlwe_parameters = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, rlwe_parameters, submessage_arena);
+    }
+    
+  } else {
+    
+  }
+  rlwe_parameters_ = rlwe_parameters;
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlweOprfResponse.rlwe_parameters)
+}
+
+// int64 key_version = 5;
+inline void PrivateMembershipRlweOprfResponse::clear_key_version() {
+  key_version_ = PROTOBUF_LONGLONG(0);
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PrivateMembershipRlweOprfResponse::_internal_key_version() const {
+  return key_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PrivateMembershipRlweOprfResponse::key_version() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweOprfResponse.key_version)
+  return _internal_key_version();
+}
+inline void PrivateMembershipRlweOprfResponse::_internal_set_key_version(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  
+  key_version_ = value;
+}
+inline void PrivateMembershipRlweOprfResponse::set_key_version(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_key_version(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweOprfResponse.key_version)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateMembershipRlweQueryRequest
+
+// repeated .private_membership.rlwe.PrivateMembershipRlweQuery queries = 1;
+inline int PrivateMembershipRlweQueryRequest::_internal_queries_size() const {
+  return queries_.size();
+}
+inline int PrivateMembershipRlweQueryRequest::queries_size() const {
+  return _internal_queries_size();
+}
+inline void PrivateMembershipRlweQueryRequest::clear_queries() {
+  queries_.Clear();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQuery* PrivateMembershipRlweQueryRequest::mutable_queries(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweQueryRequest.queries)
+  return queries_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlweQuery >*
+PrivateMembershipRlweQueryRequest::mutable_queries() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.PrivateMembershipRlweQueryRequest.queries)
+  return &queries_;
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweQuery& PrivateMembershipRlweQueryRequest::_internal_queries(int index) const {
+  return queries_.Get(index);
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweQuery& PrivateMembershipRlweQueryRequest::queries(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQueryRequest.queries)
+  return _internal_queries(index);
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQuery* PrivateMembershipRlweQueryRequest::_internal_add_queries() {
+  return queries_.Add();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQuery* PrivateMembershipRlweQueryRequest::add_queries() {
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.PrivateMembershipRlweQueryRequest.queries)
+  return _internal_add_queries();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlweQuery >&
+PrivateMembershipRlweQueryRequest::queries() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.PrivateMembershipRlweQueryRequest.queries)
+  return queries_;
+}
+
+// .private_membership.rlwe.RlweUseCase use_case = 2;
+inline void PrivateMembershipRlweQueryRequest::clear_use_case() {
+  use_case_ = 0;
+}
+inline ::private_membership::rlwe::RlweUseCase PrivateMembershipRlweQueryRequest::_internal_use_case() const {
+  return static_cast< ::private_membership::rlwe::RlweUseCase >(use_case_);
+}
+inline ::private_membership::rlwe::RlweUseCase PrivateMembershipRlweQueryRequest::use_case() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQueryRequest.use_case)
+  return _internal_use_case();
+}
+inline void PrivateMembershipRlweQueryRequest::_internal_set_use_case(::private_membership::rlwe::RlweUseCase value) {
+  
+  use_case_ = value;
+}
+inline void PrivateMembershipRlweQueryRequest::set_use_case(::private_membership::rlwe::RlweUseCase value) {
+  _internal_set_use_case(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweQueryRequest.use_case)
+}
+
+// int64 key_version = 3;
+inline void PrivateMembershipRlweQueryRequest::clear_key_version() {
+  key_version_ = PROTOBUF_LONGLONG(0);
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PrivateMembershipRlweQueryRequest::_internal_key_version() const {
+  return key_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 PrivateMembershipRlweQueryRequest::key_version() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQueryRequest.key_version)
+  return _internal_key_version();
+}
+inline void PrivateMembershipRlweQueryRequest::_internal_set_key_version(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  
+  key_version_ = value;
+}
+inline void PrivateMembershipRlweQueryRequest::set_key_version(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_key_version(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweQueryRequest.key_version)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateMembershipRlweQueryResponse
+
+// repeated .private_membership.rlwe.PrivateMembershipRlwePirResponse pir_responses = 1;
+inline int PrivateMembershipRlweQueryResponse::_internal_pir_responses_size() const {
+  return pir_responses_.size();
+}
+inline int PrivateMembershipRlweQueryResponse::pir_responses_size() const {
+  return _internal_pir_responses_size();
+}
+inline void PrivateMembershipRlweQueryResponse::clear_pir_responses() {
+  pir_responses_.Clear();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlwePirResponse* PrivateMembershipRlweQueryResponse::mutable_pir_responses(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweQueryResponse.pir_responses)
+  return pir_responses_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlwePirResponse >*
+PrivateMembershipRlweQueryResponse::mutable_pir_responses() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.PrivateMembershipRlweQueryResponse.pir_responses)
+  return &pir_responses_;
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlwePirResponse& PrivateMembershipRlweQueryResponse::_internal_pir_responses(int index) const {
+  return pir_responses_.Get(index);
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlwePirResponse& PrivateMembershipRlweQueryResponse::pir_responses(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQueryResponse.pir_responses)
+  return _internal_pir_responses(index);
+}
+inline ::private_membership::rlwe::PrivateMembershipRlwePirResponse* PrivateMembershipRlweQueryResponse::_internal_add_pir_responses() {
+  return pir_responses_.Add();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlwePirResponse* PrivateMembershipRlweQueryResponse::add_pir_responses() {
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.PrivateMembershipRlweQueryResponse.pir_responses)
+  return _internal_add_pir_responses();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::PrivateMembershipRlwePirResponse >&
+PrivateMembershipRlweQueryResponse::pir_responses() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.PrivateMembershipRlweQueryResponse.pir_responses)
+  return pir_responses_;
+}
+
+// -------------------------------------------------------------------
+
+// RlwePlaintextId
+
+// string non_sensitive_id = 1;
+inline void RlwePlaintextId::clear_non_sensitive_id() {
+  non_sensitive_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& RlwePlaintextId::non_sensitive_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlwePlaintextId.non_sensitive_id)
+  return _internal_non_sensitive_id();
+}
+inline void RlwePlaintextId::set_non_sensitive_id(const std::string& value) {
+  _internal_set_non_sensitive_id(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.RlwePlaintextId.non_sensitive_id)
+}
+inline std::string* RlwePlaintextId::mutable_non_sensitive_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.RlwePlaintextId.non_sensitive_id)
+  return _internal_mutable_non_sensitive_id();
+}
+inline const std::string& RlwePlaintextId::_internal_non_sensitive_id() const {
+  return non_sensitive_id_.GetNoArena();
+}
+inline void RlwePlaintextId::_internal_set_non_sensitive_id(const std::string& value) {
+  
+  non_sensitive_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RlwePlaintextId::set_non_sensitive_id(std::string&& value) {
+  
+  non_sensitive_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.rlwe.RlwePlaintextId.non_sensitive_id)
+}
+inline void RlwePlaintextId::set_non_sensitive_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  non_sensitive_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.RlwePlaintextId.non_sensitive_id)
+}
+inline void RlwePlaintextId::set_non_sensitive_id(const char* value, size_t size) {
+  
+  non_sensitive_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.RlwePlaintextId.non_sensitive_id)
+}
+inline std::string* RlwePlaintextId::_internal_mutable_non_sensitive_id() {
+  
+  return non_sensitive_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RlwePlaintextId::release_non_sensitive_id() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.RlwePlaintextId.non_sensitive_id)
+  
+  return non_sensitive_id_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RlwePlaintextId::set_allocated_non_sensitive_id(std::string* non_sensitive_id) {
+  if (non_sensitive_id != nullptr) {
+    
+  } else {
+    
+  }
+  non_sensitive_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), non_sensitive_id);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.RlwePlaintextId.non_sensitive_id)
+}
+
+// string sensitive_id = 2;
+inline void RlwePlaintextId::clear_sensitive_id() {
+  sensitive_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& RlwePlaintextId::sensitive_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlwePlaintextId.sensitive_id)
+  return _internal_sensitive_id();
+}
+inline void RlwePlaintextId::set_sensitive_id(const std::string& value) {
+  _internal_set_sensitive_id(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.RlwePlaintextId.sensitive_id)
+}
+inline std::string* RlwePlaintextId::mutable_sensitive_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.RlwePlaintextId.sensitive_id)
+  return _internal_mutable_sensitive_id();
+}
+inline const std::string& RlwePlaintextId::_internal_sensitive_id() const {
+  return sensitive_id_.GetNoArena();
+}
+inline void RlwePlaintextId::_internal_set_sensitive_id(const std::string& value) {
+  
+  sensitive_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void RlwePlaintextId::set_sensitive_id(std::string&& value) {
+  
+  sensitive_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.rlwe.RlwePlaintextId.sensitive_id)
+}
+inline void RlwePlaintextId::set_sensitive_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  sensitive_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.RlwePlaintextId.sensitive_id)
+}
+inline void RlwePlaintextId::set_sensitive_id(const char* value, size_t size) {
+  
+  sensitive_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.RlwePlaintextId.sensitive_id)
+}
+inline std::string* RlwePlaintextId::_internal_mutable_sensitive_id() {
+  
+  return sensitive_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* RlwePlaintextId::release_sensitive_id() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.RlwePlaintextId.sensitive_id)
+  
+  return sensitive_id_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void RlwePlaintextId::set_allocated_sensitive_id(std::string* sensitive_id) {
+  if (sensitive_id != nullptr) {
+    
+  } else {
+    
+  }
+  sensitive_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), sensitive_id);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.RlwePlaintextId.sensitive_id)
+}
+
+// -------------------------------------------------------------------
+
+// HashedBucketsParameters
+
+// int32 hashed_bucket_id_length = 1;
+inline void HashedBucketsParameters::clear_hashed_bucket_id_length() {
+  hashed_bucket_id_length_ = 0;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 HashedBucketsParameters::_internal_hashed_bucket_id_length() const {
+  return hashed_bucket_id_length_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 HashedBucketsParameters::hashed_bucket_id_length() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.HashedBucketsParameters.hashed_bucket_id_length)
+  return _internal_hashed_bucket_id_length();
+}
+inline void HashedBucketsParameters::_internal_set_hashed_bucket_id_length(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  
+  hashed_bucket_id_length_ = value;
+}
+inline void HashedBucketsParameters::set_hashed_bucket_id_length(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_hashed_bucket_id_length(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.HashedBucketsParameters.hashed_bucket_id_length)
+}
+
+// .private_membership.HashType non_sensitive_id_hash_type = 2;
+inline void HashedBucketsParameters::clear_non_sensitive_id_hash_type() {
+  non_sensitive_id_hash_type_ = 0;
+}
+inline ::private_membership::HashType HashedBucketsParameters::_internal_non_sensitive_id_hash_type() const {
+  return static_cast< ::private_membership::HashType >(non_sensitive_id_hash_type_);
+}
+inline ::private_membership::HashType HashedBucketsParameters::non_sensitive_id_hash_type() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.HashedBucketsParameters.non_sensitive_id_hash_type)
+  return _internal_non_sensitive_id_hash_type();
+}
+inline void HashedBucketsParameters::_internal_set_non_sensitive_id_hash_type(::private_membership::HashType value) {
+  
+  non_sensitive_id_hash_type_ = value;
+}
+inline void HashedBucketsParameters::set_non_sensitive_id_hash_type(::private_membership::HashType value) {
+  _internal_set_non_sensitive_id_hash_type(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.HashedBucketsParameters.non_sensitive_id_hash_type)
+}
+
+// -------------------------------------------------------------------
+
+// EncryptedBucketsParameters
+
+// int32 encrypted_bucket_id_length = 1;
+inline void EncryptedBucketsParameters::clear_encrypted_bucket_id_length() {
+  encrypted_bucket_id_length_ = 0;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 EncryptedBucketsParameters::_internal_encrypted_bucket_id_length() const {
+  return encrypted_bucket_id_length_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 EncryptedBucketsParameters::encrypted_bucket_id_length() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.EncryptedBucketsParameters.encrypted_bucket_id_length)
+  return _internal_encrypted_bucket_id_length();
+}
+inline void EncryptedBucketsParameters::_internal_set_encrypted_bucket_id_length(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  
+  encrypted_bucket_id_length_ = value;
+}
+inline void EncryptedBucketsParameters::set_encrypted_bucket_id_length(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_encrypted_bucket_id_length(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.EncryptedBucketsParameters.encrypted_bucket_id_length)
+}
+
+// .private_membership.EncryptedBucketHashType sensitive_id_hash_type = 2;
+inline void EncryptedBucketsParameters::clear_sensitive_id_hash_type() {
+  sensitive_id_hash_type_ = 0;
+}
+inline ::private_membership::EncryptedBucketHashType EncryptedBucketsParameters::_internal_sensitive_id_hash_type() const {
+  return static_cast< ::private_membership::EncryptedBucketHashType >(sensitive_id_hash_type_);
+}
+inline ::private_membership::EncryptedBucketHashType EncryptedBucketsParameters::sensitive_id_hash_type() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.EncryptedBucketsParameters.sensitive_id_hash_type)
+  return _internal_sensitive_id_hash_type();
+}
+inline void EncryptedBucketsParameters::_internal_set_sensitive_id_hash_type(::private_membership::EncryptedBucketHashType value) {
+  
+  sensitive_id_hash_type_ = value;
+}
+inline void EncryptedBucketsParameters::set_sensitive_id_hash_type(::private_membership::EncryptedBucketHashType value) {
+  _internal_set_sensitive_id_hash_type(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.EncryptedBucketsParameters.sensitive_id_hash_type)
+}
+
+// -------------------------------------------------------------------
+
+// RlweParameters
+
+// repeated .private_membership.rlwe.Uint128 modulus = 1;
+inline int RlweParameters::_internal_modulus_size() const {
+  return modulus_.size();
+}
+inline int RlweParameters::modulus_size() const {
+  return _internal_modulus_size();
+}
+inline void RlweParameters::clear_modulus() {
+  modulus_.Clear();
+}
+inline ::private_membership::rlwe::Uint128* RlweParameters::mutable_modulus(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.RlweParameters.modulus)
+  return modulus_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::Uint128 >*
+RlweParameters::mutable_modulus() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.RlweParameters.modulus)
+  return &modulus_;
+}
+inline const ::private_membership::rlwe::Uint128& RlweParameters::_internal_modulus(int index) const {
+  return modulus_.Get(index);
+}
+inline const ::private_membership::rlwe::Uint128& RlweParameters::modulus(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlweParameters.modulus)
+  return _internal_modulus(index);
+}
+inline ::private_membership::rlwe::Uint128* RlweParameters::_internal_add_modulus() {
+  return modulus_.Add();
+}
+inline ::private_membership::rlwe::Uint128* RlweParameters::add_modulus() {
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.RlweParameters.modulus)
+  return _internal_add_modulus();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::Uint128 >&
+RlweParameters::modulus() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.RlweParameters.modulus)
+  return modulus_;
+}
+
+// int32 log_degree = 2;
+inline void RlweParameters::clear_log_degree() {
+  log_degree_ = 0;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 RlweParameters::_internal_log_degree() const {
+  return log_degree_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 RlweParameters::log_degree() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlweParameters.log_degree)
+  return _internal_log_degree();
+}
+inline void RlweParameters::_internal_set_log_degree(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  
+  log_degree_ = value;
+}
+inline void RlweParameters::set_log_degree(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_log_degree(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.RlweParameters.log_degree)
+}
+
+// int32 log_t = 3;
+inline void RlweParameters::clear_log_t() {
+  log_t_ = 0;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 RlweParameters::_internal_log_t() const {
+  return log_t_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 RlweParameters::log_t() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlweParameters.log_t)
+  return _internal_log_t();
+}
+inline void RlweParameters::_internal_set_log_t(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  
+  log_t_ = value;
+}
+inline void RlweParameters::set_log_t(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_log_t(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.RlweParameters.log_t)
+}
+
+// int32 variance = 4;
+inline void RlweParameters::clear_variance() {
+  variance_ = 0;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 RlweParameters::_internal_variance() const {
+  return variance_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 RlweParameters::variance() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlweParameters.variance)
+  return _internal_variance();
+}
+inline void RlweParameters::_internal_set_variance(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  
+  variance_ = value;
+}
+inline void RlweParameters::set_variance(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_variance(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.RlweParameters.variance)
+}
+
+// int32 levels_of_recursion = 5;
+inline void RlweParameters::clear_levels_of_recursion() {
+  levels_of_recursion_ = 0;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 RlweParameters::_internal_levels_of_recursion() const {
+  return levels_of_recursion_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 RlweParameters::levels_of_recursion() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlweParameters.levels_of_recursion)
+  return _internal_levels_of_recursion();
+}
+inline void RlweParameters::_internal_set_levels_of_recursion(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  
+  levels_of_recursion_ = value;
+}
+inline void RlweParameters::set_levels_of_recursion(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_levels_of_recursion(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.RlweParameters.levels_of_recursion)
+}
+
+// -------------------------------------------------------------------
+
+// Uint128
+
+// uint64 lo = 1;
+inline void Uint128::clear_lo() {
+  lo_ = PROTOBUF_ULONGLONG(0);
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 Uint128::_internal_lo() const {
+  return lo_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 Uint128::lo() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.Uint128.lo)
+  return _internal_lo();
+}
+inline void Uint128::_internal_set_lo(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  
+  lo_ = value;
+}
+inline void Uint128::set_lo(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_lo(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.Uint128.lo)
+}
+
+// uint64 hi = 2;
+inline void Uint128::clear_hi() {
+  hi_ = PROTOBUF_ULONGLONG(0);
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 Uint128::_internal_hi() const {
+  return hi_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 Uint128::hi() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.Uint128.hi)
+  return _internal_hi();
+}
+inline void Uint128::_internal_set_hi(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  
+  hi_ = value;
+}
+inline void Uint128::set_hi(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_hi(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.Uint128.hi)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateMembershipRlweQuery_HashedBucketId
+
+// bytes hashed_bucket_id = 1;
+inline void PrivateMembershipRlweQuery_HashedBucketId::clear_hashed_bucket_id() {
+  hashed_bucket_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& PrivateMembershipRlweQuery_HashedBucketId::hashed_bucket_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.hashed_bucket_id)
+  return _internal_hashed_bucket_id();
+}
+inline void PrivateMembershipRlweQuery_HashedBucketId::set_hashed_bucket_id(const std::string& value) {
+  _internal_set_hashed_bucket_id(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.hashed_bucket_id)
+}
+inline std::string* PrivateMembershipRlweQuery_HashedBucketId::mutable_hashed_bucket_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.hashed_bucket_id)
+  return _internal_mutable_hashed_bucket_id();
+}
+inline const std::string& PrivateMembershipRlweQuery_HashedBucketId::_internal_hashed_bucket_id() const {
+  return hashed_bucket_id_.GetNoArena();
+}
+inline void PrivateMembershipRlweQuery_HashedBucketId::_internal_set_hashed_bucket_id(const std::string& value) {
+  
+  hashed_bucket_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrivateMembershipRlweQuery_HashedBucketId::set_hashed_bucket_id(std::string&& value) {
+  
+  hashed_bucket_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.hashed_bucket_id)
+}
+inline void PrivateMembershipRlweQuery_HashedBucketId::set_hashed_bucket_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  hashed_bucket_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.hashed_bucket_id)
+}
+inline void PrivateMembershipRlweQuery_HashedBucketId::set_hashed_bucket_id(const void* value, size_t size) {
+  
+  hashed_bucket_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.hashed_bucket_id)
+}
+inline std::string* PrivateMembershipRlweQuery_HashedBucketId::_internal_mutable_hashed_bucket_id() {
+  
+  return hashed_bucket_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrivateMembershipRlweQuery_HashedBucketId::release_hashed_bucket_id() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.hashed_bucket_id)
+  
+  return hashed_bucket_id_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrivateMembershipRlweQuery_HashedBucketId::set_allocated_hashed_bucket_id(std::string* hashed_bucket_id) {
+  if (hashed_bucket_id != nullptr) {
+    
+  } else {
+    
+  }
+  hashed_bucket_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), hashed_bucket_id);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.hashed_bucket_id)
+}
+
+// int32 bit_length = 2;
+inline void PrivateMembershipRlweQuery_HashedBucketId::clear_bit_length() {
+  bit_length_ = 0;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrivateMembershipRlweQuery_HashedBucketId::_internal_bit_length() const {
+  return bit_length_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PrivateMembershipRlweQuery_HashedBucketId::bit_length() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.bit_length)
+  return _internal_bit_length();
+}
+inline void PrivateMembershipRlweQuery_HashedBucketId::_internal_set_bit_length(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  
+  bit_length_ = value;
+}
+inline void PrivateMembershipRlweQuery_HashedBucketId::set_bit_length(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_bit_length(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId.bit_length)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateMembershipRlweQuery
+
+// bytes queried_encrypted_id = 1;
+inline void PrivateMembershipRlweQuery::clear_queried_encrypted_id() {
+  queried_encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& PrivateMembershipRlweQuery::queried_encrypted_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQuery.queried_encrypted_id)
+  return _internal_queried_encrypted_id();
+}
+inline void PrivateMembershipRlweQuery::set_queried_encrypted_id(const std::string& value) {
+  _internal_set_queried_encrypted_id(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlweQuery.queried_encrypted_id)
+}
+inline std::string* PrivateMembershipRlweQuery::mutable_queried_encrypted_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweQuery.queried_encrypted_id)
+  return _internal_mutable_queried_encrypted_id();
+}
+inline const std::string& PrivateMembershipRlweQuery::_internal_queried_encrypted_id() const {
+  return queried_encrypted_id_.GetNoArena();
+}
+inline void PrivateMembershipRlweQuery::_internal_set_queried_encrypted_id(const std::string& value) {
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrivateMembershipRlweQuery::set_queried_encrypted_id(std::string&& value) {
+  
+  queried_encrypted_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.rlwe.PrivateMembershipRlweQuery.queried_encrypted_id)
+}
+inline void PrivateMembershipRlweQuery::set_queried_encrypted_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.PrivateMembershipRlweQuery.queried_encrypted_id)
+}
+inline void PrivateMembershipRlweQuery::set_queried_encrypted_id(const void* value, size_t size) {
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.PrivateMembershipRlweQuery.queried_encrypted_id)
+}
+inline std::string* PrivateMembershipRlweQuery::_internal_mutable_queried_encrypted_id() {
+  
+  return queried_encrypted_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrivateMembershipRlweQuery::release_queried_encrypted_id() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlweQuery.queried_encrypted_id)
+  
+  return queried_encrypted_id_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrivateMembershipRlweQuery::set_allocated_queried_encrypted_id(std::string* queried_encrypted_id) {
+  if (queried_encrypted_id != nullptr) {
+    
+  } else {
+    
+  }
+  queried_encrypted_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), queried_encrypted_id);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlweQuery.queried_encrypted_id)
+}
+
+// .private_membership.rlwe.PirRequest pir_request = 2;
+inline bool PrivateMembershipRlweQuery::_internal_has_pir_request() const {
+  return this != internal_default_instance() && pir_request_ != nullptr;
+}
+inline bool PrivateMembershipRlweQuery::has_pir_request() const {
+  return _internal_has_pir_request();
+}
+inline void PrivateMembershipRlweQuery::clear_pir_request() {
+  if (GetArenaNoVirtual() == nullptr && pir_request_ != nullptr) {
+    delete pir_request_;
+  }
+  pir_request_ = nullptr;
+}
+inline const ::private_membership::rlwe::PirRequest& PrivateMembershipRlweQuery::_internal_pir_request() const {
+  const ::private_membership::rlwe::PirRequest* p = pir_request_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::PirRequest*>(
+      &::private_membership::rlwe::_PirRequest_default_instance_);
+}
+inline const ::private_membership::rlwe::PirRequest& PrivateMembershipRlweQuery::pir_request() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQuery.pir_request)
+  return _internal_pir_request();
+}
+inline ::private_membership::rlwe::PirRequest* PrivateMembershipRlweQuery::release_pir_request() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlweQuery.pir_request)
+  
+  ::private_membership::rlwe::PirRequest* temp = pir_request_;
+  pir_request_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::PirRequest* PrivateMembershipRlweQuery::_internal_mutable_pir_request() {
+  
+  if (pir_request_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::PirRequest>(GetArenaNoVirtual());
+    pir_request_ = p;
+  }
+  return pir_request_;
+}
+inline ::private_membership::rlwe::PirRequest* PrivateMembershipRlweQuery::mutable_pir_request() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweQuery.pir_request)
+  return _internal_mutable_pir_request();
+}
+inline void PrivateMembershipRlweQuery::set_allocated_pir_request(::private_membership::rlwe::PirRequest* pir_request) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete pir_request_;
+  }
+  if (pir_request) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      pir_request = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, pir_request, submessage_arena);
+    }
+    
+  } else {
+    
+  }
+  pir_request_ = pir_request;
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlweQuery.pir_request)
+}
+
+// .private_membership.rlwe.PrivateMembershipRlweQuery.HashedBucketId hashed_bucket_id = 3;
+inline bool PrivateMembershipRlweQuery::_internal_has_hashed_bucket_id() const {
+  return this != internal_default_instance() && hashed_bucket_id_ != nullptr;
+}
+inline bool PrivateMembershipRlweQuery::has_hashed_bucket_id() const {
+  return _internal_has_hashed_bucket_id();
+}
+inline void PrivateMembershipRlweQuery::clear_hashed_bucket_id() {
+  if (GetArenaNoVirtual() == nullptr && hashed_bucket_id_ != nullptr) {
+    delete hashed_bucket_id_;
+  }
+  hashed_bucket_id_ = nullptr;
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId& PrivateMembershipRlweQuery::_internal_hashed_bucket_id() const {
+  const ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* p = hashed_bucket_id_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId*>(
+      &::private_membership::rlwe::_PrivateMembershipRlweQuery_HashedBucketId_default_instance_);
+}
+inline const ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId& PrivateMembershipRlweQuery::hashed_bucket_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlweQuery.hashed_bucket_id)
+  return _internal_hashed_bucket_id();
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* PrivateMembershipRlweQuery::release_hashed_bucket_id() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlweQuery.hashed_bucket_id)
+  
+  ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* temp = hashed_bucket_id_;
+  hashed_bucket_id_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* PrivateMembershipRlweQuery::_internal_mutable_hashed_bucket_id() {
+  
+  if (hashed_bucket_id_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId>(GetArenaNoVirtual());
+    hashed_bucket_id_ = p;
+  }
+  return hashed_bucket_id_;
+}
+inline ::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* PrivateMembershipRlweQuery::mutable_hashed_bucket_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlweQuery.hashed_bucket_id)
+  return _internal_mutable_hashed_bucket_id();
+}
+inline void PrivateMembershipRlweQuery::set_allocated_hashed_bucket_id(::private_membership::rlwe::PrivateMembershipRlweQuery_HashedBucketId* hashed_bucket_id) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete hashed_bucket_id_;
+  }
+  if (hashed_bucket_id) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      hashed_bucket_id = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, hashed_bucket_id, submessage_arena);
+    }
+    
+  } else {
+    
+  }
+  hashed_bucket_id_ = hashed_bucket_id;
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlweQuery.hashed_bucket_id)
+}
+
+// -------------------------------------------------------------------
+
+// PrivateMembershipRlwePirResponse
+
+// bytes queried_encrypted_id = 1;
+inline void PrivateMembershipRlwePirResponse::clear_queried_encrypted_id() {
+  queried_encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& PrivateMembershipRlwePirResponse::queried_encrypted_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlwePirResponse.queried_encrypted_id)
+  return _internal_queried_encrypted_id();
+}
+inline void PrivateMembershipRlwePirResponse::set_queried_encrypted_id(const std::string& value) {
+  _internal_set_queried_encrypted_id(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PrivateMembershipRlwePirResponse.queried_encrypted_id)
+}
+inline std::string* PrivateMembershipRlwePirResponse::mutable_queried_encrypted_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlwePirResponse.queried_encrypted_id)
+  return _internal_mutable_queried_encrypted_id();
+}
+inline const std::string& PrivateMembershipRlwePirResponse::_internal_queried_encrypted_id() const {
+  return queried_encrypted_id_.GetNoArena();
+}
+inline void PrivateMembershipRlwePirResponse::_internal_set_queried_encrypted_id(const std::string& value) {
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PrivateMembershipRlwePirResponse::set_queried_encrypted_id(std::string&& value) {
+  
+  queried_encrypted_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.rlwe.PrivateMembershipRlwePirResponse.queried_encrypted_id)
+}
+inline void PrivateMembershipRlwePirResponse::set_queried_encrypted_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.PrivateMembershipRlwePirResponse.queried_encrypted_id)
+}
+inline void PrivateMembershipRlwePirResponse::set_queried_encrypted_id(const void* value, size_t size) {
+  
+  queried_encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.PrivateMembershipRlwePirResponse.queried_encrypted_id)
+}
+inline std::string* PrivateMembershipRlwePirResponse::_internal_mutable_queried_encrypted_id() {
+  
+  return queried_encrypted_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PrivateMembershipRlwePirResponse::release_queried_encrypted_id() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlwePirResponse.queried_encrypted_id)
+  
+  return queried_encrypted_id_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PrivateMembershipRlwePirResponse::set_allocated_queried_encrypted_id(std::string* queried_encrypted_id) {
+  if (queried_encrypted_id != nullptr) {
+    
+  } else {
+    
+  }
+  queried_encrypted_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), queried_encrypted_id);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlwePirResponse.queried_encrypted_id)
+}
+
+// .private_membership.rlwe.PirResponse pir_response = 2;
+inline bool PrivateMembershipRlwePirResponse::_internal_has_pir_response() const {
+  return this != internal_default_instance() && pir_response_ != nullptr;
+}
+inline bool PrivateMembershipRlwePirResponse::has_pir_response() const {
+  return _internal_has_pir_response();
+}
+inline void PrivateMembershipRlwePirResponse::clear_pir_response() {
+  if (GetArenaNoVirtual() == nullptr && pir_response_ != nullptr) {
+    delete pir_response_;
+  }
+  pir_response_ = nullptr;
+}
+inline const ::private_membership::rlwe::PirResponse& PrivateMembershipRlwePirResponse::_internal_pir_response() const {
+  const ::private_membership::rlwe::PirResponse* p = pir_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::PirResponse*>(
+      &::private_membership::rlwe::_PirResponse_default_instance_);
+}
+inline const ::private_membership::rlwe::PirResponse& PrivateMembershipRlwePirResponse::pir_response() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PrivateMembershipRlwePirResponse.pir_response)
+  return _internal_pir_response();
+}
+inline ::private_membership::rlwe::PirResponse* PrivateMembershipRlwePirResponse::release_pir_response() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PrivateMembershipRlwePirResponse.pir_response)
+  
+  ::private_membership::rlwe::PirResponse* temp = pir_response_;
+  pir_response_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::PirResponse* PrivateMembershipRlwePirResponse::_internal_mutable_pir_response() {
+  
+  if (pir_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::PirResponse>(GetArenaNoVirtual());
+    pir_response_ = p;
+  }
+  return pir_response_;
+}
+inline ::private_membership::rlwe::PirResponse* PrivateMembershipRlwePirResponse::mutable_pir_response() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PrivateMembershipRlwePirResponse.pir_response)
+  return _internal_mutable_pir_response();
+}
+inline void PrivateMembershipRlwePirResponse::set_allocated_pir_response(::private_membership::rlwe::PirResponse* pir_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete pir_response_;
+  }
+  if (pir_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      pir_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, pir_response, submessage_arena);
+    }
+    
+  } else {
+    
+  }
+  pir_response_ = pir_response;
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PrivateMembershipRlwePirResponse.pir_response)
+}
+
+// -------------------------------------------------------------------
+
+// PirRequest
+
+// repeated .rlwe.SerializedNttPolynomial request = 1;
+inline int PirRequest::_internal_request_size() const {
+  return request_.size();
+}
+inline int PirRequest::request_size() const {
+  return _internal_request_size();
+}
+inline ::rlwe::SerializedNttPolynomial* PirRequest::mutable_request(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PirRequest.request)
+  return request_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >*
+PirRequest::mutable_request() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.PirRequest.request)
+  return &request_;
+}
+inline const ::rlwe::SerializedNttPolynomial& PirRequest::_internal_request(int index) const {
+  return request_.Get(index);
+}
+inline const ::rlwe::SerializedNttPolynomial& PirRequest::request(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PirRequest.request)
+  return _internal_request(index);
+}
+inline ::rlwe::SerializedNttPolynomial* PirRequest::_internal_add_request() {
+  return request_.Add();
+}
+inline ::rlwe::SerializedNttPolynomial* PirRequest::add_request() {
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.PirRequest.request)
+  return _internal_add_request();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >&
+PirRequest::request() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.PirRequest.request)
+  return request_;
+}
+
+// bytes prng_seed = 2;
+inline void PirRequest::clear_prng_seed() {
+  prng_seed_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& PirRequest::prng_seed() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PirRequest.prng_seed)
+  return _internal_prng_seed();
+}
+inline void PirRequest::set_prng_seed(const std::string& value) {
+  _internal_set_prng_seed(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PirRequest.prng_seed)
+}
+inline std::string* PirRequest::mutable_prng_seed() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PirRequest.prng_seed)
+  return _internal_mutable_prng_seed();
+}
+inline const std::string& PirRequest::_internal_prng_seed() const {
+  return prng_seed_.GetNoArena();
+}
+inline void PirRequest::_internal_set_prng_seed(const std::string& value) {
+  
+  prng_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void PirRequest::set_prng_seed(std::string&& value) {
+  
+  prng_seed_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.rlwe.PirRequest.prng_seed)
+}
+inline void PirRequest::set_prng_seed(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  prng_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.PirRequest.prng_seed)
+}
+inline void PirRequest::set_prng_seed(const void* value, size_t size) {
+  
+  prng_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.PirRequest.prng_seed)
+}
+inline std::string* PirRequest::_internal_mutable_prng_seed() {
+  
+  return prng_seed_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* PirRequest::release_prng_seed() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.PirRequest.prng_seed)
+  
+  return prng_seed_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void PirRequest::set_allocated_prng_seed(std::string* prng_seed) {
+  if (prng_seed != nullptr) {
+    
+  } else {
+    
+  }
+  prng_seed_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), prng_seed);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.PirRequest.prng_seed)
+}
+
+// -------------------------------------------------------------------
+
+// PirResponse
+
+// repeated .rlwe.SerializedSymmetricRlweCiphertext response = 1;
+inline int PirResponse::_internal_response_size() const {
+  return response_.size();
+}
+inline int PirResponse::response_size() const {
+  return _internal_response_size();
+}
+inline ::rlwe::SerializedSymmetricRlweCiphertext* PirResponse::mutable_response(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.PirResponse.response)
+  return response_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedSymmetricRlweCiphertext >*
+PirResponse::mutable_response() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.PirResponse.response)
+  return &response_;
+}
+inline const ::rlwe::SerializedSymmetricRlweCiphertext& PirResponse::_internal_response(int index) const {
+  return response_.Get(index);
+}
+inline const ::rlwe::SerializedSymmetricRlweCiphertext& PirResponse::response(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PirResponse.response)
+  return _internal_response(index);
+}
+inline ::rlwe::SerializedSymmetricRlweCiphertext* PirResponse::_internal_add_response() {
+  return response_.Add();
+}
+inline ::rlwe::SerializedSymmetricRlweCiphertext* PirResponse::add_response() {
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.PirResponse.response)
+  return _internal_add_response();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedSymmetricRlweCiphertext >&
+PirResponse::response() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.PirResponse.response)
+  return response_;
+}
+
+// int32 plaintext_entry_size = 2;
+inline void PirResponse::clear_plaintext_entry_size() {
+  plaintext_entry_size_ = 0;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PirResponse::_internal_plaintext_entry_size() const {
+  return plaintext_entry_size_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 PirResponse::plaintext_entry_size() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.PirResponse.plaintext_entry_size)
+  return _internal_plaintext_entry_size();
+}
+inline void PirResponse::_internal_set_plaintext_entry_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  
+  plaintext_entry_size_ = value;
+}
+inline void PirResponse::set_plaintext_entry_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_plaintext_entry_size(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.PirResponse.plaintext_entry_size)
+}
+
+// -------------------------------------------------------------------
+
+// EncryptedBucket_EncryptedIdValuePair
+
+// bytes encrypted_id = 1;
+inline void EncryptedBucket_EncryptedIdValuePair::clear_encrypted_id() {
+  encrypted_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& EncryptedBucket_EncryptedIdValuePair::encrypted_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_id)
+  return _internal_encrypted_id();
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_encrypted_id(const std::string& value) {
+  _internal_set_encrypted_id(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_id)
+}
+inline std::string* EncryptedBucket_EncryptedIdValuePair::mutable_encrypted_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_id)
+  return _internal_mutable_encrypted_id();
+}
+inline const std::string& EncryptedBucket_EncryptedIdValuePair::_internal_encrypted_id() const {
+  return encrypted_id_.GetNoArena();
+}
+inline void EncryptedBucket_EncryptedIdValuePair::_internal_set_encrypted_id(const std::string& value) {
+  
+  encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_encrypted_id(std::string&& value) {
+  
+  encrypted_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_id)
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_encrypted_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_id)
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_encrypted_id(const void* value, size_t size) {
+  
+  encrypted_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_id)
+}
+inline std::string* EncryptedBucket_EncryptedIdValuePair::_internal_mutable_encrypted_id() {
+  
+  return encrypted_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* EncryptedBucket_EncryptedIdValuePair::release_encrypted_id() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_id)
+  
+  return encrypted_id_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_allocated_encrypted_id(std::string* encrypted_id) {
+  if (encrypted_id != nullptr) {
+    
+  } else {
+    
+  }
+  encrypted_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), encrypted_id);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_id)
+}
+
+// bytes encrypted_value = 2;
+inline void EncryptedBucket_EncryptedIdValuePair::clear_encrypted_value() {
+  encrypted_value_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline const std::string& EncryptedBucket_EncryptedIdValuePair::encrypted_value() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_value)
+  return _internal_encrypted_value();
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_encrypted_value(const std::string& value) {
+  _internal_set_encrypted_value(value);
+  // @@protoc_insertion_point(field_set:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_value)
+}
+inline std::string* EncryptedBucket_EncryptedIdValuePair::mutable_encrypted_value() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_value)
+  return _internal_mutable_encrypted_value();
+}
+inline const std::string& EncryptedBucket_EncryptedIdValuePair::_internal_encrypted_value() const {
+  return encrypted_value_.GetNoArena();
+}
+inline void EncryptedBucket_EncryptedIdValuePair::_internal_set_encrypted_value(const std::string& value) {
+  
+  encrypted_value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_encrypted_value(std::string&& value) {
+  
+  encrypted_value_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_value)
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_encrypted_value(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  
+  encrypted_value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_value)
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_encrypted_value(const void* value, size_t size) {
+  
+  encrypted_value_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_value)
+}
+inline std::string* EncryptedBucket_EncryptedIdValuePair::_internal_mutable_encrypted_value() {
+  
+  return encrypted_value_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* EncryptedBucket_EncryptedIdValuePair::release_encrypted_value() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_value)
+  
+  return encrypted_value_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void EncryptedBucket_EncryptedIdValuePair::set_allocated_encrypted_value(std::string* encrypted_value) {
+  if (encrypted_value != nullptr) {
+    
+  } else {
+    
+  }
+  encrypted_value_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), encrypted_value);
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair.encrypted_value)
+}
+
+// -------------------------------------------------------------------
+
+// EncryptedBucket
+
+// repeated .private_membership.rlwe.EncryptedBucket.EncryptedIdValuePair encrypted_id_value_pairs = 1;
+inline int EncryptedBucket::_internal_encrypted_id_value_pairs_size() const {
+  return encrypted_id_value_pairs_.size();
+}
+inline int EncryptedBucket::encrypted_id_value_pairs_size() const {
+  return _internal_encrypted_id_value_pairs_size();
+}
+inline void EncryptedBucket::clear_encrypted_id_value_pairs() {
+  encrypted_id_value_pairs_.Clear();
+}
+inline ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair* EncryptedBucket::mutable_encrypted_id_value_pairs(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.EncryptedBucket.encrypted_id_value_pairs)
+  return encrypted_id_value_pairs_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair >*
+EncryptedBucket::mutable_encrypted_id_value_pairs() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.EncryptedBucket.encrypted_id_value_pairs)
+  return &encrypted_id_value_pairs_;
+}
+inline const ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair& EncryptedBucket::_internal_encrypted_id_value_pairs(int index) const {
+  return encrypted_id_value_pairs_.Get(index);
+}
+inline const ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair& EncryptedBucket::encrypted_id_value_pairs(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.EncryptedBucket.encrypted_id_value_pairs)
+  return _internal_encrypted_id_value_pairs(index);
+}
+inline ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair* EncryptedBucket::_internal_add_encrypted_id_value_pairs() {
+  return encrypted_id_value_pairs_.Add();
+}
+inline ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair* EncryptedBucket::add_encrypted_id_value_pairs() {
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.EncryptedBucket.encrypted_id_value_pairs)
+  return _internal_add_encrypted_id_value_pairs();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::EncryptedBucket_EncryptedIdValuePair >&
+EncryptedBucket::encrypted_id_value_pairs() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.EncryptedBucket.encrypted_id_value_pairs)
+  return encrypted_id_value_pairs_;
+}
+
+// -------------------------------------------------------------------
+
+// RlweMembershipResponses_MembershipResponseEntry
+
+// .private_membership.rlwe.RlwePlaintextId plaintext_id = 1;
+inline bool RlweMembershipResponses_MembershipResponseEntry::_internal_has_plaintext_id() const {
+  return this != internal_default_instance() && plaintext_id_ != nullptr;
+}
+inline bool RlweMembershipResponses_MembershipResponseEntry::has_plaintext_id() const {
+  return _internal_has_plaintext_id();
+}
+inline void RlweMembershipResponses_MembershipResponseEntry::clear_plaintext_id() {
+  if (GetArenaNoVirtual() == nullptr && plaintext_id_ != nullptr) {
+    delete plaintext_id_;
+  }
+  plaintext_id_ = nullptr;
+}
+inline const ::private_membership::rlwe::RlwePlaintextId& RlweMembershipResponses_MembershipResponseEntry::_internal_plaintext_id() const {
+  const ::private_membership::rlwe::RlwePlaintextId* p = plaintext_id_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::rlwe::RlwePlaintextId*>(
+      &::private_membership::rlwe::_RlwePlaintextId_default_instance_);
+}
+inline const ::private_membership::rlwe::RlwePlaintextId& RlweMembershipResponses_MembershipResponseEntry::plaintext_id() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry.plaintext_id)
+  return _internal_plaintext_id();
+}
+inline ::private_membership::rlwe::RlwePlaintextId* RlweMembershipResponses_MembershipResponseEntry::release_plaintext_id() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry.plaintext_id)
+  
+  ::private_membership::rlwe::RlwePlaintextId* temp = plaintext_id_;
+  plaintext_id_ = nullptr;
+  return temp;
+}
+inline ::private_membership::rlwe::RlwePlaintextId* RlweMembershipResponses_MembershipResponseEntry::_internal_mutable_plaintext_id() {
+  
+  if (plaintext_id_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::rlwe::RlwePlaintextId>(GetArenaNoVirtual());
+    plaintext_id_ = p;
+  }
+  return plaintext_id_;
+}
+inline ::private_membership::rlwe::RlwePlaintextId* RlweMembershipResponses_MembershipResponseEntry::mutable_plaintext_id() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry.plaintext_id)
+  return _internal_mutable_plaintext_id();
+}
+inline void RlweMembershipResponses_MembershipResponseEntry::set_allocated_plaintext_id(::private_membership::rlwe::RlwePlaintextId* plaintext_id) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete plaintext_id_;
+  }
+  if (plaintext_id) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      plaintext_id = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, plaintext_id, submessage_arena);
+    }
+    
+  } else {
+    
+  }
+  plaintext_id_ = plaintext_id;
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry.plaintext_id)
+}
+
+// .private_membership.MembershipResponse membership_response = 2;
+inline bool RlweMembershipResponses_MembershipResponseEntry::_internal_has_membership_response() const {
+  return this != internal_default_instance() && membership_response_ != nullptr;
+}
+inline bool RlweMembershipResponses_MembershipResponseEntry::has_membership_response() const {
+  return _internal_has_membership_response();
+}
+inline const ::private_membership::MembershipResponse& RlweMembershipResponses_MembershipResponseEntry::_internal_membership_response() const {
+  const ::private_membership::MembershipResponse* p = membership_response_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::private_membership::MembershipResponse*>(
+      &::private_membership::_MembershipResponse_default_instance_);
+}
+inline const ::private_membership::MembershipResponse& RlweMembershipResponses_MembershipResponseEntry::membership_response() const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry.membership_response)
+  return _internal_membership_response();
+}
+inline ::private_membership::MembershipResponse* RlweMembershipResponses_MembershipResponseEntry::release_membership_response() {
+  // @@protoc_insertion_point(field_release:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry.membership_response)
+  
+  ::private_membership::MembershipResponse* temp = membership_response_;
+  membership_response_ = nullptr;
+  return temp;
+}
+inline ::private_membership::MembershipResponse* RlweMembershipResponses_MembershipResponseEntry::_internal_mutable_membership_response() {
+  
+  if (membership_response_ == nullptr) {
+    auto* p = CreateMaybeMessage<::private_membership::MembershipResponse>(GetArenaNoVirtual());
+    membership_response_ = p;
+  }
+  return membership_response_;
+}
+inline ::private_membership::MembershipResponse* RlweMembershipResponses_MembershipResponseEntry::mutable_membership_response() {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry.membership_response)
+  return _internal_mutable_membership_response();
+}
+inline void RlweMembershipResponses_MembershipResponseEntry::set_allocated_membership_response(::private_membership::MembershipResponse* membership_response) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(membership_response_);
+  }
+  if (membership_response) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      membership_response = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, membership_response, submessage_arena);
+    }
+    
+  } else {
+    
+  }
+  membership_response_ = membership_response;
+  // @@protoc_insertion_point(field_set_allocated:private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry.membership_response)
+}
+
+// -------------------------------------------------------------------
+
+// RlweMembershipResponses
+
+// repeated .private_membership.rlwe.RlweMembershipResponses.MembershipResponseEntry membership_responses = 1;
+inline int RlweMembershipResponses::_internal_membership_responses_size() const {
+  return membership_responses_.size();
+}
+inline int RlweMembershipResponses::membership_responses_size() const {
+  return _internal_membership_responses_size();
+}
+inline void RlweMembershipResponses::clear_membership_responses() {
+  membership_responses_.Clear();
+}
+inline ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry* RlweMembershipResponses::mutable_membership_responses(int index) {
+  // @@protoc_insertion_point(field_mutable:private_membership.rlwe.RlweMembershipResponses.membership_responses)
+  return membership_responses_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry >*
+RlweMembershipResponses::mutable_membership_responses() {
+  // @@protoc_insertion_point(field_mutable_list:private_membership.rlwe.RlweMembershipResponses.membership_responses)
+  return &membership_responses_;
+}
+inline const ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry& RlweMembershipResponses::_internal_membership_responses(int index) const {
+  return membership_responses_.Get(index);
+}
+inline const ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry& RlweMembershipResponses::membership_responses(int index) const {
+  // @@protoc_insertion_point(field_get:private_membership.rlwe.RlweMembershipResponses.membership_responses)
+  return _internal_membership_responses(index);
+}
+inline ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry* RlweMembershipResponses::_internal_add_membership_responses() {
+  return membership_responses_.Add();
+}
+inline ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry* RlweMembershipResponses::add_membership_responses() {
+  // @@protoc_insertion_point(field_add:private_membership.rlwe.RlweMembershipResponses.membership_responses)
+  return _internal_add_membership_responses();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::private_membership::rlwe::RlweMembershipResponses_MembershipResponseEntry >&
+RlweMembershipResponses::membership_responses() const {
+  // @@protoc_insertion_point(field_list:private_membership.rlwe.RlweMembershipResponses.membership_responses)
+  return membership_responses_;
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace rlwe
+}  // namespace private_membership
+
+PROTOBUF_NAMESPACE_OPEN
+
+template <> struct is_proto_enum< ::private_membership::rlwe::RlweUseCase> : ::std::true_type {};
+
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_private_5fmembership_5frlwe_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/serialization.pb.cc b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/serialization.pb.cc
new file mode 100644
index 0000000..6404865
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/serialization.pb.cc
@@ -0,0 +1,1117 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: serialization.proto
+
+#include "serialization.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_serialization_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SerializedNttPolynomial_serialization_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_serialization_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SerializedRelinearizationKey_serialization_2eproto;
+namespace rlwe {
+class SerializedNttPolynomialDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SerializedNttPolynomial> _instance;
+} _SerializedNttPolynomial_default_instance_;
+class SerializedSymmetricRlweCiphertextDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SerializedSymmetricRlweCiphertext> _instance;
+} _SerializedSymmetricRlweCiphertext_default_instance_;
+class SerializedRelinearizationKeyDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SerializedRelinearizationKey> _instance;
+} _SerializedRelinearizationKey_default_instance_;
+class SerializedGaloisKeyDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SerializedGaloisKey> _instance;
+} _SerializedGaloisKey_default_instance_;
+}  // namespace rlwe
+static void InitDefaultsscc_info_SerializedGaloisKey_serialization_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::rlwe::_SerializedGaloisKey_default_instance_;
+    new (ptr) ::rlwe::SerializedGaloisKey();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::rlwe::SerializedGaloisKey::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SerializedGaloisKey_serialization_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SerializedGaloisKey_serialization_2eproto}, {
+      &scc_info_SerializedRelinearizationKey_serialization_2eproto.base,}};
+
+static void InitDefaultsscc_info_SerializedNttPolynomial_serialization_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::rlwe::_SerializedNttPolynomial_default_instance_;
+    new (ptr) ::rlwe::SerializedNttPolynomial();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::rlwe::SerializedNttPolynomial::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SerializedNttPolynomial_serialization_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SerializedNttPolynomial_serialization_2eproto}, {}};
+
+static void InitDefaultsscc_info_SerializedRelinearizationKey_serialization_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::rlwe::_SerializedRelinearizationKey_default_instance_;
+    new (ptr) ::rlwe::SerializedRelinearizationKey();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::rlwe::SerializedRelinearizationKey::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SerializedRelinearizationKey_serialization_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SerializedRelinearizationKey_serialization_2eproto}, {
+      &scc_info_SerializedNttPolynomial_serialization_2eproto.base,}};
+
+static void InitDefaultsscc_info_SerializedSymmetricRlweCiphertext_serialization_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::rlwe::_SerializedSymmetricRlweCiphertext_default_instance_;
+    new (ptr) ::rlwe::SerializedSymmetricRlweCiphertext();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::rlwe::SerializedSymmetricRlweCiphertext::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SerializedSymmetricRlweCiphertext_serialization_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SerializedSymmetricRlweCiphertext_serialization_2eproto}, {
+      &scc_info_SerializedNttPolynomial_serialization_2eproto.base,}};
+
+namespace rlwe {
+
+// ===================================================================
+
+void SerializedNttPolynomial::InitAsDefaultInstance() {
+}
+class SerializedNttPolynomial::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SerializedNttPolynomial>()._has_bits_);
+  static void set_has_coeffs(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_num_coeffs(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+SerializedNttPolynomial::SerializedNttPolynomial()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:rlwe.SerializedNttPolynomial)
+}
+SerializedNttPolynomial::SerializedNttPolynomial(const SerializedNttPolynomial& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  coeffs_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_coeffs()) {
+    coeffs_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.coeffs_);
+  }
+  num_coeffs_ = from.num_coeffs_;
+  // @@protoc_insertion_point(copy_constructor:rlwe.SerializedNttPolynomial)
+}
+
+void SerializedNttPolynomial::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SerializedNttPolynomial_serialization_2eproto.base);
+  coeffs_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  num_coeffs_ = 0;
+}
+
+SerializedNttPolynomial::~SerializedNttPolynomial() {
+  // @@protoc_insertion_point(destructor:rlwe.SerializedNttPolynomial)
+  SharedDtor();
+}
+
+void SerializedNttPolynomial::SharedDtor() {
+  coeffs_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SerializedNttPolynomial::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SerializedNttPolynomial& SerializedNttPolynomial::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SerializedNttPolynomial_serialization_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SerializedNttPolynomial::Clear() {
+// @@protoc_insertion_point(message_clear_start:rlwe.SerializedNttPolynomial)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    coeffs_.ClearNonDefaultToEmptyNoArena();
+  }
+  num_coeffs_ = 0;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SerializedNttPolynomial::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bytes coeffs = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_coeffs();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_coeffs = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_num_coeffs(&has_bits);
+          num_coeffs_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SerializedNttPolynomial::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:rlwe.SerializedNttPolynomial)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bytes coeffs = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        1, this->_internal_coeffs(), target);
+  }
+
+  // optional int32 num_coeffs = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_num_coeffs(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:rlwe.SerializedNttPolynomial)
+  return target;
+}
+
+size_t SerializedNttPolynomial::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:rlwe.SerializedNttPolynomial)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional bytes coeffs = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_coeffs());
+    }
+
+    // optional int32 num_coeffs = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_coeffs());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SerializedNttPolynomial::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SerializedNttPolynomial*>(
+      &from));
+}
+
+void SerializedNttPolynomial::MergeFrom(const SerializedNttPolynomial& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:rlwe.SerializedNttPolynomial)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      coeffs_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.coeffs_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      num_coeffs_ = from.num_coeffs_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SerializedNttPolynomial::CopyFrom(const SerializedNttPolynomial& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:rlwe.SerializedNttPolynomial)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SerializedNttPolynomial::IsInitialized() const {
+  return true;
+}
+
+void SerializedNttPolynomial::InternalSwap(SerializedNttPolynomial* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  coeffs_.Swap(&other->coeffs_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(num_coeffs_, other->num_coeffs_);
+}
+
+std::string SerializedNttPolynomial::GetTypeName() const {
+  return "rlwe.SerializedNttPolynomial";
+}
+
+
+// ===================================================================
+
+void SerializedSymmetricRlweCiphertext::InitAsDefaultInstance() {
+}
+class SerializedSymmetricRlweCiphertext::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SerializedSymmetricRlweCiphertext>()._has_bits_);
+  static void set_has_power_of_s(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_error(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SerializedSymmetricRlweCiphertext::SerializedSymmetricRlweCiphertext()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:rlwe.SerializedSymmetricRlweCiphertext)
+}
+SerializedSymmetricRlweCiphertext::SerializedSymmetricRlweCiphertext(const SerializedSymmetricRlweCiphertext& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      c_(from.c_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&error_, &from.error_,
+    static_cast<size_t>(reinterpret_cast<char*>(&power_of_s_) -
+    reinterpret_cast<char*>(&error_)) + sizeof(power_of_s_));
+  // @@protoc_insertion_point(copy_constructor:rlwe.SerializedSymmetricRlweCiphertext)
+}
+
+void SerializedSymmetricRlweCiphertext::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SerializedSymmetricRlweCiphertext_serialization_2eproto.base);
+  ::memset(&error_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&power_of_s_) -
+      reinterpret_cast<char*>(&error_)) + sizeof(power_of_s_));
+}
+
+SerializedSymmetricRlweCiphertext::~SerializedSymmetricRlweCiphertext() {
+  // @@protoc_insertion_point(destructor:rlwe.SerializedSymmetricRlweCiphertext)
+  SharedDtor();
+}
+
+void SerializedSymmetricRlweCiphertext::SharedDtor() {
+}
+
+void SerializedSymmetricRlweCiphertext::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SerializedSymmetricRlweCiphertext& SerializedSymmetricRlweCiphertext::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SerializedSymmetricRlweCiphertext_serialization_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SerializedSymmetricRlweCiphertext::Clear() {
+// @@protoc_insertion_point(message_clear_start:rlwe.SerializedSymmetricRlweCiphertext)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  c_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&error_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&power_of_s_) -
+        reinterpret_cast<char*>(&error_)) + sizeof(power_of_s_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SerializedSymmetricRlweCiphertext::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .rlwe.SerializedNttPolynomial c = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_c(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional int32 power_of_s = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_power_of_s(&has_bits);
+          power_of_s_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional double error = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 25)) {
+          _Internal::set_has_error(&has_bits);
+          error_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
+          ptr += sizeof(double);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SerializedSymmetricRlweCiphertext::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:rlwe.SerializedSymmetricRlweCiphertext)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .rlwe.SerializedNttPolynomial c = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_c_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_c(i), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 power_of_s = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_power_of_s(), target);
+  }
+
+  // optional double error = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(3, this->_internal_error(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:rlwe.SerializedSymmetricRlweCiphertext)
+  return target;
+}
+
+size_t SerializedSymmetricRlweCiphertext::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:rlwe.SerializedSymmetricRlweCiphertext)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .rlwe.SerializedNttPolynomial c = 1;
+  total_size += 1UL * this->_internal_c_size();
+  for (const auto& msg : this->c_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional double error = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 8;
+    }
+
+    // optional int32 power_of_s = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_power_of_s());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SerializedSymmetricRlweCiphertext::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SerializedSymmetricRlweCiphertext*>(
+      &from));
+}
+
+void SerializedSymmetricRlweCiphertext::MergeFrom(const SerializedSymmetricRlweCiphertext& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:rlwe.SerializedSymmetricRlweCiphertext)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  c_.MergeFrom(from.c_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      error_ = from.error_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      power_of_s_ = from.power_of_s_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SerializedSymmetricRlweCiphertext::CopyFrom(const SerializedSymmetricRlweCiphertext& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:rlwe.SerializedSymmetricRlweCiphertext)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SerializedSymmetricRlweCiphertext::IsInitialized() const {
+  return true;
+}
+
+void SerializedSymmetricRlweCiphertext::InternalSwap(SerializedSymmetricRlweCiphertext* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  c_.InternalSwap(&other->c_);
+  swap(error_, other->error_);
+  swap(power_of_s_, other->power_of_s_);
+}
+
+std::string SerializedSymmetricRlweCiphertext::GetTypeName() const {
+  return "rlwe.SerializedSymmetricRlweCiphertext";
+}
+
+
+// ===================================================================
+
+void SerializedRelinearizationKey::InitAsDefaultInstance() {
+}
+class SerializedRelinearizationKey::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SerializedRelinearizationKey>()._has_bits_);
+  static void set_has_log_decomposition_modulus(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_num_parts(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_prng_seed(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_power_of_s(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+SerializedRelinearizationKey::SerializedRelinearizationKey()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:rlwe.SerializedRelinearizationKey)
+}
+SerializedRelinearizationKey::SerializedRelinearizationKey(const SerializedRelinearizationKey& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      c_(from.c_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  prng_seed_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_prng_seed()) {
+    prng_seed_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.prng_seed_);
+  }
+  ::memcpy(&log_decomposition_modulus_, &from.log_decomposition_modulus_,
+    static_cast<size_t>(reinterpret_cast<char*>(&power_of_s_) -
+    reinterpret_cast<char*>(&log_decomposition_modulus_)) + sizeof(power_of_s_));
+  // @@protoc_insertion_point(copy_constructor:rlwe.SerializedRelinearizationKey)
+}
+
+void SerializedRelinearizationKey::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SerializedRelinearizationKey_serialization_2eproto.base);
+  prng_seed_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&log_decomposition_modulus_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&power_of_s_) -
+      reinterpret_cast<char*>(&log_decomposition_modulus_)) + sizeof(power_of_s_));
+}
+
+SerializedRelinearizationKey::~SerializedRelinearizationKey() {
+  // @@protoc_insertion_point(destructor:rlwe.SerializedRelinearizationKey)
+  SharedDtor();
+}
+
+void SerializedRelinearizationKey::SharedDtor() {
+  prng_seed_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SerializedRelinearizationKey::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SerializedRelinearizationKey& SerializedRelinearizationKey::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SerializedRelinearizationKey_serialization_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SerializedRelinearizationKey::Clear() {
+// @@protoc_insertion_point(message_clear_start:rlwe.SerializedRelinearizationKey)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  c_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    prng_seed_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x0000000eu) {
+    ::memset(&log_decomposition_modulus_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&power_of_s_) -
+        reinterpret_cast<char*>(&log_decomposition_modulus_)) + sizeof(power_of_s_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SerializedRelinearizationKey::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .rlwe.SerializedNttPolynomial c = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_c(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional int32 log_decomposition_modulus = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_log_decomposition_modulus(&has_bits);
+          log_decomposition_modulus_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_parts = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_num_parts(&has_bits);
+          num_parts_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bytes prng_seed = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_prng_seed();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 power_of_s = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_power_of_s(&has_bits);
+          power_of_s_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SerializedRelinearizationKey::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:rlwe.SerializedRelinearizationKey)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .rlwe.SerializedNttPolynomial c = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_c_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_c(i), target, stream);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 log_decomposition_modulus = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_log_decomposition_modulus(), target);
+  }
+
+  // optional int32 num_parts = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_num_parts(), target);
+  }
+
+  // optional bytes prng_seed = 4;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteBytesMaybeAliased(
+        4, this->_internal_prng_seed(), target);
+  }
+
+  // optional int32 power_of_s = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_power_of_s(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:rlwe.SerializedRelinearizationKey)
+  return target;
+}
+
+size_t SerializedRelinearizationKey::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:rlwe.SerializedRelinearizationKey)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .rlwe.SerializedNttPolynomial c = 1;
+  total_size += 1UL * this->_internal_c_size();
+  for (const auto& msg : this->c_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional bytes prng_seed = 4;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
+          this->_internal_prng_seed());
+    }
+
+    // optional int32 log_decomposition_modulus = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_log_decomposition_modulus());
+    }
+
+    // optional int32 num_parts = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_parts());
+    }
+
+    // optional int32 power_of_s = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_power_of_s());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SerializedRelinearizationKey::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SerializedRelinearizationKey*>(
+      &from));
+}
+
+void SerializedRelinearizationKey::MergeFrom(const SerializedRelinearizationKey& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:rlwe.SerializedRelinearizationKey)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  c_.MergeFrom(from.c_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      prng_seed_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.prng_seed_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      log_decomposition_modulus_ = from.log_decomposition_modulus_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      num_parts_ = from.num_parts_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      power_of_s_ = from.power_of_s_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SerializedRelinearizationKey::CopyFrom(const SerializedRelinearizationKey& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:rlwe.SerializedRelinearizationKey)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SerializedRelinearizationKey::IsInitialized() const {
+  return true;
+}
+
+void SerializedRelinearizationKey::InternalSwap(SerializedRelinearizationKey* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  c_.InternalSwap(&other->c_);
+  prng_seed_.Swap(&other->prng_seed_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(log_decomposition_modulus_, other->log_decomposition_modulus_);
+  swap(num_parts_, other->num_parts_);
+  swap(power_of_s_, other->power_of_s_);
+}
+
+std::string SerializedRelinearizationKey::GetTypeName() const {
+  return "rlwe.SerializedRelinearizationKey";
+}
+
+
+// ===================================================================
+
+void SerializedGaloisKey::InitAsDefaultInstance() {
+  ::rlwe::_SerializedGaloisKey_default_instance_._instance.get_mutable()->key_ = const_cast< ::rlwe::SerializedRelinearizationKey*>(
+      ::rlwe::SerializedRelinearizationKey::internal_default_instance());
+}
+class SerializedGaloisKey::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SerializedGaloisKey>()._has_bits_);
+  static const ::rlwe::SerializedRelinearizationKey& key(const SerializedGaloisKey* msg);
+  static void set_has_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::rlwe::SerializedRelinearizationKey&
+SerializedGaloisKey::_Internal::key(const SerializedGaloisKey* msg) {
+  return *msg->key_;
+}
+SerializedGaloisKey::SerializedGaloisKey()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:rlwe.SerializedGaloisKey)
+}
+SerializedGaloisKey::SerializedGaloisKey(const SerializedGaloisKey& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_key()) {
+    key_ = new ::rlwe::SerializedRelinearizationKey(*from.key_);
+  } else {
+    key_ = nullptr;
+  }
+  // @@protoc_insertion_point(copy_constructor:rlwe.SerializedGaloisKey)
+}
+
+void SerializedGaloisKey::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SerializedGaloisKey_serialization_2eproto.base);
+  key_ = nullptr;
+}
+
+SerializedGaloisKey::~SerializedGaloisKey() {
+  // @@protoc_insertion_point(destructor:rlwe.SerializedGaloisKey)
+  SharedDtor();
+}
+
+void SerializedGaloisKey::SharedDtor() {
+  if (this != internal_default_instance()) delete key_;
+}
+
+void SerializedGaloisKey::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SerializedGaloisKey& SerializedGaloisKey::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SerializedGaloisKey_serialization_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SerializedGaloisKey::Clear() {
+// @@protoc_insertion_point(message_clear_start:rlwe.SerializedGaloisKey)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(key_ != nullptr);
+    key_->Clear();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SerializedGaloisKey::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .rlwe.SerializedRelinearizationKey key = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_key(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SerializedGaloisKey::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:rlwe.SerializedGaloisKey)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .rlwe.SerializedRelinearizationKey key = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::key(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:rlwe.SerializedGaloisKey)
+  return target;
+}
+
+size_t SerializedGaloisKey::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:rlwe.SerializedGaloisKey)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional .rlwe.SerializedRelinearizationKey key = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+        *key_);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SerializedGaloisKey::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SerializedGaloisKey*>(
+      &from));
+}
+
+void SerializedGaloisKey::MergeFrom(const SerializedGaloisKey& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:rlwe.SerializedGaloisKey)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_key()) {
+    _internal_mutable_key()->::rlwe::SerializedRelinearizationKey::MergeFrom(from._internal_key());
+  }
+}
+
+void SerializedGaloisKey::CopyFrom(const SerializedGaloisKey& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:rlwe.SerializedGaloisKey)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SerializedGaloisKey::IsInitialized() const {
+  return true;
+}
+
+void SerializedGaloisKey::InternalSwap(SerializedGaloisKey* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(key_, other->key_);
+}
+
+std::string SerializedGaloisKey::GetTypeName() const {
+  return "rlwe.SerializedGaloisKey";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace rlwe
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::rlwe::SerializedNttPolynomial* Arena::CreateMaybeMessage< ::rlwe::SerializedNttPolynomial >(Arena* arena) {
+  return Arena::CreateInternal< ::rlwe::SerializedNttPolynomial >(arena);
+}
+template<> PROTOBUF_NOINLINE ::rlwe::SerializedSymmetricRlweCiphertext* Arena::CreateMaybeMessage< ::rlwe::SerializedSymmetricRlweCiphertext >(Arena* arena) {
+  return Arena::CreateInternal< ::rlwe::SerializedSymmetricRlweCiphertext >(arena);
+}
+template<> PROTOBUF_NOINLINE ::rlwe::SerializedRelinearizationKey* Arena::CreateMaybeMessage< ::rlwe::SerializedRelinearizationKey >(Arena* arena) {
+  return Arena::CreateInternal< ::rlwe::SerializedRelinearizationKey >(arena);
+}
+template<> PROTOBUF_NOINLINE ::rlwe::SerializedGaloisKey* Arena::CreateMaybeMessage< ::rlwe::SerializedGaloisKey >(Arena* arena) {
+  return Arena::CreateInternal< ::rlwe::SerializedGaloisKey >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/serialization.pb.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/serialization.pb.h
new file mode 100644
index 0000000..7afd6dd
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/bindings/serialization.pb.h
@@ -0,0 +1,1195 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: serialization.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_serialization_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_serialization_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_serialization_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_serialization_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[4]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace rlwe {
+class SerializedGaloisKey;
+class SerializedGaloisKeyDefaultTypeInternal;
+extern SerializedGaloisKeyDefaultTypeInternal _SerializedGaloisKey_default_instance_;
+class SerializedNttPolynomial;
+class SerializedNttPolynomialDefaultTypeInternal;
+extern SerializedNttPolynomialDefaultTypeInternal _SerializedNttPolynomial_default_instance_;
+class SerializedRelinearizationKey;
+class SerializedRelinearizationKeyDefaultTypeInternal;
+extern SerializedRelinearizationKeyDefaultTypeInternal _SerializedRelinearizationKey_default_instance_;
+class SerializedSymmetricRlweCiphertext;
+class SerializedSymmetricRlweCiphertextDefaultTypeInternal;
+extern SerializedSymmetricRlweCiphertextDefaultTypeInternal _SerializedSymmetricRlweCiphertext_default_instance_;
+}  // namespace rlwe
+PROTOBUF_NAMESPACE_OPEN
+template<> ::rlwe::SerializedGaloisKey* Arena::CreateMaybeMessage<::rlwe::SerializedGaloisKey>(Arena*);
+template<> ::rlwe::SerializedNttPolynomial* Arena::CreateMaybeMessage<::rlwe::SerializedNttPolynomial>(Arena*);
+template<> ::rlwe::SerializedRelinearizationKey* Arena::CreateMaybeMessage<::rlwe::SerializedRelinearizationKey>(Arena*);
+template<> ::rlwe::SerializedSymmetricRlweCiphertext* Arena::CreateMaybeMessage<::rlwe::SerializedSymmetricRlweCiphertext>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace rlwe {
+
+// ===================================================================
+
+class SerializedNttPolynomial :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:rlwe.SerializedNttPolynomial) */ {
+ public:
+  SerializedNttPolynomial();
+  virtual ~SerializedNttPolynomial();
+
+  SerializedNttPolynomial(const SerializedNttPolynomial& from);
+  SerializedNttPolynomial(SerializedNttPolynomial&& from) noexcept
+    : SerializedNttPolynomial() {
+    *this = ::std::move(from);
+  }
+
+  inline SerializedNttPolynomial& operator=(const SerializedNttPolynomial& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SerializedNttPolynomial& operator=(SerializedNttPolynomial&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SerializedNttPolynomial& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SerializedNttPolynomial* internal_default_instance() {
+    return reinterpret_cast<const SerializedNttPolynomial*>(
+               &_SerializedNttPolynomial_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(SerializedNttPolynomial& a, SerializedNttPolynomial& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SerializedNttPolynomial* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SerializedNttPolynomial* New() const final {
+    return CreateMaybeMessage<SerializedNttPolynomial>(nullptr);
+  }
+
+  SerializedNttPolynomial* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SerializedNttPolynomial>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SerializedNttPolynomial& from);
+  void MergeFrom(const SerializedNttPolynomial& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SerializedNttPolynomial* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "rlwe.SerializedNttPolynomial";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCoeffsFieldNumber = 1,
+    kNumCoeffsFieldNumber = 2,
+  };
+  // optional bytes coeffs = 1;
+  bool has_coeffs() const;
+  private:
+  bool _internal_has_coeffs() const;
+  public:
+  void clear_coeffs();
+  const std::string& coeffs() const;
+  void set_coeffs(const std::string& value);
+  void set_coeffs(std::string&& value);
+  void set_coeffs(const char* value);
+  void set_coeffs(const void* value, size_t size);
+  std::string* mutable_coeffs();
+  std::string* release_coeffs();
+  void set_allocated_coeffs(std::string* coeffs);
+  private:
+  const std::string& _internal_coeffs() const;
+  void _internal_set_coeffs(const std::string& value);
+  std::string* _internal_mutable_coeffs();
+  public:
+
+  // optional int32 num_coeffs = 2;
+  bool has_num_coeffs() const;
+  private:
+  bool _internal_has_num_coeffs() const;
+  public:
+  void clear_num_coeffs();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_coeffs() const;
+  void set_num_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_coeffs() const;
+  void _internal_set_num_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:rlwe.SerializedNttPolynomial)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr coeffs_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_coeffs_;
+  friend struct ::TableStruct_serialization_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SerializedSymmetricRlweCiphertext :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:rlwe.SerializedSymmetricRlweCiphertext) */ {
+ public:
+  SerializedSymmetricRlweCiphertext();
+  virtual ~SerializedSymmetricRlweCiphertext();
+
+  SerializedSymmetricRlweCiphertext(const SerializedSymmetricRlweCiphertext& from);
+  SerializedSymmetricRlweCiphertext(SerializedSymmetricRlweCiphertext&& from) noexcept
+    : SerializedSymmetricRlweCiphertext() {
+    *this = ::std::move(from);
+  }
+
+  inline SerializedSymmetricRlweCiphertext& operator=(const SerializedSymmetricRlweCiphertext& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SerializedSymmetricRlweCiphertext& operator=(SerializedSymmetricRlweCiphertext&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SerializedSymmetricRlweCiphertext& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SerializedSymmetricRlweCiphertext* internal_default_instance() {
+    return reinterpret_cast<const SerializedSymmetricRlweCiphertext*>(
+               &_SerializedSymmetricRlweCiphertext_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(SerializedSymmetricRlweCiphertext& a, SerializedSymmetricRlweCiphertext& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SerializedSymmetricRlweCiphertext* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SerializedSymmetricRlweCiphertext* New() const final {
+    return CreateMaybeMessage<SerializedSymmetricRlweCiphertext>(nullptr);
+  }
+
+  SerializedSymmetricRlweCiphertext* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SerializedSymmetricRlweCiphertext>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SerializedSymmetricRlweCiphertext& from);
+  void MergeFrom(const SerializedSymmetricRlweCiphertext& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SerializedSymmetricRlweCiphertext* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "rlwe.SerializedSymmetricRlweCiphertext";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCFieldNumber = 1,
+    kErrorFieldNumber = 3,
+    kPowerOfSFieldNumber = 2,
+  };
+  // repeated .rlwe.SerializedNttPolynomial c = 1;
+  int c_size() const;
+  private:
+  int _internal_c_size() const;
+  public:
+  void clear_c();
+  ::rlwe::SerializedNttPolynomial* mutable_c(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >*
+      mutable_c();
+  private:
+  const ::rlwe::SerializedNttPolynomial& _internal_c(int index) const;
+  ::rlwe::SerializedNttPolynomial* _internal_add_c();
+  public:
+  const ::rlwe::SerializedNttPolynomial& c(int index) const;
+  ::rlwe::SerializedNttPolynomial* add_c();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >&
+      c() const;
+
+  // optional double error = 3;
+  bool has_error() const;
+  private:
+  bool _internal_has_error() const;
+  public:
+  void clear_error();
+  double error() const;
+  void set_error(double value);
+  private:
+  double _internal_error() const;
+  void _internal_set_error(double value);
+  public:
+
+  // optional int32 power_of_s = 2;
+  bool has_power_of_s() const;
+  private:
+  bool _internal_has_power_of_s() const;
+  public:
+  void clear_power_of_s();
+  ::PROTOBUF_NAMESPACE_ID::int32 power_of_s() const;
+  void set_power_of_s(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_power_of_s() const;
+  void _internal_set_power_of_s(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:rlwe.SerializedSymmetricRlweCiphertext)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial > c_;
+  double error_;
+  ::PROTOBUF_NAMESPACE_ID::int32 power_of_s_;
+  friend struct ::TableStruct_serialization_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SerializedRelinearizationKey :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:rlwe.SerializedRelinearizationKey) */ {
+ public:
+  SerializedRelinearizationKey();
+  virtual ~SerializedRelinearizationKey();
+
+  SerializedRelinearizationKey(const SerializedRelinearizationKey& from);
+  SerializedRelinearizationKey(SerializedRelinearizationKey&& from) noexcept
+    : SerializedRelinearizationKey() {
+    *this = ::std::move(from);
+  }
+
+  inline SerializedRelinearizationKey& operator=(const SerializedRelinearizationKey& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SerializedRelinearizationKey& operator=(SerializedRelinearizationKey&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SerializedRelinearizationKey& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SerializedRelinearizationKey* internal_default_instance() {
+    return reinterpret_cast<const SerializedRelinearizationKey*>(
+               &_SerializedRelinearizationKey_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    2;
+
+  friend void swap(SerializedRelinearizationKey& a, SerializedRelinearizationKey& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SerializedRelinearizationKey* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SerializedRelinearizationKey* New() const final {
+    return CreateMaybeMessage<SerializedRelinearizationKey>(nullptr);
+  }
+
+  SerializedRelinearizationKey* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SerializedRelinearizationKey>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SerializedRelinearizationKey& from);
+  void MergeFrom(const SerializedRelinearizationKey& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SerializedRelinearizationKey* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "rlwe.SerializedRelinearizationKey";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kCFieldNumber = 1,
+    kPrngSeedFieldNumber = 4,
+    kLogDecompositionModulusFieldNumber = 2,
+    kNumPartsFieldNumber = 3,
+    kPowerOfSFieldNumber = 5,
+  };
+  // repeated .rlwe.SerializedNttPolynomial c = 1;
+  int c_size() const;
+  private:
+  int _internal_c_size() const;
+  public:
+  void clear_c();
+  ::rlwe::SerializedNttPolynomial* mutable_c(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >*
+      mutable_c();
+  private:
+  const ::rlwe::SerializedNttPolynomial& _internal_c(int index) const;
+  ::rlwe::SerializedNttPolynomial* _internal_add_c();
+  public:
+  const ::rlwe::SerializedNttPolynomial& c(int index) const;
+  ::rlwe::SerializedNttPolynomial* add_c();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >&
+      c() const;
+
+  // optional bytes prng_seed = 4;
+  bool has_prng_seed() const;
+  private:
+  bool _internal_has_prng_seed() const;
+  public:
+  void clear_prng_seed();
+  const std::string& prng_seed() const;
+  void set_prng_seed(const std::string& value);
+  void set_prng_seed(std::string&& value);
+  void set_prng_seed(const char* value);
+  void set_prng_seed(const void* value, size_t size);
+  std::string* mutable_prng_seed();
+  std::string* release_prng_seed();
+  void set_allocated_prng_seed(std::string* prng_seed);
+  private:
+  const std::string& _internal_prng_seed() const;
+  void _internal_set_prng_seed(const std::string& value);
+  std::string* _internal_mutable_prng_seed();
+  public:
+
+  // optional int32 log_decomposition_modulus = 2;
+  bool has_log_decomposition_modulus() const;
+  private:
+  bool _internal_has_log_decomposition_modulus() const;
+  public:
+  void clear_log_decomposition_modulus();
+  ::PROTOBUF_NAMESPACE_ID::int32 log_decomposition_modulus() const;
+  void set_log_decomposition_modulus(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_log_decomposition_modulus() const;
+  void _internal_set_log_decomposition_modulus(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 num_parts = 3;
+  bool has_num_parts() const;
+  private:
+  bool _internal_has_num_parts() const;
+  public:
+  void clear_num_parts();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_parts() const;
+  void set_num_parts(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_parts() const;
+  void _internal_set_num_parts(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 power_of_s = 5;
+  bool has_power_of_s() const;
+  private:
+  bool _internal_has_power_of_s() const;
+  public:
+  void clear_power_of_s();
+  ::PROTOBUF_NAMESPACE_ID::int32 power_of_s() const;
+  void set_power_of_s(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_power_of_s() const;
+  void _internal_set_power_of_s(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:rlwe.SerializedRelinearizationKey)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial > c_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr prng_seed_;
+  ::PROTOBUF_NAMESPACE_ID::int32 log_decomposition_modulus_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_parts_;
+  ::PROTOBUF_NAMESPACE_ID::int32 power_of_s_;
+  friend struct ::TableStruct_serialization_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SerializedGaloisKey :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:rlwe.SerializedGaloisKey) */ {
+ public:
+  SerializedGaloisKey();
+  virtual ~SerializedGaloisKey();
+
+  SerializedGaloisKey(const SerializedGaloisKey& from);
+  SerializedGaloisKey(SerializedGaloisKey&& from) noexcept
+    : SerializedGaloisKey() {
+    *this = ::std::move(from);
+  }
+
+  inline SerializedGaloisKey& operator=(const SerializedGaloisKey& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SerializedGaloisKey& operator=(SerializedGaloisKey&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SerializedGaloisKey& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SerializedGaloisKey* internal_default_instance() {
+    return reinterpret_cast<const SerializedGaloisKey*>(
+               &_SerializedGaloisKey_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    3;
+
+  friend void swap(SerializedGaloisKey& a, SerializedGaloisKey& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SerializedGaloisKey* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SerializedGaloisKey* New() const final {
+    return CreateMaybeMessage<SerializedGaloisKey>(nullptr);
+  }
+
+  SerializedGaloisKey* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SerializedGaloisKey>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SerializedGaloisKey& from);
+  void MergeFrom(const SerializedGaloisKey& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SerializedGaloisKey* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "rlwe.SerializedGaloisKey";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kKeyFieldNumber = 1,
+  };
+  // optional .rlwe.SerializedRelinearizationKey key = 1;
+  bool has_key() const;
+  private:
+  bool _internal_has_key() const;
+  public:
+  void clear_key();
+  const ::rlwe::SerializedRelinearizationKey& key() const;
+  ::rlwe::SerializedRelinearizationKey* release_key();
+  ::rlwe::SerializedRelinearizationKey* mutable_key();
+  void set_allocated_key(::rlwe::SerializedRelinearizationKey* key);
+  private:
+  const ::rlwe::SerializedRelinearizationKey& _internal_key() const;
+  ::rlwe::SerializedRelinearizationKey* _internal_mutable_key();
+  public:
+
+  // @@protoc_insertion_point(class_scope:rlwe.SerializedGaloisKey)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::rlwe::SerializedRelinearizationKey* key_;
+  friend struct ::TableStruct_serialization_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// SerializedNttPolynomial
+
+// optional bytes coeffs = 1;
+inline bool SerializedNttPolynomial::_internal_has_coeffs() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SerializedNttPolynomial::has_coeffs() const {
+  return _internal_has_coeffs();
+}
+inline void SerializedNttPolynomial::clear_coeffs() {
+  coeffs_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SerializedNttPolynomial::coeffs() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedNttPolynomial.coeffs)
+  return _internal_coeffs();
+}
+inline void SerializedNttPolynomial::set_coeffs(const std::string& value) {
+  _internal_set_coeffs(value);
+  // @@protoc_insertion_point(field_set:rlwe.SerializedNttPolynomial.coeffs)
+}
+inline std::string* SerializedNttPolynomial::mutable_coeffs() {
+  // @@protoc_insertion_point(field_mutable:rlwe.SerializedNttPolynomial.coeffs)
+  return _internal_mutable_coeffs();
+}
+inline const std::string& SerializedNttPolynomial::_internal_coeffs() const {
+  return coeffs_.GetNoArena();
+}
+inline void SerializedNttPolynomial::_internal_set_coeffs(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  coeffs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SerializedNttPolynomial::set_coeffs(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  coeffs_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:rlwe.SerializedNttPolynomial.coeffs)
+}
+inline void SerializedNttPolynomial::set_coeffs(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  coeffs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:rlwe.SerializedNttPolynomial.coeffs)
+}
+inline void SerializedNttPolynomial::set_coeffs(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  coeffs_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:rlwe.SerializedNttPolynomial.coeffs)
+}
+inline std::string* SerializedNttPolynomial::_internal_mutable_coeffs() {
+  _has_bits_[0] |= 0x00000001u;
+  return coeffs_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SerializedNttPolynomial::release_coeffs() {
+  // @@protoc_insertion_point(field_release:rlwe.SerializedNttPolynomial.coeffs)
+  if (!_internal_has_coeffs()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return coeffs_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SerializedNttPolynomial::set_allocated_coeffs(std::string* coeffs) {
+  if (coeffs != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  coeffs_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), coeffs);
+  // @@protoc_insertion_point(field_set_allocated:rlwe.SerializedNttPolynomial.coeffs)
+}
+
+// optional int32 num_coeffs = 2;
+inline bool SerializedNttPolynomial::_internal_has_num_coeffs() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SerializedNttPolynomial::has_num_coeffs() const {
+  return _internal_has_num_coeffs();
+}
+inline void SerializedNttPolynomial::clear_num_coeffs() {
+  num_coeffs_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedNttPolynomial::_internal_num_coeffs() const {
+  return num_coeffs_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedNttPolynomial::num_coeffs() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedNttPolynomial.num_coeffs)
+  return _internal_num_coeffs();
+}
+inline void SerializedNttPolynomial::_internal_set_num_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  num_coeffs_ = value;
+}
+inline void SerializedNttPolynomial::set_num_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_coeffs(value);
+  // @@protoc_insertion_point(field_set:rlwe.SerializedNttPolynomial.num_coeffs)
+}
+
+// -------------------------------------------------------------------
+
+// SerializedSymmetricRlweCiphertext
+
+// repeated .rlwe.SerializedNttPolynomial c = 1;
+inline int SerializedSymmetricRlweCiphertext::_internal_c_size() const {
+  return c_.size();
+}
+inline int SerializedSymmetricRlweCiphertext::c_size() const {
+  return _internal_c_size();
+}
+inline void SerializedSymmetricRlweCiphertext::clear_c() {
+  c_.Clear();
+}
+inline ::rlwe::SerializedNttPolynomial* SerializedSymmetricRlweCiphertext::mutable_c(int index) {
+  // @@protoc_insertion_point(field_mutable:rlwe.SerializedSymmetricRlweCiphertext.c)
+  return c_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >*
+SerializedSymmetricRlweCiphertext::mutable_c() {
+  // @@protoc_insertion_point(field_mutable_list:rlwe.SerializedSymmetricRlweCiphertext.c)
+  return &c_;
+}
+inline const ::rlwe::SerializedNttPolynomial& SerializedSymmetricRlweCiphertext::_internal_c(int index) const {
+  return c_.Get(index);
+}
+inline const ::rlwe::SerializedNttPolynomial& SerializedSymmetricRlweCiphertext::c(int index) const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedSymmetricRlweCiphertext.c)
+  return _internal_c(index);
+}
+inline ::rlwe::SerializedNttPolynomial* SerializedSymmetricRlweCiphertext::_internal_add_c() {
+  return c_.Add();
+}
+inline ::rlwe::SerializedNttPolynomial* SerializedSymmetricRlweCiphertext::add_c() {
+  // @@protoc_insertion_point(field_add:rlwe.SerializedSymmetricRlweCiphertext.c)
+  return _internal_add_c();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >&
+SerializedSymmetricRlweCiphertext::c() const {
+  // @@protoc_insertion_point(field_list:rlwe.SerializedSymmetricRlweCiphertext.c)
+  return c_;
+}
+
+// optional int32 power_of_s = 2;
+inline bool SerializedSymmetricRlweCiphertext::_internal_has_power_of_s() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SerializedSymmetricRlweCiphertext::has_power_of_s() const {
+  return _internal_has_power_of_s();
+}
+inline void SerializedSymmetricRlweCiphertext::clear_power_of_s() {
+  power_of_s_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedSymmetricRlweCiphertext::_internal_power_of_s() const {
+  return power_of_s_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedSymmetricRlweCiphertext::power_of_s() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedSymmetricRlweCiphertext.power_of_s)
+  return _internal_power_of_s();
+}
+inline void SerializedSymmetricRlweCiphertext::_internal_set_power_of_s(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  power_of_s_ = value;
+}
+inline void SerializedSymmetricRlweCiphertext::set_power_of_s(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_power_of_s(value);
+  // @@protoc_insertion_point(field_set:rlwe.SerializedSymmetricRlweCiphertext.power_of_s)
+}
+
+// optional double error = 3;
+inline bool SerializedSymmetricRlweCiphertext::_internal_has_error() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SerializedSymmetricRlweCiphertext::has_error() const {
+  return _internal_has_error();
+}
+inline void SerializedSymmetricRlweCiphertext::clear_error() {
+  error_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline double SerializedSymmetricRlweCiphertext::_internal_error() const {
+  return error_;
+}
+inline double SerializedSymmetricRlweCiphertext::error() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedSymmetricRlweCiphertext.error)
+  return _internal_error();
+}
+inline void SerializedSymmetricRlweCiphertext::_internal_set_error(double value) {
+  _has_bits_[0] |= 0x00000001u;
+  error_ = value;
+}
+inline void SerializedSymmetricRlweCiphertext::set_error(double value) {
+  _internal_set_error(value);
+  // @@protoc_insertion_point(field_set:rlwe.SerializedSymmetricRlweCiphertext.error)
+}
+
+// -------------------------------------------------------------------
+
+// SerializedRelinearizationKey
+
+// repeated .rlwe.SerializedNttPolynomial c = 1;
+inline int SerializedRelinearizationKey::_internal_c_size() const {
+  return c_.size();
+}
+inline int SerializedRelinearizationKey::c_size() const {
+  return _internal_c_size();
+}
+inline void SerializedRelinearizationKey::clear_c() {
+  c_.Clear();
+}
+inline ::rlwe::SerializedNttPolynomial* SerializedRelinearizationKey::mutable_c(int index) {
+  // @@protoc_insertion_point(field_mutable:rlwe.SerializedRelinearizationKey.c)
+  return c_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >*
+SerializedRelinearizationKey::mutable_c() {
+  // @@protoc_insertion_point(field_mutable_list:rlwe.SerializedRelinearizationKey.c)
+  return &c_;
+}
+inline const ::rlwe::SerializedNttPolynomial& SerializedRelinearizationKey::_internal_c(int index) const {
+  return c_.Get(index);
+}
+inline const ::rlwe::SerializedNttPolynomial& SerializedRelinearizationKey::c(int index) const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedRelinearizationKey.c)
+  return _internal_c(index);
+}
+inline ::rlwe::SerializedNttPolynomial* SerializedRelinearizationKey::_internal_add_c() {
+  return c_.Add();
+}
+inline ::rlwe::SerializedNttPolynomial* SerializedRelinearizationKey::add_c() {
+  // @@protoc_insertion_point(field_add:rlwe.SerializedRelinearizationKey.c)
+  return _internal_add_c();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::rlwe::SerializedNttPolynomial >&
+SerializedRelinearizationKey::c() const {
+  // @@protoc_insertion_point(field_list:rlwe.SerializedRelinearizationKey.c)
+  return c_;
+}
+
+// optional int32 log_decomposition_modulus = 2;
+inline bool SerializedRelinearizationKey::_internal_has_log_decomposition_modulus() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SerializedRelinearizationKey::has_log_decomposition_modulus() const {
+  return _internal_has_log_decomposition_modulus();
+}
+inline void SerializedRelinearizationKey::clear_log_decomposition_modulus() {
+  log_decomposition_modulus_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedRelinearizationKey::_internal_log_decomposition_modulus() const {
+  return log_decomposition_modulus_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedRelinearizationKey::log_decomposition_modulus() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedRelinearizationKey.log_decomposition_modulus)
+  return _internal_log_decomposition_modulus();
+}
+inline void SerializedRelinearizationKey::_internal_set_log_decomposition_modulus(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  log_decomposition_modulus_ = value;
+}
+inline void SerializedRelinearizationKey::set_log_decomposition_modulus(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_log_decomposition_modulus(value);
+  // @@protoc_insertion_point(field_set:rlwe.SerializedRelinearizationKey.log_decomposition_modulus)
+}
+
+// optional int32 num_parts = 3;
+inline bool SerializedRelinearizationKey::_internal_has_num_parts() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SerializedRelinearizationKey::has_num_parts() const {
+  return _internal_has_num_parts();
+}
+inline void SerializedRelinearizationKey::clear_num_parts() {
+  num_parts_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedRelinearizationKey::_internal_num_parts() const {
+  return num_parts_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedRelinearizationKey::num_parts() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedRelinearizationKey.num_parts)
+  return _internal_num_parts();
+}
+inline void SerializedRelinearizationKey::_internal_set_num_parts(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  num_parts_ = value;
+}
+inline void SerializedRelinearizationKey::set_num_parts(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_parts(value);
+  // @@protoc_insertion_point(field_set:rlwe.SerializedRelinearizationKey.num_parts)
+}
+
+// optional bytes prng_seed = 4;
+inline bool SerializedRelinearizationKey::_internal_has_prng_seed() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SerializedRelinearizationKey::has_prng_seed() const {
+  return _internal_has_prng_seed();
+}
+inline void SerializedRelinearizationKey::clear_prng_seed() {
+  prng_seed_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SerializedRelinearizationKey::prng_seed() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedRelinearizationKey.prng_seed)
+  return _internal_prng_seed();
+}
+inline void SerializedRelinearizationKey::set_prng_seed(const std::string& value) {
+  _internal_set_prng_seed(value);
+  // @@protoc_insertion_point(field_set:rlwe.SerializedRelinearizationKey.prng_seed)
+}
+inline std::string* SerializedRelinearizationKey::mutable_prng_seed() {
+  // @@protoc_insertion_point(field_mutable:rlwe.SerializedRelinearizationKey.prng_seed)
+  return _internal_mutable_prng_seed();
+}
+inline const std::string& SerializedRelinearizationKey::_internal_prng_seed() const {
+  return prng_seed_.GetNoArena();
+}
+inline void SerializedRelinearizationKey::_internal_set_prng_seed(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  prng_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SerializedRelinearizationKey::set_prng_seed(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  prng_seed_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:rlwe.SerializedRelinearizationKey.prng_seed)
+}
+inline void SerializedRelinearizationKey::set_prng_seed(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  prng_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:rlwe.SerializedRelinearizationKey.prng_seed)
+}
+inline void SerializedRelinearizationKey::set_prng_seed(const void* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  prng_seed_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:rlwe.SerializedRelinearizationKey.prng_seed)
+}
+inline std::string* SerializedRelinearizationKey::_internal_mutable_prng_seed() {
+  _has_bits_[0] |= 0x00000001u;
+  return prng_seed_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SerializedRelinearizationKey::release_prng_seed() {
+  // @@protoc_insertion_point(field_release:rlwe.SerializedRelinearizationKey.prng_seed)
+  if (!_internal_has_prng_seed()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return prng_seed_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SerializedRelinearizationKey::set_allocated_prng_seed(std::string* prng_seed) {
+  if (prng_seed != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  prng_seed_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), prng_seed);
+  // @@protoc_insertion_point(field_set_allocated:rlwe.SerializedRelinearizationKey.prng_seed)
+}
+
+// optional int32 power_of_s = 5;
+inline bool SerializedRelinearizationKey::_internal_has_power_of_s() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SerializedRelinearizationKey::has_power_of_s() const {
+  return _internal_has_power_of_s();
+}
+inline void SerializedRelinearizationKey::clear_power_of_s() {
+  power_of_s_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedRelinearizationKey::_internal_power_of_s() const {
+  return power_of_s_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SerializedRelinearizationKey::power_of_s() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedRelinearizationKey.power_of_s)
+  return _internal_power_of_s();
+}
+inline void SerializedRelinearizationKey::_internal_set_power_of_s(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  power_of_s_ = value;
+}
+inline void SerializedRelinearizationKey::set_power_of_s(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_power_of_s(value);
+  // @@protoc_insertion_point(field_set:rlwe.SerializedRelinearizationKey.power_of_s)
+}
+
+// -------------------------------------------------------------------
+
+// SerializedGaloisKey
+
+// optional .rlwe.SerializedRelinearizationKey key = 1;
+inline bool SerializedGaloisKey::_internal_has_key() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || key_ != nullptr);
+  return value;
+}
+inline bool SerializedGaloisKey::has_key() const {
+  return _internal_has_key();
+}
+inline void SerializedGaloisKey::clear_key() {
+  if (key_ != nullptr) key_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::rlwe::SerializedRelinearizationKey& SerializedGaloisKey::_internal_key() const {
+  const ::rlwe::SerializedRelinearizationKey* p = key_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::rlwe::SerializedRelinearizationKey*>(
+      &::rlwe::_SerializedRelinearizationKey_default_instance_);
+}
+inline const ::rlwe::SerializedRelinearizationKey& SerializedGaloisKey::key() const {
+  // @@protoc_insertion_point(field_get:rlwe.SerializedGaloisKey.key)
+  return _internal_key();
+}
+inline ::rlwe::SerializedRelinearizationKey* SerializedGaloisKey::release_key() {
+  // @@protoc_insertion_point(field_release:rlwe.SerializedGaloisKey.key)
+  _has_bits_[0] &= ~0x00000001u;
+  ::rlwe::SerializedRelinearizationKey* temp = key_;
+  key_ = nullptr;
+  return temp;
+}
+inline ::rlwe::SerializedRelinearizationKey* SerializedGaloisKey::_internal_mutable_key() {
+  _has_bits_[0] |= 0x00000001u;
+  if (key_ == nullptr) {
+    auto* p = CreateMaybeMessage<::rlwe::SerializedRelinearizationKey>(GetArenaNoVirtual());
+    key_ = p;
+  }
+  return key_;
+}
+inline ::rlwe::SerializedRelinearizationKey* SerializedGaloisKey::mutable_key() {
+  // @@protoc_insertion_point(field_mutable:rlwe.SerializedGaloisKey.key)
+  return _internal_mutable_key();
+}
+inline void SerializedGaloisKey::set_allocated_key(::rlwe::SerializedRelinearizationKey* key) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete key_;
+  }
+  if (key) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      key = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, key, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  key_ = key;
+  // @@protoc_insertion_point(field_set_allocated:rlwe.SerializedGaloisKey.key)
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace rlwe
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_serialization_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/install_attributes/libinstallattributes.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/install_attributes/libinstallattributes.h
new file mode 100644
index 0000000..2bcbf0f
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/install_attributes/libinstallattributes.h
@@ -0,0 +1,66 @@
+// Copyright 2016 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef LIBBRILLO_INSTALL_ATTRIBUTES_LIBINSTALLATTRIBUTES_H_
+#define LIBBRILLO_INSTALL_ATTRIBUTES_LIBINSTALLATTRIBUTES_H_
+
+#include <map>
+#include <string>
+
+#include <base/files/file_path.h>
+#include <brillo/brillo_export.h>
+
+// Simple caching reader for the (verified) install attributes, a TPM-backed
+// write once read many store.  Install attributes may be written exactly once
+// by a single, atomic write-and-lock operation encompassing zero or more
+// attributes.  Once locked, install attributes cannot be re-written unless TPM
+// is reset (eg. by powerwashing the device).
+class BRILLO_EXPORT InstallAttributesReader {
+ public:
+  static const char kAttrMode[];
+
+  // Constants for the possible device modes.
+  static const char kDeviceModeConsumer[];
+  static const char kDeviceModeEnterprise[];
+  static const char kDeviceModeEnterpriseAD[];
+  static const char kDeviceModeLegacyRetail[];
+  static const char kDeviceModeConsumerKiosk[];
+
+  InstallAttributesReader();
+  virtual ~InstallAttributesReader();
+
+  // Try to load install attributes (unless cached already) and return the
+  // attribute for |key| or an empty string in case |key| doesn't exist or in
+  // case install attributes couldn't (yet) be loaded.  The latter is expected
+  // during OOBE (install attributes haven't yet been finalized) or early in the
+  // boot sequence (install attributes haven't yet been verified).
+  const std::string& GetAttribute(const std::string& key);
+
+  // Try to load install attributes (unless cached already) and return whether
+  // they have yet been written-and-locked.
+  bool IsLocked();
+
+ protected:
+  // Attributes cache.
+  std::map<std::string, std::string> attributes_;
+
+  // Path to the *verified* install attributes file on disk.
+  base::FilePath install_attributes_path_;
+
+  // Whether install attributes have been read successfully.  Reading a file
+  // containing an empty attributes proto indicates consumer mode and counts as
+  // successful, too.
+  bool initialized_ = false;
+
+ private:
+  // Try to load the verified install attributes from disk.  This is expected to
+  // fail when install attributes haven't yet been finalized (OOBE) or verified
+  // (early in the boot sequence).
+  void TryToLoad();
+
+  // Empty string to return on error.
+  std::string empty_string_;
+};
+
+#endif  // LIBBRILLO_INSTALL_ATTRIBUTES_LIBINSTALLATTRIBUTES_H_
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/device_policy.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/device_policy.h
new file mode 100644
index 0000000..8746d8a
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/device_policy.h
@@ -0,0 +1,315 @@
+// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef LIBBRILLO_POLICY_DEVICE_POLICY_H_
+#define LIBBRILLO_POLICY_DEVICE_POLICY_H_
+
+#include <stdint.h>
+
+#include <optional>
+#include <set>
+#include <string>
+#include <utility>
+#include <vector>
+
+#include <base/time/time.h>
+#include <base/version.h>
+
+#pragma GCC visibility push(default)
+
+namespace policy {
+
+// This class holds device settings that are to be enforced across all users.
+// It is also responsible for loading the policy blob from disk and verifying
+// the signature against the owner's key.
+//
+// This class defines the interface for querying device policy on ChromeOS.
+// The implementation is hidden in DevicePolicyImpl to prevent protobuf
+// definition from leaking into the libraries using this interface.
+// TODO(b:184745765) Refactor the Getters return bool type and pointer style
+class DevicePolicy {
+ public:
+  // Identifiers of a USB device or device family.
+  struct UsbDeviceId {
+    // USB Vendor Identifier (aka idVendor).
+    uint16_t vendor_id;
+
+    // USB Product Identifier (aka idProduct).
+    uint16_t product_id;
+  };
+
+  // Time interval represented by two |day_of_week| and |time| pairs. The start
+  // of the interval is inclusive and the end is exclusive. The time represented
+  // by those pairs will be interpreted to be in the local timezone. Because of
+  // this, there exists the possibility of intervals being repeated or skipped
+  // in a day with daylight savings transitions, this is expected behavior.
+  struct WeeklyTimeInterval {
+    // Value is from 1 to 7 (1 = Monday, 2 = Tuesday, etc.). All values outside
+    // this range are invalid and will be discarded.
+    int start_day_of_week;
+    // Time since the start of the day. This value will be interpreted to be in
+    // the system's current timezone when used for range checking.
+    base::TimeDelta start_time;
+    int end_day_of_week;
+    base::TimeDelta end_time;
+  };
+
+  // Identifies a <day, percentage> pair in a staging schedule.
+  struct DayPercentagePair {
+    bool operator==(const DayPercentagePair& other) const {
+      return days == other.days && percentage == other.percentage;
+    }
+    int days;
+    int percentage;
+  };
+
+  // Device Market Segment enum which is translated from MarketSegment in
+  // components/policy/proto/device_management_backend.proto.
+  enum class DeviceMarketSegment {
+    kUnknown = 0,
+    kEducation,
+    kEnterprise,
+  };
+
+  DevicePolicy();
+  DevicePolicy(const DevicePolicy&) = delete;
+  DevicePolicy& operator=(const DevicePolicy&) = delete;
+
+  virtual ~DevicePolicy();
+
+  // Load device policy off of disk into |policy_|.
+  // Returns true unless there is a policy on disk and loading it fails.
+  virtual bool LoadPolicy() = 0;
+
+  // Returns true if OOBE has been completed and if the device has been enrolled
+  // as an enterprise or enterpriseAD device.
+  virtual bool IsEnterpriseEnrolled() const = 0;
+
+  // Writes the value of the DevicePolicyRefreshRate policy in |rate|. Returns
+  // true on success.
+  virtual bool GetPolicyRefreshRate(int* rate) const = 0;
+
+  // Writes the value of the GuestModeEnabled policy in |guest_mode_enabled|.
+  // Returns true on success.
+  virtual bool GetGuestModeEnabled(bool* guest_mode_enabled) const = 0;
+
+  // Writes the value of the CameraEnabled policy in |camera_enabled|. Returns
+  // true on success.
+  virtual bool GetCameraEnabled(bool* camera_enabled) const = 0;
+
+  // Writes the value of the ShowUserNamesOnSignIn policy in |show_user_names|.
+  // Returns true on success.
+  virtual bool GetShowUserNames(bool* show_user_names) const = 0;
+
+  // Writes the value of the DataRoamingEnabled policy in |data_roaming_enabled|
+  // Returns true on success.
+  virtual bool GetDataRoamingEnabled(bool* data_roaming_enabled) const = 0;
+
+  // Writes the value of the AllowNewUsers policy in |allow_new_users|. Returns
+  // true on success.
+  virtual bool GetAllowNewUsers(bool* allow_new_users) const = 0;
+
+  // Writes the value of MetricEnabled policy in |metrics_enabled|. Returns true
+  // on success.
+  virtual bool GetMetricsEnabled(bool* metrics_enabled) const = 0;
+
+  // Writes the value of ReportVersionInfo policy in |report_version_info|.
+  // Returns true on success.
+  virtual bool GetReportVersionInfo(bool* report_version_info) const = 0;
+
+  // Writes the value of ReportActivityTimes policy in |report_activity_times|.
+  // Returns true on success.
+  virtual bool GetReportActivityTimes(bool* report_activity_times) const = 0;
+
+  // Writes the value of ReportBootMode policy in |report_boot_mode|. Returns
+  // true on success.
+  virtual bool GetReportBootMode(bool* report_boot_mode) const = 0;
+
+  // Writes the value of the EphemeralUsersEnabled policy in
+  // |ephemeral_users_enabled|. Returns true on success.
+  virtual bool GetEphemeralUsersEnabled(
+      bool* ephemeral_users_enabled) const = 0;
+
+  // Writes the value of the release channel policy in |release_channel|.
+  // Returns true on success.
+  virtual bool GetReleaseChannel(std::string* release_channel) const = 0;
+
+  // Writes the value of the release_channel_delegated policy in
+  // |release_channel_delegated|. Returns true on success.
+  virtual bool GetReleaseChannelDelegated(
+      bool* release_channel_delegated) const = 0;
+
+  // Writes the value of the release LTS tag policy in |lts_tag|.
+  // Returns true on success.
+  virtual bool GetReleaseLtsTag(std::string* lts_tag) const = 0;
+
+  // Writes the value of the update_disabled policy in |update_disabled|.
+  // Returns true on success.
+  virtual bool GetUpdateDisabled(bool* update_disabled) const = 0;
+
+  // Writes the value of the target_version_prefix policy in
+  // |target_version_prefix|. Returns true on success.
+  virtual bool GetTargetVersionPrefix(
+      std::string* target_version_prefix) const = 0;
+
+  // Writes the value of the target_version_selector policy in
+  // |target_version_selector|. Returns true on success.
+  virtual bool GetTargetVersionSelector(
+      std::string* target_version_selector) const = 0;
+
+  // Writes the value of the rollback_to_target_version policy in
+  // |rollback_to_target_version|. |rollback_to_target_version| will be one of
+  // the values in AutoUpdateSettingsProto's RollbackToTargetVersion enum.
+  // Returns true on success.
+  virtual bool GetRollbackToTargetVersion(
+      int* rollback_to_target_version) const = 0;
+
+  // Writes the value of the rollback_allowed_milestones policy in
+  // |rollback_allowed_milestones|. Returns true on success.
+  virtual bool GetRollbackAllowedMilestones(
+      int* rollback_allowed_milestones) const = 0;
+
+  // Writes the value of the scatter_factor_in_seconds policy in
+  // |scatter_factor_in_seconds|. Returns true on success.
+  virtual bool GetScatterFactorInSeconds(
+      int64_t* scatter_factor_in_seconds) const = 0;
+
+  // Writes the connection types on which updates are allowed to
+  // |connection_types|. The identifiers returned are intended to be consistent
+  // with what the connection manager users: ethernet, wifi, wimax, bluetooth,
+  // cellular.
+  virtual bool GetAllowedConnectionTypesForUpdate(
+      std::set<std::string>* connection_types) const = 0;
+
+  // Writes the value of the OpenNetworkConfiguration policy in
+  // |open_network_configuration|. Returns true on success.
+  virtual bool GetOpenNetworkConfiguration(
+      std::string* open_network_configuration) const = 0;
+
+  // Writes the name of the device owner in |owner|. For enterprise enrolled
+  // devices, this will be an empty string.
+  // Returns true on success.
+  virtual bool GetOwner(std::string* owner) const = 0;
+
+  // Write the value of http_downloads_enabled policy in
+  // |http_downloads_enabled|. Returns true on success.
+  virtual bool GetHttpDownloadsEnabled(bool* http_downloads_enabled) const = 0;
+
+  // Writes the value of au_p2p_enabled policy in
+  // |au_p2p_enabled|. Returns true on success.
+  virtual bool GetAuP2PEnabled(bool* au_p2p_enabled) const = 0;
+
+  // Writes the value of allow_kiosk_app_control_chrome_version policy in
+  // |allow_kiosk_app_control_chrome_version|. Returns true on success.
+  virtual bool GetAllowKioskAppControlChromeVersion(
+      bool* allow_kiosk_app_control_chrome_version) const = 0;
+
+  // Writes the value of the UsbDetachableWhitelist policy in |usb_whitelist|.
+  // Returns true on success.
+  virtual bool GetUsbDetachableWhitelist(
+      std::vector<UsbDeviceId>* usb_whitelist) const = 0;
+
+  // Writes the value of the kiosk app id into |app_id_out|.
+  // Only succeeds if the device is in auto-launched kiosk mode.
+  virtual bool GetAutoLaunchedKioskAppId(std::string* app_id_out) const = 0;
+
+  // Returns true if the policy data indicates that the device is enterprise
+  // managed. Note that this potentially could be faked by an exploit, therefore
+  // InstallAttributesReader must be used when tamper-proof evidence of the
+  // management state is required.
+  virtual bool IsEnterpriseManaged() const = 0;
+
+  // Writes the value of the DeviceSecondFactorAuthentication policy in
+  // |mode_out|. |mode_out| is one of the values from
+  // DeviceSecondFactorAuthenticationProto's U2fMode enum (e.g. DISABLED,
+  // U2F or U2F_EXTENDED). Returns true on success.
+  virtual bool GetSecondFactorAuthenticationMode(int* mode_out) const = 0;
+
+  // Returns the value of the DeviceRunAutomaticCleanupOnLogin policy. On
+  // error or if the policy is not set, returns an empty value.
+  virtual std::optional<bool> GetRunAutomaticCleanupOnLogin() const = 0;
+
+  // Writes the valid time intervals to |intervals_out|. These
+  // intervals are taken from the disallowed time intervals field in the
+  // AutoUpdateSettingsProto. Returns true if the intervals in the proto are
+  // valid.
+  virtual bool GetDisallowedTimeIntervals(
+      std::vector<WeeklyTimeInterval>* intervals_out) const = 0;
+
+  // Writes the value of the DeviceUpdateStagingSchedule policy to
+  // |staging_schedule_out|. Returns true on success.
+  // The schedule is a list of <days, percentage> pairs. The percentages are
+  // expected to be mononically increasing in the range of [1, 100]. Similarly,
+  // days are expected to be monotonically increasing in the range [1, 28]. Each
+  // pair describes the |percentage| of the fleet that is expected to receive an
+  // update after |days| days after an update was discovered. e.g. [<4, 30>, <8,
+  // 100>] means that 30% of devices should be updated in the first 4 days, and
+  // then 100% should be updated after 8 days.
+  virtual bool GetDeviceUpdateStagingSchedule(
+      std::vector<DayPercentagePair>* staging_schedule_out) const = 0;
+
+  // Writes the value of the DeviceQuickFixBuildToken to
+  // |device_quick_fix_build_token|.
+  // Returns true if it has been written, or false if the policy was not set.
+  virtual bool GetDeviceQuickFixBuildToken(
+      std::string* device_quick_fix_build_token) const = 0;
+
+  // Writes the value of the Directory API ID to |directory_api_id_out|.
+  // Returns true on success, false if the ID is not available (eg if the device
+  // is not enrolled).
+  virtual bool GetDeviceDirectoryApiId(
+      std::string* directory_api_id_out) const = 0;
+
+  // Writes the value of the Customer ID to |customer_id_out|.
+  // Returns true on success, false if the ID is not available (eg if the device
+  // is not enrolled).
+  virtual bool GetCustomerId(std::string* customer_id_out) const = 0;
+
+  // Writes the value of ChannelDowngradeBehavior policy into
+  // |channel_downgrade_behavior_out|. |channel_downgrade_behavior_out| will be
+  // one of the values in AutoUpdateSettingsProto's ChannelDowngradeBehavior
+  // enum. Returns true on success.
+  virtual bool GetChannelDowngradeBehavior(
+      int* channel_downgrade_behavior_out) const = 0;
+
+  // Writes the value of Chrome OS minimum required version. This value
+  // is taken from the list of versions of device_minimum_version field of the
+  // ChromeDeviceSettingsProto. The value is the highest version listed in
+  // policy. Returns true if the policy is a valid JSON dictionary containing at
+  // least one valid version entry. Returns false if the policy is not set or no
+  // version can be parsed from it.
+  virtual bool GetHighestDeviceMinimumVersion(
+      base::Version* versions_out) const = 0;
+
+  // Write the value of the DeviceMarketSegment policy in
+  // |device_market_segment|. Returns true on success. If the proto value is
+  // not set, then return false.
+  // Translated value from MarketSegment in device_management_backend.proto
+  virtual bool GetDeviceMarketSegment(
+      DeviceMarketSegment* device_market_segment) const = 0;
+
+  // Write the value of the DeviceKeylockerForStorageEncryptionEnabled policy in
+  // |keylocker_enabled|. Returns true on success.
+  virtual bool GetDeviceKeylockerForStorageEncryptionEnabled(
+      bool* keylocker_enabled) const = 0;
+
+  // Writes the value of DevicePacketCaptureAllowed policy in |allowed|. Returns
+  // true if the policy was set and a value was retrieved for it, or false if
+  // the policy was not set. |allowed| is modified only when the function
+  // returns true.
+  virtual bool GetDeviceDebugPacketCaptureAllowed(bool* allowed) const = 0;
+
+  // Returns the value of the ReportDeviceSecurityStatus policy. On
+  // error or if the policy is not set, returns an empty value.
+  virtual std::optional<bool> GetReportDeviceSecurityStatus() const = 0;
+
+ private:
+  // Verifies that the policy signature is correct.
+  virtual bool VerifyPolicySignature() = 0;
+};
+}  // namespace policy
+
+#pragma GCC visibility pop
+
+#endif  // LIBBRILLO_POLICY_DEVICE_POLICY_H_
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/device_policy_impl.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/device_policy_impl.h
new file mode 100644
index 0000000..c0f9ea3
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/device_policy_impl.h
@@ -0,0 +1,167 @@
+// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef LIBBRILLO_POLICY_DEVICE_POLICY_IMPL_H_
+#define LIBBRILLO_POLICY_DEVICE_POLICY_IMPL_H_
+
+#include <memory>
+#include <optional>
+#include <set>
+#include <string>
+#include <utility>
+#include <vector>
+
+#include <base/files/file_path.h>
+
+#include "bindings/chrome_device_policy.pb.h"
+#include "bindings/device_management_backend.pb.h"
+#include "install_attributes/libinstallattributes.h"
+#include "policy/device_policy.h"
+
+#pragma GCC visibility push(default)
+
+namespace policy {
+
+// This class holds device settings that are to be enforced across all users.
+//
+// Before serving it to the users this class verifies that the policy is valid
+// against its signature and the owner's key and also that the policy files
+// are owned by root.
+class DevicePolicyImpl : public DevicePolicy {
+ public:
+  DevicePolicyImpl();
+  DevicePolicyImpl(const DevicePolicyImpl&) = delete;
+  DevicePolicyImpl& operator=(const DevicePolicyImpl&) = delete;
+
+  ~DevicePolicyImpl() override;
+
+  const enterprise_management::ChromeDeviceSettingsProto& get_device_policy()
+      const {
+    return device_policy_;
+  }
+
+  // DevicePolicy overrides:
+  bool LoadPolicy() override;
+  bool IsEnterpriseEnrolled() const override;
+  bool GetPolicyRefreshRate(int* rate) const override;
+  bool GetGuestModeEnabled(bool* guest_mode_enabled) const override;
+  bool GetCameraEnabled(bool* camera_enabled) const override;
+  bool GetShowUserNames(bool* show_user_names) const override;
+  bool GetDataRoamingEnabled(bool* data_roaming_enabled) const override;
+  bool GetAllowNewUsers(bool* allow_new_users) const override;
+  bool GetMetricsEnabled(bool* metrics_enabled) const override;
+  bool GetReportVersionInfo(bool* report_version_info) const override;
+  bool GetReportActivityTimes(bool* report_activity_times) const override;
+  bool GetReportBootMode(bool* report_boot_mode) const override;
+  bool GetEphemeralUsersEnabled(bool* ephemeral_users_enabled) const override;
+  bool GetReleaseChannel(std::string* release_channel) const override;
+  bool GetReleaseChannelDelegated(
+      bool* release_channel_delegated) const override;
+  bool GetReleaseLtsTag(std::string* lts_tag) const override;
+  bool GetUpdateDisabled(bool* update_disabled) const override;
+  bool GetTargetVersionPrefix(
+      std::string* target_version_prefix) const override;
+  bool GetTargetVersionSelector(
+      std::string* target_version_selector) const override;
+  bool GetRollbackToTargetVersion(
+      int* rollback_to_target_version) const override;
+  bool GetRollbackAllowedMilestones(
+      int* rollback_allowed_milestones) const override;
+  bool GetScatterFactorInSeconds(
+      int64_t* scatter_factor_in_seconds) const override;
+  bool GetAllowedConnectionTypesForUpdate(
+      std::set<std::string>* connection_types) const override;
+  bool GetOpenNetworkConfiguration(
+      std::string* open_network_configuration) const override;
+  bool GetOwner(std::string* owner) const override;
+  bool GetHttpDownloadsEnabled(bool* http_downloads_enabled) const override;
+  bool GetAuP2PEnabled(bool* au_p2p_enabled) const override;
+  bool GetAllowKioskAppControlChromeVersion(
+      bool* allow_kiosk_app_control_chrome_version) const override;
+  bool GetUsbDetachableWhitelist(
+      std::vector<UsbDeviceId>* usb_whitelist) const override;
+  bool GetAutoLaunchedKioskAppId(std::string* app_id_out) const override;
+  bool IsEnterpriseManaged() const override;
+  bool GetSecondFactorAuthenticationMode(int* mode_out) const override;
+  std::optional<bool> GetRunAutomaticCleanupOnLogin() const override;
+  bool GetDisallowedTimeIntervals(
+      std::vector<WeeklyTimeInterval>* intervals_out) const override;
+  bool GetDeviceUpdateStagingSchedule(
+      std::vector<DayPercentagePair>* staging_schedule_out) const override;
+  bool GetDeviceQuickFixBuildToken(
+      std::string* device_quick_fix_build_token) const override;
+  bool GetDeviceDirectoryApiId(
+      std::string* device_directory_api_out) const override;
+  bool GetCustomerId(std::string* customer_id_out) const override;
+  bool GetChannelDowngradeBehavior(
+      int* channel_downgrade_behavior_out) const override;
+  bool GetHighestDeviceMinimumVersion(
+      base::Version* versions_out) const override;
+  bool GetDeviceMarketSegment(
+      DeviceMarketSegment* device_market_segment) const override;
+  bool GetDeviceDebugPacketCaptureAllowed(bool* allowed) const override;
+  bool GetDeviceKeylockerForStorageEncryptionEnabled(
+      bool* keylocker_enabled) const override;
+  std::optional<bool> GetReportDeviceSecurityStatus() const override;
+
+  // Methods that can be used only for testing.
+  void set_policy_data_for_testing(
+      const enterprise_management::PolicyData& policy_data) {
+    policy_data_ = policy_data;
+  }
+  void set_verify_root_ownership_for_testing(bool verify_root_ownership) {
+    verify_root_ownership_ = verify_root_ownership;
+  }
+  void set_install_attributes_for_testing(
+      std::unique_ptr<InstallAttributesReader> install_attributes_reader) {
+    install_attributes_reader_ = std::move(install_attributes_reader);
+  }
+  void set_policy_for_testing(
+      const enterprise_management::ChromeDeviceSettingsProto& device_policy) {
+    device_policy_ = device_policy;
+  }
+  void set_policy_path_for_testing(const base::FilePath& policy_path) {
+    policy_path_ = policy_path;
+  }
+  void set_key_file_path_for_testing(const base::FilePath& keyfile_path) {
+    keyfile_path_ = keyfile_path;
+  }
+  void set_verify_policy_for_testing(bool value) { verify_policy_ = value; }
+
+ private:
+  // Verifies that both the policy file and the signature file exist and are
+  // owned by the root. Does nothing when |verify_root_ownership_| is set to
+  // false.
+  bool VerifyPolicyFile(const base::FilePath& policy_path);
+
+  // Verifies that the policy signature is correct.
+  bool VerifyPolicySignature() override;
+
+  // Loads policy off of disk from |policy_path| into |policy_|. Returns true if
+  // the |policy_path| is present on disk and loading it is successful.
+  bool LoadPolicyFromFile(const base::FilePath& policy_path);
+
+  // Path of the default policy file, e.g. /path/to/policy. In order to make
+  // device policy more resilient against broken files, this class also tries to
+  // load indexed paths /path/to/policy.1, /path/to/policy.2 etc., see
+  // resilient_policy_utils.h.
+  base::FilePath policy_path_;
+  base::FilePath keyfile_path_;
+  std::unique_ptr<InstallAttributesReader> install_attributes_reader_;
+  enterprise_management::PolicyFetchResponse policy_;
+  enterprise_management::PolicyData policy_data_;
+  enterprise_management::ChromeDeviceSettingsProto device_policy_;
+
+  // If true, verify that policy files are owned by root. True in production
+  // but can be set to false by tests.
+  bool verify_root_ownership_ = true;
+  // If false, all types of verification are disabled. True in production
+  // but can be set to false by tests.
+  bool verify_policy_ = true;
+};
+}  // namespace policy
+
+#pragma GCC visibility pop
+
+#endif  // LIBBRILLO_POLICY_DEVICE_POLICY_IMPL_H_
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/libpolicy.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/libpolicy.h
new file mode 100644
index 0000000..b852cc4
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/libpolicy.h
@@ -0,0 +1,65 @@
+// Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef LIBBRILLO_POLICY_LIBPOLICY_H_
+#define LIBBRILLO_POLICY_LIBPOLICY_H_
+
+#include <memory>
+#include <string>
+
+#include "install_attributes/libinstallattributes.h"
+
+#pragma GCC visibility push(default)
+
+namespace policy {
+
+class DevicePolicy;
+
+// This class holds device settings that are to be enforced across all users.
+//
+// If there is a policy on disk at creation time, we will load it at verify
+// its signature.
+class PolicyProvider {
+ public:
+  // The default constructor does not load policy.
+  PolicyProvider();
+  virtual ~PolicyProvider();
+
+  // Constructor for tests only!
+  explicit PolicyProvider(std::unique_ptr<DevicePolicy> device_policy);
+  PolicyProvider(const PolicyProvider&) = delete;
+  PolicyProvider& operator=(const PolicyProvider&) = delete;
+
+  // This function will ensure the freshness of the contents that the getters
+  // are delivering. Normally contents are cached to prevent unnecessary load.
+  virtual bool Reload();
+
+  virtual bool device_policy_is_loaded() const;
+
+  // Returns a value from the device policy cache.
+  virtual const DevicePolicy& GetDevicePolicy() const;
+
+  // Returns true if the device is not an enterprise enrolled device, so it
+  // won't have device policy before the next powerwash. Returns false if device
+  // is still in OOBE (so device mode is not determined yet).
+  virtual bool IsConsumerDevice() const;
+
+  // Returns true if the device is enterprise enrolled device. Returns false if
+  // the device is consumer device or is in OOBE.
+  virtual bool IsEnterpriseEnrolledDevice() const;
+
+  void SetDevicePolicyForTesting(std::unique_ptr<DevicePolicy> device_policy);
+  void SetInstallAttributesReaderForTesting(
+      std::unique_ptr<InstallAttributesReader> install_attributes_reader);
+
+ private:
+  std::unique_ptr<DevicePolicy> device_policy_;
+  bool device_policy_is_loaded_ = false;
+  std::unique_ptr<InstallAttributesReader> install_attributes_reader_;
+};
+}  // namespace policy
+
+#pragma GCC visibility pop
+
+#endif  // LIBBRILLO_POLICY_LIBPOLICY_H_
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/mock_device_policy.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/mock_device_policy.h
new file mode 100644
index 0000000..c89fe5d
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/mock_device_policy.h
@@ -0,0 +1,155 @@
+// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef LIBBRILLO_POLICY_MOCK_DEVICE_POLICY_H_
+#define LIBBRILLO_POLICY_MOCK_DEVICE_POLICY_H_
+
+#include <optional>
+#include <set>
+#include <string>
+#include <utility>
+#include <vector>
+
+#include <gmock/gmock.h>
+
+#include "policy/device_policy.h"
+
+#pragma GCC visibility push(default)
+
+namespace policy {
+
+// This is a generic mock class for the DevicePolicy that can be used by other
+// subsystems for tests. It allows to mock out the reading of a real policy
+// file and to simulate different policy values.
+// The test that needs policies would then do something like this :
+// // Prepare the action that would return a predefined policy value:
+// ACTION_P(SetMetricsPolicy, enabled) {
+//   *arg0 = enabled;
+//   return true;
+// }
+// ...
+// // Initialize the Mock class
+// policy::MockDevicePolicy* device_policy = new policy::MockDevicePolicy();
+// // We should expect calls to LoadPolicy almost always and return true.
+// EXPECT_CALL(*device_policy_, LoadPolicy())
+//     .Times(AnyNumber())
+//     .WillRepeatedly(Return(true));
+// // This example needs to simulate the Metrics Enabled policy being set.
+// EXPECT_CALL(*device_policy_, GetMetricsEnabled(_))
+//     .Times(AnyNumber())
+//     .WillRepeatedly(SetMetricsPolicy(true));
+// policy::PolicyProvider provider(device_policy);
+// ...
+// // In a test that needs other value of that policy we can do that:
+// EXPECT_CALL(*device_policy_, GetMetricsEnabled(_))
+//     .WillOnce(SetMetricsPolicy(false));
+//
+// See metrics_library_test.cc for example.
+class MockDevicePolicy : public DevicePolicy {
+ public:
+  MockDevicePolicy() {
+    ON_CALL(*this, LoadPolicy()).WillByDefault(testing::Return(true));
+  }
+  ~MockDevicePolicy() override = default;
+
+  MOCK_METHOD(bool, LoadPolicy, (), (override));
+  MOCK_METHOD(bool, IsEnterpriseEnrolled, (), (const, override));
+
+  MOCK_METHOD(bool, GetPolicyRefreshRate, (int*), (const, override));
+  MOCK_METHOD(bool, GetGuestModeEnabled, (bool*), (const, override));
+  MOCK_METHOD(bool, GetCameraEnabled, (bool*), (const, override));
+  MOCK_METHOD(bool, GetShowUserNames, (bool*), (const, override));
+  MOCK_METHOD(bool, GetDataRoamingEnabled, (bool*), (const, override));
+  MOCK_METHOD(bool, GetAllowNewUsers, (bool*), (const, override));
+  MOCK_METHOD(bool, GetMetricsEnabled, (bool*), (const, override));
+  MOCK_METHOD(bool, GetReportVersionInfo, (bool*), (const, override));
+  MOCK_METHOD(bool, GetReportActivityTimes, (bool*), (const, override));
+  MOCK_METHOD(bool, GetReportBootMode, (bool*), (const, override));
+  MOCK_METHOD(bool, GetEphemeralUsersEnabled, (bool*), (const, override));
+  MOCK_METHOD(bool, GetReleaseChannel, (std::string*), (const, override));
+  MOCK_METHOD(bool, GetReleaseChannelDelegated, (bool*), (const, override));
+  MOCK_METHOD(bool, GetReleaseLtsTag, (std::string*), (const, override));
+  MOCK_METHOD(bool, GetUpdateDisabled, (bool*), (const, override));
+  MOCK_METHOD(bool, GetTargetVersionPrefix, (std::string*), (const, override));
+  MOCK_METHOD(bool,
+              GetTargetVersionSelector,
+              (std::string*),
+              (const, override));
+  MOCK_METHOD(bool, GetRollbackToTargetVersion, (int*), (const, override));
+  MOCK_METHOD(bool, GetRollbackAllowedMilestones, (int*), (const, override));
+  MOCK_METHOD(bool, GetScatterFactorInSeconds, (int64_t*), (const, override));
+  MOCK_METHOD(bool,
+              GetAllowedConnectionTypesForUpdate,
+              (std::set<std::string>*),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetOpenNetworkConfiguration,
+              (std::string*),
+              (const, override));
+  MOCK_METHOD(bool, GetOwner, (std::string*), (const, override));
+  MOCK_METHOD(bool, GetHttpDownloadsEnabled, (bool*), (const, override));
+  MOCK_METHOD(bool, GetAuP2PEnabled, (bool*), (const, override));
+  MOCK_METHOD(bool,
+              GetAllowKioskAppControlChromeVersion,
+              (bool*),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetUsbDetachableWhitelist,
+              (std::vector<DevicePolicy::UsbDeviceId>*),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetAutoLaunchedKioskAppId,
+              (std::string*),
+              (const, override));
+  MOCK_METHOD(bool, IsEnterpriseManaged, (), (const, override));
+  MOCK_METHOD(bool,
+              GetSecondFactorAuthenticationMode,
+              (int*),
+              (const, override));
+  MOCK_METHOD(std::optional<bool>,
+              GetRunAutomaticCleanupOnLogin,
+              (),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetDisallowedTimeIntervals,
+              (std::vector<WeeklyTimeInterval>*),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetDeviceUpdateStagingSchedule,
+              (std::vector<DayPercentagePair>*),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetDeviceQuickFixBuildToken,
+              (std::string*),
+              (const, override));
+  MOCK_METHOD(bool, GetDeviceDirectoryApiId, (std::string*), (const, override));
+  MOCK_METHOD(bool, GetCustomerId, (std::string*), (const, override));
+  MOCK_METHOD(bool, VerifyPolicySignature, (), (override));
+  MOCK_METHOD(bool, GetChannelDowngradeBehavior, (int*), (const, override));
+  MOCK_METHOD(bool,
+              GetHighestDeviceMinimumVersion,
+              (base::Version*),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetDeviceMarketSegment,
+              (DeviceMarketSegment*),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetDeviceDebugPacketCaptureAllowed,
+              (bool*),
+              (const, override));
+  MOCK_METHOD(bool,
+              GetDeviceKeylockerForStorageEncryptionEnabled,
+              (bool*),
+              (const, override));
+  MOCK_METHOD(std::optional<bool>,
+              GetReportDeviceSecurityStatus,
+              (),
+              (const, override));
+};
+}  // namespace policy
+
+#pragma GCC visibility pop
+
+#endif  // LIBBRILLO_POLICY_MOCK_DEVICE_POLICY_H_
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/mock_libpolicy.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/mock_libpolicy.h
new file mode 100644
index 0000000..f8ecfc6
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/mock_libpolicy.h
@@ -0,0 +1,36 @@
+// Copyright 2014 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef LIBBRILLO_POLICY_MOCK_LIBPOLICY_H_
+#define LIBBRILLO_POLICY_MOCK_LIBPOLICY_H_
+
+#include <gmock/gmock.h>
+#include <set>
+
+#include "policy/libpolicy.h"
+
+#pragma GCC visibility push(default)
+
+namespace policy {
+
+// This is a generic mock of the PolicyProvider class.
+class MockPolicyProvider : public PolicyProvider {
+ public:
+  MockPolicyProvider() = default;
+  MockPolicyProvider(const MockPolicyProvider&) = delete;
+  MockPolicyProvider& operator=(const MockPolicyProvider&) = delete;
+
+  ~MockPolicyProvider() override = default;
+
+  MOCK_METHOD(bool, Reload, (), (override));
+  MOCK_METHOD(bool, device_policy_is_loaded, (), (const, override));
+  MOCK_METHOD(const DevicePolicy&, GetDevicePolicy, (), (const, override));
+  MOCK_METHOD(bool, IsConsumerDevice, (), (const, override));
+};
+
+}  // namespace policy
+
+#pragma GCC visibility pop
+
+#endif  // LIBBRILLO_POLICY_MOCK_LIBPOLICY_H_
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/policy_util.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/policy_util.h
new file mode 100644
index 0000000..2268862
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/policy_util.h
@@ -0,0 +1,38 @@
+// Copyright 2017 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef LIBBRILLO_POLICY_POLICY_UTIL_H_
+#define LIBBRILLO_POLICY_POLICY_UTIL_H_
+
+#include <string>
+
+#include <base/files/file_path.h>
+#include <brillo/brillo_export.h>
+
+#include "bindings/device_management_backend.pb.h"
+
+namespace policy {
+
+// The detailed information of the result from loading the policy data.
+enum class BRILLO_EXPORT LoadPolicyResult {
+  kSuccess = 0,
+  kFileNotFound = 1,
+  kFailedToReadFile = 2,
+  kEmptyFile = 3,
+  kInvalidPolicyData = 4
+};
+
+// Reads and parses the policy data from |policy_path|. Returns the details
+// in LoadPolicyResult. In case response is |kSuccess|, |policy_data_str_out|
+// contains the raw data from the file, while |policy_out| contains the parsed
+// policy data. Otherwise the contents of |policy_data_str_out| and |policy_out|
+// is undefined.
+BRILLO_EXPORT LoadPolicyResult
+LoadPolicyFromPath(const base::FilePath& policy_path,
+                   std::string* policy_data_str_out,
+                   enterprise_management::PolicyFetchResponse* policy_out);
+
+}  // namespace policy
+
+#endif  // LIBBRILLO_POLICY_POLICY_UTIL_H_
diff --git a/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/resilient_policy_util.h b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/resilient_policy_util.h
new file mode 100644
index 0000000..72fa7cf
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/libbrillo/out/Default/gen/include/policy/resilient_policy_util.h
@@ -0,0 +1,39 @@
+// Copyright 2017 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef LIBBRILLO_POLICY_RESILIENT_POLICY_UTIL_H_
+#define LIBBRILLO_POLICY_RESILIENT_POLICY_UTIL_H_
+
+#include <map>
+#include <string>
+
+#include <base/files/file_path.h>
+#include <brillo/brillo_export.h>
+
+namespace policy {
+
+// Returns a map from policy file index to absolute path. The default policy
+// file is included at index 0 if present (despite not having an index in its
+// filename).
+BRILLO_EXPORT std::map<int, base::FilePath> GetSortedResilientPolicyFilePaths(
+    const base::FilePath& default_policy_path);
+
+// Returns the path to policy file corresponding to |index| value, based on
+// the path of the default policy given by |default_policy_path|. Doesn't check
+// the existence of the file on disk.
+BRILLO_EXPORT base::FilePath GetResilientPolicyFilePathForIndex(
+    const base::FilePath& default_policy_path, int index);
+
+// Returns whether the |policy_path| file is a resilient file based on the name
+// of the file, assuming the |default_policy_path| is the path of the default
+// policy file. If successful, the |index_out| contains the index of the file as
+// deducted from the name. No parsing of file contents is done here.
+BRILLO_EXPORT bool ParseResilientPolicyFilePath(
+    const base::FilePath& policy_path,
+    const base::FilePath& default_policy_path,
+    int* index_out);
+
+}  // namespace policy
+
+#endif  // LIBBRILLO_POLICY_RESILIENT_POLICY_UTIL_H_
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/storage.pb.cc b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/storage.pb.cc
new file mode 100644
index 0000000..6af5d72
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/storage.pb.cc
@@ -0,0 +1,808 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: storage.proto
+
+#include "storage.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_structured_5fdata_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_StructuredEventProto_structured_5fdata_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_storage_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_KeyDataProto_KeysEntry_DoNotUse_storage_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_storage_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_KeyProto_storage_2eproto;
+namespace metrics {
+namespace structured {
+class KeyProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<KeyProto> _instance;
+} _KeyProto_default_instance_;
+class KeyDataProto_KeysEntry_DoNotUseDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<KeyDataProto_KeysEntry_DoNotUse> _instance;
+} _KeyDataProto_KeysEntry_DoNotUse_default_instance_;
+class KeyDataProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<KeyDataProto> _instance;
+} _KeyDataProto_default_instance_;
+class EventsProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<EventsProto> _instance;
+} _EventsProto_default_instance_;
+}  // namespace structured
+}  // namespace metrics
+static void InitDefaultsscc_info_EventsProto_storage_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::structured::_EventsProto_default_instance_;
+    new (ptr) ::metrics::structured::EventsProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::structured::EventsProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EventsProto_storage_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_EventsProto_storage_2eproto}, {
+      &scc_info_StructuredEventProto_structured_5fdata_2eproto.base,}};
+
+static void InitDefaultsscc_info_KeyDataProto_storage_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::structured::_KeyDataProto_default_instance_;
+    new (ptr) ::metrics::structured::KeyDataProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::structured::KeyDataProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_KeyDataProto_storage_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_KeyDataProto_storage_2eproto}, {
+      &scc_info_KeyDataProto_KeysEntry_DoNotUse_storage_2eproto.base,}};
+
+static void InitDefaultsscc_info_KeyDataProto_KeysEntry_DoNotUse_storage_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::structured::_KeyDataProto_KeysEntry_DoNotUse_default_instance_;
+    new (ptr) ::metrics::structured::KeyDataProto_KeysEntry_DoNotUse();
+  }
+  ::metrics::structured::KeyDataProto_KeysEntry_DoNotUse::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_KeyDataProto_KeysEntry_DoNotUse_storage_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_KeyDataProto_KeysEntry_DoNotUse_storage_2eproto}, {
+      &scc_info_KeyProto_storage_2eproto.base,}};
+
+static void InitDefaultsscc_info_KeyProto_storage_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::structured::_KeyProto_default_instance_;
+    new (ptr) ::metrics::structured::KeyProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::structured::KeyProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_KeyProto_storage_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_KeyProto_storage_2eproto}, {}};
+
+namespace metrics {
+namespace structured {
+
+// ===================================================================
+
+void KeyProto::InitAsDefaultInstance() {
+}
+class KeyProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<KeyProto>()._has_bits_);
+  static void set_has_key(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_last_rotation(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_rotation_period(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+KeyProto::KeyProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.structured.KeyProto)
+}
+KeyProto::KeyProto(const KeyProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_key()) {
+    key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.key_);
+  }
+  ::memcpy(&last_rotation_, &from.last_rotation_,
+    static_cast<size_t>(reinterpret_cast<char*>(&rotation_period_) -
+    reinterpret_cast<char*>(&last_rotation_)) + sizeof(rotation_period_));
+  // @@protoc_insertion_point(copy_constructor:metrics.structured.KeyProto)
+}
+
+void KeyProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_KeyProto_storage_2eproto.base);
+  key_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&last_rotation_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&rotation_period_) -
+      reinterpret_cast<char*>(&last_rotation_)) + sizeof(rotation_period_));
+}
+
+KeyProto::~KeyProto() {
+  // @@protoc_insertion_point(destructor:metrics.structured.KeyProto)
+  SharedDtor();
+}
+
+void KeyProto::SharedDtor() {
+  key_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void KeyProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const KeyProto& KeyProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_KeyProto_storage_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void KeyProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.structured.KeyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    key_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&last_rotation_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&rotation_period_) -
+        reinterpret_cast<char*>(&last_rotation_)) + sizeof(rotation_period_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* KeyProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string key = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_key();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 last_rotation = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_last_rotation(&has_bits);
+          last_rotation_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 rotation_period = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_rotation_period(&has_bits);
+          rotation_period_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* KeyProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.structured.KeyProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string key = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_key(), target);
+  }
+
+  // optional int64 last_rotation = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_last_rotation(), target);
+  }
+
+  // optional int64 rotation_period = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_rotation_period(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.structured.KeyProto)
+  return target;
+}
+
+size_t KeyProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.structured.KeyProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string key = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_key());
+    }
+
+    // optional int64 last_rotation = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_rotation());
+    }
+
+    // optional int64 rotation_period = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_rotation_period());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void KeyProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const KeyProto*>(
+      &from));
+}
+
+void KeyProto::MergeFrom(const KeyProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.structured.KeyProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      key_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.key_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      last_rotation_ = from.last_rotation_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      rotation_period_ = from.rotation_period_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void KeyProto::CopyFrom(const KeyProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.structured.KeyProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool KeyProto::IsInitialized() const {
+  return true;
+}
+
+void KeyProto::InternalSwap(KeyProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  key_.Swap(&other->key_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(last_rotation_, other->last_rotation_);
+  swap(rotation_period_, other->rotation_period_);
+}
+
+std::string KeyProto::GetTypeName() const {
+  return "metrics.structured.KeyProto";
+}
+
+
+// ===================================================================
+
+KeyDataProto_KeysEntry_DoNotUse::KeyDataProto_KeysEntry_DoNotUse() {}
+KeyDataProto_KeysEntry_DoNotUse::KeyDataProto_KeysEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
+    : SuperType(arena) {}
+void KeyDataProto_KeysEntry_DoNotUse::MergeFrom(const KeyDataProto_KeysEntry_DoNotUse& other) {
+  MergeFromInternal(other);
+}
+
+// ===================================================================
+
+void KeyDataProto::InitAsDefaultInstance() {
+}
+class KeyDataProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<KeyDataProto>()._has_bits_);
+};
+
+KeyDataProto::KeyDataProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.structured.KeyDataProto)
+}
+KeyDataProto::KeyDataProto(const KeyDataProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  keys_.MergeFrom(from.keys_);
+  // @@protoc_insertion_point(copy_constructor:metrics.structured.KeyDataProto)
+}
+
+void KeyDataProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_KeyDataProto_storage_2eproto.base);
+}
+
+KeyDataProto::~KeyDataProto() {
+  // @@protoc_insertion_point(destructor:metrics.structured.KeyDataProto)
+  SharedDtor();
+}
+
+void KeyDataProto::SharedDtor() {
+}
+
+void KeyDataProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const KeyDataProto& KeyDataProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_KeyDataProto_storage_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void KeyDataProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.structured.KeyDataProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  keys_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* KeyDataProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // map<fixed64, .metrics.structured.KeyProto> keys = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(&keys_, ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* KeyDataProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.structured.KeyDataProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // map<fixed64, .metrics.structured.KeyProto> keys = 1;
+  if (!this->_internal_keys().empty()) {
+    typedef ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >::const_pointer
+        ConstPtr;
+    typedef ::PROTOBUF_NAMESPACE_ID::internal::SortItem< ::PROTOBUF_NAMESPACE_ID::uint64, ConstPtr > SortItem;
+    typedef ::PROTOBUF_NAMESPACE_ID::internal::CompareByFirstField<SortItem> Less;
+
+    if (stream->IsSerializationDeterministic() &&
+        this->_internal_keys().size() > 1) {
+      ::std::unique_ptr<SortItem[]> items(
+          new SortItem[this->_internal_keys().size()]);
+      typedef ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >::size_type size_type;
+      size_type n = 0;
+      for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >::const_iterator
+          it = this->_internal_keys().begin();
+          it != this->_internal_keys().end(); ++it, ++n) {
+        items[static_cast<ptrdiff_t>(n)] = SortItem(&*it);
+      }
+      ::std::sort(&items[0], &items[static_cast<ptrdiff_t>(n)], Less());
+      for (size_type i = 0; i < n; i++) {
+        target = KeyDataProto_KeysEntry_DoNotUse::Funcs::InternalSerialize(1, items[static_cast<ptrdiff_t>(i)].second->first, items[static_cast<ptrdiff_t>(i)].second->second, target, stream);
+      }
+    } else {
+      for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >::const_iterator
+          it = this->_internal_keys().begin();
+          it != this->_internal_keys().end(); ++it) {
+        target = KeyDataProto_KeysEntry_DoNotUse::Funcs::InternalSerialize(1, it->first, it->second, target, stream);
+      }
+    }
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.structured.KeyDataProto)
+  return target;
+}
+
+size_t KeyDataProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.structured.KeyDataProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // map<fixed64, .metrics.structured.KeyProto> keys = 1;
+  total_size += 1 *
+      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_keys_size());
+  for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >::const_iterator
+      it = this->_internal_keys().begin();
+      it != this->_internal_keys().end(); ++it) {
+    total_size += KeyDataProto_KeysEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void KeyDataProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const KeyDataProto*>(
+      &from));
+}
+
+void KeyDataProto::MergeFrom(const KeyDataProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.structured.KeyDataProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  keys_.MergeFrom(from.keys_);
+}
+
+void KeyDataProto::CopyFrom(const KeyDataProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.structured.KeyDataProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool KeyDataProto::IsInitialized() const {
+  return true;
+}
+
+void KeyDataProto::InternalSwap(KeyDataProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  keys_.Swap(&other->keys_);
+}
+
+std::string KeyDataProto::GetTypeName() const {
+  return "metrics.structured.KeyDataProto";
+}
+
+
+// ===================================================================
+
+void EventsProto::InitAsDefaultInstance() {
+}
+class EventsProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<EventsProto>()._has_bits_);
+};
+
+void EventsProto::clear_non_uma_events() {
+  non_uma_events_.Clear();
+}
+void EventsProto::clear_uma_events() {
+  uma_events_.Clear();
+}
+EventsProto::EventsProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.structured.EventsProto)
+}
+EventsProto::EventsProto(const EventsProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      non_uma_events_(from.non_uma_events_),
+      uma_events_(from.uma_events_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:metrics.structured.EventsProto)
+}
+
+void EventsProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EventsProto_storage_2eproto.base);
+}
+
+EventsProto::~EventsProto() {
+  // @@protoc_insertion_point(destructor:metrics.structured.EventsProto)
+  SharedDtor();
+}
+
+void EventsProto::SharedDtor() {
+}
+
+void EventsProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const EventsProto& EventsProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_EventsProto_storage_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void EventsProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.structured.EventsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  non_uma_events_.Clear();
+  uma_events_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* EventsProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .metrics.StructuredEventProto non_uma_events = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_non_uma_events(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.StructuredEventProto uma_events = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_uma_events(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* EventsProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.structured.EventsProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .metrics.StructuredEventProto non_uma_events = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_non_uma_events_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_non_uma_events(i), target, stream);
+  }
+
+  // repeated .metrics.StructuredEventProto uma_events = 2;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_uma_events_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(2, this->_internal_uma_events(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.structured.EventsProto)
+  return target;
+}
+
+size_t EventsProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.structured.EventsProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.StructuredEventProto non_uma_events = 1;
+  total_size += 1UL * this->_internal_non_uma_events_size();
+  for (const auto& msg : this->non_uma_events_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .metrics.StructuredEventProto uma_events = 2;
+  total_size += 1UL * this->_internal_uma_events_size();
+  for (const auto& msg : this->uma_events_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void EventsProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const EventsProto*>(
+      &from));
+}
+
+void EventsProto::MergeFrom(const EventsProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.structured.EventsProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  non_uma_events_.MergeFrom(from.non_uma_events_);
+  uma_events_.MergeFrom(from.uma_events_);
+}
+
+void EventsProto::CopyFrom(const EventsProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.structured.EventsProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool EventsProto::IsInitialized() const {
+  return true;
+}
+
+void EventsProto::InternalSwap(EventsProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  non_uma_events_.InternalSwap(&other->non_uma_events_);
+  uma_events_.InternalSwap(&other->uma_events_);
+}
+
+std::string EventsProto::GetTypeName() const {
+  return "metrics.structured.EventsProto";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace structured
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::metrics::structured::KeyProto* Arena::CreateMaybeMessage< ::metrics::structured::KeyProto >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::structured::KeyProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::structured::KeyDataProto_KeysEntry_DoNotUse* Arena::CreateMaybeMessage< ::metrics::structured::KeyDataProto_KeysEntry_DoNotUse >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::structured::KeyDataProto_KeysEntry_DoNotUse >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::structured::KeyDataProto* Arena::CreateMaybeMessage< ::metrics::structured::KeyDataProto >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::structured::KeyDataProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::structured::EventsProto* Arena::CreateMaybeMessage< ::metrics::structured::EventsProto >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::structured::EventsProto >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/storage.pb.h b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/storage.pb.h
new file mode 100644
index 0000000..3eb3a13
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/storage.pb.h
@@ -0,0 +1,818 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: storage.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_storage_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_storage_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/map.h>  // IWYU pragma: export
+#include <google/protobuf/map_entry_lite.h>
+#include <google/protobuf/map_field_lite.h>
+#include "structured_data.pb.h"
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_storage_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_storage_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[4]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace metrics {
+namespace structured {
+class EventsProto;
+class EventsProtoDefaultTypeInternal;
+extern EventsProtoDefaultTypeInternal _EventsProto_default_instance_;
+class KeyDataProto;
+class KeyDataProtoDefaultTypeInternal;
+extern KeyDataProtoDefaultTypeInternal _KeyDataProto_default_instance_;
+class KeyDataProto_KeysEntry_DoNotUse;
+class KeyDataProto_KeysEntry_DoNotUseDefaultTypeInternal;
+extern KeyDataProto_KeysEntry_DoNotUseDefaultTypeInternal _KeyDataProto_KeysEntry_DoNotUse_default_instance_;
+class KeyProto;
+class KeyProtoDefaultTypeInternal;
+extern KeyProtoDefaultTypeInternal _KeyProto_default_instance_;
+}  // namespace structured
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> ::metrics::structured::EventsProto* Arena::CreateMaybeMessage<::metrics::structured::EventsProto>(Arena*);
+template<> ::metrics::structured::KeyDataProto* Arena::CreateMaybeMessage<::metrics::structured::KeyDataProto>(Arena*);
+template<> ::metrics::structured::KeyDataProto_KeysEntry_DoNotUse* Arena::CreateMaybeMessage<::metrics::structured::KeyDataProto_KeysEntry_DoNotUse>(Arena*);
+template<> ::metrics::structured::KeyProto* Arena::CreateMaybeMessage<::metrics::structured::KeyProto>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace metrics {
+namespace structured {
+
+// ===================================================================
+
+class KeyProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.structured.KeyProto) */ {
+ public:
+  KeyProto();
+  virtual ~KeyProto();
+
+  KeyProto(const KeyProto& from);
+  KeyProto(KeyProto&& from) noexcept
+    : KeyProto() {
+    *this = ::std::move(from);
+  }
+
+  inline KeyProto& operator=(const KeyProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline KeyProto& operator=(KeyProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const KeyProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const KeyProto* internal_default_instance() {
+    return reinterpret_cast<const KeyProto*>(
+               &_KeyProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(KeyProto& a, KeyProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(KeyProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline KeyProto* New() const final {
+    return CreateMaybeMessage<KeyProto>(nullptr);
+  }
+
+  KeyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<KeyProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const KeyProto& from);
+  void MergeFrom(const KeyProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(KeyProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.structured.KeyProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kKeyFieldNumber = 1,
+    kLastRotationFieldNumber = 2,
+    kRotationPeriodFieldNumber = 3,
+  };
+  // optional string key = 1;
+  bool has_key() const;
+  private:
+  bool _internal_has_key() const;
+  public:
+  void clear_key();
+  const std::string& key() const;
+  void set_key(const std::string& value);
+  void set_key(std::string&& value);
+  void set_key(const char* value);
+  void set_key(const char* value, size_t size);
+  std::string* mutable_key();
+  std::string* release_key();
+  void set_allocated_key(std::string* key);
+  private:
+  const std::string& _internal_key() const;
+  void _internal_set_key(const std::string& value);
+  std::string* _internal_mutable_key();
+  public:
+
+  // optional int64 last_rotation = 2;
+  bool has_last_rotation() const;
+  private:
+  bool _internal_has_last_rotation() const;
+  public:
+  void clear_last_rotation();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_rotation() const;
+  void set_last_rotation(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_rotation() const;
+  void _internal_set_last_rotation(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 rotation_period = 3;
+  bool has_rotation_period() const;
+  private:
+  bool _internal_has_rotation_period() const;
+  public:
+  void clear_rotation_period();
+  ::PROTOBUF_NAMESPACE_ID::int64 rotation_period() const;
+  void set_rotation_period(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_rotation_period() const;
+  void _internal_set_rotation_period(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.structured.KeyProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr key_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_rotation_;
+  ::PROTOBUF_NAMESPACE_ID::int64 rotation_period_;
+  friend struct ::TableStruct_storage_2eproto;
+};
+// -------------------------------------------------------------------
+
+class KeyDataProto_KeysEntry_DoNotUse : public ::PROTOBUF_NAMESPACE_ID::internal::MapEntryLite<KeyDataProto_KeysEntry_DoNotUse, 
+    ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto,
+    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_FIXED64,
+    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
+    0 > {
+public:
+  typedef ::PROTOBUF_NAMESPACE_ID::internal::MapEntryLite<KeyDataProto_KeysEntry_DoNotUse, 
+    ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto,
+    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_FIXED64,
+    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
+    0 > SuperType;
+  KeyDataProto_KeysEntry_DoNotUse();
+  KeyDataProto_KeysEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
+  void MergeFrom(const KeyDataProto_KeysEntry_DoNotUse& other);
+  static const KeyDataProto_KeysEntry_DoNotUse* internal_default_instance() { return reinterpret_cast<const KeyDataProto_KeysEntry_DoNotUse*>(&_KeyDataProto_KeysEntry_DoNotUse_default_instance_); }
+  static bool ValidateKey(void*) { return true; }
+  static bool ValidateValue(void*) { return true; }
+};
+
+// -------------------------------------------------------------------
+
+class KeyDataProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.structured.KeyDataProto) */ {
+ public:
+  KeyDataProto();
+  virtual ~KeyDataProto();
+
+  KeyDataProto(const KeyDataProto& from);
+  KeyDataProto(KeyDataProto&& from) noexcept
+    : KeyDataProto() {
+    *this = ::std::move(from);
+  }
+
+  inline KeyDataProto& operator=(const KeyDataProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline KeyDataProto& operator=(KeyDataProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const KeyDataProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const KeyDataProto* internal_default_instance() {
+    return reinterpret_cast<const KeyDataProto*>(
+               &_KeyDataProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    2;
+
+  friend void swap(KeyDataProto& a, KeyDataProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(KeyDataProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline KeyDataProto* New() const final {
+    return CreateMaybeMessage<KeyDataProto>(nullptr);
+  }
+
+  KeyDataProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<KeyDataProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const KeyDataProto& from);
+  void MergeFrom(const KeyDataProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(KeyDataProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.structured.KeyDataProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kKeysFieldNumber = 1,
+  };
+  // map<fixed64, .metrics.structured.KeyProto> keys = 1;
+  int keys_size() const;
+  private:
+  int _internal_keys_size() const;
+  public:
+  void clear_keys();
+  private:
+  const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >&
+      _internal_keys() const;
+  ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >*
+      _internal_mutable_keys();
+  public:
+  const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >&
+      keys() const;
+  ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >*
+      mutable_keys();
+
+  // @@protoc_insertion_point(class_scope:metrics.structured.KeyDataProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::MapFieldLite<
+      KeyDataProto_KeysEntry_DoNotUse,
+      ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto,
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_FIXED64,
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
+      0 > keys_;
+  friend struct ::TableStruct_storage_2eproto;
+};
+// -------------------------------------------------------------------
+
+class EventsProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.structured.EventsProto) */ {
+ public:
+  EventsProto();
+  virtual ~EventsProto();
+
+  EventsProto(const EventsProto& from);
+  EventsProto(EventsProto&& from) noexcept
+    : EventsProto() {
+    *this = ::std::move(from);
+  }
+
+  inline EventsProto& operator=(const EventsProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline EventsProto& operator=(EventsProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const EventsProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const EventsProto* internal_default_instance() {
+    return reinterpret_cast<const EventsProto*>(
+               &_EventsProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    3;
+
+  friend void swap(EventsProto& a, EventsProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(EventsProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline EventsProto* New() const final {
+    return CreateMaybeMessage<EventsProto>(nullptr);
+  }
+
+  EventsProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<EventsProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const EventsProto& from);
+  void MergeFrom(const EventsProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(EventsProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.structured.EventsProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNonUmaEventsFieldNumber = 1,
+    kUmaEventsFieldNumber = 2,
+  };
+  // repeated .metrics.StructuredEventProto non_uma_events = 1;
+  int non_uma_events_size() const;
+  private:
+  int _internal_non_uma_events_size() const;
+  public:
+  void clear_non_uma_events();
+  ::metrics::StructuredEventProto* mutable_non_uma_events(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >*
+      mutable_non_uma_events();
+  private:
+  const ::metrics::StructuredEventProto& _internal_non_uma_events(int index) const;
+  ::metrics::StructuredEventProto* _internal_add_non_uma_events();
+  public:
+  const ::metrics::StructuredEventProto& non_uma_events(int index) const;
+  ::metrics::StructuredEventProto* add_non_uma_events();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >&
+      non_uma_events() const;
+
+  // repeated .metrics.StructuredEventProto uma_events = 2;
+  int uma_events_size() const;
+  private:
+  int _internal_uma_events_size() const;
+  public:
+  void clear_uma_events();
+  ::metrics::StructuredEventProto* mutable_uma_events(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >*
+      mutable_uma_events();
+  private:
+  const ::metrics::StructuredEventProto& _internal_uma_events(int index) const;
+  ::metrics::StructuredEventProto* _internal_add_uma_events();
+  public:
+  const ::metrics::StructuredEventProto& uma_events(int index) const;
+  ::metrics::StructuredEventProto* add_uma_events();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >&
+      uma_events() const;
+
+  // @@protoc_insertion_point(class_scope:metrics.structured.EventsProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto > non_uma_events_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto > uma_events_;
+  friend struct ::TableStruct_storage_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// KeyProto
+
+// optional string key = 1;
+inline bool KeyProto::_internal_has_key() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool KeyProto::has_key() const {
+  return _internal_has_key();
+}
+inline void KeyProto::clear_key() {
+  key_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& KeyProto::key() const {
+  // @@protoc_insertion_point(field_get:metrics.structured.KeyProto.key)
+  return _internal_key();
+}
+inline void KeyProto::set_key(const std::string& value) {
+  _internal_set_key(value);
+  // @@protoc_insertion_point(field_set:metrics.structured.KeyProto.key)
+}
+inline std::string* KeyProto::mutable_key() {
+  // @@protoc_insertion_point(field_mutable:metrics.structured.KeyProto.key)
+  return _internal_mutable_key();
+}
+inline const std::string& KeyProto::_internal_key() const {
+  return key_.GetNoArena();
+}
+inline void KeyProto::_internal_set_key(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void KeyProto::set_key(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  key_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.structured.KeyProto.key)
+}
+inline void KeyProto::set_key(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.structured.KeyProto.key)
+}
+inline void KeyProto::set_key(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  key_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.structured.KeyProto.key)
+}
+inline std::string* KeyProto::_internal_mutable_key() {
+  _has_bits_[0] |= 0x00000001u;
+  return key_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* KeyProto::release_key() {
+  // @@protoc_insertion_point(field_release:metrics.structured.KeyProto.key)
+  if (!_internal_has_key()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return key_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void KeyProto::set_allocated_key(std::string* key) {
+  if (key != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  key_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), key);
+  // @@protoc_insertion_point(field_set_allocated:metrics.structured.KeyProto.key)
+}
+
+// optional int64 last_rotation = 2;
+inline bool KeyProto::_internal_has_last_rotation() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool KeyProto::has_last_rotation() const {
+  return _internal_has_last_rotation();
+}
+inline void KeyProto::clear_last_rotation() {
+  last_rotation_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 KeyProto::_internal_last_rotation() const {
+  return last_rotation_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 KeyProto::last_rotation() const {
+  // @@protoc_insertion_point(field_get:metrics.structured.KeyProto.last_rotation)
+  return _internal_last_rotation();
+}
+inline void KeyProto::_internal_set_last_rotation(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  last_rotation_ = value;
+}
+inline void KeyProto::set_last_rotation(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_rotation(value);
+  // @@protoc_insertion_point(field_set:metrics.structured.KeyProto.last_rotation)
+}
+
+// optional int64 rotation_period = 3;
+inline bool KeyProto::_internal_has_rotation_period() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool KeyProto::has_rotation_period() const {
+  return _internal_has_rotation_period();
+}
+inline void KeyProto::clear_rotation_period() {
+  rotation_period_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 KeyProto::_internal_rotation_period() const {
+  return rotation_period_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 KeyProto::rotation_period() const {
+  // @@protoc_insertion_point(field_get:metrics.structured.KeyProto.rotation_period)
+  return _internal_rotation_period();
+}
+inline void KeyProto::_internal_set_rotation_period(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  rotation_period_ = value;
+}
+inline void KeyProto::set_rotation_period(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_rotation_period(value);
+  // @@protoc_insertion_point(field_set:metrics.structured.KeyProto.rotation_period)
+}
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// KeyDataProto
+
+// map<fixed64, .metrics.structured.KeyProto> keys = 1;
+inline int KeyDataProto::_internal_keys_size() const {
+  return keys_.size();
+}
+inline int KeyDataProto::keys_size() const {
+  return _internal_keys_size();
+}
+inline void KeyDataProto::clear_keys() {
+  keys_.Clear();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >&
+KeyDataProto::_internal_keys() const {
+  return keys_.GetMap();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >&
+KeyDataProto::keys() const {
+  // @@protoc_insertion_point(field_map:metrics.structured.KeyDataProto.keys)
+  return _internal_keys();
+}
+inline ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >*
+KeyDataProto::_internal_mutable_keys() {
+  return keys_.MutableMap();
+}
+inline ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::uint64, ::metrics::structured::KeyProto >*
+KeyDataProto::mutable_keys() {
+  // @@protoc_insertion_point(field_mutable_map:metrics.structured.KeyDataProto.keys)
+  return _internal_mutable_keys();
+}
+
+// -------------------------------------------------------------------
+
+// EventsProto
+
+// repeated .metrics.StructuredEventProto non_uma_events = 1;
+inline int EventsProto::_internal_non_uma_events_size() const {
+  return non_uma_events_.size();
+}
+inline int EventsProto::non_uma_events_size() const {
+  return _internal_non_uma_events_size();
+}
+inline ::metrics::StructuredEventProto* EventsProto::mutable_non_uma_events(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.structured.EventsProto.non_uma_events)
+  return non_uma_events_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >*
+EventsProto::mutable_non_uma_events() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.structured.EventsProto.non_uma_events)
+  return &non_uma_events_;
+}
+inline const ::metrics::StructuredEventProto& EventsProto::_internal_non_uma_events(int index) const {
+  return non_uma_events_.Get(index);
+}
+inline const ::metrics::StructuredEventProto& EventsProto::non_uma_events(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.structured.EventsProto.non_uma_events)
+  return _internal_non_uma_events(index);
+}
+inline ::metrics::StructuredEventProto* EventsProto::_internal_add_non_uma_events() {
+  return non_uma_events_.Add();
+}
+inline ::metrics::StructuredEventProto* EventsProto::add_non_uma_events() {
+  // @@protoc_insertion_point(field_add:metrics.structured.EventsProto.non_uma_events)
+  return _internal_add_non_uma_events();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >&
+EventsProto::non_uma_events() const {
+  // @@protoc_insertion_point(field_list:metrics.structured.EventsProto.non_uma_events)
+  return non_uma_events_;
+}
+
+// repeated .metrics.StructuredEventProto uma_events = 2;
+inline int EventsProto::_internal_uma_events_size() const {
+  return uma_events_.size();
+}
+inline int EventsProto::uma_events_size() const {
+  return _internal_uma_events_size();
+}
+inline ::metrics::StructuredEventProto* EventsProto::mutable_uma_events(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.structured.EventsProto.uma_events)
+  return uma_events_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >*
+EventsProto::mutable_uma_events() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.structured.EventsProto.uma_events)
+  return &uma_events_;
+}
+inline const ::metrics::StructuredEventProto& EventsProto::_internal_uma_events(int index) const {
+  return uma_events_.Get(index);
+}
+inline const ::metrics::StructuredEventProto& EventsProto::uma_events(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.structured.EventsProto.uma_events)
+  return _internal_uma_events(index);
+}
+inline ::metrics::StructuredEventProto* EventsProto::_internal_add_uma_events() {
+  return uma_events_.Add();
+}
+inline ::metrics::StructuredEventProto* EventsProto::add_uma_events() {
+  // @@protoc_insertion_point(field_add:metrics.structured.EventsProto.uma_events)
+  return _internal_add_uma_events();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >&
+EventsProto::uma_events() const {
+  // @@protoc_insertion_point(field_list:metrics.structured.EventsProto.uma_events)
+  return uma_events_;
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace structured
+}  // namespace metrics
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_storage_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/structured_data.pb.cc b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/structured_data.pb.cc
new file mode 100644
index 0000000..8a5d205
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/structured_data.pb.cc
@@ -0,0 +1,928 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: structured_data.proto
+
+#include "structured_data.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_structured_5fdata_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_StructuredEventProto_structured_5fdata_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_structured_5fdata_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StructuredEventProto_Metric_structured_5fdata_2eproto;
+namespace metrics {
+class StructuredEventProto_MetricDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StructuredEventProto_Metric> _instance;
+  ::PROTOBUF_NAMESPACE_ID::uint64 value_hmac_;
+  ::PROTOBUF_NAMESPACE_ID::int64 value_int64_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_string_;
+} _StructuredEventProto_Metric_default_instance_;
+class StructuredEventProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StructuredEventProto> _instance;
+} _StructuredEventProto_default_instance_;
+class StructuredDataProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<StructuredDataProto> _instance;
+} _StructuredDataProto_default_instance_;
+}  // namespace metrics
+static void InitDefaultsscc_info_StructuredDataProto_structured_5fdata_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_StructuredDataProto_default_instance_;
+    new (ptr) ::metrics::StructuredDataProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::StructuredDataProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_StructuredDataProto_structured_5fdata_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_StructuredDataProto_structured_5fdata_2eproto}, {
+      &scc_info_StructuredEventProto_structured_5fdata_2eproto.base,}};
+
+static void InitDefaultsscc_info_StructuredEventProto_structured_5fdata_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_StructuredEventProto_default_instance_;
+    new (ptr) ::metrics::StructuredEventProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::StructuredEventProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_StructuredEventProto_structured_5fdata_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_StructuredEventProto_structured_5fdata_2eproto}, {
+      &scc_info_StructuredEventProto_Metric_structured_5fdata_2eproto.base,}};
+
+static void InitDefaultsscc_info_StructuredEventProto_Metric_structured_5fdata_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_StructuredEventProto_Metric_default_instance_;
+    new (ptr) ::metrics::StructuredEventProto_Metric();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::StructuredEventProto_Metric::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_StructuredEventProto_Metric_structured_5fdata_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_StructuredEventProto_Metric_structured_5fdata_2eproto}, {}};
+
+namespace metrics {
+bool StructuredEventProto_EventType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> StructuredEventProto_EventType_strings[3] = {};
+
+static const char StructuredEventProto_EventType_names[] =
+  "RAW_STRING"
+  "REGULAR"
+  "UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry StructuredEventProto_EventType_entries[] = {
+  { {StructuredEventProto_EventType_names + 0, 10}, 2 },
+  { {StructuredEventProto_EventType_names + 10, 7}, 1 },
+  { {StructuredEventProto_EventType_names + 17, 7}, 0 },
+};
+
+static const int StructuredEventProto_EventType_entries_by_number[] = {
+  2, // 0 -> UNKNOWN
+  1, // 1 -> REGULAR
+  0, // 2 -> RAW_STRING
+};
+
+const std::string& StructuredEventProto_EventType_Name(
+    StructuredEventProto_EventType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          StructuredEventProto_EventType_entries,
+          StructuredEventProto_EventType_entries_by_number,
+          3, StructuredEventProto_EventType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      StructuredEventProto_EventType_entries,
+      StructuredEventProto_EventType_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     StructuredEventProto_EventType_strings[idx].get();
+}
+bool StructuredEventProto_EventType_Parse(
+    const std::string& name, StructuredEventProto_EventType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      StructuredEventProto_EventType_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<StructuredEventProto_EventType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr StructuredEventProto_EventType StructuredEventProto::UNKNOWN;
+constexpr StructuredEventProto_EventType StructuredEventProto::REGULAR;
+constexpr StructuredEventProto_EventType StructuredEventProto::RAW_STRING;
+constexpr StructuredEventProto_EventType StructuredEventProto::EventType_MIN;
+constexpr StructuredEventProto_EventType StructuredEventProto::EventType_MAX;
+constexpr int StructuredEventProto::EventType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+
+// ===================================================================
+
+void StructuredEventProto_Metric::InitAsDefaultInstance() {
+}
+class StructuredEventProto_Metric::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StructuredEventProto_Metric>()._has_bits_);
+  static void set_has_name_hash(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+StructuredEventProto_Metric::StructuredEventProto_Metric()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.StructuredEventProto.Metric)
+}
+StructuredEventProto_Metric::StructuredEventProto_Metric(const StructuredEventProto_Metric& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_hash_ = from.name_hash_;
+  clear_has_value();
+  switch (from.value_case()) {
+    case kValueHmac: {
+      _internal_set_value_hmac(from._internal_value_hmac());
+      break;
+    }
+    case kValueInt64: {
+      _internal_set_value_int64(from._internal_value_int64());
+      break;
+    }
+    case kValueString: {
+      _internal_set_value_string(from._internal_value_string());
+      break;
+    }
+    case VALUE_NOT_SET: {
+      break;
+    }
+  }
+  // @@protoc_insertion_point(copy_constructor:metrics.StructuredEventProto.Metric)
+}
+
+void StructuredEventProto_Metric::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StructuredEventProto_Metric_structured_5fdata_2eproto.base);
+  name_hash_ = PROTOBUF_ULONGLONG(0);
+  clear_has_value();
+}
+
+StructuredEventProto_Metric::~StructuredEventProto_Metric() {
+  // @@protoc_insertion_point(destructor:metrics.StructuredEventProto.Metric)
+  SharedDtor();
+}
+
+void StructuredEventProto_Metric::SharedDtor() {
+  if (has_value()) {
+    clear_value();
+  }
+}
+
+void StructuredEventProto_Metric::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StructuredEventProto_Metric& StructuredEventProto_Metric::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StructuredEventProto_Metric_structured_5fdata_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StructuredEventProto_Metric::clear_value() {
+// @@protoc_insertion_point(one_of_clear_start:metrics.StructuredEventProto.Metric)
+  switch (value_case()) {
+    case kValueHmac: {
+      // No need to clear
+      break;
+    }
+    case kValueInt64: {
+      // No need to clear
+      break;
+    }
+    case kValueString: {
+      value_.value_string_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+      break;
+    }
+    case VALUE_NOT_SET: {
+      break;
+    }
+  }
+  _oneof_case_[0] = VALUE_NOT_SET;
+}
+
+
+void StructuredEventProto_Metric::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.StructuredEventProto.Metric)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  name_hash_ = PROTOBUF_ULONGLONG(0);
+  clear_value();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StructuredEventProto_Metric::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional fixed64 name_hash = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
+          _Internal::set_has_name_hash(&has_bits);
+          name_hash_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint64>(ptr);
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint64);
+        } else goto handle_unusual;
+        continue;
+      // optional fixed64 value_hmac = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
+          _internal_set_value_hmac(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint64>(ptr));
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint64);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 value_int64 = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _internal_set_value_int64(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string value_string = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_value_string();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StructuredEventProto_Metric::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.StructuredEventProto.Metric)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional fixed64 name_hash = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed64ToArray(1, this->_internal_name_hash(), target);
+  }
+
+  switch (value_case()) {
+    case kValueHmac: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed64ToArray(2, this->_internal_value_hmac(), target);
+      break;
+    }
+    case kValueInt64: {
+      target = stream->EnsureSpace(target);
+      target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_value_int64(), target);
+      break;
+    }
+    case kValueString: {
+      target = stream->WriteStringMaybeAliased(
+          4, this->_internal_value_string(), target);
+      break;
+    }
+    default: ;
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.StructuredEventProto.Metric)
+  return target;
+}
+
+size_t StructuredEventProto_Metric::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.StructuredEventProto.Metric)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional fixed64 name_hash = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 8;
+  }
+
+  switch (value_case()) {
+    // optional fixed64 value_hmac = 2;
+    case kValueHmac: {
+      total_size += 1 + 8;
+      break;
+    }
+    // optional int64 value_int64 = 3;
+    case kValueInt64: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_value_int64());
+      break;
+    }
+    // optional string value_string = 4;
+    case kValueString: {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_value_string());
+      break;
+    }
+    case VALUE_NOT_SET: {
+      break;
+    }
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StructuredEventProto_Metric::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StructuredEventProto_Metric*>(
+      &from));
+}
+
+void StructuredEventProto_Metric::MergeFrom(const StructuredEventProto_Metric& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.StructuredEventProto.Metric)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_name_hash()) {
+    _internal_set_name_hash(from._internal_name_hash());
+  }
+  switch (from.value_case()) {
+    case kValueHmac: {
+      _internal_set_value_hmac(from._internal_value_hmac());
+      break;
+    }
+    case kValueInt64: {
+      _internal_set_value_int64(from._internal_value_int64());
+      break;
+    }
+    case kValueString: {
+      _internal_set_value_string(from._internal_value_string());
+      break;
+    }
+    case VALUE_NOT_SET: {
+      break;
+    }
+  }
+}
+
+void StructuredEventProto_Metric::CopyFrom(const StructuredEventProto_Metric& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.StructuredEventProto.Metric)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StructuredEventProto_Metric::IsInitialized() const {
+  return true;
+}
+
+void StructuredEventProto_Metric::InternalSwap(StructuredEventProto_Metric* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(name_hash_, other->name_hash_);
+  swap(value_, other->value_);
+  swap(_oneof_case_[0], other->_oneof_case_[0]);
+}
+
+std::string StructuredEventProto_Metric::GetTypeName() const {
+  return "metrics.StructuredEventProto.Metric";
+}
+
+
+// ===================================================================
+
+void StructuredEventProto::InitAsDefaultInstance() {
+}
+class StructuredEventProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StructuredEventProto>()._has_bits_);
+  static void set_has_profile_event_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_event_name_hash(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_event_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+StructuredEventProto::StructuredEventProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.StructuredEventProto)
+}
+StructuredEventProto::StructuredEventProto(const StructuredEventProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      metrics_(from.metrics_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&profile_event_id_, &from.profile_event_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&event_type_) -
+    reinterpret_cast<char*>(&profile_event_id_)) + sizeof(event_type_));
+  // @@protoc_insertion_point(copy_constructor:metrics.StructuredEventProto)
+}
+
+void StructuredEventProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StructuredEventProto_structured_5fdata_2eproto.base);
+  ::memset(&profile_event_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&event_type_) -
+      reinterpret_cast<char*>(&profile_event_id_)) + sizeof(event_type_));
+}
+
+StructuredEventProto::~StructuredEventProto() {
+  // @@protoc_insertion_point(destructor:metrics.StructuredEventProto)
+  SharedDtor();
+}
+
+void StructuredEventProto::SharedDtor() {
+}
+
+void StructuredEventProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StructuredEventProto& StructuredEventProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StructuredEventProto_structured_5fdata_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StructuredEventProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.StructuredEventProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  metrics_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    ::memset(&profile_event_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&event_type_) -
+        reinterpret_cast<char*>(&profile_event_id_)) + sizeof(event_type_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StructuredEventProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional fixed64 profile_event_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
+          _Internal::set_has_profile_event_id(&has_bits);
+          profile_event_id_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint64>(ptr);
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint64);
+        } else goto handle_unusual;
+        continue;
+      // optional fixed64 event_name_hash = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
+          _Internal::set_has_event_name_hash(&has_bits);
+          event_name_hash_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint64>(ptr);
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint64);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.StructuredEventProto.Metric metrics = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_metrics(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.StructuredEventProto.EventType event_type = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::StructuredEventProto_EventType_IsValid(val))) {
+            _internal_set_event_type(static_cast<::metrics::StructuredEventProto_EventType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StructuredEventProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.StructuredEventProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional fixed64 profile_event_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed64ToArray(1, this->_internal_profile_event_id(), target);
+  }
+
+  // optional fixed64 event_name_hash = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed64ToArray(2, this->_internal_event_name_hash(), target);
+  }
+
+  // repeated .metrics.StructuredEventProto.Metric metrics = 3;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_metrics_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(3, this->_internal_metrics(i), target, stream);
+  }
+
+  // optional .metrics.StructuredEventProto.EventType event_type = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_event_type(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.StructuredEventProto)
+  return target;
+}
+
+size_t StructuredEventProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.StructuredEventProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.StructuredEventProto.Metric metrics = 3;
+  total_size += 1UL * this->_internal_metrics_size();
+  for (const auto& msg : this->metrics_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional fixed64 profile_event_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 8;
+    }
+
+    // optional fixed64 event_name_hash = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 8;
+    }
+
+    // optional .metrics.StructuredEventProto.EventType event_type = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_event_type());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StructuredEventProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StructuredEventProto*>(
+      &from));
+}
+
+void StructuredEventProto::MergeFrom(const StructuredEventProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.StructuredEventProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  metrics_.MergeFrom(from.metrics_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      profile_event_id_ = from.profile_event_id_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      event_name_hash_ = from.event_name_hash_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      event_type_ = from.event_type_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void StructuredEventProto::CopyFrom(const StructuredEventProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.StructuredEventProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StructuredEventProto::IsInitialized() const {
+  return true;
+}
+
+void StructuredEventProto::InternalSwap(StructuredEventProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  metrics_.InternalSwap(&other->metrics_);
+  swap(profile_event_id_, other->profile_event_id_);
+  swap(event_name_hash_, other->event_name_hash_);
+  swap(event_type_, other->event_type_);
+}
+
+std::string StructuredEventProto::GetTypeName() const {
+  return "metrics.StructuredEventProto";
+}
+
+
+// ===================================================================
+
+void StructuredDataProto::InitAsDefaultInstance() {
+}
+class StructuredDataProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<StructuredDataProto>()._has_bits_);
+};
+
+StructuredDataProto::StructuredDataProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.StructuredDataProto)
+}
+StructuredDataProto::StructuredDataProto(const StructuredDataProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      events_(from.events_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  // @@protoc_insertion_point(copy_constructor:metrics.StructuredDataProto)
+}
+
+void StructuredDataProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_StructuredDataProto_structured_5fdata_2eproto.base);
+}
+
+StructuredDataProto::~StructuredDataProto() {
+  // @@protoc_insertion_point(destructor:metrics.StructuredDataProto)
+  SharedDtor();
+}
+
+void StructuredDataProto::SharedDtor() {
+}
+
+void StructuredDataProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const StructuredDataProto& StructuredDataProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_StructuredDataProto_structured_5fdata_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void StructuredDataProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.StructuredDataProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  events_.Clear();
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* StructuredDataProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // repeated .metrics.StructuredEventProto events = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_events(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* StructuredDataProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.StructuredDataProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  // repeated .metrics.StructuredEventProto events = 1;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_events_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(1, this->_internal_events(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.StructuredDataProto)
+  return target;
+}
+
+size_t StructuredDataProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.StructuredDataProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.StructuredEventProto events = 1;
+  total_size += 1UL * this->_internal_events_size();
+  for (const auto& msg : this->events_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void StructuredDataProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const StructuredDataProto*>(
+      &from));
+}
+
+void StructuredDataProto::MergeFrom(const StructuredDataProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.StructuredDataProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  events_.MergeFrom(from.events_);
+}
+
+void StructuredDataProto::CopyFrom(const StructuredDataProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.StructuredDataProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool StructuredDataProto::IsInitialized() const {
+  return true;
+}
+
+void StructuredDataProto::InternalSwap(StructuredDataProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  events_.InternalSwap(&other->events_);
+}
+
+std::string StructuredDataProto::GetTypeName() const {
+  return "metrics.StructuredDataProto";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::metrics::StructuredEventProto_Metric* Arena::CreateMaybeMessage< ::metrics::StructuredEventProto_Metric >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::StructuredEventProto_Metric >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::StructuredEventProto* Arena::CreateMaybeMessage< ::metrics::StructuredEventProto >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::StructuredEventProto >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::StructuredDataProto* Arena::CreateMaybeMessage< ::metrics::StructuredDataProto >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::StructuredDataProto >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/structured_data.pb.h b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/structured_data.pb.h
new file mode 100644
index 0000000..bdc2019
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/proto/structured_data.pb.h
@@ -0,0 +1,1042 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: structured_data.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_structured_5fdata_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_structured_5fdata_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/generated_enum_util.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_structured_5fdata_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_structured_5fdata_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[3]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace metrics {
+class StructuredDataProto;
+class StructuredDataProtoDefaultTypeInternal;
+extern StructuredDataProtoDefaultTypeInternal _StructuredDataProto_default_instance_;
+class StructuredEventProto;
+class StructuredEventProtoDefaultTypeInternal;
+extern StructuredEventProtoDefaultTypeInternal _StructuredEventProto_default_instance_;
+class StructuredEventProto_Metric;
+class StructuredEventProto_MetricDefaultTypeInternal;
+extern StructuredEventProto_MetricDefaultTypeInternal _StructuredEventProto_Metric_default_instance_;
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> ::metrics::StructuredDataProto* Arena::CreateMaybeMessage<::metrics::StructuredDataProto>(Arena*);
+template<> ::metrics::StructuredEventProto* Arena::CreateMaybeMessage<::metrics::StructuredEventProto>(Arena*);
+template<> ::metrics::StructuredEventProto_Metric* Arena::CreateMaybeMessage<::metrics::StructuredEventProto_Metric>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace metrics {
+
+enum StructuredEventProto_EventType : int {
+  StructuredEventProto_EventType_UNKNOWN = 0,
+  StructuredEventProto_EventType_REGULAR = 1,
+  StructuredEventProto_EventType_RAW_STRING = 2
+};
+bool StructuredEventProto_EventType_IsValid(int value);
+constexpr StructuredEventProto_EventType StructuredEventProto_EventType_EventType_MIN = StructuredEventProto_EventType_UNKNOWN;
+constexpr StructuredEventProto_EventType StructuredEventProto_EventType_EventType_MAX = StructuredEventProto_EventType_RAW_STRING;
+constexpr int StructuredEventProto_EventType_EventType_ARRAYSIZE = StructuredEventProto_EventType_EventType_MAX + 1;
+
+const std::string& StructuredEventProto_EventType_Name(StructuredEventProto_EventType value);
+template<typename T>
+inline const std::string& StructuredEventProto_EventType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, StructuredEventProto_EventType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function StructuredEventProto_EventType_Name.");
+  return StructuredEventProto_EventType_Name(static_cast<StructuredEventProto_EventType>(enum_t_value));
+}
+bool StructuredEventProto_EventType_Parse(
+    const std::string& name, StructuredEventProto_EventType* value);
+// ===================================================================
+
+class StructuredEventProto_Metric :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.StructuredEventProto.Metric) */ {
+ public:
+  StructuredEventProto_Metric();
+  virtual ~StructuredEventProto_Metric();
+
+  StructuredEventProto_Metric(const StructuredEventProto_Metric& from);
+  StructuredEventProto_Metric(StructuredEventProto_Metric&& from) noexcept
+    : StructuredEventProto_Metric() {
+    *this = ::std::move(from);
+  }
+
+  inline StructuredEventProto_Metric& operator=(const StructuredEventProto_Metric& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StructuredEventProto_Metric& operator=(StructuredEventProto_Metric&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StructuredEventProto_Metric& default_instance();
+
+  enum ValueCase {
+    kValueHmac = 2,
+    kValueInt64 = 3,
+    kValueString = 4,
+    VALUE_NOT_SET = 0,
+  };
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StructuredEventProto_Metric* internal_default_instance() {
+    return reinterpret_cast<const StructuredEventProto_Metric*>(
+               &_StructuredEventProto_Metric_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(StructuredEventProto_Metric& a, StructuredEventProto_Metric& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StructuredEventProto_Metric* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StructuredEventProto_Metric* New() const final {
+    return CreateMaybeMessage<StructuredEventProto_Metric>(nullptr);
+  }
+
+  StructuredEventProto_Metric* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StructuredEventProto_Metric>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StructuredEventProto_Metric& from);
+  void MergeFrom(const StructuredEventProto_Metric& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StructuredEventProto_Metric* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.StructuredEventProto.Metric";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameHashFieldNumber = 1,
+    kValueHmacFieldNumber = 2,
+    kValueInt64FieldNumber = 3,
+    kValueStringFieldNumber = 4,
+  };
+  // optional fixed64 name_hash = 1;
+  bool has_name_hash() const;
+  private:
+  bool _internal_has_name_hash() const;
+  public:
+  void clear_name_hash();
+  ::PROTOBUF_NAMESPACE_ID::uint64 name_hash() const;
+  void set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_name_hash() const;
+  void _internal_set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional fixed64 value_hmac = 2;
+  bool has_value_hmac() const;
+  private:
+  bool _internal_has_value_hmac() const;
+  public:
+  void clear_value_hmac();
+  ::PROTOBUF_NAMESPACE_ID::uint64 value_hmac() const;
+  void set_value_hmac(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_value_hmac() const;
+  void _internal_set_value_hmac(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional int64 value_int64 = 3;
+  bool has_value_int64() const;
+  private:
+  bool _internal_has_value_int64() const;
+  public:
+  void clear_value_int64();
+  ::PROTOBUF_NAMESPACE_ID::int64 value_int64() const;
+  void set_value_int64(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_value_int64() const;
+  void _internal_set_value_int64(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional string value_string = 4;
+  bool has_value_string() const;
+  private:
+  bool _internal_has_value_string() const;
+  public:
+  void clear_value_string();
+  const std::string& value_string() const;
+  void set_value_string(const std::string& value);
+  void set_value_string(std::string&& value);
+  void set_value_string(const char* value);
+  void set_value_string(const char* value, size_t size);
+  std::string* mutable_value_string();
+  std::string* release_value_string();
+  void set_allocated_value_string(std::string* value_string);
+  private:
+  const std::string& _internal_value_string() const;
+  void _internal_set_value_string(const std::string& value);
+  std::string* _internal_mutable_value_string();
+  public:
+
+  void clear_value();
+  ValueCase value_case() const;
+  // @@protoc_insertion_point(class_scope:metrics.StructuredEventProto.Metric)
+ private:
+  class _Internal;
+  void set_has_value_hmac();
+  void set_has_value_int64();
+  void set_has_value_string();
+
+  inline bool has_value() const;
+  inline void clear_has_value();
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 name_hash_;
+  union ValueUnion {
+    ValueUnion() {}
+    ::PROTOBUF_NAMESPACE_ID::uint64 value_hmac_;
+    ::PROTOBUF_NAMESPACE_ID::int64 value_int64_;
+    ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_string_;
+  } value_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
+
+  friend struct ::TableStruct_structured_5fdata_2eproto;
+};
+// -------------------------------------------------------------------
+
+class StructuredEventProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.StructuredEventProto) */ {
+ public:
+  StructuredEventProto();
+  virtual ~StructuredEventProto();
+
+  StructuredEventProto(const StructuredEventProto& from);
+  StructuredEventProto(StructuredEventProto&& from) noexcept
+    : StructuredEventProto() {
+    *this = ::std::move(from);
+  }
+
+  inline StructuredEventProto& operator=(const StructuredEventProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StructuredEventProto& operator=(StructuredEventProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StructuredEventProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StructuredEventProto* internal_default_instance() {
+    return reinterpret_cast<const StructuredEventProto*>(
+               &_StructuredEventProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(StructuredEventProto& a, StructuredEventProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StructuredEventProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StructuredEventProto* New() const final {
+    return CreateMaybeMessage<StructuredEventProto>(nullptr);
+  }
+
+  StructuredEventProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StructuredEventProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StructuredEventProto& from);
+  void MergeFrom(const StructuredEventProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StructuredEventProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.StructuredEventProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef StructuredEventProto_Metric Metric;
+
+  typedef StructuredEventProto_EventType EventType;
+  static constexpr EventType UNKNOWN =
+    StructuredEventProto_EventType_UNKNOWN;
+  static constexpr EventType REGULAR =
+    StructuredEventProto_EventType_REGULAR;
+  static constexpr EventType RAW_STRING =
+    StructuredEventProto_EventType_RAW_STRING;
+  static inline bool EventType_IsValid(int value) {
+    return StructuredEventProto_EventType_IsValid(value);
+  }
+  static constexpr EventType EventType_MIN =
+    StructuredEventProto_EventType_EventType_MIN;
+  static constexpr EventType EventType_MAX =
+    StructuredEventProto_EventType_EventType_MAX;
+  static constexpr int EventType_ARRAYSIZE =
+    StructuredEventProto_EventType_EventType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& EventType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, EventType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function EventType_Name.");
+    return StructuredEventProto_EventType_Name(enum_t_value);
+  }
+  static inline bool EventType_Parse(const std::string& name,
+      EventType* value) {
+    return StructuredEventProto_EventType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMetricsFieldNumber = 3,
+    kProfileEventIdFieldNumber = 1,
+    kEventNameHashFieldNumber = 2,
+    kEventTypeFieldNumber = 4,
+  };
+  // repeated .metrics.StructuredEventProto.Metric metrics = 3;
+  int metrics_size() const;
+  private:
+  int _internal_metrics_size() const;
+  public:
+  void clear_metrics();
+  ::metrics::StructuredEventProto_Metric* mutable_metrics(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto_Metric >*
+      mutable_metrics();
+  private:
+  const ::metrics::StructuredEventProto_Metric& _internal_metrics(int index) const;
+  ::metrics::StructuredEventProto_Metric* _internal_add_metrics();
+  public:
+  const ::metrics::StructuredEventProto_Metric& metrics(int index) const;
+  ::metrics::StructuredEventProto_Metric* add_metrics();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto_Metric >&
+      metrics() const;
+
+  // optional fixed64 profile_event_id = 1;
+  bool has_profile_event_id() const;
+  private:
+  bool _internal_has_profile_event_id() const;
+  public:
+  void clear_profile_event_id();
+  ::PROTOBUF_NAMESPACE_ID::uint64 profile_event_id() const;
+  void set_profile_event_id(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_profile_event_id() const;
+  void _internal_set_profile_event_id(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional fixed64 event_name_hash = 2;
+  bool has_event_name_hash() const;
+  private:
+  bool _internal_has_event_name_hash() const;
+  public:
+  void clear_event_name_hash();
+  ::PROTOBUF_NAMESPACE_ID::uint64 event_name_hash() const;
+  void set_event_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_event_name_hash() const;
+  void _internal_set_event_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional .metrics.StructuredEventProto.EventType event_type = 4;
+  bool has_event_type() const;
+  private:
+  bool _internal_has_event_type() const;
+  public:
+  void clear_event_type();
+  ::metrics::StructuredEventProto_EventType event_type() const;
+  void set_event_type(::metrics::StructuredEventProto_EventType value);
+  private:
+  ::metrics::StructuredEventProto_EventType _internal_event_type() const;
+  void _internal_set_event_type(::metrics::StructuredEventProto_EventType value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.StructuredEventProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto_Metric > metrics_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 profile_event_id_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 event_name_hash_;
+  int event_type_;
+  friend struct ::TableStruct_structured_5fdata_2eproto;
+};
+// -------------------------------------------------------------------
+
+class StructuredDataProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.StructuredDataProto) */ {
+ public:
+  StructuredDataProto();
+  virtual ~StructuredDataProto();
+
+  StructuredDataProto(const StructuredDataProto& from);
+  StructuredDataProto(StructuredDataProto&& from) noexcept
+    : StructuredDataProto() {
+    *this = ::std::move(from);
+  }
+
+  inline StructuredDataProto& operator=(const StructuredDataProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline StructuredDataProto& operator=(StructuredDataProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const StructuredDataProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const StructuredDataProto* internal_default_instance() {
+    return reinterpret_cast<const StructuredDataProto*>(
+               &_StructuredDataProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    2;
+
+  friend void swap(StructuredDataProto& a, StructuredDataProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(StructuredDataProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline StructuredDataProto* New() const final {
+    return CreateMaybeMessage<StructuredDataProto>(nullptr);
+  }
+
+  StructuredDataProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<StructuredDataProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const StructuredDataProto& from);
+  void MergeFrom(const StructuredDataProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(StructuredDataProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.StructuredDataProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kEventsFieldNumber = 1,
+  };
+  // repeated .metrics.StructuredEventProto events = 1;
+  int events_size() const;
+  private:
+  int _internal_events_size() const;
+  public:
+  void clear_events();
+  ::metrics::StructuredEventProto* mutable_events(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >*
+      mutable_events();
+  private:
+  const ::metrics::StructuredEventProto& _internal_events(int index) const;
+  ::metrics::StructuredEventProto* _internal_add_events();
+  public:
+  const ::metrics::StructuredEventProto& events(int index) const;
+  ::metrics::StructuredEventProto* add_events();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >&
+      events() const;
+
+  // @@protoc_insertion_point(class_scope:metrics.StructuredDataProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto > events_;
+  friend struct ::TableStruct_structured_5fdata_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// StructuredEventProto_Metric
+
+// optional fixed64 name_hash = 1;
+inline bool StructuredEventProto_Metric::_internal_has_name_hash() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool StructuredEventProto_Metric::has_name_hash() const {
+  return _internal_has_name_hash();
+}
+inline void StructuredEventProto_Metric::clear_name_hash() {
+  name_hash_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StructuredEventProto_Metric::_internal_name_hash() const {
+  return name_hash_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StructuredEventProto_Metric::name_hash() const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredEventProto.Metric.name_hash)
+  return _internal_name_hash();
+}
+inline void StructuredEventProto_Metric::_internal_set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_hash_ = value;
+}
+inline void StructuredEventProto_Metric::set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_name_hash(value);
+  // @@protoc_insertion_point(field_set:metrics.StructuredEventProto.Metric.name_hash)
+}
+
+// optional fixed64 value_hmac = 2;
+inline bool StructuredEventProto_Metric::_internal_has_value_hmac() const {
+  return value_case() == kValueHmac;
+}
+inline bool StructuredEventProto_Metric::has_value_hmac() const {
+  return _internal_has_value_hmac();
+}
+inline void StructuredEventProto_Metric::set_has_value_hmac() {
+  _oneof_case_[0] = kValueHmac;
+}
+inline void StructuredEventProto_Metric::clear_value_hmac() {
+  if (_internal_has_value_hmac()) {
+    value_.value_hmac_ = PROTOBUF_ULONGLONG(0);
+    clear_has_value();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StructuredEventProto_Metric::_internal_value_hmac() const {
+  if (_internal_has_value_hmac()) {
+    return value_.value_hmac_;
+  }
+  return PROTOBUF_ULONGLONG(0);
+}
+inline void StructuredEventProto_Metric::_internal_set_value_hmac(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  if (!_internal_has_value_hmac()) {
+    clear_value();
+    set_has_value_hmac();
+  }
+  value_.value_hmac_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StructuredEventProto_Metric::value_hmac() const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredEventProto.Metric.value_hmac)
+  return _internal_value_hmac();
+}
+inline void StructuredEventProto_Metric::set_value_hmac(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_value_hmac(value);
+  // @@protoc_insertion_point(field_set:metrics.StructuredEventProto.Metric.value_hmac)
+}
+
+// optional int64 value_int64 = 3;
+inline bool StructuredEventProto_Metric::_internal_has_value_int64() const {
+  return value_case() == kValueInt64;
+}
+inline bool StructuredEventProto_Metric::has_value_int64() const {
+  return _internal_has_value_int64();
+}
+inline void StructuredEventProto_Metric::set_has_value_int64() {
+  _oneof_case_[0] = kValueInt64;
+}
+inline void StructuredEventProto_Metric::clear_value_int64() {
+  if (_internal_has_value_int64()) {
+    value_.value_int64_ = PROTOBUF_LONGLONG(0);
+    clear_has_value();
+  }
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 StructuredEventProto_Metric::_internal_value_int64() const {
+  if (_internal_has_value_int64()) {
+    return value_.value_int64_;
+  }
+  return PROTOBUF_LONGLONG(0);
+}
+inline void StructuredEventProto_Metric::_internal_set_value_int64(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  if (!_internal_has_value_int64()) {
+    clear_value();
+    set_has_value_int64();
+  }
+  value_.value_int64_ = value;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 StructuredEventProto_Metric::value_int64() const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredEventProto.Metric.value_int64)
+  return _internal_value_int64();
+}
+inline void StructuredEventProto_Metric::set_value_int64(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_value_int64(value);
+  // @@protoc_insertion_point(field_set:metrics.StructuredEventProto.Metric.value_int64)
+}
+
+// optional string value_string = 4;
+inline bool StructuredEventProto_Metric::_internal_has_value_string() const {
+  return value_case() == kValueString;
+}
+inline bool StructuredEventProto_Metric::has_value_string() const {
+  return _internal_has_value_string();
+}
+inline void StructuredEventProto_Metric::set_has_value_string() {
+  _oneof_case_[0] = kValueString;
+}
+inline void StructuredEventProto_Metric::clear_value_string() {
+  if (_internal_has_value_string()) {
+    value_.value_string_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+    clear_has_value();
+  }
+}
+inline const std::string& StructuredEventProto_Metric::value_string() const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredEventProto.Metric.value_string)
+  return _internal_value_string();
+}
+inline void StructuredEventProto_Metric::set_value_string(const std::string& value) {
+  _internal_set_value_string(value);
+  // @@protoc_insertion_point(field_set:metrics.StructuredEventProto.Metric.value_string)
+}
+inline std::string* StructuredEventProto_Metric::mutable_value_string() {
+  // @@protoc_insertion_point(field_mutable:metrics.StructuredEventProto.Metric.value_string)
+  return _internal_mutable_value_string();
+}
+inline const std::string& StructuredEventProto_Metric::_internal_value_string() const {
+  if (_internal_has_value_string()) {
+    return value_.value_string_.GetNoArena();
+  }
+  return *&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited();
+}
+inline void StructuredEventProto_Metric::_internal_set_value_string(const std::string& value) {
+  if (!_internal_has_value_string()) {
+    clear_value();
+    set_has_value_string();
+    value_.value_string_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  }
+  value_.value_string_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void StructuredEventProto_Metric::set_value_string(std::string&& value) {
+  // @@protoc_insertion_point(field_set:metrics.StructuredEventProto.Metric.value_string)
+  if (!_internal_has_value_string()) {
+    clear_value();
+    set_has_value_string();
+    value_.value_string_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  }
+  value_.value_string_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.StructuredEventProto.Metric.value_string)
+}
+inline void StructuredEventProto_Metric::set_value_string(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  if (!_internal_has_value_string()) {
+    clear_value();
+    set_has_value_string();
+    value_.value_string_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  }
+  value_.value_string_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.StructuredEventProto.Metric.value_string)
+}
+inline void StructuredEventProto_Metric::set_value_string(const char* value, size_t size) {
+  if (!_internal_has_value_string()) {
+    clear_value();
+    set_has_value_string();
+    value_.value_string_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  }
+  value_.value_string_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
+      reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.StructuredEventProto.Metric.value_string)
+}
+inline std::string* StructuredEventProto_Metric::_internal_mutable_value_string() {
+  if (!_internal_has_value_string()) {
+    clear_value();
+    set_has_value_string();
+    value_.value_string_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  }
+  return value_.value_string_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* StructuredEventProto_Metric::release_value_string() {
+  // @@protoc_insertion_point(field_release:metrics.StructuredEventProto.Metric.value_string)
+  if (_internal_has_value_string()) {
+    clear_has_value();
+    return value_.value_string_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  } else {
+    return nullptr;
+  }
+}
+inline void StructuredEventProto_Metric::set_allocated_value_string(std::string* value_string) {
+  if (has_value()) {
+    clear_value();
+  }
+  if (value_string != nullptr) {
+    set_has_value_string();
+    value_.value_string_.UnsafeSetDefault(value_string);
+  }
+  // @@protoc_insertion_point(field_set_allocated:metrics.StructuredEventProto.Metric.value_string)
+}
+
+inline bool StructuredEventProto_Metric::has_value() const {
+  return value_case() != VALUE_NOT_SET;
+}
+inline void StructuredEventProto_Metric::clear_has_value() {
+  _oneof_case_[0] = VALUE_NOT_SET;
+}
+inline StructuredEventProto_Metric::ValueCase StructuredEventProto_Metric::value_case() const {
+  return StructuredEventProto_Metric::ValueCase(_oneof_case_[0]);
+}
+// -------------------------------------------------------------------
+
+// StructuredEventProto
+
+// optional fixed64 profile_event_id = 1;
+inline bool StructuredEventProto::_internal_has_profile_event_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool StructuredEventProto::has_profile_event_id() const {
+  return _internal_has_profile_event_id();
+}
+inline void StructuredEventProto::clear_profile_event_id() {
+  profile_event_id_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StructuredEventProto::_internal_profile_event_id() const {
+  return profile_event_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StructuredEventProto::profile_event_id() const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredEventProto.profile_event_id)
+  return _internal_profile_event_id();
+}
+inline void StructuredEventProto::_internal_set_profile_event_id(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  profile_event_id_ = value;
+}
+inline void StructuredEventProto::set_profile_event_id(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_profile_event_id(value);
+  // @@protoc_insertion_point(field_set:metrics.StructuredEventProto.profile_event_id)
+}
+
+// optional fixed64 event_name_hash = 2;
+inline bool StructuredEventProto::_internal_has_event_name_hash() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool StructuredEventProto::has_event_name_hash() const {
+  return _internal_has_event_name_hash();
+}
+inline void StructuredEventProto::clear_event_name_hash() {
+  event_name_hash_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StructuredEventProto::_internal_event_name_hash() const {
+  return event_name_hash_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 StructuredEventProto::event_name_hash() const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredEventProto.event_name_hash)
+  return _internal_event_name_hash();
+}
+inline void StructuredEventProto::_internal_set_event_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  event_name_hash_ = value;
+}
+inline void StructuredEventProto::set_event_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_event_name_hash(value);
+  // @@protoc_insertion_point(field_set:metrics.StructuredEventProto.event_name_hash)
+}
+
+// repeated .metrics.StructuredEventProto.Metric metrics = 3;
+inline int StructuredEventProto::_internal_metrics_size() const {
+  return metrics_.size();
+}
+inline int StructuredEventProto::metrics_size() const {
+  return _internal_metrics_size();
+}
+inline void StructuredEventProto::clear_metrics() {
+  metrics_.Clear();
+}
+inline ::metrics::StructuredEventProto_Metric* StructuredEventProto::mutable_metrics(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.StructuredEventProto.metrics)
+  return metrics_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto_Metric >*
+StructuredEventProto::mutable_metrics() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.StructuredEventProto.metrics)
+  return &metrics_;
+}
+inline const ::metrics::StructuredEventProto_Metric& StructuredEventProto::_internal_metrics(int index) const {
+  return metrics_.Get(index);
+}
+inline const ::metrics::StructuredEventProto_Metric& StructuredEventProto::metrics(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredEventProto.metrics)
+  return _internal_metrics(index);
+}
+inline ::metrics::StructuredEventProto_Metric* StructuredEventProto::_internal_add_metrics() {
+  return metrics_.Add();
+}
+inline ::metrics::StructuredEventProto_Metric* StructuredEventProto::add_metrics() {
+  // @@protoc_insertion_point(field_add:metrics.StructuredEventProto.metrics)
+  return _internal_add_metrics();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto_Metric >&
+StructuredEventProto::metrics() const {
+  // @@protoc_insertion_point(field_list:metrics.StructuredEventProto.metrics)
+  return metrics_;
+}
+
+// optional .metrics.StructuredEventProto.EventType event_type = 4;
+inline bool StructuredEventProto::_internal_has_event_type() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool StructuredEventProto::has_event_type() const {
+  return _internal_has_event_type();
+}
+inline void StructuredEventProto::clear_event_type() {
+  event_type_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::metrics::StructuredEventProto_EventType StructuredEventProto::_internal_event_type() const {
+  return static_cast< ::metrics::StructuredEventProto_EventType >(event_type_);
+}
+inline ::metrics::StructuredEventProto_EventType StructuredEventProto::event_type() const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredEventProto.event_type)
+  return _internal_event_type();
+}
+inline void StructuredEventProto::_internal_set_event_type(::metrics::StructuredEventProto_EventType value) {
+  assert(::metrics::StructuredEventProto_EventType_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  event_type_ = value;
+}
+inline void StructuredEventProto::set_event_type(::metrics::StructuredEventProto_EventType value) {
+  _internal_set_event_type(value);
+  // @@protoc_insertion_point(field_set:metrics.StructuredEventProto.event_type)
+}
+
+// -------------------------------------------------------------------
+
+// StructuredDataProto
+
+// repeated .metrics.StructuredEventProto events = 1;
+inline int StructuredDataProto::_internal_events_size() const {
+  return events_.size();
+}
+inline int StructuredDataProto::events_size() const {
+  return _internal_events_size();
+}
+inline void StructuredDataProto::clear_events() {
+  events_.Clear();
+}
+inline ::metrics::StructuredEventProto* StructuredDataProto::mutable_events(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.StructuredDataProto.events)
+  return events_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >*
+StructuredDataProto::mutable_events() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.StructuredDataProto.events)
+  return &events_;
+}
+inline const ::metrics::StructuredEventProto& StructuredDataProto::_internal_events(int index) const {
+  return events_.Get(index);
+}
+inline const ::metrics::StructuredEventProto& StructuredDataProto::events(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.StructuredDataProto.events)
+  return _internal_events(index);
+}
+inline ::metrics::StructuredEventProto* StructuredDataProto::_internal_add_events() {
+  return events_.Add();
+}
+inline ::metrics::StructuredEventProto* StructuredDataProto::add_events() {
+  // @@protoc_insertion_point(field_add:metrics.StructuredDataProto.events)
+  return _internal_add_events();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::StructuredEventProto >&
+StructuredDataProto::events() const {
+  // @@protoc_insertion_point(field_list:metrics.StructuredDataProto.events)
+  return events_;
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace metrics
+
+PROTOBUF_NAMESPACE_OPEN
+
+template <> struct is_proto_enum< ::metrics::StructuredEventProto_EventType> : ::std::true_type {};
+
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_structured_5fdata_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/structured_events.cc b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/structured_events.cc
new file mode 100644
index 0000000..19f0524
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/structured_events.cc
@@ -0,0 +1,965 @@
+// Generated from gen_events.py. DO NOT EDIT!
+// source: structured.xml
+
+#include "structured_events.h"
+
+namespace metrics {
+namespace structured {
+namespace events {
+namespace bluetooth {
+
+BluetoothAdapterStateChanged::BluetoothAdapterStateChanged() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothAdapterStateChanged::~BluetoothAdapterStateChanged() = default;
+BluetoothAdapterStateChanged& BluetoothAdapterStateChanged::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+BluetoothAdapterStateChanged& BluetoothAdapterStateChanged::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+BluetoothAdapterStateChanged& BluetoothAdapterStateChanged::SetIsFloss(const int64_t value) {
+  AddIntMetric(kIsFlossNameHash, value);
+  return *this;
+}
+
+BluetoothAdapterStateChanged& BluetoothAdapterStateChanged::SetAdapterState(const int64_t value) {
+  AddIntMetric(kAdapterStateNameHash, value);
+  return *this;
+}
+
+BluetoothPairingStateChanged::BluetoothPairingStateChanged() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothPairingStateChanged::~BluetoothPairingStateChanged() = default;
+BluetoothPairingStateChanged& BluetoothPairingStateChanged::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+BluetoothPairingStateChanged& BluetoothPairingStateChanged::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+BluetoothPairingStateChanged& BluetoothPairingStateChanged::SetDeviceId(const std::string& value) {
+  AddHmacMetric(kDeviceIdNameHash, value);
+  return *this;
+}
+
+BluetoothPairingStateChanged& BluetoothPairingStateChanged::SetDeviceType(const int64_t value) {
+  AddIntMetric(kDeviceTypeNameHash, value);
+  return *this;
+}
+
+BluetoothPairingStateChanged& BluetoothPairingStateChanged::SetPairingState(const int64_t value) {
+  AddIntMetric(kPairingStateNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged::BluetoothAclConnectionStateChanged() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothAclConnectionStateChanged::~BluetoothAclConnectionStateChanged() = default;
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetIsFloss(const int64_t value) {
+  AddIntMetric(kIsFlossNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetDeviceId(const std::string& value) {
+  AddHmacMetric(kDeviceIdNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetDeviceType(const int64_t value) {
+  AddIntMetric(kDeviceTypeNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetConnectionDirection(const int64_t value) {
+  AddIntMetric(kConnectionDirectionNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetConnectionInitiator(const int64_t value) {
+  AddIntMetric(kConnectionInitiatorNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetStateChangeType(const int64_t value) {
+  AddIntMetric(kStateChangeTypeNameHash, value);
+  return *this;
+}
+
+BluetoothAclConnectionStateChanged& BluetoothAclConnectionStateChanged::SetAclConnectionState(const int64_t value) {
+  AddIntMetric(kAclConnectionStateNameHash, value);
+  return *this;
+}
+
+BluetoothProfileConnectionStateChanged::BluetoothProfileConnectionStateChanged() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothProfileConnectionStateChanged::~BluetoothProfileConnectionStateChanged() = default;
+BluetoothProfileConnectionStateChanged& BluetoothProfileConnectionStateChanged::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+BluetoothProfileConnectionStateChanged& BluetoothProfileConnectionStateChanged::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+BluetoothProfileConnectionStateChanged& BluetoothProfileConnectionStateChanged::SetDeviceId(const std::string& value) {
+  AddHmacMetric(kDeviceIdNameHash, value);
+  return *this;
+}
+
+BluetoothProfileConnectionStateChanged& BluetoothProfileConnectionStateChanged::SetStateChangeType(const int64_t value) {
+  AddIntMetric(kStateChangeTypeNameHash, value);
+  return *this;
+}
+
+BluetoothProfileConnectionStateChanged& BluetoothProfileConnectionStateChanged::SetProfile(const int64_t value) {
+  AddIntMetric(kProfileNameHash, value);
+  return *this;
+}
+
+BluetoothProfileConnectionStateChanged& BluetoothProfileConnectionStateChanged::SetProfileConnectionState(const int64_t value) {
+  AddIntMetric(kProfileConnectionStateNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport::BluetoothDeviceInfoReport() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothDeviceInfoReport::~BluetoothDeviceInfoReport() = default;
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetDeviceId(const std::string& value) {
+  AddHmacMetric(kDeviceIdNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetDeviceType(const int64_t value) {
+  AddIntMetric(kDeviceTypeNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetDeviceClass(const int64_t value) {
+  AddIntMetric(kDeviceClassNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetDeviceCategory(const int64_t value) {
+  AddIntMetric(kDeviceCategoryNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetVendorId(const int64_t value) {
+  AddIntMetric(kVendorIdNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetVendorIdSource(const int64_t value) {
+  AddIntMetric(kVendorIdSourceNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetProductId(const int64_t value) {
+  AddIntMetric(kProductIdNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfoReport& BluetoothDeviceInfoReport::SetProductVersion(const int64_t value) {
+  AddIntMetric(kProductVersionNameHash, value);
+  return *this;
+}
+
+BluetoothAudioQualityReport::BluetoothAudioQualityReport() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothAudioQualityReport::~BluetoothAudioQualityReport() = default;
+BluetoothAudioQualityReport& BluetoothAudioQualityReport::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+BluetoothAudioQualityReport& BluetoothAudioQualityReport::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+BluetoothAudioQualityReport& BluetoothAudioQualityReport::SetDeviceId(const std::string& value) {
+  AddHmacMetric(kDeviceIdNameHash, value);
+  return *this;
+}
+
+BluetoothAudioQualityReport& BluetoothAudioQualityReport::SetProfile(const int64_t value) {
+  AddIntMetric(kProfileNameHash, value);
+  return *this;
+}
+
+BluetoothAudioQualityReport& BluetoothAudioQualityReport::SetQualityType(const int64_t value) {
+  AddIntMetric(kQualityTypeNameHash, value);
+  return *this;
+}
+
+BluetoothAudioQualityReport& BluetoothAudioQualityReport::SetAverage(const int64_t value) {
+  AddIntMetric(kAverageNameHash, value);
+  return *this;
+}
+
+BluetoothAudioQualityReport& BluetoothAudioQualityReport::SetStdDev(const int64_t value) {
+  AddIntMetric(kStdDevNameHash, value);
+  return *this;
+}
+
+BluetoothAudioQualityReport& BluetoothAudioQualityReport::SetPercentile95(const int64_t value) {
+  AddIntMetric(kPercentile95NameHash, value);
+  return *this;
+}
+
+BluetoothChipsetInfoReport::BluetoothChipsetInfoReport() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothChipsetInfoReport::~BluetoothChipsetInfoReport() = default;
+BluetoothChipsetInfoReport& BluetoothChipsetInfoReport::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+BluetoothChipsetInfoReport& BluetoothChipsetInfoReport::SetVendorId(const int64_t value) {
+  AddIntMetric(kVendorIdNameHash, value);
+  return *this;
+}
+
+BluetoothChipsetInfoReport& BluetoothChipsetInfoReport::SetProductId(const int64_t value) {
+  AddIntMetric(kProductIdNameHash, value);
+  return *this;
+}
+
+BluetoothChipsetInfoReport& BluetoothChipsetInfoReport::SetTransport(const int64_t value) {
+  AddIntMetric(kTransportNameHash, value);
+  return *this;
+}
+
+BluetoothChipsetInfoReport& BluetoothChipsetInfoReport::SetChipsetStringHashValue(const int64_t value) {
+  AddIntMetric(kChipsetStringHashValueNameHash, value);
+  return *this;
+}
+
+}  // namespace bluetooth
+
+namespace bluetooth_device {
+
+BluetoothDeviceInfo::BluetoothDeviceInfo() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothDeviceInfo::~BluetoothDeviceInfo() = default;
+BluetoothDeviceInfo& BluetoothDeviceInfo::SetDeviceType(const int64_t value) {
+  AddIntMetric(kDeviceTypeNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfo& BluetoothDeviceInfo::SetDeviceClass(const int64_t value) {
+  AddIntMetric(kDeviceClassNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfo& BluetoothDeviceInfo::SetDeviceCategory(const int64_t value) {
+  AddIntMetric(kDeviceCategoryNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfo& BluetoothDeviceInfo::SetVendorId(const int64_t value) {
+  AddIntMetric(kVendorIdNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfo& BluetoothDeviceInfo::SetVendorIdSource(const int64_t value) {
+  AddIntMetric(kVendorIdSourceNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfo& BluetoothDeviceInfo::SetProductId(const int64_t value) {
+  AddIntMetric(kProductIdNameHash, value);
+  return *this;
+}
+
+BluetoothDeviceInfo& BluetoothDeviceInfo::SetProductVersion(const int64_t value) {
+  AddIntMetric(kProductVersionNameHash, value);
+  return *this;
+}
+
+}  // namespace bluetooth_device
+
+namespace bluetooth_chipset {
+
+BluetoothChipsetInfo::BluetoothChipsetInfo() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+BluetoothChipsetInfo::~BluetoothChipsetInfo() = default;
+BluetoothChipsetInfo& BluetoothChipsetInfo::SetVendorId(const int64_t value) {
+  AddIntMetric(kVendorIdNameHash, value);
+  return *this;
+}
+
+BluetoothChipsetInfo& BluetoothChipsetInfo::SetProductId(const int64_t value) {
+  AddIntMetric(kProductIdNameHash, value);
+  return *this;
+}
+
+BluetoothChipsetInfo& BluetoothChipsetInfo::SetTransport(const int64_t value) {
+  AddIntMetric(kTransportNameHash, value);
+  return *this;
+}
+
+BluetoothChipsetInfo& BluetoothChipsetInfo::SetChipsetString(const std::string& value) {
+  AddRawStringMetric(kChipsetStringNameHash, value);
+  return *this;
+}
+
+}  // namespace bluetooth_chipset
+
+namespace hardware_verifier {
+
+HwVerificationReport::HwVerificationReport() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+HwVerificationReport::~HwVerificationReport() = default;
+HwVerificationReport& HwVerificationReport::SetIsCompliant(const int64_t value) {
+  AddIntMetric(kIsCompliantNameHash, value);
+  return *this;
+}
+
+HwVerificationReport& HwVerificationReport::SetQualificationStatusDisplayPanel(const int64_t value) {
+  AddIntMetric(kQualificationStatusDisplayPanelNameHash, value);
+  return *this;
+}
+
+HwVerificationReport& HwVerificationReport::SetQualificationStatusStorage(const int64_t value) {
+  AddIntMetric(kQualificationStatusStorageNameHash, value);
+  return *this;
+}
+
+ComponentInfo::ComponentInfo() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+ComponentInfo::~ComponentInfo() = default;
+ComponentInfo& ComponentInfo::SetComponentCategory(const int64_t value) {
+  AddIntMetric(kComponentCategoryNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetDisplayPanelVendor(const int64_t value) {
+  AddIntMetric(kDisplayPanelVendorNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetDisplayPanelProductId(const int64_t value) {
+  AddIntMetric(kDisplayPanelProductIdNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetDisplayPanelHeight(const int64_t value) {
+  AddIntMetric(kDisplayPanelHeightNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetDisplayPanelWidth(const int64_t value) {
+  AddIntMetric(kDisplayPanelWidthNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetStorageMmcManfid(const int64_t value) {
+  AddIntMetric(kStorageMmcManfidNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetStorageMmcHwrev(const int64_t value) {
+  AddIntMetric(kStorageMmcHwrevNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetStorageMmcOemid(const int64_t value) {
+  AddIntMetric(kStorageMmcOemidNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetStorageMmcPrv(const int64_t value) {
+  AddIntMetric(kStorageMmcPrvNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetStoragePciVendor(const int64_t value) {
+  AddIntMetric(kStoragePciVendorNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetStoragePciDevice(const int64_t value) {
+  AddIntMetric(kStoragePciDeviceNameHash, value);
+  return *this;
+}
+
+ComponentInfo& ComponentInfo::SetStoragePciClass(const int64_t value) {
+  AddIntMetric(kStoragePciClassNameHash, value);
+  return *this;
+}
+
+}  // namespace hardware_verifier
+
+namespace cellular {
+
+CellularConnectionAttempt::CellularConnectionAttempt() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+CellularConnectionAttempt::~CellularConnectionAttempt() = default;
+CellularConnectionAttempt& CellularConnectionAttempt::Setapn_id(const int64_t value) {
+  AddIntMetric(kapn_idNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setipv4_config_method(const int64_t value) {
+  AddIntMetric(kipv4_config_methodNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setipv6_config_method(const int64_t value) {
+  AddIntMetric(kipv6_config_methodNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setconnect_result(const int64_t value) {
+  AddIntMetric(kconnect_resultNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Sethome_mccmnc(const int64_t value) {
+  AddIntMetric(khome_mccmncNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setserving_mccmnc(const int64_t value) {
+  AddIntMetric(kserving_mccmncNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setroaming_state(const int64_t value) {
+  AddIntMetric(kroaming_stateNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setuse_attach_apn(const int64_t value) {
+  AddIntMetric(kuse_attach_apnNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setapn_source(const int64_t value) {
+  AddIntMetric(kapn_sourceNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Settech_used(const int64_t value) {
+  AddIntMetric(ktech_usedNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Seticcid_length(const int64_t value) {
+  AddIntMetric(kiccid_lengthNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setsim_type(const int64_t value) {
+  AddIntMetric(ksim_typeNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setmodem_state(const int64_t value) {
+  AddIntMetric(kmodem_stateNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setconnect_time(const int64_t value) {
+  AddIntMetric(kconnect_timeNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setscan_connect_time(const int64_t value) {
+  AddIntMetric(kscan_connect_timeNameHash, value);
+  return *this;
+}
+
+CellularConnectionAttempt& CellularConnectionAttempt::Setdetailed_error(const int64_t value) {
+  AddIntMetric(kdetailed_errorNameHash, value);
+  return *this;
+}
+
+ModemFwdFwInstallResult::ModemFwdFwInstallResult() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+ModemFwdFwInstallResult::~ModemFwdFwInstallResult() = default;
+ModemFwdFwInstallResult& ModemFwdFwInstallResult::Setfirmware_types(const int64_t value) {
+  AddIntMetric(kfirmware_typesNameHash, value);
+  return *this;
+}
+
+ModemFwdFwInstallResult& ModemFwdFwInstallResult::Setfw_install_result(const int64_t value) {
+  AddIntMetric(kfw_install_resultNameHash, value);
+  return *this;
+}
+
+}  // namespace cellular
+
+namespace rmad {
+
+ShimlessRmaReport::ShimlessRmaReport() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+ShimlessRmaReport::~ShimlessRmaReport() = default;
+ShimlessRmaReport& ShimlessRmaReport::SetOverallTime(const int64_t value) {
+  AddIntMetric(kOverallTimeNameHash, value);
+  return *this;
+}
+
+ShimlessRmaReport& ShimlessRmaReport::SetRunningTime(const int64_t value) {
+  AddIntMetric(kRunningTimeNameHash, value);
+  return *this;
+}
+
+ShimlessRmaReport& ShimlessRmaReport::SetIsComplete(const int64_t value) {
+  AddIntMetric(kIsCompleteNameHash, value);
+  return *this;
+}
+
+ShimlessRmaReport& ShimlessRmaReport::SetRoVerification(const int64_t value) {
+  AddIntMetric(kRoVerificationNameHash, value);
+  return *this;
+}
+
+ShimlessRmaReport& ShimlessRmaReport::SetReturningOwner(const int64_t value) {
+  AddIntMetric(kReturningOwnerNameHash, value);
+  return *this;
+}
+
+ShimlessRmaReport& ShimlessRmaReport::SetMainboardReplacement(const int64_t value) {
+  AddIntMetric(kMainboardReplacementNameHash, value);
+  return *this;
+}
+
+ShimlessRmaReport& ShimlessRmaReport::SetWriteProtectDisableMethod(const int64_t value) {
+  AddIntMetric(kWriteProtectDisableMethodNameHash, value);
+  return *this;
+}
+
+ReplacedComponent::ReplacedComponent() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+ReplacedComponent::~ReplacedComponent() = default;
+ReplacedComponent& ReplacedComponent::SetComponentCategory(const int64_t value) {
+  AddIntMetric(kComponentCategoryNameHash, value);
+  return *this;
+}
+
+OccurredError::OccurredError() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+OccurredError::~OccurredError() = default;
+OccurredError& OccurredError::SetErrorType(const int64_t value) {
+  AddIntMetric(kErrorTypeNameHash, value);
+  return *this;
+}
+
+AdditionalActivity::AdditionalActivity() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+AdditionalActivity::~AdditionalActivity() = default;
+AdditionalActivity& AdditionalActivity::SetActivityType(const int64_t value) {
+  AddIntMetric(kActivityTypeNameHash, value);
+  return *this;
+}
+
+}  // namespace rmad
+
+namespace wi_fi_chipset {
+
+WiFiChipsetInfo::WiFiChipsetInfo() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+WiFiChipsetInfo::~WiFiChipsetInfo() = default;
+WiFiChipsetInfo& WiFiChipsetInfo::SetEventVersion(const int64_t value) {
+  AddIntMetric(kEventVersionNameHash, value);
+  return *this;
+}
+
+WiFiChipsetInfo& WiFiChipsetInfo::SetVendorId(const int64_t value) {
+  AddIntMetric(kVendorIdNameHash, value);
+  return *this;
+}
+
+WiFiChipsetInfo& WiFiChipsetInfo::SetProductId(const int64_t value) {
+  AddIntMetric(kProductIdNameHash, value);
+  return *this;
+}
+
+WiFiChipsetInfo& WiFiChipsetInfo::SetSubsystemId(const int64_t value) {
+  AddIntMetric(kSubsystemIdNameHash, value);
+  return *this;
+}
+
+}  // namespace wi_fi_chipset
+
+namespace wi_fi_ap {
+
+WiFiAPInfo::WiFiAPInfo() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+WiFiAPInfo::~WiFiAPInfo() = default;
+WiFiAPInfo& WiFiAPInfo::SetEventVersion(const int64_t value) {
+  AddIntMetric(kEventVersionNameHash, value);
+  return *this;
+}
+
+WiFiAPInfo& WiFiAPInfo::SetAPOUI(const int64_t value) {
+  AddIntMetric(kAPOUINameHash, value);
+  return *this;
+}
+
+}  // namespace wi_fi_ap
+
+namespace wi_fi {
+
+WiFiAdapterStateChanged::WiFiAdapterStateChanged() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+WiFiAdapterStateChanged::~WiFiAdapterStateChanged() = default;
+WiFiAdapterStateChanged& WiFiAdapterStateChanged::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+WiFiAdapterStateChanged& WiFiAdapterStateChanged::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+WiFiAdapterStateChanged& WiFiAdapterStateChanged::SetEventVersion(const int64_t value) {
+  AddIntMetric(kEventVersionNameHash, value);
+  return *this;
+}
+
+WiFiAdapterStateChanged& WiFiAdapterStateChanged::SetAdapterState(const int64_t value) {
+  AddIntMetric(kAdapterStateNameHash, value);
+  return *this;
+}
+
+WiFiAdapterStateChanged& WiFiAdapterStateChanged::SetVendorId(const int64_t value) {
+  AddIntMetric(kVendorIdNameHash, value);
+  return *this;
+}
+
+WiFiAdapterStateChanged& WiFiAdapterStateChanged::SetProductId(const int64_t value) {
+  AddIntMetric(kProductIdNameHash, value);
+  return *this;
+}
+
+WiFiAdapterStateChanged& WiFiAdapterStateChanged::SetSubsystemId(const int64_t value) {
+  AddIntMetric(kSubsystemIdNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt::WiFiConnectionAttempt() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+WiFiConnectionAttempt::~WiFiConnectionAttempt() = default;
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetEventVersion(const int64_t value) {
+  AddIntMetric(kEventVersionNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetSessionTag(const int64_t value) {
+  AddIntMetric(kSessionTagNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAttemptType(const int64_t value) {
+  AddIntMetric(kAttemptTypeNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAPPhyMode(const int64_t value) {
+  AddIntMetric(kAPPhyModeNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAPSecurityMode(const int64_t value) {
+  AddIntMetric(kAPSecurityModeNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAPSecurityEAPInnerProtocol(const int64_t value) {
+  AddIntMetric(kAPSecurityEAPInnerProtocolNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAPSecurityEAPOuterProtocol(const int64_t value) {
+  AddIntMetric(kAPSecurityEAPOuterProtocolNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAPBand(const int64_t value) {
+  AddIntMetric(kAPBandNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAPChannel(const int64_t value) {
+  AddIntMetric(kAPChannelNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetRSSI(const int64_t value) {
+  AddIntMetric(kRSSINameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetSSID(const std::string& value) {
+  AddHmacMetric(kSSIDNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetSSIDProvisioningMode(const int64_t value) {
+  AddIntMetric(kSSIDProvisioningModeNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetSSIDHidden(const int64_t value) {
+  AddIntMetric(kSSIDHiddenNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetBSSID(const std::string& value) {
+  AddHmacMetric(kBSSIDNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAPOUI(const int64_t value) {
+  AddIntMetric(kAPOUINameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_80211krv_NLSSupport(const int64_t value) {
+  AddIntMetric(kAP_80211krv_NLSSupportNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_80211krv_OTA_FTSupport(const int64_t value) {
+  AddIntMetric(kAP_80211krv_OTA_FTSupportNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_80211krv_OTDS_FTSupport(const int64_t value) {
+  AddIntMetric(kAP_80211krv_OTDS_FTSupportNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_80211krv_DMSSupport(const int64_t value) {
+  AddIntMetric(kAP_80211krv_DMSSupportNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_80211krv_BSSMaxIdleSupport(const int64_t value) {
+  AddIntMetric(kAP_80211krv_BSSMaxIdleSupportNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_80211krv_BSSTMSupport(const int64_t value) {
+  AddIntMetric(kAP_80211krv_BSSTMSupportNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_HS20Support(const int64_t value) {
+  AddIntMetric(kAP_HS20SupportNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_HS20Version(const int64_t value) {
+  AddIntMetric(kAP_HS20VersionNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttempt& WiFiConnectionAttempt::SetAP_MBOSupport(const int64_t value) {
+  AddIntMetric(kAP_MBOSupportNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttemptResult::WiFiConnectionAttemptResult() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+WiFiConnectionAttemptResult::~WiFiConnectionAttemptResult() = default;
+WiFiConnectionAttemptResult& WiFiConnectionAttemptResult::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttemptResult& WiFiConnectionAttemptResult::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttemptResult& WiFiConnectionAttemptResult::SetEventVersion(const int64_t value) {
+  AddIntMetric(kEventVersionNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttemptResult& WiFiConnectionAttemptResult::SetSessionTag(const int64_t value) {
+  AddIntMetric(kSessionTagNameHash, value);
+  return *this;
+}
+
+WiFiConnectionAttemptResult& WiFiConnectionAttemptResult::SetResultCode(const int64_t value) {
+  AddIntMetric(kResultCodeNameHash, value);
+  return *this;
+}
+
+WiFiIPConnectivityStatus::WiFiIPConnectivityStatus() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+WiFiIPConnectivityStatus::~WiFiIPConnectivityStatus() = default;
+WiFiIPConnectivityStatus& WiFiIPConnectivityStatus::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+WiFiIPConnectivityStatus& WiFiIPConnectivityStatus::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+WiFiIPConnectivityStatus& WiFiIPConnectivityStatus::SetEventVersion(const int64_t value) {
+  AddIntMetric(kEventVersionNameHash, value);
+  return *this;
+}
+
+WiFiIPConnectivityStatus& WiFiIPConnectivityStatus::SetIPConnectivityStatus(const int64_t value) {
+  AddIntMetric(kIPConnectivityStatusNameHash, value);
+  return *this;
+}
+
+WiFiIPConnectivityStatus& WiFiIPConnectivityStatus::SetIPConnectivityType(const int64_t value) {
+  AddIntMetric(kIPConnectivityTypeNameHash, value);
+  return *this;
+}
+
+WiFiPortalDetectionStatus::WiFiPortalDetectionStatus() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+WiFiPortalDetectionStatus::~WiFiPortalDetectionStatus() = default;
+WiFiPortalDetectionStatus& WiFiPortalDetectionStatus::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+WiFiPortalDetectionStatus& WiFiPortalDetectionStatus::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+WiFiPortalDetectionStatus& WiFiPortalDetectionStatus::SetEventVersion(const int64_t value) {
+  AddIntMetric(kEventVersionNameHash, value);
+  return *this;
+}
+
+WiFiPortalDetectionStatus& WiFiPortalDetectionStatus::SetPortalDetectionStatus(const int64_t value) {
+  AddIntMetric(kPortalDetectionStatusNameHash, value);
+  return *this;
+}
+
+WiFiPortalDetectionStatus& WiFiPortalDetectionStatus::SetPortalDetectionMultiProbeResult(const int64_t value) {
+  AddIntMetric(kPortalDetectionMultiProbeResultNameHash, value);
+  return *this;
+}
+
+WiFiConnectionEnd::WiFiConnectionEnd() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+WiFiConnectionEnd::~WiFiConnectionEnd() = default;
+WiFiConnectionEnd& WiFiConnectionEnd::SetBootId(const std::string& value) {
+  AddHmacMetric(kBootIdNameHash, value);
+  return *this;
+}
+
+WiFiConnectionEnd& WiFiConnectionEnd::SetSystemTime(const int64_t value) {
+  AddIntMetric(kSystemTimeNameHash, value);
+  return *this;
+}
+
+WiFiConnectionEnd& WiFiConnectionEnd::SetEventVersion(const int64_t value) {
+  AddIntMetric(kEventVersionNameHash, value);
+  return *this;
+}
+
+WiFiConnectionEnd& WiFiConnectionEnd::SetSessionTag(const int64_t value) {
+  AddIntMetric(kSessionTagNameHash, value);
+  return *this;
+}
+
+WiFiConnectionEnd& WiFiConnectionEnd::SetDisconnectionType(const int64_t value) {
+  AddIntMetric(kDisconnectionTypeNameHash, value);
+  return *this;
+}
+
+WiFiConnectionEnd& WiFiConnectionEnd::SetDisconnectionReasonCode(const int64_t value) {
+  AddIntMetric(kDisconnectionReasonCodeNameHash, value);
+  return *this;
+}
+
+}  // namespace wi_fi
+
+namespace test_project_one {
+
+TestEventOne::TestEventOne() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+TestEventOne::~TestEventOne() = default;
+TestEventOne& TestEventOne::SetTestMetricOne(const std::string& value) {
+  AddHmacMetric(kTestMetricOneNameHash, value);
+  return *this;
+}
+
+TestEventOne& TestEventOne::SetTestMetricTwo(const int64_t value) {
+  AddIntMetric(kTestMetricTwoNameHash, value);
+  return *this;
+}
+
+TestEventTwo::TestEventTwo() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+TestEventTwo::~TestEventTwo() = default;
+TestEventTwo& TestEventTwo::SetTestMetricThree(const int64_t value) {
+  AddIntMetric(kTestMetricThreeNameHash, value);
+  return *this;
+}
+
+}  // namespace test_project_one
+
+namespace test_project_two {
+
+TestEventThree::TestEventThree() :
+  ::metrics::structured::EventBase(kEventNameHash, kProjectNameHash, kIdType, kEventType) {}
+TestEventThree::~TestEventThree() = default;
+TestEventThree& TestEventThree::SetTestMetricFour(const std::string& value) {
+  AddHmacMetric(kTestMetricFourNameHash, value);
+  return *this;
+}
+
+}  // namespace test_project_two
+
+
+}  // namespace events
+}  // namespace structured
+}  // namespace metrics
\ No newline at end of file
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/structured_events.h b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/structured_events.h
new file mode 100644
index 0000000..da2ed2f
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/structured/structured_events.h
@@ -0,0 +1,929 @@
+// Generated from gen_events.py. DO NOT EDIT!
+// source: structured.xml
+
+#ifndef METRICS_STRUCTURED_STRUCTURED_EVENTS_H
+#define METRICS_STRUCTURED_STRUCTURED_EVENTS_H
+
+#include <cstdint>
+#include <string>
+
+#include <brillo/brillo_export.h>
+
+#include "metrics/structured/event_base.h"
+
+namespace metrics {
+namespace structured {
+namespace events {
+
+constexpr uint64_t kProjectNameHashes[] = {UINT64_C(9074739597929991885), UINT64_C(11181229631788078243), UINT64_C(1745381000935843040), UINT64_C(8206859287963243715), UINT64_C(11294265225635075664), UINT64_C(16881314472396226433), UINT64_C(5876808001962504629), UINT64_C(4320592646346933548), UINT64_C(7302676440391025918), UINT64_C(4690103929823698613), UINT64_C(9675127341789951965)};
+
+namespace bluetooth {
+
+class BRILLO_EXPORT BluetoothAdapterStateChanged final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothAdapterStateChanged();
+  ~BluetoothAdapterStateChanged() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(959829856916771459);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9074739597929991885);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  BluetoothAdapterStateChanged& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  BluetoothAdapterStateChanged& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kIsFlossNameHash = UINT64_C(15868727231156599609);
+  BluetoothAdapterStateChanged& SetIsFloss(const int64_t value);
+
+  static constexpr uint64_t kAdapterStateNameHash = UINT64_C(12219887874367467564);
+  BluetoothAdapterStateChanged& SetAdapterState(const int64_t value);
+
+};
+
+class BRILLO_EXPORT BluetoothPairingStateChanged final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothPairingStateChanged();
+  ~BluetoothPairingStateChanged() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(11839023048095184048);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9074739597929991885);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  BluetoothPairingStateChanged& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  BluetoothPairingStateChanged& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kDeviceIdNameHash = UINT64_C(14998742047592455339);
+  BluetoothPairingStateChanged& SetDeviceId(const std::string& value);
+
+  static constexpr uint64_t kDeviceTypeNameHash = UINT64_C(7795620498098931292);
+  BluetoothPairingStateChanged& SetDeviceType(const int64_t value);
+
+  static constexpr uint64_t kPairingStateNameHash = UINT64_C(10324313318937084101);
+  BluetoothPairingStateChanged& SetPairingState(const int64_t value);
+
+};
+
+class BRILLO_EXPORT BluetoothAclConnectionStateChanged final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothAclConnectionStateChanged();
+  ~BluetoothAclConnectionStateChanged() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(1880220404408566268);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9074739597929991885);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  BluetoothAclConnectionStateChanged& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  BluetoothAclConnectionStateChanged& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kIsFlossNameHash = UINT64_C(15868727231156599609);
+  BluetoothAclConnectionStateChanged& SetIsFloss(const int64_t value);
+
+  static constexpr uint64_t kDeviceIdNameHash = UINT64_C(14998742047592455339);
+  BluetoothAclConnectionStateChanged& SetDeviceId(const std::string& value);
+
+  static constexpr uint64_t kDeviceTypeNameHash = UINT64_C(7795620498098931292);
+  BluetoothAclConnectionStateChanged& SetDeviceType(const int64_t value);
+
+  static constexpr uint64_t kConnectionDirectionNameHash = UINT64_C(10325946006427534911);
+  BluetoothAclConnectionStateChanged& SetConnectionDirection(const int64_t value);
+
+  static constexpr uint64_t kConnectionInitiatorNameHash = UINT64_C(3855198013004374807);
+  BluetoothAclConnectionStateChanged& SetConnectionInitiator(const int64_t value);
+
+  static constexpr uint64_t kStateChangeTypeNameHash = UINT64_C(7769237458221075087);
+  BluetoothAclConnectionStateChanged& SetStateChangeType(const int64_t value);
+
+  static constexpr uint64_t kAclConnectionStateNameHash = UINT64_C(927065894624438386);
+  BluetoothAclConnectionStateChanged& SetAclConnectionState(const int64_t value);
+
+};
+
+class BRILLO_EXPORT BluetoothProfileConnectionStateChanged final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothProfileConnectionStateChanged();
+  ~BluetoothProfileConnectionStateChanged() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(7217682640379679663);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9074739597929991885);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  BluetoothProfileConnectionStateChanged& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  BluetoothProfileConnectionStateChanged& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kDeviceIdNameHash = UINT64_C(14998742047592455339);
+  BluetoothProfileConnectionStateChanged& SetDeviceId(const std::string& value);
+
+  static constexpr uint64_t kStateChangeTypeNameHash = UINT64_C(7769237458221075087);
+  BluetoothProfileConnectionStateChanged& SetStateChangeType(const int64_t value);
+
+  static constexpr uint64_t kProfileNameHash = UINT64_C(14765504761742342519);
+  BluetoothProfileConnectionStateChanged& SetProfile(const int64_t value);
+
+  static constexpr uint64_t kProfileConnectionStateNameHash = UINT64_C(3087232370221097682);
+  BluetoothProfileConnectionStateChanged& SetProfileConnectionState(const int64_t value);
+
+};
+
+class BRILLO_EXPORT BluetoothDeviceInfoReport final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothDeviceInfoReport();
+  ~BluetoothDeviceInfoReport() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(1506471670382892394);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9074739597929991885);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  BluetoothDeviceInfoReport& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  BluetoothDeviceInfoReport& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kDeviceIdNameHash = UINT64_C(14998742047592455339);
+  BluetoothDeviceInfoReport& SetDeviceId(const std::string& value);
+
+  static constexpr uint64_t kDeviceTypeNameHash = UINT64_C(7795620498098931292);
+  BluetoothDeviceInfoReport& SetDeviceType(const int64_t value);
+
+  static constexpr uint64_t kDeviceClassNameHash = UINT64_C(4411699667986879574);
+  BluetoothDeviceInfoReport& SetDeviceClass(const int64_t value);
+
+  static constexpr uint64_t kDeviceCategoryNameHash = UINT64_C(9022598035322877834);
+  BluetoothDeviceInfoReport& SetDeviceCategory(const int64_t value);
+
+  static constexpr uint64_t kVendorIdNameHash = UINT64_C(7982341394845147735);
+  BluetoothDeviceInfoReport& SetVendorId(const int64_t value);
+
+  static constexpr uint64_t kVendorIdSourceNameHash = UINT64_C(11271343156353958088);
+  BluetoothDeviceInfoReport& SetVendorIdSource(const int64_t value);
+
+  static constexpr uint64_t kProductIdNameHash = UINT64_C(3765840483194334735);
+  BluetoothDeviceInfoReport& SetProductId(const int64_t value);
+
+  static constexpr uint64_t kProductVersionNameHash = UINT64_C(13046660159880260301);
+  BluetoothDeviceInfoReport& SetProductVersion(const int64_t value);
+
+};
+
+class BRILLO_EXPORT BluetoothAudioQualityReport final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothAudioQualityReport();
+  ~BluetoothAudioQualityReport() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(1658296165039992926);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9074739597929991885);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  BluetoothAudioQualityReport& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  BluetoothAudioQualityReport& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kDeviceIdNameHash = UINT64_C(14998742047592455339);
+  BluetoothAudioQualityReport& SetDeviceId(const std::string& value);
+
+  static constexpr uint64_t kProfileNameHash = UINT64_C(14765504761742342519);
+  BluetoothAudioQualityReport& SetProfile(const int64_t value);
+
+  static constexpr uint64_t kQualityTypeNameHash = UINT64_C(17628057088911476486);
+  BluetoothAudioQualityReport& SetQualityType(const int64_t value);
+
+  static constexpr uint64_t kAverageNameHash = UINT64_C(12792884953155676512);
+  BluetoothAudioQualityReport& SetAverage(const int64_t value);
+
+  static constexpr uint64_t kStdDevNameHash = UINT64_C(5713238848873808269);
+  BluetoothAudioQualityReport& SetStdDev(const int64_t value);
+
+  static constexpr uint64_t kPercentile95NameHash = UINT64_C(18351270367364284124);
+  BluetoothAudioQualityReport& SetPercentile95(const int64_t value);
+
+};
+
+class BRILLO_EXPORT BluetoothChipsetInfoReport final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothChipsetInfoReport();
+  ~BluetoothChipsetInfoReport() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(16129006935014876138);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9074739597929991885);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  BluetoothChipsetInfoReport& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kVendorIdNameHash = UINT64_C(7982341394845147735);
+  BluetoothChipsetInfoReport& SetVendorId(const int64_t value);
+
+  static constexpr uint64_t kProductIdNameHash = UINT64_C(3765840483194334735);
+  BluetoothChipsetInfoReport& SetProductId(const int64_t value);
+
+  static constexpr uint64_t kTransportNameHash = UINT64_C(17721880626079387512);
+  BluetoothChipsetInfoReport& SetTransport(const int64_t value);
+
+  static constexpr uint64_t kChipsetStringHashValueNameHash = UINT64_C(5567784120503214630);
+  BluetoothChipsetInfoReport& SetChipsetStringHashValue(const int64_t value);
+
+};
+
+}  // namespace bluetooth
+
+namespace bluetooth_device {
+
+class BRILLO_EXPORT BluetoothDeviceInfo final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothDeviceInfo();
+  ~BluetoothDeviceInfo() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(2982383022172587778);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(1745381000935843040);
+  static constexpr IdType kIdType = IdType::kUnidentified;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kDeviceTypeNameHash = UINT64_C(7795620498098931292);
+  BluetoothDeviceInfo& SetDeviceType(const int64_t value);
+
+  static constexpr uint64_t kDeviceClassNameHash = UINT64_C(4411699667986879574);
+  BluetoothDeviceInfo& SetDeviceClass(const int64_t value);
+
+  static constexpr uint64_t kDeviceCategoryNameHash = UINT64_C(9022598035322877834);
+  BluetoothDeviceInfo& SetDeviceCategory(const int64_t value);
+
+  static constexpr uint64_t kVendorIdNameHash = UINT64_C(7982341394845147735);
+  BluetoothDeviceInfo& SetVendorId(const int64_t value);
+
+  static constexpr uint64_t kVendorIdSourceNameHash = UINT64_C(11271343156353958088);
+  BluetoothDeviceInfo& SetVendorIdSource(const int64_t value);
+
+  static constexpr uint64_t kProductIdNameHash = UINT64_C(3765840483194334735);
+  BluetoothDeviceInfo& SetProductId(const int64_t value);
+
+  static constexpr uint64_t kProductVersionNameHash = UINT64_C(13046660159880260301);
+  BluetoothDeviceInfo& SetProductVersion(const int64_t value);
+
+};
+
+}  // namespace bluetooth_device
+
+namespace bluetooth_chipset {
+
+class BRILLO_EXPORT BluetoothChipsetInfo final : public ::metrics::structured::EventBase {
+ public:
+  BluetoothChipsetInfo();
+  ~BluetoothChipsetInfo() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(15863163262883578450);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(11181229631788078243);
+  static constexpr IdType kIdType = IdType::kUnidentified;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_RAW_STRING;
+
+  static constexpr uint64_t kVendorIdNameHash = UINT64_C(7982341394845147735);
+  BluetoothChipsetInfo& SetVendorId(const int64_t value);
+
+  static constexpr uint64_t kProductIdNameHash = UINT64_C(3765840483194334735);
+  BluetoothChipsetInfo& SetProductId(const int64_t value);
+
+  static constexpr uint64_t kTransportNameHash = UINT64_C(17721880626079387512);
+  BluetoothChipsetInfo& SetTransport(const int64_t value);
+
+  static constexpr uint64_t kChipsetStringNameHash = UINT64_C(16660529255980526929);
+  BluetoothChipsetInfo& SetChipsetString(const std::string& value);
+
+};
+
+}  // namespace bluetooth_chipset
+
+namespace hardware_verifier {
+
+class BRILLO_EXPORT HwVerificationReport final : public ::metrics::structured::EventBase {
+ public:
+  HwVerificationReport();
+  ~HwVerificationReport() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(2834323400914921560);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(11294265225635075664);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kIsCompliantNameHash = UINT64_C(12836332056303855230);
+  HwVerificationReport& SetIsCompliant(const int64_t value);
+
+  static constexpr uint64_t kQualificationStatusDisplayPanelNameHash = UINT64_C(14807089032170983128);
+  HwVerificationReport& SetQualificationStatusDisplayPanel(const int64_t value);
+
+  static constexpr uint64_t kQualificationStatusStorageNameHash = UINT64_C(6061898696972760018);
+  HwVerificationReport& SetQualificationStatusStorage(const int64_t value);
+
+};
+
+class BRILLO_EXPORT ComponentInfo final : public ::metrics::structured::EventBase {
+ public:
+  ComponentInfo();
+  ~ComponentInfo() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(7901409434669589766);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(11294265225635075664);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kComponentCategoryNameHash = UINT64_C(6840617904732463222);
+  ComponentInfo& SetComponentCategory(const int64_t value);
+
+  static constexpr uint64_t kDisplayPanelVendorNameHash = UINT64_C(6647879576829928130);
+  ComponentInfo& SetDisplayPanelVendor(const int64_t value);
+
+  static constexpr uint64_t kDisplayPanelProductIdNameHash = UINT64_C(4333866374950481047);
+  ComponentInfo& SetDisplayPanelProductId(const int64_t value);
+
+  static constexpr uint64_t kDisplayPanelHeightNameHash = UINT64_C(5381484897643542489);
+  ComponentInfo& SetDisplayPanelHeight(const int64_t value);
+
+  static constexpr uint64_t kDisplayPanelWidthNameHash = UINT64_C(2683133854057537060);
+  ComponentInfo& SetDisplayPanelWidth(const int64_t value);
+
+  static constexpr uint64_t kStorageMmcManfidNameHash = UINT64_C(3658527411330783922);
+  ComponentInfo& SetStorageMmcManfid(const int64_t value);
+
+  static constexpr uint64_t kStorageMmcHwrevNameHash = UINT64_C(9255816344494856668);
+  ComponentInfo& SetStorageMmcHwrev(const int64_t value);
+
+  static constexpr uint64_t kStorageMmcOemidNameHash = UINT64_C(15487174416604640309);
+  ComponentInfo& SetStorageMmcOemid(const int64_t value);
+
+  static constexpr uint64_t kStorageMmcPrvNameHash = UINT64_C(6362008749797374891);
+  ComponentInfo& SetStorageMmcPrv(const int64_t value);
+
+  static constexpr uint64_t kStoragePciVendorNameHash = UINT64_C(15576586824452424376);
+  ComponentInfo& SetStoragePciVendor(const int64_t value);
+
+  static constexpr uint64_t kStoragePciDeviceNameHash = UINT64_C(5646923230218809814);
+  ComponentInfo& SetStoragePciDevice(const int64_t value);
+
+  static constexpr uint64_t kStoragePciClassNameHash = UINT64_C(15622462130487462637);
+  ComponentInfo& SetStoragePciClass(const int64_t value);
+
+};
+
+}  // namespace hardware_verifier
+
+namespace cellular {
+
+class BRILLO_EXPORT CellularConnectionAttempt final : public ::metrics::structured::EventBase {
+ public:
+  CellularConnectionAttempt();
+  ~CellularConnectionAttempt() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(9565573741214161702);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(8206859287963243715);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kapn_idNameHash = UINT64_C(16969126494759758697);
+  CellularConnectionAttempt& Setapn_id(const int64_t value);
+
+  static constexpr uint64_t kipv4_config_methodNameHash = UINT64_C(9076171686243363883);
+  CellularConnectionAttempt& Setipv4_config_method(const int64_t value);
+
+  static constexpr uint64_t kipv6_config_methodNameHash = UINT64_C(1716075125711039121);
+  CellularConnectionAttempt& Setipv6_config_method(const int64_t value);
+
+  static constexpr uint64_t kconnect_resultNameHash = UINT64_C(15598723620146594619);
+  CellularConnectionAttempt& Setconnect_result(const int64_t value);
+
+  static constexpr uint64_t khome_mccmncNameHash = UINT64_C(37695558241520739);
+  CellularConnectionAttempt& Sethome_mccmnc(const int64_t value);
+
+  static constexpr uint64_t kserving_mccmncNameHash = UINT64_C(12771439443288387275);
+  CellularConnectionAttempt& Setserving_mccmnc(const int64_t value);
+
+  static constexpr uint64_t kroaming_stateNameHash = UINT64_C(532797944946872246);
+  CellularConnectionAttempt& Setroaming_state(const int64_t value);
+
+  static constexpr uint64_t kuse_attach_apnNameHash = UINT64_C(9693172311959236696);
+  CellularConnectionAttempt& Setuse_attach_apn(const int64_t value);
+
+  static constexpr uint64_t kapn_sourceNameHash = UINT64_C(17270104400182726796);
+  CellularConnectionAttempt& Setapn_source(const int64_t value);
+
+  static constexpr uint64_t ktech_usedNameHash = UINT64_C(16667945462103010669);
+  CellularConnectionAttempt& Settech_used(const int64_t value);
+
+  static constexpr uint64_t kiccid_lengthNameHash = UINT64_C(5784223339536231838);
+  CellularConnectionAttempt& Seticcid_length(const int64_t value);
+
+  static constexpr uint64_t ksim_typeNameHash = UINT64_C(5174493250357414186);
+  CellularConnectionAttempt& Setsim_type(const int64_t value);
+
+  static constexpr uint64_t kmodem_stateNameHash = UINT64_C(17447318209902125520);
+  CellularConnectionAttempt& Setmodem_state(const int64_t value);
+
+  static constexpr uint64_t kconnect_timeNameHash = UINT64_C(15404119718930226429);
+  CellularConnectionAttempt& Setconnect_time(const int64_t value);
+
+  static constexpr uint64_t kscan_connect_timeNameHash = UINT64_C(1148666456833482689);
+  CellularConnectionAttempt& Setscan_connect_time(const int64_t value);
+
+  static constexpr uint64_t kdetailed_errorNameHash = UINT64_C(1755108877035597562);
+  CellularConnectionAttempt& Setdetailed_error(const int64_t value);
+
+};
+
+class BRILLO_EXPORT ModemFwdFwInstallResult final : public ::metrics::structured::EventBase {
+ public:
+  ModemFwdFwInstallResult();
+  ~ModemFwdFwInstallResult() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(14156919410880982639);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(8206859287963243715);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kfirmware_typesNameHash = UINT64_C(9912504727039983873);
+  ModemFwdFwInstallResult& Setfirmware_types(const int64_t value);
+
+  static constexpr uint64_t kfw_install_resultNameHash = UINT64_C(10120023257186796185);
+  ModemFwdFwInstallResult& Setfw_install_result(const int64_t value);
+
+};
+
+}  // namespace cellular
+
+namespace rmad {
+
+class BRILLO_EXPORT ShimlessRmaReport final : public ::metrics::structured::EventBase {
+ public:
+  ShimlessRmaReport();
+  ~ShimlessRmaReport() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(16290457139838424490);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9675127341789951965);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kOverallTimeNameHash = UINT64_C(9999132872938351554);
+  ShimlessRmaReport& SetOverallTime(const int64_t value);
+
+  static constexpr uint64_t kRunningTimeNameHash = UINT64_C(4417369112820092838);
+  ShimlessRmaReport& SetRunningTime(const int64_t value);
+
+  static constexpr uint64_t kIsCompleteNameHash = UINT64_C(13430706429255306620);
+  ShimlessRmaReport& SetIsComplete(const int64_t value);
+
+  static constexpr uint64_t kRoVerificationNameHash = UINT64_C(18221210148763351576);
+  ShimlessRmaReport& SetRoVerification(const int64_t value);
+
+  static constexpr uint64_t kReturningOwnerNameHash = UINT64_C(12951406561128878647);
+  ShimlessRmaReport& SetReturningOwner(const int64_t value);
+
+  static constexpr uint64_t kMainboardReplacementNameHash = UINT64_C(9805118565725983617);
+  ShimlessRmaReport& SetMainboardReplacement(const int64_t value);
+
+  static constexpr uint64_t kWriteProtectDisableMethodNameHash = UINT64_C(3945735952585306939);
+  ShimlessRmaReport& SetWriteProtectDisableMethod(const int64_t value);
+
+};
+
+class BRILLO_EXPORT ReplacedComponent final : public ::metrics::structured::EventBase {
+ public:
+  ReplacedComponent();
+  ~ReplacedComponent() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(18142902924169883861);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9675127341789951965);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kComponentCategoryNameHash = UINT64_C(6840617904732463222);
+  ReplacedComponent& SetComponentCategory(const int64_t value);
+
+};
+
+class BRILLO_EXPORT OccurredError final : public ::metrics::structured::EventBase {
+ public:
+  OccurredError();
+  ~OccurredError() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(11339814705699381436);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9675127341789951965);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kErrorTypeNameHash = UINT64_C(9540451424322945387);
+  OccurredError& SetErrorType(const int64_t value);
+
+};
+
+class BRILLO_EXPORT AdditionalActivity final : public ::metrics::structured::EventBase {
+ public:
+  AdditionalActivity();
+  ~AdditionalActivity() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(2928394770253852778);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(9675127341789951965);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kActivityTypeNameHash = UINT64_C(3974259668746749924);
+  AdditionalActivity& SetActivityType(const int64_t value);
+
+};
+
+}  // namespace rmad
+
+namespace wi_fi_chipset {
+
+class BRILLO_EXPORT WiFiChipsetInfo final : public ::metrics::structured::EventBase {
+ public:
+  WiFiChipsetInfo();
+  ~WiFiChipsetInfo() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(8949599978721997824);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(4690103929823698613);
+  static constexpr IdType kIdType = IdType::kUnidentified;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kEventVersionNameHash = UINT64_C(16640453375065674525);
+  WiFiChipsetInfo& SetEventVersion(const int64_t value);
+
+  static constexpr uint64_t kVendorIdNameHash = UINT64_C(7982341394845147735);
+  WiFiChipsetInfo& SetVendorId(const int64_t value);
+
+  static constexpr uint64_t kProductIdNameHash = UINT64_C(3765840483194334735);
+  WiFiChipsetInfo& SetProductId(const int64_t value);
+
+  static constexpr uint64_t kSubsystemIdNameHash = UINT64_C(1787939335700279301);
+  WiFiChipsetInfo& SetSubsystemId(const int64_t value);
+
+};
+
+}  // namespace wi_fi_chipset
+
+namespace wi_fi_ap {
+
+class BRILLO_EXPORT WiFiAPInfo final : public ::metrics::structured::EventBase {
+ public:
+  WiFiAPInfo();
+  ~WiFiAPInfo() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(3203698821781850467);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(7302676440391025918);
+  static constexpr IdType kIdType = IdType::kUnidentified;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kEventVersionNameHash = UINT64_C(16640453375065674525);
+  WiFiAPInfo& SetEventVersion(const int64_t value);
+
+  static constexpr uint64_t kAPOUINameHash = UINT64_C(17648906605096151474);
+  WiFiAPInfo& SetAPOUI(const int64_t value);
+
+};
+
+}  // namespace wi_fi_ap
+
+namespace wi_fi {
+
+class BRILLO_EXPORT WiFiAdapterStateChanged final : public ::metrics::structured::EventBase {
+ public:
+  WiFiAdapterStateChanged();
+  ~WiFiAdapterStateChanged() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(712395881256357385);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(4320592646346933548);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  WiFiAdapterStateChanged& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  WiFiAdapterStateChanged& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kEventVersionNameHash = UINT64_C(16640453375065674525);
+  WiFiAdapterStateChanged& SetEventVersion(const int64_t value);
+
+  static constexpr uint64_t kAdapterStateNameHash = UINT64_C(12219887874367467564);
+  WiFiAdapterStateChanged& SetAdapterState(const int64_t value);
+
+  static constexpr uint64_t kVendorIdNameHash = UINT64_C(7982341394845147735);
+  WiFiAdapterStateChanged& SetVendorId(const int64_t value);
+
+  static constexpr uint64_t kProductIdNameHash = UINT64_C(3765840483194334735);
+  WiFiAdapterStateChanged& SetProductId(const int64_t value);
+
+  static constexpr uint64_t kSubsystemIdNameHash = UINT64_C(1787939335700279301);
+  WiFiAdapterStateChanged& SetSubsystemId(const int64_t value);
+
+};
+
+class BRILLO_EXPORT WiFiConnectionAttempt final : public ::metrics::structured::EventBase {
+ public:
+  WiFiConnectionAttempt();
+  ~WiFiConnectionAttempt() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(1666654794282642243);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(4320592646346933548);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  WiFiConnectionAttempt& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  WiFiConnectionAttempt& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kEventVersionNameHash = UINT64_C(16640453375065674525);
+  WiFiConnectionAttempt& SetEventVersion(const int64_t value);
+
+  static constexpr uint64_t kSessionTagNameHash = UINT64_C(17993910024827537162);
+  WiFiConnectionAttempt& SetSessionTag(const int64_t value);
+
+  static constexpr uint64_t kAttemptTypeNameHash = UINT64_C(1076825646773901714);
+  WiFiConnectionAttempt& SetAttemptType(const int64_t value);
+
+  static constexpr uint64_t kAPPhyModeNameHash = UINT64_C(10624366125648376523);
+  WiFiConnectionAttempt& SetAPPhyMode(const int64_t value);
+
+  static constexpr uint64_t kAPSecurityModeNameHash = UINT64_C(5344296387346893171);
+  WiFiConnectionAttempt& SetAPSecurityMode(const int64_t value);
+
+  static constexpr uint64_t kAPSecurityEAPInnerProtocolNameHash = UINT64_C(12558771549648493785);
+  WiFiConnectionAttempt& SetAPSecurityEAPInnerProtocol(const int64_t value);
+
+  static constexpr uint64_t kAPSecurityEAPOuterProtocolNameHash = UINT64_C(13976314105449930700);
+  WiFiConnectionAttempt& SetAPSecurityEAPOuterProtocol(const int64_t value);
+
+  static constexpr uint64_t kAPBandNameHash = UINT64_C(15945507885291025263);
+  WiFiConnectionAttempt& SetAPBand(const int64_t value);
+
+  static constexpr uint64_t kAPChannelNameHash = UINT64_C(9443718677209127399);
+  WiFiConnectionAttempt& SetAPChannel(const int64_t value);
+
+  static constexpr uint64_t kRSSINameHash = UINT64_C(7508615291271386745);
+  WiFiConnectionAttempt& SetRSSI(const int64_t value);
+
+  static constexpr uint64_t kSSIDNameHash = UINT64_C(939519157834106403);
+  WiFiConnectionAttempt& SetSSID(const std::string& value);
+
+  static constexpr uint64_t kSSIDProvisioningModeNameHash = UINT64_C(1488851835668942072);
+  WiFiConnectionAttempt& SetSSIDProvisioningMode(const int64_t value);
+
+  static constexpr uint64_t kSSIDHiddenNameHash = UINT64_C(1065718776176264714);
+  WiFiConnectionAttempt& SetSSIDHidden(const int64_t value);
+
+  static constexpr uint64_t kBSSIDNameHash = UINT64_C(5670702108860320605);
+  WiFiConnectionAttempt& SetBSSID(const std::string& value);
+
+  static constexpr uint64_t kAPOUINameHash = UINT64_C(17648906605096151474);
+  WiFiConnectionAttempt& SetAPOUI(const int64_t value);
+
+  static constexpr uint64_t kAP_80211krv_NLSSupportNameHash = UINT64_C(2466001655202338830);
+  WiFiConnectionAttempt& SetAP_80211krv_NLSSupport(const int64_t value);
+
+  static constexpr uint64_t kAP_80211krv_OTA_FTSupportNameHash = UINT64_C(3766376923419614227);
+  WiFiConnectionAttempt& SetAP_80211krv_OTA_FTSupport(const int64_t value);
+
+  static constexpr uint64_t kAP_80211krv_OTDS_FTSupportNameHash = UINT64_C(17226534418478032240);
+  WiFiConnectionAttempt& SetAP_80211krv_OTDS_FTSupport(const int64_t value);
+
+  static constexpr uint64_t kAP_80211krv_DMSSupportNameHash = UINT64_C(264625629166588074);
+  WiFiConnectionAttempt& SetAP_80211krv_DMSSupport(const int64_t value);
+
+  static constexpr uint64_t kAP_80211krv_BSSMaxIdleSupportNameHash = UINT64_C(10384705939500767290);
+  WiFiConnectionAttempt& SetAP_80211krv_BSSMaxIdleSupport(const int64_t value);
+
+  static constexpr uint64_t kAP_80211krv_BSSTMSupportNameHash = UINT64_C(11108539677176483011);
+  WiFiConnectionAttempt& SetAP_80211krv_BSSTMSupport(const int64_t value);
+
+  static constexpr uint64_t kAP_HS20SupportNameHash = UINT64_C(17650250833285491950);
+  WiFiConnectionAttempt& SetAP_HS20Support(const int64_t value);
+
+  static constexpr uint64_t kAP_HS20VersionNameHash = UINT64_C(15412572593867193316);
+  WiFiConnectionAttempt& SetAP_HS20Version(const int64_t value);
+
+  static constexpr uint64_t kAP_MBOSupportNameHash = UINT64_C(2357877664271108867);
+  WiFiConnectionAttempt& SetAP_MBOSupport(const int64_t value);
+
+};
+
+class BRILLO_EXPORT WiFiConnectionAttemptResult final : public ::metrics::structured::EventBase {
+ public:
+  WiFiConnectionAttemptResult();
+  ~WiFiConnectionAttemptResult() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(11158508809305650629);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(4320592646346933548);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  WiFiConnectionAttemptResult& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  WiFiConnectionAttemptResult& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kEventVersionNameHash = UINT64_C(16640453375065674525);
+  WiFiConnectionAttemptResult& SetEventVersion(const int64_t value);
+
+  static constexpr uint64_t kSessionTagNameHash = UINT64_C(17993910024827537162);
+  WiFiConnectionAttemptResult& SetSessionTag(const int64_t value);
+
+  static constexpr uint64_t kResultCodeNameHash = UINT64_C(16006853255194879345);
+  WiFiConnectionAttemptResult& SetResultCode(const int64_t value);
+
+};
+
+class BRILLO_EXPORT WiFiIPConnectivityStatus final : public ::metrics::structured::EventBase {
+ public:
+  WiFiIPConnectivityStatus();
+  ~WiFiIPConnectivityStatus() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(8628520796612200324);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(4320592646346933548);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  WiFiIPConnectivityStatus& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  WiFiIPConnectivityStatus& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kEventVersionNameHash = UINT64_C(16640453375065674525);
+  WiFiIPConnectivityStatus& SetEventVersion(const int64_t value);
+
+  static constexpr uint64_t kIPConnectivityStatusNameHash = UINT64_C(9272595525244154652);
+  WiFiIPConnectivityStatus& SetIPConnectivityStatus(const int64_t value);
+
+  static constexpr uint64_t kIPConnectivityTypeNameHash = UINT64_C(9400292009307729378);
+  WiFiIPConnectivityStatus& SetIPConnectivityType(const int64_t value);
+
+};
+
+class BRILLO_EXPORT WiFiPortalDetectionStatus final : public ::metrics::structured::EventBase {
+ public:
+  WiFiPortalDetectionStatus();
+  ~WiFiPortalDetectionStatus() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(1477634351488400735);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(4320592646346933548);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  WiFiPortalDetectionStatus& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  WiFiPortalDetectionStatus& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kEventVersionNameHash = UINT64_C(16640453375065674525);
+  WiFiPortalDetectionStatus& SetEventVersion(const int64_t value);
+
+  static constexpr uint64_t kPortalDetectionStatusNameHash = UINT64_C(3858682471204091838);
+  WiFiPortalDetectionStatus& SetPortalDetectionStatus(const int64_t value);
+
+  static constexpr uint64_t kPortalDetectionMultiProbeResultNameHash = UINT64_C(3104044316304720986);
+  WiFiPortalDetectionStatus& SetPortalDetectionMultiProbeResult(const int64_t value);
+
+};
+
+class BRILLO_EXPORT WiFiConnectionEnd final : public ::metrics::structured::EventBase {
+ public:
+  WiFiConnectionEnd();
+  ~WiFiConnectionEnd() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(16118400771523474582);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(4320592646346933548);
+  static constexpr IdType kIdType = IdType::kProjectId;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kBootIdNameHash = UINT64_C(9983133050293312198);
+  WiFiConnectionEnd& SetBootId(const std::string& value);
+
+  static constexpr uint64_t kSystemTimeNameHash = UINT64_C(5430963162341175395);
+  WiFiConnectionEnd& SetSystemTime(const int64_t value);
+
+  static constexpr uint64_t kEventVersionNameHash = UINT64_C(16640453375065674525);
+  WiFiConnectionEnd& SetEventVersion(const int64_t value);
+
+  static constexpr uint64_t kSessionTagNameHash = UINT64_C(17993910024827537162);
+  WiFiConnectionEnd& SetSessionTag(const int64_t value);
+
+  static constexpr uint64_t kDisconnectionTypeNameHash = UINT64_C(5489713198643466610);
+  WiFiConnectionEnd& SetDisconnectionType(const int64_t value);
+
+  static constexpr uint64_t kDisconnectionReasonCodeNameHash = UINT64_C(10425992208290386059);
+  WiFiConnectionEnd& SetDisconnectionReasonCode(const int64_t value);
+
+};
+
+}  // namespace wi_fi
+
+namespace test_project_one {
+
+class BRILLO_EXPORT TestEventOne final : public ::metrics::structured::EventBase {
+ public:
+  TestEventOne();
+  ~TestEventOne() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(16542188217976373364);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(16881314472396226433);
+  static constexpr IdType kIdType = IdType::kUnidentified;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kTestMetricOneNameHash = UINT64_C(637929385654885975);
+  TestEventOne& SetTestMetricOne(const std::string& value);
+
+  static constexpr uint64_t kTestMetricTwoNameHash = UINT64_C(14083999144141567134);
+  TestEventOne& SetTestMetricTwo(const int64_t value);
+
+};
+
+class BRILLO_EXPORT TestEventTwo final : public ::metrics::structured::EventBase {
+ public:
+  TestEventTwo();
+  ~TestEventTwo() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(13768178553954802986);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(16881314472396226433);
+  static constexpr IdType kIdType = IdType::kUnidentified;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kTestMetricThreeNameHash = UINT64_C(13469300759843809564);
+  TestEventTwo& SetTestMetricThree(const int64_t value);
+
+};
+
+}  // namespace test_project_one
+
+namespace test_project_two {
+
+class BRILLO_EXPORT TestEventThree final : public ::metrics::structured::EventBase {
+ public:
+  TestEventThree();
+  ~TestEventThree() override;
+
+  static constexpr uint64_t kEventNameHash = UINT64_C(18051195235939111613);
+  static constexpr uint64_t kProjectNameHash = UINT64_C(5876808001962504629);
+  static constexpr IdType kIdType = IdType::kUnidentified;
+  static constexpr StructuredEventProto_EventType kEventType =
+    StructuredEventProto_EventType_REGULAR;
+
+  static constexpr uint64_t kTestMetricFourNameHash = UINT64_C(2917855408523247722);
+  TestEventThree& SetTestMetricFour(const std::string& value);
+
+};
+
+}  // namespace test_project_two
+
+
+
+}  // namespace events
+}  // namespace structured
+}  // namespace metrics
+
+#endif  // METRICS_STRUCTURED_STRUCTURED_EVENTS_H
\ No newline at end of file
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/chrome_user_metrics_extension.pb.cc b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/chrome_user_metrics_extension.pb.cc
new file mode 100644
index 0000000..79a197a
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/chrome_user_metrics_extension.pb.cc
@@ -0,0 +1,473 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: chrome_user_metrics_extension.proto
+
+#include "chrome_user_metrics_extension.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_histogram_5fevent_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_HistogramEventProto_histogram_5fevent_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<10> scc_info_SystemProfileProto_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_user_5faction_5fevent_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UserActionEventProto_user_5faction_5fevent_2eproto;
+namespace metrics {
+class ChromeUserMetricsExtensionDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<ChromeUserMetricsExtension> _instance;
+} _ChromeUserMetricsExtension_default_instance_;
+}  // namespace metrics
+static void InitDefaultsscc_info_ChromeUserMetricsExtension_chrome_5fuser_5fmetrics_5fextension_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_ChromeUserMetricsExtension_default_instance_;
+    new (ptr) ::metrics::ChromeUserMetricsExtension();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::ChromeUserMetricsExtension::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_ChromeUserMetricsExtension_chrome_5fuser_5fmetrics_5fextension_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, 0, InitDefaultsscc_info_ChromeUserMetricsExtension_chrome_5fuser_5fmetrics_5fextension_2eproto}, {
+      &scc_info_SystemProfileProto_system_5fprofile_2eproto.base,
+      &scc_info_UserActionEventProto_user_5faction_5fevent_2eproto.base,
+      &scc_info_HistogramEventProto_histogram_5fevent_2eproto.base,}};
+
+namespace metrics {
+bool ChromeUserMetricsExtension_Product_IsValid(int value) {
+  switch (value) {
+    case 0:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> ChromeUserMetricsExtension_Product_strings[1] = {};
+
+static const char ChromeUserMetricsExtension_Product_names[] =
+  "CHROME";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry ChromeUserMetricsExtension_Product_entries[] = {
+  { {ChromeUserMetricsExtension_Product_names + 0, 6}, 0 },
+};
+
+static const int ChromeUserMetricsExtension_Product_entries_by_number[] = {
+  0, // 0 -> CHROME
+};
+
+const std::string& ChromeUserMetricsExtension_Product_Name(
+    ChromeUserMetricsExtension_Product value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          ChromeUserMetricsExtension_Product_entries,
+          ChromeUserMetricsExtension_Product_entries_by_number,
+          1, ChromeUserMetricsExtension_Product_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      ChromeUserMetricsExtension_Product_entries,
+      ChromeUserMetricsExtension_Product_entries_by_number,
+      1, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     ChromeUserMetricsExtension_Product_strings[idx].get();
+}
+bool ChromeUserMetricsExtension_Product_Parse(
+    const std::string& name, ChromeUserMetricsExtension_Product* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      ChromeUserMetricsExtension_Product_entries, 1, name, &int_value);
+  if (success) {
+    *value = static_cast<ChromeUserMetricsExtension_Product>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr ChromeUserMetricsExtension_Product ChromeUserMetricsExtension::CHROME;
+constexpr ChromeUserMetricsExtension_Product ChromeUserMetricsExtension::Product_MIN;
+constexpr ChromeUserMetricsExtension_Product ChromeUserMetricsExtension::Product_MAX;
+constexpr int ChromeUserMetricsExtension::Product_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+
+// ===================================================================
+
+void ChromeUserMetricsExtension::InitAsDefaultInstance() {
+  ::metrics::_ChromeUserMetricsExtension_default_instance_._instance.get_mutable()->system_profile_ = const_cast< ::metrics::SystemProfileProto*>(
+      ::metrics::SystemProfileProto::internal_default_instance());
+}
+class ChromeUserMetricsExtension::_Internal {
+ public:
+  using HasBits = decltype(std::declval<ChromeUserMetricsExtension>()._has_bits_);
+  static void set_has_product(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_client_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_session_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::metrics::SystemProfileProto& system_profile(const ChromeUserMetricsExtension* msg);
+  static void set_has_system_profile(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::metrics::SystemProfileProto&
+ChromeUserMetricsExtension::_Internal::system_profile(const ChromeUserMetricsExtension* msg) {
+  return *msg->system_profile_;
+}
+void ChromeUserMetricsExtension::clear_system_profile() {
+  if (system_profile_ != nullptr) system_profile_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+void ChromeUserMetricsExtension::clear_user_action_event() {
+  user_action_event_.Clear();
+}
+void ChromeUserMetricsExtension::clear_histogram_event() {
+  histogram_event_.Clear();
+}
+ChromeUserMetricsExtension::ChromeUserMetricsExtension()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.ChromeUserMetricsExtension)
+}
+ChromeUserMetricsExtension::ChromeUserMetricsExtension(const ChromeUserMetricsExtension& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      user_action_event_(from.user_action_event_),
+      histogram_event_(from.histogram_event_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_system_profile()) {
+    system_profile_ = new ::metrics::SystemProfileProto(*from.system_profile_);
+  } else {
+    system_profile_ = nullptr;
+  }
+  ::memcpy(&client_id_, &from.client_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&product_) -
+    reinterpret_cast<char*>(&client_id_)) + sizeof(product_));
+  // @@protoc_insertion_point(copy_constructor:metrics.ChromeUserMetricsExtension)
+}
+
+void ChromeUserMetricsExtension::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ChromeUserMetricsExtension_chrome_5fuser_5fmetrics_5fextension_2eproto.base);
+  ::memset(&system_profile_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&product_) -
+      reinterpret_cast<char*>(&system_profile_)) + sizeof(product_));
+}
+
+ChromeUserMetricsExtension::~ChromeUserMetricsExtension() {
+  // @@protoc_insertion_point(destructor:metrics.ChromeUserMetricsExtension)
+  SharedDtor();
+}
+
+void ChromeUserMetricsExtension::SharedDtor() {
+  if (this != internal_default_instance()) delete system_profile_;
+}
+
+void ChromeUserMetricsExtension::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const ChromeUserMetricsExtension& ChromeUserMetricsExtension::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_ChromeUserMetricsExtension_chrome_5fuser_5fmetrics_5fextension_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void ChromeUserMetricsExtension::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.ChromeUserMetricsExtension)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  user_action_event_.Clear();
+  histogram_event_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(system_profile_ != nullptr);
+    system_profile_->Clear();
+  }
+  if (cached_has_bits & 0x0000000eu) {
+    ::memset(&client_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&product_) -
+        reinterpret_cast<char*>(&client_id_)) + sizeof(product_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* ChromeUserMetricsExtension::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional fixed64 client_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
+          _Internal::set_has_client_id(&has_bits);
+          client_id_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint64>(ptr);
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint64);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 session_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_session_id(&has_bits);
+          session_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto system_profile = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_system_profile(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.UserActionEventProto user_action_event = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_user_action_event(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.HistogramEventProto histogram_event = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_histogram_event(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<50>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional int32 product = 10 [default = 0];
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          _Internal::set_has_product(&has_bits);
+          product_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* ChromeUserMetricsExtension::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.ChromeUserMetricsExtension)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional fixed64 client_id = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed64ToArray(1, this->_internal_client_id(), target);
+  }
+
+  // optional int32 session_id = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_session_id(), target);
+  }
+
+  // optional .metrics.SystemProfileProto system_profile = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::system_profile(this), target, stream);
+  }
+
+  // repeated .metrics.UserActionEventProto user_action_event = 4;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_user_action_event_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(4, this->_internal_user_action_event(i), target, stream);
+  }
+
+  // repeated .metrics.HistogramEventProto histogram_event = 6;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_histogram_event_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(6, this->_internal_histogram_event(i), target, stream);
+  }
+
+  // optional int32 product = 10 [default = 0];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(10, this->_internal_product(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.ChromeUserMetricsExtension)
+  return target;
+}
+
+size_t ChromeUserMetricsExtension::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.ChromeUserMetricsExtension)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.UserActionEventProto user_action_event = 4;
+  total_size += 1UL * this->_internal_user_action_event_size();
+  for (const auto& msg : this->user_action_event_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .metrics.HistogramEventProto histogram_event = 6;
+  total_size += 1UL * this->_internal_histogram_event_size();
+  for (const auto& msg : this->histogram_event_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional .metrics.SystemProfileProto system_profile = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *system_profile_);
+    }
+
+    // optional fixed64 client_id = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 8;
+    }
+
+    // optional int32 session_id = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_session_id());
+    }
+
+    // optional int32 product = 10 [default = 0];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_product());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void ChromeUserMetricsExtension::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const ChromeUserMetricsExtension*>(
+      &from));
+}
+
+void ChromeUserMetricsExtension::MergeFrom(const ChromeUserMetricsExtension& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.ChromeUserMetricsExtension)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  user_action_event_.MergeFrom(from.user_action_event_);
+  histogram_event_.MergeFrom(from.histogram_event_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_system_profile()->::metrics::SystemProfileProto::MergeFrom(from._internal_system_profile());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      client_id_ = from.client_id_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      session_id_ = from.session_id_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      product_ = from.product_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void ChromeUserMetricsExtension::CopyFrom(const ChromeUserMetricsExtension& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.ChromeUserMetricsExtension)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool ChromeUserMetricsExtension::IsInitialized() const {
+  return true;
+}
+
+void ChromeUserMetricsExtension::InternalSwap(ChromeUserMetricsExtension* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  user_action_event_.InternalSwap(&other->user_action_event_);
+  histogram_event_.InternalSwap(&other->histogram_event_);
+  swap(system_profile_, other->system_profile_);
+  swap(client_id_, other->client_id_);
+  swap(session_id_, other->session_id_);
+  swap(product_, other->product_);
+}
+
+std::string ChromeUserMetricsExtension::GetTypeName() const {
+  return "metrics.ChromeUserMetricsExtension";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::metrics::ChromeUserMetricsExtension* Arena::CreateMaybeMessage< ::metrics::ChromeUserMetricsExtension >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::ChromeUserMetricsExtension >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/chrome_user_metrics_extension.pb.h b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/chrome_user_metrics_extension.pb.h
new file mode 100644
index 0000000..5502fee
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/chrome_user_metrics_extension.pb.h
@@ -0,0 +1,562 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: chrome_user_metrics_extension.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_chrome_5fuser_5fmetrics_5fextension_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_chrome_5fuser_5fmetrics_5fextension_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/generated_enum_util.h>
+#include "histogram_event.pb.h"
+#include "system_profile.pb.h"
+#include "user_action_event.pb.h"
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_chrome_5fuser_5fmetrics_5fextension_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_chrome_5fuser_5fmetrics_5fextension_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace metrics {
+class ChromeUserMetricsExtension;
+class ChromeUserMetricsExtensionDefaultTypeInternal;
+extern ChromeUserMetricsExtensionDefaultTypeInternal _ChromeUserMetricsExtension_default_instance_;
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> ::metrics::ChromeUserMetricsExtension* Arena::CreateMaybeMessage<::metrics::ChromeUserMetricsExtension>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace metrics {
+
+enum ChromeUserMetricsExtension_Product : int {
+  ChromeUserMetricsExtension_Product_CHROME = 0
+};
+bool ChromeUserMetricsExtension_Product_IsValid(int value);
+constexpr ChromeUserMetricsExtension_Product ChromeUserMetricsExtension_Product_Product_MIN = ChromeUserMetricsExtension_Product_CHROME;
+constexpr ChromeUserMetricsExtension_Product ChromeUserMetricsExtension_Product_Product_MAX = ChromeUserMetricsExtension_Product_CHROME;
+constexpr int ChromeUserMetricsExtension_Product_Product_ARRAYSIZE = ChromeUserMetricsExtension_Product_Product_MAX + 1;
+
+const std::string& ChromeUserMetricsExtension_Product_Name(ChromeUserMetricsExtension_Product value);
+template<typename T>
+inline const std::string& ChromeUserMetricsExtension_Product_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, ChromeUserMetricsExtension_Product>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function ChromeUserMetricsExtension_Product_Name.");
+  return ChromeUserMetricsExtension_Product_Name(static_cast<ChromeUserMetricsExtension_Product>(enum_t_value));
+}
+bool ChromeUserMetricsExtension_Product_Parse(
+    const std::string& name, ChromeUserMetricsExtension_Product* value);
+// ===================================================================
+
+class ChromeUserMetricsExtension :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.ChromeUserMetricsExtension) */ {
+ public:
+  ChromeUserMetricsExtension();
+  virtual ~ChromeUserMetricsExtension();
+
+  ChromeUserMetricsExtension(const ChromeUserMetricsExtension& from);
+  ChromeUserMetricsExtension(ChromeUserMetricsExtension&& from) noexcept
+    : ChromeUserMetricsExtension() {
+    *this = ::std::move(from);
+  }
+
+  inline ChromeUserMetricsExtension& operator=(const ChromeUserMetricsExtension& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline ChromeUserMetricsExtension& operator=(ChromeUserMetricsExtension&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const ChromeUserMetricsExtension& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const ChromeUserMetricsExtension* internal_default_instance() {
+    return reinterpret_cast<const ChromeUserMetricsExtension*>(
+               &_ChromeUserMetricsExtension_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(ChromeUserMetricsExtension& a, ChromeUserMetricsExtension& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(ChromeUserMetricsExtension* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline ChromeUserMetricsExtension* New() const final {
+    return CreateMaybeMessage<ChromeUserMetricsExtension>(nullptr);
+  }
+
+  ChromeUserMetricsExtension* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<ChromeUserMetricsExtension>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const ChromeUserMetricsExtension& from);
+  void MergeFrom(const ChromeUserMetricsExtension& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(ChromeUserMetricsExtension* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.ChromeUserMetricsExtension";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef ChromeUserMetricsExtension_Product Product;
+  static constexpr Product CHROME =
+    ChromeUserMetricsExtension_Product_CHROME;
+  static inline bool Product_IsValid(int value) {
+    return ChromeUserMetricsExtension_Product_IsValid(value);
+  }
+  static constexpr Product Product_MIN =
+    ChromeUserMetricsExtension_Product_Product_MIN;
+  static constexpr Product Product_MAX =
+    ChromeUserMetricsExtension_Product_Product_MAX;
+  static constexpr int Product_ARRAYSIZE =
+    ChromeUserMetricsExtension_Product_Product_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Product_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Product>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Product_Name.");
+    return ChromeUserMetricsExtension_Product_Name(enum_t_value);
+  }
+  static inline bool Product_Parse(const std::string& name,
+      Product* value) {
+    return ChromeUserMetricsExtension_Product_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kUserActionEventFieldNumber = 4,
+    kHistogramEventFieldNumber = 6,
+    kSystemProfileFieldNumber = 3,
+    kClientIdFieldNumber = 1,
+    kSessionIdFieldNumber = 2,
+    kProductFieldNumber = 10,
+  };
+  // repeated .metrics.UserActionEventProto user_action_event = 4;
+  int user_action_event_size() const;
+  private:
+  int _internal_user_action_event_size() const;
+  public:
+  void clear_user_action_event();
+  ::metrics::UserActionEventProto* mutable_user_action_event(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::UserActionEventProto >*
+      mutable_user_action_event();
+  private:
+  const ::metrics::UserActionEventProto& _internal_user_action_event(int index) const;
+  ::metrics::UserActionEventProto* _internal_add_user_action_event();
+  public:
+  const ::metrics::UserActionEventProto& user_action_event(int index) const;
+  ::metrics::UserActionEventProto* add_user_action_event();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::UserActionEventProto >&
+      user_action_event() const;
+
+  // repeated .metrics.HistogramEventProto histogram_event = 6;
+  int histogram_event_size() const;
+  private:
+  int _internal_histogram_event_size() const;
+  public:
+  void clear_histogram_event();
+  ::metrics::HistogramEventProto* mutable_histogram_event(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto >*
+      mutable_histogram_event();
+  private:
+  const ::metrics::HistogramEventProto& _internal_histogram_event(int index) const;
+  ::metrics::HistogramEventProto* _internal_add_histogram_event();
+  public:
+  const ::metrics::HistogramEventProto& histogram_event(int index) const;
+  ::metrics::HistogramEventProto* add_histogram_event();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto >&
+      histogram_event() const;
+
+  // optional .metrics.SystemProfileProto system_profile = 3;
+  bool has_system_profile() const;
+  private:
+  bool _internal_has_system_profile() const;
+  public:
+  void clear_system_profile();
+  const ::metrics::SystemProfileProto& system_profile() const;
+  ::metrics::SystemProfileProto* release_system_profile();
+  ::metrics::SystemProfileProto* mutable_system_profile();
+  void set_allocated_system_profile(::metrics::SystemProfileProto* system_profile);
+  private:
+  const ::metrics::SystemProfileProto& _internal_system_profile() const;
+  ::metrics::SystemProfileProto* _internal_mutable_system_profile();
+  public:
+
+  // optional fixed64 client_id = 1;
+  bool has_client_id() const;
+  private:
+  bool _internal_has_client_id() const;
+  public:
+  void clear_client_id();
+  ::PROTOBUF_NAMESPACE_ID::uint64 client_id() const;
+  void set_client_id(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_client_id() const;
+  void _internal_set_client_id(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional int32 session_id = 2;
+  bool has_session_id() const;
+  private:
+  bool _internal_has_session_id() const;
+  public:
+  void clear_session_id();
+  ::PROTOBUF_NAMESPACE_ID::int32 session_id() const;
+  void set_session_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_session_id() const;
+  void _internal_set_session_id(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 product = 10 [default = 0];
+  bool has_product() const;
+  private:
+  bool _internal_has_product() const;
+  public:
+  void clear_product();
+  ::PROTOBUF_NAMESPACE_ID::int32 product() const;
+  void set_product(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_product() const;
+  void _internal_set_product(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.ChromeUserMetricsExtension)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::UserActionEventProto > user_action_event_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto > histogram_event_;
+  ::metrics::SystemProfileProto* system_profile_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 client_id_;
+  ::PROTOBUF_NAMESPACE_ID::int32 session_id_;
+  ::PROTOBUF_NAMESPACE_ID::int32 product_;
+  friend struct ::TableStruct_chrome_5fuser_5fmetrics_5fextension_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// ChromeUserMetricsExtension
+
+// optional int32 product = 10 [default = 0];
+inline bool ChromeUserMetricsExtension::_internal_has_product() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool ChromeUserMetricsExtension::has_product() const {
+  return _internal_has_product();
+}
+inline void ChromeUserMetricsExtension::clear_product() {
+  product_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ChromeUserMetricsExtension::_internal_product() const {
+  return product_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ChromeUserMetricsExtension::product() const {
+  // @@protoc_insertion_point(field_get:metrics.ChromeUserMetricsExtension.product)
+  return _internal_product();
+}
+inline void ChromeUserMetricsExtension::_internal_set_product(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  product_ = value;
+}
+inline void ChromeUserMetricsExtension::set_product(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_product(value);
+  // @@protoc_insertion_point(field_set:metrics.ChromeUserMetricsExtension.product)
+}
+
+// optional fixed64 client_id = 1;
+inline bool ChromeUserMetricsExtension::_internal_has_client_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool ChromeUserMetricsExtension::has_client_id() const {
+  return _internal_has_client_id();
+}
+inline void ChromeUserMetricsExtension::clear_client_id() {
+  client_id_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 ChromeUserMetricsExtension::_internal_client_id() const {
+  return client_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 ChromeUserMetricsExtension::client_id() const {
+  // @@protoc_insertion_point(field_get:metrics.ChromeUserMetricsExtension.client_id)
+  return _internal_client_id();
+}
+inline void ChromeUserMetricsExtension::_internal_set_client_id(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  client_id_ = value;
+}
+inline void ChromeUserMetricsExtension::set_client_id(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_client_id(value);
+  // @@protoc_insertion_point(field_set:metrics.ChromeUserMetricsExtension.client_id)
+}
+
+// optional int32 session_id = 2;
+inline bool ChromeUserMetricsExtension::_internal_has_session_id() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool ChromeUserMetricsExtension::has_session_id() const {
+  return _internal_has_session_id();
+}
+inline void ChromeUserMetricsExtension::clear_session_id() {
+  session_id_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ChromeUserMetricsExtension::_internal_session_id() const {
+  return session_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 ChromeUserMetricsExtension::session_id() const {
+  // @@protoc_insertion_point(field_get:metrics.ChromeUserMetricsExtension.session_id)
+  return _internal_session_id();
+}
+inline void ChromeUserMetricsExtension::_internal_set_session_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  session_id_ = value;
+}
+inline void ChromeUserMetricsExtension::set_session_id(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_session_id(value);
+  // @@protoc_insertion_point(field_set:metrics.ChromeUserMetricsExtension.session_id)
+}
+
+// optional .metrics.SystemProfileProto system_profile = 3;
+inline bool ChromeUserMetricsExtension::_internal_has_system_profile() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || system_profile_ != nullptr);
+  return value;
+}
+inline bool ChromeUserMetricsExtension::has_system_profile() const {
+  return _internal_has_system_profile();
+}
+inline const ::metrics::SystemProfileProto& ChromeUserMetricsExtension::_internal_system_profile() const {
+  const ::metrics::SystemProfileProto* p = system_profile_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto*>(
+      &::metrics::_SystemProfileProto_default_instance_);
+}
+inline const ::metrics::SystemProfileProto& ChromeUserMetricsExtension::system_profile() const {
+  // @@protoc_insertion_point(field_get:metrics.ChromeUserMetricsExtension.system_profile)
+  return _internal_system_profile();
+}
+inline ::metrics::SystemProfileProto* ChromeUserMetricsExtension::release_system_profile() {
+  // @@protoc_insertion_point(field_release:metrics.ChromeUserMetricsExtension.system_profile)
+  _has_bits_[0] &= ~0x00000001u;
+  ::metrics::SystemProfileProto* temp = system_profile_;
+  system_profile_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto* ChromeUserMetricsExtension::_internal_mutable_system_profile() {
+  _has_bits_[0] |= 0x00000001u;
+  if (system_profile_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto>(GetArenaNoVirtual());
+    system_profile_ = p;
+  }
+  return system_profile_;
+}
+inline ::metrics::SystemProfileProto* ChromeUserMetricsExtension::mutable_system_profile() {
+  // @@protoc_insertion_point(field_mutable:metrics.ChromeUserMetricsExtension.system_profile)
+  return _internal_mutable_system_profile();
+}
+inline void ChromeUserMetricsExtension::set_allocated_system_profile(::metrics::SystemProfileProto* system_profile) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(system_profile_);
+  }
+  if (system_profile) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      system_profile = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, system_profile, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  system_profile_ = system_profile;
+  // @@protoc_insertion_point(field_set_allocated:metrics.ChromeUserMetricsExtension.system_profile)
+}
+
+// repeated .metrics.UserActionEventProto user_action_event = 4;
+inline int ChromeUserMetricsExtension::_internal_user_action_event_size() const {
+  return user_action_event_.size();
+}
+inline int ChromeUserMetricsExtension::user_action_event_size() const {
+  return _internal_user_action_event_size();
+}
+inline ::metrics::UserActionEventProto* ChromeUserMetricsExtension::mutable_user_action_event(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.ChromeUserMetricsExtension.user_action_event)
+  return user_action_event_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::UserActionEventProto >*
+ChromeUserMetricsExtension::mutable_user_action_event() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.ChromeUserMetricsExtension.user_action_event)
+  return &user_action_event_;
+}
+inline const ::metrics::UserActionEventProto& ChromeUserMetricsExtension::_internal_user_action_event(int index) const {
+  return user_action_event_.Get(index);
+}
+inline const ::metrics::UserActionEventProto& ChromeUserMetricsExtension::user_action_event(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.ChromeUserMetricsExtension.user_action_event)
+  return _internal_user_action_event(index);
+}
+inline ::metrics::UserActionEventProto* ChromeUserMetricsExtension::_internal_add_user_action_event() {
+  return user_action_event_.Add();
+}
+inline ::metrics::UserActionEventProto* ChromeUserMetricsExtension::add_user_action_event() {
+  // @@protoc_insertion_point(field_add:metrics.ChromeUserMetricsExtension.user_action_event)
+  return _internal_add_user_action_event();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::UserActionEventProto >&
+ChromeUserMetricsExtension::user_action_event() const {
+  // @@protoc_insertion_point(field_list:metrics.ChromeUserMetricsExtension.user_action_event)
+  return user_action_event_;
+}
+
+// repeated .metrics.HistogramEventProto histogram_event = 6;
+inline int ChromeUserMetricsExtension::_internal_histogram_event_size() const {
+  return histogram_event_.size();
+}
+inline int ChromeUserMetricsExtension::histogram_event_size() const {
+  return _internal_histogram_event_size();
+}
+inline ::metrics::HistogramEventProto* ChromeUserMetricsExtension::mutable_histogram_event(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.ChromeUserMetricsExtension.histogram_event)
+  return histogram_event_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto >*
+ChromeUserMetricsExtension::mutable_histogram_event() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.ChromeUserMetricsExtension.histogram_event)
+  return &histogram_event_;
+}
+inline const ::metrics::HistogramEventProto& ChromeUserMetricsExtension::_internal_histogram_event(int index) const {
+  return histogram_event_.Get(index);
+}
+inline const ::metrics::HistogramEventProto& ChromeUserMetricsExtension::histogram_event(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.ChromeUserMetricsExtension.histogram_event)
+  return _internal_histogram_event(index);
+}
+inline ::metrics::HistogramEventProto* ChromeUserMetricsExtension::_internal_add_histogram_event() {
+  return histogram_event_.Add();
+}
+inline ::metrics::HistogramEventProto* ChromeUserMetricsExtension::add_histogram_event() {
+  // @@protoc_insertion_point(field_add:metrics.ChromeUserMetricsExtension.histogram_event)
+  return _internal_add_histogram_event();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto >&
+ChromeUserMetricsExtension::histogram_event() const {
+  // @@protoc_insertion_point(field_list:metrics.ChromeUserMetricsExtension.histogram_event)
+  return histogram_event_;
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace metrics
+
+PROTOBUF_NAMESPACE_OPEN
+
+template <> struct is_proto_enum< ::metrics::ChromeUserMetricsExtension_Product> : ::std::true_type {};
+
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_chrome_5fuser_5fmetrics_5fextension_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/histogram_event.pb.cc b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/histogram_event.pb.cc
new file mode 100644
index 0000000..ae29feb
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/histogram_event.pb.cc
@@ -0,0 +1,602 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: histogram_event.proto
+
+#include "histogram_event.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_histogram_5fevent_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_HistogramEventProto_Bucket_histogram_5fevent_2eproto;
+namespace metrics {
+class HistogramEventProto_BucketDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<HistogramEventProto_Bucket> _instance;
+} _HistogramEventProto_Bucket_default_instance_;
+class HistogramEventProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<HistogramEventProto> _instance;
+} _HistogramEventProto_default_instance_;
+}  // namespace metrics
+static void InitDefaultsscc_info_HistogramEventProto_histogram_5fevent_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_HistogramEventProto_default_instance_;
+    new (ptr) ::metrics::HistogramEventProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::HistogramEventProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_HistogramEventProto_histogram_5fevent_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_HistogramEventProto_histogram_5fevent_2eproto}, {
+      &scc_info_HistogramEventProto_Bucket_histogram_5fevent_2eproto.base,}};
+
+static void InitDefaultsscc_info_HistogramEventProto_Bucket_histogram_5fevent_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_HistogramEventProto_Bucket_default_instance_;
+    new (ptr) ::metrics::HistogramEventProto_Bucket();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::HistogramEventProto_Bucket::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_HistogramEventProto_Bucket_histogram_5fevent_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_HistogramEventProto_Bucket_histogram_5fevent_2eproto}, {}};
+
+namespace metrics {
+
+// ===================================================================
+
+void HistogramEventProto_Bucket::InitAsDefaultInstance() {
+}
+class HistogramEventProto_Bucket::_Internal {
+ public:
+  using HasBits = decltype(std::declval<HistogramEventProto_Bucket>()._has_bits_);
+  static void set_has_min(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_max(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_bucket_index(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+HistogramEventProto_Bucket::HistogramEventProto_Bucket()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.HistogramEventProto.Bucket)
+}
+HistogramEventProto_Bucket::HistogramEventProto_Bucket(const HistogramEventProto_Bucket& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&min_, &from.min_,
+    static_cast<size_t>(reinterpret_cast<char*>(&bucket_index_) -
+    reinterpret_cast<char*>(&min_)) + sizeof(bucket_index_));
+  // @@protoc_insertion_point(copy_constructor:metrics.HistogramEventProto.Bucket)
+}
+
+void HistogramEventProto_Bucket::SharedCtor() {
+  ::memset(&min_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&bucket_index_) -
+      reinterpret_cast<char*>(&min_)) + sizeof(bucket_index_));
+}
+
+HistogramEventProto_Bucket::~HistogramEventProto_Bucket() {
+  // @@protoc_insertion_point(destructor:metrics.HistogramEventProto.Bucket)
+  SharedDtor();
+}
+
+void HistogramEventProto_Bucket::SharedDtor() {
+}
+
+void HistogramEventProto_Bucket::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const HistogramEventProto_Bucket& HistogramEventProto_Bucket::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_HistogramEventProto_Bucket_histogram_5fevent_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void HistogramEventProto_Bucket::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.HistogramEventProto.Bucket)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    ::memset(&min_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&bucket_index_) -
+        reinterpret_cast<char*>(&min_)) + sizeof(bucket_index_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* HistogramEventProto_Bucket::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 min = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_min(&has_bits);
+          min_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 max = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_max(&has_bits);
+          max_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 bucket_index = 3 [deprecated = true];
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_bucket_index(&has_bits);
+          bucket_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 count = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_count(&has_bits);
+          count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* HistogramEventProto_Bucket::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.HistogramEventProto.Bucket)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 min = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_min(), target);
+  }
+
+  // optional int64 max = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_max(), target);
+  }
+
+  // optional int32 bucket_index = 3 [deprecated = true];
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_bucket_index(), target);
+  }
+
+  // optional int64 count = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_count(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.HistogramEventProto.Bucket)
+  return target;
+}
+
+size_t HistogramEventProto_Bucket::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.HistogramEventProto.Bucket)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional int64 min = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_min());
+    }
+
+    // optional int64 max = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_max());
+    }
+
+    // optional int64 count = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_count());
+    }
+
+    // optional int32 bucket_index = 3 [deprecated = true];
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_bucket_index());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void HistogramEventProto_Bucket::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const HistogramEventProto_Bucket*>(
+      &from));
+}
+
+void HistogramEventProto_Bucket::MergeFrom(const HistogramEventProto_Bucket& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.HistogramEventProto.Bucket)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      min_ = from.min_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      max_ = from.max_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      count_ = from.count_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      bucket_index_ = from.bucket_index_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void HistogramEventProto_Bucket::CopyFrom(const HistogramEventProto_Bucket& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.HistogramEventProto.Bucket)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool HistogramEventProto_Bucket::IsInitialized() const {
+  return true;
+}
+
+void HistogramEventProto_Bucket::InternalSwap(HistogramEventProto_Bucket* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(min_, other->min_);
+  swap(max_, other->max_);
+  swap(count_, other->count_);
+  swap(bucket_index_, other->bucket_index_);
+}
+
+std::string HistogramEventProto_Bucket::GetTypeName() const {
+  return "metrics.HistogramEventProto.Bucket";
+}
+
+
+// ===================================================================
+
+void HistogramEventProto::InitAsDefaultInstance() {
+}
+class HistogramEventProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<HistogramEventProto>()._has_bits_);
+  static void set_has_name_hash(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_sum(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+HistogramEventProto::HistogramEventProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.HistogramEventProto)
+}
+HistogramEventProto::HistogramEventProto(const HistogramEventProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      bucket_(from.bucket_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&name_hash_, &from.name_hash_,
+    static_cast<size_t>(reinterpret_cast<char*>(&sum_) -
+    reinterpret_cast<char*>(&name_hash_)) + sizeof(sum_));
+  // @@protoc_insertion_point(copy_constructor:metrics.HistogramEventProto)
+}
+
+void HistogramEventProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_HistogramEventProto_histogram_5fevent_2eproto.base);
+  ::memset(&name_hash_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&sum_) -
+      reinterpret_cast<char*>(&name_hash_)) + sizeof(sum_));
+}
+
+HistogramEventProto::~HistogramEventProto() {
+  // @@protoc_insertion_point(destructor:metrics.HistogramEventProto)
+  SharedDtor();
+}
+
+void HistogramEventProto::SharedDtor() {
+}
+
+void HistogramEventProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const HistogramEventProto& HistogramEventProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_HistogramEventProto_histogram_5fevent_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void HistogramEventProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.HistogramEventProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  bucket_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&name_hash_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&sum_) -
+        reinterpret_cast<char*>(&name_hash_)) + sizeof(sum_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* HistogramEventProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional fixed64 name_hash = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
+          _Internal::set_has_name_hash(&has_bits);
+          name_hash_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint64>(ptr);
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint64);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 sum = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_sum(&has_bits);
+          sum_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.HistogramEventProto.Bucket bucket = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_bucket(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* HistogramEventProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.HistogramEventProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional fixed64 name_hash = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed64ToArray(1, this->_internal_name_hash(), target);
+  }
+
+  // optional int64 sum = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_sum(), target);
+  }
+
+  // repeated .metrics.HistogramEventProto.Bucket bucket = 3;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_bucket_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(3, this->_internal_bucket(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.HistogramEventProto)
+  return target;
+}
+
+size_t HistogramEventProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.HistogramEventProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.HistogramEventProto.Bucket bucket = 3;
+  total_size += 1UL * this->_internal_bucket_size();
+  for (const auto& msg : this->bucket_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional fixed64 name_hash = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 8;
+    }
+
+    // optional int64 sum = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_sum());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void HistogramEventProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const HistogramEventProto*>(
+      &from));
+}
+
+void HistogramEventProto::MergeFrom(const HistogramEventProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.HistogramEventProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  bucket_.MergeFrom(from.bucket_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_hash_ = from.name_hash_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      sum_ = from.sum_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void HistogramEventProto::CopyFrom(const HistogramEventProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.HistogramEventProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool HistogramEventProto::IsInitialized() const {
+  return true;
+}
+
+void HistogramEventProto::InternalSwap(HistogramEventProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  bucket_.InternalSwap(&other->bucket_);
+  swap(name_hash_, other->name_hash_);
+  swap(sum_, other->sum_);
+}
+
+std::string HistogramEventProto::GetTypeName() const {
+  return "metrics.HistogramEventProto";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::metrics::HistogramEventProto_Bucket* Arena::CreateMaybeMessage< ::metrics::HistogramEventProto_Bucket >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::HistogramEventProto_Bucket >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::HistogramEventProto* Arena::CreateMaybeMessage< ::metrics::HistogramEventProto >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::HistogramEventProto >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/histogram_event.pb.h b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/histogram_event.pb.h
new file mode 100644
index 0000000..7aecd3b
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/histogram_event.pb.h
@@ -0,0 +1,635 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: histogram_event.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_histogram_5fevent_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_histogram_5fevent_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_histogram_5fevent_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_histogram_5fevent_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[2]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace metrics {
+class HistogramEventProto;
+class HistogramEventProtoDefaultTypeInternal;
+extern HistogramEventProtoDefaultTypeInternal _HistogramEventProto_default_instance_;
+class HistogramEventProto_Bucket;
+class HistogramEventProto_BucketDefaultTypeInternal;
+extern HistogramEventProto_BucketDefaultTypeInternal _HistogramEventProto_Bucket_default_instance_;
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> ::metrics::HistogramEventProto* Arena::CreateMaybeMessage<::metrics::HistogramEventProto>(Arena*);
+template<> ::metrics::HistogramEventProto_Bucket* Arena::CreateMaybeMessage<::metrics::HistogramEventProto_Bucket>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace metrics {
+
+// ===================================================================
+
+class HistogramEventProto_Bucket :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.HistogramEventProto.Bucket) */ {
+ public:
+  HistogramEventProto_Bucket();
+  virtual ~HistogramEventProto_Bucket();
+
+  HistogramEventProto_Bucket(const HistogramEventProto_Bucket& from);
+  HistogramEventProto_Bucket(HistogramEventProto_Bucket&& from) noexcept
+    : HistogramEventProto_Bucket() {
+    *this = ::std::move(from);
+  }
+
+  inline HistogramEventProto_Bucket& operator=(const HistogramEventProto_Bucket& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline HistogramEventProto_Bucket& operator=(HistogramEventProto_Bucket&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const HistogramEventProto_Bucket& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const HistogramEventProto_Bucket* internal_default_instance() {
+    return reinterpret_cast<const HistogramEventProto_Bucket*>(
+               &_HistogramEventProto_Bucket_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(HistogramEventProto_Bucket& a, HistogramEventProto_Bucket& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(HistogramEventProto_Bucket* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline HistogramEventProto_Bucket* New() const final {
+    return CreateMaybeMessage<HistogramEventProto_Bucket>(nullptr);
+  }
+
+  HistogramEventProto_Bucket* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<HistogramEventProto_Bucket>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const HistogramEventProto_Bucket& from);
+  void MergeFrom(const HistogramEventProto_Bucket& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(HistogramEventProto_Bucket* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.HistogramEventProto.Bucket";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kMinFieldNumber = 1,
+    kMaxFieldNumber = 2,
+    kCountFieldNumber = 4,
+    kBucketIndexFieldNumber = 3,
+  };
+  // optional int64 min = 1;
+  bool has_min() const;
+  private:
+  bool _internal_has_min() const;
+  public:
+  void clear_min();
+  ::PROTOBUF_NAMESPACE_ID::int64 min() const;
+  void set_min(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_min() const;
+  void _internal_set_min(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 max = 2;
+  bool has_max() const;
+  private:
+  bool _internal_has_max() const;
+  public:
+  void clear_max();
+  ::PROTOBUF_NAMESPACE_ID::int64 max() const;
+  void set_max(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_max() const;
+  void _internal_set_max(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 count = 4;
+  bool has_count() const;
+  private:
+  bool _internal_has_count() const;
+  public:
+  void clear_count();
+  ::PROTOBUF_NAMESPACE_ID::int64 count() const;
+  void set_count(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_count() const;
+  void _internal_set_count(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 bucket_index = 3 [deprecated = true];
+  PROTOBUF_DEPRECATED bool has_bucket_index() const;
+  private:
+  bool _internal_has_bucket_index() const;
+  public:
+  PROTOBUF_DEPRECATED void clear_bucket_index();
+  PROTOBUF_DEPRECATED ::PROTOBUF_NAMESPACE_ID::int32 bucket_index() const;
+  PROTOBUF_DEPRECATED void set_bucket_index(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_bucket_index() const;
+  void _internal_set_bucket_index(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.HistogramEventProto.Bucket)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int64 min_;
+  ::PROTOBUF_NAMESPACE_ID::int64 max_;
+  ::PROTOBUF_NAMESPACE_ID::int64 count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 bucket_index_;
+  friend struct ::TableStruct_histogram_5fevent_2eproto;
+};
+// -------------------------------------------------------------------
+
+class HistogramEventProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.HistogramEventProto) */ {
+ public:
+  HistogramEventProto();
+  virtual ~HistogramEventProto();
+
+  HistogramEventProto(const HistogramEventProto& from);
+  HistogramEventProto(HistogramEventProto&& from) noexcept
+    : HistogramEventProto() {
+    *this = ::std::move(from);
+  }
+
+  inline HistogramEventProto& operator=(const HistogramEventProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline HistogramEventProto& operator=(HistogramEventProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const HistogramEventProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const HistogramEventProto* internal_default_instance() {
+    return reinterpret_cast<const HistogramEventProto*>(
+               &_HistogramEventProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(HistogramEventProto& a, HistogramEventProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(HistogramEventProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline HistogramEventProto* New() const final {
+    return CreateMaybeMessage<HistogramEventProto>(nullptr);
+  }
+
+  HistogramEventProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<HistogramEventProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const HistogramEventProto& from);
+  void MergeFrom(const HistogramEventProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(HistogramEventProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.HistogramEventProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef HistogramEventProto_Bucket Bucket;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBucketFieldNumber = 3,
+    kNameHashFieldNumber = 1,
+    kSumFieldNumber = 2,
+  };
+  // repeated .metrics.HistogramEventProto.Bucket bucket = 3;
+  int bucket_size() const;
+  private:
+  int _internal_bucket_size() const;
+  public:
+  void clear_bucket();
+  ::metrics::HistogramEventProto_Bucket* mutable_bucket(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto_Bucket >*
+      mutable_bucket();
+  private:
+  const ::metrics::HistogramEventProto_Bucket& _internal_bucket(int index) const;
+  ::metrics::HistogramEventProto_Bucket* _internal_add_bucket();
+  public:
+  const ::metrics::HistogramEventProto_Bucket& bucket(int index) const;
+  ::metrics::HistogramEventProto_Bucket* add_bucket();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto_Bucket >&
+      bucket() const;
+
+  // optional fixed64 name_hash = 1;
+  bool has_name_hash() const;
+  private:
+  bool _internal_has_name_hash() const;
+  public:
+  void clear_name_hash();
+  ::PROTOBUF_NAMESPACE_ID::uint64 name_hash() const;
+  void set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_name_hash() const;
+  void _internal_set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional int64 sum = 2;
+  bool has_sum() const;
+  private:
+  bool _internal_has_sum() const;
+  public:
+  void clear_sum();
+  ::PROTOBUF_NAMESPACE_ID::int64 sum() const;
+  void set_sum(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_sum() const;
+  void _internal_set_sum(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.HistogramEventProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto_Bucket > bucket_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 name_hash_;
+  ::PROTOBUF_NAMESPACE_ID::int64 sum_;
+  friend struct ::TableStruct_histogram_5fevent_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// HistogramEventProto_Bucket
+
+// optional int64 min = 1;
+inline bool HistogramEventProto_Bucket::_internal_has_min() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool HistogramEventProto_Bucket::has_min() const {
+  return _internal_has_min();
+}
+inline void HistogramEventProto_Bucket::clear_min() {
+  min_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 HistogramEventProto_Bucket::_internal_min() const {
+  return min_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 HistogramEventProto_Bucket::min() const {
+  // @@protoc_insertion_point(field_get:metrics.HistogramEventProto.Bucket.min)
+  return _internal_min();
+}
+inline void HistogramEventProto_Bucket::_internal_set_min(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  min_ = value;
+}
+inline void HistogramEventProto_Bucket::set_min(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_min(value);
+  // @@protoc_insertion_point(field_set:metrics.HistogramEventProto.Bucket.min)
+}
+
+// optional int64 max = 2;
+inline bool HistogramEventProto_Bucket::_internal_has_max() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool HistogramEventProto_Bucket::has_max() const {
+  return _internal_has_max();
+}
+inline void HistogramEventProto_Bucket::clear_max() {
+  max_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 HistogramEventProto_Bucket::_internal_max() const {
+  return max_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 HistogramEventProto_Bucket::max() const {
+  // @@protoc_insertion_point(field_get:metrics.HistogramEventProto.Bucket.max)
+  return _internal_max();
+}
+inline void HistogramEventProto_Bucket::_internal_set_max(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  max_ = value;
+}
+inline void HistogramEventProto_Bucket::set_max(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_max(value);
+  // @@protoc_insertion_point(field_set:metrics.HistogramEventProto.Bucket.max)
+}
+
+// optional int32 bucket_index = 3 [deprecated = true];
+inline bool HistogramEventProto_Bucket::_internal_has_bucket_index() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool HistogramEventProto_Bucket::has_bucket_index() const {
+  return _internal_has_bucket_index();
+}
+inline void HistogramEventProto_Bucket::clear_bucket_index() {
+  bucket_index_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 HistogramEventProto_Bucket::_internal_bucket_index() const {
+  return bucket_index_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 HistogramEventProto_Bucket::bucket_index() const {
+  // @@protoc_insertion_point(field_get:metrics.HistogramEventProto.Bucket.bucket_index)
+  return _internal_bucket_index();
+}
+inline void HistogramEventProto_Bucket::_internal_set_bucket_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  bucket_index_ = value;
+}
+inline void HistogramEventProto_Bucket::set_bucket_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_bucket_index(value);
+  // @@protoc_insertion_point(field_set:metrics.HistogramEventProto.Bucket.bucket_index)
+}
+
+// optional int64 count = 4;
+inline bool HistogramEventProto_Bucket::_internal_has_count() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool HistogramEventProto_Bucket::has_count() const {
+  return _internal_has_count();
+}
+inline void HistogramEventProto_Bucket::clear_count() {
+  count_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 HistogramEventProto_Bucket::_internal_count() const {
+  return count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 HistogramEventProto_Bucket::count() const {
+  // @@protoc_insertion_point(field_get:metrics.HistogramEventProto.Bucket.count)
+  return _internal_count();
+}
+inline void HistogramEventProto_Bucket::_internal_set_count(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  count_ = value;
+}
+inline void HistogramEventProto_Bucket::set_count(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_count(value);
+  // @@protoc_insertion_point(field_set:metrics.HistogramEventProto.Bucket.count)
+}
+
+// -------------------------------------------------------------------
+
+// HistogramEventProto
+
+// optional fixed64 name_hash = 1;
+inline bool HistogramEventProto::_internal_has_name_hash() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool HistogramEventProto::has_name_hash() const {
+  return _internal_has_name_hash();
+}
+inline void HistogramEventProto::clear_name_hash() {
+  name_hash_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 HistogramEventProto::_internal_name_hash() const {
+  return name_hash_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 HistogramEventProto::name_hash() const {
+  // @@protoc_insertion_point(field_get:metrics.HistogramEventProto.name_hash)
+  return _internal_name_hash();
+}
+inline void HistogramEventProto::_internal_set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_hash_ = value;
+}
+inline void HistogramEventProto::set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_name_hash(value);
+  // @@protoc_insertion_point(field_set:metrics.HistogramEventProto.name_hash)
+}
+
+// optional int64 sum = 2;
+inline bool HistogramEventProto::_internal_has_sum() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool HistogramEventProto::has_sum() const {
+  return _internal_has_sum();
+}
+inline void HistogramEventProto::clear_sum() {
+  sum_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 HistogramEventProto::_internal_sum() const {
+  return sum_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 HistogramEventProto::sum() const {
+  // @@protoc_insertion_point(field_get:metrics.HistogramEventProto.sum)
+  return _internal_sum();
+}
+inline void HistogramEventProto::_internal_set_sum(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  sum_ = value;
+}
+inline void HistogramEventProto::set_sum(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_sum(value);
+  // @@protoc_insertion_point(field_set:metrics.HistogramEventProto.sum)
+}
+
+// repeated .metrics.HistogramEventProto.Bucket bucket = 3;
+inline int HistogramEventProto::_internal_bucket_size() const {
+  return bucket_.size();
+}
+inline int HistogramEventProto::bucket_size() const {
+  return _internal_bucket_size();
+}
+inline void HistogramEventProto::clear_bucket() {
+  bucket_.Clear();
+}
+inline ::metrics::HistogramEventProto_Bucket* HistogramEventProto::mutable_bucket(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.HistogramEventProto.bucket)
+  return bucket_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto_Bucket >*
+HistogramEventProto::mutable_bucket() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.HistogramEventProto.bucket)
+  return &bucket_;
+}
+inline const ::metrics::HistogramEventProto_Bucket& HistogramEventProto::_internal_bucket(int index) const {
+  return bucket_.Get(index);
+}
+inline const ::metrics::HistogramEventProto_Bucket& HistogramEventProto::bucket(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.HistogramEventProto.bucket)
+  return _internal_bucket(index);
+}
+inline ::metrics::HistogramEventProto_Bucket* HistogramEventProto::_internal_add_bucket() {
+  return bucket_.Add();
+}
+inline ::metrics::HistogramEventProto_Bucket* HistogramEventProto::add_bucket() {
+  // @@protoc_insertion_point(field_add:metrics.HistogramEventProto.bucket)
+  return _internal_add_bucket();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::HistogramEventProto_Bucket >&
+HistogramEventProto::bucket() const {
+  // @@protoc_insertion_point(field_list:metrics.HistogramEventProto.bucket)
+  return bucket_;
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace metrics
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_histogram_5fevent_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/system_profile.pb.cc b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/system_profile.pb.cc
new file mode 100644
index 0000000..00babdc
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/system_profile.pb.cc
@@ -0,0 +1,10020 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: system_profile.proto
+
+#include "system_profile.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_BrilloDeviceData_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_ExternalAccessPoint_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_SystemProfileProto_ExternalAudioVideoDevice_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_ExternalAudioVideoDevice_CECCommand_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_FieldTrial_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_GoogleUpdate_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_GoogleUpdate_ProductInfo_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<5> scc_info_SystemProfileProto_Hardware_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Hardware_Bluetooth_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_Bluetooth_PairedDevice_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_CPU_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_Drive_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_Graphics_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_TouchScreen_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Network_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Network_WifiAccessPoint_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_OS_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Plugin_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Stability_system_5fprofile_2eproto;
+extern PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Stability_PluginStability_system_5fprofile_2eproto;
+namespace metrics {
+class SystemProfileProto_BrilloDeviceDataDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_BrilloDeviceData> _instance;
+} _SystemProfileProto_BrilloDeviceData_default_instance_;
+class SystemProfileProto_OSDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_OS> _instance;
+} _SystemProfileProto_OS_default_instance_;
+class SystemProfileProto_Hardware_CPUDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Hardware_CPU> _instance;
+} _SystemProfileProto_Hardware_CPU_default_instance_;
+class SystemProfileProto_Hardware_GraphicsDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Hardware_Graphics> _instance;
+} _SystemProfileProto_Hardware_Graphics_default_instance_;
+class SystemProfileProto_Hardware_Bluetooth_PairedDeviceDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Hardware_Bluetooth_PairedDevice> _instance;
+} _SystemProfileProto_Hardware_Bluetooth_PairedDevice_default_instance_;
+class SystemProfileProto_Hardware_BluetoothDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Hardware_Bluetooth> _instance;
+} _SystemProfileProto_Hardware_Bluetooth_default_instance_;
+class SystemProfileProto_Hardware_TouchScreenDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Hardware_TouchScreen> _instance;
+} _SystemProfileProto_Hardware_TouchScreen_default_instance_;
+class SystemProfileProto_Hardware_DriveDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Hardware_Drive> _instance;
+} _SystemProfileProto_Hardware_Drive_default_instance_;
+class SystemProfileProto_HardwareDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Hardware> _instance;
+} _SystemProfileProto_Hardware_default_instance_;
+class SystemProfileProto_Network_WifiAccessPoint_VendorInformationDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Network_WifiAccessPoint_VendorInformation> _instance;
+} _SystemProfileProto_Network_WifiAccessPoint_VendorInformation_default_instance_;
+class SystemProfileProto_Network_WifiAccessPointDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Network_WifiAccessPoint> _instance;
+} _SystemProfileProto_Network_WifiAccessPoint_default_instance_;
+class SystemProfileProto_NetworkDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Network> _instance;
+} _SystemProfileProto_Network_default_instance_;
+class SystemProfileProto_GoogleUpdate_ProductInfoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_GoogleUpdate_ProductInfo> _instance;
+} _SystemProfileProto_GoogleUpdate_ProductInfo_default_instance_;
+class SystemProfileProto_GoogleUpdateDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_GoogleUpdate> _instance;
+} _SystemProfileProto_GoogleUpdate_default_instance_;
+class SystemProfileProto_PluginDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Plugin> _instance;
+} _SystemProfileProto_Plugin_default_instance_;
+class SystemProfileProto_Stability_PluginStabilityDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Stability_PluginStability> _instance;
+} _SystemProfileProto_Stability_PluginStability_default_instance_;
+class SystemProfileProto_StabilityDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_Stability> _instance;
+} _SystemProfileProto_Stability_default_instance_;
+class SystemProfileProto_FieldTrialDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_FieldTrial> _instance;
+} _SystemProfileProto_FieldTrial_default_instance_;
+class SystemProfileProto_ExternalAudioVideoDevice_AudioDescriptionDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_ExternalAudioVideoDevice_AudioDescription> _instance;
+} _SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_default_instance_;
+class SystemProfileProto_ExternalAudioVideoDevice_CECCommandDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_ExternalAudioVideoDevice_CECCommand> _instance;
+} _SystemProfileProto_ExternalAudioVideoDevice_CECCommand_default_instance_;
+class SystemProfileProto_ExternalAudioVideoDeviceDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_ExternalAudioVideoDevice> _instance;
+} _SystemProfileProto_ExternalAudioVideoDevice_default_instance_;
+class SystemProfileProto_ExternalAccessPointDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto_ExternalAccessPoint> _instance;
+} _SystemProfileProto_ExternalAccessPoint_default_instance_;
+class SystemProfileProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<SystemProfileProto> _instance;
+} _SystemProfileProto_default_instance_;
+}  // namespace metrics
+static void InitDefaultsscc_info_SystemProfileProto_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<10> scc_info_SystemProfileProto_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 10, 0, InitDefaultsscc_info_SystemProfileProto_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_BrilloDeviceData_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_OS_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_Hardware_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_Network_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_GoogleUpdate_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_Plugin_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_Stability_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_FieldTrial_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_ExternalAudioVideoDevice_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_ExternalAccessPoint_system_5fprofile_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemProfileProto_BrilloDeviceData_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_BrilloDeviceData_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_BrilloDeviceData();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_BrilloDeviceData::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_BrilloDeviceData_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_BrilloDeviceData_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_ExternalAccessPoint_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_ExternalAccessPoint_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_ExternalAccessPoint();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_ExternalAccessPoint::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_ExternalAccessPoint_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_ExternalAccessPoint_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_ExternalAudioVideoDevice_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_ExternalAudioVideoDevice_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_ExternalAudioVideoDevice();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_SystemProfileProto_ExternalAudioVideoDevice_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, 0, InitDefaultsscc_info_SystemProfileProto_ExternalAudioVideoDevice_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_ExternalAudioVideoDevice_CECCommand_system_5fprofile_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_ExternalAudioVideoDevice_CECCommand_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_ExternalAudioVideoDevice_CECCommand_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_ExternalAudioVideoDevice_CECCommand_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_ExternalAudioVideoDevice_CECCommand_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_FieldTrial_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_FieldTrial_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_FieldTrial();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_FieldTrial::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_FieldTrial_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_FieldTrial_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_GoogleUpdate_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_GoogleUpdate_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_GoogleUpdate();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_GoogleUpdate::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_GoogleUpdate_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SystemProfileProto_GoogleUpdate_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_GoogleUpdate_ProductInfo_system_5fprofile_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemProfileProto_GoogleUpdate_ProductInfo_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_GoogleUpdate_ProductInfo_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_GoogleUpdate_ProductInfo_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_GoogleUpdate_ProductInfo_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Hardware_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Hardware_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Hardware();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Hardware::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<5> scc_info_SystemProfileProto_Hardware_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 5, 0, InitDefaultsscc_info_SystemProfileProto_Hardware_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_Hardware_CPU_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_Hardware_Graphics_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_Hardware_Bluetooth_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_Hardware_TouchScreen_system_5fprofile_2eproto.base,
+      &scc_info_SystemProfileProto_Hardware_Drive_system_5fprofile_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Hardware_Bluetooth_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Hardware_Bluetooth_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Hardware_Bluetooth();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Hardware_Bluetooth::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Hardware_Bluetooth_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SystemProfileProto_Hardware_Bluetooth_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_Hardware_Bluetooth_PairedDevice_system_5fprofile_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Hardware_Bluetooth_PairedDevice_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Hardware_Bluetooth_PairedDevice_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_Bluetooth_PairedDevice_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_Hardware_Bluetooth_PairedDevice_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Hardware_CPU_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Hardware_CPU_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Hardware_CPU();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Hardware_CPU::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_CPU_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_Hardware_CPU_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Hardware_Drive_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Hardware_Drive_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Hardware_Drive();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Hardware_Drive::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_Drive_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_Hardware_Drive_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Hardware_Graphics_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Hardware_Graphics_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Hardware_Graphics();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Hardware_Graphics::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_Graphics_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_Hardware_Graphics_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Hardware_TouchScreen_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Hardware_TouchScreen_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Hardware_TouchScreen();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Hardware_TouchScreen::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Hardware_TouchScreen_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_Hardware_TouchScreen_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Network_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Network_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Network();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Network::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Network_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SystemProfileProto_Network_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_Network_WifiAccessPoint_system_5fprofile_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Network_WifiAccessPoint_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Network_WifiAccessPoint_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Network_WifiAccessPoint();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Network_WifiAccessPoint_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SystemProfileProto_Network_WifiAccessPoint_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_system_5fprofile_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_OS_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_OS_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_OS();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_OS::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_OS_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_OS_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Plugin_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Plugin_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Plugin();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Plugin::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SystemProfileProto_Plugin_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_SystemProfileProto_Plugin_system_5fprofile_2eproto}, {}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Stability_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Stability_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Stability();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Stability::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Stability_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SystemProfileProto_Stability_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_Stability_PluginStability_system_5fprofile_2eproto.base,}};
+
+static void InitDefaultsscc_info_SystemProfileProto_Stability_PluginStability_system_5fprofile_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_SystemProfileProto_Stability_PluginStability_default_instance_;
+    new (ptr) ::metrics::SystemProfileProto_Stability_PluginStability();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::SystemProfileProto_Stability_PluginStability::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SystemProfileProto_Stability_PluginStability_system_5fprofile_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, 0, InitDefaultsscc_info_SystemProfileProto_Stability_PluginStability_system_5fprofile_2eproto}, {
+      &scc_info_SystemProfileProto_Plugin_system_5fprofile_2eproto.base,}};
+
+namespace metrics {
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_strings[14] = {};
+
+static const char SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names[] =
+  "DEVICE_AUDIO"
+  "DEVICE_CAR_AUDIO"
+  "DEVICE_COMPUTER"
+  "DEVICE_GAMEPAD"
+  "DEVICE_JOYSTICK"
+  "DEVICE_KEYBOARD"
+  "DEVICE_KEYBOARD_MOUSE_COMBO"
+  "DEVICE_MODEM"
+  "DEVICE_MOUSE"
+  "DEVICE_PERIPHERAL"
+  "DEVICE_PHONE"
+  "DEVICE_TABLET"
+  "DEVICE_UNKNOWN"
+  "DEVICE_VIDEO";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_entries[] = {
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 0, 12}, 4 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 12, 16}, 5 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 28, 15}, 1 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 43, 14}, 9 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 57, 15}, 8 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 72, 15}, 10 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 87, 27}, 13 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 114, 12}, 3 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 126, 12}, 11 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 138, 17}, 7 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 155, 12}, 2 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 167, 13}, 12 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 180, 14}, 0 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_names + 194, 12}, 6 },
+};
+
+static const int SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_entries_by_number[] = {
+  12, // 0 -> DEVICE_UNKNOWN
+  2, // 1 -> DEVICE_COMPUTER
+  10, // 2 -> DEVICE_PHONE
+  7, // 3 -> DEVICE_MODEM
+  0, // 4 -> DEVICE_AUDIO
+  1, // 5 -> DEVICE_CAR_AUDIO
+  13, // 6 -> DEVICE_VIDEO
+  9, // 7 -> DEVICE_PERIPHERAL
+  4, // 8 -> DEVICE_JOYSTICK
+  3, // 9 -> DEVICE_GAMEPAD
+  5, // 10 -> DEVICE_KEYBOARD
+  8, // 11 -> DEVICE_MOUSE
+  11, // 12 -> DEVICE_TABLET
+  6, // 13 -> DEVICE_KEYBOARD_MOUSE_COMBO
+};
+
+const std::string& SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Name(
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_entries,
+          SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_entries_by_number,
+          14, SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_entries,
+      SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_entries_by_number,
+      14, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_strings[idx].get();
+}
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Parse(
+    const std::string& name, SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_entries, 14, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_UNKNOWN;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_COMPUTER;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_PHONE;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_MODEM;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_AUDIO;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_CAR_AUDIO;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_VIDEO;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_PERIPHERAL;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_JOYSTICK;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_GAMEPAD;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_KEYBOARD;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_MOUSE;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_TABLET;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::DEVICE_KEYBOARD_MOUSE_COMBO;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::Type_MIN;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::Type_MAX;
+constexpr int SystemProfileProto_Hardware_Bluetooth_PairedDevice::Type_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_strings[3] = {};
+
+static const char SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_names[] =
+  "VENDOR_ID_BLUETOOTH"
+  "VENDOR_ID_UNKNOWN"
+  "VENDOR_ID_USB";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_entries[] = {
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_names + 0, 19}, 1 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_names + 19, 17}, 0 },
+  { {SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_names + 36, 13}, 2 },
+};
+
+static const int SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_entries_by_number[] = {
+  1, // 0 -> VENDOR_ID_UNKNOWN
+  0, // 1 -> VENDOR_ID_BLUETOOTH
+  2, // 2 -> VENDOR_ID_USB
+};
+
+const std::string& SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Name(
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_entries,
+          SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_entries_by_number,
+          3, SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_entries,
+      SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_entries_by_number,
+      3, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_strings[idx].get();
+}
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Parse(
+    const std::string& name, SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_entries, 3, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice::VENDOR_ID_UNKNOWN;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice::VENDOR_ID_BLUETOOTH;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice::VENDOR_ID_USB;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice::VendorIDSource_MIN;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice::VendorIDSource_MAX;
+constexpr int SystemProfileProto_Hardware_Bluetooth_PairedDevice::VendorIDSource_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_Network_WifiAccessPoint_SecurityMode_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_Network_WifiAccessPoint_SecurityMode_strings[7] = {};
+
+static const char SystemProfileProto_Network_WifiAccessPoint_SecurityMode_names[] =
+  "SECURITY_802_1X"
+  "SECURITY_NONE"
+  "SECURITY_PSK"
+  "SECURITY_RSN"
+  "SECURITY_UNKNOWN"
+  "SECURITY_WEP"
+  "SECURITY_WPA";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_Network_WifiAccessPoint_SecurityMode_entries[] = {
+  { {SystemProfileProto_Network_WifiAccessPoint_SecurityMode_names + 0, 15}, 4 },
+  { {SystemProfileProto_Network_WifiAccessPoint_SecurityMode_names + 15, 13}, 6 },
+  { {SystemProfileProto_Network_WifiAccessPoint_SecurityMode_names + 28, 12}, 5 },
+  { {SystemProfileProto_Network_WifiAccessPoint_SecurityMode_names + 40, 12}, 3 },
+  { {SystemProfileProto_Network_WifiAccessPoint_SecurityMode_names + 52, 16}, 0 },
+  { {SystemProfileProto_Network_WifiAccessPoint_SecurityMode_names + 68, 12}, 2 },
+  { {SystemProfileProto_Network_WifiAccessPoint_SecurityMode_names + 80, 12}, 1 },
+};
+
+static const int SystemProfileProto_Network_WifiAccessPoint_SecurityMode_entries_by_number[] = {
+  4, // 0 -> SECURITY_UNKNOWN
+  6, // 1 -> SECURITY_WPA
+  5, // 2 -> SECURITY_WEP
+  3, // 3 -> SECURITY_RSN
+  0, // 4 -> SECURITY_802_1X
+  2, // 5 -> SECURITY_PSK
+  1, // 6 -> SECURITY_NONE
+};
+
+const std::string& SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Name(
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_Network_WifiAccessPoint_SecurityMode_entries,
+          SystemProfileProto_Network_WifiAccessPoint_SecurityMode_entries_by_number,
+          7, SystemProfileProto_Network_WifiAccessPoint_SecurityMode_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_Network_WifiAccessPoint_SecurityMode_entries,
+      SystemProfileProto_Network_WifiAccessPoint_SecurityMode_entries_by_number,
+      7, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_Network_WifiAccessPoint_SecurityMode_strings[idx].get();
+}
+bool SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Parse(
+    const std::string& name, SystemProfileProto_Network_WifiAccessPoint_SecurityMode* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_Network_WifiAccessPoint_SecurityMode_entries, 7, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_Network_WifiAccessPoint_SecurityMode>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SECURITY_UNKNOWN;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SECURITY_WPA;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SECURITY_WEP;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SECURITY_RSN;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SECURITY_802_1X;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SECURITY_PSK;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SECURITY_NONE;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SecurityMode_MIN;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::SecurityMode_MAX;
+constexpr int SystemProfileProto_Network_WifiAccessPoint::SecurityMode_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_Network_ConnectionType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_Network_ConnectionType_strings[7] = {};
+
+static const char SystemProfileProto_Network_ConnectionType_names[] =
+  "CONNECTION_2G"
+  "CONNECTION_3G"
+  "CONNECTION_4G"
+  "CONNECTION_BLUETOOTH"
+  "CONNECTION_ETHERNET"
+  "CONNECTION_UNKNOWN"
+  "CONNECTION_WIFI";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_Network_ConnectionType_entries[] = {
+  { {SystemProfileProto_Network_ConnectionType_names + 0, 13}, 3 },
+  { {SystemProfileProto_Network_ConnectionType_names + 13, 13}, 4 },
+  { {SystemProfileProto_Network_ConnectionType_names + 26, 13}, 5 },
+  { {SystemProfileProto_Network_ConnectionType_names + 39, 20}, 6 },
+  { {SystemProfileProto_Network_ConnectionType_names + 59, 19}, 1 },
+  { {SystemProfileProto_Network_ConnectionType_names + 78, 18}, 0 },
+  { {SystemProfileProto_Network_ConnectionType_names + 96, 15}, 2 },
+};
+
+static const int SystemProfileProto_Network_ConnectionType_entries_by_number[] = {
+  5, // 0 -> CONNECTION_UNKNOWN
+  4, // 1 -> CONNECTION_ETHERNET
+  6, // 2 -> CONNECTION_WIFI
+  0, // 3 -> CONNECTION_2G
+  1, // 4 -> CONNECTION_3G
+  2, // 5 -> CONNECTION_4G
+  3, // 6 -> CONNECTION_BLUETOOTH
+};
+
+const std::string& SystemProfileProto_Network_ConnectionType_Name(
+    SystemProfileProto_Network_ConnectionType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_Network_ConnectionType_entries,
+          SystemProfileProto_Network_ConnectionType_entries_by_number,
+          7, SystemProfileProto_Network_ConnectionType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_Network_ConnectionType_entries,
+      SystemProfileProto_Network_ConnectionType_entries_by_number,
+      7, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_Network_ConnectionType_strings[idx].get();
+}
+bool SystemProfileProto_Network_ConnectionType_Parse(
+    const std::string& name, SystemProfileProto_Network_ConnectionType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_Network_ConnectionType_entries, 7, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_Network_ConnectionType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::CONNECTION_UNKNOWN;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::CONNECTION_ETHERNET;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::CONNECTION_WIFI;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::CONNECTION_2G;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::CONNECTION_3G;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::CONNECTION_4G;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::CONNECTION_BLUETOOTH;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::ConnectionType_MIN;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::ConnectionType_MAX;
+constexpr int SystemProfileProto_Network::ConnectionType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_Network_WifiPHYLayerProtocol_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_Network_WifiPHYLayerProtocol_strings[7] = {};
+
+static const char SystemProfileProto_Network_WifiPHYLayerProtocol_names[] =
+  "WIFI_PHY_LAYER_PROTOCOL_A"
+  "WIFI_PHY_LAYER_PROTOCOL_ANCIENT"
+  "WIFI_PHY_LAYER_PROTOCOL_B"
+  "WIFI_PHY_LAYER_PROTOCOL_G"
+  "WIFI_PHY_LAYER_PROTOCOL_N"
+  "WIFI_PHY_LAYER_PROTOCOL_NONE"
+  "WIFI_PHY_LAYER_PROTOCOL_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_Network_WifiPHYLayerProtocol_entries[] = {
+  { {SystemProfileProto_Network_WifiPHYLayerProtocol_names + 0, 25}, 2 },
+  { {SystemProfileProto_Network_WifiPHYLayerProtocol_names + 25, 31}, 1 },
+  { {SystemProfileProto_Network_WifiPHYLayerProtocol_names + 56, 25}, 3 },
+  { {SystemProfileProto_Network_WifiPHYLayerProtocol_names + 81, 25}, 4 },
+  { {SystemProfileProto_Network_WifiPHYLayerProtocol_names + 106, 25}, 5 },
+  { {SystemProfileProto_Network_WifiPHYLayerProtocol_names + 131, 28}, 0 },
+  { {SystemProfileProto_Network_WifiPHYLayerProtocol_names + 159, 31}, 6 },
+};
+
+static const int SystemProfileProto_Network_WifiPHYLayerProtocol_entries_by_number[] = {
+  5, // 0 -> WIFI_PHY_LAYER_PROTOCOL_NONE
+  1, // 1 -> WIFI_PHY_LAYER_PROTOCOL_ANCIENT
+  0, // 2 -> WIFI_PHY_LAYER_PROTOCOL_A
+  2, // 3 -> WIFI_PHY_LAYER_PROTOCOL_B
+  3, // 4 -> WIFI_PHY_LAYER_PROTOCOL_G
+  4, // 5 -> WIFI_PHY_LAYER_PROTOCOL_N
+  6, // 6 -> WIFI_PHY_LAYER_PROTOCOL_UNKNOWN
+};
+
+const std::string& SystemProfileProto_Network_WifiPHYLayerProtocol_Name(
+    SystemProfileProto_Network_WifiPHYLayerProtocol value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_Network_WifiPHYLayerProtocol_entries,
+          SystemProfileProto_Network_WifiPHYLayerProtocol_entries_by_number,
+          7, SystemProfileProto_Network_WifiPHYLayerProtocol_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_Network_WifiPHYLayerProtocol_entries,
+      SystemProfileProto_Network_WifiPHYLayerProtocol_entries_by_number,
+      7, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_Network_WifiPHYLayerProtocol_strings[idx].get();
+}
+bool SystemProfileProto_Network_WifiPHYLayerProtocol_Parse(
+    const std::string& name, SystemProfileProto_Network_WifiPHYLayerProtocol* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_Network_WifiPHYLayerProtocol_entries, 7, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_Network_WifiPHYLayerProtocol>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WIFI_PHY_LAYER_PROTOCOL_NONE;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WIFI_PHY_LAYER_PROTOCOL_ANCIENT;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WIFI_PHY_LAYER_PROTOCOL_A;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WIFI_PHY_LAYER_PROTOCOL_B;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WIFI_PHY_LAYER_PROTOCOL_G;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WIFI_PHY_LAYER_PROTOCOL_N;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WIFI_PHY_LAYER_PROTOCOL_UNKNOWN;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WifiPHYLayerProtocol_MIN;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::WifiPHYLayerProtocol_MAX;
+constexpr int SystemProfileProto_Network::WifiPHYLayerProtocol_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_strings[5] = {};
+
+static const char SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_names[] =
+  "INSTALL_RESULT_EXIT_CODE"
+  "INSTALL_RESULT_FAILED_CUSTOM_ERROR"
+  "INSTALL_RESULT_FAILED_MSI_ERROR"
+  "INSTALL_RESULT_FAILED_SYSTEM_ERROR"
+  "INSTALL_RESULT_SUCCESS";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_entries[] = {
+  { {SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_names + 0, 24}, 4 },
+  { {SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_names + 24, 34}, 1 },
+  { {SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_names + 58, 31}, 2 },
+  { {SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_names + 89, 34}, 3 },
+  { {SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_names + 123, 22}, 0 },
+};
+
+static const int SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_entries_by_number[] = {
+  4, // 0 -> INSTALL_RESULT_SUCCESS
+  1, // 1 -> INSTALL_RESULT_FAILED_CUSTOM_ERROR
+  2, // 2 -> INSTALL_RESULT_FAILED_MSI_ERROR
+  3, // 3 -> INSTALL_RESULT_FAILED_SYSTEM_ERROR
+  0, // 4 -> INSTALL_RESULT_EXIT_CODE
+};
+
+const std::string& SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Name(
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_entries,
+          SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_entries_by_number,
+          5, SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_entries,
+      SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_strings[idx].get();
+}
+bool SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Parse(
+    const std::string& name, SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::INSTALL_RESULT_SUCCESS;
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::INSTALL_RESULT_FAILED_CUSTOM_ERROR;
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::INSTALL_RESULT_FAILED_MSI_ERROR;
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::INSTALL_RESULT_FAILED_SYSTEM_ERROR;
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::INSTALL_RESULT_EXIT_CODE;
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::InstallResult_MIN;
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::InstallResult_MAX;
+constexpr int SystemProfileProto_GoogleUpdate_ProductInfo::InstallResult_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+    case 14:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_strings[15] = {};
+
+static const char SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names[] =
+  "AUDIO_FORMAT_AAC"
+  "AUDIO_FORMAT_AC_3"
+  "AUDIO_FORMAT_ATRAC"
+  "AUDIO_FORMAT_DD_PLUS"
+  "AUDIO_FORMAT_DST_AUDIO"
+  "AUDIO_FORMAT_DTS"
+  "AUDIO_FORMAT_DTS_HD"
+  "AUDIO_FORMAT_LPCM"
+  "AUDIO_FORMAT_MICROSOFT_WMA_PRO"
+  "AUDIO_FORMAT_MLP_DOLBY_TRUEHD"
+  "AUDIO_FORMAT_MP3"
+  "AUDIO_FORMAT_MPEG1"
+  "AUDIO_FORMAT_MPEG2"
+  "AUDIO_FORMAT_ONE_BIT"
+  "AUDIO_FORMAT_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_entries[] = {
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 0, 16}, 6 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 16, 17}, 2 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 33, 18}, 8 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 51, 20}, 10 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 71, 22}, 13 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 93, 16}, 7 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 109, 19}, 11 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 128, 17}, 1 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 145, 30}, 14 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 175, 29}, 12 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 204, 16}, 4 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 220, 18}, 3 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 238, 18}, 5 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 256, 20}, 9 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_names + 276, 20}, 0 },
+};
+
+static const int SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_entries_by_number[] = {
+  14, // 0 -> AUDIO_FORMAT_UNKNOWN
+  7, // 1 -> AUDIO_FORMAT_LPCM
+  1, // 2 -> AUDIO_FORMAT_AC_3
+  11, // 3 -> AUDIO_FORMAT_MPEG1
+  10, // 4 -> AUDIO_FORMAT_MP3
+  12, // 5 -> AUDIO_FORMAT_MPEG2
+  0, // 6 -> AUDIO_FORMAT_AAC
+  5, // 7 -> AUDIO_FORMAT_DTS
+  2, // 8 -> AUDIO_FORMAT_ATRAC
+  13, // 9 -> AUDIO_FORMAT_ONE_BIT
+  3, // 10 -> AUDIO_FORMAT_DD_PLUS
+  6, // 11 -> AUDIO_FORMAT_DTS_HD
+  9, // 12 -> AUDIO_FORMAT_MLP_DOLBY_TRUEHD
+  4, // 13 -> AUDIO_FORMAT_DST_AUDIO
+  8, // 14 -> AUDIO_FORMAT_MICROSOFT_WMA_PRO
+};
+
+const std::string& SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Name(
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_entries,
+          SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_entries_by_number,
+          15, SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_entries,
+      SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_entries_by_number,
+      15, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_strings[idx].get();
+}
+bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Parse(
+    const std::string& name, SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_entries, 15, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_UNKNOWN;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_LPCM;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_AC_3;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_MPEG1;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_MP3;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_MPEG2;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_AAC;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_DTS;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_ATRAC;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_ONE_BIT;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_DD_PLUS;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_DTS_HD;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_MLP_DOLBY_TRUEHD;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_DST_AUDIO;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AUDIO_FORMAT_MICROSOFT_WMA_PRO;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AudioFormat_MIN;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AudioFormat_MAX;
+constexpr int SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::AudioFormat_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_strings[6] = {};
+
+static const char SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_names[] =
+  "AV_DEVICE_TYPE_AUDIO_SYSTEM"
+  "AV_DEVICE_TYPE_PLAYER"
+  "AV_DEVICE_TYPE_RECORDER"
+  "AV_DEVICE_TYPE_TUNER"
+  "AV_DEVICE_TYPE_TV"
+  "AV_DEVICE_TYPE_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_entries[] = {
+  { {SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_names + 0, 27}, 5 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_names + 27, 21}, 4 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_names + 48, 23}, 2 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_names + 71, 20}, 3 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_names + 91, 17}, 1 },
+  { {SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_names + 108, 22}, 0 },
+};
+
+static const int SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_entries_by_number[] = {
+  5, // 0 -> AV_DEVICE_TYPE_UNKNOWN
+  4, // 1 -> AV_DEVICE_TYPE_TV
+  2, // 2 -> AV_DEVICE_TYPE_RECORDER
+  3, // 3 -> AV_DEVICE_TYPE_TUNER
+  1, // 4 -> AV_DEVICE_TYPE_PLAYER
+  0, // 5 -> AV_DEVICE_TYPE_AUDIO_SYSTEM
+};
+
+const std::string& SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Name(
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_entries,
+          SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_entries_by_number,
+          6, SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_entries,
+      SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_entries_by_number,
+      6, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_strings[idx].get();
+}
+bool SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Parse(
+    const std::string& name, SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_entries, 6, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::AV_DEVICE_TYPE_UNKNOWN;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::AV_DEVICE_TYPE_TV;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::AV_DEVICE_TYPE_RECORDER;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::AV_DEVICE_TYPE_TUNER;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::AV_DEVICE_TYPE_PLAYER;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::AV_DEVICE_TYPE_AUDIO_SYSTEM;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::AVDeviceType_MIN;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::AVDeviceType_MAX;
+constexpr int SystemProfileProto_ExternalAudioVideoDevice::AVDeviceType_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_Channel_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_Channel_strings[5] = {};
+
+static const char SystemProfileProto_Channel_names[] =
+  "CHANNEL_BETA"
+  "CHANNEL_CANARY"
+  "CHANNEL_DEV"
+  "CHANNEL_STABLE"
+  "CHANNEL_UNKNOWN";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_Channel_entries[] = {
+  { {SystemProfileProto_Channel_names + 0, 12}, 3 },
+  { {SystemProfileProto_Channel_names + 12, 14}, 1 },
+  { {SystemProfileProto_Channel_names + 26, 11}, 2 },
+  { {SystemProfileProto_Channel_names + 37, 14}, 4 },
+  { {SystemProfileProto_Channel_names + 51, 15}, 0 },
+};
+
+static const int SystemProfileProto_Channel_entries_by_number[] = {
+  4, // 0 -> CHANNEL_UNKNOWN
+  1, // 1 -> CHANNEL_CANARY
+  2, // 2 -> CHANNEL_DEV
+  0, // 3 -> CHANNEL_BETA
+  3, // 4 -> CHANNEL_STABLE
+};
+
+const std::string& SystemProfileProto_Channel_Name(
+    SystemProfileProto_Channel value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_Channel_entries,
+          SystemProfileProto_Channel_entries_by_number,
+          5, SystemProfileProto_Channel_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_Channel_entries,
+      SystemProfileProto_Channel_entries_by_number,
+      5, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_Channel_strings[idx].get();
+}
+bool SystemProfileProto_Channel_Parse(
+    const std::string& name, SystemProfileProto_Channel* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_Channel_entries, 5, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_Channel>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_Channel SystemProfileProto::CHANNEL_UNKNOWN;
+constexpr SystemProfileProto_Channel SystemProfileProto::CHANNEL_CANARY;
+constexpr SystemProfileProto_Channel SystemProfileProto::CHANNEL_DEV;
+constexpr SystemProfileProto_Channel SystemProfileProto::CHANNEL_BETA;
+constexpr SystemProfileProto_Channel SystemProfileProto::CHANNEL_STABLE;
+constexpr SystemProfileProto_Channel SystemProfileProto::Channel_MIN;
+constexpr SystemProfileProto_Channel SystemProfileProto::Channel_MAX;
+constexpr int SystemProfileProto::Channel_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+bool SystemProfileProto_ExtensionsState_IsValid(int value) {
+  switch (value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+      return true;
+    default:
+      return false;
+  }
+}
+
+static ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<std::string> SystemProfileProto_ExtensionsState_strings[4] = {};
+
+static const char SystemProfileProto_ExtensionsState_names[] =
+  "HAS_OFFSTORE"
+  "NO_EXTENSIONS"
+  "NO_OFFSTORE_UNVERIFIED"
+  "NO_OFFSTORE_VERIFIED";
+
+static const ::PROTOBUF_NAMESPACE_ID::internal::EnumEntry SystemProfileProto_ExtensionsState_entries[] = {
+  { {SystemProfileProto_ExtensionsState_names + 0, 12}, 3 },
+  { {SystemProfileProto_ExtensionsState_names + 12, 13}, 0 },
+  { {SystemProfileProto_ExtensionsState_names + 25, 22}, 2 },
+  { {SystemProfileProto_ExtensionsState_names + 47, 20}, 1 },
+};
+
+static const int SystemProfileProto_ExtensionsState_entries_by_number[] = {
+  1, // 0 -> NO_EXTENSIONS
+  3, // 1 -> NO_OFFSTORE_VERIFIED
+  2, // 2 -> NO_OFFSTORE_UNVERIFIED
+  0, // 3 -> HAS_OFFSTORE
+};
+
+const std::string& SystemProfileProto_ExtensionsState_Name(
+    SystemProfileProto_ExtensionsState value) {
+  static const bool dummy =
+      ::PROTOBUF_NAMESPACE_ID::internal::InitializeEnumStrings(
+          SystemProfileProto_ExtensionsState_entries,
+          SystemProfileProto_ExtensionsState_entries_by_number,
+          4, SystemProfileProto_ExtensionsState_strings);
+  (void) dummy;
+  int idx = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumName(
+      SystemProfileProto_ExtensionsState_entries,
+      SystemProfileProto_ExtensionsState_entries_by_number,
+      4, value);
+  return idx == -1 ? ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyString() :
+                     SystemProfileProto_ExtensionsState_strings[idx].get();
+}
+bool SystemProfileProto_ExtensionsState_Parse(
+    const std::string& name, SystemProfileProto_ExtensionsState* value) {
+  int int_value;
+  bool success = ::PROTOBUF_NAMESPACE_ID::internal::LookUpEnumValue(
+      SystemProfileProto_ExtensionsState_entries, 4, name, &int_value);
+  if (success) {
+    *value = static_cast<SystemProfileProto_ExtensionsState>(int_value);
+  }
+  return success;
+}
+#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+constexpr SystemProfileProto_ExtensionsState SystemProfileProto::NO_EXTENSIONS;
+constexpr SystemProfileProto_ExtensionsState SystemProfileProto::NO_OFFSTORE_VERIFIED;
+constexpr SystemProfileProto_ExtensionsState SystemProfileProto::NO_OFFSTORE_UNVERIFIED;
+constexpr SystemProfileProto_ExtensionsState SystemProfileProto::HAS_OFFSTORE;
+constexpr SystemProfileProto_ExtensionsState SystemProfileProto::ExtensionsState_MIN;
+constexpr SystemProfileProto_ExtensionsState SystemProfileProto::ExtensionsState_MAX;
+constexpr int SystemProfileProto::ExtensionsState_ARRAYSIZE;
+#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
+
+// ===================================================================
+
+void SystemProfileProto_BrilloDeviceData::InitAsDefaultInstance() {
+}
+class SystemProfileProto_BrilloDeviceData::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_BrilloDeviceData>()._has_bits_);
+  static void set_has_build_target_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SystemProfileProto_BrilloDeviceData::SystemProfileProto_BrilloDeviceData()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.BrilloDeviceData)
+}
+SystemProfileProto_BrilloDeviceData::SystemProfileProto_BrilloDeviceData(const SystemProfileProto_BrilloDeviceData& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  build_target_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_build_target_id()) {
+    build_target_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.build_target_id_);
+  }
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.BrilloDeviceData)
+}
+
+void SystemProfileProto_BrilloDeviceData::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_BrilloDeviceData_system_5fprofile_2eproto.base);
+  build_target_id_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+SystemProfileProto_BrilloDeviceData::~SystemProfileProto_BrilloDeviceData() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.BrilloDeviceData)
+  SharedDtor();
+}
+
+void SystemProfileProto_BrilloDeviceData::SharedDtor() {
+  build_target_id_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_BrilloDeviceData::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_BrilloDeviceData& SystemProfileProto_BrilloDeviceData::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_BrilloDeviceData_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_BrilloDeviceData::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.BrilloDeviceData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    build_target_id_.ClearNonDefaultToEmptyNoArena();
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_BrilloDeviceData::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string build_target_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_build_target_id();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_BrilloDeviceData::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.BrilloDeviceData)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string build_target_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_build_target_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.BrilloDeviceData)
+  return target;
+}
+
+size_t SystemProfileProto_BrilloDeviceData::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.BrilloDeviceData)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional string build_target_id = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+        this->_internal_build_target_id());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_BrilloDeviceData::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_BrilloDeviceData*>(
+      &from));
+}
+
+void SystemProfileProto_BrilloDeviceData::MergeFrom(const SystemProfileProto_BrilloDeviceData& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.BrilloDeviceData)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_build_target_id()) {
+    _has_bits_[0] |= 0x00000001u;
+    build_target_id_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.build_target_id_);
+  }
+}
+
+void SystemProfileProto_BrilloDeviceData::CopyFrom(const SystemProfileProto_BrilloDeviceData& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.BrilloDeviceData)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_BrilloDeviceData::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_BrilloDeviceData::InternalSwap(SystemProfileProto_BrilloDeviceData* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  build_target_id_.Swap(&other->build_target_id_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string SystemProfileProto_BrilloDeviceData::GetTypeName() const {
+  return "metrics.SystemProfileProto.BrilloDeviceData";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_OS::InitAsDefaultInstance() {
+}
+class SystemProfileProto_OS::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_OS>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_fingerprint(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_is_jailbroken(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+SystemProfileProto_OS::SystemProfileProto_OS()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.OS)
+}
+SystemProfileProto_OS::SystemProfileProto_OS(const SystemProfileProto_OS& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_version()) {
+    version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+  }
+  fingerprint_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_fingerprint()) {
+    fingerprint_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.fingerprint_);
+  }
+  is_jailbroken_ = from.is_jailbroken_;
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.OS)
+}
+
+void SystemProfileProto_OS::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_OS_system_5fprofile_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  fingerprint_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  is_jailbroken_ = false;
+}
+
+SystemProfileProto_OS::~SystemProfileProto_OS() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.OS)
+  SharedDtor();
+}
+
+void SystemProfileProto_OS::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  fingerprint_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_OS::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_OS& SystemProfileProto_OS::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_OS_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_OS::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.OS)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      fingerprint_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  is_jailbroken_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_OS::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string fingerprint = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_fingerprint();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_jailbroken = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_is_jailbroken(&has_bits);
+          is_jailbroken_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_OS::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.OS)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional string version = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_version(), target);
+  }
+
+  // optional string fingerprint = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_fingerprint(), target);
+  }
+
+  // optional bool is_jailbroken = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_is_jailbroken(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.OS)
+  return target;
+}
+
+size_t SystemProfileProto_OS::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.OS)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string version = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_version());
+    }
+
+    // optional string fingerprint = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_fingerprint());
+    }
+
+    // optional bool is_jailbroken = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_OS::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_OS*>(
+      &from));
+}
+
+void SystemProfileProto_OS::MergeFrom(const SystemProfileProto_OS& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.OS)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      fingerprint_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.fingerprint_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      is_jailbroken_ = from.is_jailbroken_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_OS::CopyFrom(const SystemProfileProto_OS& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.OS)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_OS::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_OS::InternalSwap(SystemProfileProto_OS* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  version_.Swap(&other->version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  fingerprint_.Swap(&other->fingerprint_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(is_jailbroken_, other->is_jailbroken_);
+}
+
+std::string SystemProfileProto_OS::GetTypeName() const {
+  return "metrics.SystemProfileProto.OS";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Hardware_CPU::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Hardware_CPU::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Hardware_CPU>()._has_bits_);
+  static void set_has_vendor_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_signature(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_num_cores(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+SystemProfileProto_Hardware_CPU::SystemProfileProto_Hardware_CPU()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Hardware.CPU)
+}
+SystemProfileProto_Hardware_CPU::SystemProfileProto_Hardware_CPU(const SystemProfileProto_Hardware_CPU& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  vendor_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_vendor_name()) {
+    vendor_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vendor_name_);
+  }
+  ::memcpy(&signature_, &from.signature_,
+    static_cast<size_t>(reinterpret_cast<char*>(&num_cores_) -
+    reinterpret_cast<char*>(&signature_)) + sizeof(num_cores_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Hardware.CPU)
+}
+
+void SystemProfileProto_Hardware_CPU::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Hardware_CPU_system_5fprofile_2eproto.base);
+  vendor_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&signature_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&num_cores_) -
+      reinterpret_cast<char*>(&signature_)) + sizeof(num_cores_));
+}
+
+SystemProfileProto_Hardware_CPU::~SystemProfileProto_Hardware_CPU() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Hardware.CPU)
+  SharedDtor();
+}
+
+void SystemProfileProto_Hardware_CPU::SharedDtor() {
+  vendor_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_Hardware_CPU::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Hardware_CPU& SystemProfileProto_Hardware_CPU::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Hardware_CPU_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Hardware_CPU::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Hardware.CPU)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    vendor_name_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&signature_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&num_cores_) -
+        reinterpret_cast<char*>(&signature_)) + sizeof(num_cores_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Hardware_CPU::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string vendor_name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_vendor_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 signature = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_signature(&has_bits);
+          signature_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 num_cores = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_num_cores(&has_bits);
+          num_cores_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Hardware_CPU::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Hardware.CPU)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string vendor_name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_vendor_name(), target);
+  }
+
+  // optional uint32 signature = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(2, this->_internal_signature(), target);
+  }
+
+  // optional uint32 num_cores = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(3, this->_internal_num_cores(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Hardware.CPU)
+  return target;
+}
+
+size_t SystemProfileProto_Hardware_CPU::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Hardware.CPU)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string vendor_name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_vendor_name());
+    }
+
+    // optional uint32 signature = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_signature());
+    }
+
+    // optional uint32 num_cores = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_num_cores());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Hardware_CPU::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Hardware_CPU*>(
+      &from));
+}
+
+void SystemProfileProto_Hardware_CPU::MergeFrom(const SystemProfileProto_Hardware_CPU& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Hardware.CPU)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      vendor_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.vendor_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      signature_ = from.signature_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      num_cores_ = from.num_cores_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Hardware_CPU::CopyFrom(const SystemProfileProto_Hardware_CPU& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Hardware.CPU)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Hardware_CPU::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Hardware_CPU::InternalSwap(SystemProfileProto_Hardware_CPU* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  vendor_name_.Swap(&other->vendor_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(signature_, other->signature_);
+  swap(num_cores_, other->num_cores_);
+}
+
+std::string SystemProfileProto_Hardware_CPU::GetTypeName() const {
+  return "metrics.SystemProfileProto.Hardware.CPU";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Hardware_Graphics::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Hardware_Graphics::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Hardware_Graphics>()._has_bits_);
+  static void set_has_vendor_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_driver_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_driver_date(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_gl_vendor(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_gl_renderer(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+SystemProfileProto_Hardware_Graphics::SystemProfileProto_Hardware_Graphics()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Hardware.Graphics)
+}
+SystemProfileProto_Hardware_Graphics::SystemProfileProto_Hardware_Graphics(const SystemProfileProto_Hardware_Graphics& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  driver_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_driver_version()) {
+    driver_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.driver_version_);
+  }
+  driver_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_driver_date()) {
+    driver_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.driver_date_);
+  }
+  gl_vendor_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_gl_vendor()) {
+    gl_vendor_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gl_vendor_);
+  }
+  gl_renderer_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_gl_renderer()) {
+    gl_renderer_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gl_renderer_);
+  }
+  ::memcpy(&vendor_id_, &from.vendor_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&device_id_) -
+    reinterpret_cast<char*>(&vendor_id_)) + sizeof(device_id_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Hardware.Graphics)
+}
+
+void SystemProfileProto_Hardware_Graphics::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Hardware_Graphics_system_5fprofile_2eproto.base);
+  driver_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  driver_date_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  gl_vendor_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  gl_renderer_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&vendor_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&device_id_) -
+      reinterpret_cast<char*>(&vendor_id_)) + sizeof(device_id_));
+}
+
+SystemProfileProto_Hardware_Graphics::~SystemProfileProto_Hardware_Graphics() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Hardware.Graphics)
+  SharedDtor();
+}
+
+void SystemProfileProto_Hardware_Graphics::SharedDtor() {
+  driver_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  driver_date_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  gl_vendor_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  gl_renderer_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_Hardware_Graphics::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Hardware_Graphics& SystemProfileProto_Hardware_Graphics::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Hardware_Graphics_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Hardware_Graphics::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Hardware.Graphics)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      driver_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      driver_date_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      gl_vendor_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      gl_renderer_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x00000030u) {
+    ::memset(&vendor_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&device_id_) -
+        reinterpret_cast<char*>(&vendor_id_)) + sizeof(device_id_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Hardware_Graphics::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 vendor_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_vendor_id(&has_bits);
+          vendor_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 device_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_device_id(&has_bits);
+          device_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string driver_version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_driver_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string driver_date = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_driver_date();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string gl_vendor = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          auto str = _internal_mutable_gl_vendor();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string gl_renderer = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          auto str = _internal_mutable_gl_renderer();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Hardware_Graphics::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Hardware.Graphics)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 vendor_id = 1;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_vendor_id(), target);
+  }
+
+  // optional uint32 device_id = 2;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(2, this->_internal_device_id(), target);
+  }
+
+  // optional string driver_version = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_driver_version(), target);
+  }
+
+  // optional string driver_date = 4;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_driver_date(), target);
+  }
+
+  // optional string gl_vendor = 6;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        6, this->_internal_gl_vendor(), target);
+  }
+
+  // optional string gl_renderer = 7;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        7, this->_internal_gl_renderer(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Hardware.Graphics)
+  return target;
+}
+
+size_t SystemProfileProto_Hardware_Graphics::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Hardware.Graphics)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    // optional string driver_version = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_driver_version());
+    }
+
+    // optional string driver_date = 4;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_driver_date());
+    }
+
+    // optional string gl_vendor = 6;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_gl_vendor());
+    }
+
+    // optional string gl_renderer = 7;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_gl_renderer());
+    }
+
+    // optional uint32 vendor_id = 1;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_vendor_id());
+    }
+
+    // optional uint32 device_id = 2;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_device_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Hardware_Graphics::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Hardware_Graphics*>(
+      &from));
+}
+
+void SystemProfileProto_Hardware_Graphics::MergeFrom(const SystemProfileProto_Hardware_Graphics& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Hardware.Graphics)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000003fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      driver_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.driver_version_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      driver_date_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.driver_date_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      gl_vendor_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gl_vendor_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      gl_renderer_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.gl_renderer_);
+    }
+    if (cached_has_bits & 0x00000010u) {
+      vendor_id_ = from.vendor_id_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      device_id_ = from.device_id_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Hardware_Graphics::CopyFrom(const SystemProfileProto_Hardware_Graphics& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Hardware.Graphics)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Hardware_Graphics::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Hardware_Graphics::InternalSwap(SystemProfileProto_Hardware_Graphics* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  driver_version_.Swap(&other->driver_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  driver_date_.Swap(&other->driver_date_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  gl_vendor_.Swap(&other->gl_vendor_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  gl_renderer_.Swap(&other->gl_renderer_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(vendor_id_, other->vendor_id_);
+  swap(device_id_, other->device_id_);
+}
+
+std::string SystemProfileProto_Hardware_Graphics::GetTypeName() const {
+  return "metrics.SystemProfileProto.Hardware.Graphics";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Hardware_Bluetooth_PairedDevice::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Hardware_Bluetooth_PairedDevice>()._has_bits_);
+  static void set_has_bluetooth_class(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_vendor_prefix(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_vendor_id_source(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_vendor_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_product_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_device_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+};
+
+SystemProfileProto_Hardware_Bluetooth_PairedDevice::SystemProfileProto_Hardware_Bluetooth_PairedDevice()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+}
+SystemProfileProto_Hardware_Bluetooth_PairedDevice::SystemProfileProto_Hardware_Bluetooth_PairedDevice(const SystemProfileProto_Hardware_Bluetooth_PairedDevice& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&bluetooth_class_, &from.bluetooth_class_,
+    static_cast<size_t>(reinterpret_cast<char*>(&vendor_id_source_) -
+    reinterpret_cast<char*>(&bluetooth_class_)) + sizeof(vendor_id_source_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+}
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::SharedCtor() {
+  ::memset(&bluetooth_class_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&vendor_id_source_) -
+      reinterpret_cast<char*>(&bluetooth_class_)) + sizeof(vendor_id_source_));
+}
+
+SystemProfileProto_Hardware_Bluetooth_PairedDevice::~SystemProfileProto_Hardware_Bluetooth_PairedDevice() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+  SharedDtor();
+}
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::SharedDtor() {
+}
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Hardware_Bluetooth_PairedDevice& SystemProfileProto_Hardware_Bluetooth_PairedDevice::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Hardware_Bluetooth_PairedDevice_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    ::memset(&bluetooth_class_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&vendor_id_source_) -
+        reinterpret_cast<char*>(&bluetooth_class_)) + sizeof(vendor_id_source_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Hardware_Bluetooth_PairedDevice::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 bluetooth_class = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_bluetooth_class(&has_bits);
+          bluetooth_class_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.Type type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_IsValid(val))) {
+            _internal_set_type(static_cast<::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 vendor_prefix = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_vendor_prefix(&has_bits);
+          vendor_prefix_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 vendor_id = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_vendor_id(&has_bits);
+          vendor_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 product_id = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_product_id(&has_bits);
+          product_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 device_id = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_device_id(&has_bits);
+          device_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.VendorIDSource vendor_id_source = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_IsValid(val))) {
+            _internal_set_vendor_id_source(static_cast<::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(8, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Hardware_Bluetooth_PairedDevice::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 bluetooth_class = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_bluetooth_class(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.Type type = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_type(), target);
+  }
+
+  // optional uint32 vendor_prefix = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(4, this->_internal_vendor_prefix(), target);
+  }
+
+  // optional uint32 vendor_id = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(5, this->_internal_vendor_id(), target);
+  }
+
+  // optional uint32 product_id = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(6, this->_internal_product_id(), target);
+  }
+
+  // optional uint32 device_id = 7;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(7, this->_internal_device_id(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.VendorIDSource vendor_id_source = 8;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      8, this->_internal_vendor_id_source(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+  return target;
+}
+
+size_t SystemProfileProto_Hardware_Bluetooth_PairedDevice::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    // optional uint32 bluetooth_class = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_bluetooth_class());
+    }
+
+    // optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.Type type = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_type());
+    }
+
+    // optional uint32 vendor_prefix = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_vendor_prefix());
+    }
+
+    // optional uint32 vendor_id = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_vendor_id());
+    }
+
+    // optional uint32 product_id = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_product_id());
+    }
+
+    // optional uint32 device_id = 7;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_device_id());
+    }
+
+    // optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.VendorIDSource vendor_id_source = 8;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_vendor_id_source());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Hardware_Bluetooth_PairedDevice*>(
+      &from));
+}
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::MergeFrom(const SystemProfileProto_Hardware_Bluetooth_PairedDevice& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    if (cached_has_bits & 0x00000001u) {
+      bluetooth_class_ = from.bluetooth_class_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      type_ = from.type_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      vendor_prefix_ = from.vendor_prefix_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      vendor_id_ = from.vendor_id_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      product_id_ = from.product_id_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      device_id_ = from.device_id_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      vendor_id_source_ = from.vendor_id_source_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::CopyFrom(const SystemProfileProto_Hardware_Bluetooth_PairedDevice& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Hardware_Bluetooth_PairedDevice::InternalSwap(SystemProfileProto_Hardware_Bluetooth_PairedDevice* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(bluetooth_class_, other->bluetooth_class_);
+  swap(type_, other->type_);
+  swap(vendor_prefix_, other->vendor_prefix_);
+  swap(vendor_id_, other->vendor_id_);
+  swap(product_id_, other->product_id_);
+  swap(device_id_, other->device_id_);
+  swap(vendor_id_source_, other->vendor_id_source_);
+}
+
+std::string SystemProfileProto_Hardware_Bluetooth_PairedDevice::GetTypeName() const {
+  return "metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Hardware_Bluetooth::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Hardware_Bluetooth::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Hardware_Bluetooth>()._has_bits_);
+  static void set_has_is_present(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_is_enabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+SystemProfileProto_Hardware_Bluetooth::SystemProfileProto_Hardware_Bluetooth()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Hardware.Bluetooth)
+}
+SystemProfileProto_Hardware_Bluetooth::SystemProfileProto_Hardware_Bluetooth(const SystemProfileProto_Hardware_Bluetooth& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      paired_device_(from.paired_device_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&is_present_, &from.is_present_,
+    static_cast<size_t>(reinterpret_cast<char*>(&is_enabled_) -
+    reinterpret_cast<char*>(&is_present_)) + sizeof(is_enabled_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Hardware.Bluetooth)
+}
+
+void SystemProfileProto_Hardware_Bluetooth::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Hardware_Bluetooth_system_5fprofile_2eproto.base);
+  ::memset(&is_present_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_enabled_) -
+      reinterpret_cast<char*>(&is_present_)) + sizeof(is_enabled_));
+}
+
+SystemProfileProto_Hardware_Bluetooth::~SystemProfileProto_Hardware_Bluetooth() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Hardware.Bluetooth)
+  SharedDtor();
+}
+
+void SystemProfileProto_Hardware_Bluetooth::SharedDtor() {
+}
+
+void SystemProfileProto_Hardware_Bluetooth::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Hardware_Bluetooth& SystemProfileProto_Hardware_Bluetooth::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Hardware_Bluetooth_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Hardware_Bluetooth::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Hardware.Bluetooth)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  paired_device_.Clear();
+  ::memset(&is_present_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_enabled_) -
+      reinterpret_cast<char*>(&is_present_)) + sizeof(is_enabled_));
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Hardware_Bluetooth::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool is_present = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_is_present(&has_bits);
+          is_present_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_enabled = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_is_enabled(&has_bits);
+          is_enabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice paired_device = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_paired_device(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Hardware_Bluetooth::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Hardware.Bluetooth)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool is_present = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_is_present(), target);
+  }
+
+  // optional bool is_enabled = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_is_enabled(), target);
+  }
+
+  // repeated .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice paired_device = 3;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_paired_device_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(3, this->_internal_paired_device(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Hardware.Bluetooth)
+  return target;
+}
+
+size_t SystemProfileProto_Hardware_Bluetooth::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Hardware.Bluetooth)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice paired_device = 3;
+  total_size += 1UL * this->_internal_paired_device_size();
+  for (const auto& msg : this->paired_device_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional bool is_present = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool is_enabled = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Hardware_Bluetooth::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Hardware_Bluetooth*>(
+      &from));
+}
+
+void SystemProfileProto_Hardware_Bluetooth::MergeFrom(const SystemProfileProto_Hardware_Bluetooth& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Hardware.Bluetooth)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  paired_device_.MergeFrom(from.paired_device_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      is_present_ = from.is_present_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      is_enabled_ = from.is_enabled_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Hardware_Bluetooth::CopyFrom(const SystemProfileProto_Hardware_Bluetooth& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Hardware.Bluetooth)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Hardware_Bluetooth::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Hardware_Bluetooth::InternalSwap(SystemProfileProto_Hardware_Bluetooth* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  paired_device_.InternalSwap(&other->paired_device_);
+  swap(is_present_, other->is_present_);
+  swap(is_enabled_, other->is_enabled_);
+}
+
+std::string SystemProfileProto_Hardware_Bluetooth::GetTypeName() const {
+  return "metrics.SystemProfileProto.Hardware.Bluetooth";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Hardware_TouchScreen::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Hardware_TouchScreen::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Hardware_TouchScreen>()._has_bits_);
+  static void set_has_vendor_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_product_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+SystemProfileProto_Hardware_TouchScreen::SystemProfileProto_Hardware_TouchScreen()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Hardware.TouchScreen)
+}
+SystemProfileProto_Hardware_TouchScreen::SystemProfileProto_Hardware_TouchScreen(const SystemProfileProto_Hardware_TouchScreen& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&vendor_id_, &from.vendor_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&product_id_) -
+    reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Hardware.TouchScreen)
+}
+
+void SystemProfileProto_Hardware_TouchScreen::SharedCtor() {
+  ::memset(&vendor_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&product_id_) -
+      reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+}
+
+SystemProfileProto_Hardware_TouchScreen::~SystemProfileProto_Hardware_TouchScreen() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Hardware.TouchScreen)
+  SharedDtor();
+}
+
+void SystemProfileProto_Hardware_TouchScreen::SharedDtor() {
+}
+
+void SystemProfileProto_Hardware_TouchScreen::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Hardware_TouchScreen& SystemProfileProto_Hardware_TouchScreen::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Hardware_TouchScreen_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Hardware_TouchScreen::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Hardware.TouchScreen)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&vendor_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&product_id_) -
+        reinterpret_cast<char*>(&vendor_id_)) + sizeof(product_id_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Hardware_TouchScreen::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 vendor_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_vendor_id(&has_bits);
+          vendor_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 product_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_product_id(&has_bits);
+          product_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Hardware_TouchScreen::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Hardware.TouchScreen)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 vendor_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_vendor_id(), target);
+  }
+
+  // optional uint32 product_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(2, this->_internal_product_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Hardware.TouchScreen)
+  return target;
+}
+
+size_t SystemProfileProto_Hardware_TouchScreen::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Hardware.TouchScreen)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional uint32 vendor_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_vendor_id());
+    }
+
+    // optional uint32 product_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_product_id());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Hardware_TouchScreen::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Hardware_TouchScreen*>(
+      &from));
+}
+
+void SystemProfileProto_Hardware_TouchScreen::MergeFrom(const SystemProfileProto_Hardware_TouchScreen& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Hardware.TouchScreen)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      vendor_id_ = from.vendor_id_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      product_id_ = from.product_id_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Hardware_TouchScreen::CopyFrom(const SystemProfileProto_Hardware_TouchScreen& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Hardware.TouchScreen)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Hardware_TouchScreen::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Hardware_TouchScreen::InternalSwap(SystemProfileProto_Hardware_TouchScreen* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(vendor_id_, other->vendor_id_);
+  swap(product_id_, other->product_id_);
+}
+
+std::string SystemProfileProto_Hardware_TouchScreen::GetTypeName() const {
+  return "metrics.SystemProfileProto.Hardware.TouchScreen";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Hardware_Drive::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Hardware_Drive::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Hardware_Drive>()._has_bits_);
+  static void set_has_has_seek_penalty(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+SystemProfileProto_Hardware_Drive::SystemProfileProto_Hardware_Drive()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Hardware.Drive)
+}
+SystemProfileProto_Hardware_Drive::SystemProfileProto_Hardware_Drive(const SystemProfileProto_Hardware_Drive& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  has_seek_penalty_ = from.has_seek_penalty_;
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Hardware.Drive)
+}
+
+void SystemProfileProto_Hardware_Drive::SharedCtor() {
+  has_seek_penalty_ = false;
+}
+
+SystemProfileProto_Hardware_Drive::~SystemProfileProto_Hardware_Drive() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Hardware.Drive)
+  SharedDtor();
+}
+
+void SystemProfileProto_Hardware_Drive::SharedDtor() {
+}
+
+void SystemProfileProto_Hardware_Drive::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Hardware_Drive& SystemProfileProto_Hardware_Drive::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Hardware_Drive_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Hardware_Drive::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Hardware.Drive)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  has_seek_penalty_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Hardware_Drive::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool has_seek_penalty = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_has_seek_penalty(&has_bits);
+          has_seek_penalty_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Hardware_Drive::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Hardware.Drive)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool has_seek_penalty = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_has_seek_penalty(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Hardware.Drive)
+  return target;
+}
+
+size_t SystemProfileProto_Hardware_Drive::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Hardware.Drive)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // optional bool has_seek_penalty = 1;
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    total_size += 1 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Hardware_Drive::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Hardware_Drive*>(
+      &from));
+}
+
+void SystemProfileProto_Hardware_Drive::MergeFrom(const SystemProfileProto_Hardware_Drive& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Hardware.Drive)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  if (from._internal_has_has_seek_penalty()) {
+    _internal_set_has_seek_penalty(from._internal_has_seek_penalty());
+  }
+}
+
+void SystemProfileProto_Hardware_Drive::CopyFrom(const SystemProfileProto_Hardware_Drive& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Hardware.Drive)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Hardware_Drive::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Hardware_Drive::InternalSwap(SystemProfileProto_Hardware_Drive* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(has_seek_penalty_, other->has_seek_penalty_);
+}
+
+std::string SystemProfileProto_Hardware_Drive::GetTypeName() const {
+  return "metrics.SystemProfileProto.Hardware.Drive";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Hardware::InitAsDefaultInstance() {
+  ::metrics::_SystemProfileProto_Hardware_default_instance_._instance.get_mutable()->cpu_ = const_cast< ::metrics::SystemProfileProto_Hardware_CPU*>(
+      ::metrics::SystemProfileProto_Hardware_CPU::internal_default_instance());
+  ::metrics::_SystemProfileProto_Hardware_default_instance_._instance.get_mutable()->gpu_ = const_cast< ::metrics::SystemProfileProto_Hardware_Graphics*>(
+      ::metrics::SystemProfileProto_Hardware_Graphics::internal_default_instance());
+  ::metrics::_SystemProfileProto_Hardware_default_instance_._instance.get_mutable()->bluetooth_ = const_cast< ::metrics::SystemProfileProto_Hardware_Bluetooth*>(
+      ::metrics::SystemProfileProto_Hardware_Bluetooth::internal_default_instance());
+  ::metrics::_SystemProfileProto_Hardware_default_instance_._instance.get_mutable()->app_drive_ = const_cast< ::metrics::SystemProfileProto_Hardware_Drive*>(
+      ::metrics::SystemProfileProto_Hardware_Drive::internal_default_instance());
+  ::metrics::_SystemProfileProto_Hardware_default_instance_._instance.get_mutable()->user_data_drive_ = const_cast< ::metrics::SystemProfileProto_Hardware_Drive*>(
+      ::metrics::SystemProfileProto_Hardware_Drive::internal_default_instance());
+}
+class SystemProfileProto_Hardware::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Hardware>()._has_bits_);
+  static void set_has_cpu_architecture(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_system_ram_mb(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_dll_base(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_hardware_class(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_screen_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_primary_screen_width(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_primary_screen_height(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_primary_screen_scale_factor(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static void set_has_max_dpi_x(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_max_dpi_y(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static const ::metrics::SystemProfileProto_Hardware_CPU& cpu(const SystemProfileProto_Hardware* msg);
+  static void set_has_cpu(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static const ::metrics::SystemProfileProto_Hardware_Graphics& gpu(const SystemProfileProto_Hardware* msg);
+  static void set_has_gpu(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::metrics::SystemProfileProto_Hardware_Bluetooth& bluetooth(const SystemProfileProto_Hardware* msg);
+  static void set_has_bluetooth(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_internal_display_supports_touch(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static const ::metrics::SystemProfileProto_Hardware_Drive& app_drive(const SystemProfileProto_Hardware* msg);
+  static void set_has_app_drive(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::metrics::SystemProfileProto_Hardware_Drive& user_data_drive(const SystemProfileProto_Hardware* msg);
+  static void set_has_user_data_drive(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+};
+
+const ::metrics::SystemProfileProto_Hardware_CPU&
+SystemProfileProto_Hardware::_Internal::cpu(const SystemProfileProto_Hardware* msg) {
+  return *msg->cpu_;
+}
+const ::metrics::SystemProfileProto_Hardware_Graphics&
+SystemProfileProto_Hardware::_Internal::gpu(const SystemProfileProto_Hardware* msg) {
+  return *msg->gpu_;
+}
+const ::metrics::SystemProfileProto_Hardware_Bluetooth&
+SystemProfileProto_Hardware::_Internal::bluetooth(const SystemProfileProto_Hardware* msg) {
+  return *msg->bluetooth_;
+}
+const ::metrics::SystemProfileProto_Hardware_Drive&
+SystemProfileProto_Hardware::_Internal::app_drive(const SystemProfileProto_Hardware* msg) {
+  return *msg->app_drive_;
+}
+const ::metrics::SystemProfileProto_Hardware_Drive&
+SystemProfileProto_Hardware::_Internal::user_data_drive(const SystemProfileProto_Hardware* msg) {
+  return *msg->user_data_drive_;
+}
+SystemProfileProto_Hardware::SystemProfileProto_Hardware()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Hardware)
+}
+SystemProfileProto_Hardware::SystemProfileProto_Hardware(const SystemProfileProto_Hardware& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      external_touchscreen_(from.external_touchscreen_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  cpu_architecture_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_cpu_architecture()) {
+    cpu_architecture_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cpu_architecture_);
+  }
+  hardware_class_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_hardware_class()) {
+    hardware_class_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.hardware_class_);
+  }
+  if (from._internal_has_gpu()) {
+    gpu_ = new ::metrics::SystemProfileProto_Hardware_Graphics(*from.gpu_);
+  } else {
+    gpu_ = nullptr;
+  }
+  if (from._internal_has_bluetooth()) {
+    bluetooth_ = new ::metrics::SystemProfileProto_Hardware_Bluetooth(*from.bluetooth_);
+  } else {
+    bluetooth_ = nullptr;
+  }
+  if (from._internal_has_cpu()) {
+    cpu_ = new ::metrics::SystemProfileProto_Hardware_CPU(*from.cpu_);
+  } else {
+    cpu_ = nullptr;
+  }
+  if (from._internal_has_app_drive()) {
+    app_drive_ = new ::metrics::SystemProfileProto_Hardware_Drive(*from.app_drive_);
+  } else {
+    app_drive_ = nullptr;
+  }
+  if (from._internal_has_user_data_drive()) {
+    user_data_drive_ = new ::metrics::SystemProfileProto_Hardware_Drive(*from.user_data_drive_);
+  } else {
+    user_data_drive_ = nullptr;
+  }
+  ::memcpy(&system_ram_mb_, &from.system_ram_mb_,
+    static_cast<size_t>(reinterpret_cast<char*>(&internal_display_supports_touch_) -
+    reinterpret_cast<char*>(&system_ram_mb_)) + sizeof(internal_display_supports_touch_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Hardware)
+}
+
+void SystemProfileProto_Hardware::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Hardware_system_5fprofile_2eproto.base);
+  cpu_architecture_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  hardware_class_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&gpu_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&internal_display_supports_touch_) -
+      reinterpret_cast<char*>(&gpu_)) + sizeof(internal_display_supports_touch_));
+}
+
+SystemProfileProto_Hardware::~SystemProfileProto_Hardware() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Hardware)
+  SharedDtor();
+}
+
+void SystemProfileProto_Hardware::SharedDtor() {
+  cpu_architecture_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  hardware_class_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete gpu_;
+  if (this != internal_default_instance()) delete bluetooth_;
+  if (this != internal_default_instance()) delete cpu_;
+  if (this != internal_default_instance()) delete app_drive_;
+  if (this != internal_default_instance()) delete user_data_drive_;
+}
+
+void SystemProfileProto_Hardware::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Hardware& SystemProfileProto_Hardware::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Hardware_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Hardware::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Hardware)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  external_touchscreen_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    if (cached_has_bits & 0x00000001u) {
+      cpu_architecture_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      hardware_class_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      GOOGLE_DCHECK(gpu_ != nullptr);
+      gpu_->Clear();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(bluetooth_ != nullptr);
+      bluetooth_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(cpu_ != nullptr);
+      cpu_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(app_drive_ != nullptr);
+      app_drive_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(user_data_drive_ != nullptr);
+      user_data_drive_->Clear();
+    }
+  }
+  system_ram_mb_ = PROTOBUF_LONGLONG(0);
+  if (cached_has_bits & 0x0000ff00u) {
+    ::memset(&dll_base_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&internal_display_supports_touch_) -
+        reinterpret_cast<char*>(&dll_base_)) + sizeof(internal_display_supports_touch_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Hardware::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string cpu_architecture = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_cpu_architecture();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 system_ram_mb = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_system_ram_mb(&has_bits);
+          system_ram_mb_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 dll_base = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_dll_base(&has_bits);
+          dll_base_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string hardware_class = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_hardware_class();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 screen_count = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_screen_count(&has_bits);
+          screen_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 primary_screen_width = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_primary_screen_width(&has_bits);
+          primary_screen_width_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 primary_screen_height = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_primary_screen_height(&has_bits);
+          primary_screen_height_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Hardware.Graphics gpu = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_gpu(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional float max_dpi_x = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 77)) {
+          _Internal::set_has_max_dpi_x(&has_bits);
+          max_dpi_x_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
+          ptr += sizeof(float);
+        } else goto handle_unusual;
+        continue;
+      // optional float max_dpi_y = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 85)) {
+          _Internal::set_has_max_dpi_y(&has_bits);
+          max_dpi_y_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
+          ptr += sizeof(float);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Hardware.Bluetooth bluetooth = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_bluetooth(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional float primary_screen_scale_factor = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 101)) {
+          _Internal::set_has_primary_screen_scale_factor(&has_bits);
+          primary_screen_scale_factor_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr);
+          ptr += sizeof(float);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Hardware.CPU cpu = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_cpu(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool internal_display_supports_touch = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 112)) {
+          _Internal::set_has_internal_display_supports_touch(&has_bits);
+          internal_display_supports_touch_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.Hardware.TouchScreen external_touchscreen = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_external_touchscreen(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<122>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Hardware.Drive app_drive = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 130)) {
+          ptr = ctx->ParseMessage(_internal_mutable_app_drive(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Hardware.Drive user_data_drive = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 138)) {
+          ptr = ctx->ParseMessage(_internal_mutable_user_data_drive(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Hardware::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Hardware)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string cpu_architecture = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_cpu_architecture(), target);
+  }
+
+  // optional int64 system_ram_mb = 2;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_system_ram_mb(), target);
+  }
+
+  // optional int64 dll_base = 3;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_dll_base(), target);
+  }
+
+  // optional string hardware_class = 4;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_hardware_class(), target);
+  }
+
+  // optional int32 screen_count = 5;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_screen_count(), target);
+  }
+
+  // optional int32 primary_screen_width = 6;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_primary_screen_width(), target);
+  }
+
+  // optional int32 primary_screen_height = 7;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(7, this->_internal_primary_screen_height(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Hardware.Graphics gpu = 8;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        8, _Internal::gpu(this), target, stream);
+  }
+
+  // optional float max_dpi_x = 9;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(9, this->_internal_max_dpi_x(), target);
+  }
+
+  // optional float max_dpi_y = 10;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(10, this->_internal_max_dpi_y(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Hardware.Bluetooth bluetooth = 11;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        11, _Internal::bluetooth(this), target, stream);
+  }
+
+  // optional float primary_screen_scale_factor = 12;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFloatToArray(12, this->_internal_primary_screen_scale_factor(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Hardware.CPU cpu = 13;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        13, _Internal::cpu(this), target, stream);
+  }
+
+  // optional bool internal_display_supports_touch = 14;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(14, this->_internal_internal_display_supports_touch(), target);
+  }
+
+  // repeated .metrics.SystemProfileProto.Hardware.TouchScreen external_touchscreen = 15;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_external_touchscreen_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(15, this->_internal_external_touchscreen(i), target, stream);
+  }
+
+  // optional .metrics.SystemProfileProto.Hardware.Drive app_drive = 16;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        16, _Internal::app_drive(this), target, stream);
+  }
+
+  // optional .metrics.SystemProfileProto.Hardware.Drive user_data_drive = 17;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        17, _Internal::user_data_drive(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Hardware)
+  return target;
+}
+
+size_t SystemProfileProto_Hardware::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Hardware)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.SystemProfileProto.Hardware.TouchScreen external_touchscreen = 15;
+  total_size += 1UL * this->_internal_external_touchscreen_size();
+  for (const auto& msg : this->external_touchscreen_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string cpu_architecture = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_cpu_architecture());
+    }
+
+    // optional string hardware_class = 4;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_hardware_class());
+    }
+
+    // optional .metrics.SystemProfileProto.Hardware.Graphics gpu = 8;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *gpu_);
+    }
+
+    // optional .metrics.SystemProfileProto.Hardware.Bluetooth bluetooth = 11;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *bluetooth_);
+    }
+
+    // optional .metrics.SystemProfileProto.Hardware.CPU cpu = 13;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *cpu_);
+    }
+
+    // optional .metrics.SystemProfileProto.Hardware.Drive app_drive = 16;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *app_drive_);
+    }
+
+    // optional .metrics.SystemProfileProto.Hardware.Drive user_data_drive = 17;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *user_data_drive_);
+    }
+
+    // optional int64 system_ram_mb = 2;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_system_ram_mb());
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional int64 dll_base = 3;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_dll_base());
+    }
+
+    // optional int32 screen_count = 5;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_screen_count());
+    }
+
+    // optional int32 primary_screen_width = 6;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_primary_screen_width());
+    }
+
+    // optional int32 primary_screen_height = 7;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_primary_screen_height());
+    }
+
+    // optional float max_dpi_x = 9;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 1 + 4;
+    }
+
+    // optional float max_dpi_y = 10;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 1 + 4;
+    }
+
+    // optional float primary_screen_scale_factor = 12;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 1 + 4;
+    }
+
+    // optional bool internal_display_supports_touch = 14;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Hardware::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Hardware*>(
+      &from));
+}
+
+void SystemProfileProto_Hardware::MergeFrom(const SystemProfileProto_Hardware& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Hardware)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  external_touchscreen_.MergeFrom(from.external_touchscreen_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      cpu_architecture_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.cpu_architecture_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      hardware_class_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.hardware_class_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _internal_mutable_gpu()->::metrics::SystemProfileProto_Hardware_Graphics::MergeFrom(from._internal_gpu());
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_bluetooth()->::metrics::SystemProfileProto_Hardware_Bluetooth::MergeFrom(from._internal_bluetooth());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_cpu()->::metrics::SystemProfileProto_Hardware_CPU::MergeFrom(from._internal_cpu());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_app_drive()->::metrics::SystemProfileProto_Hardware_Drive::MergeFrom(from._internal_app_drive());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_user_data_drive()->::metrics::SystemProfileProto_Hardware_Drive::MergeFrom(from._internal_user_data_drive());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      system_ram_mb_ = from.system_ram_mb_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      dll_base_ = from.dll_base_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      screen_count_ = from.screen_count_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      primary_screen_width_ = from.primary_screen_width_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      primary_screen_height_ = from.primary_screen_height_;
+    }
+    if (cached_has_bits & 0x00001000u) {
+      max_dpi_x_ = from.max_dpi_x_;
+    }
+    if (cached_has_bits & 0x00002000u) {
+      max_dpi_y_ = from.max_dpi_y_;
+    }
+    if (cached_has_bits & 0x00004000u) {
+      primary_screen_scale_factor_ = from.primary_screen_scale_factor_;
+    }
+    if (cached_has_bits & 0x00008000u) {
+      internal_display_supports_touch_ = from.internal_display_supports_touch_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Hardware::CopyFrom(const SystemProfileProto_Hardware& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Hardware)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Hardware::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Hardware::InternalSwap(SystemProfileProto_Hardware* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  external_touchscreen_.InternalSwap(&other->external_touchscreen_);
+  cpu_architecture_.Swap(&other->cpu_architecture_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  hardware_class_.Swap(&other->hardware_class_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(gpu_, other->gpu_);
+  swap(bluetooth_, other->bluetooth_);
+  swap(cpu_, other->cpu_);
+  swap(app_drive_, other->app_drive_);
+  swap(user_data_drive_, other->user_data_drive_);
+  swap(system_ram_mb_, other->system_ram_mb_);
+  swap(dll_base_, other->dll_base_);
+  swap(screen_count_, other->screen_count_);
+  swap(primary_screen_width_, other->primary_screen_width_);
+  swap(primary_screen_height_, other->primary_screen_height_);
+  swap(max_dpi_x_, other->max_dpi_x_);
+  swap(max_dpi_y_, other->max_dpi_y_);
+  swap(primary_screen_scale_factor_, other->primary_screen_scale_factor_);
+  swap(internal_display_supports_touch_, other->internal_display_supports_touch_);
+}
+
+std::string SystemProfileProto_Hardware::GetTypeName() const {
+  return "metrics.SystemProfileProto.Hardware";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Network_WifiAccessPoint_VendorInformation>()._has_bits_);
+  static void set_has_model_number(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_model_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_device_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+};
+
+SystemProfileProto_Network_WifiAccessPoint_VendorInformation::SystemProfileProto_Network_WifiAccessPoint_VendorInformation()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+}
+SystemProfileProto_Network_WifiAccessPoint_VendorInformation::SystemProfileProto_Network_WifiAccessPoint_VendorInformation(const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      element_identifier_(from.element_identifier_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  model_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_model_number()) {
+    model_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_number_);
+  }
+  model_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_model_name()) {
+    model_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_name_);
+  }
+  device_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_name()) {
+    device_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_name_);
+  }
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+}
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_system_5fprofile_2eproto.base);
+  model_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+SystemProfileProto_Network_WifiAccessPoint_VendorInformation::~SystemProfileProto_Network_WifiAccessPoint_VendorInformation() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+  SharedDtor();
+}
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::SharedDtor() {
+  model_number_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& SystemProfileProto_Network_WifiAccessPoint_VendorInformation::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  element_identifier_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      model_number_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      model_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      device_name_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string model_number = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_model_number();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string model_name = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_model_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_name = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_device_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated uint32 element_identifier = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            _internal_add_element_identifier(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<32>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedUInt32Parser(_internal_mutable_element_identifier(), ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string model_number = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_model_number(), target);
+  }
+
+  // optional string model_name = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_model_name(), target);
+  }
+
+  // optional string device_name = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_device_name(), target);
+  }
+
+  // repeated uint32 element_identifier = 4;
+  for (int i = 0, n = this->_internal_element_identifier_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(4, this->_internal_element_identifier(i), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+  return target;
+}
+
+size_t SystemProfileProto_Network_WifiAccessPoint_VendorInformation::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated uint32 element_identifier = 4;
+  {
+    size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      UInt32Size(this->element_identifier_);
+    total_size += 1 *
+                  ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_element_identifier_size());
+    total_size += data_size;
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional string model_number = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_model_number());
+    }
+
+    // optional string model_name = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_model_name());
+    }
+
+    // optional string device_name = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_name());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Network_WifiAccessPoint_VendorInformation*>(
+      &from));
+}
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::MergeFrom(const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  element_identifier_.MergeFrom(from.element_identifier_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      model_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_number_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      model_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      device_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_name_);
+    }
+  }
+}
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::CopyFrom(const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Network_WifiAccessPoint_VendorInformation::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::InternalSwap(SystemProfileProto_Network_WifiAccessPoint_VendorInformation* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  element_identifier_.InternalSwap(&other->element_identifier_);
+  model_number_.Swap(&other->model_number_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  model_name_.Swap(&other->model_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_name_.Swap(&other->device_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string SystemProfileProto_Network_WifiAccessPoint_VendorInformation::GetTypeName() const {
+  return "metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Network_WifiAccessPoint::InitAsDefaultInstance() {
+  ::metrics::_SystemProfileProto_Network_WifiAccessPoint_default_instance_._instance.get_mutable()->vendor_info_ = const_cast< ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation*>(
+      ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation::internal_default_instance());
+}
+class SystemProfileProto_Network_WifiAccessPoint::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Network_WifiAccessPoint>()._has_bits_);
+  static void set_has_vendor_prefix(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_security_mode(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static const ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation& vendor_info(const SystemProfileProto_Network_WifiAccessPoint* msg);
+  static void set_has_vendor_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation&
+SystemProfileProto_Network_WifiAccessPoint::_Internal::vendor_info(const SystemProfileProto_Network_WifiAccessPoint* msg) {
+  return *msg->vendor_info_;
+}
+SystemProfileProto_Network_WifiAccessPoint::SystemProfileProto_Network_WifiAccessPoint()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Network.WifiAccessPoint)
+}
+SystemProfileProto_Network_WifiAccessPoint::SystemProfileProto_Network_WifiAccessPoint(const SystemProfileProto_Network_WifiAccessPoint& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_vendor_info()) {
+    vendor_info_ = new ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation(*from.vendor_info_);
+  } else {
+    vendor_info_ = nullptr;
+  }
+  ::memcpy(&vendor_prefix_, &from.vendor_prefix_,
+    static_cast<size_t>(reinterpret_cast<char*>(&security_mode_) -
+    reinterpret_cast<char*>(&vendor_prefix_)) + sizeof(security_mode_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Network.WifiAccessPoint)
+}
+
+void SystemProfileProto_Network_WifiAccessPoint::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Network_WifiAccessPoint_system_5fprofile_2eproto.base);
+  ::memset(&vendor_info_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&security_mode_) -
+      reinterpret_cast<char*>(&vendor_info_)) + sizeof(security_mode_));
+}
+
+SystemProfileProto_Network_WifiAccessPoint::~SystemProfileProto_Network_WifiAccessPoint() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Network.WifiAccessPoint)
+  SharedDtor();
+}
+
+void SystemProfileProto_Network_WifiAccessPoint::SharedDtor() {
+  if (this != internal_default_instance()) delete vendor_info_;
+}
+
+void SystemProfileProto_Network_WifiAccessPoint::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Network_WifiAccessPoint& SystemProfileProto_Network_WifiAccessPoint::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Network_WifiAccessPoint_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Network_WifiAccessPoint::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Network.WifiAccessPoint)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(vendor_info_ != nullptr);
+    vendor_info_->Clear();
+  }
+  if (cached_has_bits & 0x00000006u) {
+    ::memset(&vendor_prefix_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&security_mode_) -
+        reinterpret_cast<char*>(&vendor_prefix_)) + sizeof(security_mode_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Network_WifiAccessPoint::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional uint32 vendor_prefix = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_vendor_prefix(&has_bits);
+          vendor_prefix_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Network.WifiAccessPoint.SecurityMode security_mode = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode_IsValid(val))) {
+            _internal_set_security_mode(static_cast<::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation vendor_info = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          ptr = ctx->ParseMessage(_internal_mutable_vendor_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Network_WifiAccessPoint::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Network.WifiAccessPoint)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional uint32 vendor_prefix = 1;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_vendor_prefix(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Network.WifiAccessPoint.SecurityMode security_mode = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_security_mode(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation vendor_info = 3;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        3, _Internal::vendor_info(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Network.WifiAccessPoint)
+  return target;
+}
+
+size_t SystemProfileProto_Network_WifiAccessPoint::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Network.WifiAccessPoint)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    // optional .metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation vendor_info = 3;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *vendor_info_);
+    }
+
+    // optional uint32 vendor_prefix = 1;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_vendor_prefix());
+    }
+
+    // optional .metrics.SystemProfileProto.Network.WifiAccessPoint.SecurityMode security_mode = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_security_mode());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Network_WifiAccessPoint::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Network_WifiAccessPoint*>(
+      &from));
+}
+
+void SystemProfileProto_Network_WifiAccessPoint::MergeFrom(const SystemProfileProto_Network_WifiAccessPoint& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Network.WifiAccessPoint)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_vendor_info()->::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation::MergeFrom(from._internal_vendor_info());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      vendor_prefix_ = from.vendor_prefix_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      security_mode_ = from.security_mode_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Network_WifiAccessPoint::CopyFrom(const SystemProfileProto_Network_WifiAccessPoint& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Network.WifiAccessPoint)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Network_WifiAccessPoint::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Network_WifiAccessPoint::InternalSwap(SystemProfileProto_Network_WifiAccessPoint* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(vendor_info_, other->vendor_info_);
+  swap(vendor_prefix_, other->vendor_prefix_);
+  swap(security_mode_, other->security_mode_);
+}
+
+std::string SystemProfileProto_Network_WifiAccessPoint::GetTypeName() const {
+  return "metrics.SystemProfileProto.Network.WifiAccessPoint";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Network::InitAsDefaultInstance() {
+  ::metrics::_SystemProfileProto_Network_default_instance_._instance.get_mutable()->access_point_info_ = const_cast< ::metrics::SystemProfileProto_Network_WifiAccessPoint*>(
+      ::metrics::SystemProfileProto_Network_WifiAccessPoint::internal_default_instance());
+}
+class SystemProfileProto_Network::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Network>()._has_bits_);
+  static void set_has_connection_type_is_ambiguous(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_connection_type(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_wifi_phy_layer_protocol_is_ambiguous(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_wifi_phy_layer_protocol(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static const ::metrics::SystemProfileProto_Network_WifiAccessPoint& access_point_info(const SystemProfileProto_Network* msg);
+  static void set_has_access_point_info(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+};
+
+const ::metrics::SystemProfileProto_Network_WifiAccessPoint&
+SystemProfileProto_Network::_Internal::access_point_info(const SystemProfileProto_Network* msg) {
+  return *msg->access_point_info_;
+}
+SystemProfileProto_Network::SystemProfileProto_Network()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Network)
+}
+SystemProfileProto_Network::SystemProfileProto_Network(const SystemProfileProto_Network& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_access_point_info()) {
+    access_point_info_ = new ::metrics::SystemProfileProto_Network_WifiAccessPoint(*from.access_point_info_);
+  } else {
+    access_point_info_ = nullptr;
+  }
+  ::memcpy(&connection_type_, &from.connection_type_,
+    static_cast<size_t>(reinterpret_cast<char*>(&wifi_phy_layer_protocol_) -
+    reinterpret_cast<char*>(&connection_type_)) + sizeof(wifi_phy_layer_protocol_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Network)
+}
+
+void SystemProfileProto_Network::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Network_system_5fprofile_2eproto.base);
+  ::memset(&access_point_info_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&wifi_phy_layer_protocol_) -
+      reinterpret_cast<char*>(&access_point_info_)) + sizeof(wifi_phy_layer_protocol_));
+}
+
+SystemProfileProto_Network::~SystemProfileProto_Network() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Network)
+  SharedDtor();
+}
+
+void SystemProfileProto_Network::SharedDtor() {
+  if (this != internal_default_instance()) delete access_point_info_;
+}
+
+void SystemProfileProto_Network::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Network& SystemProfileProto_Network::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Network_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Network::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Network)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(access_point_info_ != nullptr);
+    access_point_info_->Clear();
+  }
+  if (cached_has_bits & 0x0000001eu) {
+    ::memset(&connection_type_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&wifi_phy_layer_protocol_) -
+        reinterpret_cast<char*>(&connection_type_)) + sizeof(wifi_phy_layer_protocol_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Network::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool connection_type_is_ambiguous = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_connection_type_is_ambiguous(&has_bits);
+          connection_type_is_ambiguous_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Network.ConnectionType connection_type = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_Network_ConnectionType_IsValid(val))) {
+            _internal_set_connection_type(static_cast<::metrics::SystemProfileProto_Network_ConnectionType>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bool wifi_phy_layer_protocol_is_ambiguous = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_wifi_phy_layer_protocol_is_ambiguous(&has_bits);
+          wifi_phy_layer_protocol_is_ambiguous_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Network.WifiPHYLayerProtocol wifi_phy_layer_protocol = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol_IsValid(val))) {
+            _internal_set_wifi_phy_layer_protocol(static_cast<::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Network.WifiAccessPoint access_point_info = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_access_point_info(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Network::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Network)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool connection_type_is_ambiguous = 1;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_connection_type_is_ambiguous(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Network.ConnectionType connection_type = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      2, this->_internal_connection_type(), target);
+  }
+
+  // optional bool wifi_phy_layer_protocol_is_ambiguous = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(3, this->_internal_wifi_phy_layer_protocol_is_ambiguous(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Network.WifiPHYLayerProtocol wifi_phy_layer_protocol = 4;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      4, this->_internal_wifi_phy_layer_protocol(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Network.WifiAccessPoint access_point_info = 5;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        5, _Internal::access_point_info(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Network)
+  return target;
+}
+
+size_t SystemProfileProto_Network::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Network)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional .metrics.SystemProfileProto.Network.WifiAccessPoint access_point_info = 5;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *access_point_info_);
+    }
+
+    // optional .metrics.SystemProfileProto.Network.ConnectionType connection_type = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_connection_type());
+    }
+
+    // optional bool connection_type_is_ambiguous = 1;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool wifi_phy_layer_protocol_is_ambiguous = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+    // optional .metrics.SystemProfileProto.Network.WifiPHYLayerProtocol wifi_phy_layer_protocol = 4;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_wifi_phy_layer_protocol());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Network::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Network*>(
+      &from));
+}
+
+void SystemProfileProto_Network::MergeFrom(const SystemProfileProto_Network& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Network)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_access_point_info()->::metrics::SystemProfileProto_Network_WifiAccessPoint::MergeFrom(from._internal_access_point_info());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      connection_type_ = from.connection_type_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      connection_type_is_ambiguous_ = from.connection_type_is_ambiguous_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      wifi_phy_layer_protocol_is_ambiguous_ = from.wifi_phy_layer_protocol_is_ambiguous_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      wifi_phy_layer_protocol_ = from.wifi_phy_layer_protocol_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Network::CopyFrom(const SystemProfileProto_Network& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Network)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Network::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Network::InternalSwap(SystemProfileProto_Network* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(access_point_info_, other->access_point_info_);
+  swap(connection_type_, other->connection_type_);
+  swap(connection_type_is_ambiguous_, other->connection_type_is_ambiguous_);
+  swap(wifi_phy_layer_protocol_is_ambiguous_, other->wifi_phy_layer_protocol_is_ambiguous_);
+  swap(wifi_phy_layer_protocol_, other->wifi_phy_layer_protocol_);
+}
+
+std::string SystemProfileProto_Network::GetTypeName() const {
+  return "metrics.SystemProfileProto.Network";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::InitAsDefaultInstance() {
+}
+class SystemProfileProto_GoogleUpdate_ProductInfo::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_GoogleUpdate_ProductInfo>()._has_bits_);
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_last_update_success_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_last_result(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_last_error(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_last_extra_error(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+SystemProfileProto_GoogleUpdate_ProductInfo::SystemProfileProto_GoogleUpdate_ProductInfo()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+}
+SystemProfileProto_GoogleUpdate_ProductInfo::SystemProfileProto_GoogleUpdate_ProductInfo(const SystemProfileProto_GoogleUpdate_ProductInfo& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_version()) {
+    version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+  }
+  ::memcpy(&last_update_success_timestamp_, &from.last_update_success_timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&last_extra_error_) -
+    reinterpret_cast<char*>(&last_update_success_timestamp_)) + sizeof(last_extra_error_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+}
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_GoogleUpdate_ProductInfo_system_5fprofile_2eproto.base);
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&last_update_success_timestamp_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&last_extra_error_) -
+      reinterpret_cast<char*>(&last_update_success_timestamp_)) + sizeof(last_extra_error_));
+}
+
+SystemProfileProto_GoogleUpdate_ProductInfo::~SystemProfileProto_GoogleUpdate_ProductInfo() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+  SharedDtor();
+}
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::SharedDtor() {
+  version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_GoogleUpdate_ProductInfo& SystemProfileProto_GoogleUpdate_ProductInfo::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_GoogleUpdate_ProductInfo_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    version_.ClearNonDefaultToEmptyNoArena();
+  }
+  if (cached_has_bits & 0x0000001eu) {
+    ::memset(&last_update_success_timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&last_extra_error_) -
+        reinterpret_cast<char*>(&last_update_success_timestamp_)) + sizeof(last_extra_error_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_GoogleUpdate_ProductInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string version = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 last_update_success_timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_last_update_success_timestamp(&has_bits);
+          last_update_success_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo.InstallResult last_result = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_IsValid(val))) {
+            _internal_set_last_result(static_cast<::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 last_error = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_last_error(&has_bits);
+          last_error_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 last_extra_error = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_last_extra_error(&has_bits);
+          last_extra_error_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_GoogleUpdate_ProductInfo::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string version = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_version(), target);
+  }
+
+  // optional int64 last_update_success_timestamp = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_last_update_success_timestamp(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo.InstallResult last_result = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      3, this->_internal_last_result(), target);
+  }
+
+  // optional int32 last_error = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_last_error(), target);
+  }
+
+  // optional int32 last_extra_error = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_last_extra_error(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+  return target;
+}
+
+size_t SystemProfileProto_GoogleUpdate_ProductInfo::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string version = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_version());
+    }
+
+    // optional int64 last_update_success_timestamp = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_update_success_timestamp());
+    }
+
+    // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo.InstallResult last_result = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_last_result());
+    }
+
+    // optional int32 last_error = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_last_error());
+    }
+
+    // optional int32 last_extra_error = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_last_extra_error());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_GoogleUpdate_ProductInfo*>(
+      &from));
+}
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::MergeFrom(const SystemProfileProto_GoogleUpdate_ProductInfo& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      last_update_success_timestamp_ = from.last_update_success_timestamp_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      last_result_ = from.last_result_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      last_error_ = from.last_error_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      last_extra_error_ = from.last_extra_error_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::CopyFrom(const SystemProfileProto_GoogleUpdate_ProductInfo& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_GoogleUpdate_ProductInfo::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_GoogleUpdate_ProductInfo::InternalSwap(SystemProfileProto_GoogleUpdate_ProductInfo* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  version_.Swap(&other->version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(last_update_success_timestamp_, other->last_update_success_timestamp_);
+  swap(last_result_, other->last_result_);
+  swap(last_error_, other->last_error_);
+  swap(last_extra_error_, other->last_extra_error_);
+}
+
+std::string SystemProfileProto_GoogleUpdate_ProductInfo::GetTypeName() const {
+  return "metrics.SystemProfileProto.GoogleUpdate.ProductInfo";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_GoogleUpdate::InitAsDefaultInstance() {
+  ::metrics::_SystemProfileProto_GoogleUpdate_default_instance_._instance.get_mutable()->google_update_status_ = const_cast< ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo*>(
+      ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo::internal_default_instance());
+  ::metrics::_SystemProfileProto_GoogleUpdate_default_instance_._instance.get_mutable()->client_status_ = const_cast< ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo*>(
+      ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo::internal_default_instance());
+}
+class SystemProfileProto_GoogleUpdate::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_GoogleUpdate>()._has_bits_);
+  static void set_has_is_system_install(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_last_automatic_start_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_last_update_check_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& google_update_status(const SystemProfileProto_GoogleUpdate* msg);
+  static void set_has_google_update_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& client_status(const SystemProfileProto_GoogleUpdate* msg);
+  static void set_has_client_status(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo&
+SystemProfileProto_GoogleUpdate::_Internal::google_update_status(const SystemProfileProto_GoogleUpdate* msg) {
+  return *msg->google_update_status_;
+}
+const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo&
+SystemProfileProto_GoogleUpdate::_Internal::client_status(const SystemProfileProto_GoogleUpdate* msg) {
+  return *msg->client_status_;
+}
+SystemProfileProto_GoogleUpdate::SystemProfileProto_GoogleUpdate()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.GoogleUpdate)
+}
+SystemProfileProto_GoogleUpdate::SystemProfileProto_GoogleUpdate(const SystemProfileProto_GoogleUpdate& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_google_update_status()) {
+    google_update_status_ = new ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo(*from.google_update_status_);
+  } else {
+    google_update_status_ = nullptr;
+  }
+  if (from._internal_has_client_status()) {
+    client_status_ = new ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo(*from.client_status_);
+  } else {
+    client_status_ = nullptr;
+  }
+  ::memcpy(&last_automatic_start_timestamp_, &from.last_automatic_start_timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&is_system_install_) -
+    reinterpret_cast<char*>(&last_automatic_start_timestamp_)) + sizeof(is_system_install_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.GoogleUpdate)
+}
+
+void SystemProfileProto_GoogleUpdate::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_GoogleUpdate_system_5fprofile_2eproto.base);
+  ::memset(&google_update_status_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_system_install_) -
+      reinterpret_cast<char*>(&google_update_status_)) + sizeof(is_system_install_));
+}
+
+SystemProfileProto_GoogleUpdate::~SystemProfileProto_GoogleUpdate() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.GoogleUpdate)
+  SharedDtor();
+}
+
+void SystemProfileProto_GoogleUpdate::SharedDtor() {
+  if (this != internal_default_instance()) delete google_update_status_;
+  if (this != internal_default_instance()) delete client_status_;
+}
+
+void SystemProfileProto_GoogleUpdate::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_GoogleUpdate& SystemProfileProto_GoogleUpdate::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_GoogleUpdate_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_GoogleUpdate::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.GoogleUpdate)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      GOOGLE_DCHECK(google_update_status_ != nullptr);
+      google_update_status_->Clear();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      GOOGLE_DCHECK(client_status_ != nullptr);
+      client_status_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000001cu) {
+    ::memset(&last_automatic_start_timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&is_system_install_) -
+        reinterpret_cast<char*>(&last_automatic_start_timestamp_)) + sizeof(is_system_install_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_GoogleUpdate::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional bool is_system_install = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_is_system_install(&has_bits);
+          is_system_install_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 last_automatic_start_timestamp = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_last_automatic_start_timestamp(&has_bits);
+          last_automatic_start_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 last_update_check_timestamp = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_last_update_check_timestamp(&has_bits);
+          last_update_check_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo google_update_status = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          ptr = ctx->ParseMessage(_internal_mutable_google_update_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo client_status = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_client_status(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_GoogleUpdate::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.GoogleUpdate)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional bool is_system_install = 1;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_is_system_install(), target);
+  }
+
+  // optional int64 last_automatic_start_timestamp = 2;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_last_automatic_start_timestamp(), target);
+  }
+
+  // optional int64 last_update_check_timestamp = 3;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_last_update_check_timestamp(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo google_update_status = 4;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        4, _Internal::google_update_status(this), target, stream);
+  }
+
+  // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo client_status = 5;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        5, _Internal::client_status(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.GoogleUpdate)
+  return target;
+}
+
+size_t SystemProfileProto_GoogleUpdate::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.GoogleUpdate)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo google_update_status = 4;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *google_update_status_);
+    }
+
+    // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo client_status = 5;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *client_status_);
+    }
+
+    // optional int64 last_automatic_start_timestamp = 2;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_automatic_start_timestamp());
+    }
+
+    // optional int64 last_update_check_timestamp = 3;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_last_update_check_timestamp());
+    }
+
+    // optional bool is_system_install = 1;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_GoogleUpdate::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_GoogleUpdate*>(
+      &from));
+}
+
+void SystemProfileProto_GoogleUpdate::MergeFrom(const SystemProfileProto_GoogleUpdate& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.GoogleUpdate)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_google_update_status()->::metrics::SystemProfileProto_GoogleUpdate_ProductInfo::MergeFrom(from._internal_google_update_status());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _internal_mutable_client_status()->::metrics::SystemProfileProto_GoogleUpdate_ProductInfo::MergeFrom(from._internal_client_status());
+    }
+    if (cached_has_bits & 0x00000004u) {
+      last_automatic_start_timestamp_ = from.last_automatic_start_timestamp_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      last_update_check_timestamp_ = from.last_update_check_timestamp_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      is_system_install_ = from.is_system_install_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_GoogleUpdate::CopyFrom(const SystemProfileProto_GoogleUpdate& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.GoogleUpdate)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_GoogleUpdate::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_GoogleUpdate::InternalSwap(SystemProfileProto_GoogleUpdate* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(google_update_status_, other->google_update_status_);
+  swap(client_status_, other->client_status_);
+  swap(last_automatic_start_timestamp_, other->last_automatic_start_timestamp_);
+  swap(last_update_check_timestamp_, other->last_update_check_timestamp_);
+  swap(is_system_install_, other->is_system_install_);
+}
+
+std::string SystemProfileProto_GoogleUpdate::GetTypeName() const {
+  return "metrics.SystemProfileProto.GoogleUpdate";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Plugin::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Plugin::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Plugin>()._has_bits_);
+  static void set_has_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_filename(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_is_disabled(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_is_pepper(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+SystemProfileProto_Plugin::SystemProfileProto_Plugin()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Plugin)
+}
+SystemProfileProto_Plugin::SystemProfileProto_Plugin(const SystemProfileProto_Plugin& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_name()) {
+    name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+  }
+  filename_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_filename()) {
+    filename_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.filename_);
+  }
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_version()) {
+    version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+  }
+  ::memcpy(&is_disabled_, &from.is_disabled_,
+    static_cast<size_t>(reinterpret_cast<char*>(&is_pepper_) -
+    reinterpret_cast<char*>(&is_disabled_)) + sizeof(is_pepper_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Plugin)
+}
+
+void SystemProfileProto_Plugin::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Plugin_system_5fprofile_2eproto.base);
+  name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  filename_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&is_disabled_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_pepper_) -
+      reinterpret_cast<char*>(&is_disabled_)) + sizeof(is_pepper_));
+}
+
+SystemProfileProto_Plugin::~SystemProfileProto_Plugin() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Plugin)
+  SharedDtor();
+}
+
+void SystemProfileProto_Plugin::SharedDtor() {
+  name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  filename_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_Plugin::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Plugin& SystemProfileProto_Plugin::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Plugin_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Plugin::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Plugin)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      filename_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      version_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  ::memset(&is_disabled_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_pepper_) -
+      reinterpret_cast<char*>(&is_disabled_)) + sizeof(is_pepper_));
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Plugin::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string filename = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_filename();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string version = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_disabled = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_is_disabled(&has_bits);
+          is_disabled_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_pepper = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_is_pepper(&has_bits);
+          is_pepper_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Plugin::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Plugin)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_name(), target);
+  }
+
+  // optional string filename = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_filename(), target);
+  }
+
+  // optional string version = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_version(), target);
+  }
+
+  // optional bool is_disabled = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_is_disabled(), target);
+  }
+
+  // optional bool is_pepper = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(5, this->_internal_is_pepper(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Plugin)
+  return target;
+}
+
+size_t SystemProfileProto_Plugin::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Plugin)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional string name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_name());
+    }
+
+    // optional string filename = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_filename());
+    }
+
+    // optional string version = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_version());
+    }
+
+    // optional bool is_disabled = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 + 1;
+    }
+
+    // optional bool is_pepper = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Plugin::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Plugin*>(
+      &from));
+}
+
+void SystemProfileProto_Plugin::MergeFrom(const SystemProfileProto_Plugin& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Plugin)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      filename_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.filename_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.version_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      is_disabled_ = from.is_disabled_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      is_pepper_ = from.is_pepper_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Plugin::CopyFrom(const SystemProfileProto_Plugin& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Plugin)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Plugin::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Plugin::InternalSwap(SystemProfileProto_Plugin* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  name_.Swap(&other->name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  filename_.Swap(&other->filename_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  version_.Swap(&other->version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(is_disabled_, other->is_disabled_);
+  swap(is_pepper_, other->is_pepper_);
+}
+
+std::string SystemProfileProto_Plugin::GetTypeName() const {
+  return "metrics.SystemProfileProto.Plugin";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Stability_PluginStability::InitAsDefaultInstance() {
+  ::metrics::_SystemProfileProto_Stability_PluginStability_default_instance_._instance.get_mutable()->plugin_ = const_cast< ::metrics::SystemProfileProto_Plugin*>(
+      ::metrics::SystemProfileProto_Plugin::internal_default_instance());
+}
+class SystemProfileProto_Stability_PluginStability::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Stability_PluginStability>()._has_bits_);
+  static const ::metrics::SystemProfileProto_Plugin& plugin(const SystemProfileProto_Stability_PluginStability* msg);
+  static void set_has_plugin(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_launch_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_instance_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_crash_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_loading_error_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+};
+
+const ::metrics::SystemProfileProto_Plugin&
+SystemProfileProto_Stability_PluginStability::_Internal::plugin(const SystemProfileProto_Stability_PluginStability* msg) {
+  return *msg->plugin_;
+}
+SystemProfileProto_Stability_PluginStability::SystemProfileProto_Stability_PluginStability()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Stability.PluginStability)
+}
+SystemProfileProto_Stability_PluginStability::SystemProfileProto_Stability_PluginStability(const SystemProfileProto_Stability_PluginStability& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  if (from._internal_has_plugin()) {
+    plugin_ = new ::metrics::SystemProfileProto_Plugin(*from.plugin_);
+  } else {
+    plugin_ = nullptr;
+  }
+  ::memcpy(&launch_count_, &from.launch_count_,
+    static_cast<size_t>(reinterpret_cast<char*>(&loading_error_count_) -
+    reinterpret_cast<char*>(&launch_count_)) + sizeof(loading_error_count_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Stability.PluginStability)
+}
+
+void SystemProfileProto_Stability_PluginStability::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Stability_PluginStability_system_5fprofile_2eproto.base);
+  ::memset(&plugin_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&loading_error_count_) -
+      reinterpret_cast<char*>(&plugin_)) + sizeof(loading_error_count_));
+}
+
+SystemProfileProto_Stability_PluginStability::~SystemProfileProto_Stability_PluginStability() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Stability.PluginStability)
+  SharedDtor();
+}
+
+void SystemProfileProto_Stability_PluginStability::SharedDtor() {
+  if (this != internal_default_instance()) delete plugin_;
+}
+
+void SystemProfileProto_Stability_PluginStability::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Stability_PluginStability& SystemProfileProto_Stability_PluginStability::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Stability_PluginStability_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Stability_PluginStability::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Stability.PluginStability)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000001u) {
+    GOOGLE_DCHECK(plugin_ != nullptr);
+    plugin_->Clear();
+  }
+  if (cached_has_bits & 0x0000001eu) {
+    ::memset(&launch_count_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&loading_error_count_) -
+        reinterpret_cast<char*>(&launch_count_)) + sizeof(loading_error_count_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Stability_PluginStability::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .metrics.SystemProfileProto.Plugin plugin = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          ptr = ctx->ParseMessage(_internal_mutable_plugin(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 launch_count = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_launch_count(&has_bits);
+          launch_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 instance_count = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_instance_count(&has_bits);
+          instance_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 crash_count = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_crash_count(&has_bits);
+          crash_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 loading_error_count = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_loading_error_count(&has_bits);
+          loading_error_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Stability_PluginStability::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Stability.PluginStability)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .metrics.SystemProfileProto.Plugin plugin = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        1, _Internal::plugin(this), target, stream);
+  }
+
+  // optional int32 launch_count = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_launch_count(), target);
+  }
+
+  // optional int32 instance_count = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_instance_count(), target);
+  }
+
+  // optional int32 crash_count = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_crash_count(), target);
+  }
+
+  // optional int32 loading_error_count = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_loading_error_count(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Stability.PluginStability)
+  return target;
+}
+
+size_t SystemProfileProto_Stability_PluginStability::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Stability.PluginStability)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    // optional .metrics.SystemProfileProto.Plugin plugin = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *plugin_);
+    }
+
+    // optional int32 launch_count = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_launch_count());
+    }
+
+    // optional int32 instance_count = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_instance_count());
+    }
+
+    // optional int32 crash_count = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_crash_count());
+    }
+
+    // optional int32 loading_error_count = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_loading_error_count());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Stability_PluginStability::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Stability_PluginStability*>(
+      &from));
+}
+
+void SystemProfileProto_Stability_PluginStability::MergeFrom(const SystemProfileProto_Stability_PluginStability& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Stability.PluginStability)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000001fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _internal_mutable_plugin()->::metrics::SystemProfileProto_Plugin::MergeFrom(from._internal_plugin());
+    }
+    if (cached_has_bits & 0x00000002u) {
+      launch_count_ = from.launch_count_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      instance_count_ = from.instance_count_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      crash_count_ = from.crash_count_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      loading_error_count_ = from.loading_error_count_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_Stability_PluginStability::CopyFrom(const SystemProfileProto_Stability_PluginStability& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Stability.PluginStability)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Stability_PluginStability::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Stability_PluginStability::InternalSwap(SystemProfileProto_Stability_PluginStability* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(plugin_, other->plugin_);
+  swap(launch_count_, other->launch_count_);
+  swap(instance_count_, other->instance_count_);
+  swap(crash_count_, other->crash_count_);
+  swap(loading_error_count_, other->loading_error_count_);
+}
+
+std::string SystemProfileProto_Stability_PluginStability::GetTypeName() const {
+  return "metrics.SystemProfileProto.Stability.PluginStability";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_Stability::InitAsDefaultInstance() {
+}
+class SystemProfileProto_Stability::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_Stability>()._has_bits_);
+  static void set_has_incremental_uptime_sec(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_uptime_sec(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static void set_has_page_load_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_renderer_crash_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_renderer_hang_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_extension_renderer_crash_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_child_process_crash_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_other_user_crash_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_kernel_crash_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_unclean_system_shutdown_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_launch_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static void set_has_crash_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_incomplete_shutdown_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_breakpad_registration_success_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_breakpad_registration_failure_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static void set_has_debugger_present_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+  static void set_has_debugger_not_present_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+};
+
+SystemProfileProto_Stability::SystemProfileProto_Stability()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.Stability)
+}
+SystemProfileProto_Stability::SystemProfileProto_Stability(const SystemProfileProto_Stability& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      plugin_stability_(from.plugin_stability_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&incremental_uptime_sec_, &from.incremental_uptime_sec_,
+    static_cast<size_t>(reinterpret_cast<char*>(&uptime_sec_) -
+    reinterpret_cast<char*>(&incremental_uptime_sec_)) + sizeof(uptime_sec_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.Stability)
+}
+
+void SystemProfileProto_Stability::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_Stability_system_5fprofile_2eproto.base);
+  ::memset(&incremental_uptime_sec_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&uptime_sec_) -
+      reinterpret_cast<char*>(&incremental_uptime_sec_)) + sizeof(uptime_sec_));
+}
+
+SystemProfileProto_Stability::~SystemProfileProto_Stability() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.Stability)
+  SharedDtor();
+}
+
+void SystemProfileProto_Stability::SharedDtor() {
+}
+
+void SystemProfileProto_Stability::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_Stability& SystemProfileProto_Stability::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_Stability_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_Stability::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.Stability)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  plugin_stability_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    ::memset(&incremental_uptime_sec_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&kernel_crash_count_) -
+        reinterpret_cast<char*>(&incremental_uptime_sec_)) + sizeof(kernel_crash_count_));
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    ::memset(&unclean_system_shutdown_count_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&debugger_present_count_) -
+        reinterpret_cast<char*>(&unclean_system_shutdown_count_)) + sizeof(debugger_present_count_));
+  }
+  uptime_sec_ = PROTOBUF_LONGLONG(0);
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_Stability::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 incremental_uptime_sec = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_incremental_uptime_sec(&has_bits);
+          incremental_uptime_sec_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 page_load_count = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_page_load_count(&has_bits);
+          page_load_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 renderer_crash_count = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_renderer_crash_count(&has_bits);
+          renderer_crash_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 renderer_hang_count = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_renderer_hang_count(&has_bits);
+          renderer_hang_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 extension_renderer_crash_count = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_extension_renderer_crash_count(&has_bits);
+          extension_renderer_crash_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 child_process_crash_count = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_child_process_crash_count(&has_bits);
+          child_process_crash_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 other_user_crash_count = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_other_user_crash_count(&has_bits);
+          other_user_crash_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 kernel_crash_count = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_kernel_crash_count(&has_bits);
+          kernel_crash_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 unclean_system_shutdown_count = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
+          _Internal::set_has_unclean_system_shutdown_count(&has_bits);
+          unclean_system_shutdown_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 launch_count = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 120)) {
+          _Internal::set_has_launch_count(&has_bits);
+          launch_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 crash_count = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 128)) {
+          _Internal::set_has_crash_count(&has_bits);
+          crash_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 incomplete_shutdown_count = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 136)) {
+          _Internal::set_has_incomplete_shutdown_count(&has_bits);
+          incomplete_shutdown_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 breakpad_registration_success_count = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 144)) {
+          _Internal::set_has_breakpad_registration_success_count(&has_bits);
+          breakpad_registration_success_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 breakpad_registration_failure_count = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 152)) {
+          _Internal::set_has_breakpad_registration_failure_count(&has_bits);
+          breakpad_registration_failure_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 debugger_present_count = 20;
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 160)) {
+          _Internal::set_has_debugger_present_count(&has_bits);
+          debugger_present_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 debugger_not_present_count = 21;
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 168)) {
+          _Internal::set_has_debugger_not_present_count(&has_bits);
+          debugger_not_present_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.Stability.PluginStability plugin_stability = 22;
+      case 22:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 178)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            ptr = ctx->ParseMessage(_internal_add_plugin_stability(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<178>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional int64 uptime_sec = 23;
+      case 23:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 184)) {
+          _Internal::set_has_uptime_sec(&has_bits);
+          uptime_sec_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_Stability::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.Stability)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 incremental_uptime_sec = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_incremental_uptime_sec(), target);
+  }
+
+  // optional int32 page_load_count = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_page_load_count(), target);
+  }
+
+  // optional int32 renderer_crash_count = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_renderer_crash_count(), target);
+  }
+
+  // optional int32 renderer_hang_count = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_renderer_hang_count(), target);
+  }
+
+  // optional int32 extension_renderer_crash_count = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_extension_renderer_crash_count(), target);
+  }
+
+  // optional int32 child_process_crash_count = 6;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_child_process_crash_count(), target);
+  }
+
+  // optional int32 other_user_crash_count = 7;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(7, this->_internal_other_user_crash_count(), target);
+  }
+
+  // optional int32 kernel_crash_count = 8;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(8, this->_internal_kernel_crash_count(), target);
+  }
+
+  // optional int32 unclean_system_shutdown_count = 9;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(9, this->_internal_unclean_system_shutdown_count(), target);
+  }
+
+  // optional int32 launch_count = 15;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(15, this->_internal_launch_count(), target);
+  }
+
+  // optional int32 crash_count = 16;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(16, this->_internal_crash_count(), target);
+  }
+
+  // optional int32 incomplete_shutdown_count = 17;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(17, this->_internal_incomplete_shutdown_count(), target);
+  }
+
+  // optional int32 breakpad_registration_success_count = 18;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(18, this->_internal_breakpad_registration_success_count(), target);
+  }
+
+  // optional int32 breakpad_registration_failure_count = 19;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(19, this->_internal_breakpad_registration_failure_count(), target);
+  }
+
+  // optional int32 debugger_present_count = 20;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(20, this->_internal_debugger_present_count(), target);
+  }
+
+  // optional int32 debugger_not_present_count = 21;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(21, this->_internal_debugger_not_present_count(), target);
+  }
+
+  // repeated .metrics.SystemProfileProto.Stability.PluginStability plugin_stability = 22;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_plugin_stability_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(22, this->_internal_plugin_stability(i), target, stream);
+  }
+
+  // optional int64 uptime_sec = 23;
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(23, this->_internal_uptime_sec(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.Stability)
+  return target;
+}
+
+size_t SystemProfileProto_Stability::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.Stability)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.SystemProfileProto.Stability.PluginStability plugin_stability = 22;
+  total_size += 2UL * this->_internal_plugin_stability_size();
+  for (const auto& msg : this->plugin_stability_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional int64 incremental_uptime_sec = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_incremental_uptime_sec());
+    }
+
+    // optional int32 page_load_count = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_page_load_count());
+    }
+
+    // optional int32 renderer_crash_count = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_renderer_crash_count());
+    }
+
+    // optional int32 renderer_hang_count = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_renderer_hang_count());
+    }
+
+    // optional int32 extension_renderer_crash_count = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_extension_renderer_crash_count());
+    }
+
+    // optional int32 child_process_crash_count = 6;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_child_process_crash_count());
+    }
+
+    // optional int32 other_user_crash_count = 7;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_other_user_crash_count());
+    }
+
+    // optional int32 kernel_crash_count = 8;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_kernel_crash_count());
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional int32 unclean_system_shutdown_count = 9;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_unclean_system_shutdown_count());
+    }
+
+    // optional int32 launch_count = 15;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_launch_count());
+    }
+
+    // optional int32 crash_count = 16;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_crash_count());
+    }
+
+    // optional int32 incomplete_shutdown_count = 17;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_incomplete_shutdown_count());
+    }
+
+    // optional int32 breakpad_registration_success_count = 18;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_breakpad_registration_success_count());
+    }
+
+    // optional int32 debugger_not_present_count = 21;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_debugger_not_present_count());
+    }
+
+    // optional int32 breakpad_registration_failure_count = 19;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_breakpad_registration_failure_count());
+    }
+
+    // optional int32 debugger_present_count = 20;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_debugger_present_count());
+    }
+
+  }
+  // optional int64 uptime_sec = 23;
+  if (cached_has_bits & 0x00010000u) {
+    total_size += 2 +
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+        this->_internal_uptime_sec());
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_Stability::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_Stability*>(
+      &from));
+}
+
+void SystemProfileProto_Stability::MergeFrom(const SystemProfileProto_Stability& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.Stability)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  plugin_stability_.MergeFrom(from.plugin_stability_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      incremental_uptime_sec_ = from.incremental_uptime_sec_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      page_load_count_ = from.page_load_count_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      renderer_crash_count_ = from.renderer_crash_count_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      renderer_hang_count_ = from.renderer_hang_count_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      extension_renderer_crash_count_ = from.extension_renderer_crash_count_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      child_process_crash_count_ = from.child_process_crash_count_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      other_user_crash_count_ = from.other_user_crash_count_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      kernel_crash_count_ = from.kernel_crash_count_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      unclean_system_shutdown_count_ = from.unclean_system_shutdown_count_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      launch_count_ = from.launch_count_;
+    }
+    if (cached_has_bits & 0x00000400u) {
+      crash_count_ = from.crash_count_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      incomplete_shutdown_count_ = from.incomplete_shutdown_count_;
+    }
+    if (cached_has_bits & 0x00001000u) {
+      breakpad_registration_success_count_ = from.breakpad_registration_success_count_;
+    }
+    if (cached_has_bits & 0x00002000u) {
+      debugger_not_present_count_ = from.debugger_not_present_count_;
+    }
+    if (cached_has_bits & 0x00004000u) {
+      breakpad_registration_failure_count_ = from.breakpad_registration_failure_count_;
+    }
+    if (cached_has_bits & 0x00008000u) {
+      debugger_present_count_ = from.debugger_present_count_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00010000u) {
+    _internal_set_uptime_sec(from._internal_uptime_sec());
+  }
+}
+
+void SystemProfileProto_Stability::CopyFrom(const SystemProfileProto_Stability& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.Stability)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_Stability::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_Stability::InternalSwap(SystemProfileProto_Stability* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  plugin_stability_.InternalSwap(&other->plugin_stability_);
+  swap(incremental_uptime_sec_, other->incremental_uptime_sec_);
+  swap(page_load_count_, other->page_load_count_);
+  swap(renderer_crash_count_, other->renderer_crash_count_);
+  swap(renderer_hang_count_, other->renderer_hang_count_);
+  swap(extension_renderer_crash_count_, other->extension_renderer_crash_count_);
+  swap(child_process_crash_count_, other->child_process_crash_count_);
+  swap(other_user_crash_count_, other->other_user_crash_count_);
+  swap(kernel_crash_count_, other->kernel_crash_count_);
+  swap(unclean_system_shutdown_count_, other->unclean_system_shutdown_count_);
+  swap(launch_count_, other->launch_count_);
+  swap(crash_count_, other->crash_count_);
+  swap(incomplete_shutdown_count_, other->incomplete_shutdown_count_);
+  swap(breakpad_registration_success_count_, other->breakpad_registration_success_count_);
+  swap(debugger_not_present_count_, other->debugger_not_present_count_);
+  swap(breakpad_registration_failure_count_, other->breakpad_registration_failure_count_);
+  swap(debugger_present_count_, other->debugger_present_count_);
+  swap(uptime_sec_, other->uptime_sec_);
+}
+
+std::string SystemProfileProto_Stability::GetTypeName() const {
+  return "metrics.SystemProfileProto.Stability";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_FieldTrial::InitAsDefaultInstance() {
+}
+class SystemProfileProto_FieldTrial::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_FieldTrial>()._has_bits_);
+  static void set_has_name_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_group_id(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+SystemProfileProto_FieldTrial::SystemProfileProto_FieldTrial()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.FieldTrial)
+}
+SystemProfileProto_FieldTrial::SystemProfileProto_FieldTrial(const SystemProfileProto_FieldTrial& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&name_id_, &from.name_id_,
+    static_cast<size_t>(reinterpret_cast<char*>(&group_id_) -
+    reinterpret_cast<char*>(&name_id_)) + sizeof(group_id_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.FieldTrial)
+}
+
+void SystemProfileProto_FieldTrial::SharedCtor() {
+  ::memset(&name_id_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&group_id_) -
+      reinterpret_cast<char*>(&name_id_)) + sizeof(group_id_));
+}
+
+SystemProfileProto_FieldTrial::~SystemProfileProto_FieldTrial() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.FieldTrial)
+  SharedDtor();
+}
+
+void SystemProfileProto_FieldTrial::SharedDtor() {
+}
+
+void SystemProfileProto_FieldTrial::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_FieldTrial& SystemProfileProto_FieldTrial::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_FieldTrial_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_FieldTrial::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.FieldTrial)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&name_id_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&group_id_) -
+        reinterpret_cast<char*>(&name_id_)) + sizeof(group_id_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_FieldTrial::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional fixed32 name_id = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 13)) {
+          _Internal::set_has_name_id(&has_bits);
+          name_id_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint32>(ptr);
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint32);
+        } else goto handle_unusual;
+        continue;
+      // optional fixed32 group_id = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 21)) {
+          _Internal::set_has_group_id(&has_bits);
+          group_id_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint32>(ptr);
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint32);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_FieldTrial::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.FieldTrial)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional fixed32 name_id = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed32ToArray(1, this->_internal_name_id(), target);
+  }
+
+  // optional fixed32 group_id = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed32ToArray(2, this->_internal_group_id(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.FieldTrial)
+  return target;
+}
+
+size_t SystemProfileProto_FieldTrial::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.FieldTrial)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional fixed32 name_id = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 4;
+    }
+
+    // optional fixed32 group_id = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 + 4;
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_FieldTrial::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_FieldTrial*>(
+      &from));
+}
+
+void SystemProfileProto_FieldTrial::MergeFrom(const SystemProfileProto_FieldTrial& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.FieldTrial)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_id_ = from.name_id_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      group_id_ = from.group_id_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_FieldTrial::CopyFrom(const SystemProfileProto_FieldTrial& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.FieldTrial)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_FieldTrial::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_FieldTrial::InternalSwap(SystemProfileProto_FieldTrial* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(name_id_, other->name_id_);
+  swap(group_id_, other->group_id_);
+}
+
+std::string SystemProfileProto_FieldTrial::GetTypeName() const {
+  return "metrics.SystemProfileProto.FieldTrial";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::InitAsDefaultInstance() {
+}
+class SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_ExternalAudioVideoDevice_AudioDescription>()._has_bits_);
+  static void set_has_audio_format(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_num_channels(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_max_bit_rate_per_second(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_bit_depth(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+}
+SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription(const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      sample_frequency_hz_(from.sample_frequency_hz_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&audio_format_, &from.audio_format_,
+    static_cast<size_t>(reinterpret_cast<char*>(&bit_depth_) -
+    reinterpret_cast<char*>(&audio_format_)) + sizeof(bit_depth_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::SharedCtor() {
+  ::memset(&audio_format_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&bit_depth_) -
+      reinterpret_cast<char*>(&audio_format_)) + sizeof(bit_depth_));
+}
+
+SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::~SystemProfileProto_ExternalAudioVideoDevice_AudioDescription() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+  SharedDtor();
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::SharedDtor() {
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  sample_frequency_hz_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    ::memset(&audio_format_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&bit_depth_) -
+        reinterpret_cast<char*>(&audio_format_)) + sizeof(bit_depth_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.AudioFormat audio_format = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_IsValid(val))) {
+            _internal_set_audio_format(static_cast<::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_channels = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_num_channels(&has_bits);
+          num_channels_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated int32 sample_frequency_hz = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            _internal_add_sample_frequency_hz(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<24>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_sample_frequency_hz(), ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 max_bit_rate_per_second = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_max_bit_rate_per_second(&has_bits);
+          max_bit_rate_per_second_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 bit_depth = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_bit_depth(&has_bits);
+          bit_depth_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.AudioFormat audio_format = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      1, this->_internal_audio_format(), target);
+  }
+
+  // optional int32 num_channels = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_num_channels(), target);
+  }
+
+  // repeated int32 sample_frequency_hz = 3;
+  for (int i = 0, n = this->_internal_sample_frequency_hz_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_sample_frequency_hz(i), target);
+  }
+
+  // optional int32 max_bit_rate_per_second = 4;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_max_bit_rate_per_second(), target);
+  }
+
+  // optional int32 bit_depth = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_bit_depth(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+  return target;
+}
+
+size_t SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated int32 sample_frequency_hz = 3;
+  {
+    size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      Int32Size(this->sample_frequency_hz_);
+    total_size += 1 *
+                  ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_sample_frequency_hz_size());
+    total_size += data_size;
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.AudioFormat audio_format = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_audio_format());
+    }
+
+    // optional int32 num_channels = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_channels());
+    }
+
+    // optional int32 max_bit_rate_per_second = 4;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_max_bit_rate_per_second());
+    }
+
+    // optional int32 bit_depth = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_bit_depth());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription*>(
+      &from));
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::MergeFrom(const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  sample_frequency_hz_.MergeFrom(from.sample_frequency_hz_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      audio_format_ = from.audio_format_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      num_channels_ = from.num_channels_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      max_bit_rate_per_second_ = from.max_bit_rate_per_second_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      bit_depth_ = from.bit_depth_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::CopyFrom(const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::InternalSwap(SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  sample_frequency_hz_.InternalSwap(&other->sample_frequency_hz_);
+  swap(audio_format_, other->audio_format_);
+  swap(num_channels_, other->num_channels_);
+  swap(max_bit_rate_per_second_, other->max_bit_rate_per_second_);
+  swap(bit_depth_, other->bit_depth_);
+}
+
+std::string SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::GetTypeName() const {
+  return "metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::InitAsDefaultInstance() {
+}
+class SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_ExternalAudioVideoDevice_CECCommand>()._has_bits_);
+  static void set_has_opcode(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_num_received_direct(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_num_received_broadcast(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_num_sent_direct(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_num_sent_broadcast(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_num_aborted_unknown_reason(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_num_aborted_unrecognized(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+};
+
+SystemProfileProto_ExternalAudioVideoDevice_CECCommand::SystemProfileProto_ExternalAudioVideoDevice_CECCommand()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+}
+SystemProfileProto_ExternalAudioVideoDevice_CECCommand::SystemProfileProto_ExternalAudioVideoDevice_CECCommand(const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&opcode_, &from.opcode_,
+    static_cast<size_t>(reinterpret_cast<char*>(&num_aborted_unrecognized_) -
+    reinterpret_cast<char*>(&opcode_)) + sizeof(num_aborted_unrecognized_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::SharedCtor() {
+  ::memset(&opcode_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&num_aborted_unrecognized_) -
+      reinterpret_cast<char*>(&opcode_)) + sizeof(num_aborted_unrecognized_));
+}
+
+SystemProfileProto_ExternalAudioVideoDevice_CECCommand::~SystemProfileProto_ExternalAudioVideoDevice_CECCommand() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+  SharedDtor();
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::SharedDtor() {
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& SystemProfileProto_ExternalAudioVideoDevice_CECCommand::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_ExternalAudioVideoDevice_CECCommand_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    ::memset(&opcode_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&num_aborted_unrecognized_) -
+        reinterpret_cast<char*>(&opcode_)) + sizeof(num_aborted_unrecognized_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int32 opcode = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_opcode(&has_bits);
+          opcode_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_received_direct = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_num_received_direct(&has_bits);
+          num_received_direct_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_received_broadcast = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_num_received_broadcast(&has_bits);
+          num_received_broadcast_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_sent_direct = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          _Internal::set_has_num_sent_direct(&has_bits);
+          num_sent_direct_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_sent_broadcast = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_num_sent_broadcast(&has_bits);
+          num_sent_broadcast_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_aborted_unknown_reason = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_num_aborted_unknown_reason(&has_bits);
+          num_aborted_unknown_reason_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 num_aborted_unrecognized = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_num_aborted_unrecognized(&has_bits);
+          num_aborted_unrecognized_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int32 opcode = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_opcode(), target);
+  }
+
+  // optional int32 num_received_direct = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_num_received_direct(), target);
+  }
+
+  // optional int32 num_received_broadcast = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_num_received_broadcast(), target);
+  }
+
+  // optional int32 num_sent_direct = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_num_sent_direct(), target);
+  }
+
+  // optional int32 num_sent_broadcast = 5;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_num_sent_broadcast(), target);
+  }
+
+  // optional int32 num_aborted_unknown_reason = 6;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_num_aborted_unknown_reason(), target);
+  }
+
+  // optional int32 num_aborted_unrecognized = 7;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(7, this->_internal_num_aborted_unrecognized(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+  return target;
+}
+
+size_t SystemProfileProto_ExternalAudioVideoDevice_CECCommand::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    // optional int32 opcode = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_opcode());
+    }
+
+    // optional int32 num_received_direct = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_received_direct());
+    }
+
+    // optional int32 num_received_broadcast = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_received_broadcast());
+    }
+
+    // optional int32 num_sent_direct = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_sent_direct());
+    }
+
+    // optional int32 num_sent_broadcast = 5;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_sent_broadcast());
+    }
+
+    // optional int32 num_aborted_unknown_reason = 6;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_aborted_unknown_reason());
+    }
+
+    // optional int32 num_aborted_unrecognized = 7;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_num_aborted_unrecognized());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_ExternalAudioVideoDevice_CECCommand*>(
+      &from));
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::MergeFrom(const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000007fu) {
+    if (cached_has_bits & 0x00000001u) {
+      opcode_ = from.opcode_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      num_received_direct_ = from.num_received_direct_;
+    }
+    if (cached_has_bits & 0x00000004u) {
+      num_received_broadcast_ = from.num_received_broadcast_;
+    }
+    if (cached_has_bits & 0x00000008u) {
+      num_sent_direct_ = from.num_sent_direct_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      num_sent_broadcast_ = from.num_sent_broadcast_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      num_aborted_unknown_reason_ = from.num_aborted_unknown_reason_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      num_aborted_unrecognized_ = from.num_aborted_unrecognized_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::CopyFrom(const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::InternalSwap(SystemProfileProto_ExternalAudioVideoDevice_CECCommand* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(opcode_, other->opcode_);
+  swap(num_received_direct_, other->num_received_direct_);
+  swap(num_received_broadcast_, other->num_received_broadcast_);
+  swap(num_sent_direct_, other->num_sent_direct_);
+  swap(num_sent_broadcast_, other->num_sent_broadcast_);
+  swap(num_aborted_unknown_reason_, other->num_aborted_unknown_reason_);
+  swap(num_aborted_unrecognized_, other->num_aborted_unrecognized_);
+}
+
+std::string SystemProfileProto_ExternalAudioVideoDevice_CECCommand::GetTypeName() const {
+  return "metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_ExternalAudioVideoDevice::InitAsDefaultInstance() {
+}
+class SystemProfileProto_ExternalAudioVideoDevice::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_ExternalAudioVideoDevice>()._has_bits_);
+  static void set_has_manufacturer_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_model_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_product_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_manufacture_year(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static void set_has_manufacture_week(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static void set_has_horizontal_resolution(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static void set_has_vertical_resolution(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static void set_has_position_in_setup(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static void set_has_is_in_path_to_tv(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_cec_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+};
+
+SystemProfileProto_ExternalAudioVideoDevice::SystemProfileProto_ExternalAudioVideoDevice()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+}
+SystemProfileProto_ExternalAudioVideoDevice::SystemProfileProto_ExternalAudioVideoDevice(const SystemProfileProto_ExternalAudioVideoDevice& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      av_device_type_(from.av_device_type_),
+      audio_description_(from.audio_description_),
+      cec_command_(from.cec_command_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  manufacturer_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_manufacturer_name()) {
+    manufacturer_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacturer_name_);
+  }
+  model_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_model_name()) {
+    model_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_name_);
+  }
+  product_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_product_code()) {
+    product_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.product_code_);
+  }
+  ::memcpy(&manufacture_year_, &from.manufacture_year_,
+    static_cast<size_t>(reinterpret_cast<char*>(&cec_version_) -
+    reinterpret_cast<char*>(&manufacture_year_)) + sizeof(cec_version_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_ExternalAudioVideoDevice_system_5fprofile_2eproto.base);
+  manufacturer_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  product_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&manufacture_year_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&cec_version_) -
+      reinterpret_cast<char*>(&manufacture_year_)) + sizeof(cec_version_));
+}
+
+SystemProfileProto_ExternalAudioVideoDevice::~SystemProfileProto_ExternalAudioVideoDevice() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+  SharedDtor();
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice::SharedDtor() {
+  manufacturer_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  product_code_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_ExternalAudioVideoDevice& SystemProfileProto_ExternalAudioVideoDevice::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_ExternalAudioVideoDevice_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_ExternalAudioVideoDevice::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  av_device_type_.Clear();
+  audio_description_.Clear();
+  cec_command_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000007u) {
+    if (cached_has_bits & 0x00000001u) {
+      manufacturer_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      model_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      product_code_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  if (cached_has_bits & 0x000000f8u) {
+    ::memset(&manufacture_year_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&position_in_setup_) -
+        reinterpret_cast<char*>(&manufacture_year_)) + sizeof(position_in_setup_));
+  }
+  if (cached_has_bits & 0x00000300u) {
+    ::memset(&is_in_path_to_tv_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&cec_version_) -
+        reinterpret_cast<char*>(&is_in_path_to_tv_)) + sizeof(cec_version_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_ExternalAudioVideoDevice::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string manufacturer_name = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_manufacturer_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string model_name = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_model_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string product_code = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_product_code();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AVDeviceType av_device_type = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+            CHK_(ptr);
+            if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_IsValid(val))) {
+              _internal_add_av_device_type(static_cast<::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType>(val));
+            } else {
+              ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
+            }
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<32>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedEnumParser(_internal_mutable_av_device_type(), ptr, ctx, ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_IsValid, &_internal_metadata_, 4);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 manufacture_year = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
+          _Internal::set_has_manufacture_year(&has_bits);
+          manufacture_year_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 manufacture_week = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
+          _Internal::set_has_manufacture_week(&has_bits);
+          manufacture_week_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 horizontal_resolution = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
+          _Internal::set_has_horizontal_resolution(&has_bits);
+          horizontal_resolution_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 vertical_resolution = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 64)) {
+          _Internal::set_has_vertical_resolution(&has_bits);
+          vertical_resolution_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription audio_description = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_audio_description(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional int32 position_in_setup = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          _Internal::set_has_position_in_setup(&has_bits);
+          position_in_setup_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_in_path_to_tv = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
+          _Internal::set_has_is_in_path_to_tv(&has_bits);
+          is_in_path_to_tv_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int32 cec_version = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 96)) {
+          _Internal::set_has_cec_version(&has_bits);
+          cec_version_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand cec_command = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_cec_command(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<106>(ptr));
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_ExternalAudioVideoDevice::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string manufacturer_name = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_manufacturer_name(), target);
+  }
+
+  // optional string model_name = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_model_name(), target);
+  }
+
+  // optional string product_code = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_product_code(), target);
+  }
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AVDeviceType av_device_type = 4;
+  for (int i = 0, n = this->_internal_av_device_type_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+        4, this->_internal_av_device_type(i), target);
+  }
+
+  // optional int32 manufacture_year = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->_internal_manufacture_year(), target);
+  }
+
+  // optional int32 manufacture_week = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_manufacture_week(), target);
+  }
+
+  // optional int32 horizontal_resolution = 7;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(7, this->_internal_horizontal_resolution(), target);
+  }
+
+  // optional int32 vertical_resolution = 8;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(8, this->_internal_vertical_resolution(), target);
+  }
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription audio_description = 9;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_audio_description_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(9, this->_internal_audio_description(i), target, stream);
+  }
+
+  // optional int32 position_in_setup = 10;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(10, this->_internal_position_in_setup(), target);
+  }
+
+  // optional bool is_in_path_to_tv = 11;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(11, this->_internal_is_in_path_to_tv(), target);
+  }
+
+  // optional int32 cec_version = 12;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(12, this->_internal_cec_version(), target);
+  }
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand cec_command = 13;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_cec_command_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(13, this->_internal_cec_command(i), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+  return target;
+}
+
+size_t SystemProfileProto_ExternalAudioVideoDevice::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AVDeviceType av_device_type = 4;
+  {
+    size_t data_size = 0;
+    unsigned int count = static_cast<unsigned int>(this->_internal_av_device_type_size());for (unsigned int i = 0; i < count; i++) {
+      data_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(
+        this->_internal_av_device_type(static_cast<int>(i)));
+    }
+    total_size += (1UL * count) + data_size;
+  }
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription audio_description = 9;
+  total_size += 1UL * this->_internal_audio_description_size();
+  for (const auto& msg : this->audio_description_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand cec_command = 13;
+  total_size += 1UL * this->_internal_cec_command_size();
+  for (const auto& msg : this->cec_command_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string manufacturer_name = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_manufacturer_name());
+    }
+
+    // optional string model_name = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_model_name());
+    }
+
+    // optional string product_code = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_product_code());
+    }
+
+    // optional int32 manufacture_year = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_manufacture_year());
+    }
+
+    // optional int32 manufacture_week = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_manufacture_week());
+    }
+
+    // optional int32 horizontal_resolution = 7;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_horizontal_resolution());
+    }
+
+    // optional int32 vertical_resolution = 8;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_vertical_resolution());
+    }
+
+    // optional int32 position_in_setup = 10;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_position_in_setup());
+    }
+
+  }
+  if (cached_has_bits & 0x00000300u) {
+    // optional bool is_in_path_to_tv = 11;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 + 1;
+    }
+
+    // optional int32 cec_version = 12;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
+          this->_internal_cec_version());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_ExternalAudioVideoDevice*>(
+      &from));
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice::MergeFrom(const SystemProfileProto_ExternalAudioVideoDevice& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  av_device_type_.MergeFrom(from.av_device_type_);
+  audio_description_.MergeFrom(from.audio_description_);
+  cec_command_.MergeFrom(from.cec_command_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      manufacturer_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacturer_name_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      model_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      product_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.product_code_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      manufacture_year_ = from.manufacture_year_;
+    }
+    if (cached_has_bits & 0x00000010u) {
+      manufacture_week_ = from.manufacture_week_;
+    }
+    if (cached_has_bits & 0x00000020u) {
+      horizontal_resolution_ = from.horizontal_resolution_;
+    }
+    if (cached_has_bits & 0x00000040u) {
+      vertical_resolution_ = from.vertical_resolution_;
+    }
+    if (cached_has_bits & 0x00000080u) {
+      position_in_setup_ = from.position_in_setup_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00000300u) {
+    if (cached_has_bits & 0x00000100u) {
+      is_in_path_to_tv_ = from.is_in_path_to_tv_;
+    }
+    if (cached_has_bits & 0x00000200u) {
+      cec_version_ = from.cec_version_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice::CopyFrom(const SystemProfileProto_ExternalAudioVideoDevice& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_ExternalAudioVideoDevice::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_ExternalAudioVideoDevice::InternalSwap(SystemProfileProto_ExternalAudioVideoDevice* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  av_device_type_.InternalSwap(&other->av_device_type_);
+  audio_description_.InternalSwap(&other->audio_description_);
+  cec_command_.InternalSwap(&other->cec_command_);
+  manufacturer_name_.Swap(&other->manufacturer_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  model_name_.Swap(&other->model_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  product_code_.Swap(&other->product_code_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(manufacture_year_, other->manufacture_year_);
+  swap(manufacture_week_, other->manufacture_week_);
+  swap(horizontal_resolution_, other->horizontal_resolution_);
+  swap(vertical_resolution_, other->vertical_resolution_);
+  swap(position_in_setup_, other->position_in_setup_);
+  swap(is_in_path_to_tv_, other->is_in_path_to_tv_);
+  swap(cec_version_, other->cec_version_);
+}
+
+std::string SystemProfileProto_ExternalAudioVideoDevice::GetTypeName() const {
+  return "metrics.SystemProfileProto.ExternalAudioVideoDevice";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto_ExternalAccessPoint::InitAsDefaultInstance() {
+}
+class SystemProfileProto_ExternalAccessPoint::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto_ExternalAccessPoint>()._has_bits_);
+  static void set_has_manufacturer(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_model_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static void set_has_model_number(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_device_name(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+};
+
+SystemProfileProto_ExternalAccessPoint::SystemProfileProto_ExternalAccessPoint()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto.ExternalAccessPoint)
+}
+SystemProfileProto_ExternalAccessPoint::SystemProfileProto_ExternalAccessPoint(const SystemProfileProto_ExternalAccessPoint& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  manufacturer_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_manufacturer()) {
+    manufacturer_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacturer_);
+  }
+  model_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_model_name()) {
+    model_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_name_);
+  }
+  model_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_model_number()) {
+    model_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_number_);
+  }
+  device_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_device_name()) {
+    device_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_name_);
+  }
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto.ExternalAccessPoint)
+}
+
+void SystemProfileProto_ExternalAccessPoint::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_ExternalAccessPoint_system_5fprofile_2eproto.base);
+  manufacturer_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_number_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+SystemProfileProto_ExternalAccessPoint::~SystemProfileProto_ExternalAccessPoint() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto.ExternalAccessPoint)
+  SharedDtor();
+}
+
+void SystemProfileProto_ExternalAccessPoint::SharedDtor() {
+  manufacturer_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  model_number_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  device_name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+
+void SystemProfileProto_ExternalAccessPoint::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto_ExternalAccessPoint& SystemProfileProto_ExternalAccessPoint::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_ExternalAccessPoint_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto_ExternalAccessPoint::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto.ExternalAccessPoint)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      manufacturer_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      model_name_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      model_number_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      device_name_.ClearNonDefaultToEmptyNoArena();
+    }
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto_ExternalAccessPoint::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional string manufacturer = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
+          auto str = _internal_mutable_manufacturer();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string model_name = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_model_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string model_number = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
+          auto str = _internal_mutable_model_number();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string device_name = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_device_name();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto_ExternalAccessPoint::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto.ExternalAccessPoint)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional string manufacturer = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        1, this->_internal_manufacturer(), target);
+  }
+
+  // optional string model_name = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_model_name(), target);
+  }
+
+  // optional string model_number = 3;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        3, this->_internal_model_number(), target);
+  }
+
+  // optional string device_name = 4;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_device_name(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto.ExternalAccessPoint)
+  return target;
+}
+
+size_t SystemProfileProto_ExternalAccessPoint::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto.ExternalAccessPoint)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    // optional string manufacturer = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_manufacturer());
+    }
+
+    // optional string model_name = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_model_name());
+    }
+
+    // optional string model_number = 3;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_model_number());
+    }
+
+    // optional string device_name = 4;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_device_name());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto_ExternalAccessPoint::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto_ExternalAccessPoint*>(
+      &from));
+}
+
+void SystemProfileProto_ExternalAccessPoint::MergeFrom(const SystemProfileProto_ExternalAccessPoint& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto.ExternalAccessPoint)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x0000000fu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      manufacturer_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.manufacturer_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      model_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_name_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      model_number_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.model_number_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _has_bits_[0] |= 0x00000008u;
+      device_name_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.device_name_);
+    }
+  }
+}
+
+void SystemProfileProto_ExternalAccessPoint::CopyFrom(const SystemProfileProto_ExternalAccessPoint& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto.ExternalAccessPoint)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto_ExternalAccessPoint::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto_ExternalAccessPoint::InternalSwap(SystemProfileProto_ExternalAccessPoint* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  manufacturer_.Swap(&other->manufacturer_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  model_name_.Swap(&other->model_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  model_number_.Swap(&other->model_number_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  device_name_.Swap(&other->device_name_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+}
+
+std::string SystemProfileProto_ExternalAccessPoint::GetTypeName() const {
+  return "metrics.SystemProfileProto.ExternalAccessPoint";
+}
+
+
+// ===================================================================
+
+void SystemProfileProto::InitAsDefaultInstance() {
+  ::metrics::_SystemProfileProto_default_instance_._instance.get_mutable()->brillo_ = const_cast< ::metrics::SystemProfileProto_BrilloDeviceData*>(
+      ::metrics::SystemProfileProto_BrilloDeviceData::internal_default_instance());
+  ::metrics::_SystemProfileProto_default_instance_._instance.get_mutable()->os_ = const_cast< ::metrics::SystemProfileProto_OS*>(
+      ::metrics::SystemProfileProto_OS::internal_default_instance());
+  ::metrics::_SystemProfileProto_default_instance_._instance.get_mutable()->hardware_ = const_cast< ::metrics::SystemProfileProto_Hardware*>(
+      ::metrics::SystemProfileProto_Hardware::internal_default_instance());
+  ::metrics::_SystemProfileProto_default_instance_._instance.get_mutable()->network_ = const_cast< ::metrics::SystemProfileProto_Network*>(
+      ::metrics::SystemProfileProto_Network::internal_default_instance());
+  ::metrics::_SystemProfileProto_default_instance_._instance.get_mutable()->google_update_ = const_cast< ::metrics::SystemProfileProto_GoogleUpdate*>(
+      ::metrics::SystemProfileProto_GoogleUpdate::internal_default_instance());
+  ::metrics::_SystemProfileProto_default_instance_._instance.get_mutable()->stability_ = const_cast< ::metrics::SystemProfileProto_Stability*>(
+      ::metrics::SystemProfileProto_Stability::internal_default_instance());
+  ::metrics::_SystemProfileProto_default_instance_._instance.get_mutable()->external_access_point_ = const_cast< ::metrics::SystemProfileProto_ExternalAccessPoint*>(
+      ::metrics::SystemProfileProto_ExternalAccessPoint::internal_default_instance());
+}
+class SystemProfileProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<SystemProfileProto>()._has_bits_);
+  static void set_has_build_timestamp(HasBits* has_bits) {
+    (*has_bits)[0] |= 1024u;
+  }
+  static void set_has_app_version(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_brand_code(HasBits* has_bits) {
+    (*has_bits)[0] |= 4u;
+  }
+  static void set_has_channel(HasBits* has_bits) {
+    (*has_bits)[0] |= 4096u;
+  }
+  static void set_has_is_asan_build(HasBits* has_bits) {
+    (*has_bits)[0] |= 65536u;
+  }
+  static void set_has_uma_enabled_date(HasBits* has_bits) {
+    (*has_bits)[0] |= 2048u;
+  }
+  static void set_has_install_date(HasBits* has_bits) {
+    (*has_bits)[0] |= 16384u;
+  }
+  static void set_has_application_locale(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+  static const ::metrics::SystemProfileProto_BrilloDeviceData& brillo(const SystemProfileProto* msg);
+  static void set_has_brillo(HasBits* has_bits) {
+    (*has_bits)[0] |= 512u;
+  }
+  static const ::metrics::SystemProfileProto_OS& os(const SystemProfileProto* msg);
+  static void set_has_os(HasBits* has_bits) {
+    (*has_bits)[0] |= 8u;
+  }
+  static const ::metrics::SystemProfileProto_Hardware& hardware(const SystemProfileProto* msg);
+  static void set_has_hardware(HasBits* has_bits) {
+    (*has_bits)[0] |= 16u;
+  }
+  static const ::metrics::SystemProfileProto_Network& network(const SystemProfileProto* msg);
+  static void set_has_network(HasBits* has_bits) {
+    (*has_bits)[0] |= 128u;
+  }
+  static const ::metrics::SystemProfileProto_GoogleUpdate& google_update(const SystemProfileProto* msg);
+  static void set_has_google_update(HasBits* has_bits) {
+    (*has_bits)[0] |= 64u;
+  }
+  static const ::metrics::SystemProfileProto_Stability& stability(const SystemProfileProto* msg);
+  static void set_has_stability(HasBits* has_bits) {
+    (*has_bits)[0] |= 32u;
+  }
+  static const ::metrics::SystemProfileProto_ExternalAccessPoint& external_access_point(const SystemProfileProto* msg);
+  static void set_has_external_access_point(HasBits* has_bits) {
+    (*has_bits)[0] |= 256u;
+  }
+  static void set_has_multi_profile_user_count(HasBits* has_bits) {
+    (*has_bits)[0] |= 8192u;
+  }
+  static void set_has_offstore_extensions_state(HasBits* has_bits) {
+    (*has_bits)[0] |= 32768u;
+  }
+};
+
+const ::metrics::SystemProfileProto_BrilloDeviceData&
+SystemProfileProto::_Internal::brillo(const SystemProfileProto* msg) {
+  return *msg->brillo_;
+}
+const ::metrics::SystemProfileProto_OS&
+SystemProfileProto::_Internal::os(const SystemProfileProto* msg) {
+  return *msg->os_;
+}
+const ::metrics::SystemProfileProto_Hardware&
+SystemProfileProto::_Internal::hardware(const SystemProfileProto* msg) {
+  return *msg->hardware_;
+}
+const ::metrics::SystemProfileProto_Network&
+SystemProfileProto::_Internal::network(const SystemProfileProto* msg) {
+  return *msg->network_;
+}
+const ::metrics::SystemProfileProto_GoogleUpdate&
+SystemProfileProto::_Internal::google_update(const SystemProfileProto* msg) {
+  return *msg->google_update_;
+}
+const ::metrics::SystemProfileProto_Stability&
+SystemProfileProto::_Internal::stability(const SystemProfileProto* msg) {
+  return *msg->stability_;
+}
+const ::metrics::SystemProfileProto_ExternalAccessPoint&
+SystemProfileProto::_Internal::external_access_point(const SystemProfileProto* msg) {
+  return *msg->external_access_point_;
+}
+SystemProfileProto::SystemProfileProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.SystemProfileProto)
+}
+SystemProfileProto::SystemProfileProto(const SystemProfileProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_),
+      plugin_(from.plugin_),
+      field_trial_(from.field_trial_),
+      external_audio_video_device_(from.external_audio_video_device_),
+      occupied_extension_bucket_(from.occupied_extension_bucket_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  app_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_app_version()) {
+    app_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_version_);
+  }
+  application_locale_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_application_locale()) {
+    application_locale_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.application_locale_);
+  }
+  brand_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (from._internal_has_brand_code()) {
+    brand_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_code_);
+  }
+  if (from._internal_has_os()) {
+    os_ = new ::metrics::SystemProfileProto_OS(*from.os_);
+  } else {
+    os_ = nullptr;
+  }
+  if (from._internal_has_hardware()) {
+    hardware_ = new ::metrics::SystemProfileProto_Hardware(*from.hardware_);
+  } else {
+    hardware_ = nullptr;
+  }
+  if (from._internal_has_stability()) {
+    stability_ = new ::metrics::SystemProfileProto_Stability(*from.stability_);
+  } else {
+    stability_ = nullptr;
+  }
+  if (from._internal_has_google_update()) {
+    google_update_ = new ::metrics::SystemProfileProto_GoogleUpdate(*from.google_update_);
+  } else {
+    google_update_ = nullptr;
+  }
+  if (from._internal_has_network()) {
+    network_ = new ::metrics::SystemProfileProto_Network(*from.network_);
+  } else {
+    network_ = nullptr;
+  }
+  if (from._internal_has_external_access_point()) {
+    external_access_point_ = new ::metrics::SystemProfileProto_ExternalAccessPoint(*from.external_access_point_);
+  } else {
+    external_access_point_ = nullptr;
+  }
+  if (from._internal_has_brillo()) {
+    brillo_ = new ::metrics::SystemProfileProto_BrilloDeviceData(*from.brillo_);
+  } else {
+    brillo_ = nullptr;
+  }
+  ::memcpy(&build_timestamp_, &from.build_timestamp_,
+    static_cast<size_t>(reinterpret_cast<char*>(&is_asan_build_) -
+    reinterpret_cast<char*>(&build_timestamp_)) + sizeof(is_asan_build_));
+  // @@protoc_insertion_point(copy_constructor:metrics.SystemProfileProto)
+}
+
+void SystemProfileProto::SharedCtor() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SystemProfileProto_system_5fprofile_2eproto.base);
+  app_version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  application_locale_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_code_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  ::memset(&os_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&is_asan_build_) -
+      reinterpret_cast<char*>(&os_)) + sizeof(is_asan_build_));
+}
+
+SystemProfileProto::~SystemProfileProto() {
+  // @@protoc_insertion_point(destructor:metrics.SystemProfileProto)
+  SharedDtor();
+}
+
+void SystemProfileProto::SharedDtor() {
+  app_version_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  application_locale_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  brand_code_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  if (this != internal_default_instance()) delete os_;
+  if (this != internal_default_instance()) delete hardware_;
+  if (this != internal_default_instance()) delete stability_;
+  if (this != internal_default_instance()) delete google_update_;
+  if (this != internal_default_instance()) delete network_;
+  if (this != internal_default_instance()) delete external_access_point_;
+  if (this != internal_default_instance()) delete brillo_;
+}
+
+void SystemProfileProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const SystemProfileProto& SystemProfileProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_SystemProfileProto_system_5fprofile_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void SystemProfileProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.SystemProfileProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  plugin_.Clear();
+  field_trial_.Clear();
+  external_audio_video_device_.Clear();
+  occupied_extension_bucket_.Clear();
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      app_version_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000002u) {
+      application_locale_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000004u) {
+      brand_code_.ClearNonDefaultToEmptyNoArena();
+    }
+    if (cached_has_bits & 0x00000008u) {
+      GOOGLE_DCHECK(os_ != nullptr);
+      os_->Clear();
+    }
+    if (cached_has_bits & 0x00000010u) {
+      GOOGLE_DCHECK(hardware_ != nullptr);
+      hardware_->Clear();
+    }
+    if (cached_has_bits & 0x00000020u) {
+      GOOGLE_DCHECK(stability_ != nullptr);
+      stability_->Clear();
+    }
+    if (cached_has_bits & 0x00000040u) {
+      GOOGLE_DCHECK(google_update_ != nullptr);
+      google_update_->Clear();
+    }
+    if (cached_has_bits & 0x00000080u) {
+      GOOGLE_DCHECK(network_ != nullptr);
+      network_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x00000300u) {
+    if (cached_has_bits & 0x00000100u) {
+      GOOGLE_DCHECK(external_access_point_ != nullptr);
+      external_access_point_->Clear();
+    }
+    if (cached_has_bits & 0x00000200u) {
+      GOOGLE_DCHECK(brillo_ != nullptr);
+      brillo_->Clear();
+    }
+  }
+  if (cached_has_bits & 0x0000fc00u) {
+    ::memset(&build_timestamp_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&offstore_extensions_state_) -
+        reinterpret_cast<char*>(&build_timestamp_)) + sizeof(offstore_extensions_state_));
+  }
+  is_asan_build_ = false;
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* SystemProfileProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional int64 build_timestamp = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
+          _Internal::set_has_build_timestamp(&has_bits);
+          build_timestamp_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string app_version = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
+          auto str = _internal_mutable_app_version();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 uma_enabled_date = 3;
+      case 3:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
+          _Internal::set_has_uma_enabled_date(&has_bits);
+          uma_enabled_date_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string application_locale = 4;
+      case 4:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
+          auto str = _internal_mutable_application_locale();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.OS os = 5;
+      case 5:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
+          ptr = ctx->ParseMessage(_internal_mutable_os(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Hardware hardware = 6;
+      case 6:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
+          ptr = ctx->ParseMessage(_internal_mutable_hardware(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.Plugin plugin = 7;
+      case 7:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_plugin(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Stability stability = 8;
+      case 8:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
+          ptr = ctx->ParseMessage(_internal_mutable_stability(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.FieldTrial field_trial = 9;
+      case 9:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_field_trial(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Channel channel = 10;
+      case 10:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 80)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_Channel_IsValid(val))) {
+            _internal_set_channel(static_cast<::metrics::SystemProfileProto_Channel>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(10, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.GoogleUpdate google_update = 11;
+      case 11:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 90)) {
+          ptr = ctx->ParseMessage(_internal_mutable_google_update(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional string brand_code = 12;
+      case 12:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 98)) {
+          auto str = _internal_mutable_brand_code();
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.Network network = 13;
+      case 13:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 106)) {
+          ptr = ctx->ParseMessage(_internal_mutable_network(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice external_audio_video_device = 14;
+      case 14:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 114)) {
+          ptr -= 1;
+          do {
+            ptr += 1;
+            ptr = ctx->ParseMessage(_internal_add_external_audio_video_device(), ptr);
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<114>(ptr));
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.ExternalAccessPoint external_access_point = 15;
+      case 15:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 122)) {
+          ptr = ctx->ParseMessage(_internal_mutable_external_access_point(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 install_date = 16;
+      case 16:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 128)) {
+          _Internal::set_has_install_date(&has_bits);
+          install_date_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional uint32 multi_profile_user_count = 17;
+      case 17:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 136)) {
+          _Internal::set_has_multi_profile_user_count(&has_bits);
+          multi_profile_user_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // repeated int32 occupied_extension_bucket = 18;
+      case 18:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 144)) {
+          ptr -= 2;
+          do {
+            ptr += 2;
+            _internal_add_occupied_extension_bucket(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr));
+            CHK_(ptr);
+            if (!ctx->DataAvailable(ptr)) break;
+          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<144>(ptr));
+        } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 146) {
+          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_occupied_extension_bucket(), ptr, ctx);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.ExtensionsState offstore_extensions_state = 19;
+      case 19:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 152)) {
+          ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+          if (PROTOBUF_PREDICT_TRUE(::metrics::SystemProfileProto_ExtensionsState_IsValid(val))) {
+            _internal_set_offstore_extensions_state(static_cast<::metrics::SystemProfileProto_ExtensionsState>(val));
+          } else {
+            ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(19, val, mutable_unknown_fields());
+          }
+        } else goto handle_unusual;
+        continue;
+      // optional bool is_asan_build = 20 [default = false];
+      case 20:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 160)) {
+          _Internal::set_has_is_asan_build(&has_bits);
+          is_asan_build_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      // optional .metrics.SystemProfileProto.BrilloDeviceData brillo = 21;
+      case 21:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 170)) {
+          ptr = ctx->ParseMessage(_internal_mutable_brillo(), ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* SystemProfileProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.SystemProfileProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional int64 build_timestamp = 1;
+  if (cached_has_bits & 0x00000400u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_build_timestamp(), target);
+  }
+
+  // optional string app_version = 2;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->WriteStringMaybeAliased(
+        2, this->_internal_app_version(), target);
+  }
+
+  // optional int64 uma_enabled_date = 3;
+  if (cached_has_bits & 0x00000800u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_uma_enabled_date(), target);
+  }
+
+  // optional string application_locale = 4;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->WriteStringMaybeAliased(
+        4, this->_internal_application_locale(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.OS os = 5;
+  if (cached_has_bits & 0x00000008u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        5, _Internal::os(this), target, stream);
+  }
+
+  // optional .metrics.SystemProfileProto.Hardware hardware = 6;
+  if (cached_has_bits & 0x00000010u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        6, _Internal::hardware(this), target, stream);
+  }
+
+  // repeated .metrics.SystemProfileProto.Plugin plugin = 7;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_plugin_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(7, this->_internal_plugin(i), target, stream);
+  }
+
+  // optional .metrics.SystemProfileProto.Stability stability = 8;
+  if (cached_has_bits & 0x00000020u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        8, _Internal::stability(this), target, stream);
+  }
+
+  // repeated .metrics.SystemProfileProto.FieldTrial field_trial = 9;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_field_trial_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(9, this->_internal_field_trial(i), target, stream);
+  }
+
+  // optional .metrics.SystemProfileProto.Channel channel = 10;
+  if (cached_has_bits & 0x00001000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      10, this->_internal_channel(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.GoogleUpdate google_update = 11;
+  if (cached_has_bits & 0x00000040u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        11, _Internal::google_update(this), target, stream);
+  }
+
+  // optional string brand_code = 12;
+  if (cached_has_bits & 0x00000004u) {
+    target = stream->WriteStringMaybeAliased(
+        12, this->_internal_brand_code(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.Network network = 13;
+  if (cached_has_bits & 0x00000080u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        13, _Internal::network(this), target, stream);
+  }
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice external_audio_video_device = 14;
+  for (unsigned int i = 0,
+      n = static_cast<unsigned int>(this->_internal_external_audio_video_device_size()); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(14, this->_internal_external_audio_video_device(i), target, stream);
+  }
+
+  // optional .metrics.SystemProfileProto.ExternalAccessPoint external_access_point = 15;
+  if (cached_has_bits & 0x00000100u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        15, _Internal::external_access_point(this), target, stream);
+  }
+
+  // optional int64 install_date = 16;
+  if (cached_has_bits & 0x00004000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(16, this->_internal_install_date(), target);
+  }
+
+  // optional uint32 multi_profile_user_count = 17;
+  if (cached_has_bits & 0x00002000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(17, this->_internal_multi_profile_user_count(), target);
+  }
+
+  // repeated int32 occupied_extension_bucket = 18;
+  for (int i = 0, n = this->_internal_occupied_extension_bucket_size(); i < n; i++) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(18, this->_internal_occupied_extension_bucket(i), target);
+  }
+
+  // optional .metrics.SystemProfileProto.ExtensionsState offstore_extensions_state = 19;
+  if (cached_has_bits & 0x00008000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
+      19, this->_internal_offstore_extensions_state(), target);
+  }
+
+  // optional bool is_asan_build = 20 [default = false];
+  if (cached_has_bits & 0x00010000u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(20, this->_internal_is_asan_build(), target);
+  }
+
+  // optional .metrics.SystemProfileProto.BrilloDeviceData brillo = 21;
+  if (cached_has_bits & 0x00000200u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      InternalWriteMessage(
+        21, _Internal::brillo(this), target, stream);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.SystemProfileProto)
+  return target;
+}
+
+size_t SystemProfileProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.SystemProfileProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  // repeated .metrics.SystemProfileProto.Plugin plugin = 7;
+  total_size += 1UL * this->_internal_plugin_size();
+  for (const auto& msg : this->plugin_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .metrics.SystemProfileProto.FieldTrial field_trial = 9;
+  total_size += 1UL * this->_internal_field_trial_size();
+  for (const auto& msg : this->field_trial_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice external_audio_video_device = 14;
+  total_size += 1UL * this->_internal_external_audio_video_device_size();
+  for (const auto& msg : this->external_audio_video_device_) {
+    total_size +=
+      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
+  }
+
+  // repeated int32 occupied_extension_bucket = 18;
+  {
+    size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
+      Int32Size(this->occupied_extension_bucket_);
+    total_size += 2 *
+                  ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_occupied_extension_bucket_size());
+    total_size += data_size;
+  }
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    // optional string app_version = 2;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_app_version());
+    }
+
+    // optional string application_locale = 4;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_application_locale());
+    }
+
+    // optional string brand_code = 12;
+    if (cached_has_bits & 0x00000004u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
+          this->_internal_brand_code());
+    }
+
+    // optional .metrics.SystemProfileProto.OS os = 5;
+    if (cached_has_bits & 0x00000008u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *os_);
+    }
+
+    // optional .metrics.SystemProfileProto.Hardware hardware = 6;
+    if (cached_has_bits & 0x00000010u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *hardware_);
+    }
+
+    // optional .metrics.SystemProfileProto.Stability stability = 8;
+    if (cached_has_bits & 0x00000020u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *stability_);
+    }
+
+    // optional .metrics.SystemProfileProto.GoogleUpdate google_update = 11;
+    if (cached_has_bits & 0x00000040u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *google_update_);
+    }
+
+    // optional .metrics.SystemProfileProto.Network network = 13;
+    if (cached_has_bits & 0x00000080u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *network_);
+    }
+
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    // optional .metrics.SystemProfileProto.ExternalAccessPoint external_access_point = 15;
+    if (cached_has_bits & 0x00000100u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *external_access_point_);
+    }
+
+    // optional .metrics.SystemProfileProto.BrilloDeviceData brillo = 21;
+    if (cached_has_bits & 0x00000200u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
+          *brillo_);
+    }
+
+    // optional int64 build_timestamp = 1;
+    if (cached_has_bits & 0x00000400u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_build_timestamp());
+    }
+
+    // optional int64 uma_enabled_date = 3;
+    if (cached_has_bits & 0x00000800u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_uma_enabled_date());
+    }
+
+    // optional .metrics.SystemProfileProto.Channel channel = 10;
+    if (cached_has_bits & 0x00001000u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_channel());
+    }
+
+    // optional uint32 multi_profile_user_count = 17;
+    if (cached_has_bits & 0x00002000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
+          this->_internal_multi_profile_user_count());
+    }
+
+    // optional int64 install_date = 16;
+    if (cached_has_bits & 0x00004000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_install_date());
+    }
+
+    // optional .metrics.SystemProfileProto.ExtensionsState offstore_extensions_state = 19;
+    if (cached_has_bits & 0x00008000u) {
+      total_size += 2 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_offstore_extensions_state());
+    }
+
+  }
+  // optional bool is_asan_build = 20 [default = false];
+  if (cached_has_bits & 0x00010000u) {
+    total_size += 2 + 1;
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void SystemProfileProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const SystemProfileProto*>(
+      &from));
+}
+
+void SystemProfileProto::MergeFrom(const SystemProfileProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.SystemProfileProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  plugin_.MergeFrom(from.plugin_);
+  field_trial_.MergeFrom(from.field_trial_);
+  external_audio_video_device_.MergeFrom(from.external_audio_video_device_);
+  occupied_extension_bucket_.MergeFrom(from.occupied_extension_bucket_);
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x000000ffu) {
+    if (cached_has_bits & 0x00000001u) {
+      _has_bits_[0] |= 0x00000001u;
+      app_version_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.app_version_);
+    }
+    if (cached_has_bits & 0x00000002u) {
+      _has_bits_[0] |= 0x00000002u;
+      application_locale_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.application_locale_);
+    }
+    if (cached_has_bits & 0x00000004u) {
+      _has_bits_[0] |= 0x00000004u;
+      brand_code_.AssignWithDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from.brand_code_);
+    }
+    if (cached_has_bits & 0x00000008u) {
+      _internal_mutable_os()->::metrics::SystemProfileProto_OS::MergeFrom(from._internal_os());
+    }
+    if (cached_has_bits & 0x00000010u) {
+      _internal_mutable_hardware()->::metrics::SystemProfileProto_Hardware::MergeFrom(from._internal_hardware());
+    }
+    if (cached_has_bits & 0x00000020u) {
+      _internal_mutable_stability()->::metrics::SystemProfileProto_Stability::MergeFrom(from._internal_stability());
+    }
+    if (cached_has_bits & 0x00000040u) {
+      _internal_mutable_google_update()->::metrics::SystemProfileProto_GoogleUpdate::MergeFrom(from._internal_google_update());
+    }
+    if (cached_has_bits & 0x00000080u) {
+      _internal_mutable_network()->::metrics::SystemProfileProto_Network::MergeFrom(from._internal_network());
+    }
+  }
+  if (cached_has_bits & 0x0000ff00u) {
+    if (cached_has_bits & 0x00000100u) {
+      _internal_mutable_external_access_point()->::metrics::SystemProfileProto_ExternalAccessPoint::MergeFrom(from._internal_external_access_point());
+    }
+    if (cached_has_bits & 0x00000200u) {
+      _internal_mutable_brillo()->::metrics::SystemProfileProto_BrilloDeviceData::MergeFrom(from._internal_brillo());
+    }
+    if (cached_has_bits & 0x00000400u) {
+      build_timestamp_ = from.build_timestamp_;
+    }
+    if (cached_has_bits & 0x00000800u) {
+      uma_enabled_date_ = from.uma_enabled_date_;
+    }
+    if (cached_has_bits & 0x00001000u) {
+      channel_ = from.channel_;
+    }
+    if (cached_has_bits & 0x00002000u) {
+      multi_profile_user_count_ = from.multi_profile_user_count_;
+    }
+    if (cached_has_bits & 0x00004000u) {
+      install_date_ = from.install_date_;
+    }
+    if (cached_has_bits & 0x00008000u) {
+      offstore_extensions_state_ = from.offstore_extensions_state_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+  if (cached_has_bits & 0x00010000u) {
+    _internal_set_is_asan_build(from._internal_is_asan_build());
+  }
+}
+
+void SystemProfileProto::CopyFrom(const SystemProfileProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.SystemProfileProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool SystemProfileProto::IsInitialized() const {
+  return true;
+}
+
+void SystemProfileProto::InternalSwap(SystemProfileProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  plugin_.InternalSwap(&other->plugin_);
+  field_trial_.InternalSwap(&other->field_trial_);
+  external_audio_video_device_.InternalSwap(&other->external_audio_video_device_);
+  occupied_extension_bucket_.InternalSwap(&other->occupied_extension_bucket_);
+  app_version_.Swap(&other->app_version_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  application_locale_.Swap(&other->application_locale_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  brand_code_.Swap(&other->brand_code_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+    GetArenaNoVirtual());
+  swap(os_, other->os_);
+  swap(hardware_, other->hardware_);
+  swap(stability_, other->stability_);
+  swap(google_update_, other->google_update_);
+  swap(network_, other->network_);
+  swap(external_access_point_, other->external_access_point_);
+  swap(brillo_, other->brillo_);
+  swap(build_timestamp_, other->build_timestamp_);
+  swap(uma_enabled_date_, other->uma_enabled_date_);
+  swap(channel_, other->channel_);
+  swap(multi_profile_user_count_, other->multi_profile_user_count_);
+  swap(install_date_, other->install_date_);
+  swap(offstore_extensions_state_, other->offstore_extensions_state_);
+  swap(is_asan_build_, other->is_asan_build_);
+}
+
+std::string SystemProfileProto::GetTypeName() const {
+  return "metrics.SystemProfileProto";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_BrilloDeviceData* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_BrilloDeviceData >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_BrilloDeviceData >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_OS* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_OS >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_OS >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Hardware_CPU* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Hardware_CPU >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Hardware_CPU >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Hardware_Graphics* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Hardware_Graphics >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Hardware_Graphics >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Hardware_Bluetooth* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Hardware_Bluetooth >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Hardware_Bluetooth >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Hardware_TouchScreen* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Hardware_TouchScreen >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Hardware_TouchScreen >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Hardware_Drive* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Hardware_Drive >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Hardware_Drive >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Hardware* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Hardware >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Hardware >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Network_WifiAccessPoint* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Network_WifiAccessPoint >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Network_WifiAccessPoint >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Network* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Network >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Network >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_GoogleUpdate* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_GoogleUpdate >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_GoogleUpdate >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Plugin* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Plugin >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Plugin >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Stability_PluginStability* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Stability_PluginStability >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Stability_PluginStability >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_Stability* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_Stability >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_Stability >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_FieldTrial* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_FieldTrial >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_FieldTrial >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_ExternalAudioVideoDevice* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_ExternalAudioVideoDevice >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_ExternalAudioVideoDevice >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto_ExternalAccessPoint* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto_ExternalAccessPoint >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto_ExternalAccessPoint >(arena);
+}
+template<> PROTOBUF_NOINLINE ::metrics::SystemProfileProto* Arena::CreateMaybeMessage< ::metrics::SystemProfileProto >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::SystemProfileProto >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/system_profile.pb.h b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/system_profile.pb.h
new file mode 100644
index 0000000..c34d027
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/system_profile.pb.h
@@ -0,0 +1,11989 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: system_profile.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_system_5fprofile_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_system_5fprofile_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/generated_enum_util.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_system_5fprofile_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_system_5fprofile_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[23]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace metrics {
+class SystemProfileProto;
+class SystemProfileProtoDefaultTypeInternal;
+extern SystemProfileProtoDefaultTypeInternal _SystemProfileProto_default_instance_;
+class SystemProfileProto_BrilloDeviceData;
+class SystemProfileProto_BrilloDeviceDataDefaultTypeInternal;
+extern SystemProfileProto_BrilloDeviceDataDefaultTypeInternal _SystemProfileProto_BrilloDeviceData_default_instance_;
+class SystemProfileProto_ExternalAccessPoint;
+class SystemProfileProto_ExternalAccessPointDefaultTypeInternal;
+extern SystemProfileProto_ExternalAccessPointDefaultTypeInternal _SystemProfileProto_ExternalAccessPoint_default_instance_;
+class SystemProfileProto_ExternalAudioVideoDevice;
+class SystemProfileProto_ExternalAudioVideoDeviceDefaultTypeInternal;
+extern SystemProfileProto_ExternalAudioVideoDeviceDefaultTypeInternal _SystemProfileProto_ExternalAudioVideoDevice_default_instance_;
+class SystemProfileProto_ExternalAudioVideoDevice_AudioDescription;
+class SystemProfileProto_ExternalAudioVideoDevice_AudioDescriptionDefaultTypeInternal;
+extern SystemProfileProto_ExternalAudioVideoDevice_AudioDescriptionDefaultTypeInternal _SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_default_instance_;
+class SystemProfileProto_ExternalAudioVideoDevice_CECCommand;
+class SystemProfileProto_ExternalAudioVideoDevice_CECCommandDefaultTypeInternal;
+extern SystemProfileProto_ExternalAudioVideoDevice_CECCommandDefaultTypeInternal _SystemProfileProto_ExternalAudioVideoDevice_CECCommand_default_instance_;
+class SystemProfileProto_FieldTrial;
+class SystemProfileProto_FieldTrialDefaultTypeInternal;
+extern SystemProfileProto_FieldTrialDefaultTypeInternal _SystemProfileProto_FieldTrial_default_instance_;
+class SystemProfileProto_GoogleUpdate;
+class SystemProfileProto_GoogleUpdateDefaultTypeInternal;
+extern SystemProfileProto_GoogleUpdateDefaultTypeInternal _SystemProfileProto_GoogleUpdate_default_instance_;
+class SystemProfileProto_GoogleUpdate_ProductInfo;
+class SystemProfileProto_GoogleUpdate_ProductInfoDefaultTypeInternal;
+extern SystemProfileProto_GoogleUpdate_ProductInfoDefaultTypeInternal _SystemProfileProto_GoogleUpdate_ProductInfo_default_instance_;
+class SystemProfileProto_Hardware;
+class SystemProfileProto_HardwareDefaultTypeInternal;
+extern SystemProfileProto_HardwareDefaultTypeInternal _SystemProfileProto_Hardware_default_instance_;
+class SystemProfileProto_Hardware_Bluetooth;
+class SystemProfileProto_Hardware_BluetoothDefaultTypeInternal;
+extern SystemProfileProto_Hardware_BluetoothDefaultTypeInternal _SystemProfileProto_Hardware_Bluetooth_default_instance_;
+class SystemProfileProto_Hardware_Bluetooth_PairedDevice;
+class SystemProfileProto_Hardware_Bluetooth_PairedDeviceDefaultTypeInternal;
+extern SystemProfileProto_Hardware_Bluetooth_PairedDeviceDefaultTypeInternal _SystemProfileProto_Hardware_Bluetooth_PairedDevice_default_instance_;
+class SystemProfileProto_Hardware_CPU;
+class SystemProfileProto_Hardware_CPUDefaultTypeInternal;
+extern SystemProfileProto_Hardware_CPUDefaultTypeInternal _SystemProfileProto_Hardware_CPU_default_instance_;
+class SystemProfileProto_Hardware_Drive;
+class SystemProfileProto_Hardware_DriveDefaultTypeInternal;
+extern SystemProfileProto_Hardware_DriveDefaultTypeInternal _SystemProfileProto_Hardware_Drive_default_instance_;
+class SystemProfileProto_Hardware_Graphics;
+class SystemProfileProto_Hardware_GraphicsDefaultTypeInternal;
+extern SystemProfileProto_Hardware_GraphicsDefaultTypeInternal _SystemProfileProto_Hardware_Graphics_default_instance_;
+class SystemProfileProto_Hardware_TouchScreen;
+class SystemProfileProto_Hardware_TouchScreenDefaultTypeInternal;
+extern SystemProfileProto_Hardware_TouchScreenDefaultTypeInternal _SystemProfileProto_Hardware_TouchScreen_default_instance_;
+class SystemProfileProto_Network;
+class SystemProfileProto_NetworkDefaultTypeInternal;
+extern SystemProfileProto_NetworkDefaultTypeInternal _SystemProfileProto_Network_default_instance_;
+class SystemProfileProto_Network_WifiAccessPoint;
+class SystemProfileProto_Network_WifiAccessPointDefaultTypeInternal;
+extern SystemProfileProto_Network_WifiAccessPointDefaultTypeInternal _SystemProfileProto_Network_WifiAccessPoint_default_instance_;
+class SystemProfileProto_Network_WifiAccessPoint_VendorInformation;
+class SystemProfileProto_Network_WifiAccessPoint_VendorInformationDefaultTypeInternal;
+extern SystemProfileProto_Network_WifiAccessPoint_VendorInformationDefaultTypeInternal _SystemProfileProto_Network_WifiAccessPoint_VendorInformation_default_instance_;
+class SystemProfileProto_OS;
+class SystemProfileProto_OSDefaultTypeInternal;
+extern SystemProfileProto_OSDefaultTypeInternal _SystemProfileProto_OS_default_instance_;
+class SystemProfileProto_Plugin;
+class SystemProfileProto_PluginDefaultTypeInternal;
+extern SystemProfileProto_PluginDefaultTypeInternal _SystemProfileProto_Plugin_default_instance_;
+class SystemProfileProto_Stability;
+class SystemProfileProto_StabilityDefaultTypeInternal;
+extern SystemProfileProto_StabilityDefaultTypeInternal _SystemProfileProto_Stability_default_instance_;
+class SystemProfileProto_Stability_PluginStability;
+class SystemProfileProto_Stability_PluginStabilityDefaultTypeInternal;
+extern SystemProfileProto_Stability_PluginStabilityDefaultTypeInternal _SystemProfileProto_Stability_PluginStability_default_instance_;
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> ::metrics::SystemProfileProto* Arena::CreateMaybeMessage<::metrics::SystemProfileProto>(Arena*);
+template<> ::metrics::SystemProfileProto_BrilloDeviceData* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_BrilloDeviceData>(Arena*);
+template<> ::metrics::SystemProfileProto_ExternalAccessPoint* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_ExternalAccessPoint>(Arena*);
+template<> ::metrics::SystemProfileProto_ExternalAudioVideoDevice* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_ExternalAudioVideoDevice>(Arena*);
+template<> ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription>(Arena*);
+template<> ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand>(Arena*);
+template<> ::metrics::SystemProfileProto_FieldTrial* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_FieldTrial>(Arena*);
+template<> ::metrics::SystemProfileProto_GoogleUpdate* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_GoogleUpdate>(Arena*);
+template<> ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_GoogleUpdate_ProductInfo>(Arena*);
+template<> ::metrics::SystemProfileProto_Hardware* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Hardware>(Arena*);
+template<> ::metrics::SystemProfileProto_Hardware_Bluetooth* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_Bluetooth>(Arena*);
+template<> ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice>(Arena*);
+template<> ::metrics::SystemProfileProto_Hardware_CPU* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_CPU>(Arena*);
+template<> ::metrics::SystemProfileProto_Hardware_Drive* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_Drive>(Arena*);
+template<> ::metrics::SystemProfileProto_Hardware_Graphics* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_Graphics>(Arena*);
+template<> ::metrics::SystemProfileProto_Hardware_TouchScreen* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_TouchScreen>(Arena*);
+template<> ::metrics::SystemProfileProto_Network* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Network>(Arena*);
+template<> ::metrics::SystemProfileProto_Network_WifiAccessPoint* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Network_WifiAccessPoint>(Arena*);
+template<> ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation>(Arena*);
+template<> ::metrics::SystemProfileProto_OS* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_OS>(Arena*);
+template<> ::metrics::SystemProfileProto_Plugin* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Plugin>(Arena*);
+template<> ::metrics::SystemProfileProto_Stability* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Stability>(Arena*);
+template<> ::metrics::SystemProfileProto_Stability_PluginStability* Arena::CreateMaybeMessage<::metrics::SystemProfileProto_Stability_PluginStability>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace metrics {
+
+enum SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type : int {
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_UNKNOWN = 0,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_COMPUTER = 1,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_PHONE = 2,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_MODEM = 3,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_AUDIO = 4,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_CAR_AUDIO = 5,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_VIDEO = 6,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_PERIPHERAL = 7,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_JOYSTICK = 8,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_GAMEPAD = 9,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_KEYBOARD = 10,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_MOUSE = 11,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_TABLET = 12,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_KEYBOARD_MOUSE_COMBO = 13
+};
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_IsValid(int value);
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Type_MIN = SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_UNKNOWN;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Type_MAX = SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_KEYBOARD_MOUSE_COMBO;
+constexpr int SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Type_ARRAYSIZE = SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Type_MAX + 1;
+
+const std::string& SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Name(SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type value);
+template<typename T>
+inline const std::string& SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Name.");
+  return SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Name(static_cast<SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type>(enum_t_value));
+}
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Parse(
+    const std::string& name, SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type* value);
+enum SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource : int {
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VENDOR_ID_UNKNOWN = 0,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VENDOR_ID_BLUETOOTH = 1,
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VENDOR_ID_USB = 2
+};
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_IsValid(int value);
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VendorIDSource_MIN = SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VENDOR_ID_UNKNOWN;
+constexpr SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VendorIDSource_MAX = SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VENDOR_ID_USB;
+constexpr int SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VendorIDSource_ARRAYSIZE = SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VendorIDSource_MAX + 1;
+
+const std::string& SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Name(SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource value);
+template<typename T>
+inline const std::string& SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Name.");
+  return SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Name(static_cast<SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource>(enum_t_value));
+}
+bool SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Parse(
+    const std::string& name, SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource* value);
+enum SystemProfileProto_Network_WifiAccessPoint_SecurityMode : int {
+  SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_UNKNOWN = 0,
+  SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_WPA = 1,
+  SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_WEP = 2,
+  SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_RSN = 3,
+  SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_802_1X = 4,
+  SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_PSK = 5,
+  SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_NONE = 6
+};
+bool SystemProfileProto_Network_WifiAccessPoint_SecurityMode_IsValid(int value);
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SecurityMode_MIN = SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_UNKNOWN;
+constexpr SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SecurityMode_MAX = SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_NONE;
+constexpr int SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SecurityMode_ARRAYSIZE = SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SecurityMode_MAX + 1;
+
+const std::string& SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Name(SystemProfileProto_Network_WifiAccessPoint_SecurityMode value);
+template<typename T>
+inline const std::string& SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_Network_WifiAccessPoint_SecurityMode>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Name.");
+  return SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Name(static_cast<SystemProfileProto_Network_WifiAccessPoint_SecurityMode>(enum_t_value));
+}
+bool SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Parse(
+    const std::string& name, SystemProfileProto_Network_WifiAccessPoint_SecurityMode* value);
+enum SystemProfileProto_Network_ConnectionType : int {
+  SystemProfileProto_Network_ConnectionType_CONNECTION_UNKNOWN = 0,
+  SystemProfileProto_Network_ConnectionType_CONNECTION_ETHERNET = 1,
+  SystemProfileProto_Network_ConnectionType_CONNECTION_WIFI = 2,
+  SystemProfileProto_Network_ConnectionType_CONNECTION_2G = 3,
+  SystemProfileProto_Network_ConnectionType_CONNECTION_3G = 4,
+  SystemProfileProto_Network_ConnectionType_CONNECTION_4G = 5,
+  SystemProfileProto_Network_ConnectionType_CONNECTION_BLUETOOTH = 6
+};
+bool SystemProfileProto_Network_ConnectionType_IsValid(int value);
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network_ConnectionType_ConnectionType_MIN = SystemProfileProto_Network_ConnectionType_CONNECTION_UNKNOWN;
+constexpr SystemProfileProto_Network_ConnectionType SystemProfileProto_Network_ConnectionType_ConnectionType_MAX = SystemProfileProto_Network_ConnectionType_CONNECTION_BLUETOOTH;
+constexpr int SystemProfileProto_Network_ConnectionType_ConnectionType_ARRAYSIZE = SystemProfileProto_Network_ConnectionType_ConnectionType_MAX + 1;
+
+const std::string& SystemProfileProto_Network_ConnectionType_Name(SystemProfileProto_Network_ConnectionType value);
+template<typename T>
+inline const std::string& SystemProfileProto_Network_ConnectionType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_Network_ConnectionType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_Network_ConnectionType_Name.");
+  return SystemProfileProto_Network_ConnectionType_Name(static_cast<SystemProfileProto_Network_ConnectionType>(enum_t_value));
+}
+bool SystemProfileProto_Network_ConnectionType_Parse(
+    const std::string& name, SystemProfileProto_Network_ConnectionType* value);
+enum SystemProfileProto_Network_WifiPHYLayerProtocol : int {
+  SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_NONE = 0,
+  SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_ANCIENT = 1,
+  SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_A = 2,
+  SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_B = 3,
+  SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_G = 4,
+  SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_N = 5,
+  SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_UNKNOWN = 6
+};
+bool SystemProfileProto_Network_WifiPHYLayerProtocol_IsValid(int value);
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network_WifiPHYLayerProtocol_WifiPHYLayerProtocol_MIN = SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_NONE;
+constexpr SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network_WifiPHYLayerProtocol_WifiPHYLayerProtocol_MAX = SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_UNKNOWN;
+constexpr int SystemProfileProto_Network_WifiPHYLayerProtocol_WifiPHYLayerProtocol_ARRAYSIZE = SystemProfileProto_Network_WifiPHYLayerProtocol_WifiPHYLayerProtocol_MAX + 1;
+
+const std::string& SystemProfileProto_Network_WifiPHYLayerProtocol_Name(SystemProfileProto_Network_WifiPHYLayerProtocol value);
+template<typename T>
+inline const std::string& SystemProfileProto_Network_WifiPHYLayerProtocol_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_Network_WifiPHYLayerProtocol>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_Network_WifiPHYLayerProtocol_Name.");
+  return SystemProfileProto_Network_WifiPHYLayerProtocol_Name(static_cast<SystemProfileProto_Network_WifiPHYLayerProtocol>(enum_t_value));
+}
+bool SystemProfileProto_Network_WifiPHYLayerProtocol_Parse(
+    const std::string& name, SystemProfileProto_Network_WifiPHYLayerProtocol* value);
+enum SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult : int {
+  SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_SUCCESS = 0,
+  SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_FAILED_CUSTOM_ERROR = 1,
+  SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_FAILED_MSI_ERROR = 2,
+  SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_FAILED_SYSTEM_ERROR = 3,
+  SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_EXIT_CODE = 4
+};
+bool SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_IsValid(int value);
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_InstallResult_MIN = SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_SUCCESS;
+constexpr SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_InstallResult_MAX = SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_EXIT_CODE;
+constexpr int SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_InstallResult_ARRAYSIZE = SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_InstallResult_MAX + 1;
+
+const std::string& SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Name(SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult value);
+template<typename T>
+inline const std::string& SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Name.");
+  return SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Name(static_cast<SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult>(enum_t_value));
+}
+bool SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Parse(
+    const std::string& name, SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult* value);
+enum SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat : int {
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_UNKNOWN = 0,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_LPCM = 1,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_AC_3 = 2,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MPEG1 = 3,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MP3 = 4,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MPEG2 = 5,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_AAC = 6,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_DTS = 7,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_ATRAC = 8,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_ONE_BIT = 9,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_DD_PLUS = 10,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_DTS_HD = 11,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MLP_DOLBY_TRUEHD = 12,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_DST_AUDIO = 13,
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MICROSOFT_WMA_PRO = 14
+};
+bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_IsValid(int value);
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AudioFormat_MIN = SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_UNKNOWN;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AudioFormat_MAX = SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MICROSOFT_WMA_PRO;
+constexpr int SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AudioFormat_ARRAYSIZE = SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AudioFormat_MAX + 1;
+
+const std::string& SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Name(SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat value);
+template<typename T>
+inline const std::string& SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Name.");
+  return SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Name(static_cast<SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat>(enum_t_value));
+}
+bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Parse(
+    const std::string& name, SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat* value);
+enum SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType : int {
+  SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_UNKNOWN = 0,
+  SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_TV = 1,
+  SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_RECORDER = 2,
+  SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_TUNER = 3,
+  SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_PLAYER = 4,
+  SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_AUDIO_SYSTEM = 5
+};
+bool SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_IsValid(int value);
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AVDeviceType_MIN = SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_UNKNOWN;
+constexpr SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AVDeviceType_MAX = SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_AUDIO_SYSTEM;
+constexpr int SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AVDeviceType_ARRAYSIZE = SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AVDeviceType_MAX + 1;
+
+const std::string& SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Name(SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType value);
+template<typename T>
+inline const std::string& SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Name.");
+  return SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Name(static_cast<SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType>(enum_t_value));
+}
+bool SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Parse(
+    const std::string& name, SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType* value);
+enum SystemProfileProto_Channel : int {
+  SystemProfileProto_Channel_CHANNEL_UNKNOWN = 0,
+  SystemProfileProto_Channel_CHANNEL_CANARY = 1,
+  SystemProfileProto_Channel_CHANNEL_DEV = 2,
+  SystemProfileProto_Channel_CHANNEL_BETA = 3,
+  SystemProfileProto_Channel_CHANNEL_STABLE = 4
+};
+bool SystemProfileProto_Channel_IsValid(int value);
+constexpr SystemProfileProto_Channel SystemProfileProto_Channel_Channel_MIN = SystemProfileProto_Channel_CHANNEL_UNKNOWN;
+constexpr SystemProfileProto_Channel SystemProfileProto_Channel_Channel_MAX = SystemProfileProto_Channel_CHANNEL_STABLE;
+constexpr int SystemProfileProto_Channel_Channel_ARRAYSIZE = SystemProfileProto_Channel_Channel_MAX + 1;
+
+const std::string& SystemProfileProto_Channel_Name(SystemProfileProto_Channel value);
+template<typename T>
+inline const std::string& SystemProfileProto_Channel_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_Channel>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_Channel_Name.");
+  return SystemProfileProto_Channel_Name(static_cast<SystemProfileProto_Channel>(enum_t_value));
+}
+bool SystemProfileProto_Channel_Parse(
+    const std::string& name, SystemProfileProto_Channel* value);
+enum SystemProfileProto_ExtensionsState : int {
+  SystemProfileProto_ExtensionsState_NO_EXTENSIONS = 0,
+  SystemProfileProto_ExtensionsState_NO_OFFSTORE_VERIFIED = 1,
+  SystemProfileProto_ExtensionsState_NO_OFFSTORE_UNVERIFIED = 2,
+  SystemProfileProto_ExtensionsState_HAS_OFFSTORE = 3
+};
+bool SystemProfileProto_ExtensionsState_IsValid(int value);
+constexpr SystemProfileProto_ExtensionsState SystemProfileProto_ExtensionsState_ExtensionsState_MIN = SystemProfileProto_ExtensionsState_NO_EXTENSIONS;
+constexpr SystemProfileProto_ExtensionsState SystemProfileProto_ExtensionsState_ExtensionsState_MAX = SystemProfileProto_ExtensionsState_HAS_OFFSTORE;
+constexpr int SystemProfileProto_ExtensionsState_ExtensionsState_ARRAYSIZE = SystemProfileProto_ExtensionsState_ExtensionsState_MAX + 1;
+
+const std::string& SystemProfileProto_ExtensionsState_Name(SystemProfileProto_ExtensionsState value);
+template<typename T>
+inline const std::string& SystemProfileProto_ExtensionsState_Name(T enum_t_value) {
+  static_assert(::std::is_same<T, SystemProfileProto_ExtensionsState>::value ||
+    ::std::is_integral<T>::value,
+    "Incorrect type passed to function SystemProfileProto_ExtensionsState_Name.");
+  return SystemProfileProto_ExtensionsState_Name(static_cast<SystemProfileProto_ExtensionsState>(enum_t_value));
+}
+bool SystemProfileProto_ExtensionsState_Parse(
+    const std::string& name, SystemProfileProto_ExtensionsState* value);
+// ===================================================================
+
+class SystemProfileProto_BrilloDeviceData :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.BrilloDeviceData) */ {
+ public:
+  SystemProfileProto_BrilloDeviceData();
+  virtual ~SystemProfileProto_BrilloDeviceData();
+
+  SystemProfileProto_BrilloDeviceData(const SystemProfileProto_BrilloDeviceData& from);
+  SystemProfileProto_BrilloDeviceData(SystemProfileProto_BrilloDeviceData&& from) noexcept
+    : SystemProfileProto_BrilloDeviceData() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_BrilloDeviceData& operator=(const SystemProfileProto_BrilloDeviceData& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_BrilloDeviceData& operator=(SystemProfileProto_BrilloDeviceData&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_BrilloDeviceData& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_BrilloDeviceData* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_BrilloDeviceData*>(
+               &_SystemProfileProto_BrilloDeviceData_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(SystemProfileProto_BrilloDeviceData& a, SystemProfileProto_BrilloDeviceData& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_BrilloDeviceData* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_BrilloDeviceData* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_BrilloDeviceData>(nullptr);
+  }
+
+  SystemProfileProto_BrilloDeviceData* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_BrilloDeviceData>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_BrilloDeviceData& from);
+  void MergeFrom(const SystemProfileProto_BrilloDeviceData& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_BrilloDeviceData* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.BrilloDeviceData";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBuildTargetIdFieldNumber = 1,
+  };
+  // optional string build_target_id = 1;
+  bool has_build_target_id() const;
+  private:
+  bool _internal_has_build_target_id() const;
+  public:
+  void clear_build_target_id();
+  const std::string& build_target_id() const;
+  void set_build_target_id(const std::string& value);
+  void set_build_target_id(std::string&& value);
+  void set_build_target_id(const char* value);
+  void set_build_target_id(const char* value, size_t size);
+  std::string* mutable_build_target_id();
+  std::string* release_build_target_id();
+  void set_allocated_build_target_id(std::string* build_target_id);
+  private:
+  const std::string& _internal_build_target_id() const;
+  void _internal_set_build_target_id(const std::string& value);
+  std::string* _internal_mutable_build_target_id();
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.BrilloDeviceData)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr build_target_id_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_OS :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.OS) */ {
+ public:
+  SystemProfileProto_OS();
+  virtual ~SystemProfileProto_OS();
+
+  SystemProfileProto_OS(const SystemProfileProto_OS& from);
+  SystemProfileProto_OS(SystemProfileProto_OS&& from) noexcept
+    : SystemProfileProto_OS() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_OS& operator=(const SystemProfileProto_OS& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_OS& operator=(SystemProfileProto_OS&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_OS& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_OS* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_OS*>(
+               &_SystemProfileProto_OS_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    1;
+
+  friend void swap(SystemProfileProto_OS& a, SystemProfileProto_OS& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_OS* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_OS* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_OS>(nullptr);
+  }
+
+  SystemProfileProto_OS* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_OS>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_OS& from);
+  void MergeFrom(const SystemProfileProto_OS& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_OS* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.OS";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kVersionFieldNumber = 2,
+    kFingerprintFieldNumber = 3,
+    kIsJailbrokenFieldNumber = 4,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string version = 2;
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  const std::string& version() const;
+  void set_version(const std::string& value);
+  void set_version(std::string&& value);
+  void set_version(const char* value);
+  void set_version(const char* value, size_t size);
+  std::string* mutable_version();
+  std::string* release_version();
+  void set_allocated_version(std::string* version);
+  private:
+  const std::string& _internal_version() const;
+  void _internal_set_version(const std::string& value);
+  std::string* _internal_mutable_version();
+  public:
+
+  // optional string fingerprint = 3;
+  bool has_fingerprint() const;
+  private:
+  bool _internal_has_fingerprint() const;
+  public:
+  void clear_fingerprint();
+  const std::string& fingerprint() const;
+  void set_fingerprint(const std::string& value);
+  void set_fingerprint(std::string&& value);
+  void set_fingerprint(const char* value);
+  void set_fingerprint(const char* value, size_t size);
+  std::string* mutable_fingerprint();
+  std::string* release_fingerprint();
+  void set_allocated_fingerprint(std::string* fingerprint);
+  private:
+  const std::string& _internal_fingerprint() const;
+  void _internal_set_fingerprint(const std::string& value);
+  std::string* _internal_mutable_fingerprint();
+  public:
+
+  // optional bool is_jailbroken = 4;
+  bool has_is_jailbroken() const;
+  private:
+  bool _internal_has_is_jailbroken() const;
+  public:
+  void clear_is_jailbroken();
+  bool is_jailbroken() const;
+  void set_is_jailbroken(bool value);
+  private:
+  bool _internal_is_jailbroken() const;
+  void _internal_set_is_jailbroken(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.OS)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr fingerprint_;
+  bool is_jailbroken_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Hardware_CPU :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Hardware.CPU) */ {
+ public:
+  SystemProfileProto_Hardware_CPU();
+  virtual ~SystemProfileProto_Hardware_CPU();
+
+  SystemProfileProto_Hardware_CPU(const SystemProfileProto_Hardware_CPU& from);
+  SystemProfileProto_Hardware_CPU(SystemProfileProto_Hardware_CPU&& from) noexcept
+    : SystemProfileProto_Hardware_CPU() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Hardware_CPU& operator=(const SystemProfileProto_Hardware_CPU& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Hardware_CPU& operator=(SystemProfileProto_Hardware_CPU&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Hardware_CPU& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Hardware_CPU* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Hardware_CPU*>(
+               &_SystemProfileProto_Hardware_CPU_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    2;
+
+  friend void swap(SystemProfileProto_Hardware_CPU& a, SystemProfileProto_Hardware_CPU& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Hardware_CPU* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Hardware_CPU* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_CPU>(nullptr);
+  }
+
+  SystemProfileProto_Hardware_CPU* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_CPU>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Hardware_CPU& from);
+  void MergeFrom(const SystemProfileProto_Hardware_CPU& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Hardware_CPU* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Hardware.CPU";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVendorNameFieldNumber = 1,
+    kSignatureFieldNumber = 2,
+    kNumCoresFieldNumber = 3,
+  };
+  // optional string vendor_name = 1;
+  bool has_vendor_name() const;
+  private:
+  bool _internal_has_vendor_name() const;
+  public:
+  void clear_vendor_name();
+  const std::string& vendor_name() const;
+  void set_vendor_name(const std::string& value);
+  void set_vendor_name(std::string&& value);
+  void set_vendor_name(const char* value);
+  void set_vendor_name(const char* value, size_t size);
+  std::string* mutable_vendor_name();
+  std::string* release_vendor_name();
+  void set_allocated_vendor_name(std::string* vendor_name);
+  private:
+  const std::string& _internal_vendor_name() const;
+  void _internal_set_vendor_name(const std::string& value);
+  std::string* _internal_mutable_vendor_name();
+  public:
+
+  // optional uint32 signature = 2;
+  bool has_signature() const;
+  private:
+  bool _internal_has_signature() const;
+  public:
+  void clear_signature();
+  ::PROTOBUF_NAMESPACE_ID::uint32 signature() const;
+  void set_signature(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_signature() const;
+  void _internal_set_signature(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 num_cores = 3;
+  bool has_num_cores() const;
+  private:
+  bool _internal_has_num_cores() const;
+  public:
+  void clear_num_cores();
+  ::PROTOBUF_NAMESPACE_ID::uint32 num_cores() const;
+  void set_num_cores(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_num_cores() const;
+  void _internal_set_num_cores(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Hardware.CPU)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr vendor_name_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 signature_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 num_cores_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Hardware_Graphics :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Hardware.Graphics) */ {
+ public:
+  SystemProfileProto_Hardware_Graphics();
+  virtual ~SystemProfileProto_Hardware_Graphics();
+
+  SystemProfileProto_Hardware_Graphics(const SystemProfileProto_Hardware_Graphics& from);
+  SystemProfileProto_Hardware_Graphics(SystemProfileProto_Hardware_Graphics&& from) noexcept
+    : SystemProfileProto_Hardware_Graphics() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Hardware_Graphics& operator=(const SystemProfileProto_Hardware_Graphics& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Hardware_Graphics& operator=(SystemProfileProto_Hardware_Graphics&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Hardware_Graphics& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Hardware_Graphics* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Hardware_Graphics*>(
+               &_SystemProfileProto_Hardware_Graphics_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    3;
+
+  friend void swap(SystemProfileProto_Hardware_Graphics& a, SystemProfileProto_Hardware_Graphics& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Hardware_Graphics* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Hardware_Graphics* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_Graphics>(nullptr);
+  }
+
+  SystemProfileProto_Hardware_Graphics* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_Graphics>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Hardware_Graphics& from);
+  void MergeFrom(const SystemProfileProto_Hardware_Graphics& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Hardware_Graphics* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Hardware.Graphics";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kDriverVersionFieldNumber = 3,
+    kDriverDateFieldNumber = 4,
+    kGlVendorFieldNumber = 6,
+    kGlRendererFieldNumber = 7,
+    kVendorIdFieldNumber = 1,
+    kDeviceIdFieldNumber = 2,
+  };
+  // optional string driver_version = 3;
+  bool has_driver_version() const;
+  private:
+  bool _internal_has_driver_version() const;
+  public:
+  void clear_driver_version();
+  const std::string& driver_version() const;
+  void set_driver_version(const std::string& value);
+  void set_driver_version(std::string&& value);
+  void set_driver_version(const char* value);
+  void set_driver_version(const char* value, size_t size);
+  std::string* mutable_driver_version();
+  std::string* release_driver_version();
+  void set_allocated_driver_version(std::string* driver_version);
+  private:
+  const std::string& _internal_driver_version() const;
+  void _internal_set_driver_version(const std::string& value);
+  std::string* _internal_mutable_driver_version();
+  public:
+
+  // optional string driver_date = 4;
+  bool has_driver_date() const;
+  private:
+  bool _internal_has_driver_date() const;
+  public:
+  void clear_driver_date();
+  const std::string& driver_date() const;
+  void set_driver_date(const std::string& value);
+  void set_driver_date(std::string&& value);
+  void set_driver_date(const char* value);
+  void set_driver_date(const char* value, size_t size);
+  std::string* mutable_driver_date();
+  std::string* release_driver_date();
+  void set_allocated_driver_date(std::string* driver_date);
+  private:
+  const std::string& _internal_driver_date() const;
+  void _internal_set_driver_date(const std::string& value);
+  std::string* _internal_mutable_driver_date();
+  public:
+
+  // optional string gl_vendor = 6;
+  bool has_gl_vendor() const;
+  private:
+  bool _internal_has_gl_vendor() const;
+  public:
+  void clear_gl_vendor();
+  const std::string& gl_vendor() const;
+  void set_gl_vendor(const std::string& value);
+  void set_gl_vendor(std::string&& value);
+  void set_gl_vendor(const char* value);
+  void set_gl_vendor(const char* value, size_t size);
+  std::string* mutable_gl_vendor();
+  std::string* release_gl_vendor();
+  void set_allocated_gl_vendor(std::string* gl_vendor);
+  private:
+  const std::string& _internal_gl_vendor() const;
+  void _internal_set_gl_vendor(const std::string& value);
+  std::string* _internal_mutable_gl_vendor();
+  public:
+
+  // optional string gl_renderer = 7;
+  bool has_gl_renderer() const;
+  private:
+  bool _internal_has_gl_renderer() const;
+  public:
+  void clear_gl_renderer();
+  const std::string& gl_renderer() const;
+  void set_gl_renderer(const std::string& value);
+  void set_gl_renderer(std::string&& value);
+  void set_gl_renderer(const char* value);
+  void set_gl_renderer(const char* value, size_t size);
+  std::string* mutable_gl_renderer();
+  std::string* release_gl_renderer();
+  void set_allocated_gl_renderer(std::string* gl_renderer);
+  private:
+  const std::string& _internal_gl_renderer() const;
+  void _internal_set_gl_renderer(const std::string& value);
+  std::string* _internal_mutable_gl_renderer();
+  public:
+
+  // optional uint32 vendor_id = 1;
+  bool has_vendor_id() const;
+  private:
+  bool _internal_has_vendor_id() const;
+  public:
+  void clear_vendor_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_id() const;
+  void set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_vendor_id() const;
+  void _internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 device_id = 2;
+  bool has_device_id() const;
+  private:
+  bool _internal_has_device_id() const;
+  public:
+  void clear_device_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 device_id() const;
+  void set_device_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_device_id() const;
+  void _internal_set_device_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Hardware.Graphics)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr driver_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr driver_date_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr gl_vendor_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr gl_renderer_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_id_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 device_id_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Hardware_Bluetooth_PairedDevice :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice) */ {
+ public:
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice();
+  virtual ~SystemProfileProto_Hardware_Bluetooth_PairedDevice();
+
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice(const SystemProfileProto_Hardware_Bluetooth_PairedDevice& from);
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice(SystemProfileProto_Hardware_Bluetooth_PairedDevice&& from) noexcept
+    : SystemProfileProto_Hardware_Bluetooth_PairedDevice() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Hardware_Bluetooth_PairedDevice& operator=(const SystemProfileProto_Hardware_Bluetooth_PairedDevice& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Hardware_Bluetooth_PairedDevice& operator=(SystemProfileProto_Hardware_Bluetooth_PairedDevice&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Hardware_Bluetooth_PairedDevice& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Hardware_Bluetooth_PairedDevice* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Hardware_Bluetooth_PairedDevice*>(
+               &_SystemProfileProto_Hardware_Bluetooth_PairedDevice_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    4;
+
+  friend void swap(SystemProfileProto_Hardware_Bluetooth_PairedDevice& a, SystemProfileProto_Hardware_Bluetooth_PairedDevice& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Hardware_Bluetooth_PairedDevice* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Hardware_Bluetooth_PairedDevice* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_Bluetooth_PairedDevice>(nullptr);
+  }
+
+  SystemProfileProto_Hardware_Bluetooth_PairedDevice* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_Bluetooth_PairedDevice>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Hardware_Bluetooth_PairedDevice& from);
+  void MergeFrom(const SystemProfileProto_Hardware_Bluetooth_PairedDevice& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Hardware_Bluetooth_PairedDevice* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type Type;
+  static constexpr Type DEVICE_UNKNOWN =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_UNKNOWN;
+  static constexpr Type DEVICE_COMPUTER =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_COMPUTER;
+  static constexpr Type DEVICE_PHONE =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_PHONE;
+  static constexpr Type DEVICE_MODEM =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_MODEM;
+  static constexpr Type DEVICE_AUDIO =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_AUDIO;
+  static constexpr Type DEVICE_CAR_AUDIO =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_CAR_AUDIO;
+  static constexpr Type DEVICE_VIDEO =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_VIDEO;
+  static constexpr Type DEVICE_PERIPHERAL =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_PERIPHERAL;
+  static constexpr Type DEVICE_JOYSTICK =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_JOYSTICK;
+  static constexpr Type DEVICE_GAMEPAD =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_GAMEPAD;
+  static constexpr Type DEVICE_KEYBOARD =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_KEYBOARD;
+  static constexpr Type DEVICE_MOUSE =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_MOUSE;
+  static constexpr Type DEVICE_TABLET =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_TABLET;
+  static constexpr Type DEVICE_KEYBOARD_MOUSE_COMBO =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_DEVICE_KEYBOARD_MOUSE_COMBO;
+  static inline bool Type_IsValid(int value) {
+    return SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_IsValid(value);
+  }
+  static constexpr Type Type_MIN =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Type_MIN;
+  static constexpr Type Type_MAX =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Type_MAX;
+  static constexpr int Type_ARRAYSIZE =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Type_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Type_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Type>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Type_Name.");
+    return SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Name(enum_t_value);
+  }
+  static inline bool Type_Parse(const std::string& name,
+      Type* value) {
+    return SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_Parse(name, value);
+  }
+
+  typedef SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource VendorIDSource;
+  static constexpr VendorIDSource VENDOR_ID_UNKNOWN =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VENDOR_ID_UNKNOWN;
+  static constexpr VendorIDSource VENDOR_ID_BLUETOOTH =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VENDOR_ID_BLUETOOTH;
+  static constexpr VendorIDSource VENDOR_ID_USB =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VENDOR_ID_USB;
+  static inline bool VendorIDSource_IsValid(int value) {
+    return SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_IsValid(value);
+  }
+  static constexpr VendorIDSource VendorIDSource_MIN =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VendorIDSource_MIN;
+  static constexpr VendorIDSource VendorIDSource_MAX =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VendorIDSource_MAX;
+  static constexpr int VendorIDSource_ARRAYSIZE =
+    SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_VendorIDSource_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& VendorIDSource_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, VendorIDSource>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function VendorIDSource_Name.");
+    return SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Name(enum_t_value);
+  }
+  static inline bool VendorIDSource_Parse(const std::string& name,
+      VendorIDSource* value) {
+    return SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kBluetoothClassFieldNumber = 1,
+    kTypeFieldNumber = 2,
+    kVendorPrefixFieldNumber = 4,
+    kVendorIdFieldNumber = 5,
+    kProductIdFieldNumber = 6,
+    kDeviceIdFieldNumber = 7,
+    kVendorIdSourceFieldNumber = 8,
+  };
+  // optional uint32 bluetooth_class = 1;
+  bool has_bluetooth_class() const;
+  private:
+  bool _internal_has_bluetooth_class() const;
+  public:
+  void clear_bluetooth_class();
+  ::PROTOBUF_NAMESPACE_ID::uint32 bluetooth_class() const;
+  void set_bluetooth_class(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_bluetooth_class() const;
+  void _internal_set_bluetooth_class(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.Type type = 2;
+  bool has_type() const;
+  private:
+  bool _internal_has_type() const;
+  public:
+  void clear_type();
+  ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type type() const;
+  void set_type(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type value);
+  private:
+  ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type _internal_type() const;
+  void _internal_set_type(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type value);
+  public:
+
+  // optional uint32 vendor_prefix = 4;
+  bool has_vendor_prefix() const;
+  private:
+  bool _internal_has_vendor_prefix() const;
+  public:
+  void clear_vendor_prefix();
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_prefix() const;
+  void set_vendor_prefix(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_vendor_prefix() const;
+  void _internal_set_vendor_prefix(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 vendor_id = 5;
+  bool has_vendor_id() const;
+  private:
+  bool _internal_has_vendor_id() const;
+  public:
+  void clear_vendor_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_id() const;
+  void set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_vendor_id() const;
+  void _internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 product_id = 6;
+  bool has_product_id() const;
+  private:
+  bool _internal_has_product_id() const;
+  public:
+  void clear_product_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 product_id() const;
+  void set_product_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_product_id() const;
+  void _internal_set_product_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 device_id = 7;
+  bool has_device_id() const;
+  private:
+  bool _internal_has_device_id() const;
+  public:
+  void clear_device_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 device_id() const;
+  void set_device_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_device_id() const;
+  void _internal_set_device_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.VendorIDSource vendor_id_source = 8;
+  bool has_vendor_id_source() const;
+  private:
+  bool _internal_has_vendor_id_source() const;
+  public:
+  void clear_vendor_id_source();
+  ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource vendor_id_source() const;
+  void set_vendor_id_source(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource value);
+  private:
+  ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource _internal_vendor_id_source() const;
+  void _internal_set_vendor_id_source(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 bluetooth_class_;
+  int type_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_prefix_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_id_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 product_id_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 device_id_;
+  int vendor_id_source_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Hardware_Bluetooth :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Hardware.Bluetooth) */ {
+ public:
+  SystemProfileProto_Hardware_Bluetooth();
+  virtual ~SystemProfileProto_Hardware_Bluetooth();
+
+  SystemProfileProto_Hardware_Bluetooth(const SystemProfileProto_Hardware_Bluetooth& from);
+  SystemProfileProto_Hardware_Bluetooth(SystemProfileProto_Hardware_Bluetooth&& from) noexcept
+    : SystemProfileProto_Hardware_Bluetooth() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Hardware_Bluetooth& operator=(const SystemProfileProto_Hardware_Bluetooth& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Hardware_Bluetooth& operator=(SystemProfileProto_Hardware_Bluetooth&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Hardware_Bluetooth& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Hardware_Bluetooth* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Hardware_Bluetooth*>(
+               &_SystemProfileProto_Hardware_Bluetooth_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    5;
+
+  friend void swap(SystemProfileProto_Hardware_Bluetooth& a, SystemProfileProto_Hardware_Bluetooth& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Hardware_Bluetooth* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Hardware_Bluetooth* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_Bluetooth>(nullptr);
+  }
+
+  SystemProfileProto_Hardware_Bluetooth* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_Bluetooth>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Hardware_Bluetooth& from);
+  void MergeFrom(const SystemProfileProto_Hardware_Bluetooth& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Hardware_Bluetooth* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Hardware.Bluetooth";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_Hardware_Bluetooth_PairedDevice PairedDevice;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPairedDeviceFieldNumber = 3,
+    kIsPresentFieldNumber = 1,
+    kIsEnabledFieldNumber = 2,
+  };
+  // repeated .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice paired_device = 3;
+  int paired_device_size() const;
+  private:
+  int _internal_paired_device_size() const;
+  public:
+  void clear_paired_device();
+  ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice* mutable_paired_device(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice >*
+      mutable_paired_device();
+  private:
+  const ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice& _internal_paired_device(int index) const;
+  ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice* _internal_add_paired_device();
+  public:
+  const ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice& paired_device(int index) const;
+  ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice* add_paired_device();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice >&
+      paired_device() const;
+
+  // optional bool is_present = 1;
+  bool has_is_present() const;
+  private:
+  bool _internal_has_is_present() const;
+  public:
+  void clear_is_present();
+  bool is_present() const;
+  void set_is_present(bool value);
+  private:
+  bool _internal_is_present() const;
+  void _internal_set_is_present(bool value);
+  public:
+
+  // optional bool is_enabled = 2;
+  bool has_is_enabled() const;
+  private:
+  bool _internal_has_is_enabled() const;
+  public:
+  void clear_is_enabled();
+  bool is_enabled() const;
+  void set_is_enabled(bool value);
+  private:
+  bool _internal_is_enabled() const;
+  void _internal_set_is_enabled(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Hardware.Bluetooth)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice > paired_device_;
+  bool is_present_;
+  bool is_enabled_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Hardware_TouchScreen :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Hardware.TouchScreen) */ {
+ public:
+  SystemProfileProto_Hardware_TouchScreen();
+  virtual ~SystemProfileProto_Hardware_TouchScreen();
+
+  SystemProfileProto_Hardware_TouchScreen(const SystemProfileProto_Hardware_TouchScreen& from);
+  SystemProfileProto_Hardware_TouchScreen(SystemProfileProto_Hardware_TouchScreen&& from) noexcept
+    : SystemProfileProto_Hardware_TouchScreen() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Hardware_TouchScreen& operator=(const SystemProfileProto_Hardware_TouchScreen& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Hardware_TouchScreen& operator=(SystemProfileProto_Hardware_TouchScreen&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Hardware_TouchScreen& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Hardware_TouchScreen* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Hardware_TouchScreen*>(
+               &_SystemProfileProto_Hardware_TouchScreen_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    6;
+
+  friend void swap(SystemProfileProto_Hardware_TouchScreen& a, SystemProfileProto_Hardware_TouchScreen& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Hardware_TouchScreen* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Hardware_TouchScreen* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_TouchScreen>(nullptr);
+  }
+
+  SystemProfileProto_Hardware_TouchScreen* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_TouchScreen>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Hardware_TouchScreen& from);
+  void MergeFrom(const SystemProfileProto_Hardware_TouchScreen& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Hardware_TouchScreen* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Hardware.TouchScreen";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVendorIdFieldNumber = 1,
+    kProductIdFieldNumber = 2,
+  };
+  // optional uint32 vendor_id = 1;
+  bool has_vendor_id() const;
+  private:
+  bool _internal_has_vendor_id() const;
+  public:
+  void clear_vendor_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_id() const;
+  void set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_vendor_id() const;
+  void _internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional uint32 product_id = 2;
+  bool has_product_id() const;
+  private:
+  bool _internal_has_product_id() const;
+  public:
+  void clear_product_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 product_id() const;
+  void set_product_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_product_id() const;
+  void _internal_set_product_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Hardware.TouchScreen)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_id_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 product_id_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Hardware_Drive :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Hardware.Drive) */ {
+ public:
+  SystemProfileProto_Hardware_Drive();
+  virtual ~SystemProfileProto_Hardware_Drive();
+
+  SystemProfileProto_Hardware_Drive(const SystemProfileProto_Hardware_Drive& from);
+  SystemProfileProto_Hardware_Drive(SystemProfileProto_Hardware_Drive&& from) noexcept
+    : SystemProfileProto_Hardware_Drive() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Hardware_Drive& operator=(const SystemProfileProto_Hardware_Drive& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Hardware_Drive& operator=(SystemProfileProto_Hardware_Drive&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Hardware_Drive& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Hardware_Drive* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Hardware_Drive*>(
+               &_SystemProfileProto_Hardware_Drive_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    7;
+
+  friend void swap(SystemProfileProto_Hardware_Drive& a, SystemProfileProto_Hardware_Drive& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Hardware_Drive* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Hardware_Drive* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_Drive>(nullptr);
+  }
+
+  SystemProfileProto_Hardware_Drive* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware_Drive>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Hardware_Drive& from);
+  void MergeFrom(const SystemProfileProto_Hardware_Drive& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Hardware_Drive* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Hardware.Drive";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kHasSeekPenaltyFieldNumber = 1,
+  };
+  // optional bool has_seek_penalty = 1;
+  bool has_has_seek_penalty() const;
+  private:
+  bool _internal_has_has_seek_penalty() const;
+  public:
+  void clear_has_seek_penalty();
+  bool has_seek_penalty() const;
+  void set_has_seek_penalty(bool value);
+  private:
+  bool _internal_has_seek_penalty() const;
+  void _internal_set_has_seek_penalty(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Hardware.Drive)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  bool has_seek_penalty_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Hardware :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Hardware) */ {
+ public:
+  SystemProfileProto_Hardware();
+  virtual ~SystemProfileProto_Hardware();
+
+  SystemProfileProto_Hardware(const SystemProfileProto_Hardware& from);
+  SystemProfileProto_Hardware(SystemProfileProto_Hardware&& from) noexcept
+    : SystemProfileProto_Hardware() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Hardware& operator=(const SystemProfileProto_Hardware& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Hardware& operator=(SystemProfileProto_Hardware&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Hardware& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Hardware* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Hardware*>(
+               &_SystemProfileProto_Hardware_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    8;
+
+  friend void swap(SystemProfileProto_Hardware& a, SystemProfileProto_Hardware& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Hardware* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Hardware* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware>(nullptr);
+  }
+
+  SystemProfileProto_Hardware* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Hardware>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Hardware& from);
+  void MergeFrom(const SystemProfileProto_Hardware& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Hardware* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Hardware";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_Hardware_CPU CPU;
+  typedef SystemProfileProto_Hardware_Graphics Graphics;
+  typedef SystemProfileProto_Hardware_Bluetooth Bluetooth;
+  typedef SystemProfileProto_Hardware_TouchScreen TouchScreen;
+  typedef SystemProfileProto_Hardware_Drive Drive;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kExternalTouchscreenFieldNumber = 15,
+    kCpuArchitectureFieldNumber = 1,
+    kHardwareClassFieldNumber = 4,
+    kGpuFieldNumber = 8,
+    kBluetoothFieldNumber = 11,
+    kCpuFieldNumber = 13,
+    kAppDriveFieldNumber = 16,
+    kUserDataDriveFieldNumber = 17,
+    kSystemRamMbFieldNumber = 2,
+    kDllBaseFieldNumber = 3,
+    kScreenCountFieldNumber = 5,
+    kPrimaryScreenWidthFieldNumber = 6,
+    kPrimaryScreenHeightFieldNumber = 7,
+    kMaxDpiXFieldNumber = 9,
+    kMaxDpiYFieldNumber = 10,
+    kPrimaryScreenScaleFactorFieldNumber = 12,
+    kInternalDisplaySupportsTouchFieldNumber = 14,
+  };
+  // repeated .metrics.SystemProfileProto.Hardware.TouchScreen external_touchscreen = 15;
+  int external_touchscreen_size() const;
+  private:
+  int _internal_external_touchscreen_size() const;
+  public:
+  void clear_external_touchscreen();
+  ::metrics::SystemProfileProto_Hardware_TouchScreen* mutable_external_touchscreen(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_TouchScreen >*
+      mutable_external_touchscreen();
+  private:
+  const ::metrics::SystemProfileProto_Hardware_TouchScreen& _internal_external_touchscreen(int index) const;
+  ::metrics::SystemProfileProto_Hardware_TouchScreen* _internal_add_external_touchscreen();
+  public:
+  const ::metrics::SystemProfileProto_Hardware_TouchScreen& external_touchscreen(int index) const;
+  ::metrics::SystemProfileProto_Hardware_TouchScreen* add_external_touchscreen();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_TouchScreen >&
+      external_touchscreen() const;
+
+  // optional string cpu_architecture = 1;
+  bool has_cpu_architecture() const;
+  private:
+  bool _internal_has_cpu_architecture() const;
+  public:
+  void clear_cpu_architecture();
+  const std::string& cpu_architecture() const;
+  void set_cpu_architecture(const std::string& value);
+  void set_cpu_architecture(std::string&& value);
+  void set_cpu_architecture(const char* value);
+  void set_cpu_architecture(const char* value, size_t size);
+  std::string* mutable_cpu_architecture();
+  std::string* release_cpu_architecture();
+  void set_allocated_cpu_architecture(std::string* cpu_architecture);
+  private:
+  const std::string& _internal_cpu_architecture() const;
+  void _internal_set_cpu_architecture(const std::string& value);
+  std::string* _internal_mutable_cpu_architecture();
+  public:
+
+  // optional string hardware_class = 4;
+  bool has_hardware_class() const;
+  private:
+  bool _internal_has_hardware_class() const;
+  public:
+  void clear_hardware_class();
+  const std::string& hardware_class() const;
+  void set_hardware_class(const std::string& value);
+  void set_hardware_class(std::string&& value);
+  void set_hardware_class(const char* value);
+  void set_hardware_class(const char* value, size_t size);
+  std::string* mutable_hardware_class();
+  std::string* release_hardware_class();
+  void set_allocated_hardware_class(std::string* hardware_class);
+  private:
+  const std::string& _internal_hardware_class() const;
+  void _internal_set_hardware_class(const std::string& value);
+  std::string* _internal_mutable_hardware_class();
+  public:
+
+  // optional .metrics.SystemProfileProto.Hardware.Graphics gpu = 8;
+  bool has_gpu() const;
+  private:
+  bool _internal_has_gpu() const;
+  public:
+  void clear_gpu();
+  const ::metrics::SystemProfileProto_Hardware_Graphics& gpu() const;
+  ::metrics::SystemProfileProto_Hardware_Graphics* release_gpu();
+  ::metrics::SystemProfileProto_Hardware_Graphics* mutable_gpu();
+  void set_allocated_gpu(::metrics::SystemProfileProto_Hardware_Graphics* gpu);
+  private:
+  const ::metrics::SystemProfileProto_Hardware_Graphics& _internal_gpu() const;
+  ::metrics::SystemProfileProto_Hardware_Graphics* _internal_mutable_gpu();
+  public:
+
+  // optional .metrics.SystemProfileProto.Hardware.Bluetooth bluetooth = 11;
+  bool has_bluetooth() const;
+  private:
+  bool _internal_has_bluetooth() const;
+  public:
+  void clear_bluetooth();
+  const ::metrics::SystemProfileProto_Hardware_Bluetooth& bluetooth() const;
+  ::metrics::SystemProfileProto_Hardware_Bluetooth* release_bluetooth();
+  ::metrics::SystemProfileProto_Hardware_Bluetooth* mutable_bluetooth();
+  void set_allocated_bluetooth(::metrics::SystemProfileProto_Hardware_Bluetooth* bluetooth);
+  private:
+  const ::metrics::SystemProfileProto_Hardware_Bluetooth& _internal_bluetooth() const;
+  ::metrics::SystemProfileProto_Hardware_Bluetooth* _internal_mutable_bluetooth();
+  public:
+
+  // optional .metrics.SystemProfileProto.Hardware.CPU cpu = 13;
+  bool has_cpu() const;
+  private:
+  bool _internal_has_cpu() const;
+  public:
+  void clear_cpu();
+  const ::metrics::SystemProfileProto_Hardware_CPU& cpu() const;
+  ::metrics::SystemProfileProto_Hardware_CPU* release_cpu();
+  ::metrics::SystemProfileProto_Hardware_CPU* mutable_cpu();
+  void set_allocated_cpu(::metrics::SystemProfileProto_Hardware_CPU* cpu);
+  private:
+  const ::metrics::SystemProfileProto_Hardware_CPU& _internal_cpu() const;
+  ::metrics::SystemProfileProto_Hardware_CPU* _internal_mutable_cpu();
+  public:
+
+  // optional .metrics.SystemProfileProto.Hardware.Drive app_drive = 16;
+  bool has_app_drive() const;
+  private:
+  bool _internal_has_app_drive() const;
+  public:
+  void clear_app_drive();
+  const ::metrics::SystemProfileProto_Hardware_Drive& app_drive() const;
+  ::metrics::SystemProfileProto_Hardware_Drive* release_app_drive();
+  ::metrics::SystemProfileProto_Hardware_Drive* mutable_app_drive();
+  void set_allocated_app_drive(::metrics::SystemProfileProto_Hardware_Drive* app_drive);
+  private:
+  const ::metrics::SystemProfileProto_Hardware_Drive& _internal_app_drive() const;
+  ::metrics::SystemProfileProto_Hardware_Drive* _internal_mutable_app_drive();
+  public:
+
+  // optional .metrics.SystemProfileProto.Hardware.Drive user_data_drive = 17;
+  bool has_user_data_drive() const;
+  private:
+  bool _internal_has_user_data_drive() const;
+  public:
+  void clear_user_data_drive();
+  const ::metrics::SystemProfileProto_Hardware_Drive& user_data_drive() const;
+  ::metrics::SystemProfileProto_Hardware_Drive* release_user_data_drive();
+  ::metrics::SystemProfileProto_Hardware_Drive* mutable_user_data_drive();
+  void set_allocated_user_data_drive(::metrics::SystemProfileProto_Hardware_Drive* user_data_drive);
+  private:
+  const ::metrics::SystemProfileProto_Hardware_Drive& _internal_user_data_drive() const;
+  ::metrics::SystemProfileProto_Hardware_Drive* _internal_mutable_user_data_drive();
+  public:
+
+  // optional int64 system_ram_mb = 2;
+  bool has_system_ram_mb() const;
+  private:
+  bool _internal_has_system_ram_mb() const;
+  public:
+  void clear_system_ram_mb();
+  ::PROTOBUF_NAMESPACE_ID::int64 system_ram_mb() const;
+  void set_system_ram_mb(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_system_ram_mb() const;
+  void _internal_set_system_ram_mb(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 dll_base = 3;
+  bool has_dll_base() const;
+  private:
+  bool _internal_has_dll_base() const;
+  public:
+  void clear_dll_base();
+  ::PROTOBUF_NAMESPACE_ID::int64 dll_base() const;
+  void set_dll_base(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_dll_base() const;
+  void _internal_set_dll_base(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 screen_count = 5;
+  bool has_screen_count() const;
+  private:
+  bool _internal_has_screen_count() const;
+  public:
+  void clear_screen_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 screen_count() const;
+  void set_screen_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_screen_count() const;
+  void _internal_set_screen_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 primary_screen_width = 6;
+  bool has_primary_screen_width() const;
+  private:
+  bool _internal_has_primary_screen_width() const;
+  public:
+  void clear_primary_screen_width();
+  ::PROTOBUF_NAMESPACE_ID::int32 primary_screen_width() const;
+  void set_primary_screen_width(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_primary_screen_width() const;
+  void _internal_set_primary_screen_width(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 primary_screen_height = 7;
+  bool has_primary_screen_height() const;
+  private:
+  bool _internal_has_primary_screen_height() const;
+  public:
+  void clear_primary_screen_height();
+  ::PROTOBUF_NAMESPACE_ID::int32 primary_screen_height() const;
+  void set_primary_screen_height(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_primary_screen_height() const;
+  void _internal_set_primary_screen_height(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional float max_dpi_x = 9;
+  bool has_max_dpi_x() const;
+  private:
+  bool _internal_has_max_dpi_x() const;
+  public:
+  void clear_max_dpi_x();
+  float max_dpi_x() const;
+  void set_max_dpi_x(float value);
+  private:
+  float _internal_max_dpi_x() const;
+  void _internal_set_max_dpi_x(float value);
+  public:
+
+  // optional float max_dpi_y = 10;
+  bool has_max_dpi_y() const;
+  private:
+  bool _internal_has_max_dpi_y() const;
+  public:
+  void clear_max_dpi_y();
+  float max_dpi_y() const;
+  void set_max_dpi_y(float value);
+  private:
+  float _internal_max_dpi_y() const;
+  void _internal_set_max_dpi_y(float value);
+  public:
+
+  // optional float primary_screen_scale_factor = 12;
+  bool has_primary_screen_scale_factor() const;
+  private:
+  bool _internal_has_primary_screen_scale_factor() const;
+  public:
+  void clear_primary_screen_scale_factor();
+  float primary_screen_scale_factor() const;
+  void set_primary_screen_scale_factor(float value);
+  private:
+  float _internal_primary_screen_scale_factor() const;
+  void _internal_set_primary_screen_scale_factor(float value);
+  public:
+
+  // optional bool internal_display_supports_touch = 14;
+  bool has_internal_display_supports_touch() const;
+  private:
+  bool _internal_has_internal_display_supports_touch() const;
+  public:
+  void clear_internal_display_supports_touch();
+  bool internal_display_supports_touch() const;
+  void set_internal_display_supports_touch(bool value);
+  private:
+  bool _internal_internal_display_supports_touch() const;
+  void _internal_set_internal_display_supports_touch(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Hardware)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_TouchScreen > external_touchscreen_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr cpu_architecture_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr hardware_class_;
+  ::metrics::SystemProfileProto_Hardware_Graphics* gpu_;
+  ::metrics::SystemProfileProto_Hardware_Bluetooth* bluetooth_;
+  ::metrics::SystemProfileProto_Hardware_CPU* cpu_;
+  ::metrics::SystemProfileProto_Hardware_Drive* app_drive_;
+  ::metrics::SystemProfileProto_Hardware_Drive* user_data_drive_;
+  ::PROTOBUF_NAMESPACE_ID::int64 system_ram_mb_;
+  ::PROTOBUF_NAMESPACE_ID::int64 dll_base_;
+  ::PROTOBUF_NAMESPACE_ID::int32 screen_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 primary_screen_width_;
+  ::PROTOBUF_NAMESPACE_ID::int32 primary_screen_height_;
+  float max_dpi_x_;
+  float max_dpi_y_;
+  float primary_screen_scale_factor_;
+  bool internal_display_supports_touch_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Network_WifiAccessPoint_VendorInformation :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation) */ {
+ public:
+  SystemProfileProto_Network_WifiAccessPoint_VendorInformation();
+  virtual ~SystemProfileProto_Network_WifiAccessPoint_VendorInformation();
+
+  SystemProfileProto_Network_WifiAccessPoint_VendorInformation(const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& from);
+  SystemProfileProto_Network_WifiAccessPoint_VendorInformation(SystemProfileProto_Network_WifiAccessPoint_VendorInformation&& from) noexcept
+    : SystemProfileProto_Network_WifiAccessPoint_VendorInformation() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Network_WifiAccessPoint_VendorInformation& operator=(const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Network_WifiAccessPoint_VendorInformation& operator=(SystemProfileProto_Network_WifiAccessPoint_VendorInformation&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Network_WifiAccessPoint_VendorInformation* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Network_WifiAccessPoint_VendorInformation*>(
+               &_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    9;
+
+  friend void swap(SystemProfileProto_Network_WifiAccessPoint_VendorInformation& a, SystemProfileProto_Network_WifiAccessPoint_VendorInformation& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Network_WifiAccessPoint_VendorInformation* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Network_WifiAccessPoint_VendorInformation* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Network_WifiAccessPoint_VendorInformation>(nullptr);
+  }
+
+  SystemProfileProto_Network_WifiAccessPoint_VendorInformation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Network_WifiAccessPoint_VendorInformation>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& from);
+  void MergeFrom(const SystemProfileProto_Network_WifiAccessPoint_VendorInformation& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Network_WifiAccessPoint_VendorInformation* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kElementIdentifierFieldNumber = 4,
+    kModelNumberFieldNumber = 1,
+    kModelNameFieldNumber = 2,
+    kDeviceNameFieldNumber = 3,
+  };
+  // repeated uint32 element_identifier = 4;
+  int element_identifier_size() const;
+  private:
+  int _internal_element_identifier_size() const;
+  public:
+  void clear_element_identifier();
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_element_identifier(int index) const;
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 >&
+      _internal_element_identifier() const;
+  void _internal_add_element_identifier(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 >*
+      _internal_mutable_element_identifier();
+  public:
+  ::PROTOBUF_NAMESPACE_ID::uint32 element_identifier(int index) const;
+  void set_element_identifier(int index, ::PROTOBUF_NAMESPACE_ID::uint32 value);
+  void add_element_identifier(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 >&
+      element_identifier() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 >*
+      mutable_element_identifier();
+
+  // optional string model_number = 1;
+  bool has_model_number() const;
+  private:
+  bool _internal_has_model_number() const;
+  public:
+  void clear_model_number();
+  const std::string& model_number() const;
+  void set_model_number(const std::string& value);
+  void set_model_number(std::string&& value);
+  void set_model_number(const char* value);
+  void set_model_number(const char* value, size_t size);
+  std::string* mutable_model_number();
+  std::string* release_model_number();
+  void set_allocated_model_number(std::string* model_number);
+  private:
+  const std::string& _internal_model_number() const;
+  void _internal_set_model_number(const std::string& value);
+  std::string* _internal_mutable_model_number();
+  public:
+
+  // optional string model_name = 2;
+  bool has_model_name() const;
+  private:
+  bool _internal_has_model_name() const;
+  public:
+  void clear_model_name();
+  const std::string& model_name() const;
+  void set_model_name(const std::string& value);
+  void set_model_name(std::string&& value);
+  void set_model_name(const char* value);
+  void set_model_name(const char* value, size_t size);
+  std::string* mutable_model_name();
+  std::string* release_model_name();
+  void set_allocated_model_name(std::string* model_name);
+  private:
+  const std::string& _internal_model_name() const;
+  void _internal_set_model_name(const std::string& value);
+  std::string* _internal_mutable_model_name();
+  public:
+
+  // optional string device_name = 3;
+  bool has_device_name() const;
+  private:
+  bool _internal_has_device_name() const;
+  public:
+  void clear_device_name();
+  const std::string& device_name() const;
+  void set_device_name(const std::string& value);
+  void set_device_name(std::string&& value);
+  void set_device_name(const char* value);
+  void set_device_name(const char* value, size_t size);
+  std::string* mutable_device_name();
+  std::string* release_device_name();
+  void set_allocated_device_name(std::string* device_name);
+  private:
+  const std::string& _internal_device_name() const;
+  void _internal_set_device_name(const std::string& value);
+  std::string* _internal_mutable_device_name();
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 > element_identifier_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr model_number_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr model_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_name_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Network_WifiAccessPoint :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Network.WifiAccessPoint) */ {
+ public:
+  SystemProfileProto_Network_WifiAccessPoint();
+  virtual ~SystemProfileProto_Network_WifiAccessPoint();
+
+  SystemProfileProto_Network_WifiAccessPoint(const SystemProfileProto_Network_WifiAccessPoint& from);
+  SystemProfileProto_Network_WifiAccessPoint(SystemProfileProto_Network_WifiAccessPoint&& from) noexcept
+    : SystemProfileProto_Network_WifiAccessPoint() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Network_WifiAccessPoint& operator=(const SystemProfileProto_Network_WifiAccessPoint& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Network_WifiAccessPoint& operator=(SystemProfileProto_Network_WifiAccessPoint&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Network_WifiAccessPoint& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Network_WifiAccessPoint* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Network_WifiAccessPoint*>(
+               &_SystemProfileProto_Network_WifiAccessPoint_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    10;
+
+  friend void swap(SystemProfileProto_Network_WifiAccessPoint& a, SystemProfileProto_Network_WifiAccessPoint& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Network_WifiAccessPoint* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Network_WifiAccessPoint* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Network_WifiAccessPoint>(nullptr);
+  }
+
+  SystemProfileProto_Network_WifiAccessPoint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Network_WifiAccessPoint>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Network_WifiAccessPoint& from);
+  void MergeFrom(const SystemProfileProto_Network_WifiAccessPoint& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Network_WifiAccessPoint* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Network.WifiAccessPoint";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_Network_WifiAccessPoint_VendorInformation VendorInformation;
+
+  typedef SystemProfileProto_Network_WifiAccessPoint_SecurityMode SecurityMode;
+  static constexpr SecurityMode SECURITY_UNKNOWN =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_UNKNOWN;
+  static constexpr SecurityMode SECURITY_WPA =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_WPA;
+  static constexpr SecurityMode SECURITY_WEP =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_WEP;
+  static constexpr SecurityMode SECURITY_RSN =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_RSN;
+  static constexpr SecurityMode SECURITY_802_1X =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_802_1X;
+  static constexpr SecurityMode SECURITY_PSK =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_PSK;
+  static constexpr SecurityMode SECURITY_NONE =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SECURITY_NONE;
+  static inline bool SecurityMode_IsValid(int value) {
+    return SystemProfileProto_Network_WifiAccessPoint_SecurityMode_IsValid(value);
+  }
+  static constexpr SecurityMode SecurityMode_MIN =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SecurityMode_MIN;
+  static constexpr SecurityMode SecurityMode_MAX =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SecurityMode_MAX;
+  static constexpr int SecurityMode_ARRAYSIZE =
+    SystemProfileProto_Network_WifiAccessPoint_SecurityMode_SecurityMode_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& SecurityMode_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, SecurityMode>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function SecurityMode_Name.");
+    return SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Name(enum_t_value);
+  }
+  static inline bool SecurityMode_Parse(const std::string& name,
+      SecurityMode* value) {
+    return SystemProfileProto_Network_WifiAccessPoint_SecurityMode_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVendorInfoFieldNumber = 3,
+    kVendorPrefixFieldNumber = 1,
+    kSecurityModeFieldNumber = 2,
+  };
+  // optional .metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation vendor_info = 3;
+  bool has_vendor_info() const;
+  private:
+  bool _internal_has_vendor_info() const;
+  public:
+  void clear_vendor_info();
+  const ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation& vendor_info() const;
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* release_vendor_info();
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* mutable_vendor_info();
+  void set_allocated_vendor_info(::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* vendor_info);
+  private:
+  const ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation& _internal_vendor_info() const;
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* _internal_mutable_vendor_info();
+  public:
+
+  // optional uint32 vendor_prefix = 1;
+  bool has_vendor_prefix() const;
+  private:
+  bool _internal_has_vendor_prefix() const;
+  public:
+  void clear_vendor_prefix();
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_prefix() const;
+  void set_vendor_prefix(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_vendor_prefix() const;
+  void _internal_set_vendor_prefix(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional .metrics.SystemProfileProto.Network.WifiAccessPoint.SecurityMode security_mode = 2;
+  bool has_security_mode() const;
+  private:
+  bool _internal_has_security_mode() const;
+  public:
+  void clear_security_mode();
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode security_mode() const;
+  void set_security_mode(::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode value);
+  private:
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode _internal_security_mode() const;
+  void _internal_set_security_mode(::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Network.WifiAccessPoint)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* vendor_info_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 vendor_prefix_;
+  int security_mode_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Network :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Network) */ {
+ public:
+  SystemProfileProto_Network();
+  virtual ~SystemProfileProto_Network();
+
+  SystemProfileProto_Network(const SystemProfileProto_Network& from);
+  SystemProfileProto_Network(SystemProfileProto_Network&& from) noexcept
+    : SystemProfileProto_Network() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Network& operator=(const SystemProfileProto_Network& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Network& operator=(SystemProfileProto_Network&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Network& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Network* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Network*>(
+               &_SystemProfileProto_Network_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    11;
+
+  friend void swap(SystemProfileProto_Network& a, SystemProfileProto_Network& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Network* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Network* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Network>(nullptr);
+  }
+
+  SystemProfileProto_Network* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Network>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Network& from);
+  void MergeFrom(const SystemProfileProto_Network& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Network* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Network";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_Network_WifiAccessPoint WifiAccessPoint;
+
+  typedef SystemProfileProto_Network_ConnectionType ConnectionType;
+  static constexpr ConnectionType CONNECTION_UNKNOWN =
+    SystemProfileProto_Network_ConnectionType_CONNECTION_UNKNOWN;
+  static constexpr ConnectionType CONNECTION_ETHERNET =
+    SystemProfileProto_Network_ConnectionType_CONNECTION_ETHERNET;
+  static constexpr ConnectionType CONNECTION_WIFI =
+    SystemProfileProto_Network_ConnectionType_CONNECTION_WIFI;
+  static constexpr ConnectionType CONNECTION_2G =
+    SystemProfileProto_Network_ConnectionType_CONNECTION_2G;
+  static constexpr ConnectionType CONNECTION_3G =
+    SystemProfileProto_Network_ConnectionType_CONNECTION_3G;
+  static constexpr ConnectionType CONNECTION_4G =
+    SystemProfileProto_Network_ConnectionType_CONNECTION_4G;
+  static constexpr ConnectionType CONNECTION_BLUETOOTH =
+    SystemProfileProto_Network_ConnectionType_CONNECTION_BLUETOOTH;
+  static inline bool ConnectionType_IsValid(int value) {
+    return SystemProfileProto_Network_ConnectionType_IsValid(value);
+  }
+  static constexpr ConnectionType ConnectionType_MIN =
+    SystemProfileProto_Network_ConnectionType_ConnectionType_MIN;
+  static constexpr ConnectionType ConnectionType_MAX =
+    SystemProfileProto_Network_ConnectionType_ConnectionType_MAX;
+  static constexpr int ConnectionType_ARRAYSIZE =
+    SystemProfileProto_Network_ConnectionType_ConnectionType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ConnectionType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ConnectionType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ConnectionType_Name.");
+    return SystemProfileProto_Network_ConnectionType_Name(enum_t_value);
+  }
+  static inline bool ConnectionType_Parse(const std::string& name,
+      ConnectionType* value) {
+    return SystemProfileProto_Network_ConnectionType_Parse(name, value);
+  }
+
+  typedef SystemProfileProto_Network_WifiPHYLayerProtocol WifiPHYLayerProtocol;
+  static constexpr WifiPHYLayerProtocol WIFI_PHY_LAYER_PROTOCOL_NONE =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_NONE;
+  static constexpr WifiPHYLayerProtocol WIFI_PHY_LAYER_PROTOCOL_ANCIENT =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_ANCIENT;
+  static constexpr WifiPHYLayerProtocol WIFI_PHY_LAYER_PROTOCOL_A =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_A;
+  static constexpr WifiPHYLayerProtocol WIFI_PHY_LAYER_PROTOCOL_B =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_B;
+  static constexpr WifiPHYLayerProtocol WIFI_PHY_LAYER_PROTOCOL_G =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_G;
+  static constexpr WifiPHYLayerProtocol WIFI_PHY_LAYER_PROTOCOL_N =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_N;
+  static constexpr WifiPHYLayerProtocol WIFI_PHY_LAYER_PROTOCOL_UNKNOWN =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WIFI_PHY_LAYER_PROTOCOL_UNKNOWN;
+  static inline bool WifiPHYLayerProtocol_IsValid(int value) {
+    return SystemProfileProto_Network_WifiPHYLayerProtocol_IsValid(value);
+  }
+  static constexpr WifiPHYLayerProtocol WifiPHYLayerProtocol_MIN =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WifiPHYLayerProtocol_MIN;
+  static constexpr WifiPHYLayerProtocol WifiPHYLayerProtocol_MAX =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WifiPHYLayerProtocol_MAX;
+  static constexpr int WifiPHYLayerProtocol_ARRAYSIZE =
+    SystemProfileProto_Network_WifiPHYLayerProtocol_WifiPHYLayerProtocol_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& WifiPHYLayerProtocol_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, WifiPHYLayerProtocol>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function WifiPHYLayerProtocol_Name.");
+    return SystemProfileProto_Network_WifiPHYLayerProtocol_Name(enum_t_value);
+  }
+  static inline bool WifiPHYLayerProtocol_Parse(const std::string& name,
+      WifiPHYLayerProtocol* value) {
+    return SystemProfileProto_Network_WifiPHYLayerProtocol_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAccessPointInfoFieldNumber = 5,
+    kConnectionTypeFieldNumber = 2,
+    kConnectionTypeIsAmbiguousFieldNumber = 1,
+    kWifiPhyLayerProtocolIsAmbiguousFieldNumber = 3,
+    kWifiPhyLayerProtocolFieldNumber = 4,
+  };
+  // optional .metrics.SystemProfileProto.Network.WifiAccessPoint access_point_info = 5;
+  bool has_access_point_info() const;
+  private:
+  bool _internal_has_access_point_info() const;
+  public:
+  void clear_access_point_info();
+  const ::metrics::SystemProfileProto_Network_WifiAccessPoint& access_point_info() const;
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint* release_access_point_info();
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint* mutable_access_point_info();
+  void set_allocated_access_point_info(::metrics::SystemProfileProto_Network_WifiAccessPoint* access_point_info);
+  private:
+  const ::metrics::SystemProfileProto_Network_WifiAccessPoint& _internal_access_point_info() const;
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint* _internal_mutable_access_point_info();
+  public:
+
+  // optional .metrics.SystemProfileProto.Network.ConnectionType connection_type = 2;
+  bool has_connection_type() const;
+  private:
+  bool _internal_has_connection_type() const;
+  public:
+  void clear_connection_type();
+  ::metrics::SystemProfileProto_Network_ConnectionType connection_type() const;
+  void set_connection_type(::metrics::SystemProfileProto_Network_ConnectionType value);
+  private:
+  ::metrics::SystemProfileProto_Network_ConnectionType _internal_connection_type() const;
+  void _internal_set_connection_type(::metrics::SystemProfileProto_Network_ConnectionType value);
+  public:
+
+  // optional bool connection_type_is_ambiguous = 1;
+  bool has_connection_type_is_ambiguous() const;
+  private:
+  bool _internal_has_connection_type_is_ambiguous() const;
+  public:
+  void clear_connection_type_is_ambiguous();
+  bool connection_type_is_ambiguous() const;
+  void set_connection_type_is_ambiguous(bool value);
+  private:
+  bool _internal_connection_type_is_ambiguous() const;
+  void _internal_set_connection_type_is_ambiguous(bool value);
+  public:
+
+  // optional bool wifi_phy_layer_protocol_is_ambiguous = 3;
+  bool has_wifi_phy_layer_protocol_is_ambiguous() const;
+  private:
+  bool _internal_has_wifi_phy_layer_protocol_is_ambiguous() const;
+  public:
+  void clear_wifi_phy_layer_protocol_is_ambiguous();
+  bool wifi_phy_layer_protocol_is_ambiguous() const;
+  void set_wifi_phy_layer_protocol_is_ambiguous(bool value);
+  private:
+  bool _internal_wifi_phy_layer_protocol_is_ambiguous() const;
+  void _internal_set_wifi_phy_layer_protocol_is_ambiguous(bool value);
+  public:
+
+  // optional .metrics.SystemProfileProto.Network.WifiPHYLayerProtocol wifi_phy_layer_protocol = 4;
+  bool has_wifi_phy_layer_protocol() const;
+  private:
+  bool _internal_has_wifi_phy_layer_protocol() const;
+  public:
+  void clear_wifi_phy_layer_protocol();
+  ::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol wifi_phy_layer_protocol() const;
+  void set_wifi_phy_layer_protocol(::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol value);
+  private:
+  ::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol _internal_wifi_phy_layer_protocol() const;
+  void _internal_set_wifi_phy_layer_protocol(::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Network)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint* access_point_info_;
+  int connection_type_;
+  bool connection_type_is_ambiguous_;
+  bool wifi_phy_layer_protocol_is_ambiguous_;
+  int wifi_phy_layer_protocol_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_GoogleUpdate_ProductInfo :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.GoogleUpdate.ProductInfo) */ {
+ public:
+  SystemProfileProto_GoogleUpdate_ProductInfo();
+  virtual ~SystemProfileProto_GoogleUpdate_ProductInfo();
+
+  SystemProfileProto_GoogleUpdate_ProductInfo(const SystemProfileProto_GoogleUpdate_ProductInfo& from);
+  SystemProfileProto_GoogleUpdate_ProductInfo(SystemProfileProto_GoogleUpdate_ProductInfo&& from) noexcept
+    : SystemProfileProto_GoogleUpdate_ProductInfo() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_GoogleUpdate_ProductInfo& operator=(const SystemProfileProto_GoogleUpdate_ProductInfo& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_GoogleUpdate_ProductInfo& operator=(SystemProfileProto_GoogleUpdate_ProductInfo&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_GoogleUpdate_ProductInfo& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_GoogleUpdate_ProductInfo* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_GoogleUpdate_ProductInfo*>(
+               &_SystemProfileProto_GoogleUpdate_ProductInfo_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    12;
+
+  friend void swap(SystemProfileProto_GoogleUpdate_ProductInfo& a, SystemProfileProto_GoogleUpdate_ProductInfo& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_GoogleUpdate_ProductInfo* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_GoogleUpdate_ProductInfo* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_GoogleUpdate_ProductInfo>(nullptr);
+  }
+
+  SystemProfileProto_GoogleUpdate_ProductInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_GoogleUpdate_ProductInfo>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_GoogleUpdate_ProductInfo& from);
+  void MergeFrom(const SystemProfileProto_GoogleUpdate_ProductInfo& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_GoogleUpdate_ProductInfo* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.GoogleUpdate.ProductInfo";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult InstallResult;
+  static constexpr InstallResult INSTALL_RESULT_SUCCESS =
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_SUCCESS;
+  static constexpr InstallResult INSTALL_RESULT_FAILED_CUSTOM_ERROR =
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_FAILED_CUSTOM_ERROR;
+  static constexpr InstallResult INSTALL_RESULT_FAILED_MSI_ERROR =
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_FAILED_MSI_ERROR;
+  static constexpr InstallResult INSTALL_RESULT_FAILED_SYSTEM_ERROR =
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_FAILED_SYSTEM_ERROR;
+  static constexpr InstallResult INSTALL_RESULT_EXIT_CODE =
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_INSTALL_RESULT_EXIT_CODE;
+  static inline bool InstallResult_IsValid(int value) {
+    return SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_IsValid(value);
+  }
+  static constexpr InstallResult InstallResult_MIN =
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_InstallResult_MIN;
+  static constexpr InstallResult InstallResult_MAX =
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_InstallResult_MAX;
+  static constexpr int InstallResult_ARRAYSIZE =
+    SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_InstallResult_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& InstallResult_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, InstallResult>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function InstallResult_Name.");
+    return SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Name(enum_t_value);
+  }
+  static inline bool InstallResult_Parse(const std::string& name,
+      InstallResult* value) {
+    return SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kVersionFieldNumber = 1,
+    kLastUpdateSuccessTimestampFieldNumber = 2,
+    kLastResultFieldNumber = 3,
+    kLastErrorFieldNumber = 4,
+    kLastExtraErrorFieldNumber = 5,
+  };
+  // optional string version = 1;
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  const std::string& version() const;
+  void set_version(const std::string& value);
+  void set_version(std::string&& value);
+  void set_version(const char* value);
+  void set_version(const char* value, size_t size);
+  std::string* mutable_version();
+  std::string* release_version();
+  void set_allocated_version(std::string* version);
+  private:
+  const std::string& _internal_version() const;
+  void _internal_set_version(const std::string& value);
+  std::string* _internal_mutable_version();
+  public:
+
+  // optional int64 last_update_success_timestamp = 2;
+  bool has_last_update_success_timestamp() const;
+  private:
+  bool _internal_has_last_update_success_timestamp() const;
+  public:
+  void clear_last_update_success_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_update_success_timestamp() const;
+  void set_last_update_success_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_update_success_timestamp() const;
+  void _internal_set_last_update_success_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo.InstallResult last_result = 3;
+  bool has_last_result() const;
+  private:
+  bool _internal_has_last_result() const;
+  public:
+  void clear_last_result();
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult last_result() const;
+  void set_last_result(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult value);
+  private:
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult _internal_last_result() const;
+  void _internal_set_last_result(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult value);
+  public:
+
+  // optional int32 last_error = 4;
+  bool has_last_error() const;
+  private:
+  bool _internal_has_last_error() const;
+  public:
+  void clear_last_error();
+  ::PROTOBUF_NAMESPACE_ID::int32 last_error() const;
+  void set_last_error(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_last_error() const;
+  void _internal_set_last_error(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 last_extra_error = 5;
+  bool has_last_extra_error() const;
+  private:
+  bool _internal_has_last_extra_error() const;
+  public:
+  void clear_last_extra_error();
+  ::PROTOBUF_NAMESPACE_ID::int32 last_extra_error() const;
+  void set_last_extra_error(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_last_extra_error() const;
+  void _internal_set_last_extra_error(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.GoogleUpdate.ProductInfo)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_update_success_timestamp_;
+  int last_result_;
+  ::PROTOBUF_NAMESPACE_ID::int32 last_error_;
+  ::PROTOBUF_NAMESPACE_ID::int32 last_extra_error_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_GoogleUpdate :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.GoogleUpdate) */ {
+ public:
+  SystemProfileProto_GoogleUpdate();
+  virtual ~SystemProfileProto_GoogleUpdate();
+
+  SystemProfileProto_GoogleUpdate(const SystemProfileProto_GoogleUpdate& from);
+  SystemProfileProto_GoogleUpdate(SystemProfileProto_GoogleUpdate&& from) noexcept
+    : SystemProfileProto_GoogleUpdate() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_GoogleUpdate& operator=(const SystemProfileProto_GoogleUpdate& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_GoogleUpdate& operator=(SystemProfileProto_GoogleUpdate&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_GoogleUpdate& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_GoogleUpdate* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_GoogleUpdate*>(
+               &_SystemProfileProto_GoogleUpdate_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    13;
+
+  friend void swap(SystemProfileProto_GoogleUpdate& a, SystemProfileProto_GoogleUpdate& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_GoogleUpdate* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_GoogleUpdate* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_GoogleUpdate>(nullptr);
+  }
+
+  SystemProfileProto_GoogleUpdate* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_GoogleUpdate>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_GoogleUpdate& from);
+  void MergeFrom(const SystemProfileProto_GoogleUpdate& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_GoogleUpdate* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.GoogleUpdate";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_GoogleUpdate_ProductInfo ProductInfo;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kGoogleUpdateStatusFieldNumber = 4,
+    kClientStatusFieldNumber = 5,
+    kLastAutomaticStartTimestampFieldNumber = 2,
+    kLastUpdateCheckTimestampFieldNumber = 3,
+    kIsSystemInstallFieldNumber = 1,
+  };
+  // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo google_update_status = 4;
+  bool has_google_update_status() const;
+  private:
+  bool _internal_has_google_update_status() const;
+  public:
+  void clear_google_update_status();
+  const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& google_update_status() const;
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* release_google_update_status();
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* mutable_google_update_status();
+  void set_allocated_google_update_status(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* google_update_status);
+  private:
+  const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& _internal_google_update_status() const;
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* _internal_mutable_google_update_status();
+  public:
+
+  // optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo client_status = 5;
+  bool has_client_status() const;
+  private:
+  bool _internal_has_client_status() const;
+  public:
+  void clear_client_status();
+  const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& client_status() const;
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* release_client_status();
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* mutable_client_status();
+  void set_allocated_client_status(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* client_status);
+  private:
+  const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& _internal_client_status() const;
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* _internal_mutable_client_status();
+  public:
+
+  // optional int64 last_automatic_start_timestamp = 2;
+  bool has_last_automatic_start_timestamp() const;
+  private:
+  bool _internal_has_last_automatic_start_timestamp() const;
+  public:
+  void clear_last_automatic_start_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_automatic_start_timestamp() const;
+  void set_last_automatic_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_automatic_start_timestamp() const;
+  void _internal_set_last_automatic_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 last_update_check_timestamp = 3;
+  bool has_last_update_check_timestamp() const;
+  private:
+  bool _internal_has_last_update_check_timestamp() const;
+  public:
+  void clear_last_update_check_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 last_update_check_timestamp() const;
+  void set_last_update_check_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_last_update_check_timestamp() const;
+  void _internal_set_last_update_check_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional bool is_system_install = 1;
+  bool has_is_system_install() const;
+  private:
+  bool _internal_has_is_system_install() const;
+  public:
+  void clear_is_system_install();
+  bool is_system_install() const;
+  void set_is_system_install(bool value);
+  private:
+  bool _internal_is_system_install() const;
+  void _internal_set_is_system_install(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.GoogleUpdate)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* google_update_status_;
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* client_status_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_automatic_start_timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int64 last_update_check_timestamp_;
+  bool is_system_install_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Plugin :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Plugin) */ {
+ public:
+  SystemProfileProto_Plugin();
+  virtual ~SystemProfileProto_Plugin();
+
+  SystemProfileProto_Plugin(const SystemProfileProto_Plugin& from);
+  SystemProfileProto_Plugin(SystemProfileProto_Plugin&& from) noexcept
+    : SystemProfileProto_Plugin() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Plugin& operator=(const SystemProfileProto_Plugin& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Plugin& operator=(SystemProfileProto_Plugin&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Plugin& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Plugin* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Plugin*>(
+               &_SystemProfileProto_Plugin_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    14;
+
+  friend void swap(SystemProfileProto_Plugin& a, SystemProfileProto_Plugin& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Plugin* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Plugin* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Plugin>(nullptr);
+  }
+
+  SystemProfileProto_Plugin* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Plugin>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Plugin& from);
+  void MergeFrom(const SystemProfileProto_Plugin& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Plugin* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Plugin";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameFieldNumber = 1,
+    kFilenameFieldNumber = 2,
+    kVersionFieldNumber = 3,
+    kIsDisabledFieldNumber = 4,
+    kIsPepperFieldNumber = 5,
+  };
+  // optional string name = 1;
+  bool has_name() const;
+  private:
+  bool _internal_has_name() const;
+  public:
+  void clear_name();
+  const std::string& name() const;
+  void set_name(const std::string& value);
+  void set_name(std::string&& value);
+  void set_name(const char* value);
+  void set_name(const char* value, size_t size);
+  std::string* mutable_name();
+  std::string* release_name();
+  void set_allocated_name(std::string* name);
+  private:
+  const std::string& _internal_name() const;
+  void _internal_set_name(const std::string& value);
+  std::string* _internal_mutable_name();
+  public:
+
+  // optional string filename = 2;
+  bool has_filename() const;
+  private:
+  bool _internal_has_filename() const;
+  public:
+  void clear_filename();
+  const std::string& filename() const;
+  void set_filename(const std::string& value);
+  void set_filename(std::string&& value);
+  void set_filename(const char* value);
+  void set_filename(const char* value, size_t size);
+  std::string* mutable_filename();
+  std::string* release_filename();
+  void set_allocated_filename(std::string* filename);
+  private:
+  const std::string& _internal_filename() const;
+  void _internal_set_filename(const std::string& value);
+  std::string* _internal_mutable_filename();
+  public:
+
+  // optional string version = 3;
+  bool has_version() const;
+  private:
+  bool _internal_has_version() const;
+  public:
+  void clear_version();
+  const std::string& version() const;
+  void set_version(const std::string& value);
+  void set_version(std::string&& value);
+  void set_version(const char* value);
+  void set_version(const char* value, size_t size);
+  std::string* mutable_version();
+  std::string* release_version();
+  void set_allocated_version(std::string* version);
+  private:
+  const std::string& _internal_version() const;
+  void _internal_set_version(const std::string& value);
+  std::string* _internal_mutable_version();
+  public:
+
+  // optional bool is_disabled = 4;
+  bool has_is_disabled() const;
+  private:
+  bool _internal_has_is_disabled() const;
+  public:
+  void clear_is_disabled();
+  bool is_disabled() const;
+  void set_is_disabled(bool value);
+  private:
+  bool _internal_is_disabled() const;
+  void _internal_set_is_disabled(bool value);
+  public:
+
+  // optional bool is_pepper = 5;
+  bool has_is_pepper() const;
+  private:
+  bool _internal_has_is_pepper() const;
+  public:
+  void clear_is_pepper();
+  bool is_pepper() const;
+  void set_is_pepper(bool value);
+  private:
+  bool _internal_is_pepper() const;
+  void _internal_set_is_pepper(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Plugin)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr filename_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_;
+  bool is_disabled_;
+  bool is_pepper_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Stability_PluginStability :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Stability.PluginStability) */ {
+ public:
+  SystemProfileProto_Stability_PluginStability();
+  virtual ~SystemProfileProto_Stability_PluginStability();
+
+  SystemProfileProto_Stability_PluginStability(const SystemProfileProto_Stability_PluginStability& from);
+  SystemProfileProto_Stability_PluginStability(SystemProfileProto_Stability_PluginStability&& from) noexcept
+    : SystemProfileProto_Stability_PluginStability() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Stability_PluginStability& operator=(const SystemProfileProto_Stability_PluginStability& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Stability_PluginStability& operator=(SystemProfileProto_Stability_PluginStability&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Stability_PluginStability& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Stability_PluginStability* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Stability_PluginStability*>(
+               &_SystemProfileProto_Stability_PluginStability_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    15;
+
+  friend void swap(SystemProfileProto_Stability_PluginStability& a, SystemProfileProto_Stability_PluginStability& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Stability_PluginStability* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Stability_PluginStability* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Stability_PluginStability>(nullptr);
+  }
+
+  SystemProfileProto_Stability_PluginStability* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Stability_PluginStability>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Stability_PluginStability& from);
+  void MergeFrom(const SystemProfileProto_Stability_PluginStability& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Stability_PluginStability* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Stability.PluginStability";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPluginFieldNumber = 1,
+    kLaunchCountFieldNumber = 2,
+    kInstanceCountFieldNumber = 3,
+    kCrashCountFieldNumber = 4,
+    kLoadingErrorCountFieldNumber = 5,
+  };
+  // optional .metrics.SystemProfileProto.Plugin plugin = 1;
+  bool has_plugin() const;
+  private:
+  bool _internal_has_plugin() const;
+  public:
+  void clear_plugin();
+  const ::metrics::SystemProfileProto_Plugin& plugin() const;
+  ::metrics::SystemProfileProto_Plugin* release_plugin();
+  ::metrics::SystemProfileProto_Plugin* mutable_plugin();
+  void set_allocated_plugin(::metrics::SystemProfileProto_Plugin* plugin);
+  private:
+  const ::metrics::SystemProfileProto_Plugin& _internal_plugin() const;
+  ::metrics::SystemProfileProto_Plugin* _internal_mutable_plugin();
+  public:
+
+  // optional int32 launch_count = 2;
+  bool has_launch_count() const;
+  private:
+  bool _internal_has_launch_count() const;
+  public:
+  void clear_launch_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 launch_count() const;
+  void set_launch_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_launch_count() const;
+  void _internal_set_launch_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 instance_count = 3;
+  bool has_instance_count() const;
+  private:
+  bool _internal_has_instance_count() const;
+  public:
+  void clear_instance_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 instance_count() const;
+  void set_instance_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_instance_count() const;
+  void _internal_set_instance_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 crash_count = 4;
+  bool has_crash_count() const;
+  private:
+  bool _internal_has_crash_count() const;
+  public:
+  void clear_crash_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 crash_count() const;
+  void set_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_crash_count() const;
+  void _internal_set_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 loading_error_count = 5;
+  bool has_loading_error_count() const;
+  private:
+  bool _internal_has_loading_error_count() const;
+  public:
+  void clear_loading_error_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 loading_error_count() const;
+  void set_loading_error_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_loading_error_count() const;
+  void _internal_set_loading_error_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Stability.PluginStability)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::metrics::SystemProfileProto_Plugin* plugin_;
+  ::PROTOBUF_NAMESPACE_ID::int32 launch_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 instance_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 crash_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 loading_error_count_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_Stability :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.Stability) */ {
+ public:
+  SystemProfileProto_Stability();
+  virtual ~SystemProfileProto_Stability();
+
+  SystemProfileProto_Stability(const SystemProfileProto_Stability& from);
+  SystemProfileProto_Stability(SystemProfileProto_Stability&& from) noexcept
+    : SystemProfileProto_Stability() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_Stability& operator=(const SystemProfileProto_Stability& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_Stability& operator=(SystemProfileProto_Stability&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_Stability& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_Stability* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_Stability*>(
+               &_SystemProfileProto_Stability_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    16;
+
+  friend void swap(SystemProfileProto_Stability& a, SystemProfileProto_Stability& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_Stability* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_Stability* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_Stability>(nullptr);
+  }
+
+  SystemProfileProto_Stability* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_Stability>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_Stability& from);
+  void MergeFrom(const SystemProfileProto_Stability& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_Stability* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.Stability";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_Stability_PluginStability PluginStability;
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPluginStabilityFieldNumber = 22,
+    kIncrementalUptimeSecFieldNumber = 1,
+    kPageLoadCountFieldNumber = 2,
+    kRendererCrashCountFieldNumber = 3,
+    kRendererHangCountFieldNumber = 4,
+    kExtensionRendererCrashCountFieldNumber = 5,
+    kChildProcessCrashCountFieldNumber = 6,
+    kOtherUserCrashCountFieldNumber = 7,
+    kKernelCrashCountFieldNumber = 8,
+    kUncleanSystemShutdownCountFieldNumber = 9,
+    kLaunchCountFieldNumber = 15,
+    kCrashCountFieldNumber = 16,
+    kIncompleteShutdownCountFieldNumber = 17,
+    kBreakpadRegistrationSuccessCountFieldNumber = 18,
+    kDebuggerNotPresentCountFieldNumber = 21,
+    kBreakpadRegistrationFailureCountFieldNumber = 19,
+    kDebuggerPresentCountFieldNumber = 20,
+    kUptimeSecFieldNumber = 23,
+  };
+  // repeated .metrics.SystemProfileProto.Stability.PluginStability plugin_stability = 22;
+  int plugin_stability_size() const;
+  private:
+  int _internal_plugin_stability_size() const;
+  public:
+  void clear_plugin_stability();
+  ::metrics::SystemProfileProto_Stability_PluginStability* mutable_plugin_stability(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Stability_PluginStability >*
+      mutable_plugin_stability();
+  private:
+  const ::metrics::SystemProfileProto_Stability_PluginStability& _internal_plugin_stability(int index) const;
+  ::metrics::SystemProfileProto_Stability_PluginStability* _internal_add_plugin_stability();
+  public:
+  const ::metrics::SystemProfileProto_Stability_PluginStability& plugin_stability(int index) const;
+  ::metrics::SystemProfileProto_Stability_PluginStability* add_plugin_stability();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Stability_PluginStability >&
+      plugin_stability() const;
+
+  // optional int64 incremental_uptime_sec = 1;
+  bool has_incremental_uptime_sec() const;
+  private:
+  bool _internal_has_incremental_uptime_sec() const;
+  public:
+  void clear_incremental_uptime_sec();
+  ::PROTOBUF_NAMESPACE_ID::int64 incremental_uptime_sec() const;
+  void set_incremental_uptime_sec(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_incremental_uptime_sec() const;
+  void _internal_set_incremental_uptime_sec(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int32 page_load_count = 2;
+  bool has_page_load_count() const;
+  private:
+  bool _internal_has_page_load_count() const;
+  public:
+  void clear_page_load_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 page_load_count() const;
+  void set_page_load_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_page_load_count() const;
+  void _internal_set_page_load_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 renderer_crash_count = 3;
+  bool has_renderer_crash_count() const;
+  private:
+  bool _internal_has_renderer_crash_count() const;
+  public:
+  void clear_renderer_crash_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 renderer_crash_count() const;
+  void set_renderer_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_renderer_crash_count() const;
+  void _internal_set_renderer_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 renderer_hang_count = 4;
+  bool has_renderer_hang_count() const;
+  private:
+  bool _internal_has_renderer_hang_count() const;
+  public:
+  void clear_renderer_hang_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 renderer_hang_count() const;
+  void set_renderer_hang_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_renderer_hang_count() const;
+  void _internal_set_renderer_hang_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 extension_renderer_crash_count = 5;
+  bool has_extension_renderer_crash_count() const;
+  private:
+  bool _internal_has_extension_renderer_crash_count() const;
+  public:
+  void clear_extension_renderer_crash_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 extension_renderer_crash_count() const;
+  void set_extension_renderer_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_extension_renderer_crash_count() const;
+  void _internal_set_extension_renderer_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 child_process_crash_count = 6;
+  bool has_child_process_crash_count() const;
+  private:
+  bool _internal_has_child_process_crash_count() const;
+  public:
+  void clear_child_process_crash_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 child_process_crash_count() const;
+  void set_child_process_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_child_process_crash_count() const;
+  void _internal_set_child_process_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 other_user_crash_count = 7;
+  bool has_other_user_crash_count() const;
+  private:
+  bool _internal_has_other_user_crash_count() const;
+  public:
+  void clear_other_user_crash_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 other_user_crash_count() const;
+  void set_other_user_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_other_user_crash_count() const;
+  void _internal_set_other_user_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 kernel_crash_count = 8;
+  bool has_kernel_crash_count() const;
+  private:
+  bool _internal_has_kernel_crash_count() const;
+  public:
+  void clear_kernel_crash_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 kernel_crash_count() const;
+  void set_kernel_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_kernel_crash_count() const;
+  void _internal_set_kernel_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 unclean_system_shutdown_count = 9;
+  bool has_unclean_system_shutdown_count() const;
+  private:
+  bool _internal_has_unclean_system_shutdown_count() const;
+  public:
+  void clear_unclean_system_shutdown_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 unclean_system_shutdown_count() const;
+  void set_unclean_system_shutdown_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_unclean_system_shutdown_count() const;
+  void _internal_set_unclean_system_shutdown_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 launch_count = 15;
+  bool has_launch_count() const;
+  private:
+  bool _internal_has_launch_count() const;
+  public:
+  void clear_launch_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 launch_count() const;
+  void set_launch_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_launch_count() const;
+  void _internal_set_launch_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 crash_count = 16;
+  bool has_crash_count() const;
+  private:
+  bool _internal_has_crash_count() const;
+  public:
+  void clear_crash_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 crash_count() const;
+  void set_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_crash_count() const;
+  void _internal_set_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 incomplete_shutdown_count = 17;
+  bool has_incomplete_shutdown_count() const;
+  private:
+  bool _internal_has_incomplete_shutdown_count() const;
+  public:
+  void clear_incomplete_shutdown_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 incomplete_shutdown_count() const;
+  void set_incomplete_shutdown_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_incomplete_shutdown_count() const;
+  void _internal_set_incomplete_shutdown_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 breakpad_registration_success_count = 18;
+  bool has_breakpad_registration_success_count() const;
+  private:
+  bool _internal_has_breakpad_registration_success_count() const;
+  public:
+  void clear_breakpad_registration_success_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 breakpad_registration_success_count() const;
+  void set_breakpad_registration_success_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_breakpad_registration_success_count() const;
+  void _internal_set_breakpad_registration_success_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 debugger_not_present_count = 21;
+  bool has_debugger_not_present_count() const;
+  private:
+  bool _internal_has_debugger_not_present_count() const;
+  public:
+  void clear_debugger_not_present_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 debugger_not_present_count() const;
+  void set_debugger_not_present_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_debugger_not_present_count() const;
+  void _internal_set_debugger_not_present_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 breakpad_registration_failure_count = 19;
+  bool has_breakpad_registration_failure_count() const;
+  private:
+  bool _internal_has_breakpad_registration_failure_count() const;
+  public:
+  void clear_breakpad_registration_failure_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 breakpad_registration_failure_count() const;
+  void set_breakpad_registration_failure_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_breakpad_registration_failure_count() const;
+  void _internal_set_breakpad_registration_failure_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 debugger_present_count = 20;
+  bool has_debugger_present_count() const;
+  private:
+  bool _internal_has_debugger_present_count() const;
+  public:
+  void clear_debugger_present_count();
+  ::PROTOBUF_NAMESPACE_ID::int32 debugger_present_count() const;
+  void set_debugger_present_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_debugger_present_count() const;
+  void _internal_set_debugger_present_count(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int64 uptime_sec = 23;
+  bool has_uptime_sec() const;
+  private:
+  bool _internal_has_uptime_sec() const;
+  public:
+  void clear_uptime_sec();
+  ::PROTOBUF_NAMESPACE_ID::int64 uptime_sec() const;
+  void set_uptime_sec(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_uptime_sec() const;
+  void _internal_set_uptime_sec(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.Stability)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Stability_PluginStability > plugin_stability_;
+  ::PROTOBUF_NAMESPACE_ID::int64 incremental_uptime_sec_;
+  ::PROTOBUF_NAMESPACE_ID::int32 page_load_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 renderer_crash_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 renderer_hang_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 extension_renderer_crash_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 child_process_crash_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 other_user_crash_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 kernel_crash_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 unclean_system_shutdown_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 launch_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 crash_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 incomplete_shutdown_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 breakpad_registration_success_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 debugger_not_present_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 breakpad_registration_failure_count_;
+  ::PROTOBUF_NAMESPACE_ID::int32 debugger_present_count_;
+  ::PROTOBUF_NAMESPACE_ID::int64 uptime_sec_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_FieldTrial :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.FieldTrial) */ {
+ public:
+  SystemProfileProto_FieldTrial();
+  virtual ~SystemProfileProto_FieldTrial();
+
+  SystemProfileProto_FieldTrial(const SystemProfileProto_FieldTrial& from);
+  SystemProfileProto_FieldTrial(SystemProfileProto_FieldTrial&& from) noexcept
+    : SystemProfileProto_FieldTrial() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_FieldTrial& operator=(const SystemProfileProto_FieldTrial& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_FieldTrial& operator=(SystemProfileProto_FieldTrial&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_FieldTrial& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_FieldTrial* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_FieldTrial*>(
+               &_SystemProfileProto_FieldTrial_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    17;
+
+  friend void swap(SystemProfileProto_FieldTrial& a, SystemProfileProto_FieldTrial& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_FieldTrial* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_FieldTrial* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_FieldTrial>(nullptr);
+  }
+
+  SystemProfileProto_FieldTrial* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_FieldTrial>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_FieldTrial& from);
+  void MergeFrom(const SystemProfileProto_FieldTrial& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_FieldTrial* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.FieldTrial";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameIdFieldNumber = 1,
+    kGroupIdFieldNumber = 2,
+  };
+  // optional fixed32 name_id = 1;
+  bool has_name_id() const;
+  private:
+  bool _internal_has_name_id() const;
+  public:
+  void clear_name_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 name_id() const;
+  void set_name_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_name_id() const;
+  void _internal_set_name_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional fixed32 group_id = 2;
+  bool has_group_id() const;
+  private:
+  bool _internal_has_group_id() const;
+  public:
+  void clear_group_id();
+  ::PROTOBUF_NAMESPACE_ID::uint32 group_id() const;
+  void set_group_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_group_id() const;
+  void _internal_set_group_id(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.FieldTrial)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 name_id_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 group_id_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_ExternalAudioVideoDevice_AudioDescription :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription) */ {
+ public:
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription();
+  virtual ~SystemProfileProto_ExternalAudioVideoDevice_AudioDescription();
+
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription(const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& from);
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription(SystemProfileProto_ExternalAudioVideoDevice_AudioDescription&& from) noexcept
+    : SystemProfileProto_ExternalAudioVideoDevice_AudioDescription() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& operator=(const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& operator=(SystemProfileProto_ExternalAudioVideoDevice_AudioDescription&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription*>(
+               &_SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    18;
+
+  friend void swap(SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& a, SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_ExternalAudioVideoDevice_AudioDescription>(nullptr);
+  }
+
+  SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_ExternalAudioVideoDevice_AudioDescription>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& from);
+  void MergeFrom(const SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat AudioFormat;
+  static constexpr AudioFormat AUDIO_FORMAT_UNKNOWN =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_UNKNOWN;
+  static constexpr AudioFormat AUDIO_FORMAT_LPCM =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_LPCM;
+  static constexpr AudioFormat AUDIO_FORMAT_AC_3 =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_AC_3;
+  static constexpr AudioFormat AUDIO_FORMAT_MPEG1 =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MPEG1;
+  static constexpr AudioFormat AUDIO_FORMAT_MP3 =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MP3;
+  static constexpr AudioFormat AUDIO_FORMAT_MPEG2 =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MPEG2;
+  static constexpr AudioFormat AUDIO_FORMAT_AAC =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_AAC;
+  static constexpr AudioFormat AUDIO_FORMAT_DTS =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_DTS;
+  static constexpr AudioFormat AUDIO_FORMAT_ATRAC =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_ATRAC;
+  static constexpr AudioFormat AUDIO_FORMAT_ONE_BIT =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_ONE_BIT;
+  static constexpr AudioFormat AUDIO_FORMAT_DD_PLUS =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_DD_PLUS;
+  static constexpr AudioFormat AUDIO_FORMAT_DTS_HD =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_DTS_HD;
+  static constexpr AudioFormat AUDIO_FORMAT_MLP_DOLBY_TRUEHD =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MLP_DOLBY_TRUEHD;
+  static constexpr AudioFormat AUDIO_FORMAT_DST_AUDIO =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_DST_AUDIO;
+  static constexpr AudioFormat AUDIO_FORMAT_MICROSOFT_WMA_PRO =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AUDIO_FORMAT_MICROSOFT_WMA_PRO;
+  static inline bool AudioFormat_IsValid(int value) {
+    return SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_IsValid(value);
+  }
+  static constexpr AudioFormat AudioFormat_MIN =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AudioFormat_MIN;
+  static constexpr AudioFormat AudioFormat_MAX =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AudioFormat_MAX;
+  static constexpr int AudioFormat_ARRAYSIZE =
+    SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_AudioFormat_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AudioFormat_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AudioFormat>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AudioFormat_Name.");
+    return SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Name(enum_t_value);
+  }
+  static inline bool AudioFormat_Parse(const std::string& name,
+      AudioFormat* value) {
+    return SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kSampleFrequencyHzFieldNumber = 3,
+    kAudioFormatFieldNumber = 1,
+    kNumChannelsFieldNumber = 2,
+    kMaxBitRatePerSecondFieldNumber = 4,
+    kBitDepthFieldNumber = 5,
+  };
+  // repeated int32 sample_frequency_hz = 3;
+  int sample_frequency_hz_size() const;
+  private:
+  int _internal_sample_frequency_hz_size() const;
+  public:
+  void clear_sample_frequency_hz();
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_sample_frequency_hz(int index) const;
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+      _internal_sample_frequency_hz() const;
+  void _internal_add_sample_frequency_hz(::PROTOBUF_NAMESPACE_ID::int32 value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+      _internal_mutable_sample_frequency_hz();
+  public:
+  ::PROTOBUF_NAMESPACE_ID::int32 sample_frequency_hz(int index) const;
+  void set_sample_frequency_hz(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
+  void add_sample_frequency_hz(::PROTOBUF_NAMESPACE_ID::int32 value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+      sample_frequency_hz() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+      mutable_sample_frequency_hz();
+
+  // optional .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.AudioFormat audio_format = 1;
+  bool has_audio_format() const;
+  private:
+  bool _internal_has_audio_format() const;
+  public:
+  void clear_audio_format();
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat audio_format() const;
+  void set_audio_format(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat value);
+  private:
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat _internal_audio_format() const;
+  void _internal_set_audio_format(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat value);
+  public:
+
+  // optional int32 num_channels = 2;
+  bool has_num_channels() const;
+  private:
+  bool _internal_has_num_channels() const;
+  public:
+  void clear_num_channels();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_channels() const;
+  void set_num_channels(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_channels() const;
+  void _internal_set_num_channels(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 max_bit_rate_per_second = 4;
+  bool has_max_bit_rate_per_second() const;
+  private:
+  bool _internal_has_max_bit_rate_per_second() const;
+  public:
+  void clear_max_bit_rate_per_second();
+  ::PROTOBUF_NAMESPACE_ID::int32 max_bit_rate_per_second() const;
+  void set_max_bit_rate_per_second(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_max_bit_rate_per_second() const;
+  void _internal_set_max_bit_rate_per_second(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 bit_depth = 5;
+  bool has_bit_depth() const;
+  private:
+  bool _internal_has_bit_depth() const;
+  public:
+  void clear_bit_depth();
+  ::PROTOBUF_NAMESPACE_ID::int32 bit_depth() const;
+  void set_bit_depth(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_bit_depth() const;
+  void _internal_set_bit_depth(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > sample_frequency_hz_;
+  int audio_format_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_channels_;
+  ::PROTOBUF_NAMESPACE_ID::int32 max_bit_rate_per_second_;
+  ::PROTOBUF_NAMESPACE_ID::int32 bit_depth_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_ExternalAudioVideoDevice_CECCommand :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand) */ {
+ public:
+  SystemProfileProto_ExternalAudioVideoDevice_CECCommand();
+  virtual ~SystemProfileProto_ExternalAudioVideoDevice_CECCommand();
+
+  SystemProfileProto_ExternalAudioVideoDevice_CECCommand(const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& from);
+  SystemProfileProto_ExternalAudioVideoDevice_CECCommand(SystemProfileProto_ExternalAudioVideoDevice_CECCommand&& from) noexcept
+    : SystemProfileProto_ExternalAudioVideoDevice_CECCommand() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_ExternalAudioVideoDevice_CECCommand& operator=(const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_ExternalAudioVideoDevice_CECCommand& operator=(SystemProfileProto_ExternalAudioVideoDevice_CECCommand&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_ExternalAudioVideoDevice_CECCommand* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_ExternalAudioVideoDevice_CECCommand*>(
+               &_SystemProfileProto_ExternalAudioVideoDevice_CECCommand_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    19;
+
+  friend void swap(SystemProfileProto_ExternalAudioVideoDevice_CECCommand& a, SystemProfileProto_ExternalAudioVideoDevice_CECCommand& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_ExternalAudioVideoDevice_CECCommand* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_ExternalAudioVideoDevice_CECCommand* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_ExternalAudioVideoDevice_CECCommand>(nullptr);
+  }
+
+  SystemProfileProto_ExternalAudioVideoDevice_CECCommand* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_ExternalAudioVideoDevice_CECCommand>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& from);
+  void MergeFrom(const SystemProfileProto_ExternalAudioVideoDevice_CECCommand& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_ExternalAudioVideoDevice_CECCommand* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kOpcodeFieldNumber = 1,
+    kNumReceivedDirectFieldNumber = 2,
+    kNumReceivedBroadcastFieldNumber = 3,
+    kNumSentDirectFieldNumber = 4,
+    kNumSentBroadcastFieldNumber = 5,
+    kNumAbortedUnknownReasonFieldNumber = 6,
+    kNumAbortedUnrecognizedFieldNumber = 7,
+  };
+  // optional int32 opcode = 1;
+  bool has_opcode() const;
+  private:
+  bool _internal_has_opcode() const;
+  public:
+  void clear_opcode();
+  ::PROTOBUF_NAMESPACE_ID::int32 opcode() const;
+  void set_opcode(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_opcode() const;
+  void _internal_set_opcode(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 num_received_direct = 2;
+  bool has_num_received_direct() const;
+  private:
+  bool _internal_has_num_received_direct() const;
+  public:
+  void clear_num_received_direct();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_received_direct() const;
+  void set_num_received_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_received_direct() const;
+  void _internal_set_num_received_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 num_received_broadcast = 3;
+  bool has_num_received_broadcast() const;
+  private:
+  bool _internal_has_num_received_broadcast() const;
+  public:
+  void clear_num_received_broadcast();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_received_broadcast() const;
+  void set_num_received_broadcast(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_received_broadcast() const;
+  void _internal_set_num_received_broadcast(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 num_sent_direct = 4;
+  bool has_num_sent_direct() const;
+  private:
+  bool _internal_has_num_sent_direct() const;
+  public:
+  void clear_num_sent_direct();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_sent_direct() const;
+  void set_num_sent_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_sent_direct() const;
+  void _internal_set_num_sent_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 num_sent_broadcast = 5;
+  bool has_num_sent_broadcast() const;
+  private:
+  bool _internal_has_num_sent_broadcast() const;
+  public:
+  void clear_num_sent_broadcast();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_sent_broadcast() const;
+  void set_num_sent_broadcast(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_sent_broadcast() const;
+  void _internal_set_num_sent_broadcast(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 num_aborted_unknown_reason = 6;
+  bool has_num_aborted_unknown_reason() const;
+  private:
+  bool _internal_has_num_aborted_unknown_reason() const;
+  public:
+  void clear_num_aborted_unknown_reason();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_aborted_unknown_reason() const;
+  void set_num_aborted_unknown_reason(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_aborted_unknown_reason() const;
+  void _internal_set_num_aborted_unknown_reason(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 num_aborted_unrecognized = 7;
+  bool has_num_aborted_unrecognized() const;
+  private:
+  bool _internal_has_num_aborted_unrecognized() const;
+  public:
+  void clear_num_aborted_unrecognized();
+  ::PROTOBUF_NAMESPACE_ID::int32 num_aborted_unrecognized() const;
+  void set_num_aborted_unrecognized(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_aborted_unrecognized() const;
+  void _internal_set_num_aborted_unrecognized(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::int32 opcode_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_received_direct_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_received_broadcast_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_sent_direct_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_sent_broadcast_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_aborted_unknown_reason_;
+  ::PROTOBUF_NAMESPACE_ID::int32 num_aborted_unrecognized_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_ExternalAudioVideoDevice :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.ExternalAudioVideoDevice) */ {
+ public:
+  SystemProfileProto_ExternalAudioVideoDevice();
+  virtual ~SystemProfileProto_ExternalAudioVideoDevice();
+
+  SystemProfileProto_ExternalAudioVideoDevice(const SystemProfileProto_ExternalAudioVideoDevice& from);
+  SystemProfileProto_ExternalAudioVideoDevice(SystemProfileProto_ExternalAudioVideoDevice&& from) noexcept
+    : SystemProfileProto_ExternalAudioVideoDevice() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_ExternalAudioVideoDevice& operator=(const SystemProfileProto_ExternalAudioVideoDevice& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_ExternalAudioVideoDevice& operator=(SystemProfileProto_ExternalAudioVideoDevice&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_ExternalAudioVideoDevice& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_ExternalAudioVideoDevice* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_ExternalAudioVideoDevice*>(
+               &_SystemProfileProto_ExternalAudioVideoDevice_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    20;
+
+  friend void swap(SystemProfileProto_ExternalAudioVideoDevice& a, SystemProfileProto_ExternalAudioVideoDevice& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_ExternalAudioVideoDevice* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_ExternalAudioVideoDevice* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_ExternalAudioVideoDevice>(nullptr);
+  }
+
+  SystemProfileProto_ExternalAudioVideoDevice* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_ExternalAudioVideoDevice>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_ExternalAudioVideoDevice& from);
+  void MergeFrom(const SystemProfileProto_ExternalAudioVideoDevice& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_ExternalAudioVideoDevice* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.ExternalAudioVideoDevice";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_ExternalAudioVideoDevice_AudioDescription AudioDescription;
+  typedef SystemProfileProto_ExternalAudioVideoDevice_CECCommand CECCommand;
+
+  typedef SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType AVDeviceType;
+  static constexpr AVDeviceType AV_DEVICE_TYPE_UNKNOWN =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_UNKNOWN;
+  static constexpr AVDeviceType AV_DEVICE_TYPE_TV =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_TV;
+  static constexpr AVDeviceType AV_DEVICE_TYPE_RECORDER =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_RECORDER;
+  static constexpr AVDeviceType AV_DEVICE_TYPE_TUNER =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_TUNER;
+  static constexpr AVDeviceType AV_DEVICE_TYPE_PLAYER =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_PLAYER;
+  static constexpr AVDeviceType AV_DEVICE_TYPE_AUDIO_SYSTEM =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AV_DEVICE_TYPE_AUDIO_SYSTEM;
+  static inline bool AVDeviceType_IsValid(int value) {
+    return SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_IsValid(value);
+  }
+  static constexpr AVDeviceType AVDeviceType_MIN =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AVDeviceType_MIN;
+  static constexpr AVDeviceType AVDeviceType_MAX =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AVDeviceType_MAX;
+  static constexpr int AVDeviceType_ARRAYSIZE =
+    SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_AVDeviceType_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& AVDeviceType_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, AVDeviceType>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function AVDeviceType_Name.");
+    return SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Name(enum_t_value);
+  }
+  static inline bool AVDeviceType_Parse(const std::string& name,
+      AVDeviceType* value) {
+    return SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kAvDeviceTypeFieldNumber = 4,
+    kAudioDescriptionFieldNumber = 9,
+    kCecCommandFieldNumber = 13,
+    kManufacturerNameFieldNumber = 1,
+    kModelNameFieldNumber = 2,
+    kProductCodeFieldNumber = 3,
+    kManufactureYearFieldNumber = 5,
+    kManufactureWeekFieldNumber = 6,
+    kHorizontalResolutionFieldNumber = 7,
+    kVerticalResolutionFieldNumber = 8,
+    kPositionInSetupFieldNumber = 10,
+    kIsInPathToTvFieldNumber = 11,
+    kCecVersionFieldNumber = 12,
+  };
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AVDeviceType av_device_type = 4;
+  int av_device_type_size() const;
+  private:
+  int _internal_av_device_type_size() const;
+  public:
+  void clear_av_device_type();
+  private:
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType _internal_av_device_type(int index) const;
+  void _internal_add_av_device_type(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* _internal_mutable_av_device_type();
+  public:
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType av_device_type(int index) const;
+  void set_av_device_type(int index, ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType value);
+  void add_av_device_type(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>& av_device_type() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>* mutable_av_device_type();
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription audio_description = 9;
+  int audio_description_size() const;
+  private:
+  int _internal_audio_description_size() const;
+  public:
+  void clear_audio_description();
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* mutable_audio_description(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription >*
+      mutable_audio_description();
+  private:
+  const ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& _internal_audio_description(int index) const;
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* _internal_add_audio_description();
+  public:
+  const ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& audio_description(int index) const;
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* add_audio_description();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription >&
+      audio_description() const;
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand cec_command = 13;
+  int cec_command_size() const;
+  private:
+  int _internal_cec_command_size() const;
+  public:
+  void clear_cec_command();
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand* mutable_cec_command(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand >*
+      mutable_cec_command();
+  private:
+  const ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand& _internal_cec_command(int index) const;
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand* _internal_add_cec_command();
+  public:
+  const ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand& cec_command(int index) const;
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand* add_cec_command();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand >&
+      cec_command() const;
+
+  // optional string manufacturer_name = 1;
+  bool has_manufacturer_name() const;
+  private:
+  bool _internal_has_manufacturer_name() const;
+  public:
+  void clear_manufacturer_name();
+  const std::string& manufacturer_name() const;
+  void set_manufacturer_name(const std::string& value);
+  void set_manufacturer_name(std::string&& value);
+  void set_manufacturer_name(const char* value);
+  void set_manufacturer_name(const char* value, size_t size);
+  std::string* mutable_manufacturer_name();
+  std::string* release_manufacturer_name();
+  void set_allocated_manufacturer_name(std::string* manufacturer_name);
+  private:
+  const std::string& _internal_manufacturer_name() const;
+  void _internal_set_manufacturer_name(const std::string& value);
+  std::string* _internal_mutable_manufacturer_name();
+  public:
+
+  // optional string model_name = 2;
+  bool has_model_name() const;
+  private:
+  bool _internal_has_model_name() const;
+  public:
+  void clear_model_name();
+  const std::string& model_name() const;
+  void set_model_name(const std::string& value);
+  void set_model_name(std::string&& value);
+  void set_model_name(const char* value);
+  void set_model_name(const char* value, size_t size);
+  std::string* mutable_model_name();
+  std::string* release_model_name();
+  void set_allocated_model_name(std::string* model_name);
+  private:
+  const std::string& _internal_model_name() const;
+  void _internal_set_model_name(const std::string& value);
+  std::string* _internal_mutable_model_name();
+  public:
+
+  // optional string product_code = 3;
+  bool has_product_code() const;
+  private:
+  bool _internal_has_product_code() const;
+  public:
+  void clear_product_code();
+  const std::string& product_code() const;
+  void set_product_code(const std::string& value);
+  void set_product_code(std::string&& value);
+  void set_product_code(const char* value);
+  void set_product_code(const char* value, size_t size);
+  std::string* mutable_product_code();
+  std::string* release_product_code();
+  void set_allocated_product_code(std::string* product_code);
+  private:
+  const std::string& _internal_product_code() const;
+  void _internal_set_product_code(const std::string& value);
+  std::string* _internal_mutable_product_code();
+  public:
+
+  // optional int32 manufacture_year = 5;
+  bool has_manufacture_year() const;
+  private:
+  bool _internal_has_manufacture_year() const;
+  public:
+  void clear_manufacture_year();
+  ::PROTOBUF_NAMESPACE_ID::int32 manufacture_year() const;
+  void set_manufacture_year(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_manufacture_year() const;
+  void _internal_set_manufacture_year(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 manufacture_week = 6;
+  bool has_manufacture_week() const;
+  private:
+  bool _internal_has_manufacture_week() const;
+  public:
+  void clear_manufacture_week();
+  ::PROTOBUF_NAMESPACE_ID::int32 manufacture_week() const;
+  void set_manufacture_week(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_manufacture_week() const;
+  void _internal_set_manufacture_week(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 horizontal_resolution = 7;
+  bool has_horizontal_resolution() const;
+  private:
+  bool _internal_has_horizontal_resolution() const;
+  public:
+  void clear_horizontal_resolution();
+  ::PROTOBUF_NAMESPACE_ID::int32 horizontal_resolution() const;
+  void set_horizontal_resolution(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_horizontal_resolution() const;
+  void _internal_set_horizontal_resolution(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 vertical_resolution = 8;
+  bool has_vertical_resolution() const;
+  private:
+  bool _internal_has_vertical_resolution() const;
+  public:
+  void clear_vertical_resolution();
+  ::PROTOBUF_NAMESPACE_ID::int32 vertical_resolution() const;
+  void set_vertical_resolution(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vertical_resolution() const;
+  void _internal_set_vertical_resolution(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional int32 position_in_setup = 10;
+  bool has_position_in_setup() const;
+  private:
+  bool _internal_has_position_in_setup() const;
+  public:
+  void clear_position_in_setup();
+  ::PROTOBUF_NAMESPACE_ID::int32 position_in_setup() const;
+  void set_position_in_setup(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_position_in_setup() const;
+  void _internal_set_position_in_setup(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // optional bool is_in_path_to_tv = 11;
+  bool has_is_in_path_to_tv() const;
+  private:
+  bool _internal_has_is_in_path_to_tv() const;
+  public:
+  void clear_is_in_path_to_tv();
+  bool is_in_path_to_tv() const;
+  void set_is_in_path_to_tv(bool value);
+  private:
+  bool _internal_is_in_path_to_tv() const;
+  void _internal_set_is_in_path_to_tv(bool value);
+  public:
+
+  // optional int32 cec_version = 12;
+  bool has_cec_version() const;
+  private:
+  bool _internal_has_cec_version() const;
+  public:
+  void clear_cec_version();
+  ::PROTOBUF_NAMESPACE_ID::int32 cec_version() const;
+  void set_cec_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_cec_version() const;
+  void _internal_set_cec_version(::PROTOBUF_NAMESPACE_ID::int32 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.ExternalAudioVideoDevice)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField<int> av_device_type_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription > audio_description_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand > cec_command_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr manufacturer_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr model_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr product_code_;
+  ::PROTOBUF_NAMESPACE_ID::int32 manufacture_year_;
+  ::PROTOBUF_NAMESPACE_ID::int32 manufacture_week_;
+  ::PROTOBUF_NAMESPACE_ID::int32 horizontal_resolution_;
+  ::PROTOBUF_NAMESPACE_ID::int32 vertical_resolution_;
+  ::PROTOBUF_NAMESPACE_ID::int32 position_in_setup_;
+  bool is_in_path_to_tv_;
+  ::PROTOBUF_NAMESPACE_ID::int32 cec_version_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto_ExternalAccessPoint :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto.ExternalAccessPoint) */ {
+ public:
+  SystemProfileProto_ExternalAccessPoint();
+  virtual ~SystemProfileProto_ExternalAccessPoint();
+
+  SystemProfileProto_ExternalAccessPoint(const SystemProfileProto_ExternalAccessPoint& from);
+  SystemProfileProto_ExternalAccessPoint(SystemProfileProto_ExternalAccessPoint&& from) noexcept
+    : SystemProfileProto_ExternalAccessPoint() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto_ExternalAccessPoint& operator=(const SystemProfileProto_ExternalAccessPoint& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto_ExternalAccessPoint& operator=(SystemProfileProto_ExternalAccessPoint&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto_ExternalAccessPoint& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto_ExternalAccessPoint* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto_ExternalAccessPoint*>(
+               &_SystemProfileProto_ExternalAccessPoint_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    21;
+
+  friend void swap(SystemProfileProto_ExternalAccessPoint& a, SystemProfileProto_ExternalAccessPoint& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto_ExternalAccessPoint* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto_ExternalAccessPoint* New() const final {
+    return CreateMaybeMessage<SystemProfileProto_ExternalAccessPoint>(nullptr);
+  }
+
+  SystemProfileProto_ExternalAccessPoint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto_ExternalAccessPoint>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto_ExternalAccessPoint& from);
+  void MergeFrom(const SystemProfileProto_ExternalAccessPoint& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto_ExternalAccessPoint* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto.ExternalAccessPoint";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kManufacturerFieldNumber = 1,
+    kModelNameFieldNumber = 2,
+    kModelNumberFieldNumber = 3,
+    kDeviceNameFieldNumber = 4,
+  };
+  // optional string manufacturer = 1;
+  bool has_manufacturer() const;
+  private:
+  bool _internal_has_manufacturer() const;
+  public:
+  void clear_manufacturer();
+  const std::string& manufacturer() const;
+  void set_manufacturer(const std::string& value);
+  void set_manufacturer(std::string&& value);
+  void set_manufacturer(const char* value);
+  void set_manufacturer(const char* value, size_t size);
+  std::string* mutable_manufacturer();
+  std::string* release_manufacturer();
+  void set_allocated_manufacturer(std::string* manufacturer);
+  private:
+  const std::string& _internal_manufacturer() const;
+  void _internal_set_manufacturer(const std::string& value);
+  std::string* _internal_mutable_manufacturer();
+  public:
+
+  // optional string model_name = 2;
+  bool has_model_name() const;
+  private:
+  bool _internal_has_model_name() const;
+  public:
+  void clear_model_name();
+  const std::string& model_name() const;
+  void set_model_name(const std::string& value);
+  void set_model_name(std::string&& value);
+  void set_model_name(const char* value);
+  void set_model_name(const char* value, size_t size);
+  std::string* mutable_model_name();
+  std::string* release_model_name();
+  void set_allocated_model_name(std::string* model_name);
+  private:
+  const std::string& _internal_model_name() const;
+  void _internal_set_model_name(const std::string& value);
+  std::string* _internal_mutable_model_name();
+  public:
+
+  // optional string model_number = 3;
+  bool has_model_number() const;
+  private:
+  bool _internal_has_model_number() const;
+  public:
+  void clear_model_number();
+  const std::string& model_number() const;
+  void set_model_number(const std::string& value);
+  void set_model_number(std::string&& value);
+  void set_model_number(const char* value);
+  void set_model_number(const char* value, size_t size);
+  std::string* mutable_model_number();
+  std::string* release_model_number();
+  void set_allocated_model_number(std::string* model_number);
+  private:
+  const std::string& _internal_model_number() const;
+  void _internal_set_model_number(const std::string& value);
+  std::string* _internal_mutable_model_number();
+  public:
+
+  // optional string device_name = 4;
+  bool has_device_name() const;
+  private:
+  bool _internal_has_device_name() const;
+  public:
+  void clear_device_name();
+  const std::string& device_name() const;
+  void set_device_name(const std::string& value);
+  void set_device_name(std::string&& value);
+  void set_device_name(const char* value);
+  void set_device_name(const char* value, size_t size);
+  std::string* mutable_device_name();
+  std::string* release_device_name();
+  void set_allocated_device_name(std::string* device_name);
+  private:
+  const std::string& _internal_device_name() const;
+  void _internal_set_device_name(const std::string& value);
+  std::string* _internal_mutable_device_name();
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto.ExternalAccessPoint)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr manufacturer_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr model_name_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr model_number_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr device_name_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// -------------------------------------------------------------------
+
+class SystemProfileProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.SystemProfileProto) */ {
+ public:
+  SystemProfileProto();
+  virtual ~SystemProfileProto();
+
+  SystemProfileProto(const SystemProfileProto& from);
+  SystemProfileProto(SystemProfileProto&& from) noexcept
+    : SystemProfileProto() {
+    *this = ::std::move(from);
+  }
+
+  inline SystemProfileProto& operator=(const SystemProfileProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline SystemProfileProto& operator=(SystemProfileProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const SystemProfileProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const SystemProfileProto* internal_default_instance() {
+    return reinterpret_cast<const SystemProfileProto*>(
+               &_SystemProfileProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    22;
+
+  friend void swap(SystemProfileProto& a, SystemProfileProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(SystemProfileProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline SystemProfileProto* New() const final {
+    return CreateMaybeMessage<SystemProfileProto>(nullptr);
+  }
+
+  SystemProfileProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<SystemProfileProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const SystemProfileProto& from);
+  void MergeFrom(const SystemProfileProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(SystemProfileProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.SystemProfileProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  typedef SystemProfileProto_BrilloDeviceData BrilloDeviceData;
+  typedef SystemProfileProto_OS OS;
+  typedef SystemProfileProto_Hardware Hardware;
+  typedef SystemProfileProto_Network Network;
+  typedef SystemProfileProto_GoogleUpdate GoogleUpdate;
+  typedef SystemProfileProto_Plugin Plugin;
+  typedef SystemProfileProto_Stability Stability;
+  typedef SystemProfileProto_FieldTrial FieldTrial;
+  typedef SystemProfileProto_ExternalAudioVideoDevice ExternalAudioVideoDevice;
+  typedef SystemProfileProto_ExternalAccessPoint ExternalAccessPoint;
+
+  typedef SystemProfileProto_Channel Channel;
+  static constexpr Channel CHANNEL_UNKNOWN =
+    SystemProfileProto_Channel_CHANNEL_UNKNOWN;
+  static constexpr Channel CHANNEL_CANARY =
+    SystemProfileProto_Channel_CHANNEL_CANARY;
+  static constexpr Channel CHANNEL_DEV =
+    SystemProfileProto_Channel_CHANNEL_DEV;
+  static constexpr Channel CHANNEL_BETA =
+    SystemProfileProto_Channel_CHANNEL_BETA;
+  static constexpr Channel CHANNEL_STABLE =
+    SystemProfileProto_Channel_CHANNEL_STABLE;
+  static inline bool Channel_IsValid(int value) {
+    return SystemProfileProto_Channel_IsValid(value);
+  }
+  static constexpr Channel Channel_MIN =
+    SystemProfileProto_Channel_Channel_MIN;
+  static constexpr Channel Channel_MAX =
+    SystemProfileProto_Channel_Channel_MAX;
+  static constexpr int Channel_ARRAYSIZE =
+    SystemProfileProto_Channel_Channel_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& Channel_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, Channel>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function Channel_Name.");
+    return SystemProfileProto_Channel_Name(enum_t_value);
+  }
+  static inline bool Channel_Parse(const std::string& name,
+      Channel* value) {
+    return SystemProfileProto_Channel_Parse(name, value);
+  }
+
+  typedef SystemProfileProto_ExtensionsState ExtensionsState;
+  static constexpr ExtensionsState NO_EXTENSIONS =
+    SystemProfileProto_ExtensionsState_NO_EXTENSIONS;
+  static constexpr ExtensionsState NO_OFFSTORE_VERIFIED =
+    SystemProfileProto_ExtensionsState_NO_OFFSTORE_VERIFIED;
+  static constexpr ExtensionsState NO_OFFSTORE_UNVERIFIED =
+    SystemProfileProto_ExtensionsState_NO_OFFSTORE_UNVERIFIED;
+  static constexpr ExtensionsState HAS_OFFSTORE =
+    SystemProfileProto_ExtensionsState_HAS_OFFSTORE;
+  static inline bool ExtensionsState_IsValid(int value) {
+    return SystemProfileProto_ExtensionsState_IsValid(value);
+  }
+  static constexpr ExtensionsState ExtensionsState_MIN =
+    SystemProfileProto_ExtensionsState_ExtensionsState_MIN;
+  static constexpr ExtensionsState ExtensionsState_MAX =
+    SystemProfileProto_ExtensionsState_ExtensionsState_MAX;
+  static constexpr int ExtensionsState_ARRAYSIZE =
+    SystemProfileProto_ExtensionsState_ExtensionsState_ARRAYSIZE;
+  template<typename T>
+  static inline const std::string& ExtensionsState_Name(T enum_t_value) {
+    static_assert(::std::is_same<T, ExtensionsState>::value ||
+      ::std::is_integral<T>::value,
+      "Incorrect type passed to function ExtensionsState_Name.");
+    return SystemProfileProto_ExtensionsState_Name(enum_t_value);
+  }
+  static inline bool ExtensionsState_Parse(const std::string& name,
+      ExtensionsState* value) {
+    return SystemProfileProto_ExtensionsState_Parse(name, value);
+  }
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kPluginFieldNumber = 7,
+    kFieldTrialFieldNumber = 9,
+    kExternalAudioVideoDeviceFieldNumber = 14,
+    kOccupiedExtensionBucketFieldNumber = 18,
+    kAppVersionFieldNumber = 2,
+    kApplicationLocaleFieldNumber = 4,
+    kBrandCodeFieldNumber = 12,
+    kOsFieldNumber = 5,
+    kHardwareFieldNumber = 6,
+    kStabilityFieldNumber = 8,
+    kGoogleUpdateFieldNumber = 11,
+    kNetworkFieldNumber = 13,
+    kExternalAccessPointFieldNumber = 15,
+    kBrilloFieldNumber = 21,
+    kBuildTimestampFieldNumber = 1,
+    kUmaEnabledDateFieldNumber = 3,
+    kChannelFieldNumber = 10,
+    kMultiProfileUserCountFieldNumber = 17,
+    kInstallDateFieldNumber = 16,
+    kOffstoreExtensionsStateFieldNumber = 19,
+    kIsAsanBuildFieldNumber = 20,
+  };
+  // repeated .metrics.SystemProfileProto.Plugin plugin = 7;
+  int plugin_size() const;
+  private:
+  int _internal_plugin_size() const;
+  public:
+  void clear_plugin();
+  ::metrics::SystemProfileProto_Plugin* mutable_plugin(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Plugin >*
+      mutable_plugin();
+  private:
+  const ::metrics::SystemProfileProto_Plugin& _internal_plugin(int index) const;
+  ::metrics::SystemProfileProto_Plugin* _internal_add_plugin();
+  public:
+  const ::metrics::SystemProfileProto_Plugin& plugin(int index) const;
+  ::metrics::SystemProfileProto_Plugin* add_plugin();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Plugin >&
+      plugin() const;
+
+  // repeated .metrics.SystemProfileProto.FieldTrial field_trial = 9;
+  int field_trial_size() const;
+  private:
+  int _internal_field_trial_size() const;
+  public:
+  void clear_field_trial();
+  ::metrics::SystemProfileProto_FieldTrial* mutable_field_trial(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_FieldTrial >*
+      mutable_field_trial();
+  private:
+  const ::metrics::SystemProfileProto_FieldTrial& _internal_field_trial(int index) const;
+  ::metrics::SystemProfileProto_FieldTrial* _internal_add_field_trial();
+  public:
+  const ::metrics::SystemProfileProto_FieldTrial& field_trial(int index) const;
+  ::metrics::SystemProfileProto_FieldTrial* add_field_trial();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_FieldTrial >&
+      field_trial() const;
+
+  // repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice external_audio_video_device = 14;
+  int external_audio_video_device_size() const;
+  private:
+  int _internal_external_audio_video_device_size() const;
+  public:
+  void clear_external_audio_video_device();
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice* mutable_external_audio_video_device(int index);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice >*
+      mutable_external_audio_video_device();
+  private:
+  const ::metrics::SystemProfileProto_ExternalAudioVideoDevice& _internal_external_audio_video_device(int index) const;
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice* _internal_add_external_audio_video_device();
+  public:
+  const ::metrics::SystemProfileProto_ExternalAudioVideoDevice& external_audio_video_device(int index) const;
+  ::metrics::SystemProfileProto_ExternalAudioVideoDevice* add_external_audio_video_device();
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice >&
+      external_audio_video_device() const;
+
+  // repeated int32 occupied_extension_bucket = 18;
+  int occupied_extension_bucket_size() const;
+  private:
+  int _internal_occupied_extension_bucket_size() const;
+  public:
+  void clear_occupied_extension_bucket();
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int32 _internal_occupied_extension_bucket(int index) const;
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+      _internal_occupied_extension_bucket() const;
+  void _internal_add_occupied_extension_bucket(::PROTOBUF_NAMESPACE_ID::int32 value);
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+      _internal_mutable_occupied_extension_bucket();
+  public:
+  ::PROTOBUF_NAMESPACE_ID::int32 occupied_extension_bucket(int index) const;
+  void set_occupied_extension_bucket(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
+  void add_occupied_extension_bucket(::PROTOBUF_NAMESPACE_ID::int32 value);
+  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+      occupied_extension_bucket() const;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+      mutable_occupied_extension_bucket();
+
+  // optional string app_version = 2;
+  bool has_app_version() const;
+  private:
+  bool _internal_has_app_version() const;
+  public:
+  void clear_app_version();
+  const std::string& app_version() const;
+  void set_app_version(const std::string& value);
+  void set_app_version(std::string&& value);
+  void set_app_version(const char* value);
+  void set_app_version(const char* value, size_t size);
+  std::string* mutable_app_version();
+  std::string* release_app_version();
+  void set_allocated_app_version(std::string* app_version);
+  private:
+  const std::string& _internal_app_version() const;
+  void _internal_set_app_version(const std::string& value);
+  std::string* _internal_mutable_app_version();
+  public:
+
+  // optional string application_locale = 4;
+  bool has_application_locale() const;
+  private:
+  bool _internal_has_application_locale() const;
+  public:
+  void clear_application_locale();
+  const std::string& application_locale() const;
+  void set_application_locale(const std::string& value);
+  void set_application_locale(std::string&& value);
+  void set_application_locale(const char* value);
+  void set_application_locale(const char* value, size_t size);
+  std::string* mutable_application_locale();
+  std::string* release_application_locale();
+  void set_allocated_application_locale(std::string* application_locale);
+  private:
+  const std::string& _internal_application_locale() const;
+  void _internal_set_application_locale(const std::string& value);
+  std::string* _internal_mutable_application_locale();
+  public:
+
+  // optional string brand_code = 12;
+  bool has_brand_code() const;
+  private:
+  bool _internal_has_brand_code() const;
+  public:
+  void clear_brand_code();
+  const std::string& brand_code() const;
+  void set_brand_code(const std::string& value);
+  void set_brand_code(std::string&& value);
+  void set_brand_code(const char* value);
+  void set_brand_code(const char* value, size_t size);
+  std::string* mutable_brand_code();
+  std::string* release_brand_code();
+  void set_allocated_brand_code(std::string* brand_code);
+  private:
+  const std::string& _internal_brand_code() const;
+  void _internal_set_brand_code(const std::string& value);
+  std::string* _internal_mutable_brand_code();
+  public:
+
+  // optional .metrics.SystemProfileProto.OS os = 5;
+  bool has_os() const;
+  private:
+  bool _internal_has_os() const;
+  public:
+  void clear_os();
+  const ::metrics::SystemProfileProto_OS& os() const;
+  ::metrics::SystemProfileProto_OS* release_os();
+  ::metrics::SystemProfileProto_OS* mutable_os();
+  void set_allocated_os(::metrics::SystemProfileProto_OS* os);
+  private:
+  const ::metrics::SystemProfileProto_OS& _internal_os() const;
+  ::metrics::SystemProfileProto_OS* _internal_mutable_os();
+  public:
+
+  // optional .metrics.SystemProfileProto.Hardware hardware = 6;
+  bool has_hardware() const;
+  private:
+  bool _internal_has_hardware() const;
+  public:
+  void clear_hardware();
+  const ::metrics::SystemProfileProto_Hardware& hardware() const;
+  ::metrics::SystemProfileProto_Hardware* release_hardware();
+  ::metrics::SystemProfileProto_Hardware* mutable_hardware();
+  void set_allocated_hardware(::metrics::SystemProfileProto_Hardware* hardware);
+  private:
+  const ::metrics::SystemProfileProto_Hardware& _internal_hardware() const;
+  ::metrics::SystemProfileProto_Hardware* _internal_mutable_hardware();
+  public:
+
+  // optional .metrics.SystemProfileProto.Stability stability = 8;
+  bool has_stability() const;
+  private:
+  bool _internal_has_stability() const;
+  public:
+  void clear_stability();
+  const ::metrics::SystemProfileProto_Stability& stability() const;
+  ::metrics::SystemProfileProto_Stability* release_stability();
+  ::metrics::SystemProfileProto_Stability* mutable_stability();
+  void set_allocated_stability(::metrics::SystemProfileProto_Stability* stability);
+  private:
+  const ::metrics::SystemProfileProto_Stability& _internal_stability() const;
+  ::metrics::SystemProfileProto_Stability* _internal_mutable_stability();
+  public:
+
+  // optional .metrics.SystemProfileProto.GoogleUpdate google_update = 11;
+  bool has_google_update() const;
+  private:
+  bool _internal_has_google_update() const;
+  public:
+  void clear_google_update();
+  const ::metrics::SystemProfileProto_GoogleUpdate& google_update() const;
+  ::metrics::SystemProfileProto_GoogleUpdate* release_google_update();
+  ::metrics::SystemProfileProto_GoogleUpdate* mutable_google_update();
+  void set_allocated_google_update(::metrics::SystemProfileProto_GoogleUpdate* google_update);
+  private:
+  const ::metrics::SystemProfileProto_GoogleUpdate& _internal_google_update() const;
+  ::metrics::SystemProfileProto_GoogleUpdate* _internal_mutable_google_update();
+  public:
+
+  // optional .metrics.SystemProfileProto.Network network = 13;
+  bool has_network() const;
+  private:
+  bool _internal_has_network() const;
+  public:
+  void clear_network();
+  const ::metrics::SystemProfileProto_Network& network() const;
+  ::metrics::SystemProfileProto_Network* release_network();
+  ::metrics::SystemProfileProto_Network* mutable_network();
+  void set_allocated_network(::metrics::SystemProfileProto_Network* network);
+  private:
+  const ::metrics::SystemProfileProto_Network& _internal_network() const;
+  ::metrics::SystemProfileProto_Network* _internal_mutable_network();
+  public:
+
+  // optional .metrics.SystemProfileProto.ExternalAccessPoint external_access_point = 15;
+  bool has_external_access_point() const;
+  private:
+  bool _internal_has_external_access_point() const;
+  public:
+  void clear_external_access_point();
+  const ::metrics::SystemProfileProto_ExternalAccessPoint& external_access_point() const;
+  ::metrics::SystemProfileProto_ExternalAccessPoint* release_external_access_point();
+  ::metrics::SystemProfileProto_ExternalAccessPoint* mutable_external_access_point();
+  void set_allocated_external_access_point(::metrics::SystemProfileProto_ExternalAccessPoint* external_access_point);
+  private:
+  const ::metrics::SystemProfileProto_ExternalAccessPoint& _internal_external_access_point() const;
+  ::metrics::SystemProfileProto_ExternalAccessPoint* _internal_mutable_external_access_point();
+  public:
+
+  // optional .metrics.SystemProfileProto.BrilloDeviceData brillo = 21;
+  bool has_brillo() const;
+  private:
+  bool _internal_has_brillo() const;
+  public:
+  void clear_brillo();
+  const ::metrics::SystemProfileProto_BrilloDeviceData& brillo() const;
+  ::metrics::SystemProfileProto_BrilloDeviceData* release_brillo();
+  ::metrics::SystemProfileProto_BrilloDeviceData* mutable_brillo();
+  void set_allocated_brillo(::metrics::SystemProfileProto_BrilloDeviceData* brillo);
+  private:
+  const ::metrics::SystemProfileProto_BrilloDeviceData& _internal_brillo() const;
+  ::metrics::SystemProfileProto_BrilloDeviceData* _internal_mutable_brillo();
+  public:
+
+  // optional int64 build_timestamp = 1;
+  bool has_build_timestamp() const;
+  private:
+  bool _internal_has_build_timestamp() const;
+  public:
+  void clear_build_timestamp();
+  ::PROTOBUF_NAMESPACE_ID::int64 build_timestamp() const;
+  void set_build_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_build_timestamp() const;
+  void _internal_set_build_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional int64 uma_enabled_date = 3;
+  bool has_uma_enabled_date() const;
+  private:
+  bool _internal_has_uma_enabled_date() const;
+  public:
+  void clear_uma_enabled_date();
+  ::PROTOBUF_NAMESPACE_ID::int64 uma_enabled_date() const;
+  void set_uma_enabled_date(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_uma_enabled_date() const;
+  void _internal_set_uma_enabled_date(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .metrics.SystemProfileProto.Channel channel = 10;
+  bool has_channel() const;
+  private:
+  bool _internal_has_channel() const;
+  public:
+  void clear_channel();
+  ::metrics::SystemProfileProto_Channel channel() const;
+  void set_channel(::metrics::SystemProfileProto_Channel value);
+  private:
+  ::metrics::SystemProfileProto_Channel _internal_channel() const;
+  void _internal_set_channel(::metrics::SystemProfileProto_Channel value);
+  public:
+
+  // optional uint32 multi_profile_user_count = 17;
+  bool has_multi_profile_user_count() const;
+  private:
+  bool _internal_has_multi_profile_user_count() const;
+  public:
+  void clear_multi_profile_user_count();
+  ::PROTOBUF_NAMESPACE_ID::uint32 multi_profile_user_count() const;
+  void set_multi_profile_user_count(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint32 _internal_multi_profile_user_count() const;
+  void _internal_set_multi_profile_user_count(::PROTOBUF_NAMESPACE_ID::uint32 value);
+  public:
+
+  // optional int64 install_date = 16;
+  bool has_install_date() const;
+  private:
+  bool _internal_has_install_date() const;
+  public:
+  void clear_install_date();
+  ::PROTOBUF_NAMESPACE_ID::int64 install_date() const;
+  void set_install_date(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_install_date() const;
+  void _internal_set_install_date(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // optional .metrics.SystemProfileProto.ExtensionsState offstore_extensions_state = 19;
+  bool has_offstore_extensions_state() const;
+  private:
+  bool _internal_has_offstore_extensions_state() const;
+  public:
+  void clear_offstore_extensions_state();
+  ::metrics::SystemProfileProto_ExtensionsState offstore_extensions_state() const;
+  void set_offstore_extensions_state(::metrics::SystemProfileProto_ExtensionsState value);
+  private:
+  ::metrics::SystemProfileProto_ExtensionsState _internal_offstore_extensions_state() const;
+  void _internal_set_offstore_extensions_state(::metrics::SystemProfileProto_ExtensionsState value);
+  public:
+
+  // optional bool is_asan_build = 20 [default = false];
+  bool has_is_asan_build() const;
+  private:
+  bool _internal_has_is_asan_build() const;
+  public:
+  void clear_is_asan_build();
+  bool is_asan_build() const;
+  void set_is_asan_build(bool value);
+  private:
+  bool _internal_is_asan_build() const;
+  void _internal_set_is_asan_build(bool value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.SystemProfileProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Plugin > plugin_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_FieldTrial > field_trial_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice > external_audio_video_device_;
+  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > occupied_extension_bucket_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr app_version_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr application_locale_;
+  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr brand_code_;
+  ::metrics::SystemProfileProto_OS* os_;
+  ::metrics::SystemProfileProto_Hardware* hardware_;
+  ::metrics::SystemProfileProto_Stability* stability_;
+  ::metrics::SystemProfileProto_GoogleUpdate* google_update_;
+  ::metrics::SystemProfileProto_Network* network_;
+  ::metrics::SystemProfileProto_ExternalAccessPoint* external_access_point_;
+  ::metrics::SystemProfileProto_BrilloDeviceData* brillo_;
+  ::PROTOBUF_NAMESPACE_ID::int64 build_timestamp_;
+  ::PROTOBUF_NAMESPACE_ID::int64 uma_enabled_date_;
+  int channel_;
+  ::PROTOBUF_NAMESPACE_ID::uint32 multi_profile_user_count_;
+  ::PROTOBUF_NAMESPACE_ID::int64 install_date_;
+  int offstore_extensions_state_;
+  bool is_asan_build_;
+  friend struct ::TableStruct_system_5fprofile_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// SystemProfileProto_BrilloDeviceData
+
+// optional string build_target_id = 1;
+inline bool SystemProfileProto_BrilloDeviceData::_internal_has_build_target_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_BrilloDeviceData::has_build_target_id() const {
+  return _internal_has_build_target_id();
+}
+inline void SystemProfileProto_BrilloDeviceData::clear_build_target_id() {
+  build_target_id_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_BrilloDeviceData::build_target_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.BrilloDeviceData.build_target_id)
+  return _internal_build_target_id();
+}
+inline void SystemProfileProto_BrilloDeviceData::set_build_target_id(const std::string& value) {
+  _internal_set_build_target_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.BrilloDeviceData.build_target_id)
+}
+inline std::string* SystemProfileProto_BrilloDeviceData::mutable_build_target_id() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.BrilloDeviceData.build_target_id)
+  return _internal_mutable_build_target_id();
+}
+inline const std::string& SystemProfileProto_BrilloDeviceData::_internal_build_target_id() const {
+  return build_target_id_.GetNoArena();
+}
+inline void SystemProfileProto_BrilloDeviceData::_internal_set_build_target_id(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  build_target_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_BrilloDeviceData::set_build_target_id(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  build_target_id_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.BrilloDeviceData.build_target_id)
+}
+inline void SystemProfileProto_BrilloDeviceData::set_build_target_id(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  build_target_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.BrilloDeviceData.build_target_id)
+}
+inline void SystemProfileProto_BrilloDeviceData::set_build_target_id(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  build_target_id_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.BrilloDeviceData.build_target_id)
+}
+inline std::string* SystemProfileProto_BrilloDeviceData::_internal_mutable_build_target_id() {
+  _has_bits_[0] |= 0x00000001u;
+  return build_target_id_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_BrilloDeviceData::release_build_target_id() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.BrilloDeviceData.build_target_id)
+  if (!_internal_has_build_target_id()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return build_target_id_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_BrilloDeviceData::set_allocated_build_target_id(std::string* build_target_id) {
+  if (build_target_id != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  build_target_id_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), build_target_id);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.BrilloDeviceData.build_target_id)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_OS
+
+// optional string name = 1;
+inline bool SystemProfileProto_OS::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_OS::has_name() const {
+  return _internal_has_name();
+}
+inline void SystemProfileProto_OS::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_OS::name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.OS.name)
+  return _internal_name();
+}
+inline void SystemProfileProto_OS::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.OS.name)
+}
+inline std::string* SystemProfileProto_OS::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.OS.name)
+  return _internal_mutable_name();
+}
+inline const std::string& SystemProfileProto_OS::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void SystemProfileProto_OS::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_OS::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.OS.name)
+}
+inline void SystemProfileProto_OS::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.OS.name)
+}
+inline void SystemProfileProto_OS::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.OS.name)
+}
+inline std::string* SystemProfileProto_OS::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_OS::release_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.OS.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_OS::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.OS.name)
+}
+
+// optional string version = 2;
+inline bool SystemProfileProto_OS::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_OS::has_version() const {
+  return _internal_has_version();
+}
+inline void SystemProfileProto_OS::clear_version() {
+  version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemProfileProto_OS::version() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.OS.version)
+  return _internal_version();
+}
+inline void SystemProfileProto_OS::set_version(const std::string& value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.OS.version)
+}
+inline std::string* SystemProfileProto_OS::mutable_version() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.OS.version)
+  return _internal_mutable_version();
+}
+inline const std::string& SystemProfileProto_OS::_internal_version() const {
+  return version_.GetNoArena();
+}
+inline void SystemProfileProto_OS::_internal_set_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_OS::set_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.OS.version)
+}
+inline void SystemProfileProto_OS::set_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.OS.version)
+}
+inline void SystemProfileProto_OS::set_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.OS.version)
+}
+inline std::string* SystemProfileProto_OS::_internal_mutable_version() {
+  _has_bits_[0] |= 0x00000002u;
+  return version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_OS::release_version() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.OS.version)
+  if (!_internal_has_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_OS::set_allocated_version(std::string* version) {
+  if (version != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), version);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.OS.version)
+}
+
+// optional string fingerprint = 3;
+inline bool SystemProfileProto_OS::_internal_has_fingerprint() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_OS::has_fingerprint() const {
+  return _internal_has_fingerprint();
+}
+inline void SystemProfileProto_OS::clear_fingerprint() {
+  fingerprint_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SystemProfileProto_OS::fingerprint() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.OS.fingerprint)
+  return _internal_fingerprint();
+}
+inline void SystemProfileProto_OS::set_fingerprint(const std::string& value) {
+  _internal_set_fingerprint(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.OS.fingerprint)
+}
+inline std::string* SystemProfileProto_OS::mutable_fingerprint() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.OS.fingerprint)
+  return _internal_mutable_fingerprint();
+}
+inline const std::string& SystemProfileProto_OS::_internal_fingerprint() const {
+  return fingerprint_.GetNoArena();
+}
+inline void SystemProfileProto_OS::_internal_set_fingerprint(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  fingerprint_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_OS::set_fingerprint(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  fingerprint_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.OS.fingerprint)
+}
+inline void SystemProfileProto_OS::set_fingerprint(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  fingerprint_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.OS.fingerprint)
+}
+inline void SystemProfileProto_OS::set_fingerprint(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  fingerprint_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.OS.fingerprint)
+}
+inline std::string* SystemProfileProto_OS::_internal_mutable_fingerprint() {
+  _has_bits_[0] |= 0x00000004u;
+  return fingerprint_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_OS::release_fingerprint() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.OS.fingerprint)
+  if (!_internal_has_fingerprint()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return fingerprint_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_OS::set_allocated_fingerprint(std::string* fingerprint) {
+  if (fingerprint != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  fingerprint_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), fingerprint);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.OS.fingerprint)
+}
+
+// optional bool is_jailbroken = 4;
+inline bool SystemProfileProto_OS::_internal_has_is_jailbroken() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_OS::has_is_jailbroken() const {
+  return _internal_has_is_jailbroken();
+}
+inline void SystemProfileProto_OS::clear_is_jailbroken() {
+  is_jailbroken_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool SystemProfileProto_OS::_internal_is_jailbroken() const {
+  return is_jailbroken_;
+}
+inline bool SystemProfileProto_OS::is_jailbroken() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.OS.is_jailbroken)
+  return _internal_is_jailbroken();
+}
+inline void SystemProfileProto_OS::_internal_set_is_jailbroken(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  is_jailbroken_ = value;
+}
+inline void SystemProfileProto_OS::set_is_jailbroken(bool value) {
+  _internal_set_is_jailbroken(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.OS.is_jailbroken)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Hardware_CPU
+
+// optional string vendor_name = 1;
+inline bool SystemProfileProto_Hardware_CPU::_internal_has_vendor_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_CPU::has_vendor_name() const {
+  return _internal_has_vendor_name();
+}
+inline void SystemProfileProto_Hardware_CPU::clear_vendor_name() {
+  vendor_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_Hardware_CPU::vendor_name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.CPU.vendor_name)
+  return _internal_vendor_name();
+}
+inline void SystemProfileProto_Hardware_CPU::set_vendor_name(const std::string& value) {
+  _internal_set_vendor_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.CPU.vendor_name)
+}
+inline std::string* SystemProfileProto_Hardware_CPU::mutable_vendor_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.CPU.vendor_name)
+  return _internal_mutable_vendor_name();
+}
+inline const std::string& SystemProfileProto_Hardware_CPU::_internal_vendor_name() const {
+  return vendor_name_.GetNoArena();
+}
+inline void SystemProfileProto_Hardware_CPU::_internal_set_vendor_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Hardware_CPU::set_vendor_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Hardware.CPU.vendor_name)
+}
+inline void SystemProfileProto_Hardware_CPU::set_vendor_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  vendor_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Hardware.CPU.vendor_name)
+}
+inline void SystemProfileProto_Hardware_CPU::set_vendor_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Hardware.CPU.vendor_name)
+}
+inline std::string* SystemProfileProto_Hardware_CPU::_internal_mutable_vendor_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return vendor_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Hardware_CPU::release_vendor_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.CPU.vendor_name)
+  if (!_internal_has_vendor_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return vendor_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Hardware_CPU::set_allocated_vendor_name(std::string* vendor_name) {
+  if (vendor_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  vendor_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), vendor_name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.CPU.vendor_name)
+}
+
+// optional uint32 signature = 2;
+inline bool SystemProfileProto_Hardware_CPU::_internal_has_signature() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_CPU::has_signature() const {
+  return _internal_has_signature();
+}
+inline void SystemProfileProto_Hardware_CPU::clear_signature() {
+  signature_ = 0u;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_CPU::_internal_signature() const {
+  return signature_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_CPU::signature() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.CPU.signature)
+  return _internal_signature();
+}
+inline void SystemProfileProto_Hardware_CPU::_internal_set_signature(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  signature_ = value;
+}
+inline void SystemProfileProto_Hardware_CPU::set_signature(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_signature(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.CPU.signature)
+}
+
+// optional uint32 num_cores = 3;
+inline bool SystemProfileProto_Hardware_CPU::_internal_has_num_cores() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_CPU::has_num_cores() const {
+  return _internal_has_num_cores();
+}
+inline void SystemProfileProto_Hardware_CPU::clear_num_cores() {
+  num_cores_ = 0u;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_CPU::_internal_num_cores() const {
+  return num_cores_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_CPU::num_cores() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.CPU.num_cores)
+  return _internal_num_cores();
+}
+inline void SystemProfileProto_Hardware_CPU::_internal_set_num_cores(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  num_cores_ = value;
+}
+inline void SystemProfileProto_Hardware_CPU::set_num_cores(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_num_cores(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.CPU.num_cores)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Hardware_Graphics
+
+// optional uint32 vendor_id = 1;
+inline bool SystemProfileProto_Hardware_Graphics::_internal_has_vendor_id() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Graphics::has_vendor_id() const {
+  return _internal_has_vendor_id();
+}
+inline void SystemProfileProto_Hardware_Graphics::clear_vendor_id() {
+  vendor_id_ = 0u;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Graphics::_internal_vendor_id() const {
+  return vendor_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Graphics::vendor_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Graphics.vendor_id)
+  return _internal_vendor_id();
+}
+inline void SystemProfileProto_Hardware_Graphics::_internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  vendor_id_ = value;
+}
+inline void SystemProfileProto_Hardware_Graphics::set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_vendor_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Graphics.vendor_id)
+}
+
+// optional uint32 device_id = 2;
+inline bool SystemProfileProto_Hardware_Graphics::_internal_has_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Graphics::has_device_id() const {
+  return _internal_has_device_id();
+}
+inline void SystemProfileProto_Hardware_Graphics::clear_device_id() {
+  device_id_ = 0u;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Graphics::_internal_device_id() const {
+  return device_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Graphics::device_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Graphics.device_id)
+  return _internal_device_id();
+}
+inline void SystemProfileProto_Hardware_Graphics::_internal_set_device_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  device_id_ = value;
+}
+inline void SystemProfileProto_Hardware_Graphics::set_device_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_device_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Graphics.device_id)
+}
+
+// optional string driver_version = 3;
+inline bool SystemProfileProto_Hardware_Graphics::_internal_has_driver_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Graphics::has_driver_version() const {
+  return _internal_has_driver_version();
+}
+inline void SystemProfileProto_Hardware_Graphics::clear_driver_version() {
+  driver_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_Hardware_Graphics::driver_version() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Graphics.driver_version)
+  return _internal_driver_version();
+}
+inline void SystemProfileProto_Hardware_Graphics::set_driver_version(const std::string& value) {
+  _internal_set_driver_version(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Graphics.driver_version)
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::mutable_driver_version() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.Graphics.driver_version)
+  return _internal_mutable_driver_version();
+}
+inline const std::string& SystemProfileProto_Hardware_Graphics::_internal_driver_version() const {
+  return driver_version_.GetNoArena();
+}
+inline void SystemProfileProto_Hardware_Graphics::_internal_set_driver_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  driver_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Hardware_Graphics::set_driver_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  driver_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Hardware.Graphics.driver_version)
+}
+inline void SystemProfileProto_Hardware_Graphics::set_driver_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  driver_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Hardware.Graphics.driver_version)
+}
+inline void SystemProfileProto_Hardware_Graphics::set_driver_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  driver_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Hardware.Graphics.driver_version)
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::_internal_mutable_driver_version() {
+  _has_bits_[0] |= 0x00000001u;
+  return driver_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::release_driver_version() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.Graphics.driver_version)
+  if (!_internal_has_driver_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return driver_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Hardware_Graphics::set_allocated_driver_version(std::string* driver_version) {
+  if (driver_version != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  driver_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), driver_version);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.Graphics.driver_version)
+}
+
+// optional string driver_date = 4;
+inline bool SystemProfileProto_Hardware_Graphics::_internal_has_driver_date() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Graphics::has_driver_date() const {
+  return _internal_has_driver_date();
+}
+inline void SystemProfileProto_Hardware_Graphics::clear_driver_date() {
+  driver_date_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemProfileProto_Hardware_Graphics::driver_date() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Graphics.driver_date)
+  return _internal_driver_date();
+}
+inline void SystemProfileProto_Hardware_Graphics::set_driver_date(const std::string& value) {
+  _internal_set_driver_date(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Graphics.driver_date)
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::mutable_driver_date() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.Graphics.driver_date)
+  return _internal_mutable_driver_date();
+}
+inline const std::string& SystemProfileProto_Hardware_Graphics::_internal_driver_date() const {
+  return driver_date_.GetNoArena();
+}
+inline void SystemProfileProto_Hardware_Graphics::_internal_set_driver_date(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  driver_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Hardware_Graphics::set_driver_date(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  driver_date_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Hardware.Graphics.driver_date)
+}
+inline void SystemProfileProto_Hardware_Graphics::set_driver_date(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  driver_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Hardware.Graphics.driver_date)
+}
+inline void SystemProfileProto_Hardware_Graphics::set_driver_date(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  driver_date_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Hardware.Graphics.driver_date)
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::_internal_mutable_driver_date() {
+  _has_bits_[0] |= 0x00000002u;
+  return driver_date_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::release_driver_date() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.Graphics.driver_date)
+  if (!_internal_has_driver_date()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return driver_date_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Hardware_Graphics::set_allocated_driver_date(std::string* driver_date) {
+  if (driver_date != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  driver_date_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), driver_date);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.Graphics.driver_date)
+}
+
+// optional string gl_vendor = 6;
+inline bool SystemProfileProto_Hardware_Graphics::_internal_has_gl_vendor() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Graphics::has_gl_vendor() const {
+  return _internal_has_gl_vendor();
+}
+inline void SystemProfileProto_Hardware_Graphics::clear_gl_vendor() {
+  gl_vendor_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SystemProfileProto_Hardware_Graphics::gl_vendor() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Graphics.gl_vendor)
+  return _internal_gl_vendor();
+}
+inline void SystemProfileProto_Hardware_Graphics::set_gl_vendor(const std::string& value) {
+  _internal_set_gl_vendor(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Graphics.gl_vendor)
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::mutable_gl_vendor() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.Graphics.gl_vendor)
+  return _internal_mutable_gl_vendor();
+}
+inline const std::string& SystemProfileProto_Hardware_Graphics::_internal_gl_vendor() const {
+  return gl_vendor_.GetNoArena();
+}
+inline void SystemProfileProto_Hardware_Graphics::_internal_set_gl_vendor(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  gl_vendor_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Hardware_Graphics::set_gl_vendor(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  gl_vendor_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Hardware.Graphics.gl_vendor)
+}
+inline void SystemProfileProto_Hardware_Graphics::set_gl_vendor(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  gl_vendor_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Hardware.Graphics.gl_vendor)
+}
+inline void SystemProfileProto_Hardware_Graphics::set_gl_vendor(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  gl_vendor_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Hardware.Graphics.gl_vendor)
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::_internal_mutable_gl_vendor() {
+  _has_bits_[0] |= 0x00000004u;
+  return gl_vendor_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::release_gl_vendor() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.Graphics.gl_vendor)
+  if (!_internal_has_gl_vendor()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return gl_vendor_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Hardware_Graphics::set_allocated_gl_vendor(std::string* gl_vendor) {
+  if (gl_vendor != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  gl_vendor_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), gl_vendor);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.Graphics.gl_vendor)
+}
+
+// optional string gl_renderer = 7;
+inline bool SystemProfileProto_Hardware_Graphics::_internal_has_gl_renderer() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Graphics::has_gl_renderer() const {
+  return _internal_has_gl_renderer();
+}
+inline void SystemProfileProto_Hardware_Graphics::clear_gl_renderer() {
+  gl_renderer_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& SystemProfileProto_Hardware_Graphics::gl_renderer() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Graphics.gl_renderer)
+  return _internal_gl_renderer();
+}
+inline void SystemProfileProto_Hardware_Graphics::set_gl_renderer(const std::string& value) {
+  _internal_set_gl_renderer(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Graphics.gl_renderer)
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::mutable_gl_renderer() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.Graphics.gl_renderer)
+  return _internal_mutable_gl_renderer();
+}
+inline const std::string& SystemProfileProto_Hardware_Graphics::_internal_gl_renderer() const {
+  return gl_renderer_.GetNoArena();
+}
+inline void SystemProfileProto_Hardware_Graphics::_internal_set_gl_renderer(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  gl_renderer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Hardware_Graphics::set_gl_renderer(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  gl_renderer_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Hardware.Graphics.gl_renderer)
+}
+inline void SystemProfileProto_Hardware_Graphics::set_gl_renderer(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  gl_renderer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Hardware.Graphics.gl_renderer)
+}
+inline void SystemProfileProto_Hardware_Graphics::set_gl_renderer(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  gl_renderer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Hardware.Graphics.gl_renderer)
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::_internal_mutable_gl_renderer() {
+  _has_bits_[0] |= 0x00000008u;
+  return gl_renderer_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Hardware_Graphics::release_gl_renderer() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.Graphics.gl_renderer)
+  if (!_internal_has_gl_renderer()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return gl_renderer_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Hardware_Graphics::set_allocated_gl_renderer(std::string* gl_renderer) {
+  if (gl_renderer != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  gl_renderer_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), gl_renderer);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.Graphics.gl_renderer)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Hardware_Bluetooth_PairedDevice
+
+// optional uint32 bluetooth_class = 1;
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_has_bluetooth_class() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::has_bluetooth_class() const {
+  return _internal_has_bluetooth_class();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::clear_bluetooth_class() {
+  bluetooth_class_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_bluetooth_class() const {
+  return bluetooth_class_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::bluetooth_class() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.bluetooth_class)
+  return _internal_bluetooth_class();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_set_bluetooth_class(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  bluetooth_class_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::set_bluetooth_class(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_bluetooth_class(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.bluetooth_class)
+}
+
+// optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.Type type = 2;
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_has_type() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::has_type() const {
+  return _internal_has_type();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::clear_type() {
+  type_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_type() const {
+  return static_cast< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type >(type_);
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type SystemProfileProto_Hardware_Bluetooth_PairedDevice::type() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.type)
+  return _internal_type();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_set_type(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type value) {
+  assert(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  type_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::set_type(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type value) {
+  _internal_set_type(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.type)
+}
+
+// optional uint32 vendor_prefix = 4;
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_has_vendor_prefix() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::has_vendor_prefix() const {
+  return _internal_has_vendor_prefix();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::clear_vendor_prefix() {
+  vendor_prefix_ = 0u;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_vendor_prefix() const {
+  return vendor_prefix_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::vendor_prefix() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.vendor_prefix)
+  return _internal_vendor_prefix();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_set_vendor_prefix(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  vendor_prefix_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::set_vendor_prefix(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_vendor_prefix(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.vendor_prefix)
+}
+
+// optional .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.VendorIDSource vendor_id_source = 8;
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_has_vendor_id_source() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::has_vendor_id_source() const {
+  return _internal_has_vendor_id_source();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::clear_vendor_id_source() {
+  vendor_id_source_ = 0;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_vendor_id_source() const {
+  return static_cast< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource >(vendor_id_source_);
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource SystemProfileProto_Hardware_Bluetooth_PairedDevice::vendor_id_source() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.vendor_id_source)
+  return _internal_vendor_id_source();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_set_vendor_id_source(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource value) {
+  assert(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource_IsValid(value));
+  _has_bits_[0] |= 0x00000040u;
+  vendor_id_source_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::set_vendor_id_source(::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource value) {
+  _internal_set_vendor_id_source(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.vendor_id_source)
+}
+
+// optional uint32 vendor_id = 5;
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_has_vendor_id() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::has_vendor_id() const {
+  return _internal_has_vendor_id();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::clear_vendor_id() {
+  vendor_id_ = 0u;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_vendor_id() const {
+  return vendor_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::vendor_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.vendor_id)
+  return _internal_vendor_id();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  vendor_id_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_vendor_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.vendor_id)
+}
+
+// optional uint32 product_id = 6;
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_has_product_id() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::has_product_id() const {
+  return _internal_has_product_id();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::clear_product_id() {
+  product_id_ = 0u;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_product_id() const {
+  return product_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::product_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.product_id)
+  return _internal_product_id();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_set_product_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  product_id_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::set_product_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_product_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.product_id)
+}
+
+// optional uint32 device_id = 7;
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_has_device_id() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth_PairedDevice::has_device_id() const {
+  return _internal_has_device_id();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::clear_device_id() {
+  device_id_ = 0u;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_device_id() const {
+  return device_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_Bluetooth_PairedDevice::device_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.device_id)
+  return _internal_device_id();
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::_internal_set_device_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  device_id_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth_PairedDevice::set_device_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_device_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice.device_id)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Hardware_Bluetooth
+
+// optional bool is_present = 1;
+inline bool SystemProfileProto_Hardware_Bluetooth::_internal_has_is_present() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth::has_is_present() const {
+  return _internal_has_is_present();
+}
+inline void SystemProfileProto_Hardware_Bluetooth::clear_is_present() {
+  is_present_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth::_internal_is_present() const {
+  return is_present_;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth::is_present() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.is_present)
+  return _internal_is_present();
+}
+inline void SystemProfileProto_Hardware_Bluetooth::_internal_set_is_present(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  is_present_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth::set_is_present(bool value) {
+  _internal_set_is_present(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.is_present)
+}
+
+// optional bool is_enabled = 2;
+inline bool SystemProfileProto_Hardware_Bluetooth::_internal_has_is_enabled() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth::has_is_enabled() const {
+  return _internal_has_is_enabled();
+}
+inline void SystemProfileProto_Hardware_Bluetooth::clear_is_enabled() {
+  is_enabled_ = false;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth::_internal_is_enabled() const {
+  return is_enabled_;
+}
+inline bool SystemProfileProto_Hardware_Bluetooth::is_enabled() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.is_enabled)
+  return _internal_is_enabled();
+}
+inline void SystemProfileProto_Hardware_Bluetooth::_internal_set_is_enabled(bool value) {
+  _has_bits_[0] |= 0x00000002u;
+  is_enabled_ = value;
+}
+inline void SystemProfileProto_Hardware_Bluetooth::set_is_enabled(bool value) {
+  _internal_set_is_enabled(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Bluetooth.is_enabled)
+}
+
+// repeated .metrics.SystemProfileProto.Hardware.Bluetooth.PairedDevice paired_device = 3;
+inline int SystemProfileProto_Hardware_Bluetooth::_internal_paired_device_size() const {
+  return paired_device_.size();
+}
+inline int SystemProfileProto_Hardware_Bluetooth::paired_device_size() const {
+  return _internal_paired_device_size();
+}
+inline void SystemProfileProto_Hardware_Bluetooth::clear_paired_device() {
+  paired_device_.Clear();
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice* SystemProfileProto_Hardware_Bluetooth::mutable_paired_device(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.Bluetooth.paired_device)
+  return paired_device_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice >*
+SystemProfileProto_Hardware_Bluetooth::mutable_paired_device() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.Hardware.Bluetooth.paired_device)
+  return &paired_device_;
+}
+inline const ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice& SystemProfileProto_Hardware_Bluetooth::_internal_paired_device(int index) const {
+  return paired_device_.Get(index);
+}
+inline const ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice& SystemProfileProto_Hardware_Bluetooth::paired_device(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Bluetooth.paired_device)
+  return _internal_paired_device(index);
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice* SystemProfileProto_Hardware_Bluetooth::_internal_add_paired_device() {
+  return paired_device_.Add();
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice* SystemProfileProto_Hardware_Bluetooth::add_paired_device() {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.Hardware.Bluetooth.paired_device)
+  return _internal_add_paired_device();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice >&
+SystemProfileProto_Hardware_Bluetooth::paired_device() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.Hardware.Bluetooth.paired_device)
+  return paired_device_;
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Hardware_TouchScreen
+
+// optional uint32 vendor_id = 1;
+inline bool SystemProfileProto_Hardware_TouchScreen::_internal_has_vendor_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_TouchScreen::has_vendor_id() const {
+  return _internal_has_vendor_id();
+}
+inline void SystemProfileProto_Hardware_TouchScreen::clear_vendor_id() {
+  vendor_id_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_TouchScreen::_internal_vendor_id() const {
+  return vendor_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_TouchScreen::vendor_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.TouchScreen.vendor_id)
+  return _internal_vendor_id();
+}
+inline void SystemProfileProto_Hardware_TouchScreen::_internal_set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  vendor_id_ = value;
+}
+inline void SystemProfileProto_Hardware_TouchScreen::set_vendor_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_vendor_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.TouchScreen.vendor_id)
+}
+
+// optional uint32 product_id = 2;
+inline bool SystemProfileProto_Hardware_TouchScreen::_internal_has_product_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_TouchScreen::has_product_id() const {
+  return _internal_has_product_id();
+}
+inline void SystemProfileProto_Hardware_TouchScreen::clear_product_id() {
+  product_id_ = 0u;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_TouchScreen::_internal_product_id() const {
+  return product_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Hardware_TouchScreen::product_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.TouchScreen.product_id)
+  return _internal_product_id();
+}
+inline void SystemProfileProto_Hardware_TouchScreen::_internal_set_product_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  product_id_ = value;
+}
+inline void SystemProfileProto_Hardware_TouchScreen::set_product_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_product_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.TouchScreen.product_id)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Hardware_Drive
+
+// optional bool has_seek_penalty = 1;
+inline bool SystemProfileProto_Hardware_Drive::_internal_has_has_seek_penalty() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware_Drive::has_has_seek_penalty() const {
+  return _internal_has_has_seek_penalty();
+}
+inline void SystemProfileProto_Hardware_Drive::clear_has_seek_penalty() {
+  has_seek_penalty_ = false;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline bool SystemProfileProto_Hardware_Drive::_internal_has_seek_penalty() const {
+  return has_seek_penalty_;
+}
+inline bool SystemProfileProto_Hardware_Drive::has_seek_penalty() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.Drive.has_seek_penalty)
+  return _internal_has_seek_penalty();
+}
+inline void SystemProfileProto_Hardware_Drive::_internal_set_has_seek_penalty(bool value) {
+  _has_bits_[0] |= 0x00000001u;
+  has_seek_penalty_ = value;
+}
+inline void SystemProfileProto_Hardware_Drive::set_has_seek_penalty(bool value) {
+  _internal_set_has_seek_penalty(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.Drive.has_seek_penalty)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Hardware
+
+// optional string cpu_architecture = 1;
+inline bool SystemProfileProto_Hardware::_internal_has_cpu_architecture() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_cpu_architecture() const {
+  return _internal_has_cpu_architecture();
+}
+inline void SystemProfileProto_Hardware::clear_cpu_architecture() {
+  cpu_architecture_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_Hardware::cpu_architecture() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.cpu_architecture)
+  return _internal_cpu_architecture();
+}
+inline void SystemProfileProto_Hardware::set_cpu_architecture(const std::string& value) {
+  _internal_set_cpu_architecture(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.cpu_architecture)
+}
+inline std::string* SystemProfileProto_Hardware::mutable_cpu_architecture() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.cpu_architecture)
+  return _internal_mutable_cpu_architecture();
+}
+inline const std::string& SystemProfileProto_Hardware::_internal_cpu_architecture() const {
+  return cpu_architecture_.GetNoArena();
+}
+inline void SystemProfileProto_Hardware::_internal_set_cpu_architecture(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  cpu_architecture_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Hardware::set_cpu_architecture(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  cpu_architecture_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Hardware.cpu_architecture)
+}
+inline void SystemProfileProto_Hardware::set_cpu_architecture(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  cpu_architecture_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Hardware.cpu_architecture)
+}
+inline void SystemProfileProto_Hardware::set_cpu_architecture(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  cpu_architecture_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Hardware.cpu_architecture)
+}
+inline std::string* SystemProfileProto_Hardware::_internal_mutable_cpu_architecture() {
+  _has_bits_[0] |= 0x00000001u;
+  return cpu_architecture_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Hardware::release_cpu_architecture() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.cpu_architecture)
+  if (!_internal_has_cpu_architecture()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return cpu_architecture_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Hardware::set_allocated_cpu_architecture(std::string* cpu_architecture) {
+  if (cpu_architecture != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  cpu_architecture_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), cpu_architecture);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.cpu_architecture)
+}
+
+// optional int64 system_ram_mb = 2;
+inline bool SystemProfileProto_Hardware::_internal_has_system_ram_mb() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_system_ram_mb() const {
+  return _internal_has_system_ram_mb();
+}
+inline void SystemProfileProto_Hardware::clear_system_ram_mb() {
+  system_ram_mb_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_Hardware::_internal_system_ram_mb() const {
+  return system_ram_mb_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_Hardware::system_ram_mb() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.system_ram_mb)
+  return _internal_system_ram_mb();
+}
+inline void SystemProfileProto_Hardware::_internal_set_system_ram_mb(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000080u;
+  system_ram_mb_ = value;
+}
+inline void SystemProfileProto_Hardware::set_system_ram_mb(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_system_ram_mb(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.system_ram_mb)
+}
+
+// optional int64 dll_base = 3;
+inline bool SystemProfileProto_Hardware::_internal_has_dll_base() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_dll_base() const {
+  return _internal_has_dll_base();
+}
+inline void SystemProfileProto_Hardware::clear_dll_base() {
+  dll_base_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_Hardware::_internal_dll_base() const {
+  return dll_base_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_Hardware::dll_base() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.dll_base)
+  return _internal_dll_base();
+}
+inline void SystemProfileProto_Hardware::_internal_set_dll_base(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000100u;
+  dll_base_ = value;
+}
+inline void SystemProfileProto_Hardware::set_dll_base(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_dll_base(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.dll_base)
+}
+
+// optional string hardware_class = 4;
+inline bool SystemProfileProto_Hardware::_internal_has_hardware_class() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_hardware_class() const {
+  return _internal_has_hardware_class();
+}
+inline void SystemProfileProto_Hardware::clear_hardware_class() {
+  hardware_class_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemProfileProto_Hardware::hardware_class() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.hardware_class)
+  return _internal_hardware_class();
+}
+inline void SystemProfileProto_Hardware::set_hardware_class(const std::string& value) {
+  _internal_set_hardware_class(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.hardware_class)
+}
+inline std::string* SystemProfileProto_Hardware::mutable_hardware_class() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.hardware_class)
+  return _internal_mutable_hardware_class();
+}
+inline const std::string& SystemProfileProto_Hardware::_internal_hardware_class() const {
+  return hardware_class_.GetNoArena();
+}
+inline void SystemProfileProto_Hardware::_internal_set_hardware_class(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  hardware_class_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Hardware::set_hardware_class(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  hardware_class_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Hardware.hardware_class)
+}
+inline void SystemProfileProto_Hardware::set_hardware_class(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  hardware_class_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Hardware.hardware_class)
+}
+inline void SystemProfileProto_Hardware::set_hardware_class(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  hardware_class_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Hardware.hardware_class)
+}
+inline std::string* SystemProfileProto_Hardware::_internal_mutable_hardware_class() {
+  _has_bits_[0] |= 0x00000002u;
+  return hardware_class_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Hardware::release_hardware_class() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.hardware_class)
+  if (!_internal_has_hardware_class()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return hardware_class_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Hardware::set_allocated_hardware_class(std::string* hardware_class) {
+  if (hardware_class != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  hardware_class_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), hardware_class);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.hardware_class)
+}
+
+// optional int32 screen_count = 5;
+inline bool SystemProfileProto_Hardware::_internal_has_screen_count() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_screen_count() const {
+  return _internal_has_screen_count();
+}
+inline void SystemProfileProto_Hardware::clear_screen_count() {
+  screen_count_ = 0;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Hardware::_internal_screen_count() const {
+  return screen_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Hardware::screen_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.screen_count)
+  return _internal_screen_count();
+}
+inline void SystemProfileProto_Hardware::_internal_set_screen_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000200u;
+  screen_count_ = value;
+}
+inline void SystemProfileProto_Hardware::set_screen_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_screen_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.screen_count)
+}
+
+// optional int32 primary_screen_width = 6;
+inline bool SystemProfileProto_Hardware::_internal_has_primary_screen_width() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_primary_screen_width() const {
+  return _internal_has_primary_screen_width();
+}
+inline void SystemProfileProto_Hardware::clear_primary_screen_width() {
+  primary_screen_width_ = 0;
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Hardware::_internal_primary_screen_width() const {
+  return primary_screen_width_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Hardware::primary_screen_width() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.primary_screen_width)
+  return _internal_primary_screen_width();
+}
+inline void SystemProfileProto_Hardware::_internal_set_primary_screen_width(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000400u;
+  primary_screen_width_ = value;
+}
+inline void SystemProfileProto_Hardware::set_primary_screen_width(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_primary_screen_width(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.primary_screen_width)
+}
+
+// optional int32 primary_screen_height = 7;
+inline bool SystemProfileProto_Hardware::_internal_has_primary_screen_height() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_primary_screen_height() const {
+  return _internal_has_primary_screen_height();
+}
+inline void SystemProfileProto_Hardware::clear_primary_screen_height() {
+  primary_screen_height_ = 0;
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Hardware::_internal_primary_screen_height() const {
+  return primary_screen_height_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Hardware::primary_screen_height() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.primary_screen_height)
+  return _internal_primary_screen_height();
+}
+inline void SystemProfileProto_Hardware::_internal_set_primary_screen_height(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000800u;
+  primary_screen_height_ = value;
+}
+inline void SystemProfileProto_Hardware::set_primary_screen_height(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_primary_screen_height(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.primary_screen_height)
+}
+
+// optional float primary_screen_scale_factor = 12;
+inline bool SystemProfileProto_Hardware::_internal_has_primary_screen_scale_factor() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_primary_screen_scale_factor() const {
+  return _internal_has_primary_screen_scale_factor();
+}
+inline void SystemProfileProto_Hardware::clear_primary_screen_scale_factor() {
+  primary_screen_scale_factor_ = 0;
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline float SystemProfileProto_Hardware::_internal_primary_screen_scale_factor() const {
+  return primary_screen_scale_factor_;
+}
+inline float SystemProfileProto_Hardware::primary_screen_scale_factor() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.primary_screen_scale_factor)
+  return _internal_primary_screen_scale_factor();
+}
+inline void SystemProfileProto_Hardware::_internal_set_primary_screen_scale_factor(float value) {
+  _has_bits_[0] |= 0x00004000u;
+  primary_screen_scale_factor_ = value;
+}
+inline void SystemProfileProto_Hardware::set_primary_screen_scale_factor(float value) {
+  _internal_set_primary_screen_scale_factor(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.primary_screen_scale_factor)
+}
+
+// optional float max_dpi_x = 9;
+inline bool SystemProfileProto_Hardware::_internal_has_max_dpi_x() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_max_dpi_x() const {
+  return _internal_has_max_dpi_x();
+}
+inline void SystemProfileProto_Hardware::clear_max_dpi_x() {
+  max_dpi_x_ = 0;
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline float SystemProfileProto_Hardware::_internal_max_dpi_x() const {
+  return max_dpi_x_;
+}
+inline float SystemProfileProto_Hardware::max_dpi_x() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.max_dpi_x)
+  return _internal_max_dpi_x();
+}
+inline void SystemProfileProto_Hardware::_internal_set_max_dpi_x(float value) {
+  _has_bits_[0] |= 0x00001000u;
+  max_dpi_x_ = value;
+}
+inline void SystemProfileProto_Hardware::set_max_dpi_x(float value) {
+  _internal_set_max_dpi_x(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.max_dpi_x)
+}
+
+// optional float max_dpi_y = 10;
+inline bool SystemProfileProto_Hardware::_internal_has_max_dpi_y() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_max_dpi_y() const {
+  return _internal_has_max_dpi_y();
+}
+inline void SystemProfileProto_Hardware::clear_max_dpi_y() {
+  max_dpi_y_ = 0;
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline float SystemProfileProto_Hardware::_internal_max_dpi_y() const {
+  return max_dpi_y_;
+}
+inline float SystemProfileProto_Hardware::max_dpi_y() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.max_dpi_y)
+  return _internal_max_dpi_y();
+}
+inline void SystemProfileProto_Hardware::_internal_set_max_dpi_y(float value) {
+  _has_bits_[0] |= 0x00002000u;
+  max_dpi_y_ = value;
+}
+inline void SystemProfileProto_Hardware::set_max_dpi_y(float value) {
+  _internal_set_max_dpi_y(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.max_dpi_y)
+}
+
+// optional .metrics.SystemProfileProto.Hardware.CPU cpu = 13;
+inline bool SystemProfileProto_Hardware::_internal_has_cpu() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || cpu_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_cpu() const {
+  return _internal_has_cpu();
+}
+inline void SystemProfileProto_Hardware::clear_cpu() {
+  if (cpu_ != nullptr) cpu_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::metrics::SystemProfileProto_Hardware_CPU& SystemProfileProto_Hardware::_internal_cpu() const {
+  const ::metrics::SystemProfileProto_Hardware_CPU* p = cpu_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Hardware_CPU*>(
+      &::metrics::_SystemProfileProto_Hardware_CPU_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Hardware_CPU& SystemProfileProto_Hardware::cpu() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.cpu)
+  return _internal_cpu();
+}
+inline ::metrics::SystemProfileProto_Hardware_CPU* SystemProfileProto_Hardware::release_cpu() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.cpu)
+  _has_bits_[0] &= ~0x00000010u;
+  ::metrics::SystemProfileProto_Hardware_CPU* temp = cpu_;
+  cpu_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Hardware_CPU* SystemProfileProto_Hardware::_internal_mutable_cpu() {
+  _has_bits_[0] |= 0x00000010u;
+  if (cpu_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_CPU>(GetArenaNoVirtual());
+    cpu_ = p;
+  }
+  return cpu_;
+}
+inline ::metrics::SystemProfileProto_Hardware_CPU* SystemProfileProto_Hardware::mutable_cpu() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.cpu)
+  return _internal_mutable_cpu();
+}
+inline void SystemProfileProto_Hardware::set_allocated_cpu(::metrics::SystemProfileProto_Hardware_CPU* cpu) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete cpu_;
+  }
+  if (cpu) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      cpu = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, cpu, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  cpu_ = cpu;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.cpu)
+}
+
+// optional .metrics.SystemProfileProto.Hardware.Graphics gpu = 8;
+inline bool SystemProfileProto_Hardware::_internal_has_gpu() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  PROTOBUF_ASSUME(!value || gpu_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_gpu() const {
+  return _internal_has_gpu();
+}
+inline void SystemProfileProto_Hardware::clear_gpu() {
+  if (gpu_ != nullptr) gpu_->Clear();
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const ::metrics::SystemProfileProto_Hardware_Graphics& SystemProfileProto_Hardware::_internal_gpu() const {
+  const ::metrics::SystemProfileProto_Hardware_Graphics* p = gpu_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Hardware_Graphics*>(
+      &::metrics::_SystemProfileProto_Hardware_Graphics_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Hardware_Graphics& SystemProfileProto_Hardware::gpu() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.gpu)
+  return _internal_gpu();
+}
+inline ::metrics::SystemProfileProto_Hardware_Graphics* SystemProfileProto_Hardware::release_gpu() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.gpu)
+  _has_bits_[0] &= ~0x00000004u;
+  ::metrics::SystemProfileProto_Hardware_Graphics* temp = gpu_;
+  gpu_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Hardware_Graphics* SystemProfileProto_Hardware::_internal_mutable_gpu() {
+  _has_bits_[0] |= 0x00000004u;
+  if (gpu_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_Graphics>(GetArenaNoVirtual());
+    gpu_ = p;
+  }
+  return gpu_;
+}
+inline ::metrics::SystemProfileProto_Hardware_Graphics* SystemProfileProto_Hardware::mutable_gpu() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.gpu)
+  return _internal_mutable_gpu();
+}
+inline void SystemProfileProto_Hardware::set_allocated_gpu(::metrics::SystemProfileProto_Hardware_Graphics* gpu) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete gpu_;
+  }
+  if (gpu) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      gpu = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, gpu, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  gpu_ = gpu;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.gpu)
+}
+
+// optional .metrics.SystemProfileProto.Hardware.Bluetooth bluetooth = 11;
+inline bool SystemProfileProto_Hardware::_internal_has_bluetooth() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || bluetooth_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_bluetooth() const {
+  return _internal_has_bluetooth();
+}
+inline void SystemProfileProto_Hardware::clear_bluetooth() {
+  if (bluetooth_ != nullptr) bluetooth_->Clear();
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const ::metrics::SystemProfileProto_Hardware_Bluetooth& SystemProfileProto_Hardware::_internal_bluetooth() const {
+  const ::metrics::SystemProfileProto_Hardware_Bluetooth* p = bluetooth_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Hardware_Bluetooth*>(
+      &::metrics::_SystemProfileProto_Hardware_Bluetooth_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Hardware_Bluetooth& SystemProfileProto_Hardware::bluetooth() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.bluetooth)
+  return _internal_bluetooth();
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth* SystemProfileProto_Hardware::release_bluetooth() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.bluetooth)
+  _has_bits_[0] &= ~0x00000008u;
+  ::metrics::SystemProfileProto_Hardware_Bluetooth* temp = bluetooth_;
+  bluetooth_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth* SystemProfileProto_Hardware::_internal_mutable_bluetooth() {
+  _has_bits_[0] |= 0x00000008u;
+  if (bluetooth_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_Bluetooth>(GetArenaNoVirtual());
+    bluetooth_ = p;
+  }
+  return bluetooth_;
+}
+inline ::metrics::SystemProfileProto_Hardware_Bluetooth* SystemProfileProto_Hardware::mutable_bluetooth() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.bluetooth)
+  return _internal_mutable_bluetooth();
+}
+inline void SystemProfileProto_Hardware::set_allocated_bluetooth(::metrics::SystemProfileProto_Hardware_Bluetooth* bluetooth) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete bluetooth_;
+  }
+  if (bluetooth) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      bluetooth = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, bluetooth, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  bluetooth_ = bluetooth;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.bluetooth)
+}
+
+// optional bool internal_display_supports_touch = 14;
+inline bool SystemProfileProto_Hardware::_internal_has_internal_display_supports_touch() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_internal_display_supports_touch() const {
+  return _internal_has_internal_display_supports_touch();
+}
+inline void SystemProfileProto_Hardware::clear_internal_display_supports_touch() {
+  internal_display_supports_touch_ = false;
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline bool SystemProfileProto_Hardware::_internal_internal_display_supports_touch() const {
+  return internal_display_supports_touch_;
+}
+inline bool SystemProfileProto_Hardware::internal_display_supports_touch() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.internal_display_supports_touch)
+  return _internal_internal_display_supports_touch();
+}
+inline void SystemProfileProto_Hardware::_internal_set_internal_display_supports_touch(bool value) {
+  _has_bits_[0] |= 0x00008000u;
+  internal_display_supports_touch_ = value;
+}
+inline void SystemProfileProto_Hardware::set_internal_display_supports_touch(bool value) {
+  _internal_set_internal_display_supports_touch(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Hardware.internal_display_supports_touch)
+}
+
+// repeated .metrics.SystemProfileProto.Hardware.TouchScreen external_touchscreen = 15;
+inline int SystemProfileProto_Hardware::_internal_external_touchscreen_size() const {
+  return external_touchscreen_.size();
+}
+inline int SystemProfileProto_Hardware::external_touchscreen_size() const {
+  return _internal_external_touchscreen_size();
+}
+inline void SystemProfileProto_Hardware::clear_external_touchscreen() {
+  external_touchscreen_.Clear();
+}
+inline ::metrics::SystemProfileProto_Hardware_TouchScreen* SystemProfileProto_Hardware::mutable_external_touchscreen(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.external_touchscreen)
+  return external_touchscreen_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_TouchScreen >*
+SystemProfileProto_Hardware::mutable_external_touchscreen() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.Hardware.external_touchscreen)
+  return &external_touchscreen_;
+}
+inline const ::metrics::SystemProfileProto_Hardware_TouchScreen& SystemProfileProto_Hardware::_internal_external_touchscreen(int index) const {
+  return external_touchscreen_.Get(index);
+}
+inline const ::metrics::SystemProfileProto_Hardware_TouchScreen& SystemProfileProto_Hardware::external_touchscreen(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.external_touchscreen)
+  return _internal_external_touchscreen(index);
+}
+inline ::metrics::SystemProfileProto_Hardware_TouchScreen* SystemProfileProto_Hardware::_internal_add_external_touchscreen() {
+  return external_touchscreen_.Add();
+}
+inline ::metrics::SystemProfileProto_Hardware_TouchScreen* SystemProfileProto_Hardware::add_external_touchscreen() {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.Hardware.external_touchscreen)
+  return _internal_add_external_touchscreen();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Hardware_TouchScreen >&
+SystemProfileProto_Hardware::external_touchscreen() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.Hardware.external_touchscreen)
+  return external_touchscreen_;
+}
+
+// optional .metrics.SystemProfileProto.Hardware.Drive app_drive = 16;
+inline bool SystemProfileProto_Hardware::_internal_has_app_drive() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || app_drive_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_app_drive() const {
+  return _internal_has_app_drive();
+}
+inline void SystemProfileProto_Hardware::clear_app_drive() {
+  if (app_drive_ != nullptr) app_drive_->Clear();
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const ::metrics::SystemProfileProto_Hardware_Drive& SystemProfileProto_Hardware::_internal_app_drive() const {
+  const ::metrics::SystemProfileProto_Hardware_Drive* p = app_drive_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Hardware_Drive*>(
+      &::metrics::_SystemProfileProto_Hardware_Drive_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Hardware_Drive& SystemProfileProto_Hardware::app_drive() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.app_drive)
+  return _internal_app_drive();
+}
+inline ::metrics::SystemProfileProto_Hardware_Drive* SystemProfileProto_Hardware::release_app_drive() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.app_drive)
+  _has_bits_[0] &= ~0x00000020u;
+  ::metrics::SystemProfileProto_Hardware_Drive* temp = app_drive_;
+  app_drive_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Hardware_Drive* SystemProfileProto_Hardware::_internal_mutable_app_drive() {
+  _has_bits_[0] |= 0x00000020u;
+  if (app_drive_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_Drive>(GetArenaNoVirtual());
+    app_drive_ = p;
+  }
+  return app_drive_;
+}
+inline ::metrics::SystemProfileProto_Hardware_Drive* SystemProfileProto_Hardware::mutable_app_drive() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.app_drive)
+  return _internal_mutable_app_drive();
+}
+inline void SystemProfileProto_Hardware::set_allocated_app_drive(::metrics::SystemProfileProto_Hardware_Drive* app_drive) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete app_drive_;
+  }
+  if (app_drive) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      app_drive = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, app_drive, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  app_drive_ = app_drive;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.app_drive)
+}
+
+// optional .metrics.SystemProfileProto.Hardware.Drive user_data_drive = 17;
+inline bool SystemProfileProto_Hardware::_internal_has_user_data_drive() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || user_data_drive_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_Hardware::has_user_data_drive() const {
+  return _internal_has_user_data_drive();
+}
+inline void SystemProfileProto_Hardware::clear_user_data_drive() {
+  if (user_data_drive_ != nullptr) user_data_drive_->Clear();
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const ::metrics::SystemProfileProto_Hardware_Drive& SystemProfileProto_Hardware::_internal_user_data_drive() const {
+  const ::metrics::SystemProfileProto_Hardware_Drive* p = user_data_drive_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Hardware_Drive*>(
+      &::metrics::_SystemProfileProto_Hardware_Drive_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Hardware_Drive& SystemProfileProto_Hardware::user_data_drive() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Hardware.user_data_drive)
+  return _internal_user_data_drive();
+}
+inline ::metrics::SystemProfileProto_Hardware_Drive* SystemProfileProto_Hardware::release_user_data_drive() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Hardware.user_data_drive)
+  _has_bits_[0] &= ~0x00000040u;
+  ::metrics::SystemProfileProto_Hardware_Drive* temp = user_data_drive_;
+  user_data_drive_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Hardware_Drive* SystemProfileProto_Hardware::_internal_mutable_user_data_drive() {
+  _has_bits_[0] |= 0x00000040u;
+  if (user_data_drive_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Hardware_Drive>(GetArenaNoVirtual());
+    user_data_drive_ = p;
+  }
+  return user_data_drive_;
+}
+inline ::metrics::SystemProfileProto_Hardware_Drive* SystemProfileProto_Hardware::mutable_user_data_drive() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Hardware.user_data_drive)
+  return _internal_mutable_user_data_drive();
+}
+inline void SystemProfileProto_Hardware::set_allocated_user_data_drive(::metrics::SystemProfileProto_Hardware_Drive* user_data_drive) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete user_data_drive_;
+  }
+  if (user_data_drive) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      user_data_drive = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, user_data_drive, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  user_data_drive_ = user_data_drive;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Hardware.user_data_drive)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Network_WifiAccessPoint_VendorInformation
+
+// optional string model_number = 1;
+inline bool SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_has_model_number() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network_WifiAccessPoint_VendorInformation::has_model_number() const {
+  return _internal_has_model_number();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::clear_model_number() {
+  model_number_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_Network_WifiAccessPoint_VendorInformation::model_number() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_number)
+  return _internal_model_number();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_model_number(const std::string& value) {
+  _internal_set_model_number(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_number)
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::mutable_model_number() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_number)
+  return _internal_mutable_model_number();
+}
+inline const std::string& SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_model_number() const {
+  return model_number_.GetNoArena();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_set_model_number(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  model_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_model_number(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  model_number_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_number)
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_model_number(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  model_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_number)
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_model_number(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  model_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_number)
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_mutable_model_number() {
+  _has_bits_[0] |= 0x00000001u;
+  return model_number_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::release_model_number() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_number)
+  if (!_internal_has_model_number()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return model_number_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_allocated_model_number(std::string* model_number) {
+  if (model_number != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  model_number_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), model_number);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_number)
+}
+
+// optional string model_name = 2;
+inline bool SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_has_model_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network_WifiAccessPoint_VendorInformation::has_model_name() const {
+  return _internal_has_model_name();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::clear_model_name() {
+  model_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemProfileProto_Network_WifiAccessPoint_VendorInformation::model_name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_name)
+  return _internal_model_name();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_model_name(const std::string& value) {
+  _internal_set_model_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_name)
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::mutable_model_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_name)
+  return _internal_mutable_model_name();
+}
+inline const std::string& SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_model_name() const {
+  return model_name_.GetNoArena();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_set_model_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_model_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_name)
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_model_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_name)
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_model_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_name)
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_mutable_model_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return model_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::release_model_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_name)
+  if (!_internal_has_model_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return model_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_allocated_model_name(std::string* model_name) {
+  if (model_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  model_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), model_name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.model_name)
+}
+
+// optional string device_name = 3;
+inline bool SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_has_device_name() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network_WifiAccessPoint_VendorInformation::has_device_name() const {
+  return _internal_has_device_name();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::clear_device_name() {
+  device_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SystemProfileProto_Network_WifiAccessPoint_VendorInformation::device_name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.device_name)
+  return _internal_device_name();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_device_name(const std::string& value) {
+  _internal_set_device_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.device_name)
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::mutable_device_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.device_name)
+  return _internal_mutable_device_name();
+}
+inline const std::string& SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_device_name() const {
+  return device_name_.GetNoArena();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_set_device_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_device_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  device_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.device_name)
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_device_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.device_name)
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_device_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.device_name)
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_mutable_device_name() {
+  _has_bits_[0] |= 0x00000004u;
+  return device_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Network_WifiAccessPoint_VendorInformation::release_device_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.device_name)
+  if (!_internal_has_device_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return device_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_allocated_device_name(std::string* device_name) {
+  if (device_name != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  device_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.device_name)
+}
+
+// repeated uint32 element_identifier = 4;
+inline int SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_element_identifier_size() const {
+  return element_identifier_.size();
+}
+inline int SystemProfileProto_Network_WifiAccessPoint_VendorInformation::element_identifier_size() const {
+  return _internal_element_identifier_size();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::clear_element_identifier() {
+  element_identifier_.Clear();
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_element_identifier(int index) const {
+  return element_identifier_.Get(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Network_WifiAccessPoint_VendorInformation::element_identifier(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.element_identifier)
+  return _internal_element_identifier(index);
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::set_element_identifier(int index, ::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  element_identifier_.Set(index, value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.element_identifier)
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_add_element_identifier(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  element_identifier_.Add(value);
+}
+inline void SystemProfileProto_Network_WifiAccessPoint_VendorInformation::add_element_identifier(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_add_element_identifier(value);
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.element_identifier)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 >&
+SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_element_identifier() const {
+  return element_identifier_;
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 >&
+SystemProfileProto_Network_WifiAccessPoint_VendorInformation::element_identifier() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.element_identifier)
+  return _internal_element_identifier();
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 >*
+SystemProfileProto_Network_WifiAccessPoint_VendorInformation::_internal_mutable_element_identifier() {
+  return &element_identifier_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint32 >*
+SystemProfileProto_Network_WifiAccessPoint_VendorInformation::mutable_element_identifier() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation.element_identifier)
+  return _internal_mutable_element_identifier();
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Network_WifiAccessPoint
+
+// optional uint32 vendor_prefix = 1;
+inline bool SystemProfileProto_Network_WifiAccessPoint::_internal_has_vendor_prefix() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network_WifiAccessPoint::has_vendor_prefix() const {
+  return _internal_has_vendor_prefix();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint::clear_vendor_prefix() {
+  vendor_prefix_ = 0u;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Network_WifiAccessPoint::_internal_vendor_prefix() const {
+  return vendor_prefix_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_Network_WifiAccessPoint::vendor_prefix() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.WifiAccessPoint.vendor_prefix)
+  return _internal_vendor_prefix();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint::_internal_set_vendor_prefix(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  vendor_prefix_ = value;
+}
+inline void SystemProfileProto_Network_WifiAccessPoint::set_vendor_prefix(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_vendor_prefix(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.WifiAccessPoint.vendor_prefix)
+}
+
+// optional .metrics.SystemProfileProto.Network.WifiAccessPoint.SecurityMode security_mode = 2;
+inline bool SystemProfileProto_Network_WifiAccessPoint::_internal_has_security_mode() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network_WifiAccessPoint::has_security_mode() const {
+  return _internal_has_security_mode();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint::clear_security_mode() {
+  security_mode_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::_internal_security_mode() const {
+  return static_cast< ::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode >(security_mode_);
+}
+inline ::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode SystemProfileProto_Network_WifiAccessPoint::security_mode() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.WifiAccessPoint.security_mode)
+  return _internal_security_mode();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint::_internal_set_security_mode(::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode value) {
+  assert(::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  security_mode_ = value;
+}
+inline void SystemProfileProto_Network_WifiAccessPoint::set_security_mode(::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode value) {
+  _internal_set_security_mode(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.WifiAccessPoint.security_mode)
+}
+
+// optional .metrics.SystemProfileProto.Network.WifiAccessPoint.VendorInformation vendor_info = 3;
+inline bool SystemProfileProto_Network_WifiAccessPoint::_internal_has_vendor_info() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || vendor_info_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_Network_WifiAccessPoint::has_vendor_info() const {
+  return _internal_has_vendor_info();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint::clear_vendor_info() {
+  if (vendor_info_ != nullptr) vendor_info_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation& SystemProfileProto_Network_WifiAccessPoint::_internal_vendor_info() const {
+  const ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* p = vendor_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation*>(
+      &::metrics::_SystemProfileProto_Network_WifiAccessPoint_VendorInformation_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation& SystemProfileProto_Network_WifiAccessPoint::vendor_info() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.WifiAccessPoint.vendor_info)
+  return _internal_vendor_info();
+}
+inline ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* SystemProfileProto_Network_WifiAccessPoint::release_vendor_info() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Network.WifiAccessPoint.vendor_info)
+  _has_bits_[0] &= ~0x00000001u;
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* temp = vendor_info_;
+  vendor_info_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* SystemProfileProto_Network_WifiAccessPoint::_internal_mutable_vendor_info() {
+  _has_bits_[0] |= 0x00000001u;
+  if (vendor_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation>(GetArenaNoVirtual());
+    vendor_info_ = p;
+  }
+  return vendor_info_;
+}
+inline ::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* SystemProfileProto_Network_WifiAccessPoint::mutable_vendor_info() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Network.WifiAccessPoint.vendor_info)
+  return _internal_mutable_vendor_info();
+}
+inline void SystemProfileProto_Network_WifiAccessPoint::set_allocated_vendor_info(::metrics::SystemProfileProto_Network_WifiAccessPoint_VendorInformation* vendor_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete vendor_info_;
+  }
+  if (vendor_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      vendor_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, vendor_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  vendor_info_ = vendor_info;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Network.WifiAccessPoint.vendor_info)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Network
+
+// optional bool connection_type_is_ambiguous = 1;
+inline bool SystemProfileProto_Network::_internal_has_connection_type_is_ambiguous() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network::has_connection_type_is_ambiguous() const {
+  return _internal_has_connection_type_is_ambiguous();
+}
+inline void SystemProfileProto_Network::clear_connection_type_is_ambiguous() {
+  connection_type_is_ambiguous_ = false;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline bool SystemProfileProto_Network::_internal_connection_type_is_ambiguous() const {
+  return connection_type_is_ambiguous_;
+}
+inline bool SystemProfileProto_Network::connection_type_is_ambiguous() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.connection_type_is_ambiguous)
+  return _internal_connection_type_is_ambiguous();
+}
+inline void SystemProfileProto_Network::_internal_set_connection_type_is_ambiguous(bool value) {
+  _has_bits_[0] |= 0x00000004u;
+  connection_type_is_ambiguous_ = value;
+}
+inline void SystemProfileProto_Network::set_connection_type_is_ambiguous(bool value) {
+  _internal_set_connection_type_is_ambiguous(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.connection_type_is_ambiguous)
+}
+
+// optional .metrics.SystemProfileProto.Network.ConnectionType connection_type = 2;
+inline bool SystemProfileProto_Network::_internal_has_connection_type() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network::has_connection_type() const {
+  return _internal_has_connection_type();
+}
+inline void SystemProfileProto_Network::clear_connection_type() {
+  connection_type_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::metrics::SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::_internal_connection_type() const {
+  return static_cast< ::metrics::SystemProfileProto_Network_ConnectionType >(connection_type_);
+}
+inline ::metrics::SystemProfileProto_Network_ConnectionType SystemProfileProto_Network::connection_type() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.connection_type)
+  return _internal_connection_type();
+}
+inline void SystemProfileProto_Network::_internal_set_connection_type(::metrics::SystemProfileProto_Network_ConnectionType value) {
+  assert(::metrics::SystemProfileProto_Network_ConnectionType_IsValid(value));
+  _has_bits_[0] |= 0x00000002u;
+  connection_type_ = value;
+}
+inline void SystemProfileProto_Network::set_connection_type(::metrics::SystemProfileProto_Network_ConnectionType value) {
+  _internal_set_connection_type(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.connection_type)
+}
+
+// optional bool wifi_phy_layer_protocol_is_ambiguous = 3;
+inline bool SystemProfileProto_Network::_internal_has_wifi_phy_layer_protocol_is_ambiguous() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network::has_wifi_phy_layer_protocol_is_ambiguous() const {
+  return _internal_has_wifi_phy_layer_protocol_is_ambiguous();
+}
+inline void SystemProfileProto_Network::clear_wifi_phy_layer_protocol_is_ambiguous() {
+  wifi_phy_layer_protocol_is_ambiguous_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool SystemProfileProto_Network::_internal_wifi_phy_layer_protocol_is_ambiguous() const {
+  return wifi_phy_layer_protocol_is_ambiguous_;
+}
+inline bool SystemProfileProto_Network::wifi_phy_layer_protocol_is_ambiguous() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.wifi_phy_layer_protocol_is_ambiguous)
+  return _internal_wifi_phy_layer_protocol_is_ambiguous();
+}
+inline void SystemProfileProto_Network::_internal_set_wifi_phy_layer_protocol_is_ambiguous(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  wifi_phy_layer_protocol_is_ambiguous_ = value;
+}
+inline void SystemProfileProto_Network::set_wifi_phy_layer_protocol_is_ambiguous(bool value) {
+  _internal_set_wifi_phy_layer_protocol_is_ambiguous(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.wifi_phy_layer_protocol_is_ambiguous)
+}
+
+// optional .metrics.SystemProfileProto.Network.WifiPHYLayerProtocol wifi_phy_layer_protocol = 4;
+inline bool SystemProfileProto_Network::_internal_has_wifi_phy_layer_protocol() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Network::has_wifi_phy_layer_protocol() const {
+  return _internal_has_wifi_phy_layer_protocol();
+}
+inline void SystemProfileProto_Network::clear_wifi_phy_layer_protocol() {
+  wifi_phy_layer_protocol_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::_internal_wifi_phy_layer_protocol() const {
+  return static_cast< ::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol >(wifi_phy_layer_protocol_);
+}
+inline ::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol SystemProfileProto_Network::wifi_phy_layer_protocol() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.wifi_phy_layer_protocol)
+  return _internal_wifi_phy_layer_protocol();
+}
+inline void SystemProfileProto_Network::_internal_set_wifi_phy_layer_protocol(::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol value) {
+  assert(::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol_IsValid(value));
+  _has_bits_[0] |= 0x00000010u;
+  wifi_phy_layer_protocol_ = value;
+}
+inline void SystemProfileProto_Network::set_wifi_phy_layer_protocol(::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol value) {
+  _internal_set_wifi_phy_layer_protocol(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Network.wifi_phy_layer_protocol)
+}
+
+// optional .metrics.SystemProfileProto.Network.WifiAccessPoint access_point_info = 5;
+inline bool SystemProfileProto_Network::_internal_has_access_point_info() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || access_point_info_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_Network::has_access_point_info() const {
+  return _internal_has_access_point_info();
+}
+inline void SystemProfileProto_Network::clear_access_point_info() {
+  if (access_point_info_ != nullptr) access_point_info_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::metrics::SystemProfileProto_Network_WifiAccessPoint& SystemProfileProto_Network::_internal_access_point_info() const {
+  const ::metrics::SystemProfileProto_Network_WifiAccessPoint* p = access_point_info_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Network_WifiAccessPoint*>(
+      &::metrics::_SystemProfileProto_Network_WifiAccessPoint_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Network_WifiAccessPoint& SystemProfileProto_Network::access_point_info() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Network.access_point_info)
+  return _internal_access_point_info();
+}
+inline ::metrics::SystemProfileProto_Network_WifiAccessPoint* SystemProfileProto_Network::release_access_point_info() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Network.access_point_info)
+  _has_bits_[0] &= ~0x00000001u;
+  ::metrics::SystemProfileProto_Network_WifiAccessPoint* temp = access_point_info_;
+  access_point_info_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Network_WifiAccessPoint* SystemProfileProto_Network::_internal_mutable_access_point_info() {
+  _has_bits_[0] |= 0x00000001u;
+  if (access_point_info_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Network_WifiAccessPoint>(GetArenaNoVirtual());
+    access_point_info_ = p;
+  }
+  return access_point_info_;
+}
+inline ::metrics::SystemProfileProto_Network_WifiAccessPoint* SystemProfileProto_Network::mutable_access_point_info() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Network.access_point_info)
+  return _internal_mutable_access_point_info();
+}
+inline void SystemProfileProto_Network::set_allocated_access_point_info(::metrics::SystemProfileProto_Network_WifiAccessPoint* access_point_info) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete access_point_info_;
+  }
+  if (access_point_info) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      access_point_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, access_point_info, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  access_point_info_ = access_point_info;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Network.access_point_info)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_GoogleUpdate_ProductInfo
+
+// optional string version = 1;
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::has_version() const {
+  return _internal_has_version();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::clear_version() {
+  version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_GoogleUpdate_ProductInfo::version() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.version)
+  return _internal_version();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_version(const std::string& value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.version)
+}
+inline std::string* SystemProfileProto_GoogleUpdate_ProductInfo::mutable_version() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.version)
+  return _internal_mutable_version();
+}
+inline const std::string& SystemProfileProto_GoogleUpdate_ProductInfo::_internal_version() const {
+  return version_.GetNoArena();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::_internal_set_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.version)
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.version)
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.version)
+}
+inline std::string* SystemProfileProto_GoogleUpdate_ProductInfo::_internal_mutable_version() {
+  _has_bits_[0] |= 0x00000001u;
+  return version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_GoogleUpdate_ProductInfo::release_version() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.version)
+  if (!_internal_has_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_allocated_version(std::string* version) {
+  if (version != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), version);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.version)
+}
+
+// optional int64 last_update_success_timestamp = 2;
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::_internal_has_last_update_success_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::has_last_update_success_timestamp() const {
+  return _internal_has_last_update_success_timestamp();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::clear_last_update_success_timestamp() {
+  last_update_success_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_GoogleUpdate_ProductInfo::_internal_last_update_success_timestamp() const {
+  return last_update_success_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_GoogleUpdate_ProductInfo::last_update_success_timestamp() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.last_update_success_timestamp)
+  return _internal_last_update_success_timestamp();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::_internal_set_last_update_success_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  last_update_success_timestamp_ = value;
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_last_update_success_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_update_success_timestamp(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.last_update_success_timestamp)
+}
+
+// optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo.InstallResult last_result = 3;
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::_internal_has_last_result() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::has_last_result() const {
+  return _internal_has_last_result();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::clear_last_result() {
+  last_result_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::_internal_last_result() const {
+  return static_cast< ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult >(last_result_);
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult SystemProfileProto_GoogleUpdate_ProductInfo::last_result() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.last_result)
+  return _internal_last_result();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::_internal_set_last_result(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult value) {
+  assert(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult_IsValid(value));
+  _has_bits_[0] |= 0x00000004u;
+  last_result_ = value;
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_last_result(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult value) {
+  _internal_set_last_result(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.last_result)
+}
+
+// optional int32 last_error = 4;
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::_internal_has_last_error() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::has_last_error() const {
+  return _internal_has_last_error();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::clear_last_error() {
+  last_error_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_GoogleUpdate_ProductInfo::_internal_last_error() const {
+  return last_error_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_GoogleUpdate_ProductInfo::last_error() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.last_error)
+  return _internal_last_error();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::_internal_set_last_error(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  last_error_ = value;
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_last_error(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_last_error(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.last_error)
+}
+
+// optional int32 last_extra_error = 5;
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::_internal_has_last_extra_error() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate_ProductInfo::has_last_extra_error() const {
+  return _internal_has_last_extra_error();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::clear_last_extra_error() {
+  last_extra_error_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_GoogleUpdate_ProductInfo::_internal_last_extra_error() const {
+  return last_extra_error_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_GoogleUpdate_ProductInfo::last_extra_error() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.last_extra_error)
+  return _internal_last_extra_error();
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::_internal_set_last_extra_error(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  last_extra_error_ = value;
+}
+inline void SystemProfileProto_GoogleUpdate_ProductInfo::set_last_extra_error(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_last_extra_error(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.GoogleUpdate.ProductInfo.last_extra_error)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_GoogleUpdate
+
+// optional bool is_system_install = 1;
+inline bool SystemProfileProto_GoogleUpdate::_internal_has_is_system_install() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate::has_is_system_install() const {
+  return _internal_has_is_system_install();
+}
+inline void SystemProfileProto_GoogleUpdate::clear_is_system_install() {
+  is_system_install_ = false;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline bool SystemProfileProto_GoogleUpdate::_internal_is_system_install() const {
+  return is_system_install_;
+}
+inline bool SystemProfileProto_GoogleUpdate::is_system_install() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.is_system_install)
+  return _internal_is_system_install();
+}
+inline void SystemProfileProto_GoogleUpdate::_internal_set_is_system_install(bool value) {
+  _has_bits_[0] |= 0x00000010u;
+  is_system_install_ = value;
+}
+inline void SystemProfileProto_GoogleUpdate::set_is_system_install(bool value) {
+  _internal_set_is_system_install(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.GoogleUpdate.is_system_install)
+}
+
+// optional int64 last_automatic_start_timestamp = 2;
+inline bool SystemProfileProto_GoogleUpdate::_internal_has_last_automatic_start_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate::has_last_automatic_start_timestamp() const {
+  return _internal_has_last_automatic_start_timestamp();
+}
+inline void SystemProfileProto_GoogleUpdate::clear_last_automatic_start_timestamp() {
+  last_automatic_start_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_GoogleUpdate::_internal_last_automatic_start_timestamp() const {
+  return last_automatic_start_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_GoogleUpdate::last_automatic_start_timestamp() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.last_automatic_start_timestamp)
+  return _internal_last_automatic_start_timestamp();
+}
+inline void SystemProfileProto_GoogleUpdate::_internal_set_last_automatic_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000004u;
+  last_automatic_start_timestamp_ = value;
+}
+inline void SystemProfileProto_GoogleUpdate::set_last_automatic_start_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_automatic_start_timestamp(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.GoogleUpdate.last_automatic_start_timestamp)
+}
+
+// optional int64 last_update_check_timestamp = 3;
+inline bool SystemProfileProto_GoogleUpdate::_internal_has_last_update_check_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate::has_last_update_check_timestamp() const {
+  return _internal_has_last_update_check_timestamp();
+}
+inline void SystemProfileProto_GoogleUpdate::clear_last_update_check_timestamp() {
+  last_update_check_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_GoogleUpdate::_internal_last_update_check_timestamp() const {
+  return last_update_check_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_GoogleUpdate::last_update_check_timestamp() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.last_update_check_timestamp)
+  return _internal_last_update_check_timestamp();
+}
+inline void SystemProfileProto_GoogleUpdate::_internal_set_last_update_check_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000008u;
+  last_update_check_timestamp_ = value;
+}
+inline void SystemProfileProto_GoogleUpdate::set_last_update_check_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_last_update_check_timestamp(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.GoogleUpdate.last_update_check_timestamp)
+}
+
+// optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo google_update_status = 4;
+inline bool SystemProfileProto_GoogleUpdate::_internal_has_google_update_status() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || google_update_status_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate::has_google_update_status() const {
+  return _internal_has_google_update_status();
+}
+inline void SystemProfileProto_GoogleUpdate::clear_google_update_status() {
+  if (google_update_status_ != nullptr) google_update_status_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& SystemProfileProto_GoogleUpdate::_internal_google_update_status() const {
+  const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* p = google_update_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo*>(
+      &::metrics::_SystemProfileProto_GoogleUpdate_ProductInfo_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& SystemProfileProto_GoogleUpdate::google_update_status() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.google_update_status)
+  return _internal_google_update_status();
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* SystemProfileProto_GoogleUpdate::release_google_update_status() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.GoogleUpdate.google_update_status)
+  _has_bits_[0] &= ~0x00000001u;
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* temp = google_update_status_;
+  google_update_status_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* SystemProfileProto_GoogleUpdate::_internal_mutable_google_update_status() {
+  _has_bits_[0] |= 0x00000001u;
+  if (google_update_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_GoogleUpdate_ProductInfo>(GetArenaNoVirtual());
+    google_update_status_ = p;
+  }
+  return google_update_status_;
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* SystemProfileProto_GoogleUpdate::mutable_google_update_status() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.GoogleUpdate.google_update_status)
+  return _internal_mutable_google_update_status();
+}
+inline void SystemProfileProto_GoogleUpdate::set_allocated_google_update_status(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* google_update_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete google_update_status_;
+  }
+  if (google_update_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      google_update_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, google_update_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  google_update_status_ = google_update_status;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.GoogleUpdate.google_update_status)
+}
+
+// optional .metrics.SystemProfileProto.GoogleUpdate.ProductInfo client_status = 5;
+inline bool SystemProfileProto_GoogleUpdate::_internal_has_client_status() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  PROTOBUF_ASSUME(!value || client_status_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_GoogleUpdate::has_client_status() const {
+  return _internal_has_client_status();
+}
+inline void SystemProfileProto_GoogleUpdate::clear_client_status() {
+  if (client_status_ != nullptr) client_status_->Clear();
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& SystemProfileProto_GoogleUpdate::_internal_client_status() const {
+  const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* p = client_status_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo*>(
+      &::metrics::_SystemProfileProto_GoogleUpdate_ProductInfo_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo& SystemProfileProto_GoogleUpdate::client_status() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.GoogleUpdate.client_status)
+  return _internal_client_status();
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* SystemProfileProto_GoogleUpdate::release_client_status() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.GoogleUpdate.client_status)
+  _has_bits_[0] &= ~0x00000002u;
+  ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* temp = client_status_;
+  client_status_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* SystemProfileProto_GoogleUpdate::_internal_mutable_client_status() {
+  _has_bits_[0] |= 0x00000002u;
+  if (client_status_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_GoogleUpdate_ProductInfo>(GetArenaNoVirtual());
+    client_status_ = p;
+  }
+  return client_status_;
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* SystemProfileProto_GoogleUpdate::mutable_client_status() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.GoogleUpdate.client_status)
+  return _internal_mutable_client_status();
+}
+inline void SystemProfileProto_GoogleUpdate::set_allocated_client_status(::metrics::SystemProfileProto_GoogleUpdate_ProductInfo* client_status) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete client_status_;
+  }
+  if (client_status) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      client_status = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, client_status, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  client_status_ = client_status;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.GoogleUpdate.client_status)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Plugin
+
+// optional string name = 1;
+inline bool SystemProfileProto_Plugin::_internal_has_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Plugin::has_name() const {
+  return _internal_has_name();
+}
+inline void SystemProfileProto_Plugin::clear_name() {
+  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_Plugin::name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Plugin.name)
+  return _internal_name();
+}
+inline void SystemProfileProto_Plugin::set_name(const std::string& value) {
+  _internal_set_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Plugin.name)
+}
+inline std::string* SystemProfileProto_Plugin::mutable_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Plugin.name)
+  return _internal_mutable_name();
+}
+inline const std::string& SystemProfileProto_Plugin::_internal_name() const {
+  return name_.GetNoArena();
+}
+inline void SystemProfileProto_Plugin::_internal_set_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Plugin::set_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Plugin.name)
+}
+inline void SystemProfileProto_Plugin::set_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Plugin.name)
+}
+inline void SystemProfileProto_Plugin::set_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Plugin.name)
+}
+inline std::string* SystemProfileProto_Plugin::_internal_mutable_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Plugin::release_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Plugin.name)
+  if (!_internal_has_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Plugin::set_allocated_name(std::string* name) {
+  if (name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Plugin.name)
+}
+
+// optional string filename = 2;
+inline bool SystemProfileProto_Plugin::_internal_has_filename() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Plugin::has_filename() const {
+  return _internal_has_filename();
+}
+inline void SystemProfileProto_Plugin::clear_filename() {
+  filename_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemProfileProto_Plugin::filename() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Plugin.filename)
+  return _internal_filename();
+}
+inline void SystemProfileProto_Plugin::set_filename(const std::string& value) {
+  _internal_set_filename(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Plugin.filename)
+}
+inline std::string* SystemProfileProto_Plugin::mutable_filename() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Plugin.filename)
+  return _internal_mutable_filename();
+}
+inline const std::string& SystemProfileProto_Plugin::_internal_filename() const {
+  return filename_.GetNoArena();
+}
+inline void SystemProfileProto_Plugin::_internal_set_filename(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  filename_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Plugin::set_filename(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  filename_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Plugin.filename)
+}
+inline void SystemProfileProto_Plugin::set_filename(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  filename_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Plugin.filename)
+}
+inline void SystemProfileProto_Plugin::set_filename(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  filename_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Plugin.filename)
+}
+inline std::string* SystemProfileProto_Plugin::_internal_mutable_filename() {
+  _has_bits_[0] |= 0x00000002u;
+  return filename_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Plugin::release_filename() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Plugin.filename)
+  if (!_internal_has_filename()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return filename_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Plugin::set_allocated_filename(std::string* filename) {
+  if (filename != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  filename_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), filename);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Plugin.filename)
+}
+
+// optional string version = 3;
+inline bool SystemProfileProto_Plugin::_internal_has_version() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Plugin::has_version() const {
+  return _internal_has_version();
+}
+inline void SystemProfileProto_Plugin::clear_version() {
+  version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SystemProfileProto_Plugin::version() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Plugin.version)
+  return _internal_version();
+}
+inline void SystemProfileProto_Plugin::set_version(const std::string& value) {
+  _internal_set_version(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Plugin.version)
+}
+inline std::string* SystemProfileProto_Plugin::mutable_version() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Plugin.version)
+  return _internal_mutable_version();
+}
+inline const std::string& SystemProfileProto_Plugin::_internal_version() const {
+  return version_.GetNoArena();
+}
+inline void SystemProfileProto_Plugin::_internal_set_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_Plugin::set_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.Plugin.version)
+}
+inline void SystemProfileProto_Plugin::set_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.Plugin.version)
+}
+inline void SystemProfileProto_Plugin::set_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.Plugin.version)
+}
+inline std::string* SystemProfileProto_Plugin::_internal_mutable_version() {
+  _has_bits_[0] |= 0x00000004u;
+  return version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_Plugin::release_version() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Plugin.version)
+  if (!_internal_has_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_Plugin::set_allocated_version(std::string* version) {
+  if (version != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), version);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Plugin.version)
+}
+
+// optional bool is_disabled = 4;
+inline bool SystemProfileProto_Plugin::_internal_has_is_disabled() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Plugin::has_is_disabled() const {
+  return _internal_has_is_disabled();
+}
+inline void SystemProfileProto_Plugin::clear_is_disabled() {
+  is_disabled_ = false;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline bool SystemProfileProto_Plugin::_internal_is_disabled() const {
+  return is_disabled_;
+}
+inline bool SystemProfileProto_Plugin::is_disabled() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Plugin.is_disabled)
+  return _internal_is_disabled();
+}
+inline void SystemProfileProto_Plugin::_internal_set_is_disabled(bool value) {
+  _has_bits_[0] |= 0x00000008u;
+  is_disabled_ = value;
+}
+inline void SystemProfileProto_Plugin::set_is_disabled(bool value) {
+  _internal_set_is_disabled(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Plugin.is_disabled)
+}
+
+// optional bool is_pepper = 5;
+inline bool SystemProfileProto_Plugin::_internal_has_is_pepper() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Plugin::has_is_pepper() const {
+  return _internal_has_is_pepper();
+}
+inline void SystemProfileProto_Plugin::clear_is_pepper() {
+  is_pepper_ = false;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline bool SystemProfileProto_Plugin::_internal_is_pepper() const {
+  return is_pepper_;
+}
+inline bool SystemProfileProto_Plugin::is_pepper() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Plugin.is_pepper)
+  return _internal_is_pepper();
+}
+inline void SystemProfileProto_Plugin::_internal_set_is_pepper(bool value) {
+  _has_bits_[0] |= 0x00000010u;
+  is_pepper_ = value;
+}
+inline void SystemProfileProto_Plugin::set_is_pepper(bool value) {
+  _internal_set_is_pepper(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Plugin.is_pepper)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Stability_PluginStability
+
+// optional .metrics.SystemProfileProto.Plugin plugin = 1;
+inline bool SystemProfileProto_Stability_PluginStability::_internal_has_plugin() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  PROTOBUF_ASSUME(!value || plugin_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto_Stability_PluginStability::has_plugin() const {
+  return _internal_has_plugin();
+}
+inline void SystemProfileProto_Stability_PluginStability::clear_plugin() {
+  if (plugin_ != nullptr) plugin_->Clear();
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const ::metrics::SystemProfileProto_Plugin& SystemProfileProto_Stability_PluginStability::_internal_plugin() const {
+  const ::metrics::SystemProfileProto_Plugin* p = plugin_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Plugin*>(
+      &::metrics::_SystemProfileProto_Plugin_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Plugin& SystemProfileProto_Stability_PluginStability::plugin() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.PluginStability.plugin)
+  return _internal_plugin();
+}
+inline ::metrics::SystemProfileProto_Plugin* SystemProfileProto_Stability_PluginStability::release_plugin() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.Stability.PluginStability.plugin)
+  _has_bits_[0] &= ~0x00000001u;
+  ::metrics::SystemProfileProto_Plugin* temp = plugin_;
+  plugin_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Plugin* SystemProfileProto_Stability_PluginStability::_internal_mutable_plugin() {
+  _has_bits_[0] |= 0x00000001u;
+  if (plugin_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Plugin>(GetArenaNoVirtual());
+    plugin_ = p;
+  }
+  return plugin_;
+}
+inline ::metrics::SystemProfileProto_Plugin* SystemProfileProto_Stability_PluginStability::mutable_plugin() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Stability.PluginStability.plugin)
+  return _internal_mutable_plugin();
+}
+inline void SystemProfileProto_Stability_PluginStability::set_allocated_plugin(::metrics::SystemProfileProto_Plugin* plugin) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete plugin_;
+  }
+  if (plugin) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      plugin = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, plugin, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  plugin_ = plugin;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.Stability.PluginStability.plugin)
+}
+
+// optional int32 launch_count = 2;
+inline bool SystemProfileProto_Stability_PluginStability::_internal_has_launch_count() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability_PluginStability::has_launch_count() const {
+  return _internal_has_launch_count();
+}
+inline void SystemProfileProto_Stability_PluginStability::clear_launch_count() {
+  launch_count_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability_PluginStability::_internal_launch_count() const {
+  return launch_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability_PluginStability::launch_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.PluginStability.launch_count)
+  return _internal_launch_count();
+}
+inline void SystemProfileProto_Stability_PluginStability::_internal_set_launch_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  launch_count_ = value;
+}
+inline void SystemProfileProto_Stability_PluginStability::set_launch_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_launch_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.PluginStability.launch_count)
+}
+
+// optional int32 instance_count = 3;
+inline bool SystemProfileProto_Stability_PluginStability::_internal_has_instance_count() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability_PluginStability::has_instance_count() const {
+  return _internal_has_instance_count();
+}
+inline void SystemProfileProto_Stability_PluginStability::clear_instance_count() {
+  instance_count_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability_PluginStability::_internal_instance_count() const {
+  return instance_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability_PluginStability::instance_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.PluginStability.instance_count)
+  return _internal_instance_count();
+}
+inline void SystemProfileProto_Stability_PluginStability::_internal_set_instance_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  instance_count_ = value;
+}
+inline void SystemProfileProto_Stability_PluginStability::set_instance_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_instance_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.PluginStability.instance_count)
+}
+
+// optional int32 crash_count = 4;
+inline bool SystemProfileProto_Stability_PluginStability::_internal_has_crash_count() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability_PluginStability::has_crash_count() const {
+  return _internal_has_crash_count();
+}
+inline void SystemProfileProto_Stability_PluginStability::clear_crash_count() {
+  crash_count_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability_PluginStability::_internal_crash_count() const {
+  return crash_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability_PluginStability::crash_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.PluginStability.crash_count)
+  return _internal_crash_count();
+}
+inline void SystemProfileProto_Stability_PluginStability::_internal_set_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  crash_count_ = value;
+}
+inline void SystemProfileProto_Stability_PluginStability::set_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_crash_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.PluginStability.crash_count)
+}
+
+// optional int32 loading_error_count = 5;
+inline bool SystemProfileProto_Stability_PluginStability::_internal_has_loading_error_count() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability_PluginStability::has_loading_error_count() const {
+  return _internal_has_loading_error_count();
+}
+inline void SystemProfileProto_Stability_PluginStability::clear_loading_error_count() {
+  loading_error_count_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability_PluginStability::_internal_loading_error_count() const {
+  return loading_error_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability_PluginStability::loading_error_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.PluginStability.loading_error_count)
+  return _internal_loading_error_count();
+}
+inline void SystemProfileProto_Stability_PluginStability::_internal_set_loading_error_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  loading_error_count_ = value;
+}
+inline void SystemProfileProto_Stability_PluginStability::set_loading_error_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_loading_error_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.PluginStability.loading_error_count)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_Stability
+
+// optional int64 incremental_uptime_sec = 1;
+inline bool SystemProfileProto_Stability::_internal_has_incremental_uptime_sec() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_incremental_uptime_sec() const {
+  return _internal_has_incremental_uptime_sec();
+}
+inline void SystemProfileProto_Stability::clear_incremental_uptime_sec() {
+  incremental_uptime_sec_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_Stability::_internal_incremental_uptime_sec() const {
+  return incremental_uptime_sec_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_Stability::incremental_uptime_sec() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.incremental_uptime_sec)
+  return _internal_incremental_uptime_sec();
+}
+inline void SystemProfileProto_Stability::_internal_set_incremental_uptime_sec(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  incremental_uptime_sec_ = value;
+}
+inline void SystemProfileProto_Stability::set_incremental_uptime_sec(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_incremental_uptime_sec(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.incremental_uptime_sec)
+}
+
+// optional int64 uptime_sec = 23;
+inline bool SystemProfileProto_Stability::_internal_has_uptime_sec() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_uptime_sec() const {
+  return _internal_has_uptime_sec();
+}
+inline void SystemProfileProto_Stability::clear_uptime_sec() {
+  uptime_sec_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_Stability::_internal_uptime_sec() const {
+  return uptime_sec_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto_Stability::uptime_sec() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.uptime_sec)
+  return _internal_uptime_sec();
+}
+inline void SystemProfileProto_Stability::_internal_set_uptime_sec(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00010000u;
+  uptime_sec_ = value;
+}
+inline void SystemProfileProto_Stability::set_uptime_sec(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_uptime_sec(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.uptime_sec)
+}
+
+// optional int32 page_load_count = 2;
+inline bool SystemProfileProto_Stability::_internal_has_page_load_count() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_page_load_count() const {
+  return _internal_has_page_load_count();
+}
+inline void SystemProfileProto_Stability::clear_page_load_count() {
+  page_load_count_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_page_load_count() const {
+  return page_load_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::page_load_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.page_load_count)
+  return _internal_page_load_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_page_load_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  page_load_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_page_load_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_page_load_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.page_load_count)
+}
+
+// optional int32 renderer_crash_count = 3;
+inline bool SystemProfileProto_Stability::_internal_has_renderer_crash_count() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_renderer_crash_count() const {
+  return _internal_has_renderer_crash_count();
+}
+inline void SystemProfileProto_Stability::clear_renderer_crash_count() {
+  renderer_crash_count_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_renderer_crash_count() const {
+  return renderer_crash_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::renderer_crash_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.renderer_crash_count)
+  return _internal_renderer_crash_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_renderer_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  renderer_crash_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_renderer_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_renderer_crash_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.renderer_crash_count)
+}
+
+// optional int32 renderer_hang_count = 4;
+inline bool SystemProfileProto_Stability::_internal_has_renderer_hang_count() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_renderer_hang_count() const {
+  return _internal_has_renderer_hang_count();
+}
+inline void SystemProfileProto_Stability::clear_renderer_hang_count() {
+  renderer_hang_count_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_renderer_hang_count() const {
+  return renderer_hang_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::renderer_hang_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.renderer_hang_count)
+  return _internal_renderer_hang_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_renderer_hang_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  renderer_hang_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_renderer_hang_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_renderer_hang_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.renderer_hang_count)
+}
+
+// optional int32 extension_renderer_crash_count = 5;
+inline bool SystemProfileProto_Stability::_internal_has_extension_renderer_crash_count() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_extension_renderer_crash_count() const {
+  return _internal_has_extension_renderer_crash_count();
+}
+inline void SystemProfileProto_Stability::clear_extension_renderer_crash_count() {
+  extension_renderer_crash_count_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_extension_renderer_crash_count() const {
+  return extension_renderer_crash_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::extension_renderer_crash_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.extension_renderer_crash_count)
+  return _internal_extension_renderer_crash_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_extension_renderer_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  extension_renderer_crash_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_extension_renderer_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_extension_renderer_crash_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.extension_renderer_crash_count)
+}
+
+// optional int32 child_process_crash_count = 6;
+inline bool SystemProfileProto_Stability::_internal_has_child_process_crash_count() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_child_process_crash_count() const {
+  return _internal_has_child_process_crash_count();
+}
+inline void SystemProfileProto_Stability::clear_child_process_crash_count() {
+  child_process_crash_count_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_child_process_crash_count() const {
+  return child_process_crash_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::child_process_crash_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.child_process_crash_count)
+  return _internal_child_process_crash_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_child_process_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  child_process_crash_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_child_process_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_child_process_crash_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.child_process_crash_count)
+}
+
+// optional int32 other_user_crash_count = 7;
+inline bool SystemProfileProto_Stability::_internal_has_other_user_crash_count() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_other_user_crash_count() const {
+  return _internal_has_other_user_crash_count();
+}
+inline void SystemProfileProto_Stability::clear_other_user_crash_count() {
+  other_user_crash_count_ = 0;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_other_user_crash_count() const {
+  return other_user_crash_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::other_user_crash_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.other_user_crash_count)
+  return _internal_other_user_crash_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_other_user_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000040u;
+  other_user_crash_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_other_user_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_other_user_crash_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.other_user_crash_count)
+}
+
+// optional int32 kernel_crash_count = 8;
+inline bool SystemProfileProto_Stability::_internal_has_kernel_crash_count() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_kernel_crash_count() const {
+  return _internal_has_kernel_crash_count();
+}
+inline void SystemProfileProto_Stability::clear_kernel_crash_count() {
+  kernel_crash_count_ = 0;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_kernel_crash_count() const {
+  return kernel_crash_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::kernel_crash_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.kernel_crash_count)
+  return _internal_kernel_crash_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_kernel_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000080u;
+  kernel_crash_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_kernel_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_kernel_crash_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.kernel_crash_count)
+}
+
+// optional int32 unclean_system_shutdown_count = 9;
+inline bool SystemProfileProto_Stability::_internal_has_unclean_system_shutdown_count() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_unclean_system_shutdown_count() const {
+  return _internal_has_unclean_system_shutdown_count();
+}
+inline void SystemProfileProto_Stability::clear_unclean_system_shutdown_count() {
+  unclean_system_shutdown_count_ = 0;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_unclean_system_shutdown_count() const {
+  return unclean_system_shutdown_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::unclean_system_shutdown_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.unclean_system_shutdown_count)
+  return _internal_unclean_system_shutdown_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_unclean_system_shutdown_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000100u;
+  unclean_system_shutdown_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_unclean_system_shutdown_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_unclean_system_shutdown_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.unclean_system_shutdown_count)
+}
+
+// optional int32 launch_count = 15;
+inline bool SystemProfileProto_Stability::_internal_has_launch_count() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_launch_count() const {
+  return _internal_has_launch_count();
+}
+inline void SystemProfileProto_Stability::clear_launch_count() {
+  launch_count_ = 0;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_launch_count() const {
+  return launch_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::launch_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.launch_count)
+  return _internal_launch_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_launch_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000200u;
+  launch_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_launch_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_launch_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.launch_count)
+}
+
+// optional int32 crash_count = 16;
+inline bool SystemProfileProto_Stability::_internal_has_crash_count() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_crash_count() const {
+  return _internal_has_crash_count();
+}
+inline void SystemProfileProto_Stability::clear_crash_count() {
+  crash_count_ = 0;
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_crash_count() const {
+  return crash_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::crash_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.crash_count)
+  return _internal_crash_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000400u;
+  crash_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_crash_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_crash_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.crash_count)
+}
+
+// optional int32 incomplete_shutdown_count = 17;
+inline bool SystemProfileProto_Stability::_internal_has_incomplete_shutdown_count() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_incomplete_shutdown_count() const {
+  return _internal_has_incomplete_shutdown_count();
+}
+inline void SystemProfileProto_Stability::clear_incomplete_shutdown_count() {
+  incomplete_shutdown_count_ = 0;
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_incomplete_shutdown_count() const {
+  return incomplete_shutdown_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::incomplete_shutdown_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.incomplete_shutdown_count)
+  return _internal_incomplete_shutdown_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_incomplete_shutdown_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000800u;
+  incomplete_shutdown_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_incomplete_shutdown_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_incomplete_shutdown_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.incomplete_shutdown_count)
+}
+
+// optional int32 breakpad_registration_success_count = 18;
+inline bool SystemProfileProto_Stability::_internal_has_breakpad_registration_success_count() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_breakpad_registration_success_count() const {
+  return _internal_has_breakpad_registration_success_count();
+}
+inline void SystemProfileProto_Stability::clear_breakpad_registration_success_count() {
+  breakpad_registration_success_count_ = 0;
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_breakpad_registration_success_count() const {
+  return breakpad_registration_success_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::breakpad_registration_success_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.breakpad_registration_success_count)
+  return _internal_breakpad_registration_success_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_breakpad_registration_success_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00001000u;
+  breakpad_registration_success_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_breakpad_registration_success_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_breakpad_registration_success_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.breakpad_registration_success_count)
+}
+
+// optional int32 breakpad_registration_failure_count = 19;
+inline bool SystemProfileProto_Stability::_internal_has_breakpad_registration_failure_count() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_breakpad_registration_failure_count() const {
+  return _internal_has_breakpad_registration_failure_count();
+}
+inline void SystemProfileProto_Stability::clear_breakpad_registration_failure_count() {
+  breakpad_registration_failure_count_ = 0;
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_breakpad_registration_failure_count() const {
+  return breakpad_registration_failure_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::breakpad_registration_failure_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.breakpad_registration_failure_count)
+  return _internal_breakpad_registration_failure_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_breakpad_registration_failure_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00004000u;
+  breakpad_registration_failure_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_breakpad_registration_failure_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_breakpad_registration_failure_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.breakpad_registration_failure_count)
+}
+
+// optional int32 debugger_present_count = 20;
+inline bool SystemProfileProto_Stability::_internal_has_debugger_present_count() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_debugger_present_count() const {
+  return _internal_has_debugger_present_count();
+}
+inline void SystemProfileProto_Stability::clear_debugger_present_count() {
+  debugger_present_count_ = 0;
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_debugger_present_count() const {
+  return debugger_present_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::debugger_present_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.debugger_present_count)
+  return _internal_debugger_present_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_debugger_present_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00008000u;
+  debugger_present_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_debugger_present_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_debugger_present_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.debugger_present_count)
+}
+
+// optional int32 debugger_not_present_count = 21;
+inline bool SystemProfileProto_Stability::_internal_has_debugger_not_present_count() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_Stability::has_debugger_not_present_count() const {
+  return _internal_has_debugger_not_present_count();
+}
+inline void SystemProfileProto_Stability::clear_debugger_not_present_count() {
+  debugger_not_present_count_ = 0;
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::_internal_debugger_not_present_count() const {
+  return debugger_not_present_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_Stability::debugger_not_present_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.debugger_not_present_count)
+  return _internal_debugger_not_present_count();
+}
+inline void SystemProfileProto_Stability::_internal_set_debugger_not_present_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00002000u;
+  debugger_not_present_count_ = value;
+}
+inline void SystemProfileProto_Stability::set_debugger_not_present_count(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_debugger_not_present_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.Stability.debugger_not_present_count)
+}
+
+// repeated .metrics.SystemProfileProto.Stability.PluginStability plugin_stability = 22;
+inline int SystemProfileProto_Stability::_internal_plugin_stability_size() const {
+  return plugin_stability_.size();
+}
+inline int SystemProfileProto_Stability::plugin_stability_size() const {
+  return _internal_plugin_stability_size();
+}
+inline void SystemProfileProto_Stability::clear_plugin_stability() {
+  plugin_stability_.Clear();
+}
+inline ::metrics::SystemProfileProto_Stability_PluginStability* SystemProfileProto_Stability::mutable_plugin_stability(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.Stability.plugin_stability)
+  return plugin_stability_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Stability_PluginStability >*
+SystemProfileProto_Stability::mutable_plugin_stability() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.Stability.plugin_stability)
+  return &plugin_stability_;
+}
+inline const ::metrics::SystemProfileProto_Stability_PluginStability& SystemProfileProto_Stability::_internal_plugin_stability(int index) const {
+  return plugin_stability_.Get(index);
+}
+inline const ::metrics::SystemProfileProto_Stability_PluginStability& SystemProfileProto_Stability::plugin_stability(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.Stability.plugin_stability)
+  return _internal_plugin_stability(index);
+}
+inline ::metrics::SystemProfileProto_Stability_PluginStability* SystemProfileProto_Stability::_internal_add_plugin_stability() {
+  return plugin_stability_.Add();
+}
+inline ::metrics::SystemProfileProto_Stability_PluginStability* SystemProfileProto_Stability::add_plugin_stability() {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.Stability.plugin_stability)
+  return _internal_add_plugin_stability();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Stability_PluginStability >&
+SystemProfileProto_Stability::plugin_stability() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.Stability.plugin_stability)
+  return plugin_stability_;
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_FieldTrial
+
+// optional fixed32 name_id = 1;
+inline bool SystemProfileProto_FieldTrial::_internal_has_name_id() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_FieldTrial::has_name_id() const {
+  return _internal_has_name_id();
+}
+inline void SystemProfileProto_FieldTrial::clear_name_id() {
+  name_id_ = 0u;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_FieldTrial::_internal_name_id() const {
+  return name_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_FieldTrial::name_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.FieldTrial.name_id)
+  return _internal_name_id();
+}
+inline void SystemProfileProto_FieldTrial::_internal_set_name_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_id_ = value;
+}
+inline void SystemProfileProto_FieldTrial::set_name_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_name_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.FieldTrial.name_id)
+}
+
+// optional fixed32 group_id = 2;
+inline bool SystemProfileProto_FieldTrial::_internal_has_group_id() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_FieldTrial::has_group_id() const {
+  return _internal_has_group_id();
+}
+inline void SystemProfileProto_FieldTrial::clear_group_id() {
+  group_id_ = 0u;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_FieldTrial::_internal_group_id() const {
+  return group_id_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto_FieldTrial::group_id() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.FieldTrial.group_id)
+  return _internal_group_id();
+}
+inline void SystemProfileProto_FieldTrial::_internal_set_group_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  group_id_ = value;
+}
+inline void SystemProfileProto_FieldTrial::set_group_id(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_group_id(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.FieldTrial.group_id)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_ExternalAudioVideoDevice_AudioDescription
+
+// optional .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.AudioFormat audio_format = 1;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_has_audio_format() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::has_audio_format() const {
+  return _internal_has_audio_format();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::clear_audio_format() {
+  audio_format_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_audio_format() const {
+  return static_cast< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat >(audio_format_);
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::audio_format() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.audio_format)
+  return _internal_audio_format();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_set_audio_format(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat value) {
+  assert(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat_IsValid(value));
+  _has_bits_[0] |= 0x00000001u;
+  audio_format_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::set_audio_format(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat value) {
+  _internal_set_audio_format(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.audio_format)
+}
+
+// optional int32 num_channels = 2;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_has_num_channels() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::has_num_channels() const {
+  return _internal_has_num_channels();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::clear_num_channels() {
+  num_channels_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_num_channels() const {
+  return num_channels_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::num_channels() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.num_channels)
+  return _internal_num_channels();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_set_num_channels(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  num_channels_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::set_num_channels(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_channels(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.num_channels)
+}
+
+// repeated int32 sample_frequency_hz = 3;
+inline int SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_sample_frequency_hz_size() const {
+  return sample_frequency_hz_.size();
+}
+inline int SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::sample_frequency_hz_size() const {
+  return _internal_sample_frequency_hz_size();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::clear_sample_frequency_hz() {
+  sample_frequency_hz_.Clear();
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_sample_frequency_hz(int index) const {
+  return sample_frequency_hz_.Get(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::sample_frequency_hz(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.sample_frequency_hz)
+  return _internal_sample_frequency_hz(index);
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::set_sample_frequency_hz(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
+  sample_frequency_hz_.Set(index, value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.sample_frequency_hz)
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_add_sample_frequency_hz(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  sample_frequency_hz_.Add(value);
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::add_sample_frequency_hz(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_add_sample_frequency_hz(value);
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.sample_frequency_hz)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_sample_frequency_hz() const {
+  return sample_frequency_hz_;
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::sample_frequency_hz() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.sample_frequency_hz)
+  return _internal_sample_frequency_hz();
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_mutable_sample_frequency_hz() {
+  return &sample_frequency_hz_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::mutable_sample_frequency_hz() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.sample_frequency_hz)
+  return _internal_mutable_sample_frequency_hz();
+}
+
+// optional int32 max_bit_rate_per_second = 4;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_has_max_bit_rate_per_second() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::has_max_bit_rate_per_second() const {
+  return _internal_has_max_bit_rate_per_second();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::clear_max_bit_rate_per_second() {
+  max_bit_rate_per_second_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_max_bit_rate_per_second() const {
+  return max_bit_rate_per_second_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::max_bit_rate_per_second() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.max_bit_rate_per_second)
+  return _internal_max_bit_rate_per_second();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_set_max_bit_rate_per_second(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  max_bit_rate_per_second_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::set_max_bit_rate_per_second(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_max_bit_rate_per_second(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.max_bit_rate_per_second)
+}
+
+// optional int32 bit_depth = 5;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_has_bit_depth() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::has_bit_depth() const {
+  return _internal_has_bit_depth();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::clear_bit_depth() {
+  bit_depth_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_bit_depth() const {
+  return bit_depth_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::bit_depth() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.bit_depth)
+  return _internal_bit_depth();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::_internal_set_bit_depth(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  bit_depth_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_AudioDescription::set_bit_depth(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_bit_depth(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription.bit_depth)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_ExternalAudioVideoDevice_CECCommand
+
+// optional int32 opcode = 1;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_has_opcode() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::has_opcode() const {
+  return _internal_has_opcode();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::clear_opcode() {
+  opcode_ = 0;
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_opcode() const {
+  return opcode_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::opcode() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.opcode)
+  return _internal_opcode();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_set_opcode(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000001u;
+  opcode_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::set_opcode(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_opcode(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.opcode)
+}
+
+// optional int32 num_received_direct = 2;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_has_num_received_direct() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::has_num_received_direct() const {
+  return _internal_has_num_received_direct();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::clear_num_received_direct() {
+  num_received_direct_ = 0;
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_num_received_direct() const {
+  return num_received_direct_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::num_received_direct() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_received_direct)
+  return _internal_num_received_direct();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_set_num_received_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000002u;
+  num_received_direct_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::set_num_received_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_received_direct(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_received_direct)
+}
+
+// optional int32 num_received_broadcast = 3;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_has_num_received_broadcast() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::has_num_received_broadcast() const {
+  return _internal_has_num_received_broadcast();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::clear_num_received_broadcast() {
+  num_received_broadcast_ = 0;
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_num_received_broadcast() const {
+  return num_received_broadcast_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::num_received_broadcast() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_received_broadcast)
+  return _internal_num_received_broadcast();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_set_num_received_broadcast(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000004u;
+  num_received_broadcast_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::set_num_received_broadcast(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_received_broadcast(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_received_broadcast)
+}
+
+// optional int32 num_sent_direct = 4;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_has_num_sent_direct() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::has_num_sent_direct() const {
+  return _internal_has_num_sent_direct();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::clear_num_sent_direct() {
+  num_sent_direct_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_num_sent_direct() const {
+  return num_sent_direct_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::num_sent_direct() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_sent_direct)
+  return _internal_num_sent_direct();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_set_num_sent_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  num_sent_direct_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::set_num_sent_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_sent_direct(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_sent_direct)
+}
+
+// optional int32 num_sent_broadcast = 5;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_has_num_sent_broadcast() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::has_num_sent_broadcast() const {
+  return _internal_has_num_sent_broadcast();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::clear_num_sent_broadcast() {
+  num_sent_broadcast_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_num_sent_broadcast() const {
+  return num_sent_broadcast_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::num_sent_broadcast() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_sent_broadcast)
+  return _internal_num_sent_broadcast();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_set_num_sent_broadcast(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  num_sent_broadcast_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::set_num_sent_broadcast(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_sent_broadcast(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_sent_broadcast)
+}
+
+// optional int32 num_aborted_unknown_reason = 6;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_has_num_aborted_unknown_reason() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::has_num_aborted_unknown_reason() const {
+  return _internal_has_num_aborted_unknown_reason();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::clear_num_aborted_unknown_reason() {
+  num_aborted_unknown_reason_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_num_aborted_unknown_reason() const {
+  return num_aborted_unknown_reason_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::num_aborted_unknown_reason() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_aborted_unknown_reason)
+  return _internal_num_aborted_unknown_reason();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_set_num_aborted_unknown_reason(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  num_aborted_unknown_reason_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::set_num_aborted_unknown_reason(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_aborted_unknown_reason(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_aborted_unknown_reason)
+}
+
+// optional int32 num_aborted_unrecognized = 7;
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_has_num_aborted_unrecognized() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice_CECCommand::has_num_aborted_unrecognized() const {
+  return _internal_has_num_aborted_unrecognized();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::clear_num_aborted_unrecognized() {
+  num_aborted_unrecognized_ = 0;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_num_aborted_unrecognized() const {
+  return num_aborted_unrecognized_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice_CECCommand::num_aborted_unrecognized() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_aborted_unrecognized)
+  return _internal_num_aborted_unrecognized();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::_internal_set_num_aborted_unrecognized(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000040u;
+  num_aborted_unrecognized_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice_CECCommand::set_num_aborted_unrecognized(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_num_aborted_unrecognized(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand.num_aborted_unrecognized)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_ExternalAudioVideoDevice
+
+// optional string manufacturer_name = 1;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_manufacturer_name() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_manufacturer_name() const {
+  return _internal_has_manufacturer_name();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_manufacturer_name() {
+  manufacturer_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_ExternalAudioVideoDevice::manufacturer_name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacturer_name)
+  return _internal_manufacturer_name();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_manufacturer_name(const std::string& value) {
+  _internal_set_manufacturer_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacturer_name)
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::mutable_manufacturer_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacturer_name)
+  return _internal_mutable_manufacturer_name();
+}
+inline const std::string& SystemProfileProto_ExternalAudioVideoDevice::_internal_manufacturer_name() const {
+  return manufacturer_name_.GetNoArena();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_manufacturer_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  manufacturer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_manufacturer_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  manufacturer_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacturer_name)
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_manufacturer_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  manufacturer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacturer_name)
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_manufacturer_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  manufacturer_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacturer_name)
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::_internal_mutable_manufacturer_name() {
+  _has_bits_[0] |= 0x00000001u;
+  return manufacturer_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::release_manufacturer_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacturer_name)
+  if (!_internal_has_manufacturer_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return manufacturer_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_allocated_manufacturer_name(std::string* manufacturer_name) {
+  if (manufacturer_name != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  manufacturer_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), manufacturer_name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacturer_name)
+}
+
+// optional string model_name = 2;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_model_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_model_name() const {
+  return _internal_has_model_name();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_model_name() {
+  model_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemProfileProto_ExternalAudioVideoDevice::model_name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.model_name)
+  return _internal_model_name();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_model_name(const std::string& value) {
+  _internal_set_model_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.model_name)
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::mutable_model_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAudioVideoDevice.model_name)
+  return _internal_mutable_model_name();
+}
+inline const std::string& SystemProfileProto_ExternalAudioVideoDevice::_internal_model_name() const {
+  return model_name_.GetNoArena();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_model_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_model_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.ExternalAudioVideoDevice.model_name)
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_model_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.ExternalAudioVideoDevice.model_name)
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_model_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.ExternalAudioVideoDevice.model_name)
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::_internal_mutable_model_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return model_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::release_model_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.ExternalAudioVideoDevice.model_name)
+  if (!_internal_has_model_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return model_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_allocated_model_name(std::string* model_name) {
+  if (model_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  model_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), model_name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.ExternalAudioVideoDevice.model_name)
+}
+
+// optional string product_code = 3;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_product_code() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_product_code() const {
+  return _internal_has_product_code();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_product_code() {
+  product_code_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SystemProfileProto_ExternalAudioVideoDevice::product_code() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.product_code)
+  return _internal_product_code();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_product_code(const std::string& value) {
+  _internal_set_product_code(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.product_code)
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::mutable_product_code() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAudioVideoDevice.product_code)
+  return _internal_mutable_product_code();
+}
+inline const std::string& SystemProfileProto_ExternalAudioVideoDevice::_internal_product_code() const {
+  return product_code_.GetNoArena();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_product_code(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  product_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_product_code(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  product_code_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.ExternalAudioVideoDevice.product_code)
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_product_code(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  product_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.ExternalAudioVideoDevice.product_code)
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_product_code(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  product_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.ExternalAudioVideoDevice.product_code)
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::_internal_mutable_product_code() {
+  _has_bits_[0] |= 0x00000004u;
+  return product_code_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_ExternalAudioVideoDevice::release_product_code() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.ExternalAudioVideoDevice.product_code)
+  if (!_internal_has_product_code()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return product_code_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_allocated_product_code(std::string* product_code) {
+  if (product_code != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  product_code_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), product_code);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.ExternalAudioVideoDevice.product_code)
+}
+
+// repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AVDeviceType av_device_type = 4;
+inline int SystemProfileProto_ExternalAudioVideoDevice::_internal_av_device_type_size() const {
+  return av_device_type_.size();
+}
+inline int SystemProfileProto_ExternalAudioVideoDevice::av_device_type_size() const {
+  return _internal_av_device_type_size();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_av_device_type() {
+  av_device_type_.Clear();
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::_internal_av_device_type(int index) const {
+  return static_cast< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType >(av_device_type_.Get(index));
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType SystemProfileProto_ExternalAudioVideoDevice::av_device_type(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.av_device_type)
+  return _internal_av_device_type(index);
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_av_device_type(int index, ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType value) {
+  assert(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_IsValid(value));
+  av_device_type_.Set(index, value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.av_device_type)
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_add_av_device_type(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType value) {
+  assert(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType_IsValid(value));
+  av_device_type_.Add(value);
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::add_av_device_type(::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType value) {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.ExternalAudioVideoDevice.av_device_type)
+  _internal_add_av_device_type(value);
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>&
+SystemProfileProto_ExternalAudioVideoDevice::av_device_type() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.ExternalAudioVideoDevice.av_device_type)
+  return av_device_type_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+SystemProfileProto_ExternalAudioVideoDevice::_internal_mutable_av_device_type() {
+  return &av_device_type_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField<int>*
+SystemProfileProto_ExternalAudioVideoDevice::mutable_av_device_type() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.ExternalAudioVideoDevice.av_device_type)
+  return _internal_mutable_av_device_type();
+}
+
+// optional int32 manufacture_year = 5;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_manufacture_year() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_manufacture_year() const {
+  return _internal_has_manufacture_year();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_manufacture_year() {
+  manufacture_year_ = 0;
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::_internal_manufacture_year() const {
+  return manufacture_year_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::manufacture_year() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacture_year)
+  return _internal_manufacture_year();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_manufacture_year(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000008u;
+  manufacture_year_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_manufacture_year(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_manufacture_year(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacture_year)
+}
+
+// optional int32 manufacture_week = 6;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_manufacture_week() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_manufacture_week() const {
+  return _internal_has_manufacture_week();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_manufacture_week() {
+  manufacture_week_ = 0;
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::_internal_manufacture_week() const {
+  return manufacture_week_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::manufacture_week() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacture_week)
+  return _internal_manufacture_week();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_manufacture_week(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000010u;
+  manufacture_week_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_manufacture_week(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_manufacture_week(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.manufacture_week)
+}
+
+// optional int32 horizontal_resolution = 7;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_horizontal_resolution() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_horizontal_resolution() const {
+  return _internal_has_horizontal_resolution();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_horizontal_resolution() {
+  horizontal_resolution_ = 0;
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::_internal_horizontal_resolution() const {
+  return horizontal_resolution_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::horizontal_resolution() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.horizontal_resolution)
+  return _internal_horizontal_resolution();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_horizontal_resolution(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000020u;
+  horizontal_resolution_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_horizontal_resolution(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_horizontal_resolution(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.horizontal_resolution)
+}
+
+// optional int32 vertical_resolution = 8;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_vertical_resolution() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_vertical_resolution() const {
+  return _internal_has_vertical_resolution();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_vertical_resolution() {
+  vertical_resolution_ = 0;
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::_internal_vertical_resolution() const {
+  return vertical_resolution_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::vertical_resolution() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.vertical_resolution)
+  return _internal_vertical_resolution();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_vertical_resolution(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000040u;
+  vertical_resolution_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_vertical_resolution(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_vertical_resolution(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.vertical_resolution)
+}
+
+// repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.AudioDescription audio_description = 9;
+inline int SystemProfileProto_ExternalAudioVideoDevice::_internal_audio_description_size() const {
+  return audio_description_.size();
+}
+inline int SystemProfileProto_ExternalAudioVideoDevice::audio_description_size() const {
+  return _internal_audio_description_size();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_audio_description() {
+  audio_description_.Clear();
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* SystemProfileProto_ExternalAudioVideoDevice::mutable_audio_description(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAudioVideoDevice.audio_description)
+  return audio_description_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription >*
+SystemProfileProto_ExternalAudioVideoDevice::mutable_audio_description() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.ExternalAudioVideoDevice.audio_description)
+  return &audio_description_;
+}
+inline const ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& SystemProfileProto_ExternalAudioVideoDevice::_internal_audio_description(int index) const {
+  return audio_description_.Get(index);
+}
+inline const ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription& SystemProfileProto_ExternalAudioVideoDevice::audio_description(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.audio_description)
+  return _internal_audio_description(index);
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* SystemProfileProto_ExternalAudioVideoDevice::_internal_add_audio_description() {
+  return audio_description_.Add();
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription* SystemProfileProto_ExternalAudioVideoDevice::add_audio_description() {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.ExternalAudioVideoDevice.audio_description)
+  return _internal_add_audio_description();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription >&
+SystemProfileProto_ExternalAudioVideoDevice::audio_description() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.ExternalAudioVideoDevice.audio_description)
+  return audio_description_;
+}
+
+// optional int32 position_in_setup = 10;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_position_in_setup() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_position_in_setup() const {
+  return _internal_has_position_in_setup();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_position_in_setup() {
+  position_in_setup_ = 0;
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::_internal_position_in_setup() const {
+  return position_in_setup_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::position_in_setup() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.position_in_setup)
+  return _internal_position_in_setup();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_position_in_setup(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000080u;
+  position_in_setup_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_position_in_setup(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_position_in_setup(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.position_in_setup)
+}
+
+// optional bool is_in_path_to_tv = 11;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_is_in_path_to_tv() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_is_in_path_to_tv() const {
+  return _internal_has_is_in_path_to_tv();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_is_in_path_to_tv() {
+  is_in_path_to_tv_ = false;
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_is_in_path_to_tv() const {
+  return is_in_path_to_tv_;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::is_in_path_to_tv() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.is_in_path_to_tv)
+  return _internal_is_in_path_to_tv();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_is_in_path_to_tv(bool value) {
+  _has_bits_[0] |= 0x00000100u;
+  is_in_path_to_tv_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_is_in_path_to_tv(bool value) {
+  _internal_set_is_in_path_to_tv(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.is_in_path_to_tv)
+}
+
+// optional int32 cec_version = 12;
+inline bool SystemProfileProto_ExternalAudioVideoDevice::_internal_has_cec_version() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAudioVideoDevice::has_cec_version() const {
+  return _internal_has_cec_version();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_cec_version() {
+  cec_version_ = 0;
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::_internal_cec_version() const {
+  return cec_version_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto_ExternalAudioVideoDevice::cec_version() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.cec_version)
+  return _internal_cec_version();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::_internal_set_cec_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _has_bits_[0] |= 0x00000200u;
+  cec_version_ = value;
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::set_cec_version(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_set_cec_version(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAudioVideoDevice.cec_version)
+}
+
+// repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice.CECCommand cec_command = 13;
+inline int SystemProfileProto_ExternalAudioVideoDevice::_internal_cec_command_size() const {
+  return cec_command_.size();
+}
+inline int SystemProfileProto_ExternalAudioVideoDevice::cec_command_size() const {
+  return _internal_cec_command_size();
+}
+inline void SystemProfileProto_ExternalAudioVideoDevice::clear_cec_command() {
+  cec_command_.Clear();
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand* SystemProfileProto_ExternalAudioVideoDevice::mutable_cec_command(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAudioVideoDevice.cec_command)
+  return cec_command_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand >*
+SystemProfileProto_ExternalAudioVideoDevice::mutable_cec_command() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.ExternalAudioVideoDevice.cec_command)
+  return &cec_command_;
+}
+inline const ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand& SystemProfileProto_ExternalAudioVideoDevice::_internal_cec_command(int index) const {
+  return cec_command_.Get(index);
+}
+inline const ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand& SystemProfileProto_ExternalAudioVideoDevice::cec_command(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAudioVideoDevice.cec_command)
+  return _internal_cec_command(index);
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand* SystemProfileProto_ExternalAudioVideoDevice::_internal_add_cec_command() {
+  return cec_command_.Add();
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand* SystemProfileProto_ExternalAudioVideoDevice::add_cec_command() {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.ExternalAudioVideoDevice.cec_command)
+  return _internal_add_cec_command();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_CECCommand >&
+SystemProfileProto_ExternalAudioVideoDevice::cec_command() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.ExternalAudioVideoDevice.cec_command)
+  return cec_command_;
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto_ExternalAccessPoint
+
+// optional string manufacturer = 1;
+inline bool SystemProfileProto_ExternalAccessPoint::_internal_has_manufacturer() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAccessPoint::has_manufacturer() const {
+  return _internal_has_manufacturer();
+}
+inline void SystemProfileProto_ExternalAccessPoint::clear_manufacturer() {
+  manufacturer_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto_ExternalAccessPoint::manufacturer() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAccessPoint.manufacturer)
+  return _internal_manufacturer();
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_manufacturer(const std::string& value) {
+  _internal_set_manufacturer(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAccessPoint.manufacturer)
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::mutable_manufacturer() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAccessPoint.manufacturer)
+  return _internal_mutable_manufacturer();
+}
+inline const std::string& SystemProfileProto_ExternalAccessPoint::_internal_manufacturer() const {
+  return manufacturer_.GetNoArena();
+}
+inline void SystemProfileProto_ExternalAccessPoint::_internal_set_manufacturer(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_manufacturer(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  manufacturer_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.ExternalAccessPoint.manufacturer)
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_manufacturer(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.ExternalAccessPoint.manufacturer)
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_manufacturer(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  manufacturer_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.ExternalAccessPoint.manufacturer)
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::_internal_mutable_manufacturer() {
+  _has_bits_[0] |= 0x00000001u;
+  return manufacturer_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::release_manufacturer() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.ExternalAccessPoint.manufacturer)
+  if (!_internal_has_manufacturer()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return manufacturer_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_allocated_manufacturer(std::string* manufacturer) {
+  if (manufacturer != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  manufacturer_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), manufacturer);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.ExternalAccessPoint.manufacturer)
+}
+
+// optional string model_name = 2;
+inline bool SystemProfileProto_ExternalAccessPoint::_internal_has_model_name() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAccessPoint::has_model_name() const {
+  return _internal_has_model_name();
+}
+inline void SystemProfileProto_ExternalAccessPoint::clear_model_name() {
+  model_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemProfileProto_ExternalAccessPoint::model_name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAccessPoint.model_name)
+  return _internal_model_name();
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_model_name(const std::string& value) {
+  _internal_set_model_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAccessPoint.model_name)
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::mutable_model_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAccessPoint.model_name)
+  return _internal_mutable_model_name();
+}
+inline const std::string& SystemProfileProto_ExternalAccessPoint::_internal_model_name() const {
+  return model_name_.GetNoArena();
+}
+inline void SystemProfileProto_ExternalAccessPoint::_internal_set_model_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_model_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.ExternalAccessPoint.model_name)
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_model_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.ExternalAccessPoint.model_name)
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_model_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  model_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.ExternalAccessPoint.model_name)
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::_internal_mutable_model_name() {
+  _has_bits_[0] |= 0x00000002u;
+  return model_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::release_model_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.ExternalAccessPoint.model_name)
+  if (!_internal_has_model_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return model_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_allocated_model_name(std::string* model_name) {
+  if (model_name != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  model_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), model_name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.ExternalAccessPoint.model_name)
+}
+
+// optional string model_number = 3;
+inline bool SystemProfileProto_ExternalAccessPoint::_internal_has_model_number() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAccessPoint::has_model_number() const {
+  return _internal_has_model_number();
+}
+inline void SystemProfileProto_ExternalAccessPoint::clear_model_number() {
+  model_number_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SystemProfileProto_ExternalAccessPoint::model_number() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAccessPoint.model_number)
+  return _internal_model_number();
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_model_number(const std::string& value) {
+  _internal_set_model_number(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAccessPoint.model_number)
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::mutable_model_number() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAccessPoint.model_number)
+  return _internal_mutable_model_number();
+}
+inline const std::string& SystemProfileProto_ExternalAccessPoint::_internal_model_number() const {
+  return model_number_.GetNoArena();
+}
+inline void SystemProfileProto_ExternalAccessPoint::_internal_set_model_number(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  model_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_model_number(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  model_number_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.ExternalAccessPoint.model_number)
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_model_number(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  model_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.ExternalAccessPoint.model_number)
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_model_number(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  model_number_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.ExternalAccessPoint.model_number)
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::_internal_mutable_model_number() {
+  _has_bits_[0] |= 0x00000004u;
+  return model_number_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::release_model_number() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.ExternalAccessPoint.model_number)
+  if (!_internal_has_model_number()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return model_number_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_allocated_model_number(std::string* model_number) {
+  if (model_number != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  model_number_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), model_number);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.ExternalAccessPoint.model_number)
+}
+
+// optional string device_name = 4;
+inline bool SystemProfileProto_ExternalAccessPoint::_internal_has_device_name() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  return value;
+}
+inline bool SystemProfileProto_ExternalAccessPoint::has_device_name() const {
+  return _internal_has_device_name();
+}
+inline void SystemProfileProto_ExternalAccessPoint::clear_device_name() {
+  device_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const std::string& SystemProfileProto_ExternalAccessPoint::device_name() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.ExternalAccessPoint.device_name)
+  return _internal_device_name();
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_device_name(const std::string& value) {
+  _internal_set_device_name(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.ExternalAccessPoint.device_name)
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::mutable_device_name() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.ExternalAccessPoint.device_name)
+  return _internal_mutable_device_name();
+}
+inline const std::string& SystemProfileProto_ExternalAccessPoint::_internal_device_name() const {
+  return device_name_.GetNoArena();
+}
+inline void SystemProfileProto_ExternalAccessPoint::_internal_set_device_name(const std::string& value) {
+  _has_bits_[0] |= 0x00000008u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_device_name(std::string&& value) {
+  _has_bits_[0] |= 0x00000008u;
+  device_name_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.ExternalAccessPoint.device_name)
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_device_name(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000008u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.ExternalAccessPoint.device_name)
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_device_name(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000008u;
+  device_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.ExternalAccessPoint.device_name)
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::_internal_mutable_device_name() {
+  _has_bits_[0] |= 0x00000008u;
+  return device_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto_ExternalAccessPoint::release_device_name() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.ExternalAccessPoint.device_name)
+  if (!_internal_has_device_name()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000008u;
+  return device_name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto_ExternalAccessPoint::set_allocated_device_name(std::string* device_name) {
+  if (device_name != nullptr) {
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  device_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), device_name);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.ExternalAccessPoint.device_name)
+}
+
+// -------------------------------------------------------------------
+
+// SystemProfileProto
+
+// optional int64 build_timestamp = 1;
+inline bool SystemProfileProto::_internal_has_build_timestamp() const {
+  bool value = (_has_bits_[0] & 0x00000400u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_build_timestamp() const {
+  return _internal_has_build_timestamp();
+}
+inline void SystemProfileProto::clear_build_timestamp() {
+  build_timestamp_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000400u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto::_internal_build_timestamp() const {
+  return build_timestamp_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto::build_timestamp() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.build_timestamp)
+  return _internal_build_timestamp();
+}
+inline void SystemProfileProto::_internal_set_build_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000400u;
+  build_timestamp_ = value;
+}
+inline void SystemProfileProto::set_build_timestamp(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_build_timestamp(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.build_timestamp)
+}
+
+// optional string app_version = 2;
+inline bool SystemProfileProto::_internal_has_app_version() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_app_version() const {
+  return _internal_has_app_version();
+}
+inline void SystemProfileProto::clear_app_version() {
+  app_version_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline const std::string& SystemProfileProto::app_version() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.app_version)
+  return _internal_app_version();
+}
+inline void SystemProfileProto::set_app_version(const std::string& value) {
+  _internal_set_app_version(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.app_version)
+}
+inline std::string* SystemProfileProto::mutable_app_version() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.app_version)
+  return _internal_mutable_app_version();
+}
+inline const std::string& SystemProfileProto::_internal_app_version() const {
+  return app_version_.GetNoArena();
+}
+inline void SystemProfileProto::_internal_set_app_version(const std::string& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto::set_app_version(std::string&& value) {
+  _has_bits_[0] |= 0x00000001u;
+  app_version_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.app_version)
+}
+inline void SystemProfileProto::set_app_version(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000001u;
+  app_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.app_version)
+}
+inline void SystemProfileProto::set_app_version(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000001u;
+  app_version_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.app_version)
+}
+inline std::string* SystemProfileProto::_internal_mutable_app_version() {
+  _has_bits_[0] |= 0x00000001u;
+  return app_version_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto::release_app_version() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.app_version)
+  if (!_internal_has_app_version()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000001u;
+  return app_version_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto::set_allocated_app_version(std::string* app_version) {
+  if (app_version != nullptr) {
+    _has_bits_[0] |= 0x00000001u;
+  } else {
+    _has_bits_[0] &= ~0x00000001u;
+  }
+  app_version_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), app_version);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.app_version)
+}
+
+// optional string brand_code = 12;
+inline bool SystemProfileProto::_internal_has_brand_code() const {
+  bool value = (_has_bits_[0] & 0x00000004u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_brand_code() const {
+  return _internal_has_brand_code();
+}
+inline void SystemProfileProto::clear_brand_code() {
+  brand_code_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000004u;
+}
+inline const std::string& SystemProfileProto::brand_code() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.brand_code)
+  return _internal_brand_code();
+}
+inline void SystemProfileProto::set_brand_code(const std::string& value) {
+  _internal_set_brand_code(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.brand_code)
+}
+inline std::string* SystemProfileProto::mutable_brand_code() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.brand_code)
+  return _internal_mutable_brand_code();
+}
+inline const std::string& SystemProfileProto::_internal_brand_code() const {
+  return brand_code_.GetNoArena();
+}
+inline void SystemProfileProto::_internal_set_brand_code(const std::string& value) {
+  _has_bits_[0] |= 0x00000004u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto::set_brand_code(std::string&& value) {
+  _has_bits_[0] |= 0x00000004u;
+  brand_code_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.brand_code)
+}
+inline void SystemProfileProto::set_brand_code(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000004u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.brand_code)
+}
+inline void SystemProfileProto::set_brand_code(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000004u;
+  brand_code_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.brand_code)
+}
+inline std::string* SystemProfileProto::_internal_mutable_brand_code() {
+  _has_bits_[0] |= 0x00000004u;
+  return brand_code_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto::release_brand_code() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.brand_code)
+  if (!_internal_has_brand_code()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000004u;
+  return brand_code_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto::set_allocated_brand_code(std::string* brand_code) {
+  if (brand_code != nullptr) {
+    _has_bits_[0] |= 0x00000004u;
+  } else {
+    _has_bits_[0] &= ~0x00000004u;
+  }
+  brand_code_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), brand_code);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.brand_code)
+}
+
+// optional .metrics.SystemProfileProto.Channel channel = 10;
+inline bool SystemProfileProto::_internal_has_channel() const {
+  bool value = (_has_bits_[0] & 0x00001000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_channel() const {
+  return _internal_has_channel();
+}
+inline void SystemProfileProto::clear_channel() {
+  channel_ = 0;
+  _has_bits_[0] &= ~0x00001000u;
+}
+inline ::metrics::SystemProfileProto_Channel SystemProfileProto::_internal_channel() const {
+  return static_cast< ::metrics::SystemProfileProto_Channel >(channel_);
+}
+inline ::metrics::SystemProfileProto_Channel SystemProfileProto::channel() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.channel)
+  return _internal_channel();
+}
+inline void SystemProfileProto::_internal_set_channel(::metrics::SystemProfileProto_Channel value) {
+  assert(::metrics::SystemProfileProto_Channel_IsValid(value));
+  _has_bits_[0] |= 0x00001000u;
+  channel_ = value;
+}
+inline void SystemProfileProto::set_channel(::metrics::SystemProfileProto_Channel value) {
+  _internal_set_channel(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.channel)
+}
+
+// optional bool is_asan_build = 20 [default = false];
+inline bool SystemProfileProto::_internal_has_is_asan_build() const {
+  bool value = (_has_bits_[0] & 0x00010000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_is_asan_build() const {
+  return _internal_has_is_asan_build();
+}
+inline void SystemProfileProto::clear_is_asan_build() {
+  is_asan_build_ = false;
+  _has_bits_[0] &= ~0x00010000u;
+}
+inline bool SystemProfileProto::_internal_is_asan_build() const {
+  return is_asan_build_;
+}
+inline bool SystemProfileProto::is_asan_build() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.is_asan_build)
+  return _internal_is_asan_build();
+}
+inline void SystemProfileProto::_internal_set_is_asan_build(bool value) {
+  _has_bits_[0] |= 0x00010000u;
+  is_asan_build_ = value;
+}
+inline void SystemProfileProto::set_is_asan_build(bool value) {
+  _internal_set_is_asan_build(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.is_asan_build)
+}
+
+// optional int64 uma_enabled_date = 3;
+inline bool SystemProfileProto::_internal_has_uma_enabled_date() const {
+  bool value = (_has_bits_[0] & 0x00000800u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_uma_enabled_date() const {
+  return _internal_has_uma_enabled_date();
+}
+inline void SystemProfileProto::clear_uma_enabled_date() {
+  uma_enabled_date_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000800u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto::_internal_uma_enabled_date() const {
+  return uma_enabled_date_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto::uma_enabled_date() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.uma_enabled_date)
+  return _internal_uma_enabled_date();
+}
+inline void SystemProfileProto::_internal_set_uma_enabled_date(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000800u;
+  uma_enabled_date_ = value;
+}
+inline void SystemProfileProto::set_uma_enabled_date(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_uma_enabled_date(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.uma_enabled_date)
+}
+
+// optional int64 install_date = 16;
+inline bool SystemProfileProto::_internal_has_install_date() const {
+  bool value = (_has_bits_[0] & 0x00004000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_install_date() const {
+  return _internal_has_install_date();
+}
+inline void SystemProfileProto::clear_install_date() {
+  install_date_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00004000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto::_internal_install_date() const {
+  return install_date_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 SystemProfileProto::install_date() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.install_date)
+  return _internal_install_date();
+}
+inline void SystemProfileProto::_internal_set_install_date(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00004000u;
+  install_date_ = value;
+}
+inline void SystemProfileProto::set_install_date(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_install_date(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.install_date)
+}
+
+// optional string application_locale = 4;
+inline bool SystemProfileProto::_internal_has_application_locale() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_application_locale() const {
+  return _internal_has_application_locale();
+}
+inline void SystemProfileProto::clear_application_locale() {
+  application_locale_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline const std::string& SystemProfileProto::application_locale() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.application_locale)
+  return _internal_application_locale();
+}
+inline void SystemProfileProto::set_application_locale(const std::string& value) {
+  _internal_set_application_locale(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.application_locale)
+}
+inline std::string* SystemProfileProto::mutable_application_locale() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.application_locale)
+  return _internal_mutable_application_locale();
+}
+inline const std::string& SystemProfileProto::_internal_application_locale() const {
+  return application_locale_.GetNoArena();
+}
+inline void SystemProfileProto::_internal_set_application_locale(const std::string& value) {
+  _has_bits_[0] |= 0x00000002u;
+  application_locale_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
+}
+inline void SystemProfileProto::set_application_locale(std::string&& value) {
+  _has_bits_[0] |= 0x00000002u;
+  application_locale_.SetNoArena(
+    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
+  // @@protoc_insertion_point(field_set_rvalue:metrics.SystemProfileProto.application_locale)
+}
+inline void SystemProfileProto::set_application_locale(const char* value) {
+  GOOGLE_DCHECK(value != nullptr);
+  _has_bits_[0] |= 0x00000002u;
+  application_locale_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
+  // @@protoc_insertion_point(field_set_char:metrics.SystemProfileProto.application_locale)
+}
+inline void SystemProfileProto::set_application_locale(const char* value, size_t size) {
+  _has_bits_[0] |= 0x00000002u;
+  application_locale_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
+      ::std::string(reinterpret_cast<const char*>(value), size));
+  // @@protoc_insertion_point(field_set_pointer:metrics.SystemProfileProto.application_locale)
+}
+inline std::string* SystemProfileProto::_internal_mutable_application_locale() {
+  _has_bits_[0] |= 0x00000002u;
+  return application_locale_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline std::string* SystemProfileProto::release_application_locale() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.application_locale)
+  if (!_internal_has_application_locale()) {
+    return nullptr;
+  }
+  _has_bits_[0] &= ~0x00000002u;
+  return application_locale_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
+}
+inline void SystemProfileProto::set_allocated_application_locale(std::string* application_locale) {
+  if (application_locale != nullptr) {
+    _has_bits_[0] |= 0x00000002u;
+  } else {
+    _has_bits_[0] &= ~0x00000002u;
+  }
+  application_locale_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), application_locale);
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.application_locale)
+}
+
+// optional .metrics.SystemProfileProto.BrilloDeviceData brillo = 21;
+inline bool SystemProfileProto::_internal_has_brillo() const {
+  bool value = (_has_bits_[0] & 0x00000200u) != 0;
+  PROTOBUF_ASSUME(!value || brillo_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto::has_brillo() const {
+  return _internal_has_brillo();
+}
+inline void SystemProfileProto::clear_brillo() {
+  if (brillo_ != nullptr) brillo_->Clear();
+  _has_bits_[0] &= ~0x00000200u;
+}
+inline const ::metrics::SystemProfileProto_BrilloDeviceData& SystemProfileProto::_internal_brillo() const {
+  const ::metrics::SystemProfileProto_BrilloDeviceData* p = brillo_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_BrilloDeviceData*>(
+      &::metrics::_SystemProfileProto_BrilloDeviceData_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_BrilloDeviceData& SystemProfileProto::brillo() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.brillo)
+  return _internal_brillo();
+}
+inline ::metrics::SystemProfileProto_BrilloDeviceData* SystemProfileProto::release_brillo() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.brillo)
+  _has_bits_[0] &= ~0x00000200u;
+  ::metrics::SystemProfileProto_BrilloDeviceData* temp = brillo_;
+  brillo_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_BrilloDeviceData* SystemProfileProto::_internal_mutable_brillo() {
+  _has_bits_[0] |= 0x00000200u;
+  if (brillo_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_BrilloDeviceData>(GetArenaNoVirtual());
+    brillo_ = p;
+  }
+  return brillo_;
+}
+inline ::metrics::SystemProfileProto_BrilloDeviceData* SystemProfileProto::mutable_brillo() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.brillo)
+  return _internal_mutable_brillo();
+}
+inline void SystemProfileProto::set_allocated_brillo(::metrics::SystemProfileProto_BrilloDeviceData* brillo) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete brillo_;
+  }
+  if (brillo) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      brillo = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, brillo, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000200u;
+  } else {
+    _has_bits_[0] &= ~0x00000200u;
+  }
+  brillo_ = brillo;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.brillo)
+}
+
+// optional .metrics.SystemProfileProto.OS os = 5;
+inline bool SystemProfileProto::_internal_has_os() const {
+  bool value = (_has_bits_[0] & 0x00000008u) != 0;
+  PROTOBUF_ASSUME(!value || os_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto::has_os() const {
+  return _internal_has_os();
+}
+inline void SystemProfileProto::clear_os() {
+  if (os_ != nullptr) os_->Clear();
+  _has_bits_[0] &= ~0x00000008u;
+}
+inline const ::metrics::SystemProfileProto_OS& SystemProfileProto::_internal_os() const {
+  const ::metrics::SystemProfileProto_OS* p = os_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_OS*>(
+      &::metrics::_SystemProfileProto_OS_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_OS& SystemProfileProto::os() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.os)
+  return _internal_os();
+}
+inline ::metrics::SystemProfileProto_OS* SystemProfileProto::release_os() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.os)
+  _has_bits_[0] &= ~0x00000008u;
+  ::metrics::SystemProfileProto_OS* temp = os_;
+  os_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_OS* SystemProfileProto::_internal_mutable_os() {
+  _has_bits_[0] |= 0x00000008u;
+  if (os_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_OS>(GetArenaNoVirtual());
+    os_ = p;
+  }
+  return os_;
+}
+inline ::metrics::SystemProfileProto_OS* SystemProfileProto::mutable_os() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.os)
+  return _internal_mutable_os();
+}
+inline void SystemProfileProto::set_allocated_os(::metrics::SystemProfileProto_OS* os) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete os_;
+  }
+  if (os) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      os = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, os, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000008u;
+  } else {
+    _has_bits_[0] &= ~0x00000008u;
+  }
+  os_ = os;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.os)
+}
+
+// optional .metrics.SystemProfileProto.Hardware hardware = 6;
+inline bool SystemProfileProto::_internal_has_hardware() const {
+  bool value = (_has_bits_[0] & 0x00000010u) != 0;
+  PROTOBUF_ASSUME(!value || hardware_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto::has_hardware() const {
+  return _internal_has_hardware();
+}
+inline void SystemProfileProto::clear_hardware() {
+  if (hardware_ != nullptr) hardware_->Clear();
+  _has_bits_[0] &= ~0x00000010u;
+}
+inline const ::metrics::SystemProfileProto_Hardware& SystemProfileProto::_internal_hardware() const {
+  const ::metrics::SystemProfileProto_Hardware* p = hardware_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Hardware*>(
+      &::metrics::_SystemProfileProto_Hardware_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Hardware& SystemProfileProto::hardware() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.hardware)
+  return _internal_hardware();
+}
+inline ::metrics::SystemProfileProto_Hardware* SystemProfileProto::release_hardware() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.hardware)
+  _has_bits_[0] &= ~0x00000010u;
+  ::metrics::SystemProfileProto_Hardware* temp = hardware_;
+  hardware_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Hardware* SystemProfileProto::_internal_mutable_hardware() {
+  _has_bits_[0] |= 0x00000010u;
+  if (hardware_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Hardware>(GetArenaNoVirtual());
+    hardware_ = p;
+  }
+  return hardware_;
+}
+inline ::metrics::SystemProfileProto_Hardware* SystemProfileProto::mutable_hardware() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.hardware)
+  return _internal_mutable_hardware();
+}
+inline void SystemProfileProto::set_allocated_hardware(::metrics::SystemProfileProto_Hardware* hardware) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete hardware_;
+  }
+  if (hardware) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      hardware = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, hardware, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000010u;
+  } else {
+    _has_bits_[0] &= ~0x00000010u;
+  }
+  hardware_ = hardware;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.hardware)
+}
+
+// optional .metrics.SystemProfileProto.Network network = 13;
+inline bool SystemProfileProto::_internal_has_network() const {
+  bool value = (_has_bits_[0] & 0x00000080u) != 0;
+  PROTOBUF_ASSUME(!value || network_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto::has_network() const {
+  return _internal_has_network();
+}
+inline void SystemProfileProto::clear_network() {
+  if (network_ != nullptr) network_->Clear();
+  _has_bits_[0] &= ~0x00000080u;
+}
+inline const ::metrics::SystemProfileProto_Network& SystemProfileProto::_internal_network() const {
+  const ::metrics::SystemProfileProto_Network* p = network_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Network*>(
+      &::metrics::_SystemProfileProto_Network_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Network& SystemProfileProto::network() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.network)
+  return _internal_network();
+}
+inline ::metrics::SystemProfileProto_Network* SystemProfileProto::release_network() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.network)
+  _has_bits_[0] &= ~0x00000080u;
+  ::metrics::SystemProfileProto_Network* temp = network_;
+  network_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Network* SystemProfileProto::_internal_mutable_network() {
+  _has_bits_[0] |= 0x00000080u;
+  if (network_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Network>(GetArenaNoVirtual());
+    network_ = p;
+  }
+  return network_;
+}
+inline ::metrics::SystemProfileProto_Network* SystemProfileProto::mutable_network() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.network)
+  return _internal_mutable_network();
+}
+inline void SystemProfileProto::set_allocated_network(::metrics::SystemProfileProto_Network* network) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete network_;
+  }
+  if (network) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      network = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, network, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000080u;
+  } else {
+    _has_bits_[0] &= ~0x00000080u;
+  }
+  network_ = network;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.network)
+}
+
+// optional .metrics.SystemProfileProto.GoogleUpdate google_update = 11;
+inline bool SystemProfileProto::_internal_has_google_update() const {
+  bool value = (_has_bits_[0] & 0x00000040u) != 0;
+  PROTOBUF_ASSUME(!value || google_update_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto::has_google_update() const {
+  return _internal_has_google_update();
+}
+inline void SystemProfileProto::clear_google_update() {
+  if (google_update_ != nullptr) google_update_->Clear();
+  _has_bits_[0] &= ~0x00000040u;
+}
+inline const ::metrics::SystemProfileProto_GoogleUpdate& SystemProfileProto::_internal_google_update() const {
+  const ::metrics::SystemProfileProto_GoogleUpdate* p = google_update_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_GoogleUpdate*>(
+      &::metrics::_SystemProfileProto_GoogleUpdate_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_GoogleUpdate& SystemProfileProto::google_update() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.google_update)
+  return _internal_google_update();
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate* SystemProfileProto::release_google_update() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.google_update)
+  _has_bits_[0] &= ~0x00000040u;
+  ::metrics::SystemProfileProto_GoogleUpdate* temp = google_update_;
+  google_update_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate* SystemProfileProto::_internal_mutable_google_update() {
+  _has_bits_[0] |= 0x00000040u;
+  if (google_update_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_GoogleUpdate>(GetArenaNoVirtual());
+    google_update_ = p;
+  }
+  return google_update_;
+}
+inline ::metrics::SystemProfileProto_GoogleUpdate* SystemProfileProto::mutable_google_update() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.google_update)
+  return _internal_mutable_google_update();
+}
+inline void SystemProfileProto::set_allocated_google_update(::metrics::SystemProfileProto_GoogleUpdate* google_update) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete google_update_;
+  }
+  if (google_update) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      google_update = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, google_update, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000040u;
+  } else {
+    _has_bits_[0] &= ~0x00000040u;
+  }
+  google_update_ = google_update;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.google_update)
+}
+
+// repeated .metrics.SystemProfileProto.Plugin plugin = 7;
+inline int SystemProfileProto::_internal_plugin_size() const {
+  return plugin_.size();
+}
+inline int SystemProfileProto::plugin_size() const {
+  return _internal_plugin_size();
+}
+inline void SystemProfileProto::clear_plugin() {
+  plugin_.Clear();
+}
+inline ::metrics::SystemProfileProto_Plugin* SystemProfileProto::mutable_plugin(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.plugin)
+  return plugin_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Plugin >*
+SystemProfileProto::mutable_plugin() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.plugin)
+  return &plugin_;
+}
+inline const ::metrics::SystemProfileProto_Plugin& SystemProfileProto::_internal_plugin(int index) const {
+  return plugin_.Get(index);
+}
+inline const ::metrics::SystemProfileProto_Plugin& SystemProfileProto::plugin(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.plugin)
+  return _internal_plugin(index);
+}
+inline ::metrics::SystemProfileProto_Plugin* SystemProfileProto::_internal_add_plugin() {
+  return plugin_.Add();
+}
+inline ::metrics::SystemProfileProto_Plugin* SystemProfileProto::add_plugin() {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.plugin)
+  return _internal_add_plugin();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_Plugin >&
+SystemProfileProto::plugin() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.plugin)
+  return plugin_;
+}
+
+// optional .metrics.SystemProfileProto.Stability stability = 8;
+inline bool SystemProfileProto::_internal_has_stability() const {
+  bool value = (_has_bits_[0] & 0x00000020u) != 0;
+  PROTOBUF_ASSUME(!value || stability_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto::has_stability() const {
+  return _internal_has_stability();
+}
+inline void SystemProfileProto::clear_stability() {
+  if (stability_ != nullptr) stability_->Clear();
+  _has_bits_[0] &= ~0x00000020u;
+}
+inline const ::metrics::SystemProfileProto_Stability& SystemProfileProto::_internal_stability() const {
+  const ::metrics::SystemProfileProto_Stability* p = stability_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_Stability*>(
+      &::metrics::_SystemProfileProto_Stability_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_Stability& SystemProfileProto::stability() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.stability)
+  return _internal_stability();
+}
+inline ::metrics::SystemProfileProto_Stability* SystemProfileProto::release_stability() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.stability)
+  _has_bits_[0] &= ~0x00000020u;
+  ::metrics::SystemProfileProto_Stability* temp = stability_;
+  stability_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_Stability* SystemProfileProto::_internal_mutable_stability() {
+  _has_bits_[0] |= 0x00000020u;
+  if (stability_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_Stability>(GetArenaNoVirtual());
+    stability_ = p;
+  }
+  return stability_;
+}
+inline ::metrics::SystemProfileProto_Stability* SystemProfileProto::mutable_stability() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.stability)
+  return _internal_mutable_stability();
+}
+inline void SystemProfileProto::set_allocated_stability(::metrics::SystemProfileProto_Stability* stability) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete stability_;
+  }
+  if (stability) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      stability = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, stability, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000020u;
+  } else {
+    _has_bits_[0] &= ~0x00000020u;
+  }
+  stability_ = stability;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.stability)
+}
+
+// repeated .metrics.SystemProfileProto.FieldTrial field_trial = 9;
+inline int SystemProfileProto::_internal_field_trial_size() const {
+  return field_trial_.size();
+}
+inline int SystemProfileProto::field_trial_size() const {
+  return _internal_field_trial_size();
+}
+inline void SystemProfileProto::clear_field_trial() {
+  field_trial_.Clear();
+}
+inline ::metrics::SystemProfileProto_FieldTrial* SystemProfileProto::mutable_field_trial(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.field_trial)
+  return field_trial_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_FieldTrial >*
+SystemProfileProto::mutable_field_trial() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.field_trial)
+  return &field_trial_;
+}
+inline const ::metrics::SystemProfileProto_FieldTrial& SystemProfileProto::_internal_field_trial(int index) const {
+  return field_trial_.Get(index);
+}
+inline const ::metrics::SystemProfileProto_FieldTrial& SystemProfileProto::field_trial(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.field_trial)
+  return _internal_field_trial(index);
+}
+inline ::metrics::SystemProfileProto_FieldTrial* SystemProfileProto::_internal_add_field_trial() {
+  return field_trial_.Add();
+}
+inline ::metrics::SystemProfileProto_FieldTrial* SystemProfileProto::add_field_trial() {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.field_trial)
+  return _internal_add_field_trial();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_FieldTrial >&
+SystemProfileProto::field_trial() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.field_trial)
+  return field_trial_;
+}
+
+// repeated .metrics.SystemProfileProto.ExternalAudioVideoDevice external_audio_video_device = 14;
+inline int SystemProfileProto::_internal_external_audio_video_device_size() const {
+  return external_audio_video_device_.size();
+}
+inline int SystemProfileProto::external_audio_video_device_size() const {
+  return _internal_external_audio_video_device_size();
+}
+inline void SystemProfileProto::clear_external_audio_video_device() {
+  external_audio_video_device_.Clear();
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice* SystemProfileProto::mutable_external_audio_video_device(int index) {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.external_audio_video_device)
+  return external_audio_video_device_.Mutable(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice >*
+SystemProfileProto::mutable_external_audio_video_device() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.external_audio_video_device)
+  return &external_audio_video_device_;
+}
+inline const ::metrics::SystemProfileProto_ExternalAudioVideoDevice& SystemProfileProto::_internal_external_audio_video_device(int index) const {
+  return external_audio_video_device_.Get(index);
+}
+inline const ::metrics::SystemProfileProto_ExternalAudioVideoDevice& SystemProfileProto::external_audio_video_device(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.external_audio_video_device)
+  return _internal_external_audio_video_device(index);
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice* SystemProfileProto::_internal_add_external_audio_video_device() {
+  return external_audio_video_device_.Add();
+}
+inline ::metrics::SystemProfileProto_ExternalAudioVideoDevice* SystemProfileProto::add_external_audio_video_device() {
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.external_audio_video_device)
+  return _internal_add_external_audio_video_device();
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::metrics::SystemProfileProto_ExternalAudioVideoDevice >&
+SystemProfileProto::external_audio_video_device() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.external_audio_video_device)
+  return external_audio_video_device_;
+}
+
+// optional .metrics.SystemProfileProto.ExternalAccessPoint external_access_point = 15;
+inline bool SystemProfileProto::_internal_has_external_access_point() const {
+  bool value = (_has_bits_[0] & 0x00000100u) != 0;
+  PROTOBUF_ASSUME(!value || external_access_point_ != nullptr);
+  return value;
+}
+inline bool SystemProfileProto::has_external_access_point() const {
+  return _internal_has_external_access_point();
+}
+inline void SystemProfileProto::clear_external_access_point() {
+  if (external_access_point_ != nullptr) external_access_point_->Clear();
+  _has_bits_[0] &= ~0x00000100u;
+}
+inline const ::metrics::SystemProfileProto_ExternalAccessPoint& SystemProfileProto::_internal_external_access_point() const {
+  const ::metrics::SystemProfileProto_ExternalAccessPoint* p = external_access_point_;
+  return p != nullptr ? *p : *reinterpret_cast<const ::metrics::SystemProfileProto_ExternalAccessPoint*>(
+      &::metrics::_SystemProfileProto_ExternalAccessPoint_default_instance_);
+}
+inline const ::metrics::SystemProfileProto_ExternalAccessPoint& SystemProfileProto::external_access_point() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.external_access_point)
+  return _internal_external_access_point();
+}
+inline ::metrics::SystemProfileProto_ExternalAccessPoint* SystemProfileProto::release_external_access_point() {
+  // @@protoc_insertion_point(field_release:metrics.SystemProfileProto.external_access_point)
+  _has_bits_[0] &= ~0x00000100u;
+  ::metrics::SystemProfileProto_ExternalAccessPoint* temp = external_access_point_;
+  external_access_point_ = nullptr;
+  return temp;
+}
+inline ::metrics::SystemProfileProto_ExternalAccessPoint* SystemProfileProto::_internal_mutable_external_access_point() {
+  _has_bits_[0] |= 0x00000100u;
+  if (external_access_point_ == nullptr) {
+    auto* p = CreateMaybeMessage<::metrics::SystemProfileProto_ExternalAccessPoint>(GetArenaNoVirtual());
+    external_access_point_ = p;
+  }
+  return external_access_point_;
+}
+inline ::metrics::SystemProfileProto_ExternalAccessPoint* SystemProfileProto::mutable_external_access_point() {
+  // @@protoc_insertion_point(field_mutable:metrics.SystemProfileProto.external_access_point)
+  return _internal_mutable_external_access_point();
+}
+inline void SystemProfileProto::set_allocated_external_access_point(::metrics::SystemProfileProto_ExternalAccessPoint* external_access_point) {
+  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
+  if (message_arena == nullptr) {
+    delete external_access_point_;
+  }
+  if (external_access_point) {
+    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
+    if (message_arena != submessage_arena) {
+      external_access_point = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
+          message_arena, external_access_point, submessage_arena);
+    }
+    _has_bits_[0] |= 0x00000100u;
+  } else {
+    _has_bits_[0] &= ~0x00000100u;
+  }
+  external_access_point_ = external_access_point;
+  // @@protoc_insertion_point(field_set_allocated:metrics.SystemProfileProto.external_access_point)
+}
+
+// optional uint32 multi_profile_user_count = 17;
+inline bool SystemProfileProto::_internal_has_multi_profile_user_count() const {
+  bool value = (_has_bits_[0] & 0x00002000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_multi_profile_user_count() const {
+  return _internal_has_multi_profile_user_count();
+}
+inline void SystemProfileProto::clear_multi_profile_user_count() {
+  multi_profile_user_count_ = 0u;
+  _has_bits_[0] &= ~0x00002000u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto::_internal_multi_profile_user_count() const {
+  return multi_profile_user_count_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint32 SystemProfileProto::multi_profile_user_count() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.multi_profile_user_count)
+  return _internal_multi_profile_user_count();
+}
+inline void SystemProfileProto::_internal_set_multi_profile_user_count(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _has_bits_[0] |= 0x00002000u;
+  multi_profile_user_count_ = value;
+}
+inline void SystemProfileProto::set_multi_profile_user_count(::PROTOBUF_NAMESPACE_ID::uint32 value) {
+  _internal_set_multi_profile_user_count(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.multi_profile_user_count)
+}
+
+// repeated int32 occupied_extension_bucket = 18;
+inline int SystemProfileProto::_internal_occupied_extension_bucket_size() const {
+  return occupied_extension_bucket_.size();
+}
+inline int SystemProfileProto::occupied_extension_bucket_size() const {
+  return _internal_occupied_extension_bucket_size();
+}
+inline void SystemProfileProto::clear_occupied_extension_bucket() {
+  occupied_extension_bucket_.Clear();
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto::_internal_occupied_extension_bucket(int index) const {
+  return occupied_extension_bucket_.Get(index);
+}
+inline ::PROTOBUF_NAMESPACE_ID::int32 SystemProfileProto::occupied_extension_bucket(int index) const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.occupied_extension_bucket)
+  return _internal_occupied_extension_bucket(index);
+}
+inline void SystemProfileProto::set_occupied_extension_bucket(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
+  occupied_extension_bucket_.Set(index, value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.occupied_extension_bucket)
+}
+inline void SystemProfileProto::_internal_add_occupied_extension_bucket(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  occupied_extension_bucket_.Add(value);
+}
+inline void SystemProfileProto::add_occupied_extension_bucket(::PROTOBUF_NAMESPACE_ID::int32 value) {
+  _internal_add_occupied_extension_bucket(value);
+  // @@protoc_insertion_point(field_add:metrics.SystemProfileProto.occupied_extension_bucket)
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+SystemProfileProto::_internal_occupied_extension_bucket() const {
+  return occupied_extension_bucket_;
+}
+inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
+SystemProfileProto::occupied_extension_bucket() const {
+  // @@protoc_insertion_point(field_list:metrics.SystemProfileProto.occupied_extension_bucket)
+  return _internal_occupied_extension_bucket();
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+SystemProfileProto::_internal_mutable_occupied_extension_bucket() {
+  return &occupied_extension_bucket_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
+SystemProfileProto::mutable_occupied_extension_bucket() {
+  // @@protoc_insertion_point(field_mutable_list:metrics.SystemProfileProto.occupied_extension_bucket)
+  return _internal_mutable_occupied_extension_bucket();
+}
+
+// optional .metrics.SystemProfileProto.ExtensionsState offstore_extensions_state = 19;
+inline bool SystemProfileProto::_internal_has_offstore_extensions_state() const {
+  bool value = (_has_bits_[0] & 0x00008000u) != 0;
+  return value;
+}
+inline bool SystemProfileProto::has_offstore_extensions_state() const {
+  return _internal_has_offstore_extensions_state();
+}
+inline void SystemProfileProto::clear_offstore_extensions_state() {
+  offstore_extensions_state_ = 0;
+  _has_bits_[0] &= ~0x00008000u;
+}
+inline ::metrics::SystemProfileProto_ExtensionsState SystemProfileProto::_internal_offstore_extensions_state() const {
+  return static_cast< ::metrics::SystemProfileProto_ExtensionsState >(offstore_extensions_state_);
+}
+inline ::metrics::SystemProfileProto_ExtensionsState SystemProfileProto::offstore_extensions_state() const {
+  // @@protoc_insertion_point(field_get:metrics.SystemProfileProto.offstore_extensions_state)
+  return _internal_offstore_extensions_state();
+}
+inline void SystemProfileProto::_internal_set_offstore_extensions_state(::metrics::SystemProfileProto_ExtensionsState value) {
+  assert(::metrics::SystemProfileProto_ExtensionsState_IsValid(value));
+  _has_bits_[0] |= 0x00008000u;
+  offstore_extensions_state_ = value;
+}
+inline void SystemProfileProto::set_offstore_extensions_state(::metrics::SystemProfileProto_ExtensionsState value) {
+  _internal_set_offstore_extensions_state(value);
+  // @@protoc_insertion_point(field_set:metrics.SystemProfileProto.offstore_extensions_state)
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+// -------------------------------------------------------------------
+
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace metrics
+
+PROTOBUF_NAMESPACE_OPEN
+
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_Type> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_Hardware_Bluetooth_PairedDevice_VendorIDSource> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_Network_WifiAccessPoint_SecurityMode> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_Network_ConnectionType> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_Network_WifiPHYLayerProtocol> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_GoogleUpdate_ProductInfo_InstallResult> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AudioDescription_AudioFormat> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_ExternalAudioVideoDevice_AVDeviceType> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_Channel> : ::std::true_type {};
+template <> struct is_proto_enum< ::metrics::SystemProfileProto_ExtensionsState> : ::std::true_type {};
+
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_system_5fprofile_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/user_action_event.pb.cc b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/user_action_event.pb.cc
new file mode 100644
index 0000000..d7b664a
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/user_action_event.pb.cc
@@ -0,0 +1,267 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: user_action_event.proto
+
+#include "user_action_event.pb.h"
+
+#include <algorithm>
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/extension_set.h>
+#include <google/protobuf/wire_format_lite.h>
+#include <google/protobuf/io/zero_copy_stream_impl_lite.h>
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+namespace metrics {
+class UserActionEventProtoDefaultTypeInternal {
+ public:
+  ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed<UserActionEventProto> _instance;
+} _UserActionEventProto_default_instance_;
+}  // namespace metrics
+static void InitDefaultsscc_info_UserActionEventProto_user_5faction_5fevent_2eproto() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  {
+    void* ptr = &::metrics::_UserActionEventProto_default_instance_;
+    new (ptr) ::metrics::UserActionEventProto();
+    ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr);
+  }
+  ::metrics::UserActionEventProto::InitAsDefaultInstance();
+}
+
+::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UserActionEventProto_user_5faction_5fevent_2eproto =
+    {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, 0, InitDefaultsscc_info_UserActionEventProto_user_5faction_5fevent_2eproto}, {}};
+
+namespace metrics {
+
+// ===================================================================
+
+void UserActionEventProto::InitAsDefaultInstance() {
+}
+class UserActionEventProto::_Internal {
+ public:
+  using HasBits = decltype(std::declval<UserActionEventProto>()._has_bits_);
+  static void set_has_name_hash(HasBits* has_bits) {
+    (*has_bits)[0] |= 1u;
+  }
+  static void set_has_time(HasBits* has_bits) {
+    (*has_bits)[0] |= 2u;
+  }
+};
+
+UserActionEventProto::UserActionEventProto()
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(), _internal_metadata_(nullptr) {
+  SharedCtor();
+  // @@protoc_insertion_point(constructor:metrics.UserActionEventProto)
+}
+UserActionEventProto::UserActionEventProto(const UserActionEventProto& from)
+  : ::PROTOBUF_NAMESPACE_ID::MessageLite(),
+      _internal_metadata_(nullptr),
+      _has_bits_(from._has_bits_) {
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::memcpy(&name_hash_, &from.name_hash_,
+    static_cast<size_t>(reinterpret_cast<char*>(&time_) -
+    reinterpret_cast<char*>(&name_hash_)) + sizeof(time_));
+  // @@protoc_insertion_point(copy_constructor:metrics.UserActionEventProto)
+}
+
+void UserActionEventProto::SharedCtor() {
+  ::memset(&name_hash_, 0, static_cast<size_t>(
+      reinterpret_cast<char*>(&time_) -
+      reinterpret_cast<char*>(&name_hash_)) + sizeof(time_));
+}
+
+UserActionEventProto::~UserActionEventProto() {
+  // @@protoc_insertion_point(destructor:metrics.UserActionEventProto)
+  SharedDtor();
+}
+
+void UserActionEventProto::SharedDtor() {
+}
+
+void UserActionEventProto::SetCachedSize(int size) const {
+  _cached_size_.Set(size);
+}
+const UserActionEventProto& UserActionEventProto::default_instance() {
+  ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&::scc_info_UserActionEventProto_user_5faction_5fevent_2eproto.base);
+  return *internal_default_instance();
+}
+
+
+void UserActionEventProto::Clear() {
+// @@protoc_insertion_point(message_clear_start:metrics.UserActionEventProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    ::memset(&name_hash_, 0, static_cast<size_t>(
+        reinterpret_cast<char*>(&time_) -
+        reinterpret_cast<char*>(&name_hash_)) + sizeof(time_));
+  }
+  _has_bits_.Clear();
+  _internal_metadata_.Clear();
+}
+
+const char* UserActionEventProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
+#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
+  _Internal::HasBits has_bits{};
+  while (!ctx->Done(&ptr)) {
+    ::PROTOBUF_NAMESPACE_ID::uint32 tag;
+    ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
+    CHK_(ptr);
+    switch (tag >> 3) {
+      // optional fixed64 name_hash = 1;
+      case 1:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
+          _Internal::set_has_name_hash(&has_bits);
+          name_hash_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint64>(ptr);
+          ptr += sizeof(::PROTOBUF_NAMESPACE_ID::uint64);
+        } else goto handle_unusual;
+        continue;
+      // optional int64 time = 2;
+      case 2:
+        if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
+          _Internal::set_has_time(&has_bits);
+          time_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
+          CHK_(ptr);
+        } else goto handle_unusual;
+        continue;
+      default: {
+      handle_unusual:
+        if ((tag & 7) == 4 || tag == 0) {
+          ctx->SetLastTag(tag);
+          goto success;
+        }
+        ptr = UnknownFieldParse(tag, &_internal_metadata_, ptr, ctx);
+        CHK_(ptr != nullptr);
+        continue;
+      }
+    }  // switch
+  }  // while
+success:
+  _has_bits_.Or(has_bits);
+  return ptr;
+failure:
+  ptr = nullptr;
+  goto success;
+#undef CHK_
+}
+
+::PROTOBUF_NAMESPACE_ID::uint8* UserActionEventProto::_InternalSerialize(
+    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
+  // @@protoc_insertion_point(serialize_to_array_start:metrics.UserActionEventProto)
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  // optional fixed64 name_hash = 1;
+  if (cached_has_bits & 0x00000001u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteFixed64ToArray(1, this->_internal_name_hash(), target);
+  }
+
+  // optional int64 time = 2;
+  if (cached_has_bits & 0x00000002u) {
+    target = stream->EnsureSpace(target);
+    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_time(), target);
+  }
+
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    target = stream->WriteRaw(_internal_metadata_.unknown_fields().data(),
+        static_cast<int>(_internal_metadata_.unknown_fields().size()), target);
+  }
+  // @@protoc_insertion_point(serialize_to_array_end:metrics.UserActionEventProto)
+  return target;
+}
+
+size_t UserActionEventProto::ByteSizeLong() const {
+// @@protoc_insertion_point(message_byte_size_start:metrics.UserActionEventProto)
+  size_t total_size = 0;
+
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  // Prevent compiler warnings about cached_has_bits being unused
+  (void) cached_has_bits;
+
+  cached_has_bits = _has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    // optional fixed64 name_hash = 1;
+    if (cached_has_bits & 0x00000001u) {
+      total_size += 1 + 8;
+    }
+
+    // optional int64 time = 2;
+    if (cached_has_bits & 0x00000002u) {
+      total_size += 1 +
+        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64Size(
+          this->_internal_time());
+    }
+
+  }
+  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
+    total_size += _internal_metadata_.unknown_fields().size();
+  }
+  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
+  SetCachedSize(cached_size);
+  return total_size;
+}
+
+void UserActionEventProto::CheckTypeAndMergeFrom(
+    const ::PROTOBUF_NAMESPACE_ID::MessageLite& from) {
+  MergeFrom(*::PROTOBUF_NAMESPACE_ID::internal::DownCast<const UserActionEventProto*>(
+      &from));
+}
+
+void UserActionEventProto::MergeFrom(const UserActionEventProto& from) {
+// @@protoc_insertion_point(class_specific_merge_from_start:metrics.UserActionEventProto)
+  GOOGLE_DCHECK_NE(&from, this);
+  _internal_metadata_.MergeFrom(from._internal_metadata_);
+  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
+  (void) cached_has_bits;
+
+  cached_has_bits = from._has_bits_[0];
+  if (cached_has_bits & 0x00000003u) {
+    if (cached_has_bits & 0x00000001u) {
+      name_hash_ = from.name_hash_;
+    }
+    if (cached_has_bits & 0x00000002u) {
+      time_ = from.time_;
+    }
+    _has_bits_[0] |= cached_has_bits;
+  }
+}
+
+void UserActionEventProto::CopyFrom(const UserActionEventProto& from) {
+// @@protoc_insertion_point(class_specific_copy_from_start:metrics.UserActionEventProto)
+  if (&from == this) return;
+  Clear();
+  MergeFrom(from);
+}
+
+bool UserActionEventProto::IsInitialized() const {
+  return true;
+}
+
+void UserActionEventProto::InternalSwap(UserActionEventProto* other) {
+  using std::swap;
+  _internal_metadata_.Swap(&other->_internal_metadata_);
+  swap(_has_bits_[0], other->_has_bits_[0]);
+  swap(name_hash_, other->name_hash_);
+  swap(time_, other->time_);
+}
+
+std::string UserActionEventProto::GetTypeName() const {
+  return "metrics.UserActionEventProto";
+}
+
+
+// @@protoc_insertion_point(namespace_scope)
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> PROTOBUF_NOINLINE ::metrics::UserActionEventProto* Arena::CreateMaybeMessage< ::metrics::UserActionEventProto >(Arena* arena) {
+  return Arena::CreateInternal< ::metrics::UserActionEventProto >(arena);
+}
+PROTOBUF_NAMESPACE_CLOSE
+
+// @@protoc_insertion_point(global_scope)
+#include <google/protobuf/port_undef.inc>
diff --git a/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/user_action_event.pb.h b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/user_action_event.pb.h
new file mode 100644
index 0000000..6ec5c7a
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/metrics/out/Default/gen/include/metrics/uploader/proto/user_action_event.pb.h
@@ -0,0 +1,282 @@
+// Generated by the protocol buffer compiler.  DO NOT EDIT!
+// source: user_action_event.proto
+
+#ifndef GOOGLE_PROTOBUF_INCLUDED_user_5faction_5fevent_2eproto
+#define GOOGLE_PROTOBUF_INCLUDED_user_5faction_5fevent_2eproto
+
+#include <limits>
+#include <string>
+
+#include <google/protobuf/port_def.inc>
+#if PROTOBUF_VERSION < 3011000
+#error This file was generated by a newer version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please update
+#error your headers.
+#endif
+#if 3011004 < PROTOBUF_MIN_PROTOC_VERSION
+#error This file was generated by an older version of protoc which is
+#error incompatible with your Protocol Buffer headers. Please
+#error regenerate this file with a newer version of protoc.
+#endif
+
+#include <google/protobuf/port_undef.inc>
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/arena.h>
+#include <google/protobuf/arenastring.h>
+#include <google/protobuf/generated_message_table_driven.h>
+#include <google/protobuf/generated_message_util.h>
+#include <google/protobuf/inlined_string_field.h>
+#include <google/protobuf/metadata_lite.h>
+#include <google/protobuf/message_lite.h>
+#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
+#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+// @@protoc_insertion_point(includes)
+#include <google/protobuf/port_def.inc>
+#define PROTOBUF_INTERNAL_EXPORT_user_5faction_5fevent_2eproto
+PROTOBUF_NAMESPACE_OPEN
+namespace internal {
+class AnyMetadata;
+}  // namespace internal
+PROTOBUF_NAMESPACE_CLOSE
+
+// Internal implementation detail -- do not use these members.
+struct TableStruct_user_5faction_5fevent_2eproto {
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1]
+    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
+  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
+  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
+  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
+};
+namespace metrics {
+class UserActionEventProto;
+class UserActionEventProtoDefaultTypeInternal;
+extern UserActionEventProtoDefaultTypeInternal _UserActionEventProto_default_instance_;
+}  // namespace metrics
+PROTOBUF_NAMESPACE_OPEN
+template<> ::metrics::UserActionEventProto* Arena::CreateMaybeMessage<::metrics::UserActionEventProto>(Arena*);
+PROTOBUF_NAMESPACE_CLOSE
+namespace metrics {
+
+// ===================================================================
+
+class UserActionEventProto :
+    public ::PROTOBUF_NAMESPACE_ID::MessageLite /* @@protoc_insertion_point(class_definition:metrics.UserActionEventProto) */ {
+ public:
+  UserActionEventProto();
+  virtual ~UserActionEventProto();
+
+  UserActionEventProto(const UserActionEventProto& from);
+  UserActionEventProto(UserActionEventProto&& from) noexcept
+    : UserActionEventProto() {
+    *this = ::std::move(from);
+  }
+
+  inline UserActionEventProto& operator=(const UserActionEventProto& from) {
+    CopyFrom(from);
+    return *this;
+  }
+  inline UserActionEventProto& operator=(UserActionEventProto&& from) noexcept {
+    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
+      if (this != &from) InternalSwap(&from);
+    } else {
+      CopyFrom(from);
+    }
+    return *this;
+  }
+
+  inline const std::string& unknown_fields() const {
+    return _internal_metadata_.unknown_fields();
+  }
+  inline std::string* mutable_unknown_fields() {
+    return _internal_metadata_.mutable_unknown_fields();
+  }
+
+  static const UserActionEventProto& default_instance();
+
+  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
+  static inline const UserActionEventProto* internal_default_instance() {
+    return reinterpret_cast<const UserActionEventProto*>(
+               &_UserActionEventProto_default_instance_);
+  }
+  static constexpr int kIndexInFileMessages =
+    0;
+
+  friend void swap(UserActionEventProto& a, UserActionEventProto& b) {
+    a.Swap(&b);
+  }
+  inline void Swap(UserActionEventProto* other) {
+    if (other == this) return;
+    InternalSwap(other);
+  }
+
+  // implements Message ----------------------------------------------
+
+  inline UserActionEventProto* New() const final {
+    return CreateMaybeMessage<UserActionEventProto>(nullptr);
+  }
+
+  UserActionEventProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
+    return CreateMaybeMessage<UserActionEventProto>(arena);
+  }
+  void CheckTypeAndMergeFrom(const ::PROTOBUF_NAMESPACE_ID::MessageLite& from)
+    final;
+  void CopyFrom(const UserActionEventProto& from);
+  void MergeFrom(const UserActionEventProto& from);
+  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
+  bool IsInitialized() const final;
+
+  size_t ByteSizeLong() const final;
+  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
+  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
+      ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
+  void DiscardUnknownFields();
+  int GetCachedSize() const final { return _cached_size_.Get(); }
+
+  private:
+  inline void SharedCtor();
+  inline void SharedDtor();
+  void SetCachedSize(int size) const;
+  void InternalSwap(UserActionEventProto* other);
+  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
+  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
+    return "metrics.UserActionEventProto";
+  }
+  private:
+  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
+    return nullptr;
+  }
+  inline void* MaybeArenaPtr() const {
+    return nullptr;
+  }
+  public:
+
+  std::string GetTypeName() const final;
+
+  // nested types ----------------------------------------------------
+
+  // accessors -------------------------------------------------------
+
+  enum : int {
+    kNameHashFieldNumber = 1,
+    kTimeFieldNumber = 2,
+  };
+  // optional fixed64 name_hash = 1;
+  bool has_name_hash() const;
+  private:
+  bool _internal_has_name_hash() const;
+  public:
+  void clear_name_hash();
+  ::PROTOBUF_NAMESPACE_ID::uint64 name_hash() const;
+  void set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::uint64 _internal_name_hash() const;
+  void _internal_set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value);
+  public:
+
+  // optional int64 time = 2;
+  bool has_time() const;
+  private:
+  bool _internal_has_time() const;
+  public:
+  void clear_time();
+  ::PROTOBUF_NAMESPACE_ID::int64 time() const;
+  void set_time(::PROTOBUF_NAMESPACE_ID::int64 value);
+  private:
+  ::PROTOBUF_NAMESPACE_ID::int64 _internal_time() const;
+  void _internal_set_time(::PROTOBUF_NAMESPACE_ID::int64 value);
+  public:
+
+  // @@protoc_insertion_point(class_scope:metrics.UserActionEventProto)
+ private:
+  class _Internal;
+
+  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArenaLite _internal_metadata_;
+  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
+  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
+  ::PROTOBUF_NAMESPACE_ID::uint64 name_hash_;
+  ::PROTOBUF_NAMESPACE_ID::int64 time_;
+  friend struct ::TableStruct_user_5faction_5fevent_2eproto;
+};
+// ===================================================================
+
+
+// ===================================================================
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic push
+  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif  // __GNUC__
+// UserActionEventProto
+
+// optional fixed64 name_hash = 1;
+inline bool UserActionEventProto::_internal_has_name_hash() const {
+  bool value = (_has_bits_[0] & 0x00000001u) != 0;
+  return value;
+}
+inline bool UserActionEventProto::has_name_hash() const {
+  return _internal_has_name_hash();
+}
+inline void UserActionEventProto::clear_name_hash() {
+  name_hash_ = PROTOBUF_ULONGLONG(0);
+  _has_bits_[0] &= ~0x00000001u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 UserActionEventProto::_internal_name_hash() const {
+  return name_hash_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::uint64 UserActionEventProto::name_hash() const {
+  // @@protoc_insertion_point(field_get:metrics.UserActionEventProto.name_hash)
+  return _internal_name_hash();
+}
+inline void UserActionEventProto::_internal_set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _has_bits_[0] |= 0x00000001u;
+  name_hash_ = value;
+}
+inline void UserActionEventProto::set_name_hash(::PROTOBUF_NAMESPACE_ID::uint64 value) {
+  _internal_set_name_hash(value);
+  // @@protoc_insertion_point(field_set:metrics.UserActionEventProto.name_hash)
+}
+
+// optional int64 time = 2;
+inline bool UserActionEventProto::_internal_has_time() const {
+  bool value = (_has_bits_[0] & 0x00000002u) != 0;
+  return value;
+}
+inline bool UserActionEventProto::has_time() const {
+  return _internal_has_time();
+}
+inline void UserActionEventProto::clear_time() {
+  time_ = PROTOBUF_LONGLONG(0);
+  _has_bits_[0] &= ~0x00000002u;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 UserActionEventProto::_internal_time() const {
+  return time_;
+}
+inline ::PROTOBUF_NAMESPACE_ID::int64 UserActionEventProto::time() const {
+  // @@protoc_insertion_point(field_get:metrics.UserActionEventProto.time)
+  return _internal_time();
+}
+inline void UserActionEventProto::_internal_set_time(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _has_bits_[0] |= 0x00000002u;
+  time_ = value;
+}
+inline void UserActionEventProto::set_time(::PROTOBUF_NAMESPACE_ID::int64 value) {
+  _internal_set_time(value);
+  // @@protoc_insertion_point(field_set:metrics.UserActionEventProto.time)
+}
+
+#ifdef __GNUC__
+  #pragma GCC diagnostic pop
+#endif  // __GNUC__
+
+// @@protoc_insertion_point(namespace_scope)
+
+}  // namespace metrics
+
+// @@protoc_insertion_point(global_scope)
+
+#include <google/protobuf/port_undef.inc>
+#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_user_5faction_5fevent_2eproto
diff --git a/chroot/var/cache/portage/chromeos-base/session_manager-client/out/Default/gen/include/session_manager/dbus-proxies.h b/chroot/var/cache/portage/chromeos-base/session_manager-client/out/Default/gen/include/session_manager/dbus-proxies.h
new file mode 100644
index 0000000..569c396
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/session_manager-client/out/Default/gen/include/session_manager/dbus-proxies.h
@@ -0,0 +1,2025 @@
+// Automatic generation of D-Bus interfaces:
+//  - org.chromium.SessionManagerInterface
+#ifndef ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_SESSION_MANAGER_CLIENT_OUT_DEFAULT_GEN_INCLUDE_SESSION_MANAGER_DBUS_PROXIES_H
+#define ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_SESSION_MANAGER_CLIENT_OUT_DEFAULT_GEN_INCLUDE_SESSION_MANAGER_DBUS_PROXIES_H
+#include <memory>
+#include <string>
+#include <vector>
+
+#include <base/bind.h>
+#include <base/callback.h>
+#include <base/files/scoped_file.h>
+#include <base/logging.h>
+#include <base/memory/ref_counted.h>
+#include <brillo/any.h>
+#include <brillo/dbus/dbus_method_invoker.h>
+#include <brillo/dbus/dbus_property.h>
+#include <brillo/dbus/dbus_signal_handler.h>
+#include <brillo/dbus/file_descriptor.h>
+#include <brillo/errors/error.h>
+#include <brillo/variant_dictionary.h>
+#include <dbus/bus.h>
+#include <dbus/message.h>
+#include <dbus/object_manager.h>
+#include <dbus/object_path.h>
+#include <dbus/object_proxy.h>
+
+namespace org {
+namespace chromium {
+
+// Abstract interface proxy for org::chromium::SessionManagerInterface.
+class SessionManagerInterfaceProxyInterface {
+ public:
+  virtual ~SessionManagerInterfaceProxyInterface() = default;
+
+  virtual bool EmitLoginPromptVisible(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void EmitLoginPromptVisibleAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool EmitAshInitialized(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void EmitAshInitializedAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool EnableChromeTesting(
+      bool in_force_relaunch,
+      const std::vector<std::string>& in_extra_arguments,
+      const std::vector<std::string>& in_extra_environment_variables,
+      std::string* out_filepath,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void EnableChromeTestingAsync(
+      bool in_force_relaunch,
+      const std::vector<std::string>& in_extra_arguments,
+      const std::vector<std::string>& in_extra_environment_variables,
+      base::OnceCallback<void(const std::string& /*filepath*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SaveLoginPassword(
+      const brillo::dbus_utils::FileDescriptor& in_password_fd,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SaveLoginPasswordAsync(
+      const brillo::dbus_utils::FileDescriptor& in_password_fd,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool LoginScreenStorageStore(
+      const std::string& in_key,
+      const std::vector<uint8_t>& in_metadata,
+      uint64_t in_value_size,
+      const brillo::dbus_utils::FileDescriptor& in_value_fd,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void LoginScreenStorageStoreAsync(
+      const std::string& in_key,
+      const std::vector<uint8_t>& in_metadata,
+      uint64_t in_value_size,
+      const brillo::dbus_utils::FileDescriptor& in_value_fd,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool LoginScreenStorageRetrieve(
+      const std::string& in_key,
+      uint64_t* out_value_size,
+      base::ScopedFD* out_value_fd,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void LoginScreenStorageRetrieveAsync(
+      const std::string& in_key,
+      base::OnceCallback<void(uint64_t /*value_size*/, const base::ScopedFD& /*value_fd*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool LoginScreenStorageListKeys(
+      std::vector<std::string>* out_keys,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void LoginScreenStorageListKeysAsync(
+      base::OnceCallback<void(const std::vector<std::string>& /*keys*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool LoginScreenStorageDelete(
+      const std::string& in_key,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void LoginScreenStorageDeleteAsync(
+      const std::string& in_key,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StartSession(
+      const std::string& in_account_id,
+      const std::string& in_unique_identifier,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StartSessionAsync(
+      const std::string& in_account_id,
+      const std::string& in_unique_identifier,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StopSession(
+      const std::string& in_unique_identifier,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StopSessionAsync(
+      const std::string& in_unique_identifier,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StopSessionWithReason(
+      uint32_t in_reason,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StopSessionWithReasonAsync(
+      uint32_t in_reason,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool LoadShillProfile(
+      const std::string& in_account_id,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void LoadShillProfileAsync(
+      const std::string& in_account_id,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StorePolicyEx(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      const std::vector<uint8_t>& in_policy_blob,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StorePolicyExAsync(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      const std::vector<uint8_t>& in_policy_blob,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StoreUnsignedPolicyEx(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      const std::vector<uint8_t>& in_policy_blob,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StoreUnsignedPolicyExAsync(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      const std::vector<uint8_t>& in_policy_blob,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool ListStoredComponentPolicies(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      std::vector<std::string>* out_component_ids,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void ListStoredComponentPoliciesAsync(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      base::OnceCallback<void(const std::vector<std::string>& /*component_ids*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool RetrievePolicyEx(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      std::vector<uint8_t>* out_policy_blob,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void RetrievePolicyExAsync(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      base::OnceCallback<void(const std::vector<uint8_t>& /*policy_blob*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool RetrieveSessionState(
+      std::string* out_state,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void RetrieveSessionStateAsync(
+      base::OnceCallback<void(const std::string& /*state*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool RetrieveActiveSessions(
+      std::map<std::string, std::string>* out_sessions,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void RetrieveActiveSessionsAsync(
+      base::OnceCallback<void(const std::map<std::string, std::string>& /*sessions*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool RetrievePrimarySession(
+      std::string* out_username,
+      std::string* out_sanitized_username,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void RetrievePrimarySessionAsync(
+      base::OnceCallback<void(const std::string& /*username*/, const std::string& /*sanitized_username*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool IsGuestSessionActive(
+      bool* out_is_guest,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void IsGuestSessionActiveAsync(
+      base::OnceCallback<void(bool /*is_guest*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool HandleSupervisedUserCreationStarting(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void HandleSupervisedUserCreationStartingAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool HandleSupervisedUserCreationFinished(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void HandleSupervisedUserCreationFinishedAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool LockScreen(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void LockScreenAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool HandleLockScreenShown(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void HandleLockScreenShownAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool HandleLockScreenDismissed(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void HandleLockScreenDismissedAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool IsScreenLocked(
+      bool* out_screen_locked,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void IsScreenLockedAsync(
+      base::OnceCallback<void(bool /*screen_locked*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool RestartJob(
+      const brillo::dbus_utils::FileDescriptor& in_cred_fd,
+      const std::vector<std::string>& in_argv,
+      uint32_t in_mode,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void RestartJobAsync(
+      const brillo::dbus_utils::FileDescriptor& in_cred_fd,
+      const std::vector<std::string>& in_argv,
+      uint32_t in_mode,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StartDeviceWipe(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StartDeviceWipeAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StartRemoteDeviceWipe(
+      const std::vector<uint8_t>& in_signed_command,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StartRemoteDeviceWipeAsync(
+      const std::vector<uint8_t>& in_signed_command,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool ClearForcedReEnrollmentVpd(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void ClearForcedReEnrollmentVpdAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StartTPMFirmwareUpdate(
+      const std::string& in_update_mode,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StartTPMFirmwareUpdateAsync(
+      const std::string& in_update_mode,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetFlagsForUser(
+      const std::string& in_account_id,
+      const std::vector<std::string>& in_flags,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetFlagsForUserAsync(
+      const std::string& in_account_id,
+      const std::vector<std::string>& in_flags,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetFeatureFlagsForUser(
+      const std::string& in_account_id,
+      const std::vector<std::string>& in_feature_flags,
+      const std::map<std::string, std::string>& in_origin_list_flags,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetFeatureFlagsForUserAsync(
+      const std::string& in_account_id,
+      const std::vector<std::string>& in_feature_flags,
+      const std::map<std::string, std::string>& in_origin_list_flags,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetServerBackedStateKeys(
+      std::vector<std::vector<uint8_t>>* out_state_keys,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetServerBackedStateKeysAsync(
+      base::OnceCallback<void(const std::vector<std::vector<uint8_t>>& /*state_keys*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetPsmDeviceActiveSecret(
+      std::string* out_derived_secret,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetPsmDeviceActiveSecretAsync(
+      base::OnceCallback<void(const std::string& /*derived_secret*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool InitMachineInfo(
+      const std::string& in_data,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void InitMachineInfoAsync(
+      const std::string& in_data,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StartArcMiniContainer(
+      const std::vector<uint8_t>& in_request,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StartArcMiniContainerAsync(
+      const std::vector<uint8_t>& in_request,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool UpgradeArcContainer(
+      const std::vector<uint8_t>& in_request,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void UpgradeArcContainerAsync(
+      const std::vector<uint8_t>& in_request,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StopArcInstance(
+      const std::string& in_account_id,
+      bool in_should_backup_log,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StopArcInstanceAsync(
+      const std::string& in_account_id,
+      bool in_should_backup_log,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetArcCpuRestriction(
+      uint32_t in_restriction_state,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetArcCpuRestrictionAsync(
+      uint32_t in_restriction_state,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool EmitArcBooted(
+      const std::string& in_account_id,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void EmitArcBootedAsync(
+      const std::string& in_account_id,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetArcStartTimeTicks(
+      int64_t* out_start_time,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetArcStartTimeTicksAsync(
+      base::OnceCallback<void(int64_t /*start_time*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool EnableAdbSideload(
+      bool* out_reply,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void EnableAdbSideloadAsync(
+      base::OnceCallback<void(bool /*reply*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool QueryAdbSideload(
+      bool* out_reply,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void QueryAdbSideloadAsync(
+      base::OnceCallback<void(bool /*reply*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool StartBrowserDataMigration(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void StartBrowserDataMigrationAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void RegisterLoginPromptVisibleSignalHandler(
+      base::RepeatingClosure signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) = 0;
+
+  virtual void RegisterSessionStateChangedSignalHandler(
+      const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) = 0;
+
+  virtual void RegisterSetOwnerKeyCompleteSignalHandler(
+      const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) = 0;
+
+  virtual void RegisterPropertyChangeCompleteSignalHandler(
+      const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) = 0;
+
+  virtual void RegisterScreenIsLockedSignalHandler(
+      base::RepeatingClosure signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) = 0;
+
+  virtual void RegisterScreenIsUnlockedSignalHandler(
+      base::RepeatingClosure signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) = 0;
+
+  virtual void RegisterArcInstanceStoppedSignalHandler(
+      const base::RepeatingCallback<void(uint32_t)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) = 0;
+
+  virtual const dbus::ObjectPath& GetObjectPath() const = 0;
+  virtual dbus::ObjectProxy* GetObjectProxy() const = 0;
+};
+
+}  // namespace chromium
+}  // namespace org
+
+namespace org {
+namespace chromium {
+
+// Interface proxy for org::chromium::SessionManagerInterface.
+class SessionManagerInterfaceProxy final : public SessionManagerInterfaceProxyInterface {
+ public:
+  SessionManagerInterfaceProxy(const scoped_refptr<dbus::Bus>& bus) :
+      bus_{bus},
+      dbus_object_proxy_{
+          bus_->GetObjectProxy(service_name_, object_path_)} {
+  }
+
+  SessionManagerInterfaceProxy(const SessionManagerInterfaceProxy&) = delete;
+  SessionManagerInterfaceProxy& operator=(const SessionManagerInterfaceProxy&) = delete;
+
+  ~SessionManagerInterfaceProxy() override {
+  }
+
+  void RegisterLoginPromptVisibleSignalHandler(
+      base::RepeatingClosure signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) override {
+    brillo::dbus_utils::ConnectToSignal(
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginPromptVisible",
+        signal_callback,
+        std::move(on_connected_callback));
+  }
+
+  void RegisterSessionStateChangedSignalHandler(
+      const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) override {
+    brillo::dbus_utils::ConnectToSignal(
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SessionStateChanged",
+        signal_callback,
+        std::move(on_connected_callback));
+  }
+
+  void RegisterSetOwnerKeyCompleteSignalHandler(
+      const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) override {
+    brillo::dbus_utils::ConnectToSignal(
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SetOwnerKeyComplete",
+        signal_callback,
+        std::move(on_connected_callback));
+  }
+
+  void RegisterPropertyChangeCompleteSignalHandler(
+      const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) override {
+    brillo::dbus_utils::ConnectToSignal(
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "PropertyChangeComplete",
+        signal_callback,
+        std::move(on_connected_callback));
+  }
+
+  void RegisterScreenIsLockedSignalHandler(
+      base::RepeatingClosure signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) override {
+    brillo::dbus_utils::ConnectToSignal(
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "ScreenIsLocked",
+        signal_callback,
+        std::move(on_connected_callback));
+  }
+
+  void RegisterScreenIsUnlockedSignalHandler(
+      base::RepeatingClosure signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) override {
+    brillo::dbus_utils::ConnectToSignal(
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "ScreenIsUnlocked",
+        signal_callback,
+        std::move(on_connected_callback));
+  }
+
+  void RegisterArcInstanceStoppedSignalHandler(
+      const base::RepeatingCallback<void(uint32_t)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) override {
+    brillo::dbus_utils::ConnectToSignal(
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "ArcInstanceStopped",
+        signal_callback,
+        std::move(on_connected_callback));
+  }
+
+  void ReleaseObjectProxy(base::OnceClosure callback) {
+    bus_->RemoveObjectProxy(service_name_, object_path_, std::move(callback));
+  }
+
+  const dbus::ObjectPath& GetObjectPath() const override {
+    return object_path_;
+  }
+
+  dbus::ObjectProxy* GetObjectProxy() const override {
+    return dbus_object_proxy_;
+  }
+
+  bool EmitLoginPromptVisible(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EmitLoginPromptVisible",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void EmitLoginPromptVisibleAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EmitLoginPromptVisible",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool EmitAshInitialized(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EmitAshInitialized",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void EmitAshInitializedAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EmitAshInitialized",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool EnableChromeTesting(
+      bool in_force_relaunch,
+      const std::vector<std::string>& in_extra_arguments,
+      const std::vector<std::string>& in_extra_environment_variables,
+      std::string* out_filepath,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EnableChromeTesting",
+        error,
+        in_force_relaunch,
+        in_extra_arguments,
+        in_extra_environment_variables);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_filepath);
+  }
+
+  void EnableChromeTestingAsync(
+      bool in_force_relaunch,
+      const std::vector<std::string>& in_extra_arguments,
+      const std::vector<std::string>& in_extra_environment_variables,
+      base::OnceCallback<void(const std::string& /*filepath*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EnableChromeTesting",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_force_relaunch,
+        in_extra_arguments,
+        in_extra_environment_variables);
+  }
+
+  bool SaveLoginPassword(
+      const brillo::dbus_utils::FileDescriptor& in_password_fd,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SaveLoginPassword",
+        error,
+        in_password_fd);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SaveLoginPasswordAsync(
+      const brillo::dbus_utils::FileDescriptor& in_password_fd,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SaveLoginPassword",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_password_fd);
+  }
+
+  bool LoginScreenStorageStore(
+      const std::string& in_key,
+      const std::vector<uint8_t>& in_metadata,
+      uint64_t in_value_size,
+      const brillo::dbus_utils::FileDescriptor& in_value_fd,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginScreenStorageStore",
+        error,
+        in_key,
+        in_metadata,
+        in_value_size,
+        in_value_fd);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void LoginScreenStorageStoreAsync(
+      const std::string& in_key,
+      const std::vector<uint8_t>& in_metadata,
+      uint64_t in_value_size,
+      const brillo::dbus_utils::FileDescriptor& in_value_fd,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginScreenStorageStore",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_key,
+        in_metadata,
+        in_value_size,
+        in_value_fd);
+  }
+
+  bool LoginScreenStorageRetrieve(
+      const std::string& in_key,
+      uint64_t* out_value_size,
+      base::ScopedFD* out_value_fd,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginScreenStorageRetrieve",
+        error,
+        in_key);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_value_size, out_value_fd);
+  }
+
+  void LoginScreenStorageRetrieveAsync(
+      const std::string& in_key,
+      base::OnceCallback<void(uint64_t /*value_size*/, const base::ScopedFD& /*value_fd*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginScreenStorageRetrieve",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_key);
+  }
+
+  bool LoginScreenStorageListKeys(
+      std::vector<std::string>* out_keys,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginScreenStorageListKeys",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_keys);
+  }
+
+  void LoginScreenStorageListKeysAsync(
+      base::OnceCallback<void(const std::vector<std::string>& /*keys*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginScreenStorageListKeys",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool LoginScreenStorageDelete(
+      const std::string& in_key,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginScreenStorageDelete",
+        error,
+        in_key);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void LoginScreenStorageDeleteAsync(
+      const std::string& in_key,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoginScreenStorageDelete",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_key);
+  }
+
+  bool StartSession(
+      const std::string& in_account_id,
+      const std::string& in_unique_identifier,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartSession",
+        error,
+        in_account_id,
+        in_unique_identifier);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StartSessionAsync(
+      const std::string& in_account_id,
+      const std::string& in_unique_identifier,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartSession",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_account_id,
+        in_unique_identifier);
+  }
+
+  bool StopSession(
+      const std::string& in_unique_identifier,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StopSession",
+        error,
+        in_unique_identifier);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StopSessionAsync(
+      const std::string& in_unique_identifier,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StopSession",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_unique_identifier);
+  }
+
+  bool StopSessionWithReason(
+      uint32_t in_reason,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StopSessionWithReason",
+        error,
+        in_reason);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StopSessionWithReasonAsync(
+      uint32_t in_reason,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StopSessionWithReason",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_reason);
+  }
+
+  bool LoadShillProfile(
+      const std::string& in_account_id,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoadShillProfile",
+        error,
+        in_account_id);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void LoadShillProfileAsync(
+      const std::string& in_account_id,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LoadShillProfile",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_account_id);
+  }
+
+  bool StorePolicyEx(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      const std::vector<uint8_t>& in_policy_blob,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StorePolicyEx",
+        error,
+        in_descriptor_blob,
+        in_policy_blob);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StorePolicyExAsync(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      const std::vector<uint8_t>& in_policy_blob,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StorePolicyEx",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_descriptor_blob,
+        in_policy_blob);
+  }
+
+  bool StoreUnsignedPolicyEx(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      const std::vector<uint8_t>& in_policy_blob,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StoreUnsignedPolicyEx",
+        error,
+        in_descriptor_blob,
+        in_policy_blob);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StoreUnsignedPolicyExAsync(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      const std::vector<uint8_t>& in_policy_blob,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StoreUnsignedPolicyEx",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_descriptor_blob,
+        in_policy_blob);
+  }
+
+  bool ListStoredComponentPolicies(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      std::vector<std::string>* out_component_ids,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "ListStoredComponentPolicies",
+        error,
+        in_descriptor_blob);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_component_ids);
+  }
+
+  void ListStoredComponentPoliciesAsync(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      base::OnceCallback<void(const std::vector<std::string>& /*component_ids*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "ListStoredComponentPolicies",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_descriptor_blob);
+  }
+
+  bool RetrievePolicyEx(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      std::vector<uint8_t>* out_policy_blob,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RetrievePolicyEx",
+        error,
+        in_descriptor_blob);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_policy_blob);
+  }
+
+  void RetrievePolicyExAsync(
+      const std::vector<uint8_t>& in_descriptor_blob,
+      base::OnceCallback<void(const std::vector<uint8_t>& /*policy_blob*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RetrievePolicyEx",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_descriptor_blob);
+  }
+
+  bool RetrieveSessionState(
+      std::string* out_state,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RetrieveSessionState",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_state);
+  }
+
+  void RetrieveSessionStateAsync(
+      base::OnceCallback<void(const std::string& /*state*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RetrieveSessionState",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool RetrieveActiveSessions(
+      std::map<std::string, std::string>* out_sessions,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RetrieveActiveSessions",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_sessions);
+  }
+
+  void RetrieveActiveSessionsAsync(
+      base::OnceCallback<void(const std::map<std::string, std::string>& /*sessions*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RetrieveActiveSessions",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool RetrievePrimarySession(
+      std::string* out_username,
+      std::string* out_sanitized_username,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RetrievePrimarySession",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_username, out_sanitized_username);
+  }
+
+  void RetrievePrimarySessionAsync(
+      base::OnceCallback<void(const std::string& /*username*/, const std::string& /*sanitized_username*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RetrievePrimarySession",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool IsGuestSessionActive(
+      bool* out_is_guest,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "IsGuestSessionActive",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_is_guest);
+  }
+
+  void IsGuestSessionActiveAsync(
+      base::OnceCallback<void(bool /*is_guest*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "IsGuestSessionActive",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool HandleSupervisedUserCreationStarting(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "HandleSupervisedUserCreationStarting",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void HandleSupervisedUserCreationStartingAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "HandleSupervisedUserCreationStarting",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool HandleSupervisedUserCreationFinished(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "HandleSupervisedUserCreationFinished",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void HandleSupervisedUserCreationFinishedAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "HandleSupervisedUserCreationFinished",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool LockScreen(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LockScreen",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void LockScreenAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "LockScreen",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool HandleLockScreenShown(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "HandleLockScreenShown",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void HandleLockScreenShownAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "HandleLockScreenShown",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool HandleLockScreenDismissed(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "HandleLockScreenDismissed",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void HandleLockScreenDismissedAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "HandleLockScreenDismissed",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool IsScreenLocked(
+      bool* out_screen_locked,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "IsScreenLocked",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_screen_locked);
+  }
+
+  void IsScreenLockedAsync(
+      base::OnceCallback<void(bool /*screen_locked*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "IsScreenLocked",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool RestartJob(
+      const brillo::dbus_utils::FileDescriptor& in_cred_fd,
+      const std::vector<std::string>& in_argv,
+      uint32_t in_mode,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RestartJob",
+        error,
+        in_cred_fd,
+        in_argv,
+        in_mode);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void RestartJobAsync(
+      const brillo::dbus_utils::FileDescriptor& in_cred_fd,
+      const std::vector<std::string>& in_argv,
+      uint32_t in_mode,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "RestartJob",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_cred_fd,
+        in_argv,
+        in_mode);
+  }
+
+  bool StartDeviceWipe(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartDeviceWipe",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StartDeviceWipeAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartDeviceWipe",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool StartRemoteDeviceWipe(
+      const std::vector<uint8_t>& in_signed_command,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartRemoteDeviceWipe",
+        error,
+        in_signed_command);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StartRemoteDeviceWipeAsync(
+      const std::vector<uint8_t>& in_signed_command,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartRemoteDeviceWipe",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_signed_command);
+  }
+
+  bool ClearForcedReEnrollmentVpd(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "ClearForcedReEnrollmentVpd",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void ClearForcedReEnrollmentVpdAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "ClearForcedReEnrollmentVpd",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool StartTPMFirmwareUpdate(
+      const std::string& in_update_mode,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartTPMFirmwareUpdate",
+        error,
+        in_update_mode);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StartTPMFirmwareUpdateAsync(
+      const std::string& in_update_mode,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartTPMFirmwareUpdate",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_update_mode);
+  }
+
+  bool SetFlagsForUser(
+      const std::string& in_account_id,
+      const std::vector<std::string>& in_flags,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SetFlagsForUser",
+        error,
+        in_account_id,
+        in_flags);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetFlagsForUserAsync(
+      const std::string& in_account_id,
+      const std::vector<std::string>& in_flags,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SetFlagsForUser",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_account_id,
+        in_flags);
+  }
+
+  bool SetFeatureFlagsForUser(
+      const std::string& in_account_id,
+      const std::vector<std::string>& in_feature_flags,
+      const std::map<std::string, std::string>& in_origin_list_flags,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SetFeatureFlagsForUser",
+        error,
+        in_account_id,
+        in_feature_flags,
+        in_origin_list_flags);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetFeatureFlagsForUserAsync(
+      const std::string& in_account_id,
+      const std::vector<std::string>& in_feature_flags,
+      const std::map<std::string, std::string>& in_origin_list_flags,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SetFeatureFlagsForUser",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_account_id,
+        in_feature_flags,
+        in_origin_list_flags);
+  }
+
+  bool GetServerBackedStateKeys(
+      std::vector<std::vector<uint8_t>>* out_state_keys,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "GetServerBackedStateKeys",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_state_keys);
+  }
+
+  void GetServerBackedStateKeysAsync(
+      base::OnceCallback<void(const std::vector<std::vector<uint8_t>>& /*state_keys*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "GetServerBackedStateKeys",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool GetPsmDeviceActiveSecret(
+      std::string* out_derived_secret,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "GetPsmDeviceActiveSecret",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_derived_secret);
+  }
+
+  void GetPsmDeviceActiveSecretAsync(
+      base::OnceCallback<void(const std::string& /*derived_secret*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "GetPsmDeviceActiveSecret",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool InitMachineInfo(
+      const std::string& in_data,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "InitMachineInfo",
+        error,
+        in_data);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void InitMachineInfoAsync(
+      const std::string& in_data,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "InitMachineInfo",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_data);
+  }
+
+  bool StartArcMiniContainer(
+      const std::vector<uint8_t>& in_request,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartArcMiniContainer",
+        error,
+        in_request);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StartArcMiniContainerAsync(
+      const std::vector<uint8_t>& in_request,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartArcMiniContainer",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_request);
+  }
+
+  bool UpgradeArcContainer(
+      const std::vector<uint8_t>& in_request,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "UpgradeArcContainer",
+        error,
+        in_request);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void UpgradeArcContainerAsync(
+      const std::vector<uint8_t>& in_request,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "UpgradeArcContainer",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_request);
+  }
+
+  bool StopArcInstance(
+      const std::string& in_account_id,
+      bool in_should_backup_log,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StopArcInstance",
+        error,
+        in_account_id,
+        in_should_backup_log);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StopArcInstanceAsync(
+      const std::string& in_account_id,
+      bool in_should_backup_log,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StopArcInstance",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_account_id,
+        in_should_backup_log);
+  }
+
+  bool SetArcCpuRestriction(
+      uint32_t in_restriction_state,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SetArcCpuRestriction",
+        error,
+        in_restriction_state);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetArcCpuRestrictionAsync(
+      uint32_t in_restriction_state,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "SetArcCpuRestriction",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_restriction_state);
+  }
+
+  bool EmitArcBooted(
+      const std::string& in_account_id,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EmitArcBooted",
+        error,
+        in_account_id);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void EmitArcBootedAsync(
+      const std::string& in_account_id,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EmitArcBooted",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_account_id);
+  }
+
+  bool GetArcStartTimeTicks(
+      int64_t* out_start_time,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "GetArcStartTimeTicks",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_start_time);
+  }
+
+  void GetArcStartTimeTicksAsync(
+      base::OnceCallback<void(int64_t /*start_time*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "GetArcStartTimeTicks",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool EnableAdbSideload(
+      bool* out_reply,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EnableAdbSideload",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_reply);
+  }
+
+  void EnableAdbSideloadAsync(
+      base::OnceCallback<void(bool /*reply*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "EnableAdbSideload",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool QueryAdbSideload(
+      bool* out_reply,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "QueryAdbSideload",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_reply);
+  }
+
+  void QueryAdbSideloadAsync(
+      base::OnceCallback<void(bool /*reply*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "QueryAdbSideload",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool StartBrowserDataMigration(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartBrowserDataMigration",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void StartBrowserDataMigrationAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.SessionManagerInterface",
+        "StartBrowserDataMigration",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+ private:
+  scoped_refptr<dbus::Bus> bus_;
+  const std::string service_name_{"org.chromium.SessionManager"};
+  const dbus::ObjectPath object_path_{"/org/chromium/SessionManager"};
+  dbus::ObjectProxy* dbus_object_proxy_;
+
+};
+
+}  // namespace chromium
+}  // namespace org
+
+#endif  // ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_SESSION_MANAGER_CLIENT_OUT_DEFAULT_GEN_INCLUDE_SESSION_MANAGER_DBUS_PROXIES_H
diff --git a/chroot/var/cache/portage/chromeos-base/session_manager-client/out/Default/gen/include/session_manager/dbus-proxy-mocks.h b/chroot/var/cache/portage/chromeos-base/session_manager-client/out/Default/gen/include/session_manager/dbus-proxy-mocks.h
new file mode 100644
index 0000000..7ae0fa5
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/session_manager-client/out/Default/gen/include/session_manager/dbus-proxy-mocks.h
@@ -0,0 +1,497 @@
+// Automatic generation of D-Bus interface mock proxies for:
+//  - org.chromium.SessionManagerInterface
+#ifndef ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_SESSION_MANAGER_CLIENT_OUT_DEFAULT_GEN_INCLUDE_SESSION_MANAGER_DBUS_PROXY_MOCKS_H
+#define ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_SESSION_MANAGER_CLIENT_OUT_DEFAULT_GEN_INCLUDE_SESSION_MANAGER_DBUS_PROXY_MOCKS_H
+#include <string>
+#include <vector>
+
+#include <base/callback_forward.h>
+#include <base/logging.h>
+#include <brillo/any.h>
+#include <brillo/errors/error.h>
+#include <brillo/variant_dictionary.h>
+#include <gmock/gmock.h>
+
+#include "session_manager/dbus-proxies.h"
+
+namespace org {
+namespace chromium {
+
+// Mock object for SessionManagerInterfaceProxyInterface.
+class SessionManagerInterfaceProxyMock : public SessionManagerInterfaceProxyInterface {
+ public:
+  SessionManagerInterfaceProxyMock() = default;
+  SessionManagerInterfaceProxyMock(const SessionManagerInterfaceProxyMock&) = delete;
+  SessionManagerInterfaceProxyMock& operator=(const SessionManagerInterfaceProxyMock&) = delete;
+
+  MOCK_METHOD2(EmitLoginPromptVisible,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(EmitLoginPromptVisibleAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(EmitAshInitialized,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(EmitAshInitializedAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD6(EnableChromeTesting,
+               bool(bool /*in_force_relaunch*/,
+                    const std::vector<std::string>& /*in_extra_arguments*/,
+                    const std::vector<std::string>& /*in_extra_environment_variables*/,
+                    std::string* /*out_filepath*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD6(EnableChromeTestingAsync,
+               void(bool /*in_force_relaunch*/,
+                    const std::vector<std::string>& /*in_extra_arguments*/,
+                    const std::vector<std::string>& /*in_extra_environment_variables*/,
+                    base::OnceCallback<void(const std::string& /*filepath*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(SaveLoginPassword,
+               bool(const brillo::dbus_utils::FileDescriptor& /*in_password_fd*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SaveLoginPasswordAsync,
+               void(const brillo::dbus_utils::FileDescriptor& /*in_password_fd*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD6(LoginScreenStorageStore,
+               bool(const std::string& /*in_key*/,
+                    const std::vector<uint8_t>& /*in_metadata*/,
+                    uint64_t /*in_value_size*/,
+                    const brillo::dbus_utils::FileDescriptor& /*in_value_fd*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD7(LoginScreenStorageStoreAsync,
+               void(const std::string& /*in_key*/,
+                    const std::vector<uint8_t>& /*in_metadata*/,
+                    uint64_t /*in_value_size*/,
+                    const brillo::dbus_utils::FileDescriptor& /*in_value_fd*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(LoginScreenStorageRetrieve,
+               bool(const std::string& /*in_key*/,
+                    uint64_t* /*out_value_size*/,
+                    base::ScopedFD* /*out_value_fd*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(LoginScreenStorageRetrieveAsync,
+               void(const std::string& /*in_key*/,
+                    base::OnceCallback<void(uint64_t /*value_size*/, const base::ScopedFD& /*value_fd*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(LoginScreenStorageListKeys,
+               bool(std::vector<std::string>* /*out_keys*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(LoginScreenStorageListKeysAsync,
+               void(base::OnceCallback<void(const std::vector<std::string>& /*keys*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(LoginScreenStorageDelete,
+               bool(const std::string& /*in_key*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(LoginScreenStorageDeleteAsync,
+               void(const std::string& /*in_key*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StartSession,
+               bool(const std::string& /*in_account_id*/,
+                    const std::string& /*in_unique_identifier*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(StartSessionAsync,
+               void(const std::string& /*in_account_id*/,
+                    const std::string& /*in_unique_identifier*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(StopSession,
+               bool(const std::string& /*in_unique_identifier*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StopSessionAsync,
+               void(const std::string& /*in_unique_identifier*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(StopSessionWithReason,
+               bool(uint32_t /*in_reason*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StopSessionWithReasonAsync,
+               void(uint32_t /*in_reason*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(LoadShillProfile,
+               bool(const std::string& /*in_account_id*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(LoadShillProfileAsync,
+               void(const std::string& /*in_account_id*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StorePolicyEx,
+               bool(const std::vector<uint8_t>& /*in_descriptor_blob*/,
+                    const std::vector<uint8_t>& /*in_policy_blob*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(StorePolicyExAsync,
+               void(const std::vector<uint8_t>& /*in_descriptor_blob*/,
+                    const std::vector<uint8_t>& /*in_policy_blob*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StoreUnsignedPolicyEx,
+               bool(const std::vector<uint8_t>& /*in_descriptor_blob*/,
+                    const std::vector<uint8_t>& /*in_policy_blob*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(StoreUnsignedPolicyExAsync,
+               void(const std::vector<uint8_t>& /*in_descriptor_blob*/,
+                    const std::vector<uint8_t>& /*in_policy_blob*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(ListStoredComponentPolicies,
+               bool(const std::vector<uint8_t>& /*in_descriptor_blob*/,
+                    std::vector<std::string>* /*out_component_ids*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(ListStoredComponentPoliciesAsync,
+               void(const std::vector<uint8_t>& /*in_descriptor_blob*/,
+                    base::OnceCallback<void(const std::vector<std::string>& /*component_ids*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(RetrievePolicyEx,
+               bool(const std::vector<uint8_t>& /*in_descriptor_blob*/,
+                    std::vector<uint8_t>* /*out_policy_blob*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(RetrievePolicyExAsync,
+               void(const std::vector<uint8_t>& /*in_descriptor_blob*/,
+                    base::OnceCallback<void(const std::vector<uint8_t>& /*policy_blob*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(RetrieveSessionState,
+               bool(std::string* /*out_state*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(RetrieveSessionStateAsync,
+               void(base::OnceCallback<void(const std::string& /*state*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(RetrieveActiveSessions,
+               bool(std::map<std::string, std::string>* /*out_sessions*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(RetrieveActiveSessionsAsync,
+               void(base::OnceCallback<void(const std::map<std::string, std::string>& /*sessions*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(RetrievePrimarySession,
+               bool(std::string* /*out_username*/,
+                    std::string* /*out_sanitized_username*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(RetrievePrimarySessionAsync,
+               void(base::OnceCallback<void(const std::string& /*username*/, const std::string& /*sanitized_username*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(IsGuestSessionActive,
+               bool(bool* /*out_is_guest*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(IsGuestSessionActiveAsync,
+               void(base::OnceCallback<void(bool /*is_guest*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(HandleSupervisedUserCreationStarting,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(HandleSupervisedUserCreationStartingAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(HandleSupervisedUserCreationFinished,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(HandleSupervisedUserCreationFinishedAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(LockScreen,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(LockScreenAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(HandleLockScreenShown,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(HandleLockScreenShownAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(HandleLockScreenDismissed,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(HandleLockScreenDismissedAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(IsScreenLocked,
+               bool(bool* /*out_screen_locked*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(IsScreenLockedAsync,
+               void(base::OnceCallback<void(bool /*screen_locked*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(RestartJob,
+               bool(const brillo::dbus_utils::FileDescriptor& /*in_cred_fd*/,
+                    const std::vector<std::string>& /*in_argv*/,
+                    uint32_t /*in_mode*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD6(RestartJobAsync,
+               void(const brillo::dbus_utils::FileDescriptor& /*in_cred_fd*/,
+                    const std::vector<std::string>& /*in_argv*/,
+                    uint32_t /*in_mode*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(StartDeviceWipe,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(StartDeviceWipeAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(StartRemoteDeviceWipe,
+               bool(const std::vector<uint8_t>& /*in_signed_command*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StartRemoteDeviceWipeAsync,
+               void(const std::vector<uint8_t>& /*in_signed_command*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(ClearForcedReEnrollmentVpd,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(ClearForcedReEnrollmentVpdAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(StartTPMFirmwareUpdate,
+               bool(const std::string& /*in_update_mode*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StartTPMFirmwareUpdateAsync,
+               void(const std::string& /*in_update_mode*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetFlagsForUser,
+               bool(const std::string& /*in_account_id*/,
+                    const std::vector<std::string>& /*in_flags*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(SetFlagsForUserAsync,
+               void(const std::string& /*in_account_id*/,
+                    const std::vector<std::string>& /*in_flags*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(SetFeatureFlagsForUser,
+               bool(const std::string& /*in_account_id*/,
+                    const std::vector<std::string>& /*in_feature_flags*/,
+                    const std::map<std::string, std::string>& /*in_origin_list_flags*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD6(SetFeatureFlagsForUserAsync,
+               void(const std::string& /*in_account_id*/,
+                    const std::vector<std::string>& /*in_feature_flags*/,
+                    const std::map<std::string, std::string>& /*in_origin_list_flags*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetServerBackedStateKeys,
+               bool(std::vector<std::vector<uint8_t>>* /*out_state_keys*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetServerBackedStateKeysAsync,
+               void(base::OnceCallback<void(const std::vector<std::vector<uint8_t>>& /*state_keys*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetPsmDeviceActiveSecret,
+               bool(std::string* /*out_derived_secret*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetPsmDeviceActiveSecretAsync,
+               void(base::OnceCallback<void(const std::string& /*derived_secret*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(InitMachineInfo,
+               bool(const std::string& /*in_data*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(InitMachineInfoAsync,
+               void(const std::string& /*in_data*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(StartArcMiniContainer,
+               bool(const std::vector<uint8_t>& /*in_request*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StartArcMiniContainerAsync,
+               void(const std::vector<uint8_t>& /*in_request*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(UpgradeArcContainer,
+               bool(const std::vector<uint8_t>& /*in_request*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(UpgradeArcContainerAsync,
+               void(const std::vector<uint8_t>& /*in_request*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(StopArcInstance,
+               bool(const std::string& /*in_account_id*/,
+                    bool /*in_should_backup_log*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(StopArcInstanceAsync,
+               void(const std::string& /*in_account_id*/,
+                    bool /*in_should_backup_log*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(SetArcCpuRestriction,
+               bool(uint32_t /*in_restriction_state*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetArcCpuRestrictionAsync,
+               void(uint32_t /*in_restriction_state*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(EmitArcBooted,
+               bool(const std::string& /*in_account_id*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(EmitArcBootedAsync,
+               void(const std::string& /*in_account_id*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetArcStartTimeTicks,
+               bool(int64_t* /*out_start_time*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetArcStartTimeTicksAsync,
+               void(base::OnceCallback<void(int64_t /*start_time*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(EnableAdbSideload,
+               bool(bool* /*out_reply*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(EnableAdbSideloadAsync,
+               void(base::OnceCallback<void(bool /*reply*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(QueryAdbSideload,
+               bool(bool* /*out_reply*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(QueryAdbSideloadAsync,
+               void(base::OnceCallback<void(bool /*reply*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(StartBrowserDataMigration,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(StartBrowserDataMigrationAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  void RegisterLoginPromptVisibleSignalHandler(
+    base::RepeatingClosure signal_callback,
+    dbus::ObjectProxy::OnConnectedCallback on_connected_callback) {
+    DoRegisterLoginPromptVisibleSignalHandler(signal_callback, &on_connected_callback);
+  }
+  MOCK_METHOD2(DoRegisterLoginPromptVisibleSignalHandler,
+               void(base::RepeatingClosure /*signal_callback*/,
+                    dbus::ObjectProxy::OnConnectedCallback* /*on_connected_callback*/));
+  void RegisterSessionStateChangedSignalHandler(
+    const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+    dbus::ObjectProxy::OnConnectedCallback on_connected_callback) {
+    DoRegisterSessionStateChangedSignalHandler(signal_callback, &on_connected_callback);
+  }
+  MOCK_METHOD2(DoRegisterSessionStateChangedSignalHandler,
+               void(const base::RepeatingCallback<void(const std::string&)>& /*signal_callback*/,
+                    dbus::ObjectProxy::OnConnectedCallback* /*on_connected_callback*/));
+  void RegisterSetOwnerKeyCompleteSignalHandler(
+    const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+    dbus::ObjectProxy::OnConnectedCallback on_connected_callback) {
+    DoRegisterSetOwnerKeyCompleteSignalHandler(signal_callback, &on_connected_callback);
+  }
+  MOCK_METHOD2(DoRegisterSetOwnerKeyCompleteSignalHandler,
+               void(const base::RepeatingCallback<void(const std::string&)>& /*signal_callback*/,
+                    dbus::ObjectProxy::OnConnectedCallback* /*on_connected_callback*/));
+  void RegisterPropertyChangeCompleteSignalHandler(
+    const base::RepeatingCallback<void(const std::string&)>& signal_callback,
+    dbus::ObjectProxy::OnConnectedCallback on_connected_callback) {
+    DoRegisterPropertyChangeCompleteSignalHandler(signal_callback, &on_connected_callback);
+  }
+  MOCK_METHOD2(DoRegisterPropertyChangeCompleteSignalHandler,
+               void(const base::RepeatingCallback<void(const std::string&)>& /*signal_callback*/,
+                    dbus::ObjectProxy::OnConnectedCallback* /*on_connected_callback*/));
+  void RegisterScreenIsLockedSignalHandler(
+    base::RepeatingClosure signal_callback,
+    dbus::ObjectProxy::OnConnectedCallback on_connected_callback) {
+    DoRegisterScreenIsLockedSignalHandler(signal_callback, &on_connected_callback);
+  }
+  MOCK_METHOD2(DoRegisterScreenIsLockedSignalHandler,
+               void(base::RepeatingClosure /*signal_callback*/,
+                    dbus::ObjectProxy::OnConnectedCallback* /*on_connected_callback*/));
+  void RegisterScreenIsUnlockedSignalHandler(
+    base::RepeatingClosure signal_callback,
+    dbus::ObjectProxy::OnConnectedCallback on_connected_callback) {
+    DoRegisterScreenIsUnlockedSignalHandler(signal_callback, &on_connected_callback);
+  }
+  MOCK_METHOD2(DoRegisterScreenIsUnlockedSignalHandler,
+               void(base::RepeatingClosure /*signal_callback*/,
+                    dbus::ObjectProxy::OnConnectedCallback* /*on_connected_callback*/));
+  void RegisterArcInstanceStoppedSignalHandler(
+    const base::RepeatingCallback<void(uint32_t)>& signal_callback,
+    dbus::ObjectProxy::OnConnectedCallback on_connected_callback) {
+    DoRegisterArcInstanceStoppedSignalHandler(signal_callback, &on_connected_callback);
+  }
+  MOCK_METHOD2(DoRegisterArcInstanceStoppedSignalHandler,
+               void(const base::RepeatingCallback<void(uint32_t)>& /*signal_callback*/,
+                    dbus::ObjectProxy::OnConnectedCallback* /*on_connected_callback*/));
+  MOCK_CONST_METHOD0(GetObjectPath, const dbus::ObjectPath&());
+  MOCK_CONST_METHOD0(GetObjectProxy, dbus::ObjectProxy*());
+};
+}  // namespace chromium
+}  // namespace org
+
+#endif  // ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_SESSION_MANAGER_CLIENT_OUT_DEFAULT_GEN_INCLUDE_SESSION_MANAGER_DBUS_PROXY_MOCKS_H
diff --git a/chroot/var/cache/portage/chromeos-base/update_engine-client/out/Default/gen/include/update_engine/dbus-proxies.h b/chroot/var/cache/portage/chromeos-base/update_engine-client/out/Default/gen/include/update_engine/dbus-proxies.h
new file mode 100644
index 0000000..1184364
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/update_engine-client/out/Default/gen/include/update_engine/dbus-proxies.h
@@ -0,0 +1,1103 @@
+// Automatic generation of D-Bus interfaces:
+//  - org.chromium.UpdateEngineInterface
+#ifndef ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_UPDATE_ENGINE_CLIENT_OUT_DEFAULT_GEN_INCLUDE_UPDATE_ENGINE_DBUS_PROXIES_H
+#define ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_UPDATE_ENGINE_CLIENT_OUT_DEFAULT_GEN_INCLUDE_UPDATE_ENGINE_DBUS_PROXIES_H
+#include <memory>
+#include <string>
+#include <vector>
+
+#include <base/bind.h>
+#include <base/callback.h>
+#include <base/files/scoped_file.h>
+#include <base/logging.h>
+#include <base/memory/ref_counted.h>
+#include <brillo/any.h>
+#include <brillo/dbus/dbus_method_invoker.h>
+#include <brillo/dbus/dbus_property.h>
+#include <brillo/dbus/dbus_signal_handler.h>
+#include <brillo/dbus/file_descriptor.h>
+#include <brillo/errors/error.h>
+#include <brillo/variant_dictionary.h>
+#include <dbus/bus.h>
+#include <dbus/message.h>
+#include <dbus/object_manager.h>
+#include <dbus/object_path.h>
+#include <dbus/object_proxy.h>
+
+namespace org {
+namespace chromium {
+
+// Abstract interface proxy for org::chromium::UpdateEngineInterface.
+class UpdateEngineInterfaceProxyInterface {
+ public:
+  virtual ~UpdateEngineInterfaceProxyInterface() = default;
+
+  virtual bool Update(
+      const update_engine::UpdateParams& in_update_params,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void UpdateAsync(
+      const update_engine::UpdateParams& in_update_params,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool ApplyDeferredUpdate(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void ApplyDeferredUpdateAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool AttemptInstall(
+      const std::string& in_omaha_url,
+      const std::vector<std::string>& in_dlc_ids,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void AttemptInstallAsync(
+      const std::string& in_omaha_url,
+      const std::vector<std::string>& in_dlc_ids,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool AttemptRollback(
+      bool in_powerwash,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void AttemptRollbackAsync(
+      bool in_powerwash,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool CanRollback(
+      bool* out_can_rollback,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void CanRollbackAsync(
+      base::OnceCallback<void(bool /*can_rollback*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool ResetStatus(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void ResetStatusAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetDlcActiveValue(
+      bool in_is_active,
+      const std::string& in_dlc_id,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetDlcActiveValueAsync(
+      bool in_is_active,
+      const std::string& in_dlc_id,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetStatusAdvanced(
+      update_engine::StatusResult* out_status,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetStatusAdvancedAsync(
+      base::OnceCallback<void(const update_engine::StatusResult& /*status*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetStatus(
+      int32_t in_update_status,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetStatusAsync(
+      int32_t in_update_status,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool RebootIfNeeded(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void RebootIfNeededAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetChannel(
+      const std::string& in_target_channel,
+      bool in_is_powerwash_allowed,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetChannelAsync(
+      const std::string& in_target_channel,
+      bool in_is_powerwash_allowed,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetChannel(
+      bool in_get_current_channel,
+      std::string* out_channel,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetChannelAsync(
+      bool in_get_current_channel,
+      base::OnceCallback<void(const std::string& /*channel*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetCohortHint(
+      const std::string& in_cohort_hint,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetCohortHintAsync(
+      const std::string& in_cohort_hint,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetCohortHint(
+      std::string* out_cohort_hint,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetCohortHintAsync(
+      base::OnceCallback<void(const std::string& /*cohort_hint*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetP2PUpdatePermission(
+      bool in_enabled,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetP2PUpdatePermissionAsync(
+      bool in_enabled,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetP2PUpdatePermission(
+      bool* out_enabled,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetP2PUpdatePermissionAsync(
+      base::OnceCallback<void(bool /*enabled*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetUpdateOverCellularPermission(
+      bool in_allowed,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetUpdateOverCellularPermissionAsync(
+      bool in_allowed,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool SetUpdateOverCellularTarget(
+      const std::string& in_target_version,
+      int64_t in_target_size,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void SetUpdateOverCellularTargetAsync(
+      const std::string& in_target_version,
+      int64_t in_target_size,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetUpdateOverCellularPermission(
+      bool* out_allowed,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetUpdateOverCellularPermissionAsync(
+      base::OnceCallback<void(bool /*allowed*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool ToggleFeature(
+      const std::string& in_feature,
+      bool in_enable,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void ToggleFeatureAsync(
+      const std::string& in_feature,
+      bool in_enable,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool IsFeatureEnabled(
+      const std::string& in_feature,
+      bool* out_enabled,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void IsFeatureEnabledAsync(
+      const std::string& in_feature,
+      base::OnceCallback<void(bool /*enabled*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetDurationSinceUpdate(
+      int64_t* out_usec_wallclock,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetDurationSinceUpdateAsync(
+      base::OnceCallback<void(int64_t /*usec_wallclock*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetPrevVersion(
+      std::string* out_prev_version,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetPrevVersionAsync(
+      base::OnceCallback<void(const std::string& /*prev_version*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetRollbackPartition(
+      std::string* out_rollback_partition_name,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetRollbackPartitionAsync(
+      base::OnceCallback<void(const std::string& /*rollback_partition_name*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual bool GetLastAttemptError(
+      int32_t* out_last_attempt_error,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void GetLastAttemptErrorAsync(
+      base::OnceCallback<void(int32_t /*last_attempt_error*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) = 0;
+
+  virtual void RegisterStatusUpdateAdvancedSignalHandler(
+      const base::RepeatingCallback<void(const update_engine::StatusResult&)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) = 0;
+
+  virtual const dbus::ObjectPath& GetObjectPath() const = 0;
+  virtual dbus::ObjectProxy* GetObjectProxy() const = 0;
+};
+
+}  // namespace chromium
+}  // namespace org
+
+namespace org {
+namespace chromium {
+
+// Interface proxy for org::chromium::UpdateEngineInterface.
+class UpdateEngineInterfaceProxy final : public UpdateEngineInterfaceProxyInterface {
+ public:
+  UpdateEngineInterfaceProxy(const scoped_refptr<dbus::Bus>& bus) :
+      bus_{bus},
+      dbus_object_proxy_{
+          bus_->GetObjectProxy(service_name_, object_path_)} {
+  }
+
+  UpdateEngineInterfaceProxy(const UpdateEngineInterfaceProxy&) = delete;
+  UpdateEngineInterfaceProxy& operator=(const UpdateEngineInterfaceProxy&) = delete;
+
+  ~UpdateEngineInterfaceProxy() override {
+  }
+
+  void RegisterStatusUpdateAdvancedSignalHandler(
+      const base::RepeatingCallback<void(const update_engine::StatusResult&)>& signal_callback,
+      dbus::ObjectProxy::OnConnectedCallback on_connected_callback) override {
+    brillo::dbus_utils::ConnectToSignal(
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "StatusUpdateAdvanced",
+        signal_callback,
+        std::move(on_connected_callback));
+  }
+
+  void ReleaseObjectProxy(base::OnceClosure callback) {
+    bus_->RemoveObjectProxy(service_name_, object_path_, std::move(callback));
+  }
+
+  const dbus::ObjectPath& GetObjectPath() const override {
+    return object_path_;
+  }
+
+  dbus::ObjectProxy* GetObjectProxy() const override {
+    return dbus_object_proxy_;
+  }
+
+  bool Update(
+      const update_engine::UpdateParams& in_update_params,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "Update",
+        error,
+        in_update_params);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void UpdateAsync(
+      const update_engine::UpdateParams& in_update_params,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "Update",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_update_params);
+  }
+
+  bool ApplyDeferredUpdate(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "ApplyDeferredUpdate",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void ApplyDeferredUpdateAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "ApplyDeferredUpdate",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool AttemptInstall(
+      const std::string& in_omaha_url,
+      const std::vector<std::string>& in_dlc_ids,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "AttemptInstall",
+        error,
+        in_omaha_url,
+        in_dlc_ids);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void AttemptInstallAsync(
+      const std::string& in_omaha_url,
+      const std::vector<std::string>& in_dlc_ids,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "AttemptInstall",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_omaha_url,
+        in_dlc_ids);
+  }
+
+  bool AttemptRollback(
+      bool in_powerwash,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "AttemptRollback",
+        error,
+        in_powerwash);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void AttemptRollbackAsync(
+      bool in_powerwash,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "AttemptRollback",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_powerwash);
+  }
+
+  bool CanRollback(
+      bool* out_can_rollback,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "CanRollback",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_can_rollback);
+  }
+
+  void CanRollbackAsync(
+      base::OnceCallback<void(bool /*can_rollback*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "CanRollback",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool ResetStatus(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "ResetStatus",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void ResetStatusAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "ResetStatus",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool SetDlcActiveValue(
+      bool in_is_active,
+      const std::string& in_dlc_id,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetDlcActiveValue",
+        error,
+        in_is_active,
+        in_dlc_id);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetDlcActiveValueAsync(
+      bool in_is_active,
+      const std::string& in_dlc_id,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetDlcActiveValue",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_is_active,
+        in_dlc_id);
+  }
+
+  bool GetStatusAdvanced(
+      update_engine::StatusResult* out_status,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetStatusAdvanced",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_status);
+  }
+
+  void GetStatusAdvancedAsync(
+      base::OnceCallback<void(const update_engine::StatusResult& /*status*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetStatusAdvanced",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool SetStatus(
+      int32_t in_update_status,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetStatus",
+        error,
+        in_update_status);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetStatusAsync(
+      int32_t in_update_status,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetStatus",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_update_status);
+  }
+
+  bool RebootIfNeeded(
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "RebootIfNeeded",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void RebootIfNeededAsync(
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "RebootIfNeeded",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool SetChannel(
+      const std::string& in_target_channel,
+      bool in_is_powerwash_allowed,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetChannel",
+        error,
+        in_target_channel,
+        in_is_powerwash_allowed);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetChannelAsync(
+      const std::string& in_target_channel,
+      bool in_is_powerwash_allowed,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetChannel",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_target_channel,
+        in_is_powerwash_allowed);
+  }
+
+  bool GetChannel(
+      bool in_get_current_channel,
+      std::string* out_channel,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetChannel",
+        error,
+        in_get_current_channel);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_channel);
+  }
+
+  void GetChannelAsync(
+      bool in_get_current_channel,
+      base::OnceCallback<void(const std::string& /*channel*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetChannel",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_get_current_channel);
+  }
+
+  bool SetCohortHint(
+      const std::string& in_cohort_hint,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetCohortHint",
+        error,
+        in_cohort_hint);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetCohortHintAsync(
+      const std::string& in_cohort_hint,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetCohortHint",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_cohort_hint);
+  }
+
+  bool GetCohortHint(
+      std::string* out_cohort_hint,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetCohortHint",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_cohort_hint);
+  }
+
+  void GetCohortHintAsync(
+      base::OnceCallback<void(const std::string& /*cohort_hint*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetCohortHint",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool SetP2PUpdatePermission(
+      bool in_enabled,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetP2PUpdatePermission",
+        error,
+        in_enabled);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetP2PUpdatePermissionAsync(
+      bool in_enabled,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetP2PUpdatePermission",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_enabled);
+  }
+
+  bool GetP2PUpdatePermission(
+      bool* out_enabled,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetP2PUpdatePermission",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_enabled);
+  }
+
+  void GetP2PUpdatePermissionAsync(
+      base::OnceCallback<void(bool /*enabled*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetP2PUpdatePermission",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool SetUpdateOverCellularPermission(
+      bool in_allowed,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetUpdateOverCellularPermission",
+        error,
+        in_allowed);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetUpdateOverCellularPermissionAsync(
+      bool in_allowed,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetUpdateOverCellularPermission",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_allowed);
+  }
+
+  bool SetUpdateOverCellularTarget(
+      const std::string& in_target_version,
+      int64_t in_target_size,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetUpdateOverCellularTarget",
+        error,
+        in_target_version,
+        in_target_size);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void SetUpdateOverCellularTargetAsync(
+      const std::string& in_target_version,
+      int64_t in_target_size,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "SetUpdateOverCellularTarget",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_target_version,
+        in_target_size);
+  }
+
+  bool GetUpdateOverCellularPermission(
+      bool* out_allowed,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetUpdateOverCellularPermission",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_allowed);
+  }
+
+  void GetUpdateOverCellularPermissionAsync(
+      base::OnceCallback<void(bool /*allowed*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetUpdateOverCellularPermission",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool ToggleFeature(
+      const std::string& in_feature,
+      bool in_enable,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "ToggleFeature",
+        error,
+        in_feature,
+        in_enable);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error);
+  }
+
+  void ToggleFeatureAsync(
+      const std::string& in_feature,
+      bool in_enable,
+      base::OnceCallback<void()> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "ToggleFeature",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_feature,
+        in_enable);
+  }
+
+  bool IsFeatureEnabled(
+      const std::string& in_feature,
+      bool* out_enabled,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "IsFeatureEnabled",
+        error,
+        in_feature);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_enabled);
+  }
+
+  void IsFeatureEnabledAsync(
+      const std::string& in_feature,
+      base::OnceCallback<void(bool /*enabled*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "IsFeatureEnabled",
+        std::move(success_callback),
+        std::move(error_callback),
+        in_feature);
+  }
+
+  bool GetDurationSinceUpdate(
+      int64_t* out_usec_wallclock,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetDurationSinceUpdate",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_usec_wallclock);
+  }
+
+  void GetDurationSinceUpdateAsync(
+      base::OnceCallback<void(int64_t /*usec_wallclock*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetDurationSinceUpdate",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool GetPrevVersion(
+      std::string* out_prev_version,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetPrevVersion",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_prev_version);
+  }
+
+  void GetPrevVersionAsync(
+      base::OnceCallback<void(const std::string& /*prev_version*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetPrevVersion",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool GetRollbackPartition(
+      std::string* out_rollback_partition_name,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetRollbackPartition",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_rollback_partition_name);
+  }
+
+  void GetRollbackPartitionAsync(
+      base::OnceCallback<void(const std::string& /*rollback_partition_name*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetRollbackPartition",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+  bool GetLastAttemptError(
+      int32_t* out_last_attempt_error,
+      brillo::ErrorPtr* error,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    auto response = brillo::dbus_utils::CallMethodAndBlockWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetLastAttemptError",
+        error);
+    return response && brillo::dbus_utils::ExtractMethodCallResults(
+        response.get(), error, out_last_attempt_error);
+  }
+
+  void GetLastAttemptErrorAsync(
+      base::OnceCallback<void(int32_t /*last_attempt_error*/)> success_callback,
+      base::OnceCallback<void(brillo::Error*)> error_callback,
+      int timeout_ms = dbus::ObjectProxy::TIMEOUT_USE_DEFAULT) override {
+    brillo::dbus_utils::CallMethodWithTimeout(
+        timeout_ms,
+        dbus_object_proxy_,
+        "org.chromium.UpdateEngineInterface",
+        "GetLastAttemptError",
+        std::move(success_callback),
+        std::move(error_callback));
+  }
+
+ private:
+  scoped_refptr<dbus::Bus> bus_;
+  const std::string service_name_{"org.chromium.UpdateEngine"};
+  const dbus::ObjectPath object_path_{"/org/chromium/UpdateEngine"};
+  dbus::ObjectProxy* dbus_object_proxy_;
+
+};
+
+}  // namespace chromium
+}  // namespace org
+
+#endif  // ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_UPDATE_ENGINE_CLIENT_OUT_DEFAULT_GEN_INCLUDE_UPDATE_ENGINE_DBUS_PROXIES_H
diff --git a/chroot/var/cache/portage/chromeos-base/update_engine-client/out/Default/gen/include/update_engine/dbus-proxy-mocks.h b/chroot/var/cache/portage/chromeos-base/update_engine-client/out/Default/gen/include/update_engine/dbus-proxy-mocks.h
new file mode 100644
index 0000000..de126a5
--- /dev/null
+++ b/chroot/var/cache/portage/chromeos-base/update_engine-client/out/Default/gen/include/update_engine/dbus-proxy-mocks.h
@@ -0,0 +1,263 @@
+// Automatic generation of D-Bus interface mock proxies for:
+//  - org.chromium.UpdateEngineInterface
+#ifndef ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_UPDATE_ENGINE_CLIENT_OUT_DEFAULT_GEN_INCLUDE_UPDATE_ENGINE_DBUS_PROXY_MOCKS_H
+#define ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_UPDATE_ENGINE_CLIENT_OUT_DEFAULT_GEN_INCLUDE_UPDATE_ENGINE_DBUS_PROXY_MOCKS_H
+#include <string>
+#include <vector>
+
+#include <base/callback_forward.h>
+#include <base/logging.h>
+#include <brillo/any.h>
+#include <brillo/errors/error.h>
+#include <brillo/variant_dictionary.h>
+#include <gmock/gmock.h>
+
+#include "update_engine/dbus-proxies.h"
+
+namespace org {
+namespace chromium {
+
+// Mock object for UpdateEngineInterfaceProxyInterface.
+class UpdateEngineInterfaceProxyMock : public UpdateEngineInterfaceProxyInterface {
+ public:
+  UpdateEngineInterfaceProxyMock() = default;
+  UpdateEngineInterfaceProxyMock(const UpdateEngineInterfaceProxyMock&) = delete;
+  UpdateEngineInterfaceProxyMock& operator=(const UpdateEngineInterfaceProxyMock&) = delete;
+
+  MOCK_METHOD3(Update,
+               bool(const update_engine::UpdateParams& /*in_update_params*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(UpdateAsync,
+               void(const update_engine::UpdateParams& /*in_update_params*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(ApplyDeferredUpdate,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(ApplyDeferredUpdateAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(AttemptInstall,
+               bool(const std::string& /*in_omaha_url*/,
+                    const std::vector<std::string>& /*in_dlc_ids*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(AttemptInstallAsync,
+               void(const std::string& /*in_omaha_url*/,
+                    const std::vector<std::string>& /*in_dlc_ids*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(AttemptRollback,
+               bool(bool /*in_powerwash*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(AttemptRollbackAsync,
+               void(bool /*in_powerwash*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(CanRollback,
+               bool(bool* /*out_can_rollback*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(CanRollbackAsync,
+               void(base::OnceCallback<void(bool /*can_rollback*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(ResetStatus,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(ResetStatusAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetDlcActiveValue,
+               bool(bool /*in_is_active*/,
+                    const std::string& /*in_dlc_id*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(SetDlcActiveValueAsync,
+               void(bool /*in_is_active*/,
+                    const std::string& /*in_dlc_id*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetStatusAdvanced,
+               bool(update_engine::StatusResult* /*out_status*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetStatusAdvancedAsync,
+               void(base::OnceCallback<void(const update_engine::StatusResult& /*status*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(SetStatus,
+               bool(int32_t /*in_update_status*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetStatusAsync,
+               void(int32_t /*in_update_status*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD2(RebootIfNeeded,
+               bool(brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(RebootIfNeededAsync,
+               void(base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetChannel,
+               bool(const std::string& /*in_target_channel*/,
+                    bool /*in_is_powerwash_allowed*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(SetChannelAsync,
+               void(const std::string& /*in_target_channel*/,
+                    bool /*in_is_powerwash_allowed*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(GetChannel,
+               bool(bool /*in_get_current_channel*/,
+                    std::string* /*out_channel*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(GetChannelAsync,
+               void(bool /*in_get_current_channel*/,
+                    base::OnceCallback<void(const std::string& /*channel*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(SetCohortHint,
+               bool(const std::string& /*in_cohort_hint*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetCohortHintAsync,
+               void(const std::string& /*in_cohort_hint*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetCohortHint,
+               bool(std::string* /*out_cohort_hint*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetCohortHintAsync,
+               void(base::OnceCallback<void(const std::string& /*cohort_hint*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(SetP2PUpdatePermission,
+               bool(bool /*in_enabled*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetP2PUpdatePermissionAsync,
+               void(bool /*in_enabled*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetP2PUpdatePermission,
+               bool(bool* /*out_enabled*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetP2PUpdatePermissionAsync,
+               void(base::OnceCallback<void(bool /*enabled*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(SetUpdateOverCellularPermission,
+               bool(bool /*in_allowed*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetUpdateOverCellularPermissionAsync,
+               void(bool /*in_allowed*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(SetUpdateOverCellularTarget,
+               bool(const std::string& /*in_target_version*/,
+                    int64_t /*in_target_size*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(SetUpdateOverCellularTargetAsync,
+               void(const std::string& /*in_target_version*/,
+                    int64_t /*in_target_size*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetUpdateOverCellularPermission,
+               bool(bool* /*out_allowed*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetUpdateOverCellularPermissionAsync,
+               void(base::OnceCallback<void(bool /*allowed*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(ToggleFeature,
+               bool(const std::string& /*in_feature*/,
+                    bool /*in_enable*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD5(ToggleFeatureAsync,
+               void(const std::string& /*in_feature*/,
+                    bool /*in_enable*/,
+                    base::OnceCallback<void()> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(IsFeatureEnabled,
+               bool(const std::string& /*in_feature*/,
+                    bool* /*out_enabled*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD4(IsFeatureEnabledAsync,
+               void(const std::string& /*in_feature*/,
+                    base::OnceCallback<void(bool /*enabled*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetDurationSinceUpdate,
+               bool(int64_t* /*out_usec_wallclock*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetDurationSinceUpdateAsync,
+               void(base::OnceCallback<void(int64_t /*usec_wallclock*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetPrevVersion,
+               bool(std::string* /*out_prev_version*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetPrevVersionAsync,
+               void(base::OnceCallback<void(const std::string& /*prev_version*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetRollbackPartition,
+               bool(std::string* /*out_rollback_partition_name*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetRollbackPartitionAsync,
+               void(base::OnceCallback<void(const std::string& /*rollback_partition_name*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetLastAttemptError,
+               bool(int32_t* /*out_last_attempt_error*/,
+                    brillo::ErrorPtr* /*error*/,
+                    int /*timeout_ms*/));
+  MOCK_METHOD3(GetLastAttemptErrorAsync,
+               void(base::OnceCallback<void(int32_t /*last_attempt_error*/)> /*success_callback*/,
+                    base::OnceCallback<void(brillo::Error*)> /*error_callback*/,
+                    int /*timeout_ms*/));
+  void RegisterStatusUpdateAdvancedSignalHandler(
+    const base::RepeatingCallback<void(const update_engine::StatusResult&)>& signal_callback,
+    dbus::ObjectProxy::OnConnectedCallback on_connected_callback) {
+    DoRegisterStatusUpdateAdvancedSignalHandler(signal_callback, &on_connected_callback);
+  }
+  MOCK_METHOD2(DoRegisterStatusUpdateAdvancedSignalHandler,
+               void(const base::RepeatingCallback<void(const update_engine::StatusResult&)>& /*signal_callback*/,
+                    dbus::ObjectProxy::OnConnectedCallback* /*on_connected_callback*/));
+  MOCK_CONST_METHOD0(GetObjectPath, const dbus::ObjectPath&());
+  MOCK_CONST_METHOD0(GetObjectProxy, dbus::ObjectProxy*());
+};
+}  // namespace chromium
+}  // namespace org
+
+#endif  // ____CHROMEOS_DBUS_BINDING___VAR_CACHE_PORTAGE_CHROMEOS_BASE_UPDATE_ENGINE_CLIENT_OUT_DEFAULT_GEN_INCLUDE_UPDATE_ENGINE_DBUS_PROXY_MOCKS_H